:root{
  --bg:#f3f6fb;--surface:#fff;--surface-2:#f8fafc;--ink:#0d1b32;--muted:#66758c;
  --line:#e2e8f0;--primary:#1260e8;--primary-2:#0a48bc;--navy:#09111f;--navy-2:#101c2e;
  --green:#11865b;--green-bg:#e9f8f1;--orange:#d97706;--orange-bg:#fff6e8;--red:#dc3545;--red-bg:#fff0f1;
  --purple:#7c3aed;--shadow:0 12px 35px rgba(22,39,69,.09);--r:18px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}
.app-shell{min-height:100vh}.topbar{height:74px;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);position:fixed;top:0;left:0;right:0;z-index:40;display:flex;align-items:center;padding:0 28px;gap:26px}.brand,.side-brand{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none;min-width:max-content}.brand-mark{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(145deg,#0a49be,#2477ff);color:#fff;font-weight:900;box-shadow:0 8px 20px rgba(18,96,232,.25)}.brand strong,.side-brand strong{display:block;font-size:20px;letter-spacing:.6px}.brand small,.side-brand small{display:block;font-size:9px;letter-spacing:4px;color:var(--muted);margin-top:1px}.topnav{height:100%;display:flex;align-items:center;gap:5px;flex:1}.nav-link{border:0;background:transparent;color:#41516a;padding:13px 15px;border-radius:12px;font-weight:700}.nav-link.active,.nav-link:hover{color:var(--primary);background:#eef4ff}.top-actions{display:flex;align-items:center;gap:8px}.icon-btn{width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--ink);display:grid;place-items:center;font-size:20px}.icon-btn:hover{border-color:#cbd5e1;background:#f8fafc}.notification{position:relative}.notification span{position:absolute;right:-4px;top:-6px;background:var(--primary);color:white;min-width:20px;height:20px;border-radius:999px;font-size:11px;display:grid;place-items:center;border:2px solid white}.user-chip,.sidebar-user{display:flex;align-items:center;gap:10px}.user-chip>span,.sidebar-user>span{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#10213b;color:#fff;font-weight:800}.user-chip div,.sidebar-user div{display:flex;flex-direction:column}.user-chip small,.sidebar-user small{color:var(--muted);margin-top:2px}
.sidebar{position:fixed;top:74px;bottom:0;left:0;width:250px;background:linear-gradient(180deg,var(--navy),#0d1827);color:#eef6ff;padding:24px 16px;z-index:30;display:flex;flex-direction:column;box-shadow:8px 0 30px rgba(5,14,27,.05)}.side-brand{display:none;color:#fff;margin:0 6px 24px}.side-brand small{color:#9fb0c5}.sidebar nav{display:grid;gap:6px}.side-link{border:0;background:transparent;color:#cbd6e5;padding:13px 14px;border-radius:12px;text-align:left;display:flex;align-items:center;gap:12px;font-weight:650}.side-link span{width:23px;color:#91a3ba;font-size:18px}.side-link.active,.side-link:hover{background:linear-gradient(90deg,#0b58d6,#166de9);color:white}.side-link.active span{color:white}.assistant-card{margin-top:auto;border:1px solid #20314b;background:linear-gradient(160deg,#13243a,#0f1d30);border-radius:18px;padding:17px;text-align:center}.assistant-orb{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;margin:-40px auto 10px;background:radial-gradient(circle at 30% 25%,#48a1ff,#135ed9 65%,#0b2d72);box-shadow:0 0 0 7px #0d1827,0 9px 24px rgba(18,96,232,.35);font-size:21px}.assistant-card p{color:#aebbc9;font-size:12px;line-height:1.45}.sidebar-user{margin:20px 3px 0;padding-top:18px;border-top:1px solid #1d2b3f}.sidebar-user small{color:#91a3ba}.workspace{margin-left:250px;padding:98px 28px 40px;min-height:100vh}.route{display:none;max-width:1480px;margin:auto}.route.active{display:block}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}.page-head h1{margin:0;font-size:28px;letter-spacing:-.6px}.page-head p{margin:6px 0 0;color:var(--muted)}
.btn{border:0;border-radius:12px;padding:12px 16px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.18s ease}.btn-primary{background:linear-gradient(180deg,#2073f5,#0e58d9);color:#fff;box-shadow:0 8px 18px rgba(18,96,232,.22)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(18,96,232,.27)}.btn-secondary{background:#fff;border:1px solid #cfd8e4;color:#16304f}.btn-ghost{background:#f5f8fc;color:#24405f}.btn-danger{background:#fff0f1;color:#c62d3b;border:1px solid #ffd7da}.btn-sm{padding:9px 12px;border-radius:10px;font-size:13px}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.hero{min-height:300px;border-radius:22px;overflow:hidden;position:relative;box-shadow:var(--shadow);background:#0c1726;margin-bottom:18px}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity .8s ease;background-size:cover;background-position:center}.hero-slide.active{opacity:1}.hero-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,13,25,.94) 0%,rgba(4,13,25,.80) 34%,rgba(4,13,25,.24) 67%,rgba(4,13,25,.08) 100%)}.hero-content{position:relative;z-index:3;color:#fff;padding:48px 52px;max-width:650px}.hero-kicker{display:inline-flex;padding:7px 10px;background:rgba(31,111,239,.18);border:1px solid rgba(88,151,255,.28);border-radius:999px;color:#bcd6ff;font-size:12px;font-weight:800;letter-spacing:.4px;text-transform:uppercase}.hero h2{font-size:38px;line-height:1.08;margin:14px 0 12px;letter-spacing:-1px}.hero p{color:#d6deea;font-size:17px;line-height:1.55;margin:0 0 22px;max-width:560px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.hero .btn-secondary{background:rgba(7,18,34,.6);color:#fff;border-color:rgba(255,255,255,.34)}.hero-dots{position:absolute;z-index:4;left:50%;bottom:16px;transform:translateX(-50%);display:flex;gap:8px}.hero-dot{width:9px;height:9px;border-radius:50%;border:0;background:rgba(255,255,255,.62);padding:0}.hero-dot.active{background:#1971ff;width:24px;border-radius:999px}.alerts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.alert-card{background:var(--surface);border:1px solid var(--line);border-radius:15px;padding:15px 17px;display:flex;align-items:center;gap:12px;box-shadow:0 5px 18px rgba(22,39,69,.04)}.alert-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-weight:900}.alert-card.warning .alert-icon{background:var(--orange-bg);color:var(--orange)}.alert-card.danger .alert-icon{background:var(--red-bg);color:var(--red)}.alert-card.info .alert-icon{background:#edf5ff;color:var(--primary)}.alert-card b{display:block;font-size:13px}.alert-card span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.metrics{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:24px}.metric{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px;min-height:118px;box-shadow:0 5px 18px rgba(22,39,69,.04);display:flex;flex-direction:column;justify-content:space-between}.metric-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#eef5ff;color:var(--primary);font-size:18px}.metric.orange .metric-icon{background:var(--orange-bg);color:var(--orange)}.metric.green .metric-icon{background:var(--green-bg);color:var(--green)}.metric.red .metric-icon{background:var(--red-bg);color:var(--red)}.metric strong{font-size:27px;letter-spacing:-.4px}.metric small{color:var(--muted);line-height:1.25}.section-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 5px 18px rgba(22,39,69,.04);overflow:hidden}.section-head{padding:18px 18px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px}.section-head h2{font-size:19px;margin:0}.section-head p{color:var(--muted);font-size:13px;margin:4px 0 0}.vehicle-list{padding:0 12px 12px}.vehicle-row{display:grid;grid-template-columns:minmax(220px,1.4fr) 1fr 1fr 1fr auto;align-items:center;gap:12px;padding:14px;border-top:1px solid #edf1f6}.vehicle-main{display:flex;align-items:center;gap:12px;min-width:0}.car-avatar{width:68px;height:46px;border-radius:12px;background:linear-gradient(145deg,#edf3fa,#dce7f4);display:grid;place-items:center;color:#31506f;font-size:29px;flex:0 0 auto}.vehicle-main b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vehicle-main small,.cell small{display:block;color:var(--muted);margin-top:3px}.cell b{font-size:13px}.tag{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border-radius:999px;font-size:12px;font-weight:800;max-width:max-content}.tag:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.tag.blue{background:#eaf2ff;color:#1260e8}.tag.orange{background:#fff3df;color:#c66a00}.tag.green{background:#e5f7ef;color:#087b50}.tag.red{background:#ffecee;color:#c93040}.tag.purple{background:#f1ebff;color:#6f3bd2}.row-actions{display:flex;gap:8px}.toolbar{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:12px;display:flex;gap:10px;align-items:center;margin-bottom:14px}.search{position:relative;flex:1}.search input{width:100%;height:43px;border:1px solid #d7e0eb;border-radius:11px;padding:0 14px 0 40px;background:#fbfcfe;color:var(--ink);outline:none}.search:before{content:"⌕";position:absolute;left:14px;top:8px;color:#718198;font-size:20px}.search input:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:#71a4f8;box-shadow:0 0 0 3px rgba(18,96,232,.10)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.client-card,.finance-card,.catalog-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px}.client-card h3,.catalog-card h3{margin:0 0 6px}.client-card p,.catalog-card p{color:var(--muted);margin:0;font-size:13px}.client-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px;color:#40536c;font-size:12px}.finance-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.finance-card strong{font-size:28px;display:block}.finance-card span{color:var(--muted);font-size:13px}.money-positive{color:var(--green)}.money-warn{color:var(--orange)}
.form-shell{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}.form-main{display:grid;gap:14px}.form-section{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 5px 18px rgba(22,39,69,.035)}.form-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.form-section-header h2{font-size:18px;margin:0}.form-section-header small{color:var(--muted)}.fields{display:grid;grid-template-columns:repeat(12,1fr);gap:12px}.field{display:flex;flex-direction:column;gap:6px;grid-column:span 6}.field.span-12{grid-column:span 12}.field.span-8{grid-column:span 8}.field.span-4{grid-column:span 4}.field.span-3{grid-column:span 3}.field label{font-size:12px;font-weight:800;color:#40516a}.field input,.field select,.field textarea{width:100%;border:1px solid #d7e0eb;border-radius:11px;background:#fbfcfe;padding:11px 12px;color:var(--ink);outline:none}.field textarea{min-height:88px;resize:vertical}.field-inline{display:flex;gap:8px}.field-inline>*:first-child{flex:1}.smart-note{padding:11px 12px;background:#f0f6ff;border:1px solid #d6e7ff;border-radius:12px;color:#315b8f;font-size:12px}.items-table{width:100%;border-collapse:collapse}.items-table th{text-align:left;font-size:11px;color:#718198;padding:8px 7px;border-bottom:1px solid var(--line)}.items-table td{padding:8px 7px;border-bottom:1px solid #edf1f6;vertical-align:middle}.items-table input,.items-table select{width:100%;border:1px solid #d9e2ec;border-radius:9px;padding:9px 9px;background:#fbfcfe}.items-table .qty{width:74px}.items-table .price{width:120px}.items-table .remove-item{width:34px;height:34px;border:0;border-radius:9px;background:#fff0f1;color:#c62d3b}.add-line{margin-top:10px}.summary-side{position:sticky;top:92px;background:linear-gradient(180deg,#0d1b30,#0a1423);color:#fff;border-radius:19px;padding:18px;box-shadow:0 16px 38px rgba(10,20,35,.18)}.summary-side h3{margin:0 0 14px}.summary-row{display:flex;justify-content:space-between;gap:10px;padding:9px 0;color:#c3cede;border-bottom:1px solid #1e3048;font-size:13px}.summary-row strong{color:#fff}.summary-total{display:flex;justify-content:space-between;align-items:flex-end;padding:18px 0}.summary-total span{color:#aebed2}.summary-total strong{font-size:30px}.summary-actions{display:grid;gap:9px}.summary-actions .btn{width:100%}.summary-side .btn-secondary{background:#15263e;border-color:#2a4160;color:white}.sticky-mobile-actions{display:none}
.modal-backdrop{position:fixed;inset:0;background:rgba(2,8,16,.52);backdrop-filter:blur(4px);z-index:90;display:none}.modal-backdrop.open{display:block}.modal{position:fixed;z-index:100;left:50%;top:50%;transform:translate(-50%,-46%);width:min(620px,calc(100vw - 28px));max-height:min(84vh,760px);overflow:auto;background:#fff;border-radius:20px;box-shadow:0 28px 90px rgba(2,8,16,.28);display:none;opacity:0;transition:.2s ease}.modal.open{display:block;opacity:1;transform:translate(-50%,-50%)}.modal-head{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.modal-head h3{margin:0}.modal-body{padding:20px}.modal-foot{padding:14px 20px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:9px}.close-x{border:0;background:#f3f6fa;border-radius:10px;width:34px;height:34px}.payment-options{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.pay-option{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fff;text-align:left;font-weight:750}.pay-option.selected{border-color:#4b8df5;background:#eef5ff;color:#1257c8}.receipt-preview{border:1px dashed #b8c6d7;border-radius:14px;padding:18px;background:#fbfcfe}.receipt-preview h2{margin:0 0 4px}.receipt-preview .receipt-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:12px;color:#40516a;margin:12px 0}.receipt-lines{border-top:1px solid #dbe3ed;border-bottom:1px solid #dbe3ed;margin:12px 0}.receipt-line{display:flex;justify-content:space-between;padding:8px 0;font-size:13px}.receipt-total{display:flex;justify-content:space-between;font-weight:900;font-size:18px}