/* Дизайн-токены «Аврора» (docs/21-AURORA-UI.md). Эталон — dashboard.buhgpt.kz/v2 (navy-modern).
   RGB-триплеты, чтобы работать через rgb(var(--x)) и rgb(var(--x) / .5).
   Старые имена переменных (--color-*) сохранены как алиасы — экраны переезжают постепенно. */
:root {
  --m-bg: 245 247 250;
  --m-surface: 255 255 255;
  --m-raised: 255 255 255;
  --m-inset: 241 244 249;
  --m-sidebar: 255 255 255;
  --m-text: 15 23 42;
  --m-text2: 71 85 105;
  --m-text3: 100 116 139;
  --m-border: 231 235 241;
  --m-border-strong: 219 225 235;
  --m-accent: 79 70 229;
  --m-accent-soft: 238 242 255;
  --m-success: 22 163 74;
  --m-success-soft: 232 248 238;
  --m-warning: 217 119 6;
  --m-warning-soft: 253 244 228;
  --m-danger: 220 38 38;
  --m-danger-soft: 253 235 235;
  --m-info: 37 99 235;
  --m-info-soft: 235 242 254;

  --r: 9px; --r-sm: 7px; --r-lg: 13px;

  --font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --shadow-soft: 0 1px 2px rgba(16, 24, 40, .04), 0 1px 3px rgba(16, 24, 40, .06);
  --shadow-modal: 0 18px 60px rgba(15, 23, 42, .24);
  --grad-accent: linear-gradient(135deg, #6366F1 0%, #4F46E5 55%, #7C3AED 100%);
}

.dark {
  --m-bg: 10 12 17;
  --m-surface: 19 22 30;
  --m-raised: 24 28 38;
  --m-inset: 14 17 23;
  --m-sidebar: 13 15 21;
  --m-text: 233 236 243;
  --m-text2: 156 165 180;
  --m-text3: 130 140 156;
  --m-border: 38 43 55;
  --m-border-strong: 52 59 74;
  --m-accent: 129 140 248;
  --m-accent-soft: 32 33 58;
  --m-success: 45 200 110;
  --m-success-soft: 16 38 27;
  --m-warning: 251 191 36;
  --m-warning-soft: 45 35 12;
  --m-danger: 248 113 113;
  --m-danger-soft: 46 20 20;
  --m-info: 96 154 250;
  --m-info-soft: 17 30 52;
  --shadow-soft: 0 1px 2px rgba(0, 0, 0, .3), 0 1px 3px rgba(0, 0, 0, .3);
}

/* ── Алиасы прежних имён (экраны, ещё не переехавшие на Аврору, получают её палитру) ── */
:root, .dark {
  --color-background-primary: rgb(var(--m-surface));
  --color-background-secondary: rgb(var(--m-bg));
  --color-background-tertiary: rgb(var(--m-inset));
  --color-background-info: rgb(var(--m-info-soft));
  --color-background-warning: rgb(var(--m-warning-soft));
  --color-background-danger: rgb(var(--m-danger-soft));
  --color-background-success: rgb(var(--m-success-soft));

  --color-border-primary: rgb(var(--m-border-strong));
  --color-border-secondary: rgb(var(--m-border-strong));
  --color-border-tertiary: rgb(var(--m-border));
  --color-border-info: rgb(var(--m-info) / .35);

  --color-text-primary: rgb(var(--m-text));
  --color-text-secondary: rgb(var(--m-text2));
  --color-text-tertiary: rgb(var(--m-text3));
  --color-text-info: rgb(var(--m-info));
  --color-text-warning: rgb(var(--m-warning));
  --color-text-danger: rgb(var(--m-danger));
  --color-text-success: rgb(var(--m-success));

  --border-radius-lg: var(--r-lg);
  --border-radius-md: var(--r);
  --border-radius-sm: var(--r-sm);

  --accent: rgb(var(--m-accent));
  --accent-soft: rgb(var(--m-accent-soft));
  --accent-text: rgb(var(--m-accent));
}

/* Палитра чипов-поводов — приглушённая деловая (единая по экранам) */
:root {
  --occasion-renewal-bg: rgb(var(--m-danger-soft));  --occasion-renewal-fg: rgb(var(--m-danger));
  --occasion-release-bg: rgb(var(--m-info-soft));    --occasion-release-fg: rgb(var(--m-info));
  --occasion-tax-bg: rgb(var(--m-warning-soft));     --occasion-tax-fg: rgb(var(--m-warning));
  --occasion-pulse-bg: rgb(var(--m-accent-soft));    --occasion-pulse-fg: rgb(var(--m-accent));
  --occasion-growth-bg: rgb(var(--m-success-soft));  --occasion-growth-fg: rgb(var(--m-success));
}

/* ════════════════════════════════════════════════════════════════════════
   Фундамент редизайна v2 (система блоков). ТОЛЬКО ДОБАВЛЕНИЯ — ничего выше
   не переопределяется. Эталон — redesign/ANALYSIS.md §3 + mockups/portal-v2.html.
   Чинит латентные баги дизайн-системы: --m-text1 (использовался, но не объявлен)
   и --r-md (использовался с разными fallback 10/12px). tokens.css грузится первым.
   ════════════════════════════════════════════════════════════════════════ */
:root {
  /* Шкала отступов — 4pt (хардкод padding/margin запрещён, ANALYSIS §2.2). */
  --s1: 4px; --s2: 8px; --s3: 12px; --s4: 16px; --s5: 20px; --s6: 24px; --s8: 32px; --s10: 40px;

  /* Шкала кеглей — 8 ступеней (была 16 размеров вразнобой, ANALYSIS §2.2). */
  --fs-11: 11px; --fs-12: 12px; --fs-13: 13px; --fs-14: 14px;
  --fs-16: 16px; --fs-18: 18px; --fs-22: 22px; --fs-28: 28px;

  /* Радиус «панель/карточка блока» — раньше не был объявлен (fallback 10/12px). */
  --r-md: 10px;
}

/* Цветовые токены v2 — свои значения в светлой и тёмной (тёмная — не инверсия, ANALYSIS §3). */
:root {
  --m-text1: var(--m-text);        /* алиас: чинит битый цвет в card.js/manager-mission.css и др. */
  --copilot: 14 138 160;           /* бирюзовый акцент «машины»/провенанса (Copilot-роль, Bitrix-принцип) */
  --copilot-soft: 228 244 247;
  --focus: 79 70 229;              /* цвет фокус-ринга (совпадает с акцентом «Авроры») */
}
.dark {
  --m-text1: var(--m-text);
  --copilot: 69 211 227;           /* читаемая бирюза на тёмном фоне (не инверсия) */
  --copilot-soft: 14 44 51;
  --focus: 129 140 248;
}

/* Единый видимый фокус-ринг (WCAG) — раньше был только border-color (ANALYSIS §2.2).
   В app.css такого правила нет, поэтому добавляем здесь (tokens.css грузится первым). */
:focus-visible { outline: 2px solid rgb(var(--focus)); outline-offset: 2px; }
