:root{--bg:#0b0d12;--panel:#151922;--panel-2:#1c2230;--text:#e6e9ef;--muted:#9aa4b2;--accent:#5865f2;--green:#22c55e;--amber:#f59e0b;--border:#262d3a}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:1040px;margin:0 auto;padding:2rem 1.5rem 4rem}.topbar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding:1rem 1.5rem}.brand{font-weight:700;letter-spacing:-.02em}.btn{display:inline-block;background:var(--accent);color:#fff;border:none;border-radius:8px;padding:.55rem .9rem;font-size:.9rem;font-weight:600;cursor:pointer}.btn.secondary{background:var(--panel-2);color:var(--text);border:1px solid var(--border)}.grid{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:1.1rem 1.2rem}.stat .label{color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.stat .value{font-size:1.7rem;font-weight:700;margin-top:.2rem}.stat .value.money{color:var(--green)}table{width:100%;border-collapse:collapse;font-size:.9rem}td,th{text-align:left;padding:.55rem .6rem;border-bottom:1px solid var(--border)}th{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.03em}.badge,th{font-weight:600}.badge{display:inline-block;padding:.1rem .5rem;border-radius:999px;font-size:.72rem}.badge.grace,.badge.past_due{background:rgba(245,158,11,.15);color:var(--amber)}.badge.active,.badge.recovered{background:rgba(34,197,94,.15);color:var(--green)}.badge.canceled{background:rgba(154,164,178,.15)}.badge.canceled,.muted{color:var(--muted)}.section-title{margin:2rem 0 .75rem;font-size:1.05rem}input,select{background:var(--panel-2);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:.4rem .5rem;font-size:.88rem}