/* SYNERJOY — CSS-переменные из tokens.json. Подключайте до components/bundle.css.
   Тёмная тема включается сама по настройке устройства (prefers-color-scheme: dark)
   или принудительно: <html data-theme="dark">; <html data-theme="light"> фиксирует светлую. */
@font-face{font-family:'Open Sans Condensed';src:url(./fonts/OpenSansCondensed-Medium.woff2) format('woff2');font-weight:400 700;font-display:swap}
@font-face{font-family:'Open Sans';src:url(./fonts/OpenSans-Medium.woff2) format('woff2');font-weight:400 600;font-display:swap}
/* Open Sans Bold — жирный в тексте (<strong>, **…** в документах): без него браузер не рисует полужирное, раз Medium объявлен до 700. Сделан из Open Sans 3.003 (SIL OFL), тот же набор символов, что у Medium. */
@font-face{font-family:'Open Sans';src:url(./fonts/OpenSans-Bold.woff2) format('woff2');font-weight:700 900;font-display:swap}
/* Стрелки ← ↑ → ↓ ↖ ↗ ↘ ↙ — своим шрифтом: в Open Sans их нет, и браузер брал системные (разной толщины и высоты).
   Контуры — со стрелок кнопок-таблеток synerjoy.cy («Перейти →», «↗»): сплошные, острый наконечник 45°, чуть выше заглавных, по центру строки. Сборка — fonts/build-arrows.py. Стоит первым в --font-body / --font-heading; unicode-range — только стрелки, остальной текст его не грузит. */
