:root{--bg:#0f1115;--panel:#171a21;--ink:#e7e9ee;--mut:#9aa3b2;--acc:#4f8cff;--warn:#e0a33e;--ok:#3fb27f;--bord:#262b35}
*{box-sizing:border-box}
body{margin:0;font:15px/1.5 -apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink)}
.topbar{display:flex;align-items:baseline;flex-wrap:wrap;gap:.5rem .75rem;padding:.8rem 1.2rem;background:var(--panel);border-bottom:1px solid var(--bord)}
.brand{font-weight:700;color:var(--ink);text-decoration:none;font-size:1.1rem}
.sub{color:var(--mut)}
.nav-admin{margin-left:auto;color:var(--ink);text-decoration:none;font-size:.9rem;border:1px solid var(--bord);border-radius:6px;padding:.25rem .6rem}
.nav-admin:hover{background:var(--bg)}
.back{color:var(--mut);text-decoration:none}.back:hover{color:var(--ink)}
.wrap{max-width:880px;margin:1.5rem auto;padding:0 1rem}
h1{font-size:1.4rem}
.card{background:var(--panel);border:1px solid var(--bord);border-radius:10px;padding:1rem;margin:.6rem 0}
.muted{color:var(--mut)}.error{color:var(--warn)}.ok{color:var(--ok)}
a{color:var(--acc)}
label{display:block;margin:.4rem 0}
input,textarea,select{width:100%;padding:.5rem;font-size:16px;background:#0d0f14;border:1px solid var(--bord);border-radius:7px;color:var(--ink)}
button{padding:.55rem 1rem;font-size:16px;background:var(--acc);color:#fff;border:0;border-radius:7px;cursor:pointer;margin:.4rem .4rem 0 0}
.inline{display:inline}
.domain-list{list-style:none;padding:0;margin:0}
.domain-list.grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.domain-list li{margin:0}
#qa{margin-top:1rem}
#activeslot .turn.active{border-left:3px solid var(--acc);background:var(--panel);border-radius:10px;padding:.8rem 1rem;position:sticky;top:.5rem;z-index:2}
#history{margin-top:1rem}
#history .turn{border-left:3px solid var(--bord);padding:.4rem .8rem;margin:.5rem 0}
.htmx-indicator{display:none}
.htmx-request.htmx-indicator,.htmx-request .htmx-indicator{display:block}
#pending{margin-top:.6rem;color:var(--acc);font-weight:600}
button:disabled{opacity:.5;cursor:wait}
.cov{display:block;color:var(--mut);font-size:.85rem;margin-top:.3rem}
.cov.thin{color:var(--warn)}
.thread .turn{border-left:3px solid var(--bord);padding:.4rem .8rem;margin:.5rem 0}
.turn .q{font-weight:600}.turn .a{color:var(--mut)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.6rem}
.grid .card small{display:block;color:var(--mut);margin-top:.3rem}
.contradiction{display:grid;gap:.6rem}
table{width:100%;border-collapse:collapse}th,td{padding:.4rem;border-bottom:1px solid var(--bord);text-align:left}
.inactive{opacity:.5}.archived{opacity:.5}
article.di.contradicted{border-left:3px solid var(--warn);padding-left:.6rem}
article.di.forbidden{border-left:3px solid var(--warn);background:#2a1416}
.prio{font-size:.7rem;font-weight:700;padding:.1rem .4rem;border-radius:5px;vertical-align:middle;color:#0d0f14}
.prio-must{background:#3fb27f}.prio-should{background:#4f8cff;color:#fff}
.prio-could{background:#e0a33e}.prio-wont{background:#6b7280;color:#fff}
.prio-backlog{background:#9aa3b2}.prio-forbidden{background:#e05a5a;color:#fff}
.prio-unset{background:#262b35;color:var(--mut)}
.prio-form{margin:.3rem 0 0}.prio-form select{width:auto;display:inline-block}
.table-wrap{overflow-x:auto}
@media (max-width:600px){
  .wrap{margin:1rem auto;padding:0 .8rem}
  .topbar{padding:.7rem .9rem}
  .nav-admin{margin-left:auto}
  h1{font-size:1.25rem}
  .card{padding:.8rem}
  .grid{grid-template-columns:1fr}
  table{display:block;overflow-x:auto;white-space:nowrap}
  #g{height:60vh!important}
}
