/* gde-tokens.css — Where family (Где*) shared design tokens for domcom (ГдеУправдом).
   Source: D:/dev/gdesup-wt-design/src/styles/gde-tokens.css, copied and adapted.
   Plain CSS custom properties only — the donor's `@theme inline` block (Tailwind 4
   build-time token resolution) is intentionally dropped: domcom has no
   tailwind.config.js / @theme pipeline, so that block would be dead weight.
   See docs/design/DESIGN-SYSTEM.md sections 1-4 and docs/design/BRIEF-domcom.md
   section 1 for the contract this file implements. */

:root {
  --bg: #ffffff;
  --surface: #f8fafc;
  --surface-2: #f1f5f9;
  --line: #e2e8f0;
  --line-strong: #cbd5e1;
  --ink: #0f172a;
  --ink-2: #475569;
  --ink-3: #64748b;
  --primary: #059669;
  --primary-hover: #047857;
  --primary-soft: #ecfdf5;
  --primary-ring: rgba(5, 150, 105, 0.35);
  --on-primary: #ffffff;
  --footer: #020617;
  --footer-ink: #94a3b8;
  --footer-ink-strong: #f8fafc;
  --warn: #b45309;
  --warn-soft: #fffbeb;
  --shadow-1: 0 1px 2px rgba(15, 23, 42, 0.06);
  --shadow-2: 0 12px 30px -16px rgba(15, 23, 42, 0.28);
  --r-sm: 8px;
  --r-md: 12px;
  --r-lg: 16px;
  --r-xl: 24px;
  --font-ui: "Onest", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-display: "Unbounded", "Onest", system-ui, sans-serif;
  /* vertical accent — overwritten per skin, see [data-skin="upravdom"] below */
  --accent: #ea580c;
  --accent-soft: #fff7ed;
  --accent-ink: #9a3412;
  --accent-hover: #c2410c;
  /* Правило контраста (2026-09-18, DESIGN-SYSTEM.md section 2): сплошные кнопки
     с белым текстом используют --cta:#047857 (AA 4.5:1 на белом); #059669
     остаётся для текста, иконок, обводок, ссылок (--primary). Не переопределять
     --cta обратно в var(--primary) ниже по каскаду. */
  --cta: #047857;
  --cta-hover: #065f46;
  --cta-soft: var(--primary-soft);
  --cta-ring: var(--primary-ring);
  --hero-a: rgba(234, 88, 12, 0.1);
  --hero-b: rgba(5, 150, 105, 0.08);
  color-scheme: light;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg: #0b1220;
    --surface: #111a2b;
    --surface-2: #182338;
    --line: #233046;
    --line-strong: #33425c;
    --ink: #f1f5f9;
    --ink-2: #b6c2d3;
    --ink-3: #9fb0c7;
    --primary: #34d399;
    --primary-hover: #6ee7b7;
    --primary-soft: rgba(52, 211, 153, 0.12);
    --primary-ring: rgba(52, 211, 153, 0.35);
    --on-primary: #064e3b;
    --footer: #05090f;
    --footer-ink: #8797ad;
    --footer-ink-strong: #f8fafc;
    --warn: #fbbf24;
    --warn-soft: rgba(251, 191, 36, 0.12);
    --shadow-1: 0 1px 2px rgba(0, 0, 0, 0.4);
    --shadow-2: 0 12px 30px -16px rgba(0, 0, 0, 0.6);
    --accent-soft: rgba(234, 88, 12, 0.14);
    --accent-ink: #fdba74;
    color-scheme: dark;
  }
}

:root[data-theme="light"] {
  --bg: #ffffff;
  --surface: #f8fafc;
  --surface-2: #f1f5f9;
  --line: #e2e8f0;
  --line-strong: #cbd5e1;
  --ink: #0f172a;
  --ink-2: #475569;
  --ink-3: #64748b;
  --primary: #059669;
  --primary-hover: #047857;
  --primary-soft: #ecfdf5;
  --primary-ring: rgba(5, 150, 105, 0.35);
  --on-primary: #ffffff;
  --footer: #020617;
  --footer-ink: #94a3b8;
  --footer-ink-strong: #f8fafc;
  --warn: #b45309;
  --warn-soft: #fffbeb;
  --shadow-1: 0 1px 2px rgba(15, 23, 42, 0.06);
  --shadow-2: 0 12px 30px -16px rgba(15, 23, 42, 0.28);
  color-scheme: light;
}

