/* Engineering workspace: technical clarity, cool surfaces, restrained cyan. */
:root {
  --bg:#edf2f8; --surface:#ffffff; --surface-2:#f4f7fb; --surface-3:#e4ecf5;
  --text:#172b43; --muted:#526780; --line:#ccd8e6; --line-strong:#95a9c0;
  --accent:#086784; --accent-2:#064e6b; --accent-soft:#dceff6;
  --terminal:#14253c; --terminal-text:#a5e6f4; --warning:#975a05; --danger:#b42338;
  --shadow:0 16px 40px rgb(25 48 78 / 10%); --shadow-soft:0 4px 18px rgb(25 48 78 / 6%);
  --radius:10px; --sensor-accent-text:#fff; --on-accent:#fff;
  --panel:var(--surface); --panel2:var(--surface-2); --panel-2:var(--surface-2);
  --border:var(--line); --border-strong:var(--line-strong); --input:var(--surface-2); --amber:var(--warning);
  --gate-bg:#0b1322; --gate-panel:#121f32; --gate-panel-2:#192b43; --gate-line:#30465f;
  --gate-green:#61d7ee; --gate-green-soft:rgb(97 215 238 / 12%);
  --gate-text:#eaf2fc; --gate-muted:#a2b5cb; --gate-danger:#ff8c97;
}
html[data-theme="dark"] {
  --bg:#0b1322; --surface:#121f32; --surface-2:#18283e; --surface-3:#21334b;
  --text:#e7effa; --muted:#a4b7cf; --line:#2a3d56; --line-strong:#496582;
  --accent:#61d7ee; --accent-2:#32b9d6; --accent-soft:#183b50;
  --terminal:#0d192a; --terminal-text:#a5e6f4; --warning:#f2bd63; --danger:#ff8c97;
  --shadow:0 16px 40px rgb(0 6 18 / 26%); --shadow-soft:0 4px 18px rgb(0 6 18 / 18%);
  --on-accent:#082435; --sensor-accent-text:#082435;
}
body {
  background:linear-gradient(rgb(107 145 185 / 4%) 1px,transparent 1px),linear-gradient(90deg,rgb(107 145 185 / 4%) 1px,transparent 1px),var(--bg);
  background-size:40px 40px;
  font-family:"Segoe UI",Inter,Arial,sans-serif;
}
.topbar,.guide-topbar {background:var(--surface);border-bottom:1px solid var(--line);box-shadow:0 2px 12px rgb(0 8 20 / 6%)}
.linux-mark,.about-logo {border-radius:8px;background:var(--accent-soft);color:var(--accent);border-color:var(--line-strong)}
.hero-strip {border-radius:10px;border-top:3px solid var(--accent);background:var(--surface);box-shadow:var(--shadow-soft)}
.hero-strip h1 {letter-spacing:-.035em;font-weight:650}
.eyebrow,.terminal-path,.step-badge,.panel-title>span,.access-kicker {font-family:"Cascadia Code",Consolas,monospace}
.workspace-card,.steps-card,.panel-box,.analysis-panel {border-radius:10px}
.workspace-head {background:var(--terminal);border-bottom:1px solid var(--line-strong)}
.workspace-head h2,.modal-card>header h2 {color:#eaf2fc}
.step-badge {border-color:#36536e;background:#192e45;color:#b4e9f6}
.primary-btn,.run-btn,.nav-btn.next,.step-item.active .step-number,.step-item.done .step-number {color:var(--on-accent)}
.primary-btn,.secondary-btn,.run-btn,.nav-btn,.ghost-btn,.theme-toggle {border-radius:7px}
.ghost-btn.active {color:var(--accent);background:var(--accent-soft)}
.step-item.active {background:var(--accent-soft)}
.step-number {font-family:"Cascadia Code",Consolas,monospace;border-radius:7px}
input,select,textarea {accent-color:var(--accent)}
table {font-variant-numeric:tabular-nums}
.process-track i {background:linear-gradient(90deg,var(--accent-2),var(--accent))}
.process-monitor {background:var(--surface);border-color:var(--line-strong)}
.guide-nav {background:var(--surface)}
.guide-topbar {border-color:var(--line)}
.guide-section {border-color:var(--line)}
.injection {background:#155a72}.delay {background:#735220}.purge {background:#254878}
.phase span {color:#e5effa}

/* Decorative artwork must never inherit scientific figure sizing. */
.access-gate {background:radial-gradient(ellipse at 50% 0%,rgb(53 117 172 / 16%),transparent 65%),linear-gradient(rgb(113 163 207 / 5%) 1px,transparent 1px),linear-gradient(90deg,rgb(113 163 207 / 5%) 1px,transparent 1px),var(--gate-bg);background-size:auto,40px 40px,40px 40px,auto;align-items:safe center}
.access-terminal {width:min(100%,460px);border-radius:12px;border-top:2px solid var(--gate-green);box-shadow:0 24px 80px rgb(0 5 18 / 40%)}
.access-terminal-bar {background:#0e1a2b;min-height:40px}
.access-terminal-body {padding:22px 32px 24px}
.access-gate .cat-illustration {width:160px;max-width:60%;margin:0 auto 12px;filter:drop-shadow(0 6px 16px rgb(67 191 229 / 12%))}
.access-gate .cat-illustration>svg {display:block;width:100%;min-width:0;max-width:100%;height:auto;aspect-ratio:260 / 190;overflow:visible}
.cat-body,.cat-ear {fill:#1a3047}
.access-copy h1 {font-family:"Segoe UI",Arial,sans-serif;font-size:32px;letter-spacing:-.035em}
.access-copy p {font-family:"Segoe UI",Arial,sans-serif;font-size:14px}
.access-kicker {font-size:10px;letter-spacing:.22em}
.access-input-row {background:#0c1727;border-radius:7px}
.access-input-row input::placeholder {color:#8195ae}
.access-form {margin-top:22px}
.access-form button {border-radius:7px;color:#082435;font-weight:700}
.access-form button:focus-visible {outline-color:var(--gate-green)}
.status-light {box-shadow:0 0 10px rgb(97 215 238 / 35%)}
.access-footer {margin-top:12px;padding-top:16px}
@media(max-width:560px) {
  .access-terminal-body {padding:18px 22px}
  .access-gate .cat-illustration {width:136px}
  .access-copy h1 {font-size:28px}
  .access-gate {padding:16px}
}
@media(prefers-reduced-motion:reduce) {html{scroll-behavior:auto}.access-terminal.denied{animation:none}}
