:root{--brand:#1f9d55;--brand-ink:#14753f;--on-brand:#fff;--bg:#f1f3f2;--surface:#fff;--text:#161a18;--hint:#5d6762;--line:#e0e5e2;--fill:#e8ebe9;--tint:color-mix(in srgb, var(--brand) 12%, #fff);--danger:#b42318;--danger-bg:#fde8e6;--warn:#93370d;--warn-bg:#fef0c7;--info:#175cd3;--info-bg:#e0eaff;--ok:#14753f;--ok-bg:#dcf5e6;--radius:14px}@media (prefers-color-scheme:dark){:root{--brand-ink:#5fd18d;--bg:#121514;--surface:#1b1f1d;--text:#eceeed;--hint:#9aa49f;--line:#2b312e;--fill:#262b28;--tint:color-mix(in srgb, var(--brand) 22%, #1b1f1d);--danger:#ff8a80;--danger-bg:#3b1d1a;--warn:#f6c35b;--warn-bg:#3a2c0d;--info:#8db4ff;--info-bg:#1a2a48;--ok:#5fd18d;--ok-bg:#16301f}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);color:var(--text);margin:0}body{font:16px/1.4 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;text-align:inherit;background:0 0;border:0;padding:0}button:disabled{cursor:default;opacity:.5}h1,h2,p{margin:0}:focus-visible{outline:3px solid var(--brand-ink);outline-offset:2px}.page{min-height:100vh}.page.center{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex}.muted{color:var(--hint);font-size:14px}.pad{padding:16px}.grow{flex:1;min-width:0}.shell{max-width:1100px;margin:0 auto}.topbar{justify-content:space-between;align-items:baseline;gap:12px;padding:20px 16px 8px;display:flex}.topbar h1{font-size:22px}.content{padding:8px 16px 40px}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0 14px;display:flex}.search{border:1px solid var(--line);background:var(--surface);border-radius:12px;flex:220px;min-height:44px;padding:0 14px}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{background:var(--fill);border-radius:22px;align-items:center;min-height:44px;padding:0 14px;font-size:14px;font-weight:600;display:inline-flex}.chip.on{background:var(--brand);color:var(--on-brand)}.btn{background:var(--brand);min-height:44px;color:var(--on-brand);border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:0 18px;font-weight:700;display:inline-flex}.btn.small{min-height:44px;padding:0 14px;font-size:14px}.btn.ghost{background:var(--fill);color:var(--text)}.btn.danger{background:var(--danger);color:#fff}.btn.ghost.danger-text{color:var(--danger)}.list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.item{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:16px;padding:14px 16px;display:flex}.item .grow{flex:180px}.col{flex-direction:column;gap:2px;min-width:130px;display:flex}.act{margin-left:auto}.late{color:var(--danger)}.badge{border-radius:999px;align-self:flex-start;padding:3px 10px;font-size:13px;font-weight:700;display:inline-block}.badge.trial{background:var(--info-bg);color:var(--info)}.badge.active{background:var(--ok-bg);color:var(--ok)}.badge.past_due{background:var(--warn-bg);color:var(--warn)}.badge.blocked{background:var(--danger-bg);color:var(--danger)}.notice{background:var(--danger-bg);color:var(--danger);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:12px 14px;display:flex}.pager{justify-content:flex-end;align-items:center;gap:12px;margin-top:16px;display:flex}.pager .muted{margin-right:auto}.overlay{z-index:20;background:#00000073;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border-radius:18px;flex-direction:column;gap:12px;width:min(440px,100%);max-height:90vh;padding:20px;display:flex;overflow:auto}.modal h2{font-size:18px}.field{flex-direction:column;gap:4px;margin-top:8px;font-size:14px;font-weight:600;display:flex}.field input,.field textarea{border:1px solid var(--line);background:var(--bg);border-radius:12px;min-height:44px;padding:10px 12px;font-size:16px;font-weight:400}.field input[aria-invalid=true]{border-color:var(--danger)}.field small{font-weight:400}.actions{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.error{color:var(--danger);font-size:14px}@media (width<=640px){.act{width:100%;margin-left:0}.act .btn{width:100%}.pager{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@media (width>=900px){.item{grid-template-columns:minmax(200px,1.4fr) 170px 230px 200px 150px;align-items:center;gap:16px;display:grid}.item .act{justify-self:end;margin-left:0}}.tabs{gap:6px;padding:4px 16px 0;display:flex}.tab{background:var(--fill);border-radius:22px;min-height:44px;padding:0 16px;font-weight:700}.tab.on{background:var(--brand);color:var(--on-brand)}.act{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.audit-item .col{min-width:120px}@media (width>=900px){.audit-item{grid-template-columns:minmax(220px,2fr) 160px 160px}}@media (width<=640px){.act .btn{flex:1}}.tabs{flex-wrap:wrap}.summary{background:var(--bg);border-radius:12px;flex-wrap:wrap;align-items:center;gap:6px 14px;padding:10px 12px;display:flex}.modal h3{margin:8px 0 0;font-size:15px}.grid2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.field select{border:1px solid var(--line);background:var(--bg);border-radius:12px;min-height:44px;padding:10px 12px;font-size:16px;font-weight:400}.ok-text{color:var(--ok);font-size:14px}.pay-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.pay-list li{background:var(--bg);border-radius:12px;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:10px 12px;display:flex}.pay-list li.voided{opacity:.6;text-decoration:line-through}.small{font-size:13px}.section{margin:22px 0 10px;font-size:16px}.stats{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;display:grid}.stat{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);flex-direction:column;gap:4px;padding:16px;display:flex}.stat-value{font-size:24px;line-height:1.2}.bars{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.bars li{grid-template-columns:150px 1fr 40px;align-items:center;gap:12px;display:grid}.bar{background:var(--fill);border-radius:5px;height:10px;overflow:hidden}.fill{border-radius:5px;height:100%;display:block}.fill.trial{background:var(--info)}.fill.active{background:var(--ok)}.fill.past_due{background:var(--warn)}.fill.blocked{background:var(--danger)}@media (width>=900px){.plan-item{grid-template-columns:minmax(200px,1.4fr) 200px 200px auto}}@media (width<=640px){.bars li{grid-template-columns:1fr 40px}.bars .bar{order:3;grid-column:1/-1}.grid2{grid-template-columns:1fr}}.steps{gap:8px;margin:0 0 14px;padding:0;list-style:none;display:grid}.step{color:var(--hint);align-items:flex-start;gap:10px;display:flex}.step.ok{color:var(--text)}.step-dot{border:2px solid var(--line);border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:13px;font-weight:700;display:grid}.step.ok .step-dot{background:var(--ok-bg);border-color:var(--brand);color:var(--ok)}.ready-badge{background:var(--warn-bg);color:var(--warn);border-radius:999px;margin:0 0 10px;padding:4px 12px;font-size:.85rem;font-weight:600;display:inline-block}.ready-badge.ok{background:var(--ok-bg);color:var(--ok)}.block{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.block h3{margin:0 0 8px;font-size:1rem}.copyrow{gap:6px;margin-bottom:10px;display:grid}.copybox{gap:8px;display:flex}.copybox input{flex:1;min-width:0}.manual{gap:8px;margin-top:12px;display:grid}
