/* LINGSCAN Editorial Cinema — unified four-platform tokens.
   Fashion / billboard music product. No brass, no SaaS blue, no earth yellow.
   Web + bar desk + compose: cinematic dark. Miniprogram + mobile + bar guest: clean light. */

:root {
  color-scheme: dark;

  /* Dark studio (web compose, bar console) */
  --cinema-bg: #09090b;
  --cinema-panel: #121214;
  --cinema-raised: #1a1a1f;
  --cinema-line: rgba(255, 255, 255, 0.08);
  --cinema-text: #fafafa;
  --cinema-text-2: #d4d4d8;
  --cinema-muted: #71717a;
  --cinema-cta: #fafafa;
  --cinema-cta-ink: #09090b;
  --cinema-cta-press: #e4e4e7;

  /* Light editorial (miniprogram, mobile, guest) */
  --editorial-bg: #fafafa;
  --editorial-panel: #ffffff;
  --editorial-raised: #f4f4f5;
  --editorial-line: rgba(0, 0, 0, 0.06);
  --editorial-text: #09090b;
  --editorial-text-2: #3f3f46;
  --editorial-muted: #71717a;
  --editorial-cta: #09090b;
  --editorial-cta-ink: #ffffff;

  --danger: #ef4444;
  --warn: #f59e0b;
  --ok: #22c55e;

  /* Default export = dark studio (compose.html) */
  --ink-950: var(--cinema-bg);
  --ink-900: var(--cinema-panel);
  --ink-800: var(--cinema-raised);
  --ink-700: #27272a;
  --paper-100: var(--cinema-text);
  --paper-300: var(--cinema-text-2);
  --paper-500: var(--cinema-muted);
  --signal: var(--cinema-cta);
  --signal-press: var(--cinema-cta-press);
  --on-signal: var(--cinema-cta-ink);

  --product-canvas: var(--cinema-bg);
  --product-panel: var(--cinema-panel);
  --product-panel-raised: var(--cinema-raised);
  --product-panel-muted: #0c0c0e;
  --product-border: var(--cinema-line);
  --product-border-strong: rgba(255, 255, 255, 0.14);
  --product-text: var(--cinema-text);
  --product-text-secondary: var(--cinema-text-2);
  --product-text-muted: var(--cinema-muted);
  --product-accent: var(--cinema-cta);
  --product-accent-hover: var(--cinema-cta-press);
  --product-accent-soft: rgba(255, 255, 255, 0.06);
  --product-accent-ink: var(--cinema-cta-ink);
  --product-warning: var(--warn);
  --product-danger: var(--danger);
  --product-success: var(--ok);
  --product-focus: 0 0 0 2px rgba(255, 255, 255, 0.22);

  --product-space-1: 4px;
  --product-space-2: 8px;
  --product-space-3: 12px;
  --product-space-4: 16px;
  --product-space-5: 20px;
  --product-space-6: 24px;
  --product-space-8: 32px;
  --product-space-10: 40px;

  --product-radius-control: 8px;
  --product-radius-panel: 12px;
  --product-radius-pill: 999px;
  --product-shadow-float: none;
  --product-font-ui: var(--f-sans, "Inter", "PingFang SC", "HarmonyOS Sans SC", "Microsoft YaHei UI", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif);
  --product-font-display: "Noto Serif SC", "Songti SC", "Noto Sans SC", serif;
  --product-font-mono: "JetBrains Mono", Consolas, monospace;
}

* { box-sizing: border-box; }

:focus-visible {
  outline: 0;
  box-shadow: var(--product-focus);
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
