/* NEXUS-Q shared typography: keep every route visually consistent. */
:root{--nq-font:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--nq-mono:"JetBrains Mono",ui-monospace,Menlo,monospace}
html,body{font-family:var(--nq-font)!important}
body{font:16px/1.6 var(--nq-font)!important}
body,h1,h2,h3,h4,h5,h6,p,li,label,button,input,select,textarea,summary,.brand,.logo,.links,.btn,.lang,.d{font-family:var(--nq-font)!important}
h1{font-size:clamp(44px,6.4vw,78px)!important;font-weight:750!important;line-height:1.04!important;letter-spacing:-.055em!important}
h2{font-size:clamp(32px,4.4vw,54px)!important;font-weight:750!important;line-height:1.08!important;letter-spacing:-.045em!important}
h3{font-size:19px;font-weight:650;line-height:1.25}
code,pre,kbd,samp,.mono,.code,.status,.tag,.eyebrow.mono{font-family:var(--nq-mono)!important}

/* Unified full-width header: no floating rectangular container. */
body:has(nav) nav{
  top:env(safe-area-inset-top,0px)!important;
  left:0!important;right:0!important;width:100%!important;
  border:0!important;border-bottom:1px solid var(--line)!important;
  border-radius:0!important;box-shadow:none!important;
  background:color-mix(in srgb,var(--bg) 94%,transparent)!important;
  -webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
}
body:has(nav) nav .wrap{max-width:1280px!important;height:68px!important;margin:0 auto!important;padding:0 clamp(16px,4vw,40px)!important}
body:has(nav) nav .mb{display:inline-flex!important;flex:none}
body:has(nav) nav .navr{margin-left:auto;gap:8px}
body:has(nav) nav .navr>.btn.p{display:inline-flex!important;align-items:center!important;justify-content:center!important}
body:has(nav) nav .links{
  display:flex!important;position:absolute!important;top:100%!important;bottom:auto!important;left:0!important;right:auto!important;
  width:min(340px,86vw)!important;height:calc(100dvh - 68px)!important;
  flex-direction:column!important;flex-wrap:nowrap!important;align-items:stretch!important;
  gap:4px!important;padding:18px 14px 28px!important;max-height:none!important;
  overflow-x:hidden!important;overflow-y:auto!important;border:1px solid var(--line)!important;
  border-left:0!important;border-top:0!important;border-bottom:0!important;border-radius:0 12px 0 0!important;
  background:var(--bg)!important;box-shadow:16px 0 40px #0005!important;
  transform:translateX(-105%)!important;visibility:hidden!important;pointer-events:none!important;
  transition:transform .24s ease,visibility .24s ease!important;z-index:60!important;
}
body:has(nav) nav .links.open{transform:translateX(0)!important;visibility:visible!important;pointer-events:auto!important}
body:has(nav) nav .links>a{display:flex!important;align-items:center!important;justify-content:flex-start!important;
  width:100%!important;min-height:46px!important;padding:11px 14px!important;border:1px solid transparent!important;
  border-bottom:1px solid var(--line)!important;border-radius:6px!important;background:transparent!important;
  color:var(--fg)!important;font-size:15px!important;font-weight:600!important}
body:has(nav) nav .links>a:hover{border-color:var(--acc)!important;background:var(--card)!important}
body:has(nav) nav .mb[aria-expanded="true"]{background:var(--fg)!important;color:var(--bg)!important;border-color:var(--fg)!important}
@media(max-width:700px){
  body:has(nav) nav .wrap{height:62px!important;padding:0 14px!important}
  body:has(nav) nav .links{top:100%!important;width:min(320px,88vw)!important;height:calc(100dvh - 62px)!important;padding:14px 12px 24px!important;gap:3px!important}
  body:has(nav) nav .links>a{min-height:44px!important;font-size:14px!important}
  body:has(nav) nav .navr>.btn.p{display:inline-flex!important;padding:7px 9px!important;font-size:12px!important}
}
