/* Functional QA, original visual worlds retained. */
:focus-visible { outline: 2px solid var(--teal); outline-offset: 4px; }
.nav-btn,#gate-lang,.gate-btn { min-height: 44px; }
.site-nav { flex-wrap: wrap; gap: 12px; }
.site-footer { text-align: center; }
@media(max-width:700px) {
  .site-nav { justify-content: center; padding: 12px; }
  .nav-right { flex-wrap: wrap; justify-content: center; gap: 10px; }
  .gate-inner { padding: 20px; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior: auto; }
  *,*::before,*::after { animation:none !important; transition:none !important; }
  #cursor-dot,#cursor-ring { display:none !important; }
  body,a,button { cursor:auto !important; }
  .dissolve { opacity:1 !important; filter:none !important; transform:none !important; }
}
@media print {
  :root { --bg:#fff; --bg-alt:#fff; --surface:#fff; --surface-2:#fff; --text:#111; --text-body:#222; --text-muted:#333; --text-faint:#333; --violet:#55247b; --violet-bright:#55247b; --teal:#075851; --coral:#9b2d18; --gold:#66470d; }
  html,body { background:#fff !important; color:#111 !important; overflow:visible; }
  canvas,#gate,#cursor-dot,#cursor-ring,#progress-bar,.site-nav,.scanlines { display:none !important; }
  *,*::before,*::after { animation:none !important; transition:none !important; text-shadow:none !important; box-shadow:none !important; }
  .dissolve { opacity:1 !important; transform:none !important; filter:none !important; }
  .hero { min-height:0; padding:20px 0; }
  .hero::before,.hero::after { display:none; }
  section { background:#fff !important; }
  h1,h2,h3 { break-after:avoid; }
  p { orphans:3; widows:3; }
}
.author-card{grid-template-columns:1fr!important;justify-items:center;text-align:center}.author-card>*{margin-left:auto;margin-right:auto}.author-card img{border-radius:12px}
