@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";
:root{--bg-deep-black:#0c0c0c;--bg-charcoal:#1a1a1a;--bg-surface:#242424;--accent-red:#d32f2f;--accent-neon-red:#ff3b3b;--accent-dark-red:#8b0000;--text-primary:#fff;--text-secondary:#a0a0a0;--border-color:#333;--success:#4caf50;--warning:#ff9800;--info:#2196f3;--danger:#f44336}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-deep-black);color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-x:hidden}.layout-container{min-height:100vh;display:flex}.main-content{flex:1;margin-left:250px;padding:28px 32px;transition:margin-left .3s}.glass-panel{-webkit-backdrop-filter:blur(12px);background:#1a1a1ab3;border:1px solid #ffffff0f;border-radius:14px;box-shadow:0 8px 32px #0006}.btn-primary{background:linear-gradient(135deg, var(--accent-red), #b71c1c);color:#fff;cursor:pointer;letter-spacing:.3px;border:none;border-radius:8px;align-items:center;gap:8px;padding:10px 22px;font-family:inherit;font-size:.875rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary:hover{background:linear-gradient(135deg, var(--accent-neon-red), var(--accent-red));transform:translateY(-1px);box-shadow:0 0 16px #ff3b3b73}.btn-secondary{color:var(--text-secondary);border:1px solid var(--border-color);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-family:inherit;font-size:.8rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-secondary:hover{color:var(--text-primary);background:#ffffff0d;border-color:#555}.btn-danger{color:var(--danger);cursor:pointer;background:0 0;border:1px solid #f443364d;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-family:inherit;font-size:.8rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-danger:hover{border-color:var(--danger);background:#f443361f}.btn-icon{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;transition:all .18s;display:inline-flex}.btn-icon:hover{color:var(--text-primary);background:#ffffff14}.btn-icon.red:hover{color:var(--danger);background:#f443361f}.btn-icon.blue:hover{color:var(--info);background:#2196f31f}.btn-icon.green:hover{color:var(--success);background:#4caf501f}.status-select{cursor:pointer;letter-spacing:.4px;text-transform:uppercase;appearance:none;border:none;border-radius:20px;outline:none;padding:3px 10px;font-family:inherit;font-size:.72rem;font-weight:600;transition:box-shadow .2s,transform .15s}.status-select:hover{transform:scale(1.05);box-shadow:0 2px 12px #00000059}.status-select:focus{box-shadow:0 0 0 3px #d32f2f40}.status-select option{color:#fff;background:#1a1a1a;font-size:.8rem}.status-select.draft{color:#aaa;background:#a0a0a01f;border:1px solid #a0a0a033}.status-select.sent{color:#64b5f6;background:#2196f326;border:1px solid #2196f34d}.status-select.accepted{color:#81c784;background:#4caf502e;border:1px solid #4caf504d}.status-select.rejected{color:#ef9a9a;background:#f4433626;border:1px solid #f443364d}.status-select.pending{color:#ffcc80;background:#ff980026;border:1px solid #ff98004d}.status-select.paid{color:#81c784;background:#4caf502e;border:1px solid #4caf504d}.status-select.partial{color:#64b5f6;background:#2196f326;border:1px solid #2196f34d}.status-select.overdue{color:#ef9a9a;background:#f4433626;border:1px solid #f443364d}.badge{letter-spacing:.4px;text-transform:uppercase;border-radius:20px;align-items:center;padding:3px 10px;font-size:.72rem;font-weight:600;display:inline-flex}.badge-active{color:#81c784;background:#4caf502e;border:1px solid #4caf504d}.badge-inactive{color:#888;background:#a0a0a01f;border:1px solid #a0a0a033}.badge-draft{color:#aaa;background:#a0a0a01f;border:1px solid #a0a0a033}.badge-sent{color:#64b5f6;background:#2196f326;border:1px solid #2196f34d}.badge-accepted{color:#81c784;background:#4caf502e;border:1px solid #4caf504d}.badge-rejected{color:#ef9a9a;background:#f4433626;border:1px solid #f443364d}.badge-pending{color:#ffcc80;background:#ff980026;border:1px solid #ff98004d}.badge-paid{color:#81c784;background:#4caf502e;border:1px solid #4caf504d}.badge-partial{color:#64b5f6;background:#2196f326;border:1px solid #2196f34d}.badge-overdue{color:#ef9a9a;background:#f4433626;border:1px solid #f443364d}.data-table{border-collapse:collapse;width:100%;min-width:600px;font-size:.875rem}.data-table th{text-align:left;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.8px;border-bottom:1px solid var(--border-color);white-space:nowrap;padding:12px 16px;font-size:.75rem;font-weight:500}.data-table td{vertical-align:middle;border-bottom:1px solid #ffffff0a;padding:14px 16px}.data-table tbody tr{transition:background .15s}.data-table tbody tr:hover{background:#ffffff08}.data-table tbody tr:last-child td{border-bottom:none}.table-empty{text-align:center;color:var(--text-secondary);padding:50px 16px;font-size:.9rem}.form-group{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.form-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.6px;font-size:.78rem;font-weight:600}.form-input,.form-select,.form-textarea{background:var(--bg-charcoal);border:1px solid var(--border-color);color:var(--text-primary);border-radius:8px;outline:none;width:100%;padding:10px 14px;font-family:inherit;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent-red);box-shadow:0 0 0 3px #d32f2f26}.form-select option{background:var(--bg-charcoal)}.form-textarea{resize:vertical;min-height:80px}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:1000;background:#000000bf;justify-content:center;align-items:center;padding:24px;animation:.18s fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:#1e1e1e;border:1px solid #ffffff14;border-radius:16px;width:100%;max-width:620px;max-height:90vh;animation:.22s cubic-bezier(.34,1.56,.64,1) slideUp;overflow-y:auto;box-shadow:0 24px 80px #000000b3}.modal-content.wide{max-width:780px}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header h2{color:var(--text-primary);font-size:1.1rem;font-weight:700}.modal-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;padding:4px;font-size:1.3rem;line-height:1;transition:color .18s,background .18s;display:flex}.modal-close:hover{color:#fff;background:#ffffff14}.modal-body{padding:24px}.modal-footer{border-top:1px solid var(--border-color);justify-content:flex-end;gap:10px;padding:16px 24px;display:flex}.line-items-header{border-bottom:1px solid var(--border-color);grid-template-columns:1fr 64px 100px 100px 36px;gap:8px;margin-bottom:6px;padding-bottom:6px;display:grid}.line-items-header span{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.6px;font-size:.72rem;font-weight:600}.line-item-row{grid-template-columns:1fr 64px 100px 100px 36px;align-items:center;gap:8px;margin-bottom:8px;display:grid}.line-item-row .form-input{margin:0;padding:8px 10px}.line-item-total{color:var(--text-primary);text-align:right;font-size:.875rem;font-weight:500}.stat-card{background:#1a1a1ab3;border:1px solid #ffffff0f;border-radius:14px;padding:22px 24px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.stat-card:hover{transform:translateY(-2px);box-shadow:0 12px 40px #0006}.stat-card .card-icon{border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:14px;display:flex}.stat-card .card-value{color:var(--text-primary);margin-bottom:6px;font-size:1.75rem;font-weight:800;line-height:1}.stat-card .card-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.6px;font-size:.75rem;font-weight:500}.stat-card:after{content:"";opacity:.07;background:var(--accent-red);border-radius:50%;width:90px;height:90px;position:absolute;bottom:-20px;right:-20px}.page-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.page-header h1{color:var(--text-primary);font-size:1.75rem;font-weight:800}.page-header h1 span{color:var(--accent-red)}.page-header-sub{color:var(--text-secondary);margin-top:4px;font-size:.82rem}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-deep-black)}::-webkit-scrollbar-thumb{background:var(--bg-surface);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-color)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}[data-theme=light]{--bg-deep-black:#f4f4f5;--bg-charcoal:#fff;--bg-surface:#e8e8ea;--text-primary:#111;--text-secondary:#666;--border-color:#d4d4d8}[data-theme=light] body{background-color:#f4f4f5}[data-theme=light] .glass-panel{background:#ffffffd9;border-color:#00000014;box-shadow:0 4px 20px #00000014}[data-theme=light] .stat-card{background:#ffffffe6;border-color:#00000012}[data-theme=light] .data-table td{border-bottom-color:#0000000d}[data-theme=light] .data-table tbody tr:hover{background:#00000005}[data-theme=light] .form-input,[data-theme=light] .form-select,[data-theme=light] .form-textarea{color:#111;background:#f8f8f8;border-color:#d4d4d8}[data-theme=light] .modal-content{background:#fff}[data-theme=light] .btn-secondary{color:#444;border-color:#ccc}[data-theme=light] .btn-secondary:hover{color:#111;background:#0000000a}[data-theme=light] ::-webkit-scrollbar-track{background:#f4f4f5}[data-theme=light] ::-webkit-scrollbar-thumb{background:#d4d4d8}@media print{.main-content{margin-left:0!important;padding:0!important}aside,.page-header button,.btn-primary,.btn-secondary,.btn-danger,.btn-icon{display:none!important}.glass-panel{box-shadow:none!important;background:#fff!important;border:1px solid #ddd!important}body{color:#000!important;background:#fff!important}}
