/* Design tokens. Контраст пар проверен расчетом (docs/02-design-foundation.md, раздел 4). */
:root {
  color-scheme: light;
  --bg: #F7F6F2;
  --surface: #FFFFFF;
  --surface-2: #F0EEE8;
  --text: #1C1F23;
  --text-muted: #5B5F66;
  --border: #8A8F96;
  --divider: #E3E1DA;
  --accent: #1D5C78;
  --accent-hover: #164A61;
  --accent-soft: #E3EEF3;
  --on-accent: #FFFFFF;
  --success: #1E6B3E;
  --success-bg: #E7F3EC;
  --warning: #7A4E00;
  --warning-bg: #FFF3D6;
  --danger: #A8251B;
  --danger-hover: #8C1D15;
  --danger-bg: #FDECEA;
  --on-danger: #FFFFFF;
  --info: #33373D;
  --info-bg: #EEF0F2;
  --shadow-overlay: 0 8px 24px rgba(20, 22, 25, 0.18);

  --font: system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", sans-serif;
  --fs-xs: 0.75rem;
  --fs-sm: 0.875rem;
  --fs-md: 1rem;
  --fs-lg: 1.25rem;
  --fs-xl: 1.5rem;
  --fs-2xl: 1.875rem;

  --sp-1: 0.25rem;
  --sp-2: 0.5rem;
  --sp-3: 0.75rem;
  --sp-4: 1rem;
  --sp-5: 1.5rem;
  --sp-6: 2rem;
  --sp-7: 3rem;
  --sp-8: 4rem;

  --hit: 2.75rem;          /* 44px — минимальная зона нажатия */
  --r-sm: 4px;
  --r-md: 6px;
  --topbar-h: 3.5rem;
  --bottomnav-h: 4rem;
  --focus: 3px solid var(--accent);
  --motion: 140ms;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --bg: #141619;
    --surface: #1D2024;
    --surface-2: #252A30;
    --text: #E8E6E1;
    --text-muted: #A9A69F;
    --border: #6F747B;
    --divider: #2C3035;
    --accent: #7CC0DE;
    --accent-hover: #9BD0E7;
    --accent-soft: #1B323D;
    --on-accent: #0E1A20;
    --success: #86D4A4;
    --success-bg: #16271D;
    --warning: #F2C46B;
    --warning-bg: #2B2210;
    --danger: #FF9C92;
    --danger-hover: #FFB8B0;
    --danger-bg: #2E1716;
    --on-danger: #1A0B0A;
    --info: #D3D6DA;
    --info-bg: #252A30;
    --shadow-overlay: 0 8px 24px rgba(0, 0, 0, 0.5);
  }
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #141619;
  --surface: #1D2024;
  --surface-2: #252A30;
  --text: #E8E6E1;
  --text-muted: #A9A69F;
  --border: #6F747B;
  --divider: #2C3035;
  --accent: #7CC0DE;
  --accent-hover: #9BD0E7;
  --accent-soft: #1B323D;
  --on-accent: #0E1A20;
  --success: #86D4A4;
  --success-bg: #16271D;
  --warning: #F2C46B;
  --warning-bg: #2B2210;
  --danger: #FF9C92;
  --danger-hover: #FFB8B0;
  --danger-bg: #2E1716;
  --on-danger: #1A0B0A;
  --info: #D3D6DA;
  --info-bg: #252A30;
  --shadow-overlay: 0 8px 24px rgba(0, 0, 0, 0.5);
}

@media (prefers-reduced-motion: reduce) {
  :root { --motion: 0ms; }
}
