:root{--bg:#fbfbfa;--bg2:#f2f2ef;--fg:#16181d;--mute:#5b616e;--line:#e2e2dc;--acc:#0e7c66;--acc2:#0a5c4c;--bad:#b4232c;--term:#0f1115;--termfg:#d6dae2;--card:#fff;
--sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace}
@media (prefers-color-scheme:dark){:root{--bg:#0c0d10;--bg2:#121419;--fg:#e8eaee;--mute:#9aa1ad;--line:#23262e;--acc:#3fd0a8;--acc2:#7ee2c6;--bad:#ff6b6b;--term:#07080a;--card:#14161b}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:17px/1.6 var(--sans);text-rendering:optimizeLegibility}
a{color:var(--acc)}a:hover{color:var(--acc2)}
code,pre{font-family:var(--mono);font-size:.88em}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.nav{position:sticky;top:0;z-index:5;background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:60px}
.brand{display:flex;gap:10px;align-items:center;font-weight:650;letter-spacing:-.01em;color:var(--fg);text-decoration:none;font-size:18px}
.nav nav a{color:var(--mute);text-decoration:none;margin-left:22px;font-size:15px}.nav nav a:hover{color:var(--fg)}
@media(max-width:700px){.nav nav a:not(.cta){display:none}}
.btn{display:inline-block;padding:11px 18px;border-radius:8px;font-weight:600;text-decoration:none;font-size:15px;border:1px solid var(--line);color:var(--fg)}
.btn.primary{background:var(--fg);color:var(--bg);border-color:var(--fg)}.btn.primary:hover{color:var(--bg);opacity:.9}
.nav .cta{color:var(--fg)!important;border:1px solid var(--line);padding:6px 12px;border-radius:7px}
section{padding:96px 0;border-bottom:1px solid var(--line)}
.eyebrow{font:600 12px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--acc);margin:0 0 16px}
h1{font-size:clamp(38px,5.6vw,64px);line-height:1.04;letter-spacing:-.035em;margin:0 0 22px;font-weight:700}
h2{font-size:clamp(28px,3.4vw,40px);line-height:1.12;letter-spacing:-.025em;margin:0 0 18px;font-weight:680}
h3{font-size:19px;margin:0 0 8px;letter-spacing:-.01em}
.hero h1{font-size:clamp(34px,4.2vw,52px)}
.lede{font-size:clamp(18px,1.6vw,21px);color:var(--mute);max-width:40em;margin:0 0 30px}
.hero{padding:80px 0 88px}
.actions{display:flex;gap:12px;flex-wrap:wrap}
.two{display:grid;grid-template-columns:1fr 1fr;gap:56px}@media(max-width:860px){.two{grid-template-columns:1fr;gap:28px}}
.muted{color:var(--mute)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}@media(max-width:860px){.cards{grid-template-columns:1fr}}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:24px}
.card p{margin:0;color:var(--mute);font-size:15.5px}
.compare{display:grid;gap:12px}
.row{display:flex;justify-content:space-between;gap:12px;border:1px solid var(--line);background:var(--card);border-radius:10px;padding:14px 16px;font:14px var(--mono)}
.tag{font-weight:700}.tag.ok{color:var(--acc)}.tag.bad{color:var(--bad)}
.flow{width:100%;height:auto;margin-top:36px;color:var(--fg)}
.flow .box{fill:var(--card);stroke:var(--line)}.flow .t{fill:var(--fg);font:600 18px var(--sans)}.flow .s{fill:var(--mute);font:14px var(--sans)}.flow .n{fill:var(--acc);font:600 12px var(--mono);letter-spacing:.1em}.flow .ar{stroke:var(--acc);stroke-width:2;fill:none}
.flow-m{display:none}@media(max-width:760px){.flow{display:none}.flow-m{display:grid}}
.gate{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:36px}@media(max-width:900px){.gate{grid-template-columns:1fr 1fr}}@media(max-width:480px){.gate{grid-template-columns:1fr}}
.gate .card b{display:block;font:700 13px var(--mono);letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px}
.g-send b{color:var(--acc)}.g-hold b{color:#c08a12}.g-esc b{color:#3b7bd8}.g-ref b{color:var(--bad)}
.badge{display:inline-block;font:600 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;padding:6px 9px;border-radius:5px;border:1px dashed var(--mute);color:var(--mute);margin-bottom:16px}
.story{margin-top:28px;border:1px solid var(--line);border-radius:12px;background:var(--bg2);padding:24px;font-size:15.5px}
.story ol{margin:8px 0 0;padding-left:20px}.story li{margin:6px 0}
.fine{font-size:14px;color:var(--mute)}
.std{display:flex;gap:18px;flex-wrap:wrap;margin-top:28px}.std a.card{text-decoration:none;color:var(--fg);flex:1 1 240px}.std a.card:hover{border-color:var(--acc)}
.contact{text-align:left}.contact h2{max-width:20em}
footer{padding:36px 0;color:var(--mute);font-size:14px}footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}footer a{color:var(--mute)}
/* spec page */
.spec{max-width:820px;padding:64px 24px 96px}.spec h1{font-size:clamp(32px,4vw,46px)}.spec h2{font-size:24px;margin-top:48px}
.spec pre{background:var(--term);color:var(--termfg);padding:18px;border-radius:10px;overflow:auto;font-size:13px}
.spec p code,.spec li code,.spec td code{background:var(--bg2);border:1px solid var(--line);padding:1px 5px;border-radius:4px}
.spec table{width:100%;border-collapse:collapse;font-size:15px;margin:16px 0}.spec th,.spec td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--line)}.spec th{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--mute)}
.spec td:first-child{white-space:nowrap}
@media(max-width:600px){.spec table,.spec tbody,.spec tr,.spec td{display:block}.spec thead{display:none}.spec td{border:0;padding:4px 0}.spec tr{border-bottom:1px solid var(--line);padding:10px 0}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}
.two .std{flex-direction:column;margin-top:0}.two .std a.card{flex:none}

