/* Design tokens only. Values copied from the IVGO library member area (ui.css); "(ours)" marks additions.
   The dark block is duplicated rather than using light-dark(), which needs Safari 17.5+. */
:root {
  color-scheme: light;
  --font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-round: ui-rounded, "SF Pro Rounded", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;

  --bg: #E7EEF9;
  --blob-a: rgba(98, 153, 221, 0.55);
  --blob-b: rgba(63, 182, 192, 0.40);
  --blob-c: rgba(232, 75, 75, 0.22);

  --ink: #13203A;
  --muted: #4B5B75;
  --accent: #2F6FBF;
  --accent-ink: #FFFFFF;
  --accent-soft: rgba(47, 111, 191, 0.14);
  --accent-glow: 0 6px 16px rgba(47, 111, 191, 0.30);
  --field: #F8FAFD;
  --line: rgba(19, 32, 58, 0.10);
  --scrim: rgba(8, 12, 24, 0.28);
  --success: #1E7A4C;  --success-soft: rgba(30, 122, 76, 0.12);
  --danger: #B3261E;   --danger-soft: rgba(179, 38, 30, 0.12);
  --warn: #8A5200;     --warn-soft: rgba(214, 140, 20, 0.16);

  --glass-bg: rgba(255, 255, 255, 0.50);
  --glass-chrome: rgba(255, 255, 255, 0.62);
  --glass-border: rgba(255, 255, 255, 0.75);
  --glass-edge-low: rgba(19, 32, 58, 0.08);
  --glass-shadow: 0 6px 20px rgba(30, 55, 100, 0.10);
  --glass-blur: blur(18px) saturate(160%);
  --glass-solid: #F3F6FB;
  --chrome-solid: #FFFFFF;

  /* (ours) option colours by position, from the brand hues; same in both themes */
  --opt-1: #6299DD;
  --opt-2: #3FB6C0;
  --opt-3: #E84B4B;
  --opt-4: #F2B85C;
  --track: rgba(128, 140, 160, 0.30);

  --radius: 20px;
  --radius-sm: 12px;
  --radius-btn: 14px;
  --radius-input: 13px;
  --radius-pill: 999px;
  --gutter: 16px;
  --tap: 44px;
  --ease-ui: 0.15s;
  --ease-results: 700ms cubic-bezier(0.22, 1, 0.36, 1); /* (ours) */
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --bg: #0A0F1C;
    --blob-a: rgba(98, 153, 221, 0.38);
    --blob-b: rgba(63, 182, 192, 0.24);
    --blob-c: rgba(232, 75, 75, 0.20);
    --ink: #E9EFF8;
    --muted: #A2B2C9;
    --accent: #86B6F0;
    --accent-ink: #0A1428;
    --accent-soft: rgba(134, 182, 240, 0.16);
    --field: #172031;
    --line: rgba(255, 255, 255, 0.09);
    --scrim: rgba(0, 0, 0, 0.45);
    --success: #7FD6A6;  --success-soft: rgba(127, 214, 166, 0.14);
    --danger: #F2A09A;   --danger-soft: rgba(242, 160, 154, 0.14);
    --warn: #F2B85C;     --warn-soft: rgba(242, 184, 92, 0.14);
    --glass-bg: rgba(255, 255, 255, 0.06);
    --glass-chrome: rgba(16, 22, 36, 0.58);
    --glass-border: rgba(255, 255, 255, 0.12);
    --glass-edge-low: rgba(0, 0, 0, 0.30);
    --glass-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
    --glass-solid: #161E2D;
    --chrome-solid: #121A28;
  }
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #0A0F1C;
  --blob-a: rgba(98, 153, 221, 0.38);
  --blob-b: rgba(63, 182, 192, 0.24);
  --blob-c: rgba(232, 75, 75, 0.20);
  --ink: #E9EFF8;
  --muted: #A2B2C9;
  --accent: #86B6F0;
  --accent-ink: #0A1428;
  --accent-soft: rgba(134, 182, 240, 0.16);
  --field: #172031;
  --line: rgba(255, 255, 255, 0.09);
  --scrim: rgba(0, 0, 0, 0.45);
  --success: #7FD6A6;  --success-soft: rgba(127, 214, 166, 0.14);
  --danger: #F2A09A;   --danger-soft: rgba(242, 160, 154, 0.14);
  --warn: #F2B85C;     --warn-soft: rgba(242, 184, 92, 0.14);
  --glass-bg: rgba(255, 255, 255, 0.06);
  --glass-chrome: rgba(16, 22, 36, 0.58);
  --glass-border: rgba(255, 255, 255, 0.12);
  --glass-edge-low: rgba(0, 0, 0, 0.30);
  --glass-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
  --glass-solid: #161E2D;
  --chrome-solid: #121A28;
}

@media (prefers-reduced-transparency: reduce), (prefers-contrast: more) {
  :root {
    --glass-bg: var(--glass-solid);
    --glass-chrome: var(--chrome-solid);
    --glass-blur: none;
    --blob-a: transparent;
    --blob-b: transparent;
    --blob-c: transparent;
  }
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  :root { --glass-chrome: var(--chrome-solid); }
}
