/* MEME / KAKA / TORA / POCHI · shared tokens v1 · 2026-11-11
   System fonts only. Semantic colors. No decorative shadows.
   Official logo assets retain their original artwork and colors. */
:root {
  color-scheme: light;
  --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Kaku Gothic ProN", "Khmer Sangam MN", system-ui, sans-serif;
  --font-mono: ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;
  --text-xs: .75rem; --text-sm: .8125rem; --text-md: .9375rem; --text-lg: 1.125rem;
  --text-xl: 1.5rem; --text-title: clamp(1.875rem, 3.1vw, 2.75rem); --text-number: 2.5rem;
  --weight-regular: 400; --weight-medium: 550; --weight-bold: 650;
  --leading: 1.6; --leading-title: 1.2;
  --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px;
  --space-5: 24px; --space-6: 32px; --space-7: 48px; --space-8: 64px;
  --radius-sm: 4px; --radius-md: 8px; --radius-lg: 12px; --radius-pill: 999px;
  --border-width: 1px; --shadow: none; --touch: 44px; --rail-width: 208px; --content-max: 1320px;
  --duration: 140ms; --ease: ease-out;
  --bg: #f8f9f7; --surface: #ffffff; --surface-subtle: #f0f2ef; --surface-hover: #e8ece7;
  --text: #202620; --text-secondary: #515c51; --text-muted: #657064;
  --line: #dce2d9; --line-strong: #bbc6b8;
  --brand: #c21a1f; --accent: #b61920; --accent-soft: #fbecee; --on-accent: #ffffff;
  --positive: #296443; --positive-soft: #eaf3ec;
  --warning: #825910; --warning-soft: #faf1dd;
  --negative: #ad292e; --negative-soft: #fbecee;
  --info: #385f86; --info-soft: #edf2f8;
  --chart-primary: #334c3d; --chart-reference: #94a38f; --chart-grid: #dce2d9;
  --focus: #385f86; --overlay: #20262066; --transparent: transparent;
}
:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #151915; --surface: #1b201b; --surface-subtle: #222922; --surface-hover: #2e382e;
  --text: #eff2eb; --text-secondary: #bac5b6; --text-muted: #a3b19f;
  --line: #354033; --line-strong: #596752;
  --brand: #c21a1f; --accent: #ff9598; --accent-soft: #3c2428; --on-accent: #251416;
  --positive: #94c9a5; --positive-soft: #24382c;
  --warning: #e7c17e; --warning-soft: #382e20;
  --negative: #ffa3a4; --negative-soft: #3c2428;
  --info: #a1c4e7; --info-soft: #243243;
  --chart-primary: #bdd1b7; --chart-reference: #6d8169; --chart-grid: #354033;
  --focus: #a1c4e7; --overlay: #00000099;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]):not([data-theme="dark"]) {
    color-scheme: dark;
    --bg: #151915; --surface: #1b201b; --surface-subtle: #222922; --surface-hover: #2e382e;
    --text: #eff2eb; --text-secondary: #bac5b6; --text-muted: #a3b19f;
    --line: #354033; --line-strong: #596752; --accent: #ff9598; --accent-soft: #3c2428; --on-accent: #251416;
    --positive: #94c9a5; --positive-soft: #24382c; --warning: #e7c17e; --warning-soft: #382e20;
    --negative: #ffa3a4; --negative-soft: #3c2428; --info: #a1c4e7; --info-soft: #243243;
    --chart-primary: #bdd1b7; --chart-reference: #6d8169; --chart-grid: #354033; --focus: #a1c4e7; --overlay: #00000099;
  }
}
@media (prefers-reduced-motion: reduce) { :root { --duration: 0ms; } }
@media print {
  :root, :root[data-theme], :root:not([data-theme]) {
    color-scheme: light; --bg: #ffffff; --surface: #ffffff; --surface-subtle: #f0f2ef;
    --text: #202620; --text-secondary: #515c51; --text-muted: #657064; --line: #dce2d9; --line-strong: #bbc6b8;
    --accent: #b61920; --accent-soft: #fbecee; --positive: #296443; --positive-soft: #eaf3ec;
    --warning: #825910; --warning-soft: #faf1dd; --negative: #ad292e; --negative-soft: #fbecee;
    --info: #385f86; --info-soft: #edf2f8; --chart-primary: #334c3d; --chart-reference: #94a38f; --chart-grid: #dce2d9;
  }
}
