/* Shop Platform — дизайн-токены витрины.
   Тема по умолчанию: C «Выходные». Переключатель меняет data-theme на <html>.
   app.css использует ТОЛЬКО эти переменные — один адаптивный шаблон, три оформления.
   Значения взяты из исходных макетов (HANDOFF v1). */

:root,
:root[data-theme="vyhodnye"] {
  color-scheme: light;
  /* поверхности */
  --bg: #E3E8DC;
  --surface: #FFFFFF;
  --surface-2: #F4F6F1;
  --panel: #33423A;          /* тёмная плашка */
  --panel-ink: #F4F6F1;
  --ink: #1D2A21;
  --ink-2: #4D5A50;          /* второстепенный текст */
  --line: #C9D3C8;
  --line-strong: #1D2A21;
  --accent: #C2452B;         /* терракота */
  --accent-ink: #FFFFFF;
  --selected-bg: #CFDAC5;
  --selected-ring: inset 0 0 0 2px #1D2A21;
  --promo: #F3DE8A;          /* жёлтая промо-плашка */
  --promo-ink: #1D2A21;
  --ok: #2F7D5B;
  --warn: #C2452B;
  --focus: #1D2A21;
  /* форма */
  --control-h: 48px;
  --control-h-lg: 56px;
  --control-h-sm: 40px;
  --control-radius: 999px;   /* пилюли */
  --card-radius: 24px;
  --radius-sm: 14px;
  --radius-lg: 32px;
  --border-width: 1px;
  --shadow: 0 10px 30px rgba(29, 42, 33, .12);
  --shadow-sm: 0 2px 10px rgba(29, 42, 33, .08);
  --lift: -3px;
  /* типографика */
  --font-head: 'Unbounded', 'Arial Rounded MT Bold', system-ui, sans-serif;
  --font-body: 'Geologica', 'Segoe UI', system-ui, sans-serif;
  --head-weight: 600;
  --head-spacing: -.02em;
  --head-transform: none;
  --kicker-transform: none;
  --kicker-spacing: .02em;
  --label-transform: none;
  --label-font: var(--font-body);
  --label-weight: 500;
  /* сетка */
  --container: 1360px;
  --gutter: clamp(16px, 3vw, 40px);
  --body-size: 16px;
  --line-height: 1.5;
}

/* A «Галерея» — спокойная, музейная, прямые углы, засечки */
:root[data-theme="galereya"] {
  --bg: #FAFAF8;
  --surface: #FFFFFF;
  --surface-2: #F0EDE6;
  --panel: #121212;
  --panel-ink: #FAFAF8;
  --ink: #121212;
  --ink-2: #5E5E59;
  --line: #E4E4E0;
  --line-strong: #121212;
  --accent: #2E3BFF;
  --accent-ink: #FFFFFF;
  --selected-bg: #EDEDE9;
  --selected-ring: inset 0 0 0 1px #121212;
  --promo: #F0EDE6;
  --promo-ink: #121212;
  --ok: #3E6B4F;
  --warn: #9F3A2E;
  --focus: #2E3BFF;
  --control-h: 44px;
  --control-h-lg: 56px;
  --control-h-sm: 40px;
  --control-radius: 0px;
  --card-radius: 0px;
  --radius-sm: 0px;
  --radius-lg: 0px;
  --border-width: 1px;
  --shadow: 0 1px 0 #E4E4E0;
  --shadow-sm: 0 1px 0 #E4E4E0;
  --lift: 0px;
  --font-head: 'Prata', Georgia, serif;
  --font-body: 'Golos Text', 'Segoe UI', system-ui, sans-serif;
  --head-weight: 400;
  --head-spacing: 0;
  --head-transform: none;
  --kicker-transform: uppercase;
  --kicker-spacing: .18em;
  --label-transform: none;
  --label-font: var(--font-body);
  --label-weight: 500;
  --container: 1320px;
}

/* B «Улица» — плотная, стрит, 2px рамки, моноширинные капс-подписи */
:root[data-theme="ulitsa"] {
  --bg: #E8E8E3;
  --surface: #F5F5F1;
  --surface-2: #E8E8E3;
  --panel: #0D0D0D;
  --panel-ink: #D4FF3D;
  --ink: #0D0D0D;
  --ink-2: #4A4A46;
  --line: #0D0D0D;
  --line-strong: #0D0D0D;
  --accent: #D4FF3D;         /* лайм — ТОЛЬКО как фон под тёмным текстом */
  --accent-ink: #0D0D0D;
  --selected-bg: #D4FF3D;
  --selected-ring: inset 0 0 0 2px #0D0D0D;
  --promo: #FFD23D;
  --promo-ink: #0D0D0D;
  --ok: #0D0D0D;
  --warn: #FF6A3D;
  --focus: #0D0D0D;
  --control-h: 48px;
  --control-h-lg: 60px;
  --control-h-sm: 44px;
  --control-radius: 0px;
  --card-radius: 0px;
  --radius-sm: 0px;
  --radius-lg: 0px;
  --border-width: 2px;
  --shadow: none;
  --shadow-sm: none;
  --lift: 0px;
  --font-head: 'Dela Gothic One', 'Arial Black', system-ui, sans-serif;
  --font-body: 'Onest', 'Segoe UI', system-ui, sans-serif;
  --head-weight: 400;
  --head-spacing: -.01em;
  --head-transform: uppercase;
  --kicker-transform: uppercase;
  --kicker-spacing: .08em;
  --label-transform: uppercase;
  --label-font: 'JetBrains Mono', ui-monospace, monospace;
  --label-weight: 600;
  --container: 1360px;
  --line-height: 1.45;
}

@media (prefers-reduced-motion: reduce) {
  :root { --lift: 0px; }
}

/* v2: текст ошибок и знак на «тревожном» фоне — отдельные токены, чтобы держать контраст ≥4.5:1 (см. checks/contrast.json) */
:root, :root[data-theme="vyhodnye"] { --warn-ink: #A33620; --warn-on: #FFFFFF; }
:root[data-theme="galereya"] { --warn-ink: #9F3A2E; --warn-on: #FFFFFF; }
:root[data-theme="ulitsa"]   { --warn-ink: #A6310D; --warn-on: #0D0D0D; }
