:root{--bg:#0e1116;--card:#171c24;--line:#2a3140;--tx:#e8ecf2;--dim:#8b95a7;
--red:#ff5d5d;--amber:#ffb454;--green:#4cc38a;--blue:#5aa9ff}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--tx);
font:15px/1.45 -apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
padding:12px;max-width:520px;margin:0 auto}
header h1{font-size:19px} header .sub{color:var(--dim);font-size:12px;margin-top:2px}
#busy{color:var(--amber);font-size:12px;min-height:16px;padding:4px 0}
#drop{border:1.5px dashed var(--line);border-radius:10px;padding:10px;text-align:center;
color:var(--dim);font-size:12px;margin:8px 0}
#drop.on{border-color:var(--blue);color:var(--blue)}
section{background:var(--card);border:1px solid var(--line);border-radius:12px;
padding:12px;margin-bottom:12px}
h2{font-size:15px;display:flex;align-items:center;gap:8px}
h2 .n{background:var(--red);color:#fff;border-radius:99px;font-size:11px;padding:1px 8px}
h3{font-size:12px;color:var(--dim);text-transform:uppercase;letter-spacing:.06em;margin:10px 0 4px}
.assump{font-size:11.5px;color:var(--amber);background:#20242c;border-radius:8px;
padding:6px 8px;margin:8px 0}
.kv{font-size:13px;color:var(--dim);margin:6px 0}
.row{display:flex;justify-content:space-between;gap:10px;padding:8px 0;
border-bottom:1px solid var(--line);font-size:13.5px}
.row:last-of-type{border-bottom:0}
.row .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.dim{color:var(--dim);font-size:12px}
.red{color:var(--red)} .warn{color:var(--amber)}
.chip{display:inline-block;border-radius:6px;font-size:10px;font-weight:700;
padding:1px 6px;vertical-align:middle;margin-left:6px}
.chip.red{background:#3a1518;color:var(--red)}
.chip.billable{background:#132a3d;color:var(--blue)}
.chip.cover{background:#3a1518;color:var(--red)}
.chip.rebalance{background:#332b13;color:var(--amber)}
.chip.roster{background:#12301f;color:var(--green)}
.chip.repeat,.chip.watch{background:#22262e;color:var(--dim)}
.act{align-items:flex-start}
.split .bar{display:flex;height:14px;border-radius:7px;overflow:hidden;background:#22262e;margin:8px 0 4px}
.split .bar .l{background:var(--blue)} .split .bar .r{background:var(--red)}
.leg{font-size:12px;color:var(--dim)}
.dot{display:inline-block;width:9px;height:9px;border-radius:2px;margin:0 4px 0 10px}
.dot.l{background:var(--blue)} .dot.r{background:var(--red)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:8px 0}
.grid div{background:#11151b;border-radius:8px;padding:8px;text-align:center}
.grid b{font-size:17px;display:block}
.grid span{font-size:10.5px;color:var(--dim)}
footer{color:var(--dim);font-size:11px;padding:6px 2px 20px}
@media (max-width:400px){ body{padding:8px} .grid{grid-template-columns:repeat(2,1fr)} }
