:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#0e141a;--surface:#161c22;--surface-2:#202830;--surface-3:#2b353e;--line:#3e494a;--text:#dde3eb;--muted:#aeb9bd;--primary:#82d3de;--primary-strong:#0d7783;--good:#84d65a;--warn:#f3b84a;--danger:#ff8b7f}*{box-sizing:border-box}html,body{background:var(--background);min-height:100%;color:var(--text);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}.shell{grid-template-columns:260px 1fr;min-height:100vh;display:grid}.sidebar{background:#121920;border-right:1px solid #82d3de1f;height:100vh;padding:18px 12px;position:sticky;top:0}.mobile-header{display:none}.brand{color:var(--primary);align-items:center;gap:10px;padding:4px 10px 22px;font-weight:800;display:flex}.brand.compact{padding:0}.brand-mark{background:#82d3de24;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.nav-group{margin-top:18px}.nav-label{color:#758286;letter-spacing:.08em;text-transform:uppercase;padding:0 12px 7px;font-size:11px;font-weight:800}.nav-link{width:100%;min-height:40px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:9px 12px;font-size:14px;display:flex}.nav-link.active,.nav-link:hover{color:var(--text);background:#82d3de21}.mobile-menu{position:relative}.mobile-menu-button{background:var(--surface-3);min-height:38px;color:var(--text);cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-weight:800;display:inline-flex}.mobile-menu-panel{background:#121920;border:1px solid #82d3de26;border-radius:8px;width:min(320px,100vw - 24px);max-height:calc(100vh - 78px);padding:10px;position:absolute;top:calc(100% + 10px);right:0;overflow-y:auto;box-shadow:0 18px 42px #0000006b}.main{min-width:0}.topbar{z-index:3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0e141ad1;border-bottom:1px solid #82d3de1a;justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex;position:sticky;top:0}.company-switcher{width:min(260px,35vw)}.company-switcher select{min-height:38px;padding:8px 10px}.content{padding:24px}.page-title{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.eyebrow{color:var(--primary);letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:800}h1,h2,h3{letter-spacing:0;margin:0}h1{font-size:36px;line-height:1.1}.grid{gap:16px;display:grid}.stats{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1.4fr 1fr;margin-top:16px}.panel{background:var(--surface);border:1px solid #82d3de1c;border-radius:8px;padding:18px}.panel-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.filter-bar{background:var(--surface);border:1px solid #82d3de1c;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;padding:16px 18px;display:flex}.filter-field{width:min(360px,100%)}.filter-actions{align-items:center;gap:10px;display:flex}.empty-row{color:var(--muted);text-align:center;padding:22px 10px}.bank-account-panel{background:#080d1261;border:1px solid #82d3de1f;border-radius:8px;margin-bottom:16px}.supplier-edit-dialog{width:min(860px,100vw - 24px)}.supplier-dialog-tabs{display:block}.tab-toggle{opacity:0;pointer-events:none;position:absolute}.supplier-tab-strip{border-bottom:1px solid #82d3de1a;gap:6px;padding:14px 18px 0;display:flex}.supplier-tab-strip label{color:var(--muted);cursor:pointer;text-transform:none;background:#080d125c;border:1px solid #82d3de1f;border-bottom-color:#82d3de1a;border-radius:8px 8px 0 0;margin-bottom:-1px;padding:9px 13px}.data-tab:checked~.supplier-tab-strip .data-label,.bank-tab:checked~.supplier-tab-strip .bank-label{color:var(--text);background:var(--surface);border-color:#82d3de38;border-bottom-color:var(--surface)}.tab-panel{display:none}.data-tab:checked~.tab-panels .data-panel,.bank-tab:checked~.tab-panels .bank-panel{display:block}.bank-tab-body{padding-bottom:0}.bank-account-add{border-top:1px solid #82d3de1a;margin-top:14px;padding-top:14px}.bank-account-add summary{cursor:pointer;width:fit-content;list-style:none;display:inline-flex}.bank-account-add summary::-webkit-details-marker{display:none}.bank-account-add[open] summary{margin-bottom:12px}.bank-account-form{background:#080f1447;border:1px solid #82d3de1f;border-radius:8px;padding:14px}.compact-title{margin-bottom:10px}.compact-title h3{margin:0 0 4px;font-size:16px}.tab-strip{gap:8px;margin-bottom:12px;display:flex}.tab-strip span,.tab-strip strong{border:1px solid #82d3de24;border-radius:999px;padding:6px 10px;font-size:12px}.tab-strip span{color:var(--muted)}.tab-strip strong{color:#00363c;background:var(--primary)}.mini-table{margin-bottom:14px;overflow-x:auto}.mini-table table{font-size:12px}.compact-form{padding:0}.inline-form-grid{grid-template-columns:repeat(5,minmax(120px,1fr));align-items:end;gap:10px;display:grid}.stat-label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:800}.stat-value{margin-top:10px;font-size:27px;font-weight:800}.muted{color:var(--muted)}.button{color:#00363c;background:var(--primary);cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:9px 13px;font-weight:800;display:inline-flex}.button.secondary{color:var(--text);background:var(--surface-3)}.button.danger{color:#2c0603;background:var(--danger)}.table-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.confirm-copy{margin:0;line-height:1.5}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #82d3de17;padding:11px 10px}th{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.separated-table table{border-collapse:separate;border-spacing:0 10px}.separated-table th{border-bottom:0;padding-bottom:4px}.separated-table td{background:#080f1461;border-top:1px solid #82d3de1a;border-bottom:1px solid #82d3de1a}.separated-table td:first-child{border-left:4px solid #82d3dec7;border-radius:8px 0 0 8px}.separated-table td:last-child{border-right:1px solid #82d3de1a;border-radius:0 8px 8px 0}.separated-table tr:nth-child(2n) td:first-child{border-left-color:#84d65abf}.separated-table tr:nth-child(3n) td:first-child{border-left-color:#f3b84ac7}tr.contract-boundary td{border-top:2px solid #82d3de42}tr.contract-boundary td:first-child{position:relative}tr.contract-boundary td:first-child:after{content:"";background:var(--primary);border-radius:999px;width:54px;height:2px;position:absolute;top:-2px;left:10px}.contract-number-cell,.contract-distributor-cell{align-items:center;gap:8px;display:inline-flex}.contract-distributor-cell{white-space:nowrap}.contract-credit-details{display:inline-flex}.contract-credit-details summary{width:fit-content;min-height:28px;color:var(--text);cursor:pointer;background:0 0;border-radius:0;align-items:center;gap:8px;padding:0;font-size:14px;font-weight:800;line-height:1;list-style:none;display:inline-flex}.contract-credit-details summary:before{content:"+";width:24px;height:24px;color:var(--good);background:#82d3de1f;border:1px solid #84d65a52;border-radius:6px;justify-content:center;align-items:center;font-size:18px;line-height:1;display:inline-flex}.contract-credit-details[open] summary:before{content:"-"}.contract-credit-details summary::-webkit-details-marker{display:none}.contract-credit-row{display:none}.contract-parent-row:has(.contract-credit-details[open])+.contract-credit-row{display:table-row}.contract-credit-row .contract-credit-spacer{background:#080f146b;border-bottom:1px solid #82d3de14;min-height:94px;padding:0}.contract-credit-row .contract-credit-summary-cell{color:var(--text);background:#080f146b;border-bottom:1px solid #82d3de14;padding:0}.contract-credit-summary{background:#080f1452;border:1px solid #84d65a33;border-radius:8px;margin:8px 10px 10px 0;padding:10px 0 0;display:grid}.contract-credit-summary-row{grid-template-columns:minmax(86px,.9fr) minmax(96px,.9fr) minmax(130px,1fr) minmax(170px,1.2fr);align-items:center;gap:10px;min-height:28px;padding:0 10px;font-size:13px;display:grid}.contract-credit-summary-row.total{border-top:1px solid #84d65a33;margin-top:8px;font-style:italic;font-weight:900}.contract-credit-summary-row.pending-total{color:var(--warn);border-top:1px solid #f3b84a38;margin-top:8px;font-weight:900}.contract-credit-summary-row.total span{color:var(--warn);text-align:right;font-size:12px;font-style:normal}.credit-status{border-radius:999px;align-items:center;width:fit-content;min-height:24px;padding:3px 9px;font-size:12px;font-weight:900;display:inline-flex}.credit-status.paid{color:var(--good);background:#84d65a26}.credit-status.pending{color:var(--warn);background:#f3b84a24}.badge{color:var(--primary);background:#82d3de1f;border-radius:999px;align-items:center;padding:4px 9px;font-size:12px;font-weight:800;display:inline-flex}.type-pill-list,.checkbox-grid{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.check-row{background:#ffffff08;border:1px solid #82d3de24;border-radius:8px;align-items:center;gap:8px;min-height:34px;padding:6px 10px;font-size:13px;font-weight:800;display:inline-flex}.check-row input{width:16px;height:16px;accent-color:var(--primary)}.check-row.locked{opacity:.72;background:#f3b84a14;border-color:#f3b84a3d}.vehicle-plate-fields{background:#ffffff05;border:1px solid #82d3de1a;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:10px;display:grid}dialog:has(select[name=model] option[value=TRUCK]:checked) .vehicle-plate-fields{display:none}.plate-list{flex-wrap:wrap;gap:8px;display:flex}.plate-list.compact{gap:6px}.plate-chip{min-height:28px;color:var(--primary);white-space:nowrap;background:#82d3de1f;border-radius:6px;align-items:center;padding:4px 8px;font-size:12px;font-weight:800;display:inline-flex}.plate-chip-input{min-height:34px;color:var(--primary);cursor:default;background:#82d3de1f;border-color:#82d3de38;font-size:12px;font-weight:800}.plate-chip-input:focus{box-shadow:none;border-color:#82d3de57;outline:none}.editable-cell{cursor:pointer}.editable-cell:hover{color:var(--primary);background:#82d3de0f}.quick-edit-dialog{min-width:min(420px,100vw - 32px)}.vehicle-picker{gap:8px;display:grid}.vehicle-picker-row{grid-template-columns:minmax(0,1fr) 42px;gap:8px;display:grid}.vehicle-search-panel{gap:8px;display:grid}.vehicle-search-results{gap:6px;max-height:180px;display:grid;overflow-y:auto}.vehicle-search-result{width:100%;color:var(--text);cursor:pointer;text-align:left;background:#ffffff08;border:1px solid #82d3de24;border-radius:8px;gap:4px;padding:9px 10px;display:grid}.vehicle-search-result:hover{background:#82d3de1a;border-color:#82d3de6b}.vehicle-search-result span{color:var(--muted);font-size:12px}.icon-button{width:42px;min-height:42px;color:var(--primary);cursor:pointer;background:#111820;border:1px solid #82d3de29;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.icon-button.active,.icon-button:hover{background:#82d3de1f;border-color:#82d3de70}.payment-pill{white-space:nowrap;border-radius:999px;align-items:center;gap:7px;min-height:26px;padding:4px 9px;font-size:12px;font-weight:800;display:inline-flex}.payment-pill:before{content:"";width:8px;height:8px;box-shadow:0 0 0 3px color-mix(in srgb, currentColor 18%, transparent);background:currentColor;border-radius:999px}.payment-pill.paid{color:var(--good);background:#84d65a24}.payment-pill.partial{color:var(--primary);background:#82d3de24}.payment-pill.pending{color:var(--warn);background:#f3b84a24}.locked-pill{min-height:28px;color:var(--muted);white-space:nowrap;background:#aeb9bd1f;border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:800;display:inline-flex}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.check-line{color:var(--text);text-transform:none;align-items:center;gap:8px;font-size:13px;font-weight:700;display:inline-flex}.check-line input{width:auto}.permission-box{gap:12px}.permission-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;display:grid}.field{gap:6px;display:grid}.field.full{grid-column:1/-1}.field-hint{color:var(--muted);font-size:12px}.field-error{color:#ffd0cc;font-size:12px;font-weight:800}.form-error{color:#ffd0cc;background:#ff8b7f1f;border:1px solid #ff8b7f61;border-radius:8px;margin:14px 18px 0;padding:10px 12px;font-size:13px;font-weight:700}label{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}input,select,textarea{width:100%;color:var(--text);background:#111820;border:1px solid #82d3de29;border-radius:8px;padding:10px 11px}.field-invalid input,.field-invalid select,.field-invalid textarea{background:#ff8b7f14;border-color:#ff8b7fe6;box-shadow:0 0 0 3px #ff8b7f1f}textarea{resize:vertical;min-height:80px}dialog{background:var(--surface);width:min(720px,100vw - 24px);color:var(--text);border:1px solid #82d3de2e;border-radius:8px;padding:0}dialog::backdrop{background:#000000a6}.dialog-head,.dialog-foot{border-bottom:1px solid #82d3de1a;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.dialog-foot{border-top:1px solid #82d3de1a;border-bottom:0}.dialog-body{padding:18px}.login{grid-template-columns:1.25fr .85fr;min-height:100vh;display:grid}.login-art{background:linear-gradient(110deg,#0e141afa,#0e141a59),radial-gradient(circle at 72% 24%,#82d3de33,#0000 24%),linear-gradient(135deg,#1a252b 0%,#0e141a 52%,#23323b 100%);align-items:flex-end;padding:56px;display:flex}.login-card{background:var(--surface);align-content:center;padding:42px;display:grid}.login-error{color:var(--danger);background:#ff8b7f1a;border:1px solid #ff8b7f3d;border-radius:8px;padding:10px 12px;font-weight:800}@media (max-width:960px){.shell{display:block}.login{grid-template-columns:1fr}.sidebar{display:none}.mobile-header{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0e141af0;border-bottom:1px solid #82d3de1f;justify-content:space-between;align-items:center;min-height:58px;padding:10px 12px;display:flex;position:sticky;top:0}.mobile-header .nav-group{margin-top:6px}.mobile-menu-panel .company-switcher{width:100%;margin-bottom:10px}.topbar{display:none}.content{padding:14px 12px 28px}.page-title{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:14px}.page-title .button{width:100%}h1{font-size:27px}.panel{padding:14px}.panel-title{flex-direction:column;align-items:flex-start}.dashboard-grid,.stats{grid-template-columns:1fr}.stat-value{font-size:24px}.form-grid,.permission-grid{grid-template-columns:1fr}.filter-bar{flex-direction:column;align-items:stretch;padding:14px}.filter-actions,.inline-form-grid{grid-template-columns:1fr;align-items:stretch}.inline-form-grid .button{width:100%}.dialog-head,.dialog-foot{flex-direction:column;align-items:stretch}.dialog-foot .button,.dialog-head .button{width:100%}.login-art{min-height:260px;padding:28px 18px}.login-card{padding:28px 18px}}@media (max-width:640px){.table-wrap{overflow-x:visible}table,thead,tbody,tr,th,td{display:block}thead{display:none}tbody{gap:10px;display:grid}tr{background:#080f1459;border:1px solid #82d3de1a;border-radius:8px;padding:8px 10px}.separated-table tr{border-left:4px solid #82d3dec7}.separated-table tr:nth-child(2n){border-left-color:#84d65abf}.separated-table tr:nth-child(3n){border-left-color:#f3b84ac7}tr.contract-boundary{border-color:#82d3de3d;margin-top:10px;box-shadow:inset 3px 0 #82d3deb8}tr.contract-boundary td{border-top:0}tr.contract-boundary td:first-child:after{display:none}td{text-align:right;overflow-wrap:anywhere;border-bottom:1px solid #82d3de14;justify-content:space-between;gap:14px;padding:9px 0;display:flex}td:last-child{border-bottom:0}td:before{content:attr(data-label);color:var(--muted);letter-spacing:.06em;text-align:left;text-transform:uppercase;flex:0 0 42%;font-size:11px;font-weight:800}}
