/* ─────────────────────────────────────────────────────────────────────────
   Sentinel Mesh — NEXUS "Verified" design system (shared site stylesheet)
   Tokens copied verbatim from DESIGN.md v3 (bright AI-lab). English-only.
   ───────────────────────────────────────────────────────────────────────── */
:root{
  --bg:#faf9f7; --surface:#ffffff; --surface-sunken:#f3f1ec;
  --border:#e8e4dc; --border-strong:#d6d0c4;
  --ink:#1c1b18; --ink-2:#565049; --ink-3:#8f897e;
  --accent:#cc5a36; --accent-ink:#9e4527; --accent-bg:#fbece4;
  --ok:#117a4d; --ok-bg:#e6f4ec; --ok-border:#bfe3cd;
  --no:#c43d2e; --no-bg:#fcebe8; --no-border:#f2c7bf;
  --info:#2f6db0; --info-bg:#e9f1fa;
  --sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --r-sm:8px; --r:12px; --r-lg:16px; --r-pill:999px;
  --sh-sm:0 1px 2px rgba(28,27,24,.06);
  --sh:0 4px 16px -4px rgba(28,27,24,.10);
  --sh-lg:0 16px 48px -12px rgba(28,27,24,.18);
}
*{margin:0;padding:0;box-sizing:border-box}
html{background:var(--bg);scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--ink);background:var(--bg);
  min-height:100vh;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}
::selection{background:var(--accent-bg);color:var(--accent-ink)}
a{color:var(--accent);text-decoration:none}
a:hover{color:var(--accent-ink)}
.sheet{max-width:1180px;margin:0 auto;padding:0 clamp(22px,5vw,56px)}
.label{font-family:var(--mono);font-size:12px;letter-spacing:.05em;text-transform:uppercase;
  font-weight:500;color:var(--ink-3)}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}

/* ── top nav — single row, never wraps ─────────────────────────────────── */
.nav{position:sticky;top:0;z-index:50;background:rgba(250,249,247,.85);
  backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}
.nav .in{max-width:1180px;margin:0 auto;padding:0 clamp(20px,5vw,56px);height:54px;
  display:flex;align-items:center;gap:18px}
.nav .brand{flex:0 0 auto;display:flex;align-items:baseline;gap:7px;font-size:15.5px}
.nav .brand .mark{font-weight:800;letter-spacing:-.03em;color:var(--ink)}
.nav .brand .prod{font-weight:500;color:var(--ink-2)}
/* link strip: takes remaining width, right-aligned, scrolls instead of wrapping */
.nav .links{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:1px;
  justify-content:flex-end;flex-wrap:nowrap;overflow-x:auto;
  scrollbar-width:none;-webkit-overflow-scrolling:touch}
.nav .links::-webkit-scrollbar{display:none}
.nav .links a{flex:0 0 auto;font-size:13.5px;font-weight:500;color:var(--ink-2);
  padding:6px 9px;border-radius:var(--r-sm);white-space:nowrap;line-height:1}
.nav .links a:hover{background:var(--surface-sunken);color:var(--ink)}
.nav .links a.cur{color:var(--accent-ink);background:var(--accent-bg)}
.nav .links a.ext{color:var(--ink-3)}
.nav .links a.ext::after{content:"↗";font-size:10px;margin-left:3px;opacity:.7}
/* live: compact pill, pushed to the far right, no verbose descriptor */
.nav .live{flex:0 0 auto;font-family:var(--mono);font-size:11px;font-weight:600;
  letter-spacing:.04em;color:var(--ok);display:inline-flex;align-items:center;gap:6px;
  margin-left:10px;padding-left:12px;border-left:1px solid var(--border)}
.nav .live::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ok);
  box-shadow:0 0 0 0 rgba(17,122,77,.5);animation:pulse 2.4s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(17,122,77,.45)}70%{box-shadow:0 0 0 7px rgba(17,122,77,0)}100%{box-shadow:0 0 0 0 rgba(17,122,77,0)}}
@media(max-width:980px){.nav .live{display:none}}
@media(max-width:560px){.nav .links a.ext{display:none}}

/* ── verdict pill (the product) ───────────────────────────────────────── */
.verdict{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);
  font-weight:600;font-size:12.5px;letter-spacing:.03em;padding:5px 12px;
  border-radius:var(--r-pill);border:1px solid;line-height:1;white-space:nowrap}
