:root{color-scheme:dark;--bg:#12151b;--panel:#1d2430;--panel2:#263040;--ink:#f3efe4;--muted:#aab4c3;--line:#39465a;--accent:#f0b35a;--good:#7fd191;--bad:#f27f7f;--blue:#70a7ff;--green:#6fcfa4;--violet:#a88cff;--stone:#657184}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top left,#23334a 0,#12151b 42rem);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.shell{width:min(1180px,calc(100vw - 28px));margin:0 auto;padding:32px 0 48px}.hero{margin-bottom:20px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--accent);font-size:.78rem;font-weight:800}.hero h1{font-size:clamp(2.4rem,8vw,5.8rem);line-height:.9;margin:.1em 0}.promise{max-width:900px;color:#d6deea;font-size:1.12rem;line-height:1.55}.panel{background:linear-gradient(180deg,rgba(29,36,48,.96),rgba(20,25,34,.96));border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 50px rgba(0,0,0,.25);padding:18px}.intro{display:grid;grid-template-columns:1.4fr .9fr;gap:18px;margin-bottom:18px}.intro h2,.tools h2,.board-panel h2,.hud h2,.export-panel h2{margin:0 0 8px}.scope{border-left:4px solid var(--accent);padding-left:14px;color:#d7deea}.workbench{display:grid;grid-template-columns:230px 1fr 310px;gap:18px;align-items:start}.palette{display:grid;gap:8px}.brush{border:1px solid var(--line);background:#18202b;color:var(--ink);border-radius:12px;padding:10px;text-align:left;cursor:pointer}.brush[aria-pressed="true"]{outline:3px solid var(--accent);background:#2c3443}.secondary,.primary{border:0;border-radius:12px;padding:11px 14px;font-weight:800;cursor:pointer;margin-top:10px}.primary{background:var(--accent);color:#221506}.primary:disabled,.secondary:disabled{opacity:.45;cursor:not-allowed}.secondary{background:#354255;color:var(--ink);border:1px solid #4c5b72}.legend{margin-top:16px;color:var(--muted);font-size:.9rem}.chip{display:inline-block;width:15px;height:15px;border-radius:4px;margin-right:8px;vertical-align:-2px;border:1px solid rgba(255,255,255,.25)}.board-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.board-head p{color:var(--accent);font-weight:800}.grid{display:grid;grid-template-columns:repeat(10,1fr);gap:5px;touch-action:manipulation}.cell{aspect-ratio:1;border:1px solid #111823;background:#202836;border-radius:8px;color:transparent;cursor:pointer;position:relative}.cell:hover{outline:2px solid rgba(240,179,90,.6)}.cell.entry,.chip.entry{background:linear-gradient(135deg,#2e6df6,#77b7ff)}.cell.exit,.chip.exit{background:linear-gradient(135deg,#2ab875,#a0f2aa)}.cell.threat,.chip.threat{background:linear-gradient(135deg,#8d4bff,#f07dff)}.cell.cover,.chip.cover{background:linear-gradient(135deg,#66573f,#d2ad72)}.cell.block,.chip.block{background:linear-gradient(135deg,#303946,#778293)}.cell.path::after{content:"";position:absolute;inset:30%;border-radius:50%;background:#fff;box-shadow:0 0 12px #fff}.metrics{display:grid;gap:8px}.metric{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(255,255,255,.08);padding:8px 0}.metric b{color:var(--accent)}.gate{margin-top:12px;padding:12px;border-radius:14px;background:#151b24;border:1px solid var(--line);line-height:1.45}.gate.ready{border-color:var(--good);box-shadow:0 0 0 2px rgba(127,209,145,.12)}.gate.warn{border-color:var(--accent)}.gate.bad{border-color:var(--bad)}.trial-log{margin-top:12px;color:#d6deea;line-height:1.45;min-height:120px}.bypass{display:block;margin-top:12px;color:#d7deea;font-size:.9rem;line-height:1.35}.bypass input{vertical-align:-2px;margin-right:6px}.trial-log ol{padding-left:20px}.export-panel{margin-top:18px;display:grid;grid-template-columns:1fr auto;gap:14px}.export-panel textarea{grid-column:1/-1;min-height:120px;width:100%;border-radius:14px;border:1px solid var(--line);background:#111720;color:var(--ink);padding:12px;font:13px ui-monospace,SFMono-Regular,Menlo,monospace}.receipt{grid-column:1/-1;white-space:pre-wrap;background:#101620;border:1px solid var(--line);border-radius:14px;padding:14px;color:#e8edf5}.export-actions{display:flex;gap:8px;align-items:start;flex-wrap:wrap}@media(max-width:980px){.intro,.workbench,.export-panel{grid-template-columns:1fr}.grid{gap:4px}.workbench{gap:14px}}