@font-face{font-family:A;src:url('/assets/fonts/archivo-latin-800-normal.woff2')}@font-face{font-family:M;src:url('/assets/fonts/manrope-latin-400-normal.woff2')}@font-face{font-family:M;src:url('/assets/fonts/manrope-latin-800-normal.woff2');font-weight:800}:root{--r:#e4131c;--b:#0a0a0b;--bone:#f5f5f3;--card:#fff;--muted:#77777f;--line:#e5e5e2;--ok:#168447;--warn:#a76b00}*{box-sizing:border-box}body{margin:0;background:var(--bone);color:var(--b);font:14px M,system-ui;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}#login{min-height:100vh;background:var(--b);display:grid;place-items:center;padding:24px}.login-card{width:min(390px,100%);color:#fff;text-align:center}.login-card img{width:210px;margin-bottom:35px}.login-card h1{font:800 25px A}.userpick{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.userpick button{border:1px solid #333;background:#171719;color:#fff;border-radius:14px;padding:13px 5px;font-weight:800}.userpick button.on{border-color:var(--r);background:#2a1113}.dots{height:50px;display:flex;justify-content:center;align-items:center;gap:15px}.dots i{width:13px;height:13px;border:2px solid #777;border-radius:50%}.dots i.on{background:var(--r);border-color:var(--r)}.pad{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:300px;margin:auto}.pad button{height:64px;border-radius:16px;border:1px solid #333;background:#18181b;color:#fff;font:800 24px A}.pad button:active{background:var(--r)}.login-err{height:24px;color:#ff777c;font-weight:800;margin-top:12px}#app{min-height:100vh}aside{position:fixed;inset:0 auto 0 0;width:245px;background:var(--b);padding:24px 14px;display:flex;flex-direction:column;z-index:10}aside>img{width:170px;margin:5px 12px 28px}nav{display:grid;gap:4px}.navbtn,.logout{border:0;background:transparent;color:#a9a9ad;text-align:left;border-radius:11px;padding:12px 14px;font-weight:800}.navbtn.on{background:var(--r);color:#fff}.logout{margin-top:auto}main{margin-left:245px;min-height:100vh;padding:26px 32px 60px;max-width:1600px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}header small{color:var(--r);font-weight:800;letter-spacing:.15em}h1,h2,h3{font-family:A;margin:0}.avatar{width:43px;height:43px;border:0;border-radius:50%;background:var(--b);color:#fff;font-weight:800}.actions,.filters{display:flex;gap:9px;flex-wrap:wrap}.btn{border:0;border-radius:11px;background:var(--b);color:#fff;padding:12px 16px;font-weight:800;min-height:44px}.btn.red{background:var(--r)}.btn.light{background:#e9e9e6;color:var(--b)}.btn.sm{padding:8px 11px;min-height:36px;font-size:12px}.topline{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.cards{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:13px;margin-bottom:18px}.kpi,.panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}.kpi strong{font:800 25px A;display:block}.kpi span{color:var(--muted);font-size:11px;text-transform:uppercase;font-weight:800;letter-spacing:.08em}.panel{margin-bottom:15px}.panel h3{margin-bottom:14px}.split{display:grid;grid-template-columns:1fr 1fr;gap:15px}.filters{margin-bottom:14px}.filters input,.filters select,.field input,.field select,.field textarea{border:1px solid #d5d5d2;background:#fff;border-radius:11px;padding:11px 12px;min-height:44px}.filters input{min-width:240px}.list{display:grid;gap:9px}.row{border:1px solid var(--line);border-radius:13px;padding:13px;display:grid;grid-template-columns:1.4fr 1fr 1fr auto;align-items:center;gap:10px}.row small{color:var(--muted)}.tag{display:inline-block;padding:4px 8px;border-radius:99px;background:#eee;font-size:10px;text-transform:uppercase;font-weight:800}.tag.new,.tag.sent{background:#fee5e6;color:#b30e15}.tag.paid,.tag.accepted,.tag.won{background:#dcf7e8;color:#086d37}.tag.overdue,.tag.rejected,.tag.lost{background:#111;color:#fff}.modal{display:none;position:fixed;inset:0;background:#000a;z-index:50;padding:20px;overflow:auto}.modal.open{display:grid;place-items:start center}.sheet{width:min(920px,100%);margin:20px auto;background:var(--bone);border-radius:20px;padding:24px}.sheet h2{margin-bottom:18px}.grid2,.grid3{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.grid3{grid-template-columns:repeat(3,1fr)}.field{margin-bottom:12px}.field label{display:block;font-size:11px;font-weight:800;text-transform:uppercase;color:#666;margin:0 0 5px}.field input,.field select,.field textarea{width:100%}.editor{min-height:115px;padding:12px;border:1px solid #d5d5d2;background:#fff;border-radius:11px;outline:none}.warranty-panel{margin:18px 0;padding:16px;border:1px solid #d6d6d1;border-left:5px solid var(--r);border-radius:14px;background:#fff}.warranty-panel summary{cursor:pointer;font:800 18px A}.warranty-panel summary span{display:block;margin-top:4px;color:var(--r);font:800 11px M;text-transform:uppercase;letter-spacing:.05em}.warranty-controls{display:flex;gap:18px;align-items:center;justify-content:space-between;margin:16px 0;padding:12px;background:var(--bone);border-radius:10px;font-weight:800}.warranty-controls select{margin-left:6px;padding:8px;border:1px solid #ccc;border-radius:8px}.warranty-editor{min-height:260px;line-height:1.55}.warranty-editor h3{color:var(--r);font-size:18px}.warranty-editor h4{margin:16px 0 6px}.settings-warranty{margin:18px 0}.settings-warranty>h3{margin-bottom:6px}@media(max-width:650px){.warranty-controls{align-items:flex-start;flex-direction:column}.warranty-editor{min-height:210px}}.toolbar{display:flex;gap:5px;margin-bottom:5px}.toolbar button{border:1px solid #ddd;background:#fff;border-radius:7px;padding:7px 10px}.item{display:grid;grid-template-columns:1fr 85px 120px 40px;gap:7px;margin-bottom:8px}.item input{width:100%}.totals{text-align:right;font:800 18px A;padding:12px}.invoice-flags{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 16px}.invoice-flags label{display:flex;align-items:center;gap:9px;padding:13px;border:1px solid var(--line);border-radius:12px;background:#fff;font-weight:800}.invoice-flags label span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e4f6eb;color:var(--ok);font-size:18px}.invoice-flags label:last-child span{background:#fee5e6;color:var(--r)}.invoice-flags small{display:block;margin-left:auto;color:var(--muted);font-weight:400}.mini-check,.mini-stamp{display:inline-block;margin-left:7px;padding:3px 7px;border-radius:99px;font-size:9px;text-transform:uppercase;font-weight:800}.mini-check{background:#dcf7e8;color:#086d37}.mini-stamp{background:#fee5e6;color:#b30e15}@media(max-width:650px){.invoice-flags{grid-template-columns:1fr}}.attach-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.attach-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px}.chart{height:180px;display:flex;align-items:flex-end;gap:8px}.bar{flex:1;background:var(--r);border-radius:7px 7px 0 0;min-height:4px}.toast{position:fixed;right:20px;bottom:20px;background:#111;color:#fff;padding:13px 18px;border-radius:12px;opacity:0;z-index:80;transition:.2s}.toast.on{opacity:1}.tabbar{display:none}.empty{padding:28px;text-align:center;color:var(--muted)}@media(max-width:900px){aside{display:none}main{margin:0;padding:18px 14px 100px}header{position:sticky;top:0;background:var(--bone);z-index:5;padding:8px 0 12px}.cards{grid-template-columns:1fr 1fr}.split,.grid2,.grid3{grid-template-columns:1fr}.row{grid-template-columns:1fr auto}.row>*:nth-child(2),.row>*:nth-child(3){grid-column:1}.tabbar{position:fixed;display:flex;z-index:20;bottom:0;left:0;right:0;padding:7px 6px calc(7px + env(safe-area-inset-bottom));background:#0a0a0bf2;justify-content:flex-start;overflow-x:auto}.tabbar button{border:0;background:none;color:#aaa;font-size:10px;font-weight:800;min-width:52px;padding:7px 3px}.tabbar button span{font-size:20px;display:block}.tabbar button.on{color:#fff}.sheet{margin:0;padding:18px 14px;border-radius:18px}.modal{padding:8px}.item{grid-template-columns:1fr 65px 90px 35px}.attach-grid{grid-template-columns:repeat(2,1fr)}.topline{align-items:flex-start}.filters input{min-width:0;width:100%}.actions .btn{flex:1}.login-card{padding-bottom:env(safe-area-inset-bottom)}}@media print{aside,.tabbar,header,.actions,.filters,.toolbar,.btn{display:none!important}main{margin:0;padding:0}.panel{border:0}}
.money-stack{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.money-stack small{color:var(--muted);font-size:10px}.payment-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:99px;padding:6px 10px;font-size:10px;font-weight:800;text-transform:uppercase}.payment-badge.paid{background:#dcf7e8;color:#086d37}.payment-badge.partial{background:#fff0cc;color:#8a5700}.payment-badge.unpaid{background:#fee5e6;color:#b30e15}.invoice-payment-summary{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:10px;margin-bottom:16px;padding:15px;border-left:5px solid #777;border-radius:12px;background:#f6f6f3}.invoice-payment-summary.paid{border-color:#168447}.invoice-payment-summary.partial{border-color:#d68b00}.invoice-payment-summary.unpaid{border-color:#e4131c}.invoice-payment-summary div{display:flex;flex-direction:column;gap:4px}.invoice-payment-summary small{color:var(--muted);font-size:9px;font-weight:800}.invoice-payment-summary b{font-size:15px}.payment-history{margin-top:20px;padding-top:14px;border-top:1px solid var(--line)}.payment-row{display:grid;grid-template-columns:1fr auto;gap:4px 14px;padding:10px 0;border-bottom:1px solid var(--line)}.payment-row small{grid-column:1/-1;color:var(--muted)}@media(max-width:650px){.invoice-payment-summary{grid-template-columns:1fr}.money-stack{align-items:flex-start}}
