:root{--bg:#0b1220;--panel:#111a2c;--panel-2:#16213a;--border:#223052;--text:#e6ecff;--muted:#93a0c0;--brand:#5b8cff;--ok:#34c78a;--warn:#e2b93b;--danger:#ef5b5b;font-family:-apple-system,Segoe UI,Inter,sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;padding:0}a{color:var(--brand)}.shell{min-height:100vh;display:flex}.sidebar{background:var(--panel);border-right:1px solid var(--border);flex-shrink:0;width:220px;padding:20px 12px}.sidebar h1{letter-spacing:.02em;margin:0 8px 20px;font-size:15px}.sidebar nav a{color:var(--text);border-radius:8px;margin-bottom:2px;padding:8px 10px;font-size:14px;text-decoration:none;display:block}.sidebar nav a:hover{background:var(--panel-2)}.main{flex:1;max-width:1100px;padding:28px 36px}.topbar{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.topbar .who{color:var(--muted);font-size:13px}.card{background:var(--panel);border:1px solid var(--border);border-radius:12px;margin-bottom:18px;padding:18px 20px}.card h2{margin-top:0;font-size:16px}.grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.stat{background:var(--panel-2);border-radius:10px;padding:14px 16px}.stat .n{font-size:24px;font-weight:600}.stat .l{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;border-bottom:1px solid var(--border);padding:8px 10px}th{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:500}tr:hover td{background:#ffffff05}.badge{border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.badge.active,.badge.confirmed,.badge.received,.badge.processed,.badge.succeeded,.badge.linked{color:var(--ok);background:#34c78a26}.badge.grace,.badge.pending,.badge.past_due,.badge.received-cash{color:var(--warn);background:#e2b93b26}.badge.suspended,.badge.revoked,.badge.canceled,.badge.expired,.badge.failed,.badge.dead,.badge.overdue{color:var(--danger);background:#ef5b5b26}.badge.none,.badge.draft,.badge.unconfigured{color:var(--muted);background:#93a0c026}form.inline{flex-wrap:wrap;align-items:end;gap:8px;display:flex}label{color:var(--muted);margin-bottom:4px;font-size:12px;display:block}input,select,textarea{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:8px 10px;font-size:14px}.field{margin-bottom:12px}button,.btn{background:var(--brand);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:9px 16px;font-size:14px;text-decoration:none;display:inline-block}button.secondary,.btn.secondary{background:var(--panel-2);border:1px solid var(--border);color:var(--text)}button.danger{background:var(--danger)}.muted{color:var(--muted)}.error{color:var(--danger);margin-bottom:10px;font-size:13px}.ok-msg{color:var(--ok);margin-bottom:10px;font-size:13px}.mono{font-family:ui-monospace,Menlo,monospace;font-size:12px}.login-shell{justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{width:360px}.secret-box{border:1px dashed var(--warn);word-break:break-all;background:#e2b93b0f;border-radius:8px;margin-top:10px;padding:10px 12px}.badge.trialing{color:var(--brand);background:#5b8cff26}.badge.paused,.badge.disabled,.badge.void{color:var(--muted);background:#93a0c026}.badge.clawback,.badge.chargeback,.badge.refunded{color:var(--danger);background:#ef5b5b26}.badge.paid,.badge.accrued{color:var(--ok);background:#34c78a26}.checklist li{margin:6px 0;list-style:none}.checklist li:before{margin-right:8px}.checklist li.ok:before{content:"✔";color:var(--ok)}.checklist li.todo:before{content:"○";color:var(--warn)}.kv{grid-template-columns:200px 1fr;gap:6px 14px;font-size:14px;display:grid}.kv dt{color:var(--muted)}.kv dd{margin:0}.hint{color:var(--muted);margin:4px 0 0;font-size:12px}
