:root{--red:#df234b;--red-dark:#b9183b;--charcoal:#30343a;--ink:#20242a;--muted:#6b7280;--line:#e5e7eb;--paper:#fff;--bg:#f3f4f6;--yellow:#f2b705;--green:#16815b;--shadow:0 12px 30px rgba(26,31,38,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.45 Inter,Segoe UI,Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}
.topbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px 28px;background:var(--charcoal);color:#fff;box-shadow:0 4px 20px rgba(0,0,0,.18)}.brand-block{display:flex;align-items:center;gap:18px}.brand-logo{width:145px;height:44px;object-fit:contain}.subtitle{font-size:16px;font-weight:650;border-left:1px solid rgba(255,255,255,.3);padding-left:18px}.top-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.container{width:min(1460px,calc(100% - 36px));margin:24px auto 40px;display:grid;gap:18px}.card{background:var(--paper);border:1px solid #ebecef;border-radius:15px;padding:22px;box-shadow:var(--shadow)}h1,h2,p{margin-top:0}h2{font-size:20px;margin-bottom:0}.eyebrow{text-transform:uppercase;letter-spacing:.11em;font-size:11px;font-weight:800;color:var(--red);margin-bottom:5px}.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.wrap{flex-wrap:wrap}.muted{color:var(--muted)}
.btn{border:1px solid transparent;border-radius:9px;padding:10px 14px;font-weight:700;transition:.15s}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--red);color:#fff}.btn.primary:hover{background:var(--red-dark)}.btn.secondary{background:var(--charcoal);color:#fff}.btn.ghost{background:#fff;border-color:#d8dbe0;color:var(--ink)}.topbar .btn.ghost{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}.full{width:100%}.badge{padding:7px 10px;border-radius:999px;font-size:12px;font-weight:750}.badge.neutral{background:#e9ecef;color:#3d444c}.topbar .badge.neutral{background:rgba(255,255,255,.14);color:#fff}.badge.version{background:var(--red);color:#fff}
label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:750;color:#4c535c}input,select,textarea{width:100%;border:1px solid #cfd3d9;border-radius:9px;padding:10px 11px;background:#fff;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(223,35,75,.1)}textarea{resize:vertical}.sale-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px 18px}.span-2{grid-column:span 2}.span-3{grid-column:1/-1}.file-field{padding:13px;border:1px dashed #c8cdd3;border-radius:10px;background:#fafafa}.file-field small{font-weight:500;color:var(--muted)}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:17px}.form-actions #formStatus{margin-right:auto}.entry-card{border-top:4px solid var(--red)}
.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.summary-grid>div,.detail-summary>div{padding:16px;border-radius:11px;background:#f7f8f9;border:1px solid #eceef0;display:flex;flex-direction:column;gap:3px}.big-number{font-size:28px;font-weight:850;color:var(--charcoal)}.summary-grid small,.detail-summary span,.kpi small{color:var(--muted)}.currency{color:var(--red)}
.quick-filters,.date-filters,.history-filters{display:flex;gap:9px;align-items:end;flex-wrap:wrap}.chip{border:1px solid #d7dadd;background:#fff;padding:8px 12px;border-radius:999px;font-weight:700}.chip.active{background:var(--red);color:#fff;border-color:var(--red)}.date-filters label{min-width:145px}.file-button{display:inline-flex;position:relative;overflow:hidden}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}
.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.kpi{display:flex;flex-direction:column;gap:3px}.kpi span{font-size:25px;font-weight:850}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.chart-wrap{height:360px;position:relative}
.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:900px}th,td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#626a74;background:#f8f9fa;position:sticky;top:0}td.num,th.num{text-align:right;white-space:nowrap}.rank{font-weight:850;color:var(--red)}.search-input{max-width:300px}.link-button{background:none;border:0;padding:0;color:var(--red);font-weight:750;text-align:left}.mini-btn{border:1px solid #cfd3d9;background:#fff;border-radius:7px;padding:6px 8px;font-size:12px;font-weight:700;white-space:nowrap}.mini-btn.danger{color:#a51632;border-color:#e8b7c1}.actions,.attachments{display:flex;gap:6px;flex-wrap:wrap}.attachment{color:var(--red);font-weight:700;text-decoration:none;font-size:12px}.empty{text-align:center!important;color:var(--muted);padding:30px!important}.customer-cell strong{display:block}.customer-cell small{display:block;color:var(--muted)}
.login-overlay{position:fixed;inset:0;z-index:100;background:rgba(26,29,34,.9);display:grid;place-items:center;padding:20px}.login-card{width:min(390px,100%);background:#fff;padding:30px;border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,.35)}.login-logo{display:block;margin:0 auto 18px}.login-card h1{text-align:center;margin-bottom:4px}.login-card p{text-align:center;color:var(--muted)}.login-card label{margin:22px 0 14px}.error-text{color:#b51634;min-height:20px;margin-top:10px}
dialog{border:0;border-radius:15px;padding:0;width:min(850px,calc(100% - 30px));box-shadow:0 25px 70px rgba(0,0,0,.3)}dialog::backdrop{background:rgba(20,23,27,.65)}.dialog-card{padding:24px;max-height:84vh;overflow:auto}.icon-btn{border:0;background:#f0f1f3;width:34px;height:34px;border-radius:50%;font-size:22px}.detail-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}.detail-summary strong{font-size:22px}.sale-list{display:grid;gap:10px}.sale-detail{border:1px solid var(--line);border-radius:10px;padding:13px}.sale-detail header{display:flex;justify-content:space-between;gap:12px}.sale-detail p{margin:6px 0 0;color:#555d67}.toast{position:fixed;right:20px;bottom:20px;z-index:120;background:var(--charcoal);color:#fff;padding:12px 16px;border-radius:9px;opacity:0;transform:translateY(12px);pointer-events:none;transition:.2s;box-shadow:var(--shadow)}.toast.show{opacity:1;transform:none}.toast.error{background:#9f1732}.footer{text-align:center;color:var(--muted);padding:12px}
@media(max-width:900px){.topbar{padding:12px 16px}.subtitle{display:none}.container{width:min(100% - 20px,1460px)}.sale-form{grid-template-columns:1fr 1fr}.span-3{grid-column:1/-1}.summary-grid,.kpi-grid{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.chart-wrap{height:320px}}
@media(max-width:600px){.brand-logo{width:115px}.topbar{align-items:flex-start}.top-actions{justify-content:flex-end}.card{padding:16px}.sale-form{grid-template-columns:1fr}.span-2,.span-3{grid-column:1}.summary-grid,.kpi-grid,.detail-summary{grid-template-columns:1fr}.form-actions{align-items:stretch;flex-direction:column}.form-actions #formStatus{margin:0}.search-input{max-width:none}.date-filters>*{width:100%}}
@media print{body{background:#fff}.topbar,.entry-card,.filters-card,.actions,.history-filters,.top-actions,.footer{display:none!important}.container{width:100%;margin:0;gap:12px}.card{box-shadow:none;border:1px solid #bbb;break-inside:avoid}.dashboard-grid{grid-template-columns:1fr 1fr}th{position:static}}
