/* Cosec Director — design tokens (17-series director register).
   The director app wears the DARK INK ground by default (per designs
   handoff-v1, the 17-series). Values are lifted straight from the platform
   token source of truth so the two surfaces stay one system. A light
   register is available via [data-theme="light"] for anyone who wants it. */
:root {
  /* type */
  --font-heading: "Schibsted Grotesk", system-ui, sans-serif;
  --font-body: "Instrument Sans", system-ui, sans-serif;

  /* ground — dark ink (director register) */
  --bg: #201e1d;
  --surface: #2a2726;
  --surface-raised: #33302f;
  --text: #f3f2f2;
  --text-2: rgba(243, 242, 242, 0.7);
  --text-3: rgba(243, 242, 242, 0.5);
  --hairline: rgba(243, 242, 242, 0.13);
  --hairline-strong: rgba(243, 242, 242, 0.25);

  /* interactive accent — cyan (only accent for interaction) */
  --accent: oklch(0.72 0.11 220);
  --accent-hover: oklch(0.78 0.1 220);
  --accent-pressed: oklch(0.66 0.1 220);
  --accent-text: oklch(0.78 0.09 220);
  --accent-tint: oklch(0.35 0.06 220);
  --accent-tint-text: oklch(0.85 0.07 220);
  --accent-ink: #141312; /* text on a solid cyan button in dark register */

  /* proposal accent — magenta. RESERVED: "awaiting a person". */
  --proposal: oklch(0.72 0.17 350);
  --proposal-text: oklch(0.78 0.14 350);
  --proposal-tint: oklch(0.33 0.09 350);

  /* semantic — compliance meaning ONLY, never decorative */
  --ok: oklch(0.78 0.13 152);
  --ok-tint: oklch(0.32 0.06 152);
  --warn: oklch(0.8 0.13 75);
  --warn-tint: oklch(0.35 0.07 60);
  --warn-text: oklch(0.85 0.1 75);
  --crit: oklch(0.7 0.17 25);
  --crit-tint: oklch(0.32 0.09 25);
  --crit-text: oklch(0.82 0.11 25);

  /* per-company accent, set at runtime on the root by app.js */
  --company: var(--accent);

  /* geometry */
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 18px;
  --radius-pill: 999px;

  /* elevation (dark: deeper, never wider) */
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.4);
  --shadow-card: 0 1px 2px rgba(0, 0, 0, 0.4), 0 10px 30px rgba(0, 0, 0, 0.35);
  --shadow-float: 0 1px 2px rgba(0, 0, 0, 0.35), 0 6px 20px rgba(0, 0, 0, 0.3);
  --shadow-overlay: 0 16px 48px rgba(0, 0, 0, 0.55);

  /* motion */
  --dur-fast: 120ms;
  --dur-base: 240ms;
  --dur-enter: 400ms;
  --dur-spring: 550ms;
  --ease-out: cubic-bezier(0, 0, 0.2, 1);
  --ease-spring: cubic-bezier(0.32, 1.36, 0.45, 1);
}

[data-theme="light"] {
  --bg: #f3f2f2;
  --surface: #ffffff;
  --surface-raised: #ffffff;
  --text: #201e1d;
  --text-2: rgba(0, 0, 0, 0.65);
  --text-3: rgba(0, 0, 0, 0.5);
  --hairline: rgba(0, 0, 0, 0.12);
  --hairline-strong: rgba(0, 0, 0, 0.2);

  --accent: #0088b0;
  --accent-hover: oklch(0.52 0.1 220);
  --accent-pressed: oklch(0.45 0.09 220);
  --accent-text: oklch(0.45 0.09 220);
  --accent-tint: oklch(0.93 0.03 220);
  --accent-tint-text: oklch(0.4 0.08 220);
  --accent-ink: #ffffff;

  --proposal: #d6006c;
  --proposal-text: oklch(0.48 0.19 356);
  --proposal-tint: oklch(0.94 0.04 356);

  --ok: oklch(0.45 0.11 152);
  --ok-tint: oklch(0.93 0.05 152);
  --warn: oklch(0.62 0.13 75);
  --warn-tint: oklch(0.93 0.04 60);
  --warn-text: oklch(0.45 0.11 60);
  --crit: oklch(0.55 0.19 25);
  --crit-tint: oklch(0.93 0.05 25);
  --crit-text: oklch(0.42 0.14 25);

  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
  --shadow-card: 0 1px 2px rgba(0, 0, 0, 0.05), 0 10px 30px rgba(0, 0, 0, 0.06);
  --shadow-float: 0 1px 2px rgba(0, 0, 0, 0.04), 0 6px 20px rgba(0, 0, 0, 0.06);
  --shadow-overlay: 0 16px 48px rgba(0, 0, 0, 0.18);
}
