:root{--nav-type:.875rem;--nav-small:.75rem;--ease-soft:cubic-bezier(.16,1,.3,1);--nav-height:84px}
html{scroll-padding-top:calc(var(--nav-height) + 24px)}
.site-header{position:sticky;top:0;z-index:30;max-width:none;min-height:var(--nav-height);padding-inline:max(32px,calc((100vw - 1216px)/2));background:var(--bg);border-bottom:1px solid var(--border)}
.site-header .main-nav{gap:24px;font-size:var(--nav-type);display:flex}
.main-nav a{position:relative;padding-block:8px;white-space:nowrap;transition:color 180ms ease}
.main-nav a::after{content:"";position:absolute;left:0;right:0;bottom:1px;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform 180ms var(--ease-soft)}
.main-nav a:hover::after,.main-nav a:focus-visible::after,.main-nav a[aria-current]::after{transform:scaleX(1)}
.main-nav a[aria-current]{color:var(--text)}
.menu-toggle{display:none;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:10px 12px;border:1px solid var(--border);border-radius:6px;font-size:var(--nav-type)}
.menu-toggle[hidden]{display:none}
.menu-icon{position:relative;width:17px;height:12px;display:block}
.menu-icon::before,.menu-icon::after{position:absolute;content:"";left:0;right:0;height:1.5px;background:currentColor;transition:transform 180ms var(--ease-soft),top 180ms var(--ease-soft);top:2px}
.menu-icon::after{top:9px}
.menu-toggle[aria-expanded=true] .menu-icon::before{top:5px;transform:rotate(45deg)}
.menu-toggle[aria-expanded=true] .menu-icon::after{top:5px;transform:rotate(-45deg)}
.theme-toggle,.question-tabs button,.scenario-tabs button{transition:background 180ms ease,color 180ms ease,border-color 180ms ease}
.button:active{transform:translateY(0)}
.text-link span[aria-hidden],.button span[aria-hidden]{transition:transform 180ms var(--ease-soft)}
@media(hover:hover){.text-link:hover span[aria-hidden],.button:hover span[aria-hidden]{transform:translateX(3px)}}
.site-header .theme-toggle{min-width:44px;min-height:44px}
@media(max-width:1100px){
  .site-header .header-actions>.button{display:none}
  .site-header .main-nav{gap:20px}
}
@media(max-width:900px){
  :root{--nav-height:76px}
  .site-header{flex-wrap:wrap;gap:0 16px;padding-block:12px}
  .site-header .header-actions{margin-left:auto}
  .site-header .main-nav{display:flex;flex-basis:100%;flex-wrap:wrap;gap:8px 20px;order:3;padding:16px 0 4px}
  .nav-ready .menu-toggle{display:inline-flex}
  .nav-ready .site-header .main-nav{position:absolute;top:calc(100% - 1px);left:20px;right:20px;display:flex;flex-direction:column;flex-wrap:nowrap;gap:0;max-height:calc(100dvh - 110px);overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:0 0 10px 10px;box-shadow:0 16px 32px #0002;padding:12px 24px 20px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 180ms ease,visibility 180ms}
  .nav-ready .site-header.nav-open .main-nav{opacity:1;visibility:visible;pointer-events:auto}
  .nav-ready .main-nav a{padding:16px 0;min-height:52px;font-size:1rem;border-bottom:1px solid var(--border)}
  .nav-ready .main-nav a::after{display:none}
  .nav-ready .main-nav a[aria-current]{color:var(--accent)}
}
@media(max-width:480px){.site-header{padding-inline:20px}.site-header .brand{font-size:21px}.site-header .header-actions{gap:4px}.menu-toggle{padding-inline:10px}.menu-toggle .menu-label{font-size:var(--nav-type)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.site-header{position:static}.menu-toggle{display:none!important}.site-header .main-nav{position:static!important;visibility:visible!important;opacity:1!important}}
