/* NeuroBoss design tokens · v1.1 · 18.07.2026 · BB-NeuroBoss
   TOKENS-AS-CODE (PROCESS v1.3 §D). CC верстает ТОЛЬКО через var(--nb-*).
   :root = day · [data-theme="night"] = overrides. DUAL-THEME — acceptance-инвариант. */
:root {
  /* brand */
  --nb-primary: #FF8C42;
  --nb-primary-hover: #E67A35;
  --nb-primary-deep: #9B4500;      /* текст на оранжевой тонировке */
  --nb-cyan-ai: #00C9DB;
  --nb-midnight: #1A1A2E;
  /* surfaces */
  --nb-surface: #F8F9FA;           /* фон страницы */
  --nb-card: #FFFFFF;              /* карточка */
  --nb-card-raised: #FFFFFF;       /* модалки/поповеры */
  --nb-border: #E5E7EB;
  --nb-skeleton: #EEF0F3;
  /* text */
  --nb-text-1: #1A1A2E;
  --nb-text-2: #6B7280;
  --nb-text-3: #9CA3AF;
  --nb-text-on-primary: #FFFFFF;
  /* status */
  --nb-success: #28A745;
  --nb-warning: #FFC107;
  --nb-error: #DC3545;
  /* soft tints (фоны чипов/бейджей) */
  --nb-primary-soft: rgba(255,140,66,.12);
  --nb-cyan-soft: rgba(0,201,219,.10);
  --nb-success-soft: rgba(40,167,69,.10);
  --nb-warning-soft: rgba(255,193,7,.10);
  --nb-error-soft: rgba(220,53,69,.08);
  --nb-neutral-soft: rgba(107,114,128,.10);
  /* radii */
  --nb-radius-btn: 12px;
  --nb-radius-card: 16px;
  --nb-radius-modal: 24px;
  --nb-radius-full: 9999px;
  /* spacing */
  --nb-space-1: 4px; --nb-space-2: 8px; --nb-space-3: 12px;
  --nb-space-4: 16px; --nb-space-5: 24px; --nb-space-6: 32px;
  /* shadows */
  --nb-shadow-card: 0 2px 8px rgba(0,0,0,.06);
  --nb-shadow-pop: 0 8px 24px rgba(255,140,66,.18);
  --nb-shadow-cta: 0 6px 16px -4px rgba(255,140,66,.50);
  --nb-shadow-modal: 0 24px 48px rgba(0,0,0,.20);
  /* motion */
  --nb-motion: cubic-bezier(.2,.8,.2,1);
  --nb-dur-fast: 120ms; --nb-dur-base: 200ms; --nb-dur-slow: 300ms;
}
[data-theme="night"] {
  /* brand: primary тот же; hover на тёмном СВЕТЛЕЕТ, deep становится светлым текстом на тонировке */
  --nb-primary-hover: #FFA05C;
  --nb-primary-deep: #FFC49C;
  --nb-cyan-ai: #22D7E8;
  /* surfaces: база midnight, страница глубже */
  --nb-surface: #0F0F1E;
  --nb-card: #1A1A2E;
  --nb-card-raised: #232340;
  --nb-border: rgba(255,255,255,.10);
  --nb-skeleton: #232340;
  /* text */
  --nb-text-1: #F4F5F7;
  --nb-text-2: rgba(244,245,247,.65);
  --nb-text-3: rgba(244,245,247,.42);
  /* status — night-оттенки: контраст на #1A1A2E ≥ 4.5:1 (WCAG AA)
     day-значения на тёмном: #28A745 ≈ 3.9:1, #DC3545 ≈ 3.4:1 — НЕ проходят */
  --nb-success: #3ECF6A;   /* ≈ 6.1:1 */
  --nb-warning: #FFD54F;   /* ≈ 9.4:1 */
  --nb-error: #FF7585;     /* ≈ 5.6:1 */
  /* soft tints чуть плотнее */
  --nb-primary-soft: rgba(255,140,66,.18);
  --nb-cyan-soft: rgba(0,201,219,.16);
  --nb-success-soft: rgba(62,207,106,.14);
  --nb-warning-soft: rgba(255,213,79,.14);
  --nb-error-soft: rgba(255,117,133,.12);
  --nb-neutral-soft: rgba(255,255,255,.07);
  /* shadows → glow: drop-shadow на тёмном не читается */
  --nb-shadow-card: 0 0 0 1px rgba(255,255,255,.06);
  --nb-shadow-pop: 0 0 24px rgba(255,140,66,.28);
  --nb-shadow-cta: 0 6px 20px -4px rgba(255,140,66,.45);
  --nb-shadow-modal: 0 24px 48px rgba(0,0,0,.60);
}