.plain-email{margin-top:.75rem;opacity:.8;user-select:all}
.plain-email .copy{user-select:all;font-family:ui-monospace,monospace}

.cdlg{border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--fg);padding:28px;width:min(520px,92vw)}
.cdlg::backdrop{background:rgba(0,0,0,.45)}.cdlg h3{margin:0 0 16px}
.cdlg label{display:block;font-size:14px;color:var(--mute);margin-bottom:12px}
.cdlg input,.cdlg textarea{display:block;width:100%;box-sizing:border-box;margin-top:4px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--fg);font:15px var(--sans)}
.cact{display:flex;gap:10px;margin:14px 0}.cdlg button{cursor:pointer}.hp{position:absolute;left:-9999px}
.cstatus{min-height:1.4em;font-size:14px;margin:8px 0 0}.cstatus.ok{color:var(--acc)}.cstatus.err{color:var(--bad)}
.copy-btn{padding:4px 10px;font-size:13px;background:none;cursor:pointer}

/* verdicts + auditors (v3) */
.vlist{margin:0 0 18px;padding-left:20px;color:var(--mute);font-size:15.5px}.vlist li{margin:6px 0}
.xt{width:100%;border-collapse:collapse;font-size:14.5px;margin:0 0 14px;background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.xt th,.xt td{text-align:left;vertical-align:top;padding:9px 12px;border-bottom:1px solid var(--line)}.xt th{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--mute)}
.xt td:first-child{font-family:var(--mono);white-space:nowrap}.xt code{overflow-wrap:anywhere}.xt tr:last-child td{border-bottom:0}
.hash{font-family:var(--mono);font-size:12.5px;overflow-wrap:anywhere}
.cmd{background:var(--term);color:var(--termfg);padding:16px 18px;border-radius:10px;overflow:auto;font-size:13px;margin:0 0 14px}
.hashes{margin-top:28px}.hashes .hash{white-space:nowrap}@media(max-width:900px){.hashes .hash{white-space:normal}}
.two>div{min-width:0}
