/* Дизайн-токены NameCandies (APP_PLAN §5.5). Hex ВНЕ этого файла запрещён.
   Два мира: family (тёплый, округлый, claymorphism-lite) и pro (строгий, B2B). */

/* ===== Nunito, self-hosted, кириллица + латиница (variable) ===== */
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('/static/fonts/nunito-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('/static/fonts/nunito-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+2000-206F, U+2122, U+2191, U+2193;
}

:root {
  /* размерная шкала (4/8) */
  --sp-1: 4px; --sp-2: 8px; --sp-3: 12px; --sp-4: 16px;
  --sp-5: 24px; --sp-6: 32px; --sp-7: 48px; --sp-8: 72px;
  /* типографика */
  --fs-small: 0.875rem;
  --fs-body: 1.0625rem;
  --fs-h3: 1.3rem; --fs-h2: 1.6rem; --fs-h1: 2.2rem; --fs-hero: 3rem;
  --lh-body: 1.7; --lh-tight: 1.25;
  --container: 1120px;
  --font-mono: ui-monospace, 'SF Mono', Menlo, Consolas, monospace;
}

/* ===== family: тёплый, дружелюбный, округлый ===== */
body[data-world="family"] {
  --bg: #FBF6EF;            /* тёплый крем */
  --surface: #FFFFFF;
  --surface-alt: #F5ECE0;  /* мягкий песочный */
  --surface-sunk: #F0E6D8;
  --ink: #2E2A26;          /* тёплый почти-чёрный */
  --ink-soft: #7A6F63;
  --ink-faint: #A99C8C;
  --line: #E7DBCB;
  --brand: #C0532E;        /* тёплая терракота */
  --brand-hover: #A0431F;
  --brand-tint: #F7E4D9;
  --accent: #2F6E7A;       /* приглушённый петроль — доверие, без клише */
  --accent-tint: #E0EDEE;
  --focus: #1E64C8;
  --ok: #3B7A5E; --warn: #A8752D; --err: #B0392C;
  --font-body: 'Nunito', system-ui, -apple-system, sans-serif;
  --font-head: 'Nunito', system-ui, sans-serif;
  --r-s: 12px; --r-m: 18px; --r-l: 28px; --r-pill: 999px;
  /* claymorphism-lite: мягкая двойная тень, без жёстких линий */
  --shadow-1: 0 1px 2px rgba(70, 50, 30, 0.04), 0 6px 20px rgba(120, 80, 40, 0.06);
  --shadow-2: 0 2px 4px rgba(70, 50, 30, 0.05), 0 14px 36px rgba(120, 80, 40, 0.10);
  --shadow-pop: 0 4px 14px rgba(192, 83, 46, 0.28);
  --hairline: 1px solid var(--line);
  /* гендер — цвет НИКОГДА не единственный носитель (WCAG 1.4.1), всегда с меткой */
  --g-m: #2F6E7A; --g-m-bg: #E0EDEE;
  --g-f: #B0503A; --g-f-bg: #F8E5DC;
  --g-u: #6B5B8A; --g-u-bg: #ECE7F4;
}

/* ===== pro: строгий B2B/API ===== */
body[data-world="pro"] {
  --bg: #F3F5F7;
  --surface: #FFFFFF;
  --surface-alt: #EAEEF2;
  --surface-sunk: #E4E9EE;
  --ink: #171E27;
  --ink-soft: #55606C;
  --ink-faint: #8A95A1;
  --line: #D5DBE1;
  --brand: #0E6E4F;
  --brand-hover: #0A5039;
  --brand-tint: #DFF0EA;
  --accent: #0B62C4;
  --accent-tint: #E2ECF9;
  --focus: #0B62C4;
  --ok: #0E6E4F; --warn: #8A6116; --err: #B3261E;
  --font-body: system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-head: system-ui, sans-serif;
  --r-s: 6px; --r-m: 10px; --r-l: 12px; --r-pill: 999px;
  --shadow-1: 0 1px 2px rgba(20, 30, 40, 0.06);
  --shadow-2: 0 4px 14px rgba(20, 30, 40, 0.10);
  --shadow-pop: 0 2px 8px rgba(14, 110, 79, 0.25);
  --hairline: 1px solid var(--line);
  --console-bg: #0E1420; --console-text: #E4EAF2;
  --g-m: #2F6E7A; --g-m-bg: #E0EDEE;
  --g-f: #B0503A; --g-f-bg: #F6E6E1;
  --g-u: #6B5B8A; --g-u-bg: #ECE7F4;
}

*:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; border-radius: 3px; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
