:root{--bg:#0f1216;--card:#171b21;--line:#262c35;--tx:#e7e9ec;--mu:#8b94a1;--ok:#1f9d63;--bad:#c2413b;--warn:#c98a1b;--ac:#3b82f6}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--tx);font:15px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}
main{max-width:1180px;margin:auto;padding:16px}.muted{color:var(--mu)}h1{margin:0 0 4px}h3{margin:14px 0 8px;font-size:15px}
.top{display:flex;gap:12px;align-items:center;padding:6px 0 12px}.top span{flex:1}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px;margin-bottom:14px}
.narrow{max-width:380px;margin:12vh auto}.login{padding:16px}
label{display:block;font-weight:600;margin:10px 0 4px}label textarea,label input{margin-top:4px}
input,textarea,select{width:100%;background:#0f1216;color:var(--tx);border:1px solid var(--line);border-radius:8px;padding:9px;font:inherit}
.btn{background:#222831;color:var(--tx);border:1px solid var(--line);border-radius:8px;padding:9px 14px;cursor:pointer;text-decoration:none;display:inline-block;font:inherit}
.btn.primary{background:var(--ac);border-color:var(--ac);color:#fff}.btn.ghost{background:none}.block{display:block;text-align:center;margin:12px 0}
form{display:grid;gap:8px;margin-top:8px}.row{display:flex;gap:8px;align-items:center}.row h3{flex:1}.row input{max-width:340px}
.verdict{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;border-radius:12px;padding:18px 20px;margin-bottom:14px;border:1px solid var(--line);background:var(--card)}
.verdict.pass{background:#0f2a1d;border-color:var(--ok)}.verdict.fail{background:#2c1413;border-color:var(--bad)}
.vtitle{font-size:28px;font-weight:800;letter-spacing:.02em}.meters{display:flex;gap:18px}.meters div{text-align:center}.meters b{display:block;font-size:22px}.meters span{font-size:12px;color:var(--mu)}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:860px){.grid{grid-template-columns:1fr}}
.drop{border:2px dashed var(--line);border-radius:10px;padding:22px;text-align:center;color:var(--mu);cursor:pointer}.drop.on{border-color:var(--ac);color:var(--tx)}
.paste{display:flex;gap:8px;margin-top:8px}.proofs{list-style:none;padding:0;margin:10px 0}
.proofs li,.items li{display:flex;justify-content:space-between;gap:8px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;margin-bottom:6px}
.proofs li button,.items li button{background:none;border:0;color:var(--mu);cursor:pointer}
.issues{list-style:none;padding:0}.issues li{padding:7px 10px;border-left:3px solid var(--mu);background:#12161b;margin-bottom:6px;border-radius:4px}
.issues .critical{border-color:var(--bad)}.issues .major{border-color:var(--warn)}.issues .minor{border-color:var(--ac)}
.evidence{list-style:none;padding:0;font-size:13px}.evidence li{padding:6px 0;border-bottom:1px solid var(--line)}
.items{list-style:none;padding:0}.tag{font-size:12px;padding:2px 8px;border-radius:99px;background:#222831}.tag.pass{background:var(--ok)}.tag.fail{background:var(--bad)}
.msg{color:var(--warn)}footer{font-size:12px;text-align:center;padding:10px}
.tabs{display:flex;gap:4px;margin-bottom:12px;border-bottom:1px solid var(--line)}.tabs button{background:none;border:0;color:var(--mu);padding:9px 14px;cursor:pointer;font:inherit;border-bottom:2px solid transparent}.tabs button.on{color:var(--tx);border-color:var(--ac)}
.chat{display:grid;grid-template-columns:240px 1fr;gap:14px}@media(max-width:860px){.chat{grid-template-columns:1fr}}
.chans{list-style:none;padding:0;margin:0 0 8px}.chans li{padding:6px 8px;border-radius:6px;cursor:pointer}.chans li.on{background:#222831}
.msgs{height:52vh;overflow:auto;border:1px solid var(--line);border-radius:8px;padding:8px;margin-bottom:8px}.m{padding:6px 4px;border-bottom:1px solid #1d222a}.m .a{font-weight:600}.m.agent .a{color:#7fb0ff}.m.decision .a{color:#e0b44c}.m .r{margin-left:22px;border-left:2px solid var(--line);padding-left:8px}.m button{background:none;border:0;color:var(--mu);cursor:pointer;font-size:12px}
.op{display:flex;gap:10px;padding:8px;border:1px solid var(--line);border-radius:8px;margin-bottom:6px}.op b{min-width:160px}.yes{color:#4ade80}.no{color:#f87171}
.bar{height:6px;background:#222831;border-radius:3px;margin-top:3px}.bar i{display:block;height:6px;background:var(--ac);border-radius:3px}
