@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Fira+Code:wght@400;600&family=Fira+Sans:wght@300;400;500;600&display=swap";
:root{--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-panel:#1e293ba6;--bg-panel-hover:#334155bf;--border-color:#ffffff14;--border-color-glow:#0ea5e94d;--text-primary:#f3f4f6;--text-secondary:#9ca3af;--text-muted:#6b7280;--accent-primary:#0369a1;--accent-secondary:#0ea5e9;--accent-gradient:linear-gradient(135deg, #0052ff 0%, #0ea5e9 100%);--accent-glow:0 0 15px #0ea5e966;--font-heading:"Fira Code", "Courier New", monospace;--font-body:"Fira Sans", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--success:#10b981;--success-glow:0 0 15px #10b9814d;--warning:#f59e0b;--danger:#f43f5e;--danger-glow:0 0 15px #f43f5e4d;--surface-input:#ffffff0a;--surface-input-focus:#ffffff12;--surface-table-header:#ffffff08;--surface-table-hover:#ffffff05;--surface-btn-secondary:#ffffff12;--surface-btn-secondary-hover:#ffffff1f;--surface-toggle:#ffffff0a;--surface-toggle-hover:#ffffff0d;--surface-scroll-thumb:#ffffff1a;--surface-scroll-thumb-hover:#fff3;--surface-badge-success:#10b98126;--surface-badge-warning:#f59e0b26;--surface-badge-danger:#f43f5e26;--shadow-card:0 8px 32px 0 #0000004d;--shadow-modal:0 10px 40px #00000080;--bg-modal:#0f1424;--overlay-bg:#000000bf;--danger-text:#fb7185;--success-text:#34d399;--surface-subtle:#ffffff05;--surface-subtle-3:#ffffff08;--surface-subtle-4:#ffffff0a;--surface-subtle-5:#ffffff0d;--sidebar-width:260px;--header-height:70px;--transition-smooth:all .25s cubic-bezier(.4, 0, .2, 1);--border-radius-sm:8px;--border-radius-md:12px;--border-radius-lg:20px}[data-theme=light]{--bg-primary:#f1f5f9;--bg-secondary:#e2e8f0;--bg-panel:#ffffffd9;--bg-panel-hover:#f1f5f9f2;--border-color:#00000014;--border-color-glow:#0ea5e940;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--accent-glow:0 0 15px #0ea5e940;--success-glow:0 0 15px #10b98133;--danger-glow:0 0 15px #f43f5e33;--surface-input:#00000008;--surface-input-focus:#0000000f;--surface-table-header:#00000005;--surface-table-hover:#00000004;--surface-btn-secondary:#0000000a;--surface-btn-secondary-hover:#00000014;--surface-toggle:#0000000a;--surface-toggle-hover:#0000000f;--surface-scroll-thumb:#00000026;--surface-scroll-thumb-hover:#00000040;--surface-badge-success:#10b9811a;--surface-badge-warning:#f59e0b1a;--surface-badge-danger:#f43f5e1a;--shadow-card:0 8px 32px 0 #00000014;--shadow-modal:0 10px 40px #00000026;--bg-modal:#fff;--overlay-bg:#00000059;--danger-text:#be123c;--success-text:#047857;--surface-subtle:#00000005;--surface-subtle-3:#00000008;--surface-subtle-4:#0000000a;--surface-subtle-5:#0000000d}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;color:var(--text-primary);background-color:var(--bg-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--surface-scroll-thumb);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--surface-scroll-thumb-hover)}a{color:var(--accent-primary);transition:var(--transition-smooth);text-decoration:none}a:hover{color:var(--accent-secondary)}button,input,select,textarea{color:inherit;font-family:inherit}.app-container{background:radial-gradient(circle at 10% 20%,#0369a11f 0%,#0000 40%),radial-gradient(circle at 90% 80%,#0ea5e912 0%,#0000 40%);min-height:100vh;display:flex;position:relative}.main-content{margin-top:var(--header-height);width:100%;transition:var(--transition-smooth);flex-grow:1;padding:2rem}.glass-card{background:var(--bg-panel);-webkit-backdrop-filter:blur(12px);border-radius:var(--border-radius-md);transition:var(--transition-smooth);border:1px solid #0ea5e91f;padding:1.5rem}.glass-card:hover{border-color:var(--border-color-glow);box-shadow:var(--shadow-card)}@media (min-width:1024px){.main-content{margin-left:var(--sidebar-width);width:calc(100% - var(--sidebar-width))}}.form-group{flex-direction:column;gap:.5rem;margin-bottom:1.25rem;display:flex}.form-label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.form-input{background:var(--surface-input);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);width:100%;color:var(--text-primary);transition:var(--transition-smooth);outline:none;padding:.75rem 1rem}.form-input:focus{background:var(--surface-input-focus);border-color:var(--accent-primary);box-shadow:0 0 0 2px #6366f133}.btn{border-radius:var(--border-radius-sm);cursor:pointer;transition:var(--transition-smooth);border:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--accent-gradient);color:#fff}.btn-primary:hover{box-shadow:var(--accent-glow);transform:translateY(-2px)scale(1.02)}.btn-sm{padding:.4rem .8rem;font-size:.8rem}.btn-ghost{border:1px solid var(--border-color);color:var(--text-secondary);background:0 0}.btn-ghost:hover{border-color:var(--accent-secondary);color:var(--accent-secondary)}.btn-secondary{background:var(--surface-btn-secondary);border:1px solid var(--border-color);color:var(--text-primary)}.btn-secondary:hover{background:var(--surface-btn-secondary-hover);border-color:var(--text-secondary)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{box-shadow:var(--danger-glow);transform:translateY(-2px)}.table-container{border-radius:var(--border-radius-sm);border:1px solid var(--border-color);width:100%;max-width:100%;margin-top:1rem;overflow-x:auto}.custom-table{border-collapse:collapse;text-align:left;width:100%;min-width:800px;font-size:.9rem}.custom-table th{background:var(--surface-table-header);color:var(--text-secondary);border-bottom:1px solid var(--border-color);padding:1rem;font-weight:600}.custom-table td{border-bottom:1px solid var(--border-color);font-variant-numeric:tabular-nums;font-feature-settings:"tnum";padding:1rem}.custom-table tr:hover td{background:var(--surface-table-hover)}.badge{text-transform:uppercase;border-radius:9999px;padding:.25rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-success{background:var(--surface-badge-success);color:var(--success);border:1px solid #10b98140}.badge-warning{background:var(--surface-badge-warning);color:var(--warning);border:1px solid #f59e0b40}.badge-danger{background:var(--surface-badge-danger);color:var(--danger);border:1px solid #f43f5e40}.grid-responsive-3{grid-template-columns:1fr;gap:1.5rem;display:grid}@media (min-width:640px){.grid-responsive-3{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.grid-responsive-3{grid-template-columns:repeat(3,1fr)}}@keyframes slideUpFade{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-ring{0%{box-shadow:0 0 #0ea5e966}70%{box-shadow:0 0 0 8px #0000}to{box-shadow:0 0 #0000}}.animate-fade-in{animation:.35s cubic-bezier(.34,1.56,.64,1) both slideUpFade}.animate-fade-in:nth-child(2){animation-delay:50ms}.animate-fade-in:nth-child(3){animation-delay:.1s}.animate-fade-in:nth-child(4){animation-delay:.15s}.animate-fade-in:nth-child(5){animation-delay:.2s}.status-dot-pulse{animation:1.8s ease-out infinite pulse-ring}@media (prefers-reduced-motion:reduce){.animate-fade-in,.status-dot-pulse{animation:none}}@media print{body{color:#000!important;background:#fff!important}.no-print{display:none!important}.print-invoice{box-shadow:none!important;color:#000!important;background:0 0!important;border:none!important;width:100%!important;padding:0!important}.print-invoice *{color:#000!important}}.format-toggle,.billing-mode-toggle{background:var(--surface-toggle);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);gap:3px;padding:3px;display:inline-flex}.toggle-btn{color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);white-space:nowrap;background:0 0;border:none;border-radius:6px;padding:.4rem .85rem;font-size:.8rem;font-weight:600}.toggle-btn:hover{color:var(--text-primary);background:var(--surface-toggle-hover)}.toggle-btn.active{background:var(--accent-gradient);color:#fff;box-shadow:0 2px 8px #6366f140}.format-bar{align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.format-label{color:var(--text-secondary);font-size:.85rem;font-weight:600}.dropdown-menu{flex-direction:column;gap:.2rem;display:flex}.dropdown-item{color:var(--text-secondary);cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:6px;align-items:center;gap:.5rem;width:100%;padding:.5rem .75rem;font-family:inherit;font-size:.85rem;transition:all .15s;display:flex}.dropdown-item:hover{color:var(--text-primary);background:#6366f11f}.row-actions-menu{z-index:9999;background:#1a1f2e;border:1px solid #ffffff1a;border-radius:8px;min-width:170px;padding:.25rem;position:fixed;box-shadow:0 8px 24px #00000073}[data-theme=light] .row-actions-menu{background:#fff;border-color:#0000001f;box-shadow:0 8px 24px #00000024}.row-action-item{width:100%;color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:5px;align-items:center;gap:.5rem;padding:.5rem .75rem;font-family:inherit;font-size:.825rem;transition:background .12s,color .12s;display:flex}.row-action-item:hover{color:var(--text-primary);background:#ffffff12}[data-theme=light] .row-action-item:hover{background:#0000000d}.row-action-pay{color:#a5b4fc}.row-action-pay:hover{color:#c7d2fe;background:#6366f126}[data-theme=light] .row-action-pay{color:#4f46e5}.row-action-divider{background:#ffffff12;height:1px;margin:.25rem 0}[data-theme=light] .row-action-divider{background:#00000014}
