:root{--black:#030712;--ink:#080e1a;--muted:#1e293b;--soft:#94a3b8;--dim:#64748b;--white:#f8fafc;--blue:#3b82f6;--coral:#f87171;--ok:#22c55e;--pause:#f59e0b;--mono:'Space Mono',monospace;--sans:'Manrope',sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--black);color:var(--white);font-family:var(--sans);font-size:16px;line-height:1.55}
.page{max-width:920px;margin:0 auto;padding:0 1.25rem 3rem}
.site-nav{border-bottom:1px solid var(--muted);padding:18px 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}
.site-nav-brand{font-size:20px;font-weight:700;letter-spacing:-0.04em;color:#e2e8f0;text-decoration:none}
.site-nav-brand span{color:var(--blue)}
.site-nav-links{display:flex;flex-wrap:wrap;gap:0.75rem 1rem;font-size:0.88rem}
.site-nav-links a{color:var(--soft);text-decoration:none}
.hero{padding:2rem 0 1rem}
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:0.08em;color:var(--coral);margin-bottom:0.65rem}
h1{font-size:clamp(1.75rem,4.2vw,2.35rem);font-weight:800;letter-spacing:-0.03em;line-height:1.15;margin-bottom:0.65rem}
.lede{color:var(--soft);font-size:1.02rem;max-width:42rem}
.panel{margin-top:1.25rem;background:var(--ink);border:1px solid var(--muted);border-radius:10px;padding:1.2rem}
.panel h2{font-size:1.05rem;font-weight:700;margin-bottom:0.35rem}
.panel-intro{color:var(--soft);font-size:0.92rem;margin-bottom:1rem}
.scenario-grid{display:grid;grid-template-columns:1fr;gap:0.75rem}
@media(min-width:720px){.scenario-grid{grid-template-columns:repeat(3,1fr)}}
.scenario-card{border:1px solid var(--muted);border-radius:8px;padding:1rem;background:rgba(3,7,18,0.45);cursor:pointer;text-align:left;color:inherit;font:inherit;width:100%}
.scenario-card:hover,.scenario-card:focus{border-color:#3b82f6;outline:none}
.scenario-card[aria-pressed="true"]{border-color:#0891b2;background:rgba(8,145,178,0.08)}
.scenario-card__tag{font-family:var(--mono);font-size:10px;color:var(--dim);letter-spacing:0.06em;margin-bottom:0.35rem}
.scenario-card__title{font-weight:700;font-size:0.95rem;margin-bottom:0.35rem}
.scenario-card__meta{font-size:0.82rem;color:var(--soft);line-height:1.45}
.btn{appearance:none;border:none;cursor:pointer;font-size:12px;font-weight:700;letter-spacing:0.03em;padding:12px 18px;border-radius:6px;font-family:var(--sans)}
.btn:disabled{opacity:0.55;cursor:wait}
.btn-primary{background:#0891b2;color:#fff;border:1px solid #0891b2;margin-top:1rem}
.actions{margin-top:0.5rem}
.err{color:#fca5a5;font-size:0.9rem;margin-top:0.75rem;display:none}
.result{display:none;margin-top:1.35rem}
.cw-banner{margin:0 0 1rem;padding:1rem 1.05rem;border-radius:8px;border:1px solid var(--muted)}
.cw-tone-allow{background:rgba(34,197,94,0.08);border-color:rgba(34,197,94,0.35)}
.cw-tone-pause{background:rgba(245,158,11,0.08);border-color:rgba(245,158,11,0.35)}
.cw-tone-block{background:rgba(248,113,113,0.08);border-color:rgba(248,113,113,0.35)}
.cw-banner__headline{font-size:1.35rem;font-weight:800;letter-spacing:0.04em;margin-bottom:0.35rem}
.cw-tone-allow .cw-banner__headline{color:var(--ok)}
.cw-tone-pause .cw-banner__headline{color:var(--pause)}
.cw-tone-block .cw-banner__headline{color:var(--coral)}
.cw-banner__sub{font-size:0.92rem;color:#e2e8f0}
.cw-section-title{font-size:0.82rem;font-weight:600;color:var(--soft);margin:1.1rem 0 0.55rem;text-transform:uppercase;letter-spacing:0.04em}
.cw-why{border:1px solid var(--muted);border-radius:8px;padding:0.85rem 1rem;background:rgba(3,7,18,0.45)}
.cw-why dl{display:grid;grid-template-columns:auto 1fr;gap:0.25rem 1rem;font-size:0.9rem}
.cw-why dt{color:var(--dim)}
.cw-why dd{color:#cbd5e1;margin:0;word-break:break-word}
.cw-controls{border:1px solid var(--muted);border-radius:8px;overflow:hidden}
.cw-controls__head,.cw-controls__row{display:grid;grid-template-columns:1.2fr 0.7fr;gap:0.5rem;padding:0.55rem 0.75rem;align-items:start}
.cw-controls__head{font-size:0.72rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--dim);background:rgba(15,23,42,0.6)}
.cw-controls__row{border-top:1px solid var(--muted);font-size:0.88rem}
.cw-status-pass{color:var(--ok)}
.cw-status-attn{color:var(--pause)}
.cw-status-block{color:var(--coral)}
.cw-framework{font-size:0.82rem;color:var(--dim);margin-top:0.75rem}
details.cw-expand{margin-top:0.75rem;border:1px solid var(--muted);border-radius:8px;padding:0.65rem 0.85rem;background:rgba(3,7,18,0.35)}
details.cw-expand summary{cursor:pointer;font-weight:600;color:#93c5fd;font-size:0.88rem}
.cw-expand__body{margin-top:0.65rem;font-size:0.85rem;color:var(--soft)}
.cw-expand__body pre{background:#030712;border:1px solid var(--muted);border-radius:6px;padding:0.75rem;overflow:auto;font-family:var(--mono);font-size:0.75rem;line-height:1.45;max-height:320px}
.secondary{margin-top:1rem;display:flex;flex-wrap:wrap;gap:0.5rem}
.secondary .btn{background:transparent;border:1px solid var(--muted);color:var(--soft);font-size:11px;padding:8px 12px}
.footer-note{margin-top:2rem;font-size:0.82rem;color:var(--dim);max-width:40rem;line-height:1.55}
