/* Set and Run: one look for every page */
:root {
  --ink:#0f172a; --soft:#566074; --faint:#8a93a6; --line:#e3e8f0; --bg:#f5f7fb; --card:#fff;
  --accent:#1f5eff; --accent-dark:#1238c9; --accent-soft:#eaf0ff;
  --go:#0e8a5f; --go-soft:#e2f5ec; --stop:#c8372d; --stop-soft:#fdecea; --warn:#8a5a00; --warn-soft:#fff3d1;
  --radius:16px; --shadow:0 1px 2px rgba(15,23,42,.05), 0 8px 24px rgba(15,23,42,.06);
}
* { box-sizing:border-box; }
[hidden] { display:none !important; }
html { -webkit-text-size-adjust:100%; }
body { margin:0; font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; color:var(--ink); background:var(--bg); -webkit-font-smoothing:antialiased; }
a { color:var(--accent); }
button, select, input, textarea { font:inherit; color:inherit; }
:focus-visible { outline:3px solid rgba(31,94,255,.35); outline-offset:2px; }
.brand { display:inline-flex; align-items:center; gap:10px; font-weight:800; letter-spacing:-.01em; font-size:18px; color:var(--ink); text-decoration:none; }
.brand img { width:34px; height:34px; display:block; }
.brand span b { color:var(--accent); font-weight:800; }
.btn, button.primary { display:inline-block; background:linear-gradient(180deg,#2f6bff,var(--accent-dark)); color:#fff; text-decoration:none; padding:12px 20px; border-radius:12px; font-weight:650; border:0; cursor:pointer; box-shadow:0 1px 0 rgba(255,255,255,.25) inset, 0 6px 16px rgba(31,94,255,.25); transition:transform .08s ease, box-shadow .15s ease, filter .15s ease; }
.btn:hover, button.primary:hover { filter:brightness(1.06); }
.btn:active, button.primary:active { transform:translateY(1px); }
.btn.ghost { background:#fff; color:var(--ink); border:1px solid var(--line); box-shadow:none; }
.card { background:var(--card); border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow); }
.muted { color:var(--soft); font-size:14px; }
