/* SnapEnvs design tokens, copied verbatim from snap-env/web/ui-kit/tokens/.
   Do not edit here: change the kit, then run `npm run sync-kit`. */

/* Colour tokens. Dark is the default theme; [data-theme='light'] switches the whole ramp.
   Status tones come verbatim from the approved console mockup. Text tokens were raised
   where the mockup's muted greys fell below WCAG AA on their surfaces. */
:root {
  color-scheme: dark;

  --bg: #0a0a0b;
  --panel: #141416;
  --panel-raised: #1c1c20;
  --field: #0e0e10;
  --border: #27272a;
  --border-strong: #3a3a3f;
  --divider: rgba(39, 39, 42, 0.62);
  --hover: rgba(255, 255, 255, 0.06);
  --overlay: rgba(0, 0, 0, 0.62);

  --text-strong: #ffffff;
  --text: #e4e4e7;
  --text-secondary: #a1a1aa;
  --text-muted: #8b8b93;

  --accent: #1ba9a0;
  --accent-hover: #22bcb2;
  --accent-text: #2cc4b9;
  --on-accent: #04201e;
  --accent-5: rgba(27, 169, 160, 0.05);
  --accent-10: rgba(27, 169, 160, 0.1);
  --accent-20: rgba(27, 169, 160, 0.2);
  --accent-30: rgba(27, 169, 160, 0.3);

  --danger: #f87171;

  --ok-fg: #4ade80;
  --ok-bg: rgba(74, 222, 128, 0.12);
  --ok-bd: rgba(74, 222, 128, 0.28);
  --sleep-fg: #38bdf8;
  --sleep-bg: rgba(56, 189, 248, 0.12);
  --sleep-bd: rgba(56, 189, 248, 0.28);
  --progress-fg: #2cc4b9;
  --progress-bg: rgba(27, 169, 160, 0.14);
  --progress-bd: rgba(27, 169, 160, 0.34);
  --bad-fg: #f87171;
  --bad-bg: rgba(248, 113, 113, 0.12);
  --bad-bd: rgba(248, 113, 113, 0.3);
  --warn-fg: #fbbf24;
  --warn-bg: rgba(251, 191, 36, 0.12);
  --warn-bd: rgba(251, 191, 36, 0.3);
  --off-fg: #9b9ba3;
  --off-bg: rgba(255, 255, 255, 0.05);
  --off-bd: rgba(255, 255, 255, 0.1);

  --avatar-1: #3b82f6;
  --avatar-2: #14b8a6;
  --avatar-3: #34d07c;
  --avatar-4: #a855f7;
  --avatar-5: #f0b03f;
  --avatar-6: #ec4899;
}

:root[data-theme='light'] {
  color-scheme: light;

  --bg: #f9fafb;
  --panel: #ffffff;
  --panel-raised: #f3f4f6;
  --field: #ffffff;
  --border: #e5e7eb;
  --border-strong: #d1d5db;
  --divider: rgba(229, 231, 235, 0.8);
  --hover: rgba(17, 24, 39, 0.05);
  --overlay: rgba(17, 24, 39, 0.45);

  --text-strong: #111827;
  --text: #374151;
  --text-secondary: #4b5563;
  --text-muted: #6b7280;

  --accent: #26cfbf;
  --accent-hover: #3ad8c9;
  --accent-text: #0f766e;
  --on-accent: #04201e;
  --accent-5: rgba(38, 207, 191, 0.06);
  --accent-10: rgba(38, 207, 191, 0.12);
  --accent-20: rgba(38, 207, 191, 0.22);
  --accent-30: rgba(38, 207, 191, 0.45);

  --danger: #dc2626;

  --ok-fg: #15803d;
  --ok-bg: #dcfce7;
  --ok-bd: #bbf7d0;
  --sleep-fg: #0369a1;
  --sleep-bg: #e0f2fe;
  --sleep-bd: #bae6fd;
  --progress-fg: #0f766e;
  --progress-bg: #ccfbf1;
  --progress-bd: #99f6e4;
  --bad-fg: #b91c1c;
  --bad-bg: #fee2e2;
  --bad-bd: #fecaca;
  --warn-fg: #b45309;
  --warn-bg: #fef3c7;
  --warn-bd: #fde68a;
  --off-fg: #6b7280;
  --off-bg: #f3f4f6;
  --off-bd: #e5e7eb;
}

/* Type tokens. The product renders on the platform UI stack, as the approved mockup does;
   identifiers (environment names, branches, commits, URLs, logs) use the platform mono. */
:root {
  --font-sans:
    ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial,
    'Noto Sans', sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', monospace;

  --text-2xs: 10px;
  --text-tag: 10.5px;
  --text-xs: 11.5px;
  --text-sm: 12.5px;
  --text-md: 13px;
  --text-nav: 13.5px;
  --text-base: 14px;
  --text-lg: 16px;
  --text-title: 21px;
  --text-page: 24px;
  --text-display: 30px;

  --tracking-tight: -0.025em;
  --tracking-label: 0.1em;
  --tracking-column: 0.05em;
}

:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --sidebar-width: 240px;
  --page-gutter: 20px;
}
@media (max-width: 640px) {
  :root {
    --page-gutter: 16px;
  }
}

:root {
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-full: 999px;
}

:root {
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.3);
  --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.35), 0 2px 4px -2px rgba(0, 0, 0, 0.3);
  --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.5), 0 8px 10px -6px rgba(0, 0, 0, 0.4);
  --shadow-accent: 0 10px 15px -3px var(--accent-20), 0 4px 6px -4px var(--accent-20);
}
:root[data-theme='light'] {
  --shadow-sm: 0 1px 2px rgba(17, 24, 39, 0.06);
  --shadow-md: 0 4px 6px -1px rgba(17, 24, 39, 0.08), 0 2px 4px -2px rgba(17, 24, 39, 0.06);
  --shadow-xl: 0 20px 25px -5px rgba(17, 24, 39, 0.14), 0 8px 10px -6px rgba(17, 24, 39, 0.1);
}

:root {
  --duration-quick: 120ms;
  --duration-base: 180ms;
  --duration-slow: 260ms;
  --ease-out: cubic-bezier(0.25, 1, 0.5, 1);
}
