@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";
*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#070b14;--surface:#0c1220;--surface2:#111827;--surface3:#1a2235;--border:#ffffff0f;--border2:#ffffff1a;--border3:#ffffff29;--blue:#2563eb;--blue2:#3b82f6;--blue3:#60a5fa;--blue-glow:#2563eb2e;--blue-faint:#2563eb14;--cyan:#06b6d4;--text:#f0f4ff;--text2:#8b96b0;--text3:#4a556a;--green:#10b981;--green-faint:#10b9811f;--red:#ef4444;--red-faint:#ef44441f;--amber:#f59e0b;--amber-faint:#f59e0b1f;--radius:10px;--radius-lg:14px;--radius-xl:18px}html,body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,sans-serif;font-size:14px;line-height:1.6}.app{min-height:100vh;display:flex}.sidebar{background:var(--surface);border-right:1px solid var(--border);z-index:100;flex-direction:column;width:232px;min-height:100vh;display:flex;position:fixed;top:0;left:0}.sidebar-brand{border-bottom:1px solid var(--border);align-items:center;gap:11px;padding:22px 18px 20px;display:flex}.sidebar-brand img{object-fit:contain;border-radius:8px;width:34px;height:34px}.sidebar-brand-text h2{color:var(--text);letter-spacing:-.3px;font-size:15px;font-weight:700}.sidebar-brand-text p{color:var(--text3);margin-top:1px;font-size:10px;font-style:italic}.sidebar-section{letter-spacing:.1em;color:var(--text3);text-transform:uppercase;padding:18px 18px 6px;font-size:10px;font-weight:600}.sidebar nav{flex-direction:column;gap:1px;padding:0 8px;display:flex}.sidebar nav a{border-radius:var(--radius);color:var(--text2);align-items:center;gap:10px;padding:9px 12px;font-size:13px;font-weight:500;text-decoration:none;transition:all .12s;display:flex;position:relative}.sidebar nav a:hover{background:var(--surface3);color:var(--text)}.sidebar nav a.active{background:var(--blue-glow);color:var(--blue3)}.sidebar nav a.active:before{content:"";background:var(--blue2);border-radius:0 3px 3px 0;width:3px;position:absolute;top:20%;bottom:20%;left:0}.sidebar nav a .icon{text-align:center;flex-shrink:0;width:20px;font-size:15px}.sidebar-footer{border-top:1px solid var(--border);margin-top:auto;padding:14px 16px}.sidebar-footer button{border-radius:var(--radius);width:100%;color:var(--text3);cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:8px 12px;font-family:inherit;font-size:12px;font-weight:500;transition:all .12s;display:flex}.sidebar-footer button:hover{background:var(--red-faint);color:var(--red)}.main{flex:1;min-height:100vh;margin-left:232px;padding:32px 36px}.topbar{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.page-header{margin-bottom:28px}.page-header h1{color:var(--text);letter-spacing:-.5px;font-size:22px;font-weight:700}.page-header p{color:var(--text2);margin-top:4px;font-size:13px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:20px;padding:24px}.card-title{color:var(--text);margin-bottom:18px;font-size:14px;font-weight:600}.stat-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:24px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;padding:18px 20px;transition:border-color .15s,transform .12s,background .15s;position:relative;overflow:hidden}.stat-card:before{content:"";background:linear-gradient(90deg,var(--blue),var(--cyan));opacity:0;height:2px;transition:opacity .2s;position:absolute;top:0;left:0;right:0}.stat-card:hover{border-color:var(--border2);transform:translateY(-2px)}.stat-card:hover:before{opacity:1}.stat-label{color:var(--text2);letter-spacing:.04em;text-transform:uppercase;margin-bottom:10px;font-size:11px;font-weight:600}.stat-value{color:var(--text);letter-spacing:-.8px;font-size:24px;font-weight:800;line-height:1}.stat-sub{color:var(--text3);margin-top:6px;font-size:11px}.form-grid{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px;display:grid}.form-field{flex-direction:column;gap:6px;display:flex}.form-field.full{grid-column:1/-1}.form-label{color:var(--text2);letter-spacing:.03em;text-transform:uppercase;font-size:11px;font-weight:600}input,select,textarea{background:var(--surface2);border:1px solid var(--border2);color:var(--text);border-radius:8px;outline:none;width:100%;padding:9px 12px;font-family:inherit;font-size:13px;transition:border-color .15s,background .15s}input:focus,select:focus,textarea:focus{border-color:var(--blue);background:var(--surface3)}input::placeholder,textarea::placeholder{color:var(--text3)}select option{background:var(--surface2);color:var(--text)}input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.7)brightness(1.4);cursor:pointer;opacity:.8;border-radius:3px;padding:2px}input[type=date]::-webkit-calendar-picker-indicator:hover{filter:invert(.9)brightness(1.6);opacity:1}.btn{cursor:pointer;letter-spacing:-.1px;border:none;border-radius:8px;align-items:center;gap:7px;padding:9px 18px;font-family:inherit;font-size:13px;font-weight:600;transition:all .14s;display:inline-flex}.btn-primary{background:var(--blue);color:#fff;box-shadow:0 0 #2563eb00}.btn-primary:hover{background:var(--blue2);transform:translateY(-1px);box-shadow:0 4px 18px #2563eb59}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.btn-ghost{background:var(--surface2);color:var(--text2);border:1px solid var(--border2)}.btn-ghost:hover{color:var(--text);border-color:var(--border3);background:var(--surface3)}.btn-danger{background:var(--red-faint);color:var(--red);border:1px solid #ef444440}.btn-danger:hover{background:#ef444433}.btn-success{background:var(--green-faint);color:var(--green);border:1px solid #10b98140}.btn-success:hover{background:#10b98133}.btn-amber{background:var(--amber-faint);color:var(--amber);border:1px solid #f59e0b40}.btn-sm{padding:5px 12px;font-size:12px}table{border-collapse:collapse;width:100%}thead th{color:var(--text3);text-transform:uppercase;letter-spacing:.07em;text-align:left;border-bottom:1px solid var(--border);background:#ffffff05;padding:10px 14px;font-size:10px;font-weight:700}tbody td{border-bottom:1px solid var(--border);color:var(--text2);padding:12px 14px;font-size:13px}tbody tr{transition:background .1s}tbody tr:hover td{background:#ffffff06}tbody tr:last-child td{border-bottom:none}.badge{letter-spacing:.02em;border-radius:20px;align-items:center;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.badge-paid{color:#34d399;background:#10b9811f}.badge-partial{color:var(--blue3);background:#2563eb26}.badge-pending{color:#fbbf24;background:#f59e0b1f}.search-box{background:var(--surface2);border:1px solid var(--border2);color:var(--text);border-radius:8px;outline:none;width:280px;padding:8px 14px;font-size:13px}.search-box:focus{border-color:var(--blue);background:var(--surface3)}hr{border:none;border-top:1px solid var(--border);margin:20px 0}.inv-preview-wrap{border-radius:var(--radius-lg);border:1px solid var(--border);max-width:820px;overflow:hidden}.alert{border-radius:var(--radius);border:1px solid;margin-bottom:16px;padding:12px 16px;font-size:13px}.alert-info{background:var(--blue-faint);color:var(--blue3);border-color:#2563eb33}.alert-danger{background:var(--red-faint);color:var(--red);border-color:#ef444433}.alert-success{background:var(--green-faint);color:var(--green);border-color:#10b98133}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--surface3);border-radius:3px}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:.25s fadeUp}