:root[data-theme="dark"] {
  --bg: #0b1220;
  --surface: #111a2b;
  --surface-2: #182338;
  --line: #233046;
  --line-strong: #33425c;
  --ink: #f1f5f9;
  --ink-2: #b6c2d3;
  --ink-3: #9fb0c7;
  --primary: #34d399;
  --primary-hover: #6ee7b7;
  --primary-soft: rgba(52, 211, 153, 0.12);
  --primary-ring: rgba(52, 211, 153, 0.35);
  --on-primary: #064e3b;
  --footer: #05090f;
  --footer-ink: #8797ad;
  --footer-ink-strong: #f8fafc;
  --warn: #fbbf24;
  --warn-soft: rgba(251, 191, 36, 0.12);
  --shadow-1: 0 1px 2px rgba(0, 0, 0, 0.4);
  --shadow-2: 0 12px 30px -16px rgba(0, 0, 0, 0.6);
  --accent-soft: rgba(234, 88, 12, 0.14);
  --accent-ink: #fdba74;
  color-scheme: dark;
}

/* skins: only the vertical accent changes */
[data-skin="sup"] {
  --accent: #ea580c;
  --accent-hover: #c2410c;
  --hero-a: rgba(234, 88, 12, 0.12);
}

[data-skin="kv"] {
  --accent: #0284c7;
  --accent-hover: #0369a1;
  --accent-soft: #f0f9ff;
  --accent-ink: #075985;
  --hero-a: rgba(2, 132, 199, 0.12);
}

[data-skin="lodka"] {
  --accent: #0d9488;
  --accent-hover: #0f766e;
  --accent-soft: #f0fdfa;
  --accent-ink: #115e59;
  --hero-a: rgba(13, 148, 136, 0.12);
}

/* ГдеУправдом (domcom) — accent slate-blue, per BRIEF-domcom.md section 1 and
   DESIGN-SYSTEM.md section 1 (accent table, added 2026-09-18). Never used as a
   CTA button fill — solid CTA stays family emerald (--cta above). */
[data-skin="upravdom"] {
  --accent: #1d4ed8;
  --accent-hover: #1e40af;
  --accent-soft: #eff6ff;
  --accent-ink: #1e3a8a;
  --hero-a: rgba(29, 78, 216, 0.12);
}

:root[data-theme="dark"][data-skin="kv"],
:root:not([data-theme="light"])[data-skin="kv"],
:root[data-theme="dark"] [data-skin="kv"],
:root:not([data-theme="light"]) [data-skin="kv"] {
  --accent-soft: rgba(2, 132, 199, 0.16);
  --accent-ink: #7dd3fc;
}

:root[data-theme="dark"][data-skin="lodka"],
:root:not([data-theme="light"])[data-skin="lodka"],
:root[data-theme="dark"] [data-skin="lodka"],
:root:not([data-theme="light"]) [data-skin="lodka"] {
  --accent-soft: rgba(13, 148, 136, 0.16);
  --accent-ink: #5eead4;
}

:root[data-theme="dark"][data-skin="upravdom"],
:root:not([data-theme="light"])[data-skin="upravdom"],
:root[data-theme="dark"] [data-skin="upravdom"],
:root:not([data-theme="light"]) [data-skin="upravdom"] {
  --accent-soft: rgba(29, 78, 216, 0.16);
  --accent-ink: #93c5fd;
}

:root[data-theme="light"][data-skin="kv"],
:root[data-theme="light"] [data-skin="kv"] {
  --accent-soft: #f0f9ff;
  --accent-ink: #075985;
}

:root[data-theme="light"][data-skin="lodka"],
:root[data-theme="light"] [data-skin="lodka"] {
  --accent-soft: #f0fdfa;
  --accent-ink: #115e59;
}

:root[data-theme="light"][data-skin="upravdom"],
:root[data-theme="light"] [data-skin="upravdom"] {
  --accent-soft: #eff6ff;
  --accent-ink: #1e3a8a;
}

/* CTA mode: family green (ship this) or vertical accent (preview-only, not used
   in production — domcom never sets [data-cta="vertical"]). */
[data-cta="vertical"] {
  --cta: var(--accent);
  --cta-hover: var(--accent-hover);
  --cta-soft: var(--accent-soft);
  --cta-ring: color-mix(in oklab, var(--accent) 35%, transparent);
}

/* Backward-compat aliases for domcom's pre-family variable names
   (--color-primary, --border, --text-primary, --text-secondary, --background)
   live in api/static/site.css and api/templates/base.html instead of here:
   both of those load AFTER this file, so a copy of the alias here would just
   be silently overridden — see the comments at each of those two edit sites
   for the actual, effective aliasing (docs/design/BRIEF-domcom.md section 1). */
