.arena-family{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;margin:.1rem 0 1rem}
.note{color:var(--muted);font-size:.82rem}
.crumb-back{margin:.2rem 0 .8rem;font-size:.8rem}
.crumb-back a{color:var(--muted);text-decoration:none}.crumb-back a:hover{color:var(--fox)}
.arena-stage{margin:1.1rem 0}
.arena-run{font:inherit;font-weight:600;padding:.6rem 1.2rem;border:0;border-radius:8px;background:var(--fox);color:#fff;cursor:pointer;min-height:44px}
.arena-run:disabled{opacity:.5;cursor:default}
.verdicts{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem}
.vcard{border:1px solid var(--line);border-radius:10px;padding:1rem;background:var(--panel)}
.vcard h2,.vcard h3{margin:0 0 .4rem;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.vcard .big{font-size:1.4rem;font-weight:700}
.vcard .pass{color:var(--jade)}.vcard .fail{color:var(--fox)}
.vcard code{font-size:.78rem;word-break:break-all;color:var(--fox)}
.arena-log{font-family:var(--mono);font-size:.78rem;background:var(--panel-2);border:1px solid var(--line);border-radius:8px;padding:.6rem .8rem;margin-top:.6rem;white-space:pre-wrap;overflow-wrap:anywhere;min-height:1.4rem;color:var(--ink)}
#ks-captcha{margin-top:.8rem}
#ks-captcha img{vertical-align:middle;border:1px solid var(--line);border-radius:6px;background:#fff;margin-bottom:.5rem}
#ks-captcha input{font:inherit;padding:.5rem;border:1px solid var(--line-bright);border-radius:6px;min-height:44px;margin-right:.5rem;background:var(--panel);color:var(--ink)}
#ks-captcha button{font:inherit;font-weight:600;padding:.5rem 1rem;border:0;border-radius:6px;background:var(--fox);color:var(--bg);cursor:pointer;min-height:44px}
#ks-captcha .slider-track{position:relative;height:44px;max-width:100%;background:var(--panel-2);border:1px solid var(--line-bright);border-radius:8px;margin:.6rem 0;touch-action:none}
#ks-captcha .slider-gap{position:absolute;top:5px;height:34px;width:42px;border:2px dashed var(--muted);border-radius:6px;box-sizing:border-box}
#ks-captcha .slider-handle{position:absolute;top:3px;height:38px;width:42px;background:var(--fox);border-radius:6px;cursor:grab;box-sizing:border-box;touch-action:none}
#ks-captcha .tiles{display:grid;grid-template-columns:repeat(3,64px);gap:6px;margin:.6rem 0}
#ks-captcha .tiles img{width:64px;height:64px;border:2px solid var(--line);border-radius:6px;cursor:pointer;background:#fff}
#ks-captcha .tiles img.sel{border-color:var(--fox);box-shadow:0 0 0 2px var(--fox)}
#ks-captcha .rot img{width:96px;height:96px;transition:transform .1s;touch-action:none}
.arena-levels{display:inline-flex;border:1px solid var(--line-bright);border-radius:8px;overflow:hidden;margin:.2rem 0 .4rem}
.arena-levels button{font:inherit;font-size:.78rem;padding:.4rem .9rem;border:0;border-right:1px solid var(--line-bright);background:var(--panel);color:var(--muted);cursor:pointer;min-height:40px}
.arena-levels button:last-child{border-right:0}
.arena-levels button[aria-pressed=true]{background:var(--fox);color:var(--bg);font-weight:600}
.arena-levels-wrap{margin:.2rem 0 .8rem}
.ks-checkbox{display:inline-flex;align-items:center;gap:.8rem;border:1px solid var(--line-bright);background:var(--panel);border-radius:6px;padding:.7rem 1rem;cursor:pointer;min-width:300px;user-select:none}
.ks-checkbox:hover{border-color:var(--muted)}
.ks-cb-box{position:relative;width:26px;height:26px;border:2px solid var(--line-bright);border-radius:4px;background:var(--bg);flex:none}
.ks-cb-mark{position:absolute;inset:0;display:none;align-items:center;justify-content:center;color:var(--jade);font-weight:700;font-size:18px;line-height:1}
.ks-cb-spin{position:absolute;inset:3px;display:none;border:2px solid var(--line-bright);border-top-color:var(--fox);border-radius:50%;animation:ks-spin .7s linear infinite}
.ks-checkbox.checking{cursor:default}
.ks-checkbox.checking .ks-cb-spin{display:block}
.ks-checkbox.ok .ks-cb-mark{display:flex}
.ks-checkbox.ok .ks-cb-box{border-color:var(--jade)}
.ks-checkbox.fail .ks-cb-box{border-color:var(--fox)}
.ks-cb-label{font-size:.95rem;color:var(--ink)}
.ks-cb-brand{margin-left:auto;font-size:.58rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
@keyframes ks-spin{to{transform:rotate(360deg)}}
.arena-again-wrap{margin:.7rem 0 0}
.arena-again{font-size:.78rem;color:var(--muted);text-decoration:none}
.arena-again:hover{color:var(--fox)}
.arena-endpoints{list-style:none;padding:0;margin:.5rem 0 0;display:flex;flex-direction:column;gap:.3rem}
.arena-endpoints li code{color:var(--fox);font-size:.82rem}
.arena-endpoints .m{display:inline-block;min-width:3rem;color:var(--muted)}
@media (max-width:640px){.verdicts{grid-template-columns:1fr}}
/* --- redesign 2a: arena index hero + category chips + category-accented gate grid --- */
.arena-hero{position:relative;margin:.4rem 0 1.4rem}
.arena-hero::before{content:"";position:absolute;top:-3rem;right:-2rem;width:26rem;height:26rem;pointer-events:none;background:radial-gradient(circle,var(--fox),transparent 62%);opacity:.12;z-index:0}
.arena-hero>*{position:relative;z-index:1}
.arena-hero .eyebrow{font-size:.68rem;text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin:.2rem 0 .5rem}
.arena-hero .arena-h1{font-size:2.35rem;line-height:1.08;margin:.1rem 0 .8rem}
.arena-hero .arena-h1 .fox{color:var(--fox)}
.arena-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:.2rem 0 1.2rem}
.arena-chips .chip{font:inherit;font-size:.74rem;letter-spacing:.04em;padding:.35rem .8rem;border:1px solid var(--line-bright);background:var(--panel);color:var(--muted);border-radius:999px;cursor:pointer;min-height:36px}
.arena-chips .chip:hover{color:var(--ink)}
.arena-chips .chip.active{background:var(--fox);border-color:var(--fox);color:var(--bg);font-weight:600}
.gate-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin:.2rem 0 1.6rem}
.gate-card{display:block;background:var(--panel);padding:.8rem .9rem;text-decoration:none;color:inherit;border-top:2px solid var(--cat,var(--line-bright));min-width:0}
.gate-card:hover{background:var(--panel-2)}
.gate-card .gc-top{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}
.gate-card .gc-label{font-family:"Space Grotesk",var(--mono);font-weight:600;color:var(--ink);overflow-wrap:anywhere}
.gate-card:hover .gc-label{color:var(--fox)}
.gate-card .gc-tag{font-size:.6rem;text-transform:uppercase;letter-spacing:.08em;color:var(--cat,var(--muted));border:1px solid var(--cat,var(--line-bright));border-radius:999px;padding:.05rem .4rem;white-space:nowrap;flex:none}
.gate-card .gc-fam{color:var(--muted);font-size:.74rem;margin-top:.35rem;overflow-wrap:anywhere}
.gate-card .gc-beat{color:var(--muted);font-size:.7rem;margin-top:.55rem}
.gate-card .gc-beat b{color:var(--ink);font-weight:600}
@media (max-width:900px){.gate-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.gate-grid{grid-template-columns:1fr}.arena-hero .arena-h1{font-size:1.7rem}.arena-hero::before{width:16rem;height:16rem}}
@media (prefers-reduced-motion:reduce){.arena-hero::before{opacity:.08}}
/* --- redesign 2b: dual-verdict gate page (equal heroes + client simulator) --- */
.gate-body{display:grid;grid-template-columns:1fr 1.15fr;gap:0;border-top:1px solid var(--line);margin-top:.2rem}
.gate-left{padding:1.4rem 1.4rem 1.4rem 0;border-right:1px solid var(--line);min-width:0}
.gate-right{padding:1.4rem 0 1.4rem 1.6rem;display:flex;flex-direction:column;min-width:0}
.gl-eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.2em;color:var(--muted);margin-bottom:.8rem}
.dual-head .vh{font-family:"Space Grotesk",var(--mono);font-size:1.35rem;font-weight:600;margin-bottom:.3rem;color:var(--ink);line-height:1.2}
.dual-head .vline{font-size:.82rem;line-height:1.6;color:var(--muted);margin:0 0 1.1rem;max-width:36rem}
.dual{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.dual .vcard{border:1.5px solid var(--line);border-radius:10px;padding:1.1rem;background:var(--panel-2);position:relative;overflow:hidden;transition:border-color .2s}
.dual .vcard h2,.dual .vcard h3{margin:0 0 .5rem;font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.dual .vcard .big{font-family:"Space Grotesk",var(--mono);font-size:2rem;font-weight:700;line-height:1;letter-spacing:-.01em;color:var(--ink)}
.dual .vcard .big.pass{color:var(--jade)}.dual .vcard .big.fail{color:var(--fox)}.dual .vcard .big.evades{color:var(--amber)}.dual .vcard .big.unknown{color:var(--muted)}
.dual .vcard .gloss{font-size:.72rem;color:var(--muted);margin:.6rem 0 0}
.dual .vcard code{font-size:.72rem;word-break:break-all;color:var(--fox)}
.dual .vcard:has(.big.pass){border-color:var(--jade)}
.dual .vcard:has(.big.fail){border-color:var(--fox)}
.dual .vcard:has(.big.evades){border-color:var(--amber)}
.dual .vcard.det{box-shadow:0 0 26px -8px rgba(232,72,43,.28)}
.dual .vcard.det .vscan{position:absolute;top:0;left:0;right:0;height:2px;background:currentColor;opacity:.45;color:var(--fox);animation:ksScan 2.8s linear infinite}
.dual .vcard.det:has(.big.pass) .vscan{color:var(--jade)}
.dual .vcard.det:has(.big.evades) .vscan{color:var(--amber)}
@keyframes ksScan{0%{transform:translateY(-3px)}100%{transform:translateY(260px)}}
.arena-foot{margin-top:1.3rem;font-size:.78rem}
.gate-right .arena-endpoints{margin-top:1.1rem}
@media (max-width:760px){.gate-body{grid-template-columns:1fr}.gate-left{border-right:0;border-bottom:1px solid var(--line);padding:1.2rem 0}.gate-right{padding:1.2rem 0}.dual{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.dual .vcard.det .vscan{display:none}.dual .vcard.det{box-shadow:none}}
