/* прогресс. — design tokens. ONE theme now: qwins (black monochrome), matching the
   public landing. The whole app consumes these semantic names via var(), so this
   single :root definition flips every screen. Old multi-theme blocks were removed
   (owner: "одна сильная тема, не плодить разнобой"). CSP-safe; no idle anim. */

:root {
  /* fonts (CSP-safe: local Inter via @font-face in app.css + system fallback) */
  --font-sans: "InterVar", "Inter", "Helvetica Neue", -apple-system, BlinkMacSystemFont,
    "Segoe UI", Roboto, Arial, sans-serif;
  --font-mono: ui-monospace, "SF Mono", "Cascadia Code", Menlo, Consolas, monospace;
  --font-display: var(--font-sans);

  /* radii / sizing / motion */
  --radius: 16px; --radius-input: 12px;
  --r-xs: 8px; --r-sm: 12px; --r-md: 16px; --r-lg: 22px; --r-pill: 12px;
  --r: 26px; --r-s: 16px;
  --icon: 18px; --icon-sm: 15px;
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);   /* enter — snappy decel */
  --ease-in: cubic-bezier(0.4, 0, 1, 1);          /* exit — subtler than enter */
  --ease-std: cubic-bezier(0.2, 0.7, 0.3, 1);     /* interaction (hover/press) */
  --ease-spring: cubic-bezier(0.34, 1.4, 0.64, 1);/* gentle overshoot — ONE delight only */
  --d-in: 180ms; --d-out: 140ms; --d-fast: 110ms;
  --sidebar-w: 230px;

  /* ============ QWINS (black monochrome) ============ */
  --bg: #000000; --bg-2: #060607;
  --panel: #0d0d0f; --panel-2: #121214;
  --card: #0d0d0f; --card-2: #121214; --card-hi: #1a1a1d;
  --text: #ffffff; --text-dim: #8b8b90; --text-faint: #5a5a5f;
  --dim: #8b8b90; --faint: #5a5a5f;
  --line: rgba(255,255,255,.08); --line-2: rgba(255,255,255,.14);
  --pill: #1c1c1f; --pill-line: rgba(255,255,255,.10);
  /* accent in a monochrome theme = white (primary = white button, ink = black) */
  --accent: #ffffff; --accent-2: #ececf0; --accent-weak: rgba(255,255,255,.10);
  --accent-ink: #000000;
  --shadow-1: 0 1px 2px rgba(0,0,0,.5), 0 1px 3px rgba(0,0,0,.6);
  --shadow-2: 0 8px 24px rgba(0,0,0,.55), 0 2px 6px rgba(0,0,0,.5);
  --shadow-3: 0 30px 80px rgba(0,0,0,.7);
  --ring: 0 0 0 3px rgba(255,255,255,.22);
  --grid-dot: rgba(255,255,255,.05);
  /* premium glass (v1.16.7) — frosted panels over the layered dark backdrop */
  --glass: rgba(23,23,28,.60); --glass-2: rgba(24,24,30,.72);
  --glass-bd: rgba(255,255,255,.12); --glass-blur: 14px;
  --shadow-soft: 0 14px 36px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.07);
  --shadow-float: 0 30px 80px rgba(0,0,0,.6), inset 0 1px 0 rgba(255,255,255,.08);

  /* ---- aliases used across app.css (resolve to the qwins values above) ---- */
  --surface: var(--panel); --surface-2: var(--card-2); --surface-3: var(--card-hi);
  --bd: var(--line); --bd2: var(--line-2);
  --text-2: var(--text-dim); --text-3: var(--text-faint);
  --accent-soft: var(--accent-weak); --accent-fg: var(--accent-ink);
  --radius-lg: var(--r-lg); --radius-sm: var(--r-sm);
  --shadow: var(--shadow-1); --shadow-s: var(--shadow-1); --shadow-hover: var(--shadow-2);

  /* semantic status colours — muted, mostly monochrome with minimal hue for meaning */
  --prio-high: #e5645f; --prio-high-soft: rgba(229,100,95,.16);
  --prio-med: #c9a14a; --prio-med-soft: rgba(201,161,74,.16);
  --prio-low: #9a9aa0;
  --danger: #e5645f; --danger-soft: rgba(229,100,95,.16); --danger-weak: rgba(229,100,95,.16);
  --warn: #c9a14a; --warn-weak: rgba(201,161,74,.16);
  --ok: #ffffff;

  /* structure node types — strictly monochrome (no blue), distinguished by tone */
  --node-idea: #ffffff; --node-task: #c9c9d0; --node-goal: #ffffff; --node-decision: #b0b0b8;
  --node-risk: #e5645f; --node-note: #8b8b90; --node-default: #8b8b90;
  /* structure edges — must be visible on the #000 qwins canvas (light monochrome) */
  --edge: rgba(255,255,255,.5); --amber: #c9a14a;

  color-scheme: dark;
}

/* Stale data-theme/data-accent attributes (from the old switcher) must NOT change
   anything now — every theme resolves to qwins. theme.js also clears them. */
[data-theme], [data-accent] { color-scheme: dark; }