.verdict.ok{color:var(--ok);background:var(--ok-bg);border-color:var(--ok-border)}
.verdict.no{color:var(--no);background:var(--no-bg);border-color:var(--no-border)}
.verdict.flag{color:var(--accent-ink);background:var(--accent-bg);border-color:#f0d3c4}

/* ── buttons / chips ──────────────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:#fff;
  border:0;border-radius:var(--r);font-family:var(--sans);font-weight:600;font-size:15px;
  padding:12px 22px;cursor:pointer;transition:background .15s}
.btn:hover{background:var(--accent-ink);color:#fff}
.btn.ghost{background:var(--surface);color:var(--ink);border:1px solid var(--border-strong)}
.btn.ghost:hover{background:var(--surface-sunken);color:var(--ink);border-color:var(--ink-3)}
.btn .arr{transition:transform .15s}.btn:hover .arr{transform:translateX(3px)}

/* ── section scaffolding ──────────────────────────────────────────────── */
section{padding:clamp(54px,8vw,92px) 0}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--accent-ink);font-weight:600;margin-bottom:16px}
h2{font-family:var(--sans);font-weight:800;font-size:clamp(26px,3.6vw,38px);
  line-height:1.12;letter-spacing:-.02em;max-width:20ch}
.sec-lede{font-size:17px;color:var(--ink-2);max-width:64ch;margin-top:16px;line-height:1.6}
.sec-lede b{color:var(--ink);font-weight:600}
.divider{border:0;border-top:1px solid var(--border)}

/* ── cards / grids ────────────────────────────────────────────────────── */
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);
  box-shadow:var(--sh-sm);padding:24px 26px}
.grid{display:grid;gap:18px}
@media(min-width:760px){.grid.g2{grid-template-columns:1fr 1fr}.grid.g3{grid-template-columns:repeat(3,1fr)}}
.kicker{font-family:var(--mono);font-size:12px;color:var(--ink-3);letter-spacing:.04em;text-transform:uppercase}

/* ── data row ─────────────────────────────────────────────────────────── */
.row{display:flex;justify-content:space-between;gap:16px;padding:9px 0;
  border-bottom:1px solid var(--border);font-family:var(--mono);font-size:13px}
.row:last-child{border-bottom:0}
.row .k{color:var(--ink-3)}
.row .v{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:500;text-align:right}

/* ── code reference inline ────────────────────────────────────────────── */
code{font-family:var(--mono);font-size:.88em;background:var(--surface-sunken);
  border:1px solid var(--border);border-radius:6px;padding:1px 6px;color:var(--ink)}
.codeblock{font-family:var(--mono);font-size:13px;line-height:1.7;background:var(--surface);
  border:1px solid var(--border);border-radius:var(--r);padding:16px 18px;color:var(--ink-2);
  overflow-x:auto;white-space:pre}
.codeblock .c{color:var(--ink-3)}
.codeblock .a{color:var(--accent-ink)}
.codeblock .g{color:var(--ok)}
.codeblock .b{color:var(--info)}

/* ── footer ───────────────────────────────────────────────────────────── */
footer.site{border-top:1px solid var(--border);background:var(--surface-sunken);
  padding:42px 0 56px;margin-top:24px}
footer.site .cols{display:flex;flex-wrap:wrap;gap:36px 64px;align-items:flex-start}
footer.site .brand{display:flex;align-items:baseline;gap:8px;font-size:16px}
footer.site .brand .mark{font-weight:800;letter-spacing:-.03em;color:var(--ink)}
footer.site .brand .prod{font-weight:500;color:var(--ink-2)}
footer.site .tag{color:var(--ink-3);font-size:13.5px;max-width:34ch;margin-top:10px}
footer.site .fcol{display:flex;flex-direction:column;gap:8px}
footer.site .fcol .h{font-family:var(--mono);font-size:11.5px;text-transform:uppercase;
  letter-spacing:.06em;color:var(--ink-3);margin-bottom:3px}
footer.site .fcol a{color:var(--ink-2);font-size:14px}
footer.site .fcol a:hover{color:var(--accent-ink)}
footer.site .legal{margin-top:34px;font-family:var(--mono);font-size:11.5px;color:var(--ink-3);
  border-top:1px solid var(--border);padding-top:18px}
