/* ============================================================================
   theme.css — единый слой темы HR-платформы.
   Источник истины — design/design-system.md. Значения берутся ТОЛЬКО оттуда.
   Тема меняется правкой токенов здесь, не руками по файлам компонентов.

   Грузится ПОСЛЕ style.css (см. base.html), поэтому переносит платформу на
   токены дизайн-системы централизованно: канонические токены + алиасы на
   легаси-имена из старого style.css (--card/--border/--text-2/--accent-h/…).
   ========================================================================= */

:root {
  /* — 1. Палитра ролями (design-system §1) — */
  --bg:            #FAFAFA;
  --surface:       #FFFFFF;
  --surface-2:     #F4F4F5;
  --line:          #E5E5E5;
  --line-strong:   #D4D4D4;
  --text:          #18181B;
  --text-muted:    #52525B;
  --text-faint:    #A1A1AA;

  /* Один акцент — зелёный экологии. Меняется ТОЛЬКО здесь. */
  --accent:        #0F7A3E;
  --accent-hover:  #0C6533;
  --accent-press:  #0A5429;
  --accent-tint:   #EAF7EF;
  --ring:          rgba(15,122,62,.18);

  /* Семантика статусов (не акценты — только состояния данных) */
  --ok-text:    #047857;  --ok-bg:    #ECFDF5;
  --warn-text:  #92400E;  --warn-bg:  #FEF3C7;
  --err-text:   #B91C1C;  --err-bg:   #FEE2E2;

  /* — 2. Типографика (design-system §2) — */
  --font-head: "Manrope", system-ui, -apple-system, sans-serif;
  --font-body: "Inter", system-ui, -apple-system, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, "SF Mono", monospace;

  /* — 3. Геометрия (design-system §3) — */
  --radius-sm:   6px;
  --radius:      10px;
  --radius-lg:   14px;
  --radius-pill: 999px;

  --shadow-soft: 0 1px 2px rgba(0,0,0,.04), 0 1px 1px rgba(0,0,0,.03);
  --shadow-md:   0 4px 12px rgba(0,0,0,.06);
  --shadow-pop:  0 8px 24px rgba(0,0,0,.12);

  /* Шкала отступов 4·8·12·16·24·32·48·64·96 */
  --sp-1: 4px;  --sp-2: 8px;  --sp-3: 12px; --sp-4: 16px;
  --sp-6: 24px; --sp-8: 32px; --sp-12: 48px; --sp-16: 64px; --sp-24: 96px;

  /* — Алиасы: легаси-имена старого style.css → токены дизайн-системы.
       Старый UI подхватывает зелёный акцент и нейтраль без правок по компонентам. */
  --card:          var(--surface);
  --border:        var(--line);
  --border-strong: var(--line-strong);
  --text-2:        var(--text-muted);
  --text-3:        var(--text-faint);
  --accent-h:      var(--accent-hover);
  --shadow:        var(--shadow-soft);
}

/* box-sizing: border-box — источник в оригинале hr-ecoplatform (style.css),
   здесь его нет, но components.css (ds-btn/ds-input высота/ширина) требует
   этого сброса, иначе padding/border добавляются поверх заданных height/width. */
*, *::before, *::after { box-sizing: border-box; }

/* — Базовая типографика темы (design-system §2). Применяется глобально через
     переменные шрифтов; конкретные размеры — у компонентов и в шкале ниже. */
body {
  font-family: var(--font-body);
  font-size: 15px;
  line-height: 1.5;
}

h1, h2, h3, .ds-h1, .ds-h2, .ds-h3 {
  font-family: var(--font-head);
  color: var(--text);
  margin: 0;
}
.ds-h1 { font-size: 28px; line-height: 1.2;  font-weight: 700; letter-spacing: -.02em; }
.ds-h2 { font-size: 22px; line-height: 1.25; font-weight: 700; letter-spacing: -.01em; }
.ds-h3 { font-size: 17px; line-height: 1.3;  font-weight: 600; }

.ds-body    { font-family: var(--font-body); font-size: 15px; line-height: 1.5;  font-weight: 400; }
.ds-body-sm { font-family: var(--font-body); font-size: 13px; line-height: 1.45; font-weight: 400; }
.ds-label   { font-family: var(--font-body); font-size: 11px; line-height: 1.4;  font-weight: 500;
              text-transform: uppercase; letter-spacing: .05em; color: var(--text-muted); }
.ds-mono, .ds-num {
  font-family: var(--font-mono); font-size: 13px; line-height: 1.4; font-weight: 500;
  font-variant-numeric: tabular-nums;
}

/* Уважаем prefers-reduced-motion (design-system §5) */
@media (prefers-reduced-motion: reduce) {
  * { animation-duration: .001ms !important; transition-duration: .001ms !important; }
}
