/* ============================================================
   RE:ACTIVE — токены интерфейса. ФАЙЛ СОБИРАЕТСЯ АВТОМАТИЧЕСКИ.
   Источник: design/tokens/*.json · сборка: python3 design/build-css.py
   Править здесь бесполезно — правьте токены и пересоберите.
   ============================================================ */
:root{
  /* --- Палитра --- */
  --c-brand-50:#FFFAF1;
  --c-brand-100:#FFF1E1;
  --c-brand-200:#FFDDBF;
  --c-brand-300:#FFB78A;
  --c-brand-400:#E88B50;
  --c-brand-500:#BD5B00;
  --c-brand-600:#A54900;
  --c-brand-700:#873A00;
  --c-brand-800:#672C00;
  --c-brand-900:#4B2102;
  --c-brand-950:#321807;
  --c-brand-pure:#E96B1E;
  --c-brand-pure-hover:#F0763A;
  --c-brand-pure-active:#DE6A22;
  --c-success-50:#F2FEF4;
  --c-success-100:#E3F9E7;
  --c-success-200:#C5EDCE;
  --c-success-300:#98D4A7;
  --c-success-400:#63B37A;
  --c-success-500:#27884C;
  --c-success-600:#0F743B;
  --c-success-700:#0A5E2F;
  --c-success-800:#0C4824;
  --c-success-900:#0C331A;
  --c-success-950:#0C2414;
  --c-warning-50:#FFFAED;
  --c-warning-100:#FFF1D9;
  --c-warning-200:#FAE0B2;
  --c-warning-300:#E8C17A;
  --c-warning-400:#CB9A35;
  --c-warning-500:#A16D00;
  --c-warning-600:#8B5A00;
  --c-warning-700:#704800;
  --c-warning-800:#563700;
  --c-warning-900:#3F2800;
  --c-warning-950:#2A1C01;
  --c-danger-50:#FFFAF7;
  --c-danger-100:#FFF0EC;
  --c-danger-200:#FFDCD4;
  --c-danger-300:#FFB3A9;
  --c-danger-400:#EC857A;
  --c-danger-500:#C2544C;
  --c-danger-600:#AA433B;
  --c-danger-700:#8A342E;
  --c-danger-800:#6A2824;
  --c-danger-900:#4D1F1B;
  --c-danger-950:#341614;
  --c-info-50:#F2FCFF;
  --c-info-100:#E3F6FF;
  --c-info-200:#C5E9FF;
  --c-info-300:#97CBFF;
  --c-info-400:#63A6EA;
  --c-info-500:#2B7AC2;
  --c-info-600:#1767AB;
  --c-info-700:#10538B;
  --c-info-800:#0F3F6B;
  --c-info-900:#0E2E4D;
  --c-info-950:#0D2034;
  --c-neutral-50:#F8FAFE;
  --c-neutral-100:#F1F4F7;
  --c-neutral-200:#E1E4E7;
  --c-neutral-300:#C4C7CA;
  --c-neutral-400:#A0A2A6;
  --c-neutral-500:#74777A;
  --c-neutral-600:#626468;
  --c-neutral-700:#4E5054;
  --c-neutral-800:#3B3E41;
  --c-neutral-900:#2B2D30;
  --c-neutral-950:#1E1F22;
  --c-chart-s1-line:#BD5B00;
  --c-chart-s1-fill:#E88B50;
  --c-chart-s1-soft:#FFF1E1;
  --c-chart-s2-line:#1979CA;
  --c-chart-s2-fill:#5AA7F2;
  --c-chart-s2-soft:#E1F6FF;
  --c-chart-s3-line:#008A42;
  --c-chart-s3-fill:#53B573;
  --c-chart-s3-soft:#E0FAE5;
  --c-chart-s4-line:#8A62C5;
  --c-chart-s4-fill:#B491EE;
  --c-chart-s4-soft:#F8F0FF;
  --c-chart-s5-line:#A36B00;
  --c-chart-s5-fill:#CD9929;
  --c-chart-s5-soft:#FFF2D7;
  --c-chart-s6-line:#C55149;
  --c-chart-s6-fill:#F08478;
  --c-chart-s6-soft:#FFF0EC;
  /* --- Смысловые цвета --- */
  --surface-page:#F8FAFE;
  --surface-card:#FFFFFF;
  --surface-sunken:#F1F4F7;
  --surface-inverse:#2B2D30;
  --surface-brand-soft:#FFFAF1;
  --ink-primary:#2B2D30;
  --ink-secondary:#4E5054;
  --ink-muted:#626468;
  --ink-on-brand:#1E1F22;
  --ink-on-inverse:#F8FAFE;
  --ink-brand:#A54900;
  --border-subtle:#E1E4E7;
  --border-default:#C4C7CA;
  --border-strong:#A0A2A6;
  --border-focus:#10538B;
  --action-primary:#E96B1E;
  --action-primary-hover:#F0763A;
  --action-primary-active:#DE6A22;
  --action-primary-disabled:#E1E4E7;
  --action-secondary:#F1F4F7;
  --action-secondary-hover:#E1E4E7;
  --action-danger-bg:#AA433B;
  --action-danger-hover:#8A342E;
  --feedback-success-text:#0A5E2F;
  --feedback-success-bg:#F2FEF4;
  --feedback-warning-text:#563700;
  --feedback-warning-bg:#FFFAED;
  --feedback-danger-text:#8A342E;
  --feedback-danger-bg:#FFFAF7;
  --feedback-info-text:#10538B;
  --feedback-info-bg:#F2FCFF;
  --dark-bg:#1E1F22;
  --dark-bg-brand:#321807;
  --dark-ink:#F8FAFE;
  --dark-ink-brand:#FFB78A;
  /* --- Цвета компонентов --- */
  --channel-wa-text:#0A5E2F;
  --channel-wa-bg:#E3F9E7;
  --channel-wa-hover:#C5EDCE;
  --channel-tg-text:#10538B;
  --channel-tg-bg:#E3F6FF;
  --channel-tg-hover:#C5E9FF;
  --gender-f-text:#9B2E63;
  --gender-f-bg:#FFF0EC;
  --gender-m-text:#10538B;
  --gender-m-bg:#E3F6FF;
  --scroll-thumb:#C4C7CA;
  /* --- Отступы --- */
  --space-0:0px;
  --space-1:4px;
  --space-2:8px;
  --space-3:12px;
  --space-4:16px;
  --space-5:20px;
  --space-6:24px;
  --space-8:32px;
  --space-10:40px;
  --space-12:48px;
  --space-16:64px;
  /* --- Шрифт --- */
  --font-family-sans:'Inter','Segoe UI',system-ui,-apple-system,'Helvetica Neue',Arial,sans-serif;
  --font-family-mono:'JetBrains Mono','Consolas','SF Mono',ui-monospace,monospace;
  --font-size-xs:12px;
  --font-size-label:13px;              /* П1: подпись поля */
  --font-size-value:15px;              /* П1: значение в поле */
  --font-size-sm:14px;
  --font-size-base:16px;
  --font-size-lg:19px;
  --font-size-xl:23px;
  --font-size-h2:20px;                 /* П1: заголовок раздела */
  --font-size-2xl:28px;
  --font-size-3xl:33px;
  --font-weight-regular:400;
  --font-weight-medium:500;
  --font-weight-semibold:600;
  --font-weight-bold:700;
  --font-leading-tight:1.2;
  --font-leading-snug:1.35;
  --font-leading-normal:1.55;
  --font-tracking-tight:-0.02em;
  --font-tracking-normal:0;
  --font-tracking-wide:0.08em;
  /* --- Скругления --- */
  --radius-sm:6px;
  --radius-md:10px;
  --radius-lg:16px;              /* П4: 10 / 16 / 24 */
  --radius-xl:24px;
  --radius-full:999px;
  /* --- Размеры --- */
  --size-control-sm:32px;
  --size-control-md:44px;              /* П4: поля, списки и кнопки формы одной высоты */
  --size-control-lg:48px;
  --size-tap-min:44px;
  --size-icon-sm:16px;
  --size-icon-md:20px;
  --size-icon-lg:24px;
  --size-sidebar:250px;
  --size-topbar:64px;
  --size-row:44px;
  /* --- Тени --- */
  --shadow-sm:0 1px 2px rgba(24,26,32,.05);
  --shadow-md:0 1px 2px rgba(24,26,32,.04), 0 4px 12px -4px rgba(24,26,32,.10);
  --shadow-lg:0 4px 12px -2px rgba(24,26,32,.08), 0 12px 32px -8px rgba(24,26,32,.14);
  --shadow-modal:0 24px 64px -12px rgba(24,26,32,.28);
  /* --- Движение --- */
  --dur-instant:0ms;
  --dur-fast:120ms;
  --dur-base:200ms;
  --dur-slow:280ms;
  --ease-out:cubic-bezier(.16,1,.3,1);
  --ease-in:cubic-bezier(.4,0,1,1);
  --ease-in-out:cubic-bezier(.4,0,.2,1);
  --stagger:28ms;
  --shift:8px;
  /* --- Слои --- */
  --z-base:0;
  --z-sticky:20;
  --z-sidebar:40;
  --z-overlay:60;
  --z-modal:70;
  --z-toast:80;
  --z-palette:90;

  /* --- Производные: то, чем пользуется разметка --- */
  --focus-ring:0 0 0 2px var(--surface-card), 0 0 0 4.5px var(--border-focus);
  --tr-fast:var(--dur-fast) var(--ease-out);
  --tr-base:var(--dur-base) var(--ease-out);
  --tr-slow:var(--dur-slow) var(--ease-out);
}

