/* Direction: Relay — a dark mission-control console, graphite with a signal-mint accent */
/* Completed by the platform from the short form: both modes, every
   palette token, each text-on-ground pair at its floor. To restyle, write the
   short form again (the decisions in one :root) and it is completed again. */

:root {
  color-scheme: dark;
  --canvas: #0b0f14;
  --surface: #111821;
  --surface-2: #18212d;
  --border: #243142;
  --border-strong: #54575b;
  --ink: #e8eef2;
  --muted: #94a3b3;
  --accent: #3ddc97;
  --accent-hover: #5ae1a7;
  --accent-ink: #0b0f14;
  --accent-text: #5eeaae;
  --accent-strong: #3ddc97;
  --accent-soft: #163c31;
  --accent-border: #226b4f;
  --success: #15803d;
  --success-ink: #ffffff;
  --success-soft: #0d281d;
  --success-strong: #499c68;
  --warning: #b45309;
  --warning-ink: #ffffff;
  --warning-soft: #301e12;
  --warning-strong: #c57a40;
  --danger: #b91c1c;
  --danger-ink: #ffffff;
  --danger-soft: #311216;
  --danger-strong: #d16969;
  --chart-1: #3ddc97;
  --chart-2: #29d2fb;
  --chart-3: #9399f8;
  --chart-4: #fd95dd;
  --chart-5: #f3774b;
  --chart-6: #d7bf11;

  --font-display: "Space Grotesk", ui-sans-serif, system-ui, sans-serif;
  --font-body: "Inter", ui-sans-serif, system-ui, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, Menlo, monospace;
  --display-weight: 600;
  --display-tracking: -0.03em;
  --radius-card: 14px;
  --radius-btn: 10px;
  --radius-input: 10px;
  --font-sans: "Inter", ui-sans-serif, system-ui, sans-serif;
  --eyebrow-tracking: 0.08em;
}

html[data-theme="light"] {
  color-scheme: light;
  --canvas: #ffffff;
  --surface: #ffffff;
  --surface-2: #f3f3f3;
  --border: #ddddde;
  --border-strong: #b6b7b9;
  --ink: #0b0f14;
  --muted: #6d6f72;
  --accent: #3ddc97;
  --accent-hover: #34bb80;
  --accent-ink: #0b0f14;
  --accent-text: #227955;
  --accent-strong: #227955;
  --accent-soft: #e4faf0;
  --accent-border: #a8efd0;
  --success: #15803d;
  --success-ink: #ffffff;
  --success-soft: #e3f0e8;
  --success-strong: #137638;
  --warning: #b45309;
  --warning-ink: #ffffff;
  --warning-soft: #f6eae1;
  --warning-strong: #a64c08;
  --danger: #b91c1c;
  --danger-ink: #ffffff;
  --danger-soft: #f7e4e4;
  --danger-strong: #b91c1c;
  --chart-1: #1ba46d;
  --chart-2: #13a2c4;
  --chart-3: #6567c2;
  --chart-4: #cf74b3;
  --chart-5: #b14f2b;
  --chart-6: #a59321;
}

.grid-bg {
  background-image:
    linear-gradient(to right, color-mix(in srgb, var(--border) 45%, transparent) 1px, transparent 1px),
    linear-gradient(to bottom, color-mix(in srgb, var(--border) 45%, transparent) 1px, transparent 1px);
  background-size: 36px 36px;
}
.dot-live {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--accent);
  box-shadow: 0 0 0 0 color-mix(in srgb, var(--accent) 60%, transparent);
  animation: dot-pulse 2s ease-out infinite;
}
.dot-off { background: var(--muted); animation: none; box-shadow: none; }
@keyframes dot-pulse {
  0% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--accent) 55%, transparent); }
  100% { box-shadow: 0 0 0 9px transparent; }
}
.step-line { position: relative; }
.step-line::before {
  content: "";
  position: absolute;
  left: 13px;
  top: 28px;
  bottom: -8px;
  width: 1px;
  background: var(--border);
}
.step-line:last-child::before { display: none; }
.bubble-in { animation: bubble-in 0.25s ease-out; }
@keyframes bubble-in { from { transform: translateY(8px); } to { transform: none; } }
html { scroll-behavior: smooth; }
.navlink[aria-current] { background: var(--accent-soft); color: var(--accent-strong); }
#scroll-progress { transform: scaleX(0); transition: transform 0.1s linear; }
[data-top][hidden] { display: none; }
ul[aria-label^="Products"] { scrollbar-width: thin; }
html.reduced-motion { scroll-behavior: auto; }
html.reduced-motion #scroll-progress { transition: none; }
html.reduced-motion .dot-live, html.reduced-motion .bubble-in { animation: none; }
