/* Shared VSO design tokens. System fonts keep the interface self-contained. */
:root {
  color-scheme:dark;
  --bg:#0b1018; --bg2:#101722; --surface:#121b27; --surface-2:#16202d; --surface-3:#1c2735;
  --text:#f1f0eb; --text-2:#b2bdca; --text-3:#8e9cae; --sub:var(--text-2); --muted:var(--text-3);
  --accent:#e4bb86; --accent-hover:#f2d2a8; --accent-ink:#241a11; --accent-bg:#28251f; --accent-border:#62503b;
  --border:#253141; --border-2:#384557; --green:#9bd2b3; --green-bg:#193329;
  --red:#f2a6a3; --red-bg:#36232a; --yellow:#e6c589; --yellow-bg:#332d20;
  --blue:#a5c5f0; --blue-bg:#202e44;
  --purple:var(--accent); --purple-2:var(--accent-hover); --purple-3:var(--accent-border);
  --purple-bg:var(--accent-bg); --purple-bd:var(--accent-border);
  --glass-bg:var(--surface); --glass-bd:var(--border); --nm-out:none; --nm-in:none;
  --font:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --display:Georgia,"Times New Roman",serif;
  --mono:ui-monospace,SFMono-Regular,Consolas,monospace;
  --r-sm:8px; --r:14px; --r-lg:20px;
  --shadow:0 4px 20px #0002; --shadow-lg:0 24px 80px #0008;
}
*,*::before,*::after { box-sizing:border-box; }
body { margin:0; background:var(--bg); color:var(--text); font-family:var(--font); line-height:1.55; -webkit-font-smoothing:antialiased; }
a { color:var(--accent); text-decoration:none; }
a:hover { text-decoration:underline; }
button,input,select,textarea { font:inherit; }
button,a,input,select,summary { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
[hidden] { display:none!important; }
.icon { width:18px; height:18px; flex-shrink:0; vertical-align:middle; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }

* { scrollbar-width:thin; scrollbar-color:#394659 transparent; }
