/* Equaliser theme: Classic — token values reproduce the pre-refactor look exactly.
   Tokens are consumed progressively by the Phase A tokenisation batches. */
:root {
  /* surfaces */
  --eq-bg-app: linear-gradient(135deg, #0a0a0f 0%, #1a1a2e 100%);
  --eq-surface-1: rgba(255,255,255,0.03);
  --eq-surface-1-hover: rgba(255,255,255,0.06);
  --eq-surface-2: rgba(255,255,255,0.05);
  --eq-surface-2-hover: rgba(255,255,255,0.08);
  --eq-surface-raised: rgba(20,20,35,0.98);
  --eq-surface-input: rgba(255,255,255,0.05);
  --eq-surface-inverse: #1a1a2e;
  --eq-surface-modal: #1a1a2e;
  --eq-scrim: rgba(0,0,0,0.6);
  /* text */
  --eq-text-1: #ffffff;
  --eq-text-2: rgba(255,255,255,0.7);
  --eq-text-2-dim: rgba(255,255,255,0.6);
  --eq-text-3: rgba(255,255,255,0.5);
  --eq-text-4: rgba(255,255,255,0.4);
  --eq-text-faint: rgba(255,255,255,0.3);
  --eq-text-inverse: #0a0a0f;
  --eq-text-link: #60a5fa;
  /* accent */
  --eq-accent: #a855f7;
  --eq-accent-2: #8b5cf6;
  --eq-accent-text: #c084fc;
  --eq-accent-contrast: #ffffff;
  --eq-accent-soft: rgba(139,92,246,0.15);
  --eq-accent-soft-hover: rgba(139,92,246,0.3);
  --eq-focus-ring: rgba(168,85,247,0.4);
  /* status */
  --eq-danger: #ef4444;
  --eq-danger-soft: rgba(239,68,68,0.1);
  --eq-success: #4ade80;
  --eq-success-soft: rgba(34,197,94,0.1);
  --eq-warning: #f59e0b;
  --eq-warning-soft: rgba(245,158,11,0.1);
  --eq-info: #60a5fa;
  --eq-info-soft: rgba(96,165,250,0.1);
  /* gradients (Signal will flatten these) */
  --eq-grad-accent: linear-gradient(135deg, #8b5cf6, #a855f7);
  --eq-grad-avatar: linear-gradient(135deg, #8b5cf6, #a855f7);
  --eq-grad-display-text: linear-gradient(135deg, #ffffff, #a855f7);
  /* borders & dividers (whole-shorthand tokens) */
  --eq-border: 1px solid rgba(255,255,255,0.1);
  --eq-border-strong: 1px solid rgba(255,255,255,0.2);
  --eq-border-soft: 1px solid rgba(255,255,255,0.06);
  --eq-divider: 1px solid rgba(255,255,255,0.05);
  --eq-border-focus: #a855f7;
  --eq-border-inverse: 1px solid rgba(0,0,0,0.2);
  /* radii */
  --eq-radius-xs: 4px;
  --eq-radius-sm: 6px;
  --eq-radius-md: 8px;
  --eq-radius-lg: 10px;
  --eq-radius-xl: 12px;
  --eq-radius-2xl: 16px;
  --eq-radius-3xl: 20px;
  --eq-radius-pill: 999px;
  --eq-radius-round: 50%;
  /* shadows & effects */
  --eq-shadow-1: 0 8px 24px rgba(0,0,0,0.4);
  --eq-shadow-2: 0 8px 32px rgba(0,0,0,0.4);
  --eq-shadow-glow: 0 4px 20px rgba(139,92,246,0.4);
  --eq-blur-backdrop: blur(20px);
  --eq-img-filter: none;
  --eq-img-filter-hover: none;
  /* typography */
  --eq-font-body: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', sans-serif;
  --eq-font-display: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', sans-serif;
  --eq-font-mono: 'SF Mono', 'Monaco', 'Consolas', monospace;
  --eq-transform-display: none;
  --eq-tracking-display: 0em;
  --eq-weight-display: 700;
  --eq-transform-label: none;
  --eq-tracking-label: 0em;
  /* motion */
  --eq-dur-fast: 0.15s;
  --eq-dur-med: 0.3s;
  /* component hooks (canonical values refined at consolidation batches A2/A3/A13) */
  --eq-btn-radius: 8px;
  --eq-btn-border: none;
  --eq-btn-transform: none;
  --eq-btn-primary-bg: var(--eq-grad-accent);
  --eq-btn-primary-color: #ffffff;
  --eq-badge-radius: 4px;
  --eq-badge-transform: none;
  --eq-card-bg: var(--eq-surface-1);
  --eq-card-border: var(--eq-border);
  --eq-card-radius: var(--eq-radius-2xl);
  --eq-player-bg: rgba(10,10,15,0.95);
  --eq-player-text: #ffffff;
  --eq-player-border-top: 1px solid rgba(255,255,255,0.1);
  --eq-sidebar-bg: rgba(15,15,25,0.8);
  --eq-sidebar-border: 1px solid rgba(255,255,255,0.08);
  --eq-sidebar-active-bg: rgba(139,92,246,0.15);
  --eq-sidebar-active-color: #c084fc;
  --eq-input-radius: 8px;
  --eq-checkbox-accent: #a855f7;
  /* extended (Phase A) */
  --eq-dur-quick: 0.2s;
  --eq-border-15: rgba(255,255,255,0.15);
  --eq-text-mute: rgba(255,255,255,0.35);
  --eq-text-strong: rgba(255,255,255,0.8);
  --eq-accent-soft-20: rgba(139,92,246,0.2);
  --eq-accent-soft-35: rgba(139,92,246,0.35);
  --eq-accent-mid: rgba(139,92,246,0.5);
  --eq-scrim-strong: rgba(0,0,0,0.7);
  --eq-dur-spin: 0.8s;
  --eq-border-20: rgba(255,255,255,0.2);
  --eq-border-12: rgba(255,255,255,0.12);
  --eq-border-08: rgba(255,255,255,0.08);
  --eq-surface-0: rgba(255,255,255,0.02);
  --eq-surface-0-hover: rgba(255,255,255,0.04);
  --eq-text-bright: rgba(255,255,255,0.85);
  --eq-scrim-soft: rgba(0,0,0,0.3);
  --eq-brand-youtube: rgba(255,0,0,0.85);
  --eq-accent-tint-10: rgba(168,85,247,0.1);
  --eq-accent-soft-03: rgba(139,92,246,0.03);
  --eq-accent-soft-08: rgba(139,92,246,0.08);
  --eq-accent-soft-10: rgba(139,92,246,0.1);
  --eq-danger-mid: rgba(239,68,68,0.5);
  --eq-danger-strong: rgba(239,68,68,0.8);
  --eq-success-2: #22c55e;
  --eq-success-soft-06: rgba(34,197,94,0.06);
  --eq-success-soft-12: rgba(34,197,94,0.12);
  --eq-success-soft-25: rgba(34,197,94,0.25);
  --eq-success-soft-40: rgba(34,197,94,0.4);
  --eq-info-dim: rgba(96,165,250,0.7);
  /* extended (Phase A) — batch A2 (eq-sidebar.css consolidation) */
  --eq-border-10: rgba(255,255,255,0.1);
  --eq-text-90: rgba(255,255,255,0.9);
  --eq-text-55: rgba(255,255,255,0.55);
  --eq-text-45: rgba(255,255,255,0.45);
  --eq-text-25: rgba(255,255,255,0.25);
  --eq-danger-soft-20: rgba(239,68,68,0.2);
  --eq-danger-soft-40: rgba(239,68,68,0.4);
  --eq-grad-nav-active: linear-gradient(135deg, rgba(139,92,246,0.2), rgba(168,85,247,0.15));
  --eq-grad-acting-banner: linear-gradient(135deg, rgba(168,85,247,0.10), rgba(168,85,247,0.04));
  --eq-accent-border-35: rgba(168,85,247,0.35);
  --eq-accent-border-50: rgba(168,85,247,0.5);
  --eq-accent-tint-15: rgba(168,85,247,0.15);
  --eq-accent-tint-25: rgba(168,85,247,0.25);
  --eq-accent-tint-30: rgba(168,85,247,0.3);
  --eq-accent-transparent: rgba(168,85,247,0);
  --eq-accent-light: #d8b4fe;
  --eq-role-artist-text: #c4b5fd;
  --eq-role-label-bg: rgba(59,130,246,0.25);
  --eq-role-label-text: #93c5fd;
  --eq-role-operator-bg: rgba(16,185,129,0.25);
  --eq-role-operator-text: #6ee7b7;
  --eq-select-bg: rgba(15,15,25,0.9);
  --eq-font-mono-generic: monospace;
  --eq-dur-pulse: 2s;
  --eq-shadow-pulse-start: 0 0 0 0 var(--eq-focus-ring);
  --eq-shadow-pulse-end: 0 0 0 4px var(--eq-accent-transparent);
  /* extended (Phase A) — batch A3 (eq-player.css consolidation) */
  --eq-panel-bg-95: rgba(15,15,25,0.95);
  --eq-panel-bg-97: rgba(15,15,25,0.97);
  --eq-brand-pink-90: rgba(255,0,110,0.9);
  --eq-brand-pink: #ff006e;
  --eq-black: #000000;
  --eq-radius-2px: 2px;
  --eq-radius-3px: 3px;
  --eq-radius-top-xl: 12px 12px 0 0;
  --eq-grad-progress: linear-gradient(90deg, #8b5cf6, #a855f7);
  --eq-accent-soft-12: rgba(139,92,246,0.12);
  /* extended (Phase A) — batch A4 (client standalone pages: index.html/login.html/join.html) */
  --eq-blur-glow: blur(100px);
  --eq-accent-soft-40: rgba(139,92,246,0.4);
  --eq-accent-tint-40: rgba(168,85,247,0.4);
  --eq-shadow-glow-lg: 0 8px 30px rgba(168,85,247,0.4);
  --eq-brand-pink-30: rgba(255,0,110,0.3);
  --eq-violet-600: #7c3aed;
  --eq-violet-700: #6d28d9;
  --eq-amber-400: #fbbf24;
  --eq-amber-soft-10: rgba(251,191,36,0.1);
  --eq-amber-soft-30: rgba(251,191,36,0.3);
  --eq-danger-soft-12: rgba(239,68,68,0.12);
  --eq-danger-soft-30: rgba(239,68,68,0.3);
  --eq-danger-light: #fca5a5;
  --eq-emerald-500: #10b981;
  --eq-emerald-12: rgba(16,185,129,0.12);
  --eq-emerald-20: rgba(16,185,129,0.2);
  --eq-success-soft-18: rgba(34,197,94,0.18);
  --eq-border-07: rgba(255,255,255,0.07);
  --eq-font-mono-alt: 'SF Mono', Menlo, monospace;
  --eq-grad-glow-1: radial-gradient(circle, var(--eq-accent-soft-40), transparent);
  --eq-grad-glow-2: radial-gradient(circle, var(--eq-brand-pink-30), transparent);
  --eq-grad-demo-btn: linear-gradient(135deg, var(--eq-accent), var(--eq-violet-600));
  --eq-grad-btn-extension: linear-gradient(135deg, var(--eq-accent-2), var(--eq-violet-700));
  /* extended (Phase A) — batch A5 */
  --eq-orange: #f97316;
  --eq-orange-soft-10: rgba(249,115,22,0.1);
  --eq-orange-soft-30: rgba(249,115,22,0.3);
  --eq-success-soft-20: rgba(34,197,94,0.2);
  /* extended (Phase A) — batch A6 (client/home.html) */
  --eq-purple-alt: #9333ea;
  --eq-brand-pink-10: rgba(255,0,110,0.1);
  --eq-brand-pink-20: rgba(255,0,110,0.2);
  --eq-brand-violet-alt-10: rgba(131,56,236,0.1);
  --eq-brand-violet-alt-50: rgba(131,56,236,0.5);
  --eq-grad-hero: linear-gradient(135deg, var(--eq-brand-pink-10), var(--eq-brand-violet-alt-10));
  --eq-grad-hero-glow: radial-gradient(circle, var(--eq-brand-pink-20), transparent);
  --eq-blur-hero-glow: blur(80px);
  --eq-shadow-play-btn: 0 4px 24px rgba(139,92,246,0.5);
  --eq-shadow-play-btn-hover: 0 6px 28px rgba(139,92,246,0.7);
  --eq-radius-24: 24px;
  /* extended (Phase A) — batch A7 (client/social.html) */
  --eq-info-soft-15: rgba(96,165,250,0.15);
  --eq-success-soft-15: rgba(34,197,94,0.15);
  --eq-amber-soft-15: rgba(251,191,36,0.15);
  --eq-shadow-btn-hover: 0 4px 16px rgba(139,92,246,0.4);
  /* extended (Phase A) — batch A8 (client/thread.html, client/messages.html) */
  --eq-text-95: rgba(255,255,255,0.95);
  --eq-radius-18: 18px;
  --eq-grad-msg-outgoing: linear-gradient(135deg, rgba(139,92,246,0.4), rgba(168,85,247,0.3));
  /* extended (Phase A) — batch A9 (client/profile.html, client/user.html) */
  --eq-grad-profile-banner: linear-gradient(135deg, rgba(139,92,246,0.3), rgba(255,0,110,0.2), rgba(59,130,246,0.2));
  --eq-border-avatar: 4px solid rgba(10,10,15,1);
  --eq-grad-user-banner: linear-gradient(135deg, rgba(139,92,246,0.3), rgba(168,85,247,0.2));
  --eq-grad-banner-fade: linear-gradient(transparent, rgba(10,10,15,1));
  --eq-danger-soft-15: rgba(239,68,68,0.15);
  --eq-dur-spin-1s: 1s;
  /* extended (Phase A) — batch A10 (client/artist.html) */
  --eq-shadow-play-btn-sm: 0 4px 20px rgba(139,92,246,0.5);
  /* extended (Phase A) — batch A11 (client/library.html, client/playlist.html) */
  --eq-grad-playlist-cover: linear-gradient(135deg, #1a1a2e, #2d1b69);
  --eq-danger-vivid: #ff6b6b;
  --eq-danger-vivid-soft-15: rgba(255,59,48,0.15);
  /* extended (Phase A) — batch A12 (client/settings.html) */
  --eq-success-soft-30: rgba(34,197,94,0.3);
  /* extended (Phase A) — batch A13 (admin: common/css/admin-base.css + operator pages) */
  --eq-grad-success: linear-gradient(135deg, #10b981, #34d399);
  --eq-shadow-glow-success: 0 4px 20px rgba(16,185,129,0.4);
  --eq-danger-soft-25: rgba(239,68,68,0.25);
  --eq-radius-14: 14px;
  --eq-font-mono-sf: 'SF Mono', 'Monaco', monospace;
  --eq-amber-soft-20: rgba(251,191,36,0.2);
  --eq-amber-light: #fcd34d;
  --eq-accent-tint-20: rgba(168,85,247,0.2);
  --eq-accent-tint-08: rgba(168,85,247,0.08);
  --eq-blue-soft-05: rgba(59,130,246,0.05);
  --eq-blue-soft-10: rgba(59,130,246,0.1);
  --eq-blue-soft-12: rgba(59,130,246,0.12);
  --eq-blue-soft-15: rgba(59,130,246,0.15);
  --eq-blue-soft-20: rgba(59,130,246,0.2);
  --eq-blur-4: blur(4px);
  --eq-grad-modal: linear-gradient(135deg, #1a1a2e 0%, #0f0f19 100%);
  --eq-scrim-40: rgba(0,0,0,0.4);
  --eq-grad-future-card: linear-gradient(135deg, var(--eq-accent-tint-08), var(--eq-blue-soft-05));
  --eq-emerald-light: #34d399;
  --eq-shadow-dot-ok: 0 0 8px rgba(52,211,153,0.6);
  --eq-red-400: #f87171;
  /* extended (Phase A) — batch A14 */
  --eq-slate-soft-25: rgba(100,116,139,0.25);
  --eq-slate-light: #cbd5e1;
  --eq-blue-soft-25: rgba(59,130,246,0.25);
  --eq-blue-soft-08: rgba(59,130,246,0.08);
  --eq-text-75: rgba(255,255,255,0.75);
  /* extended (Phase A) — batch A15 */
  --eq-grad-login-bg: linear-gradient(135deg, #0a0a0f 0%, #1a1a2e 50%, #0a0a0f 100%);
  --eq-grad-logo-text: linear-gradient(135deg, #a855f7 0%, #ec4899 100%);
  --eq-grad-btn-purple: linear-gradient(135deg, #a855f7 0%, #8b5cf6 100%);
  --eq-shadow-btn-purple: 0 8px 24px rgba(168,85,247,0.3);
  --eq-grad-profile-setup-bg: linear-gradient(135deg, #0f0a1e 0%, #1a0f2e 100%);
  --eq-success-soft-08: rgba(34,197,94,0.08);
  --eq-success-light: #86efac;
  --eq-danger-soft-08: rgba(239,68,68,0.08);
  --eq-warning-soft-08: rgba(245,158,11,0.08);
  --eq-warning-soft-30: rgba(245,158,11,0.3);
  --eq-accent-tint-02: rgba(168,85,247,0.02);
  --eq-grad-found-banner: linear-gradient(135deg, var(--eq-accent-tint-08), var(--eq-accent-tint-02));
  --eq-blue-soft-02: rgba(59,130,246,0.02);
  --eq-blue-soft-30: rgba(59,130,246,0.3);
  --eq-grad-found-banner-info: linear-gradient(135deg, var(--eq-blue-soft-08), var(--eq-blue-soft-02));
  /* extended (Phase A) — batch A16 */
  --eq-blue: #3b82f6;
  --eq-orange-soft-20: rgba(249,115,22,0.2);
  /* extended (Phase A) — batch A17 (content_node/orchestrator/releases.html) */
  --eq-accent-soft-05: rgba(139,92,246,0.05);
  --eq-accent-soft-60: rgba(139,92,246,0.6);
  --eq-blur-10: blur(10px);
  --eq-grad-release: linear-gradient(135deg, #22c55e, #16a34a);
  --eq-shadow-release: 0 4px 12px rgba(34,197,94,0.4);
  --eq-warning-soft-35: rgba(245,158,11,0.35);
  /* extended (Phase A) — batch A18 (content_node/orchestrator/edit-release.html) */
  --eq-grad-danger: linear-gradient(135deg, #ef4444, #dc2626);
  --eq-shadow-danger: 0 4px 20px rgba(239,68,68,0.4);
  --eq-radius-top-md: 8px 8px 0 0;
  --eq-radius-bottom-md: 0 0 8px 8px;
  --eq-scrim-20: rgba(0,0,0,0.2);
  --eq-grad-dup-progress: linear-gradient(90deg, #8b5cf6, #6d28d9);
  --eq-shadow-glow-release: 0 4px 20px rgba(34,197,94,0.4);
  /* extended (Phase A) — batch A19 (content_node/orchestrator/profile.html) */
  --eq-amber-soft-90: rgba(251,191,36,0.9);
  --eq-success-soft-90: rgba(34,197,94,0.9);
  --eq-danger-soft-90: rgba(239,68,68,0.9);
  /* extended (Phase A) — batch A21 (content_node/orchestrator/upload.html) */
  --eq-grad-progress-complete: linear-gradient(90deg, #22c55e, #16a34a);
}
