/* ==========================================================================
   ИАП АИК — дизайн-токены. Единственный источник цвета, типографики, отступов,
   радиусов, теней и анимаций. Остальные стили ссылаются только на эти переменные.
   Темы: светлая (основная, по умолчанию), тёмная, цветная и «Атлас» — выбираются в шапке сайта.
   Палитры серий проверены валидатором (светлота, хрома, различимость при
   протанопии/дейтеранопии, контраст с поверхностью) для обеих тем.
   ========================================================================== */

/* ---------- Шрифт: Inter (вариативный), локально, с кириллицей и таджикскими буквами ---------- */
@font-face {
  font-family: "Inter"; font-style: normal; font-display: swap; font-weight: 100 900;
  src: url("../fonts/inter-cyrillic-ext-wght-normal.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: "Inter"; font-style: normal; font-display: swap; font-weight: 100 900;
  src: url("../fonts/inter-cyrillic-wght-normal.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Inter"; font-style: normal; font-display: swap; font-weight: 100 900;
  src: url("../fonts/inter-latin-ext-wght-normal.woff2") format("woff2");
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Inter"; font-style: normal; font-display: swap; font-weight: 100 900;
  src: url("../fonts/inter-latin-wght-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  /* ---------- Типографика ---------- */
  --font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-mono: ui-monospace, "Cascadia Mono", "SFMono-Regular", Consolas, monospace;
  --fs-12: 12px;  --lh-12: 16px;
  --fs-14: 14px;  --lh-14: 20px;
  --fs-16: 16px;  --lh-16: 24px;
  --fs-20: 20px;  --lh-20: 28px;
  --fs-28: 28px;  --lh-28: 36px;
  --fs-40: 40px;  --lh-40: 48px;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --tracking-tight: -0.02em;
  --tracking-snug: -0.01em;
  --tracking-caps: 0.06em;

  /* ---------- Отступы (сетка 4/8) ---------- */
  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 20px;
  --sp-6: 24px;
  --sp-8: 32px;
  --sp-10: 40px;
  --sp-12: 48px;
  --sp-16: 64px;

  /* ---------- Радиусы ---------- */
  --r-sm: 4px;
  --r-md: 8px;
  --r-lg: 12px;
  --r-pill: 999px;

  /* ---------- Каркас ---------- */
  --container: 1440px;
  --gutter: 24px;
  --header-h: 56px;
  --hairline: 1px;

  /* ---------- Анимации ---------- */
  --dur-fast: 150ms;
  --dur: 200ms;
  --dur-slow: 250ms;
  --ease: cubic-bezier(.2, .7, .2, 1);

  /* ---------- Цвет: тёмная тема (по умолчанию) ---------- */
  color-scheme: dark;
  --bg: #0E1116;
  --panel: #151A21;
  --panel-2: #1A2029;
  --panel-3: #222A34;
  --line: #262E38;
  --line-strong: #364150;
  --ink: #E8EAED;
  --ink-2: #A9B2BC;
  --ink-3: #7D8793;
  --overlay: rgba(14, 17, 22, .72);

  --accent: #35C2B5;
  --accent-hover: #5FD6CB;
  --accent-ink: #04201D;
  --accent-soft: rgba(53, 194, 181, .14);
  --accent-line: rgba(53, 194, 181, .45);
  --focus: #5FD6CB;

  /* графики */
  --grid: #20272F;
  --axis: #364150;
  --chart-label: #7D8793;
  --spark: #56616D;
  --skeleton: #1C232C;

  /* категориальная палитра (порядок слотов фиксирован) */
  --series-1: #26A69A;
  --series-2: #7F83E3;
  --series-3: #BA7F18;
  --series-4: #D36A9E;
  --series-5: #3D96D6;
  --series-6: #7FA23A;
  --series-7: #9F73D6;
  --series-8: #CD6B4D;

  /* расходящаяся шкала температурных аномалий (RdBu): холоднее — норма — теплее */
  --div-cold-3: #2166AC;
  --div-cold-2: #4393C3;
  --div-cold-1: #92C5DE;
  --div-mid: #3A3F47;
  --div-warm-1: #F4A582;
  --div-warm-2: #D6604D;
  --div-warm-3: #B2182B;
  /* расходящаяся шкала осадков (BrBG): суше — норма — влажнее */
  --div-dry-3: #8C510A;
  --div-dry-2: #BF812D;
  --div-dry-1: #DFC27D;
  --div-wet-1: #92C5DE;
  --div-wet-2: #4393C3;
  --div-wet-3: #2166AC;

  /* статусы (всегда со значком и подписью) */
  --good: #3FB68B;
  --good-text: #3FB68B;
  --good-soft: rgba(63, 182, 139, .14);
  --warn: #E0A030;
  --warn-text: #E0A030;
  --warn-soft: rgba(224, 160, 48, .14);
  --critical: #E5534B;
  --critical-text: #F07A73;
  --neutral-soft: rgba(169, 178, 188, .10);

  /* изменение показателя: улучшение / ухудшение (красный зарезервирован за потеплением и порогами) */
  --delta-good: var(--good-text);
  --delta-bad: var(--warn-text);
  --delta-flat: var(--ink-3);

  /* шкала заполненности (одна гамма) */
  --meter-track: #1E2A33;
  --meter-fill: #26A69A;

  --shadow-1: 0 1px 0 rgba(0, 0, 0, .25);
  --shadow-pop: 0 8px 28px rgba(0, 0, 0, .45), 0 0 0 1px var(--line-strong);
}

/* ---------- Цвет: светлая тема (основная) и база тем «Цветная» и «Атлас» (их дополнения — в theme-colorful.css, theme-atlas.css) ---------- */
:root[data-theme="light"], :root[data-theme="colorful"], :root[data-theme="atlas"] {
  color-scheme: light;
  --bg: #F3F5F7;
  --panel: #FFFFFF;
  --panel-2: #F6F8FA;
  --panel-3: #EDF1F4;
  --line: #E2E7EC;
  --line-strong: #CBD3DB;
  --ink: #0F1419;
  --ink-2: #4A5562;
  --ink-3: #66717E;
  --overlay: rgba(243, 245, 247, .80);

  --accent: #0B7A70;
  --accent-hover: #08655D;
  --accent-ink: #FFFFFF;
  --accent-soft: rgba(11, 122, 112, .10);
  --accent-line: rgba(11, 122, 112, .40);
  --focus: #0B7A70;

  --grid: #EEF1F4;
  --axis: #CBD3DB;
  --chart-label: #66717E;
  --spark: #A3ACB6;
  --skeleton: #EDF1F4;

  --series-1: #00897A;
  --series-2: #5B63D6;
  --series-3: #B07400;
  --series-4: #C24C8A;
  --series-5: #2479C2;
  --series-6: #5E8A1E;
  --series-7: #8A55C9;
  --series-8: #C2582F;

  --div-mid: #F2F2F2;

  --good: #2E9E6B;
  --good-text: #17774F;
  --good-soft: rgba(46, 158, 107, .12);
  --warn: #D9961E;
  --warn-text: #935E00;
  --warn-soft: rgba(217, 150, 30, .14);
  --critical: #C8372F;
  --critical-text: #B0302A;
  --neutral-soft: rgba(74, 85, 98, .07);

  --meter-track: #DCEFEC;
  --meter-fill: #00897A;

  --shadow-1: 0 1px 2px rgba(15, 20, 25, .06);
  --shadow-pop: 0 8px 28px rgba(15, 20, 25, .14), 0 0 0 1px var(--line-strong);
}
