:root{
  color-scheme: dark;
  --canvas:#0B0B09; --raise:#131310; --edge:#26251F; --ink:#F2EFE9; --mute:#8E8B80;
  --gold:#C9A84C; --bad:#C4634F; --warn:#D89A3C; --good:#6FA36B;
  --sans:"Instrument Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"Space Mono",ui-monospace,"SF Mono",Menlo,monospace;
  --r:2px;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.55}
a{color:var(--gold)}
button,input,select,textarea{font:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

.wrap{max-width:1180px;margin:0 auto;padding:22px 18px 80px}
header.bar{display:flex;flex-wrap:wrap;gap:12px;align-items:baseline;justify-content:space-between;border-bottom:1px solid var(--edge);padding-bottom:14px;margin-bottom:22px}
.brand{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--mute)}
.brand b{color:var(--ink);font-weight:700}
.state{font-family:var(--mono);font-size:11.5px;color:var(--mute);display:flex;gap:14px;flex-wrap:wrap}
.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--mute);margin-right:6px;vertical-align:1px}
.dot.on{background:var(--good)} .dot.off{background:var(--bad)} .dot.warn{background:var(--warn)}

.tiles{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:26px}
.tile{border:1px solid var(--edge);border-radius:var(--r);background:var(--raise);padding:14px 16px}
.tile .cap{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);display:block}
.tile .n{font-family:var(--mono);font-size:26px;font-variant-numeric:tabular-nums;display:block;margin-top:4px}
.tile.gold .n{color:var(--gold)}
.tile .sub{font-size:12px;color:var(--mute)}

h2{font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);border-bottom:1px solid var(--edge);padding-bottom:9px;margin:34px 0 14px}

.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
button{background:var(--raise);color:var(--ink);border:1px solid var(--edge);border-radius:var(--r);padding:8px 13px;cursor:pointer;font-size:13.5px}
button:hover{border-color:var(--gold)}
button.primary{border-color:var(--gold);color:var(--gold)}
button.danger:hover{border-color:var(--bad);color:var(--bad)}
button[disabled]{opacity:.45;cursor:not-allowed}
input[type=text],input[type=password],input[type=number],select,textarea{background:var(--canvas);border:1px solid var(--edge);border-radius:var(--r);color:var(--ink);padding:8px 10px}
textarea{width:100%;min-height:150px;font-family:var(--mono);font-size:12.5px;line-height:1.5}

.cards{display:grid;gap:12px}
.card{border:1px solid var(--edge);border-radius:var(--r);background:var(--raise);padding:15px 16px}
.card.hot{border-left:2px solid var(--gold)}
.card h3{margin:0 0 3px;font-size:16px;font-weight:600}
.meta{font-family:var(--mono);font-size:11.5px;color:var(--mute);display:flex;gap:12px;flex-wrap:wrap;margin-bottom:9px}
.quote{border-left:2px solid var(--edge);padding:6px 0 6px 12px;margin:10px 0;color:var(--ink);font-size:14px;white-space:pre-wrap;max-height:180px;overflow:auto}
.pill{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--edge);border-radius:var(--r);padding:2px 7px;color:var(--mute);white-space:nowrap}
.pill.stage-talking,.pill.stage-replied{border-color:var(--gold);color:var(--gold)}
.pill.stage-paid,.pill.stage-care,.pill.stage-delivered{border-color:var(--good);color:var(--good)}
.pill.stage-lost,.pill.stage-opted-out,.pill.stage-bounced{border-color:var(--bad);color:var(--bad)}

.tablewrap{overflow-x:auto;border:1px solid var(--edge);border-radius:var(--r)}
table{border-collapse:collapse;width:100%;font-size:13.5px;min-width:700px}
th,td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--edge);vertical-align:top}
th{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);font-weight:400}
tr:last-child td{border-bottom:none}
td.n{font-family:var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap}

.log{font-family:var(--mono);font-size:11.5px;color:var(--mute);max-height:260px;overflow:auto;border:1px solid var(--edge);border-radius:var(--r);padding:12px}
.log div{margin-bottom:3px}
.log b{color:var(--ink);font-weight:400}

dialog{background:var(--raise);color:var(--ink);border:1px solid var(--edge);border-radius:var(--r);max-width:760px;width:92vw;padding:20px}
dialog::backdrop{background:rgba(0,0,0,.72)}
.center{max-width:380px;margin:14vh auto;padding:0 18px}
.err{color:var(--bad);font-size:13px;min-height:20px}
.muted{color:var(--mute)}
.right{margin-left:auto}
@media(max-width:560px){ .state{font-size:11.5px;gap:9px} .wrap{padding:16px 14px 70px} }
