/* Shared visual foundation. Page-specific layouts remain in their own stylesheets. */
:root {
  --bg: #0b0f12;
  --panel: #12181d;
  --panel2: #192128;
  --panel3: #0e1418;
  --text: #f4f7f5;
  --muted: #a9b4bd;
  --accent: #b9ff39;
  --accent2: #d5ff87;
  --accent-dark: #101809;
  --line: rgba(225,238,231,.1);
  --line2: rgba(225,238,231,.2);
  --line-strong: var(--line2);
  --danger: #ff9292;
  --error: var(--danger);
  --danger-bg: rgba(255,112,112,.08);
  --success: var(--accent);
  --success-bg: rgba(185,255,57,.08);
  --warning: #ffd166;
  --warn: var(--warning);
  --warning-bg: rgba(255,209,102,.08);
  --max: 1280px;
  --radius: 16px;
  --shadow: 0 12px 36px rgba(0,0,0,.16);
  --font: Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  --space-1: 8px;
  --space-2: 16px;
  --space-3: 24px;
  --space-4: 32px;
  --fz-r1: 10px;
  --fz-r2: 16px;
  --fz-r3: 20px;
  --fz-r4: 24px;
}
html { color-scheme: dark; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
/* Layout declarations must never reveal an intentionally hidden control or section. */
[hidden] { display: none !important; }
:where(button,a,input,select,textarea,summary):focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}
:where(button,a) { touch-action: manipulation; }
:where(h1,h2,h3) { text-wrap: balance; }
:where(input,select,textarea) { min-width: 0; max-width: 100%; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
