:root{--nav:#10213b;--nav-soft:#1b3151;--blue:#1762e8;--blue-soft:#edf3ff;--text:#18283e;--muted:#6a778b;--line:#e4eaf2;--bg:#f4f7fb;--white:#fff;--green:#128164;--red:#be3e45;--amber:#a86a08;--radius:15px;--shadow:0 8px 25px #18283e07;font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:16px;color:var(--text);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--bg)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a{color:var(--blue);text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #8cb7ff;outline-offset:2px}h1,h2,h3,p{margin:0}h1{font-size:1.85rem;font-weight:700;letter-spacing:-.045em}h2{font-size:1.03rem;letter-spacing:-.015em}h3{font-size:1rem}small{font-size:.8rem}input,select,textarea{width:100%;border:1px solid #ccd7e5;border-radius:9px;padding:11px 12px;background:#fff;color:var(--text);min-height:44px}input[readonly]{background:#f4f7fb;color:#5e6e82}textarea{min-height:85px}label{font-size:.88rem;font-weight:600;display:block;color:#43546b}label input,label select,label textarea{margin-top:7px}button{border:0;background:none;color:inherit}.btn{padding:11px 17px;border-radius:9px;min-height:44px;font-size:.9rem;font-weight:600;display:inline-flex;gap:9px;align-items:center;justify-content:center;white-space:nowrap;border:1px solid transparent}.btn.primary{background:var(--blue);color:white;box-shadow:0 3px 9px #1762e829}.btn.secondary{background:#fff;border-color:#dce4ee}.btn.ghost{background:var(--blue-soft);color:var(--blue)}.btn.danger{background:#fff1f0;color:var(--red)}.btn.small{padding:7px 11px;min-height:36px;font-size:.83rem}.muted{color:var(--muted)}.mono{font-family:Consolas,monospace;font-size:.83rem}.icon{width:20px;height:20px;display:inline-block;vertical-align:middle;flex-shrink:0}.shell{display:grid;grid-template-columns:235px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--nav);color:#acbdd4;position:fixed;inset:0 auto 0 0;width:235px;padding:28px 17px;display:flex;flex-direction:column;z-index:30}.brand{display:flex;gap:12px;align-items:center;color:#fff;padding:0 13px 30px}.brand-mark{background:var(--blue);border-radius:11px;display:grid;place-items:center;letter-spacing:-.08em;font-size:1.1rem;font-weight:800;width:43px;height:43px;flex-shrink:0}.brand strong{font-size:1.25rem;letter-spacing:.03em}.brand small{display:block;color:#91a8c9;margin-top:3px;font-size:.72rem;letter-spacing:.09em;text-transform:uppercase}.nav-label{font-size:.68rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;padding:22px 15px 10px;color:#6e88ac}.sidebar nav a{display:flex;align-items:center;gap:12px;padding:12px 14px;margin:3px 0;border-radius:9px;font-size:.88rem;color:#b2c2d7;transition:.15s}.sidebar nav a:hover{background:#ffffff09;color:#fff}.sidebar nav a.active{background:#25456a;color:#fff;box-shadow:inset 3px 0 #5e9cff}.sidebar-foot{margin-top:auto;border-top:1px solid #ffffff16;padding:20px 13px 0;line-height:1.7;font-size:.77rem}.sidebar-foot span{display:block}.main{grid-column:2;min-width:0}.topbar{height:79px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;background:#fff;border-bottom:1px solid var(--line)}.top-left{display:flex;align-items:center;gap:12px;font-size:.86rem;color:var(--muted)}.top-right{display:flex;gap:16px;align-items:center}.local-label{padding:6px 10px;border-radius:6px;background:#f0f5fa;font-size:.75rem;color:#63768f}.avatar{background:#e8f0ff;color:var(--blue);font-size:.85rem;font-weight:700;width:36px;height:36px;border-radius:50%;display:grid;place-items:center}.user-name{font-size:.82rem}.user-name small{display:block;color:var(--muted);margin-top:2px}.mobile-menu{display:none}.content{padding:32px 34px 50px;max-width:1600px;margin:auto}.page-head{display:flex;gap:18px;justify-content:space-between;align-items:center;margin-bottom:28px}.eyebrow{font-size:.7rem;letter-spacing:.13em;font-weight:700;color:var(--blue);text-transform:uppercase;margin-bottom:9px}.page-head p{color:var(--muted);margin-top:8px;font-size:.9rem;line-height:1.5}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:24px}.metric{background:white;padding:23px;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);position:relative}.metric-top{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#607087;font-size:.82rem}.metric-top .icon{color:var(--blue);background:var(--blue-soft);padding:7px;box-sizing:content-box;border-radius:9px}.metric-value{font-size:1.72rem;font-weight:700;letter-spacing:-.04em;margin:15px 0 9px;white-space:nowrap}.metric-foot{font-size:.77rem;color:var(--muted)}.metric.emphasis{background:var(--nav);color:#fff;border-color:var(--nav)}.metric.emphasis .metric-top,.metric.emphasis .metric-foot{color:#b3c6e2}.metric.emphasis .icon{background:#ffffff13;color:#8ebcff}.two-col{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:24px;margin-bottom:24px}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;margin-bottom:24px}.two-col .panel{margin:0}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:21px 23px;border-bottom:1px solid #edf1f6}.panel-head p{font-size:.8rem;color:var(--muted);margin-top:5px}.panel-body{padding:22px 23px}.badge{display:inline-flex;border-radius:6px;padding:5px 8px;font-size:.74rem;line-height:1.25;background:#eef3f8;color:#65758a;white-space:nowrap}.badge.good{background:#eaf7f1;color:#147854}.badge.warn{background:#fff5e2;color:#976510}.badge.bad{background:#fff0ed;color:#af4740}.badge.blue{background:var(--blue-soft);color:var(--blue)}.table-wrap{overflow-x:auto;width:100%}table{border-collapse:collapse;width:100%;text-align:left;font-size:.84rem}th{font-size:.68rem;text-transform:uppercase;letter-spacing:.065em;color:#7a879a;background:#f9fbfd;font-weight:600;padding:13px 20px;white-space:nowrap}td{padding:16px 20px;border-bottom:1px solid #edf1f6;vertical-align:middle}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafcff}td strong{font-size:.85rem;font-weight:600;display:block}td small{display:block;margin-top:4px;color:#8691a1;font-size:.74rem}.numeric{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.empty{padding:42px 22px;text-align:center;color:var(--muted);font-size:.9rem;line-height:1.7}.empty .icon{width:32px;height:32px;margin-bottom:10px;color:#90a5c1}.toolbar{padding:18px 22px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line)}.search{position:relative;max-width:440px;flex:1}.search .icon{position:absolute;left:12px;top:12px;color:#8292a7}.search input{padding-left:41px;background:#f9fbfe}.toolbar select{width:auto;max-width:220px}.bar-row{margin:0 0 21px}.bar-label{display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:.82rem;margin-bottom:9px}.bar-label span{max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track{height:7px;background:#f0f4fa;border-radius:5px;overflow:hidden}.bar-fill{height:100%;border-radius:5px;background:var(--blue)}.unit-grid{display:flex;gap:12px;flex-wrap:wrap}.unit-chip{flex:1;min-width:82px;padding:14px 16px;border-radius:10px;background:#f6f9fd}.unit-chip strong{display:block;font-size:1.35rem;margin-bottom:4px}.unit-chip small{color:var(--muted);font-size:.74rem}.notice{padding:14px 17px;background:#fff8e9;border:1px solid #f5e2b9;border-radius:10px;color:#805d22;font-size:.85rem;line-height:1.55;margin-bottom:20px}.notice.info{background:#eef5ff;border-color:#d8e6fb;color:#36557a}.link-btn{color:var(--blue);font-size:.82rem;font-weight:600;white-space:nowrap}.shelf-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.shelf-card{padding:24px;background:#fff;border:1px solid var(--line);border-radius:14px}.shelf-address{font-size:1.45rem;font-weight:700;letter-spacing:.03em;margin:14px 0 6px}.shelf-card p{color:var(--muted);font-size:.83rem;line-height:1.6;margin:10px 0 16px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.full{grid-column:1/-1}.form-foot{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.form-section{max-width:850px}.upload-box{border:2px dashed #cfdaea;background:#f9fbff;border-radius:12px;padding:28px;text-align:center}.upload-box input{margin-top:18px;background:#fff}.upload-box p{font-size:.84rem;color:var(--muted);margin-top:9px}.upload-box .icon{color:var(--blue);width:32px;height:32px}.tabs{display:flex;gap:7px;margin-bottom:20px}.tabs button{padding:9px 15px;border-radius:8px;font-size:.88rem}.tabs button.active{background:var(--blue-soft);color:var(--blue);font-weight:600}.draft-item td{padding:10px}.draft-item input,.draft-item select{font-size:.8rem;min-width:85px;padding:8px}.draft-item .desc{min-width:220px}.draft-item .sku-select{min-width:230px}.pdf-text{white-space:pre-wrap;font-size:.83rem;line-height:1.6;max-height:300px;overflow:auto;background:#f6f8fc;padding:20px;border-radius:9px}.help{font-size:.78rem;color:var(--muted);line-height:1.6;margin-top:10px}dialog{border:0;border-radius:17px;padding:0;width:min(680px,calc(100% - 28px));max-height:90vh;box-shadow:0 24px 100px #10213b40;color:var(--text)}dialog::backdrop{background:#0d203877;backdrop-filter:blur(3px)}.modal-head{padding:22px 25px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.modal-body{padding:24px}.close{font-size:1.4rem;padding:2px 8px}.login-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:white}.login-art{background:var(--nav);color:white;padding:65px;display:flex;flex-direction:column;justify-content:space-between}.login-art .brand{padding:0}.login-art h1{font-size:3rem;line-height:1.12;max-width:480px;letter-spacing:-.055em}.login-art p{color:#9cb3d1;line-height:1.8;max-width:380px;margin-top:24px}.login-art small{color:#7893b7}.login-form{display:flex;align-items:center;justify-content:center;padding:50px}.login-form form{width:100%;max-width:400px}.login-form label{margin-top:20px}.login-form .btn{width:100%;margin-top:25px}.login-form h1{font-size:1.8rem;margin-bottom:10px}.loading{padding:80px;text-align:center;color:var(--muted)}#toast{position:fixed;bottom:25px;right:25px;z-index:100;max-width:480px;background:#17314e;color:white;padding:15px 20px;border-radius:10px;box-shadow:0 10px 40px #0003;display:none;font-size:.9rem;line-height:1.5}#toast.error{background:#9c343b}.scan-input{font-size:1.3rem;letter-spacing:.04em}.scan-result{margin-top:20px;background:var(--bg);padding:24px;border-radius:12px}.scan-result .price{font-size:2.4rem;font-weight:700;margin-top:20px;color:var(--blue)}.mini-chart{height:160px;display:flex;align-items:flex-end;gap:12px;margin-top:18px}.mini-month{flex:1;height:100%;display:flex;align-items:center;justify-content:flex-end;flex-direction:column;gap:9px}.mini-month i{width:65%;background:#1762e8;min-height:2px;border-radius:5px 5px 0 0;display:block}.mini-month span{font-size:.72rem;color:var(--muted)}.negative{color:var(--red)}.codebox{background:#f1f5fa;border-radius:9px;padding:15px;line-height:1.8;font-size:.84rem}.print-only{display:none}
@media(min-width:1600px){.content{padding-top:40px}}@media(max-width:1150px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col{grid-template-columns:1fr}.content{padding:25px}.shelf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{padding:0 25px}.page-head{align-items:flex-start}.page-head .actions{justify-content:flex-end}}
@media(max-width:780px){.shell{display:block}.sidebar{transform:translateX(-100%);transition:transform .2s}.sidebar.open{transform:translateX(0);box-shadow:20px 0 90px #0005}.main{width:100%}.mobile-menu{display:block}.topbar{height:65px;padding:0 18px}.top-left{gap:8px}.local-label,.user-name{display:none}.content{padding:22px 16px}.page-head{display:block;margin-bottom:22px}.page-head .actions{justify-content:flex-start;margin-top:19px}.metrics{gap:12px}.metric{padding:17px}.metric-value{font-size:1.5rem}.metric-top{font-size:.75rem}.metric-top .icon{width:16px;height:16px;padding:6px}.panel-head,.panel-body{padding:18px}.toolbar{padding:14px;flex-wrap:wrap}.toolbar .search{min-width:100%}.toolbar select{flex:1;max-width:none}.form-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.shelf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shelf-card{padding:18px}.login-page{grid-template-columns:1fr}.login-art{padding:28px;min-height:auto;gap:25px}.login-art h1{font-size:1.5rem}.login-art p,.login-art>small{display:none}.login-form{padding:32px 24px}.login-art .brand{padding:0}.login-art h1{display:none}.login-form form{max-width:440px}h1{font-size:1.6rem}#toast{left:16px;right:16px;bottom:16px;max-width:none}.mini-chart{gap:6px}}
@media(max-width:430px){.metric-value{font-size:1.25rem}.metric{padding:14px}.metric-top .icon{display:none}.shelf-grid{grid-template-columns:1fr}.form-grid,.form-grid.three{grid-template-columns:1fr}.actions .btn{flex:1;font-size:.82rem;padding:10px 12px}.metric-foot{font-size:.7rem}}
@media print{.sidebar,.topbar,.page-head .actions,.toolbar,.btn,#toast{display:none!important}.shell{display:block}.content{padding:0}.panel{box-shadow:none}.table-wrap{overflow:visible}th,td{padding:8px}.shelf-card{break-inside:avoid}.print-only{display:block}}

#repair-alert{margin:16px 25px 0;padding:16px 20px;border:1px solid #f2ba60;background:#fff4dd;color:#773c00;border-radius:12px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}#repair-alert[hidden]{display:none}#repair-alert span{flex:1;min-width:200px;font-size:.85rem}#repair-alert a{font-weight:700;color:inherit}.repair-late{color:#b23c17!important;font-weight:700}.repair-photo{width:100%;max-width:320px;max-height:240px;object-fit:contain;border-radius:10px;margin:12px 0}#repair-form fieldset{border:0;padding:0;margin:0;min-width:0}#repair-form textarea{width:100%;padding:12px;border:1px solid #dbe2ec;border-radius:8px;font:inherit;resize:vertical}#repair-form>fieldset>label{margin-top:14px}.repair-history{border-top:1px solid #ddd;padding:12px 0;overflow-wrap:anywhere}.sidebar nav{overflow-y:auto;min-height:0}.sidebar{height:100vh}.sidebar-foot{flex-shrink:0}@media(max-width:780px){#repair-alert{margin:12px 16px 0;padding:12px}}
#repair-alert{position:sticky;top:0;z-index:20}.sidebar nav{scrollbar-width:thin;scrollbar-color:#49607e transparent}@media print{#repair-alert{display:none!important}}

.client-check{width:20px;height:20px;min-height:20px}#client-count{padding:12px 0;font-weight:600}#client-upload{margin-top:22px}#client-mapping details{margin-top:16px}

#modal:has(#client-count),#modal:has(#client-mapping){width:min(1100px,calc(100vw - 32px));max-width:calc(100vw - 32px)}

#repair-camera{margin:14px 0}.camera-panel{padding:16px;margin-top:12px;background:#f4f7fb;border:1px solid #dbe2ec;border-radius:12px}.camera-panel video,.camera-panel img{width:100%;max-height:360px;object-fit:contain;border-radius:8px;background:#10233f;margin:12px 0}.camera-panel [hidden]{display:none!important}.camera-panel[hidden]{display:none}.camera-panel .actions{flex-wrap:wrap}.camera-status{margin-bottom:10px}.camera-selector{margin-top:10px}
:root .fiscal-key{overflow-wrap:anywhere;max-width:390px;font-size:12px}
.fiscal-ack{display:flex;align-items:flex-start;gap:12px;line-height:1.6;margin:20px 0}
.fiscal-ack input{width:20px;min-width:20px;height:20px;margin-top:4px}
.nav-group{margin:3px 0}.nav-group summary{display:flex;align-items:center;gap:12px;min-height:44px;padding:12px 14px;border-radius:9px;cursor:pointer;font-size:.88rem;list-style:none;color:#b2c2d7}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary:hover{background:#ffffff09;color:#fff}.nav-group summary:focus-visible{outline:3px solid #8cb7ff;outline-offset:-3px}.nav-group.has-active>summary{color:#fff;background:#1b3151}.nav-chevron{margin-left:auto;font-size:1.3rem;line-height:1;transition:transform .15s}.nav-group[open]>summary .nav-chevron{transform:rotate(90deg)}.nav-submenu{margin:5px 0 9px 23px;padding-left:8px;border-left:1px solid #ffffff25}.sidebar .nav-submenu a{font-size:.81rem;padding:10px 9px;gap:8px;min-height:44px;line-height:1.4}.nav-submenu .icon{width:17px;height:17px}.sidebar nav a span,.nav-group summary span{min-width:0;overflow-wrap:anywhere}
.top-left{min-width:0}.top-left #crumb{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-left .mobile-menu{flex-shrink:0}.top-right{flex-shrink:0}
.sidebar [data-nav="settings"] .icon{width:17px;height:17px;margin-left:1.5px;margin-right:1.5px}
.brand.brand-logo{display:flex;flex-direction:column;gap:10px;align-items:center;padding:0 0 12px;flex-shrink:0}.brand-logo img{display:block;width:100%;height:auto;object-fit:contain;background:transparent;border-radius:0;padding:0}.brand-logo small{margin:0;text-align:center}.login-art .brand-logo{align-items:flex-start;max-width:330px}.login-art .brand-logo img{padding:0}.login-art .brand-logo small{align-self:center}@media(max-width:780px){.login-art .brand-logo{width:220px;margin:auto;align-items:center}}
.brand-logo .system-name{font-size:1.05rem;letter-spacing:.01em;color:#fff;align-self:center;text-align:center}.login-art .brand-logo .system-name{font-size:1.3rem}
/* Finance: consistent with the existing application, responsive and printable. */
.fin-actions{display:flex;flex-wrap:wrap;gap:6px;min-width:160px}
.fin-links{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 24px}
.fin-check{display:flex!important;align-items:flex-start;gap:10px;margin:18px 0;line-height:1.5}
.fin-check input,.fin-preview input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;margin:3px 0;accent-color:#1760ed}
.fin-parcel{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end;margin-top:12px}
.fin-preview{max-height:48vh;overflow:auto;border:1px solid #e2e8f0;border-radius:12px}
.fin-negative{color:#aa3441;font-weight:600}.fin-positive{color:#147c66;font-weight:600}
.fin-key{overflow-wrap:anywhere;max-width:380px}.fin-total{font-weight:700;background:#edf4ff}
#fin-report-result .notice{margin:16px}#fin-report-result .help{margin:16px}
#fin-balances .notice{margin:0 20px 20px}
@media(max-width:650px){.fin-parcel{grid-template-columns:1fr 1fr}.fin-parcel button{grid-column:1/-1}.fin-links .btn{width:100%}.fin-actions{min-width:120px}}
@media print{.fin-actions,.fin-links,#fin-report .form-foot{display:none!important}.fin-preview{max-height:none;overflow:visible}}
/* Fleet alerts and records share the product's responsive layout. */
#fleet-alert{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 32px;background:#fff6df;border-bottom:1px solid #f3dcad;color:#805618;font-size:13px}
#fleet-alert[hidden]{display:none}#fleet-alert span{flex:1}#fleet-alert a{font-weight:700;color:#1256c4}
.fleet-record>p{margin:12px 0}.fleet-record h3,#fleet-fuel-fields h3,#fleet-finance h3{margin:20px 0 12px}
#fleet-existing input[type=checkbox],#fleet-finance input[type=checkbox]{width:18px;height:18px;accent-color:#1760ed}
#fleet-report-results .notice{margin:16px}
@media(max-width:650px){#fleet-alert{padding:12px 16px;gap:6px}#fleet-alert span{flex-basis:100%}}
@media print{#fleet-alert{display:none!important}#fleet-report .form-foot,#fleet-existing .form-foot{display:none!important}}

.function-search-trigger{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 12px;background:var(--blue-soft);color:var(--blue);border-radius:9px;white-space:nowrap}
#function-search-dialog{width:min(620px,calc(100vw - 24px));max-height:85vh;border:1px solid #dce4ee;border-radius:16px;padding:24px;color:var(--text);box-shadow:0 24px 80px #10233f33;overflow:auto}
#function-search-dialog::backdrop{background:#10233f66}.function-search-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:12px}.function-search-field{display:flex;gap:10px;align-items:center;margin-top:8px}.function-search-field input{min-width:0}#function-search-results{max-height:45vh;overflow:auto;margin:12px 0}.function-search-result{display:flex;align-items:center;gap:12px;padding:12px;border-radius:9px;color:var(--text);border:1px solid transparent}.function-search-result:hover,.function-search-result:focus{background:var(--blue-soft);border-color:#b8d2fc}.function-search-result span{flex:1}.function-search-result small{display:block;color:var(--muted);margin-top:4px}.function-search-empty{padding:20px;color:var(--muted)}
@media(max-width:900px){.function-search-trigger span{display:none}.function-search-trigger{padding:10px}.top-right{gap:8px}}@media(max-width:480px){#function-search-dialog{padding:16px}.top-left #crumb{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

.draft-bottom-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin:24px 0 12px;padding-top:20px;border-top:1px solid #dce4ee}

.fin-allocation-box{margin-top:18px}.fin-allocation-row{grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;align-items:end;margin-bottom:12px}.fin-allocation-box [data-split-total]{margin-top:14px;font-weight:600}@media(max-width:600px){.fin-allocation-row{grid-template-columns:1fr}.fin-allocation-row button{justify-self:start}}

.login-art h1.login-impact{font-size:clamp(1.8rem,3vw,3rem);line-height:1.15;max-width:650px}.login-art p.login-author{margin-top:24px;font-size:1.05rem;color:#7fd8ff}

.sales-line{margin:12px 0}.sales-pre{white-space:pre-wrap;line-height:1.65;margin:16px 0}.sales-document header{display:flex;justify-content:space-between;align-items:center;gap:24px}.sales-document p{margin:14px 0}.sales-document img{object-fit:contain}.sales-document h2{margin:18px 0}
#quote-editor .form-foot,#view:has(#quote-action) .form-foot{flex-wrap:wrap;gap:10px}#quote-editor .panel{margin-top:18px}#quote-editor h3,#view:has(#quote-action) h3{margin:22px 0 12px}#view:has(#quote-action) .panel-body>h2{margin-top:24px;padding-top:18px;border-top:1px solid #dce4ee}#quote-picker{scroll-margin-top:24px;border:2px solid #bed3ff}#quote-picker input[type=number]{min-height:42px}#quote-editor textarea{min-height:100px}#quote-total{padding:18px;background:#edf4ff;border-radius:12px}
@media print{body.sales-printing #app,body.sales-printing #toast{display:none!important}body.sales-printing dialog[open]{position:static;display:block;width:100%;max-width:none;max-height:none;overflow:visible;border:0;box-shadow:none;margin:0;padding:0}body.sales-printing dialog::backdrop{display:none}body.sales-printing #modal-content>button,body.sales-printing #modal-content>h2,body.sales-printing .sales-no-print{display:none!important}body.sales-printing .sales-document{display:block;color:#000}body.sales-printing .table-wrap{overflow:visible}body.sales-printing tr{break-inside:avoid}}

#modal:has(#fleet-split-form),#modal:has(.fleet-split-detail),#modal:has(#split-finance-form){width:min(1080px,calc(100vw - 32px));max-width:1080px}#fleet-split-summary{border:1px solid #c9dcff;box-shadow:0 -3px 12px #10233f0d}

#toast[popover]{inset:auto 25px 25px auto;margin:0;border:0;max-width:min(480px,calc(100vw - 32px));max-height:40vh;overflow:auto;overflow-wrap:anywhere}#toast::backdrop{background:transparent;pointer-events:none}@media(max-width:780px){#toast[popover]{inset:auto 16px 16px 16px;max-width:none}}
/* Pricing controls follow the selected calculation and scope. */

#pricing-calc [hidden], #pricing-table-form [hidden] { display: none !important; }

/* Quote catalogue: ten visible rows with independent scrolling. */
#quote-catalog-table .table-wrap{overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;border-bottom:1px solid var(--line)}
#quote-catalog-table thead th{position:sticky;top:0;z-index:1;background:#f9fbfd}
#quote-catalog-table tbody td{padding-top:8px;padding-bottom:8px}
#quote-catalog-table tbody tr{height:62px}

/* Fiscal confirmations retain compact checkbox controls. */
#centi-form .check, #centi-preview .check, #centi-issue .check { display:flex; align-items:flex-start; gap:10px; margin:16px 0; }
#centi-form .check input, #centi-preview .check input, #centi-issue .check input { width:18px; height:18px; min-height:18px; flex:0 0 18px; margin:2px 0; padding:0; }
#centi-form h3 { margin:20px 0 12px; }

.document-indicators{display:flex;gap:9px;align-items:center}
.document-indicator{position:relative;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;border:1px solid;cursor:help}
.document-indicator.done{color:#147d4b;background:#e8f7ee;border-color:#a7dcc0}
.document-indicator.pending{color:#758091;background:#f1f3f5;border-color:#d5dae1}
.document-indicator .icon{width:18px;height:18px}
.document-indicator:focus-visible{outline:2px solid #155eef;outline-offset:3px}

button.document-indicator{cursor:pointer;padding:0}button.document-indicator:hover{filter:brightness(.95)}button.document-indicator:disabled{cursor:wait;opacity:.65}

.client-profile-link{color:inherit;text-decoration:underline;text-decoration-color:#a9bedb;text-underline-offset:3px}.client-profile-link:hover{color:#155eef}#client-edit-history{margin-top:24px}#client-edit-history .panel{margin-bottom:16px}

.client-history-metric{display:block;text-decoration:none;color:inherit}.client-history-metric .metric{height:100%}.client-history-metric:hover .metric,.client-history-metric:focus-visible .metric{border-color:#155eef;box-shadow:0 0 0 2px #155eef20}

.sales-document header.compact-company-header{display:grid;grid-template-columns:27% 1fr;gap:0;align-items:center;width:100%;border-bottom:3px solid #00b6e4;padding:3px 0 10px;break-inside:avoid}
.compact-company-logo{padding-right:18px;text-align:center}.sales-document .compact-company-logo img{width:100%;max-width:163px;max-height:102px;height:auto}
.compact-company-details{border-left:2px solid #00b6e4;padding-left:20px;color:#071747;font-size:12px;line-height:1.25}.compact-company-details strong{display:block;font-size:20px;line-height:1.2;margin-bottom:4px}.compact-company-cnpj{color:#777;margin-bottom:5px}
@media print{.compact-company-details{font-size:9pt;line-height:11pt}.compact-company-details strong{font-size:15pt}.sales-document .compact-company-logo img{max-height:76pt;max-width:122pt}}

.sales-document .compact-company-details{text-align:center;padding-right:20px}

#modal:has(#sales-approval-confirm){position:fixed;inset:0;margin:auto;width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 32px)}
#sales-approval-confirm .approval-summary{padding:16px;background:var(--bg);border:1px solid var(--line);border-radius:10px;display:grid;gap:8px;overflow-wrap:anywhere}
#sales-approval-confirm .approval-explanation{margin:18px 0;line-height:1.6}

.checkout-simple{margin-top:20px}.checkout-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:20px}.checkout-heading p{margin-top:8px}.checkout-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}.checkout-card{border:1px solid var(--line);border-radius:12px;padding:20px;margin-bottom:16px;min-width:0}.checkout-card>p{margin:10px 0 16px;line-height:1.5;color:var(--muted)}.checkout-card .actions{margin-top:12px}.checkout-parcel{border-top:1px solid var(--line);padding-top:14px;margin-top:16px}.checkout-parcel p{margin-top:6px;font-size:.85rem}.checkout-docs{display:flex;flex-wrap:wrap;gap:12px}.checkout-card .btn{white-space:normal}@media(max-width:850px){.checkout-cards{grid-template-columns:1fr}}

#withdrawal-order-list{margin-top:8px;height:132px;padding:4px}#withdrawal-order-list option{padding:8px 10px}#stock-open{align-items:start}





/* Shared action bars: equal buttons, left aligned, responsive. */
@media screen {
 .page-head{flex-direction:column;align-items:flex-start;gap:16px}
 .page-head>.actions{margin-top:0;width:100%}
 .actions,.form-foot,.fin-actions,.page-head .actions,
 #quote-editor .form-foot,#view:has(#quote-action) .form-foot{
  display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px
 }
 .actions>.btn,.form-foot>.btn,.fin-actions>.btn{
  flex:0 0 220px;width:220px;max-width:100%;height:48px;min-height:48px;
  margin:0;padding:8px 12px;font-size:.9rem;line-height:1.2;
  white-space:normal;text-align:center;justify-content:center
 }
 .fin-actions>.btn{flex-basis:140px;width:140px}
}
@media screen and (max-width:560px){
 .actions>.btn,.form-foot>.btn{flex-basis:calc((100% - 10px)/2);width:calc((100% - 10px)/2);font-size:.82rem;padding:6px 8px}
}

@media screen {
 
 
 
}

@media screen and (min-width:1000px){
 
 
 
 
 
 
}

/* Shared page headers: title left, equal action buttons right. */
@media screen {
 .page-head{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto;column-gap:24px;row-gap:8px;align-items:center;width:100%}
 .page-head>div:first-child{display:contents}
 .page-head>div:first-child>.eyebrow{grid-column:1;grid-row:1;margin:0}
 .page-head>div:first-child>h1{grid-column:1;grid-row:2;margin:0;overflow-wrap:anywhere}
 .page-head>div:first-child>p{grid-column:1;grid-row:3;margin:0}
 .page-head>.actions{grid-column:2;grid-row:2;justify-self:end;align-self:center;display:flex;flex-wrap:wrap;justify-content:flex-end;width:auto;max-width:min(680px,50vw);margin:0;gap:10px}
 .page-head>.actions>.btn{flex:0 0 220px;width:220px;height:48px;min-height:48px;margin:0;padding:8px 12px;font-size:.9rem;line-height:1.2;white-space:normal;text-align:center;justify-content:center}
}
@media screen and (max-width:780px){
 .page-head{grid-template-columns:minmax(0,1fr);row-gap:8px}
 .page-head>.actions{grid-column:1;grid-row:4;width:100%;max-width:none;margin-top:8px;justify-content:flex-end}
 .page-head>.actions>.btn{flex:0 0 calc((100% - 10px)/2);width:calc((100% - 10px)/2);font-size:.82rem}
}

#quote-editor input[name="title"],#sales-quote-form input[name="title"]{height:34px;min-height:34px;padding:6px 12px}
#quote-editor input[name="title"]::placeholder,#sales-quote-form input[name="title"]::placeholder{color:#b0b9c6;opacity:1;font-weight:400}

.checkout-simple button:disabled{cursor:default}

/* Compact quotation action row. Keep every action on one line. */
@media screen {
 #view:has(#quote-action) .panel-body>.form-foot{flex-wrap:nowrap;gap:8px;overflow-x:auto;padding-bottom:4px}
 #view:has(#quote-action) .panel-body>.form-foot>.btn{flex:1 0 auto;width:auto;max-width:none;height:40px;min-height:40px;padding:8px 10px;font-size:.78rem;white-space:nowrap}
}

#modal:has(#sales-approval-confirm){width:min(720px,calc(100vw - 32px))}#approval-payment{margin-top:14px}#approval-payment .form-grid{margin:12px 0}#approval-payment [data-plan-lines]{margin-top:16px}

.nfe-status-inline{display:flex;align-items:center;gap:12px;white-space:nowrap}
.document-indicator.rejected{color:#b42318;background:#fef3f2;border-color:#fecdca}
.document-indicator.returned{color:#946200;background:#fff8db;border-color:#efcf75}

.email-sent-indicator{display:inline-flex;align-items:center;gap:6px;color:#147d4b;white-space:nowrap}

#quote-editor textarea[data-key="description"]{min-height:44px;height:44px;resize:vertical}

/* Consistent document, payment and delivery actions in sale checkout. */
#quote-checkout .checkout-card{padding:20px;display:flex;flex-direction:column;gap:0}
#quote-checkout .checkout-card h3{font-size:16px;line-height:1.4;font-weight:700;margin:0 0 10px}
#quote-checkout .checkout-card>p{font-size:14px;line-height:1.5;margin:0 0 16px}
#quote-checkout .checkout-card>.help{font-size:12px;margin:12px 0 0}
#quote-checkout .checkout-card>.help:empty{display:none}
#quote-checkout .checkout-card .actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;align-items:stretch}
#quote-checkout .checkout-card .actions .btn{width:100%;min-width:0;max-width:none;min-height:46px;margin:0;padding:10px 12px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;line-height:1.35;text-align:center;white-space:normal;box-sizing:border-box}
#quote-checkout .checkout-cards .checkout-card>p:not(.help){min-height:42px}
#quote-checkout .checkout-simple>.panel-body>.checkout-card>.actions{max-width:620px;grid-template-columns:repeat(2,minmax(0,1fr))}
#quote-checkout .checkout-docs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 20px}
#quote-checkout .checkout-docs .fin-check{display:flex;align-items:center;gap:10px;margin:0;padding:10px 12px;background:#f8faff;border:1px solid var(--line);border-radius:8px;font-size:14px;line-height:1.4}
#quote-checkout .checkout-docs input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;min-height:0;margin:0}
#quote-checkout .checkout-parcel{padding-top:16px}
#quote-checkout .checkout-parcel p{margin-bottom:12px}
@media(min-width:851px) and (max-width:1150px){#quote-checkout .checkout-card .actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){#quote-checkout .checkout-card{padding:16px}#quote-checkout .checkout-card .actions,#quote-checkout .checkout-simple>.panel-body>.checkout-card>.actions,#quote-checkout .checkout-docs{grid-template-columns:1fr}#quote-checkout .checkout-cards .checkout-card>p:not(.help){min-height:0}}

/* Billing controls: consistent sizing and separate installment/footer actions. */
.sales-payment-schedule [data-payment-rows]{display:flex;flex-direction:column;gap:12px}
.sales-payment-schedule [data-payment-row]{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 160px;align-items:end;gap:12px}
.sales-payment-schedule [data-payment-remove],.sales-payment-schedule [data-payment-add]{width:160px;max-width:none;min-height:44px;margin:0;padding:10px 12px;font-size:14px;line-height:1.4}
.sales-payment-schedule [data-payment-add]{align-self:flex-end}
#sales-bill>.form-foot,#ops-delivery-bill>.form-foot{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}
#sales-bill>.form-foot>.btn,#ops-delivery-bill>.form-foot>.btn{width:100%;min-width:0;max-width:none;min-height:48px;margin:0;padding:12px;font-size:14px;font-weight:600;line-height:1.4;white-space:normal}
@media(max-width:600px){.sales-payment-schedule [data-payment-row]{grid-template-columns:repeat(2,minmax(0,1fr))}.sales-payment-schedule [data-payment-remove]{grid-column:2;justify-self:end}#sales-bill>.form-foot,#ops-delivery-bill>.form-foot{grid-template-columns:1fr}}

.fin-party-highlight,.fin-party-highlight a{color:var(--text);font-weight:700}.fin-party-highlight{display:block}