@font-face{font-family:'SJ Arrows';src:url(./fonts/SJArrows.woff2) format('woff2');font-weight:100 900;unicode-range:U+2190-2193,U+2196-2199;font-display:swap}
/* Manrope ExtraLight (SIL OFL) — только название «SYNERJOY» в первом экране главной (Hero с brand), как на synerjoy.cy. Латиница. */
@font-face{font-family:'Manrope';src:url(./fonts/Manrope-ExtraLight-latin.woff2) format('woff2');font-weight:200;unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+2122;font-display:swap}
@font-face{font-family:'Blink Script';src:url(./fonts/BlinkScript-Regular.woff2) format('woff2');font-weight:400;font-display:swap}
:root, [data-theme="light"] {
  --color-bg: #fdfcfa;
  --color-bg-alt: #f6f1ec;
  --color-surface: #ffffff;
  --color-text: #1c1c1c;
  --color-ink: #1c1c1c;
  --color-red-ink: #8b1818;
  --color-text-muted: #737373;
  --color-text-muted-alt: #6b6b6b;
  --color-border: #e8e0d8;
  --color-primary: #b72020;
  --color-primary-dark: #8b1818;
  --color-primary-light: #d43535;
  --color-primary-tint: #f7e4e1;
  --color-cta: #bc3d3d;
  --color-accent: #b0c8e2;
  --color-accent-light: #d8e8f3;
  --color-accent-ink: #24496f;
  --color-secondary: #4b90d6;
  --color-secondary-dark: #3a78bc;
  --color-sidebar-bg: #1a1a1a;
  --color-sidebar-text: #ffffffb8;
  --color-sidebar-text-muted: #ffffff61;
  --color-sidebar-border: #ffffff14;
  --color-hero-heading: #d7d7d7;
  --color-scrim: #0c09089e;
  --color-white: #ffffff;
  --color-black: #000000;
  --color-graphite: #101010;
  --vocal-300: #f9bf97;
  --vocal-500: #f56f16;
  --vocal-700: #bf4d02;
  --art-300: #fadb9f;
  --art-500: #f7b128;
  --art-700: #bf7f02;
  --kids-300: #c3d692;
  --kids-500: #78a50a;
  --kids-700: #445d06;
  --theatre-300: #98c3a5;
  --theatre-500: #147935;
  --theatre-700: #125729;
  --music-300: #a5c9e4;
  --music-500: #3386c8;
  --music-700: #164870;
  --production-300: #95aac9;
  --production-500: #0e4089;
  --production-700: #0b2751;
  --dance-300: #d4b1c8;
  --dance-500: #9e4f88;
  --dance-700: #5b264c;
  --shadow-card: 0 18px 36px -24px #3c1e1424;
  --shadow-float: 0 30px 60px -36px #3c1e1424;
  --focus-ring: 0 0 0 3px #3a78bc;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-7: 28px;
  --space-8: 32px;
  --space-11: 44px;
  --space-13: 52px;
  --space-18: 72px;
  --radius-lg: 8px;
  --radius-xl: 12px;
  --radius-2xl: 16px;
  --radius-3xl: 24px;
  --radius-full: 9999px;
  --layout-wrap: 1120px;
  --layout-read: 680px;
  --layout-header: 63px;
  --layout-brush-mobile: 64px;
  --layout-brush-tablet: 96px;
  --layout-brush-desktop: 128px;
  --layout-bp-phone: 640px;
  --layout-bp-menu: 1120px;
  --layout-bp-split: 880px;
  --layout-tap: 44px;
  --gradient-brand: linear-gradient(112deg, #b0c8e2, #3386c8, #bc3d3d, #9e4f88, #f56f16, #f7b128, #78a50a, #147935, #0e4089);
  --gradient-crimson-sky: linear-gradient(90deg, #b72020, #b0c8e2);
  --gradient-tint-crimson: linear-gradient(180deg, #b72020, #b7202033);
  --gradient-tint-sky: linear-gradient(180deg, #b0c8e2, #b0c8e233);
  --gradient-tint-charcoal: linear-gradient(180deg, #1c1c1c, #1c1c1c33);
  --gradient-icon: linear-gradient(135deg, #b72020, #b7202040);
  --gradient-vocal: linear-gradient(90deg, #f9bf97, #f56f16, #bf4d02);
  --gradient-art: linear-gradient(90deg, #fadb9f, #f7b128, #bf7f02);
  --gradient-kids: linear-gradient(90deg, #c3d692, #78a50a, #445d06);
  --gradient-theatre: linear-gradient(90deg, #98c3a5, #147935, #125729);
  --gradient-music: linear-gradient(90deg, #a5c9e4, #3386c8, #164870);
  --gradient-production: linear-gradient(90deg, #95aac9, #0e4089, #0b2751);
  --gradient-dance: linear-gradient(90deg, #d4b1c8, #9e4f88, #5b264c);
  --font-heading: "SJ Arrows", "Open Sans Condensed", "Golos Text", "Raleway", system-ui, sans-serif;
  --font-body: "SJ Arrows", "Open Sans", "Golos Text", system-ui, -apple-system, sans-serif;
  --font-script: "Blink Script", "Segoe Script", cursive;
  --font-wordmark: "Manrope", "SJ Arrows", "Open Sans Condensed", sans-serif;
}
:root[data-theme="dark"] {
  --color-bg: #151413;
  --color-bg-alt: #1d1b1a;
  --color-surface: #242120;
  --color-text: #f2eee9;
  --color-text-muted: #a9a29b;
  --color-text-muted-alt: #b5aea7;
  --color-border: #3a3532;
  --color-primary: #f0675d;
  --color-primary-dark: #ff8f86;
  --color-primary-light: #ff8f86;
  --color-primary-tint: #3a1d1b;
  --color-accent-light: #1f2a36;
  --color-accent-ink: #b0c8e2;
  --color-secondary-dark: #6ea4dc;
  --color-sidebar-bg: #0d0c0c;
  --color-sidebar-border: #ffffff1a;
  --shadow-card: 0 18px 36px -24px #000000b3;
  --shadow-float: 0 30px 60px -36px #000000cc;
  --focus-ring: 0 0 0 3px #6ea4dc;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --color-bg: #151413;
    --color-bg-alt: #1d1b1a;
    --color-surface: #242120;
    --color-text: #f2eee9;
    --color-text-muted: #a9a29b;
    --color-text-muted-alt: #b5aea7;
    --color-border: #3a3532;
    --color-primary: #f0675d;
    --color-primary-dark: #ff8f86;
    --color-primary-light: #ff8f86;
    --color-primary-tint: #3a1d1b;
    --color-accent-light: #1f2a36;
    --color-accent-ink: #b0c8e2;
    --color-secondary-dark: #6ea4dc;
    --color-sidebar-bg: #0d0c0c;
    --color-sidebar-border: #ffffff1a;
    --shadow-card: 0 18px 36px -24px #000000b3;
    --shadow-float: 0 30px 60px -36px #000000cc;
    --focus-ring: 0 0 0 3px #6ea4dc;
  }
}
