.payment-date-modal{background:var(--bg-sidebar);width:520px;max-width:100%;max-height:90vh;color:var(--text-main);border:1px solid var(--border);border-radius:14px;overflow-y:auto;box-shadow:0 20px 60px #0003}.payment-date-modal header,.payment-date-modal footer{align-items:center;gap:.75rem;padding:1.25rem 1.5rem;display:flex}.payment-date-modal header{border-bottom:1px solid var(--border);justify-content:space-between}.payment-date-modal h3{margin:0;font-size:1.2rem}.payment-date-close{color:var(--text-muted);cursor:pointer;background:0 0;border:0;padding:.25rem;display:flex}.payment-date-body{padding:1.5rem}.payment-date-summary{background:#00aae60d;border:1px solid #00aae62e;border-radius:8px;flex-direction:column;gap:.35rem;margin-bottom:1.5rem;padding:1rem;display:flex}.payment-date-summary span{color:var(--text-muted);font-size:.8rem}.payment-date-summary strong{color:var(--primary);font-size:1.5rem}.payment-date-label{color:var(--text-muted);font-size:.76rem;font-weight:600;display:block}.payment-date-label input{box-sizing:border-box;border:1px solid var(--border);width:100%;min-height:44px;color:var(--text-main);font:inherit;background:#8080800d;border-radius:8px;outline:none;margin-top:.5rem;padding:.7rem .85rem;font-size:.9rem;font-weight:400;display:block}.payment-date-label input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #00aae61f}.payment-date-help{color:var(--text-muted);margin:.75rem 0 0;font-size:.8rem;line-height:1.6}.payment-date-modal footer{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:flex-end}.payment-date-cancel{border:1px solid var(--border);color:var(--text-main);font:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:.75rem 1.1rem;font-size:.88rem}.payment-date-cancel:hover{background:#80808014}.payment-date-modal button:disabled{opacity:.55;cursor:not-allowed}.table-responsive .billing-table{table-layout:fixed;min-width:0}.billing-table>thead>tr>th,.billing-table>tbody>tr>td{overflow-wrap:anywhere;vertical-align:middle;font-size:.85rem;white-space:normal!important;padding:1rem .65rem!important}.billing-table .status-badge{white-space:normal;text-align:center;max-width:100%;padding:.3rem .55rem}.billing-table>tbody>tr>td:last-child>div{flex-wrap:wrap;gap:.35rem!important}.billing-table>tbody>tr>td:last-child button{flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex;padding:.3rem!important}.billing-retention-link{color:var(--text-muted);text-align:left;cursor:pointer;background:0 0;border:0;margin-top:.3rem;padding:0;font-size:.75rem;display:block}.billing-retention-link:hover{color:var(--primary)}.billing-retention-overlay{z-index:80;background:#000000a6;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.billing-retention-dialog{background:var(--bg-sidebar);width:720px;max-width:100%;max-height:90vh;color:var(--text-main);border-radius:14px;padding:1.5rem;overflow:auto}.billing-retention-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.billing-retention-heading button{color:var(--text-muted);cursor:pointer;background:0 0;border:0}@media (width<=900px){.table-responsive .billing-table{min-width:850px}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-dark:#0a0c10;--bg-card:#171b22b3;--bg-sidebar:#0d1117;--primary:#00d2ff;--secondary:#3a7bd5;--accent:#7928ca;--text-main:#e6edf3;--text-muted:#8b949e;--border:#ffffff1a;--success:#238636;--warning:#d29922;--danger:#da3633;--glass:blur(10px);--sidebar-width:260px}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-dark:#f0f2f5;--bg-card:#ffffffe6;--bg-sidebar:#fff;--primary:#09c;--secondary:#2563eb;--accent:#7928ca;--text-main:#1a1f2e;--text-muted:#64748b;--border:#0000001a;--success:#16a34a;--warning:#d97706;--danger:#dc2626;--glass:blur(10px)}select,option,optgroup{background-color:var(--bg-sidebar);color:var(--text-main)}[data-theme=light] body{background-color:var(--bg-dark)}[data-theme=light] .glass-card{box-shadow:0 1px 4px #00000014}[data-theme=light] .glass-card:hover{border-color:#0099cc59;box-shadow:0 4px 16px #0000001f}[data-theme=light] .sidebar{box-shadow:1px 0 8px #0000000f}[data-theme=light] .topbar{box-shadow:0 1px 4px #0000000f}[data-theme=light] input,[data-theme=light] textarea{color:var(--text-main)!important;background:#00000008!important}[data-theme=light] input::placeholder{color:var(--text-muted)!important}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-dark);color:var(--text-main);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow-x:hidden}.sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);border-right:1px solid var(--border);z-index:40;height:100vh;padding:2rem 1rem;transition:transform .25s;position:fixed;top:0;left:0;overflow-y:auto}.content{margin-left:var(--sidebar-width);min-height:100vh;padding:2rem}.sidebar-overlay{z-index:39;background:#0009;display:none;position:fixed;inset:0}.topbar{background:var(--bg-sidebar);border-bottom:1px solid var(--border);z-index:38;justify-content:space-between;align-items:center;height:56px;padding:0 1rem;display:none;position:fixed;top:0;left:0;right:0}.hamburger{color:var(--text-main);cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;padding:.5rem;display:flex}.hamburger span{background:var(--text-main);border-radius:2px;width:22px;height:2px;transition:all .25s;display:block}.glass-card{background:var(--bg-card);-webkit-backdrop-filter:var(--glass);backdrop-filter:var(--glass);border:1px solid var(--border);border-radius:12px;padding:1.5rem;transition:transform .2s,box-shadow .2s}.glass-card:hover{border-color:#00d2ff4d;transform:translateY(-2px);box-shadow:0 8px 24px #0006}.btn-primary{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:600;transition:opacity .2s;display:flex}.btn-primary:hover{opacity:.9}.stats-grid{gap:1.5rem;margin-bottom:2rem;display:grid}.stats-grid-4{grid-template-columns:repeat(4,1fr)}.stats-grid-3{grid-template-columns:repeat(3,1fr)}.stats-grid-2{grid-template-columns:repeat(2,1fr)}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.page-header-actions{flex-wrap:wrap;gap:.75rem;display:flex}.table-responsive{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.table-responsive table{min-width:600px}.status-badge{white-space:nowrap;border-radius:20px;padding:.25rem .75rem;font-size:.85rem;font-weight:500}.status-active,.status-paid,.status-received,.status-confirmed,.status-emitted,.status-processed{color:#3fb950;background:#23863633}.status-pending,.status-trial,.status-generated{color:#d29922;background:#d2992233}.status-sent,.status-authorized{color:#00d2ff;background:#00d2ff26}.status-overdue,.status-error,.status-denied{color:#f85149;background:#da363333}.status-inactive,.status-suspended,.status-cancelled,.status-expired,.status-voided{color:#8b949e;background:#8b949e26}.status-refunded{color:#b066f5;background:#7928ca33}h1,h2,h3{letter-spacing:-.02em;font-weight:700}.animate-in{animation:.5s ease-out forwards fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1024px){:root{--sidebar-width:220px}.stats-grid-4{grid-template-columns:repeat(2,1fr)}.content{padding:1.5rem}}@media (width<=768px){.sidebar{width:var(--sidebar-width);box-shadow:none;transform:translate(-100%)}.sidebar.sidebar-open{transform:translate(0);box-shadow:4px 0 24px #00000080}.sidebar-overlay.sidebar-open{display:block}.topbar{display:flex}.content{margin-left:0;padding:calc(56px + 1rem) 1rem 1rem}.stats-grid-4,.stats-grid-3,.stats-grid-2{grid-template-columns:1fr}h1{font-size:1.5rem!important}.glass-card{padding:1rem}.page-header{flex-direction:column;align-items:flex-start}.page-header-actions{width:100%}.page-header-actions .btn-primary,.page-header-actions button{flex:1;justify-content:center}}@media (width<=480px){.content{padding:calc(56px + .75rem) .75rem .75rem}.btn-primary{padding:.65rem 1rem;font-size:.85rem}.status-badge{padding:.2rem .5rem;font-size:.75rem}}
