/* Shared navigation markup contract: React and the portable static builder. */
.atlas-navigation { display:flex; align-items:center; gap:24px; padding:20px 0; border-bottom:1px solid var(--atlas-line); color:var(--atlas-ink); font-family:var(--font-body); position:relative; z-index:15; min-width:0; }
.atlas-navigation * { box-sizing:border-box; }
.atlas-navigation-brand { font:500 24px/1.15 var(--font-display); text-decoration:none; white-space:nowrap; color:var(--atlas-ink); flex-shrink:0; }
.atlas-navigation-brand small { display:block; font:500 9px/1.6 var(--font-body); text-transform:uppercase; letter-spacing:.13em; color:var(--atlas-gold-ink); margin-top:4px; }
.atlas-navigation-groups { display:flex; flex-wrap:wrap; align-items:center; gap:7px; margin-left:auto; min-width:0; }
.atlas-navigation details { position:relative; margin:0; }
.atlas-navigation summary { display:flex; align-items:center; justify-content:center; gap:12px; min-height:44px; padding:10px 15px; margin:0!important; color:var(--atlas-muted); border:1px solid transparent; border-radius:7px; font:500 12px/1.4 var(--font-body); cursor:pointer; list-style:none; }
.atlas-navigation summary::-webkit-details-marker { display:none; }
.atlas-navigation summary::after { content:""; width:6px; height:6px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:translateY(-2px) rotate(45deg); flex:none; }
.atlas-navigation details[open] summary::after { transform:translateY(2px) rotate(225deg); }
.atlas-navigation details[data-active=true] summary { color:var(--atlas-ink); border-color:var(--atlas-line-strong); background:var(--atlas-soft); }
.atlas-navigation details[open]>summary { background:var(--atlas-accent); color:var(--atlas-accent-ink); border-color:var(--atlas-accent); }
.atlas-navigation-menu { position:absolute; right:0; top:calc(100% + 8px); width:260px; max-width:calc(100vw - 40px); padding:8px; border:1px solid var(--atlas-line-strong); border-radius:9px; background:var(--atlas-surface); box-shadow:0 12px 30px #1b3a2d1a; display:grid; gap:3px; z-index:30; }
.atlas-navigation-menu a { display:block; padding:12px; border-radius:5px; min-height:44px; font:400 12px/1.6 var(--font-body); color:var(--atlas-muted); text-decoration:none; overflow-wrap:anywhere; }
.atlas-navigation-menu a:hover { color:var(--atlas-ink); background:var(--atlas-soft); }
.atlas-navigation-menu a[aria-current=page] { color:var(--atlas-ink); background:var(--atlas-inset); font-weight:600; }
.atlas-navigation :where(a,summary):focus-visible { outline:3px solid var(--atlas-focus); outline-offset:3px; }
.atlas-navigation-current { color:var(--atlas-muted); font:400 11px/1.5 var(--font-body); margin:12px 0 0; }
.atlas-navigation-current a { color:var(--atlas-gold-ink); text-underline-offset:3px; }
.atlas-navigation-account { flex-shrink:0; color:var(--atlas-ink); border:1px solid var(--atlas-line-strong); padding:10px 13px; border-radius:7px; min-height:44px; display:inline-flex; align-items:center; font:500 12px/1.4 var(--font-body); text-decoration:none; }
@media(max-width:760px) { .atlas-navigation { flex-wrap:wrap; gap:14px; padding:19px 0 15px; }.atlas-navigation-brand { font-size:25px; }.atlas-navigation-groups { flex:1 1 100%; margin:0; gap:5px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }.atlas-navigation summary { width:100%; padding:10px 9px; gap:9px; font-size:11px; }.atlas-navigation details { position:static; }.atlas-navigation-menu { left:0; right:auto; top:100%; max-width:100%; width:100%; }.atlas-navigation-account { margin-left:auto; position:absolute; top:20px; right:0; }.atlas-navigation-current { font-size:10px; } }
@media(max-width:370px) { .atlas-navigation summary { padding:10px 6px; gap:7px; font-size:10px; }.atlas-navigation-brand { font-size:23px; }.atlas-navigation-account { font-size:11px; padding:9px 11px; } }
@media(prefers-reduced-motion:reduce) { .atlas-navigation * { scroll-behavior:auto!important; transition:none!important; } }
