:root {
  color-scheme: dark;
  --siona-bg: #090D11;
  --siona-surface: #111920;
  --siona-surface-raised: #19242D;
  --siona-text: #EDF3F7;
  --siona-text-muted: #AFBDC9;
  --siona-border: #33424E;
  --siona-accent: #EDC78B;
  --siona-accent-hover: #F4D6A6;
  --siona-on-accent: #10161C;
  --siona-analysis: #79DDF2;
  --siona-positive: #53D3A5;
  --siona-negative: #FF8294;
  --siona-warning: #F3C567;
  --siona-focus: #B5E9F6;

  --siona-space-1: 4px;
  --siona-space-2: 8px;
  --siona-space-3: 12px;
  --siona-space-4: 16px;
  --siona-space-5: 24px;
  --siona-space-6: 32px;
  --siona-space-7: 48px;
  --siona-space-8: 64px;
  --siona-radius-control: 8px;
  --siona-radius-card: 12px;
  --siona-radius-dialog: 16px;
  --siona-font-sans: "Segoe UI", system-ui, sans-serif;
  --siona-font-mono: ui-monospace, "SFMono-Regular", Consolas, monospace;
}

html {
  background: var(--siona-bg);
  color: var(--siona-text);
  font-family: var(--siona-font-sans);
  font-size: 16px;
  line-height: 1.5;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 2px solid var(--siona-focus);
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