/* ============================================================
   DentaProAI — переопределение бренда: спокойный пастельный
   сиренево-синий (утверждён владельцем 26.08.2026 на прототипе
   личного кабинета). База токенов из RE:ACTIVE, меняется только
   «фирменный цвет» + фон страницы чуть светлее. Одна светлая тема.
   Прежний бирюзовый #12A79D — в git-истории этого блока.
   ============================================================ */
:root{
  color-scheme: light;
  --c-brand-50:#F5F6FD;
  --c-brand-100:#EEF1FB;
  --c-brand-200:#DDE2F7;
  --c-brand-300:#B9C1EC;
  --c-brand-400:#8A95DD;
  --c-brand-500:#5B68C8;
  --c-brand-600:#4D59B5;
  --c-brand-700:#404A99;
  --c-brand-800:#353D7C;
  --c-brand-900:#2C3363;
  --c-brand-950:#1E2244;
  --c-brand-pure:#5B68C8;
  --c-brand-pure-hover:#6773D2;
  --c-brand-pure-active:#4D59B5;

  --surface-page:#FAFAFB;
  --surface-brand-soft:#EEF1FB;
  --ink-brand:#404A99;
  --ink-on-brand:#FFFFFF;
  --border-focus:#4D59B5;

  --action-primary:#5B68C8;
  --action-primary-hover:#6773D2;
  --action-primary-active:#4D59B5;

  /* первая серия графиков — в тон бренду */
  --c-chart-s1-line:#4D59B5;
  --c-chart-s1-fill:#8A95DD;
  --c-chart-s1-soft:#EEF1FB;

  --dark-bg-brand:#1E2244;
  --dark-ink-brand:#B9C1EC;
  --focus-ring:0 0 0 2px var(--surface-card), 0 0 0 4.5px var(--border-focus);
}

@media (prefers-reduced-motion: reduce){
  :root{ --dur-fast:1ms; --dur-base:1ms; --dur-slow:1ms; --stagger:0ms; --shift:0px; }
}
