/* Дизайн-токены · v0.1 · 09.10.2026
   Светлая тема — :root, тёмная — [data-theme="dark"] или системная настройка. */
:root {
  /* поверхности */
  --bg: #f5f4f0;
  --surface: #ffffff;
  --surface-2: #f0efea;   /* таб-бар, вторичные панели */
  --highlight: #f1efe9;   /* текущий день, плашки иконок */
  --track: #e4e2dc;       /* активный пункт меню, дорожки прогресса */
  /* текст */
  --ink: #1c1d1f;
  --ink-2: #5f6066;
  --ink-3: #8d8e93;
  --on-ink: #ffffff;
  /* линии */
  --line: #e7e5e0;
  --border: #dcdad4;
  /* акцент = голос тренера */
  --accent: #2a7a68;
  --on-accent: #ffffff;
  --coach-bg: #e8f1ed;
  /* статусы */
  --ok: #3f8a52;   --ok-bg: #e6f1ea;
  --warn: #b5643f; --warn-bg: #f7ece4;
  --bad: #9a4030;  --bad-bg: #f6e9e6;
  /* зоны пульса — одинаковые в обеих темах */
  --z1: #a9b4bf; --z2: #5b8fd1; --z3: #6aaa64; --z4: #d99a2b; --z5: #d0573f;
  /* типы тренировок */
  --t-easy: var(--z2); --t-tempo: var(--z4); --t-intervals: var(--z5);
  --t-long: #8a6cc4; --t-rest: #c9c7c1;
  /* графики */
  --chart-fitness: var(--ink);
  --chart-fatigue: #c96a7a;
  --chart-form: var(--accent);
  --chart-form-fill: rgba(42, 122, 104, .16);
  --chart-grid: #efede8;
  --chart-plan: var(--track);
  /* шрифт */
  --font: 'Golos Text', system-ui, sans-serif;
  --fs-display: 40px; --lh-display: 44px;
  --fs-h1: 30px;      --lh-h1: 36px;
  --fs-h2: 20px;      --lh-h2: 26px;
  --fs-title: 15px;   --lh-title: 20px;
  --fs-body: 15px;    --lh-body: 22px;
  --fs-coach: 16px;   --lh-coach: 24px;   /* ≥1024px: 19/28 */
  --fs-caption: 13px; --lh-caption: 18px;
  --fs-micro: 11px;   --lh-micro: 14px;
  /* отступы и радиусы */
  --s-1: 4px; --s-2: 8px; --s-3: 12px; --s-4: 16px; --s-5: 20px; --s-6: 24px; --s-8: 32px; --s-10: 40px;
  --r-sm: 6px; --r-md: 10px; --r-lg: 12px; --r-card: 18px; --r-pill: 999px;
  --tap: 44px;
}
[data-theme="dark"] {
  --bg: #151617; --surface: #1e1f21; --surface-2: #18191a; --highlight: #2a2b2e; --track: #2f3033;
  --ink: #ecebe7; --ink-2: #a3a4a8; --ink-3: #7f8085; --on-ink: #151617;
  --line: #2c2d30; --border: #3a3b3e;
  --accent: #3f9a84; --coach-bg: #1b2a26;
  --ok: #72c48a; --ok-bg: #1d2e22; --warn: #e0956e; --warn-bg: #3a2a20; --bad: #e59079; --bad-bg: #3a2420;
  --t-rest: #55565a;
  --chart-fatigue: #d88a97; --chart-form-fill: rgba(79, 179, 155, .18); --chart-grid: #2a2b2e;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg: #151617; --surface: #1e1f21; --surface-2: #18191a; --highlight: #2a2b2e; --track: #2f3033;
    --ink: #ecebe7; --ink-2: #a3a4a8; --ink-3: #7f8085; --on-ink: #151617;
    --line: #2c2d30; --border: #3a3b3e;
    --accent: #3f9a84; --coach-bg: #1b2a26;
    --ok: #72c48a; --ok-bg: #1d2e22; --warn: #e0956e; --warn-bg: #3a2a20; --bad: #e59079; --bad-bg: #3a2420;
    --t-rest: #55565a;
    --chart-fatigue: #d88a97; --chart-form-fill: rgba(79, 179, 155, .18); --chart-grid: #2a2b2e;
  }
}
