/* Visual da unidade: navegação lateral, painéis claros e detalhes vermelho/azul. */
:root{--background:#f1f2f6;--navy:#092457;--ink:#172c54;--line:#cbd0db;--red:#ed201c;--red-dark:#c41519}
body{background:var(--background)}
.topbar,body:has(#home:not([hidden])) .topbar{height:68px;padding:0 28px 0 88px;border-top:0;border-bottom:1px solid #d9dce4;background:#fff}
.brand,body:has(#home:not([hidden])) .brand{width:212px}
.side-nav{position:fixed;inset:0 auto 0 0;width:60px;z-index:10;display:flex;align-items:stretch;flex-direction:column;background:#f4f5f9;border-right:1px solid #d9dce4}
.side-nav button{height:58px;min-height:44px;width:100%;display:grid;place-items:center;border:0;border-bottom:1px solid #e2e4eb;background:none;color:#1d287d;position:relative}
.side-nav button:hover{background:#e6e9f3}.side-nav svg{width:22px;height:22px}
.nav-brand{height:68px;display:grid;place-items:center;color:var(--red);border-bottom:1px solid #d9dce4}.nav-brand svg{width:29px;height:29px}
#nav-logout{margin-top:auto;border-top:1px solid #e2e4eb}
body:has(#home:not([hidden])) #nav-home,body:has(#editor:not([hidden])) #nav-new,body:has(#analytics:not([hidden])) #nav-analytics{background:#e2e7f3;border-left:3px solid var(--red);color:var(--navy)}
body:has(#workspace[hidden]) .side-nav{display:none}body:has(#workspace[hidden]) .topbar{padding-left:28px}
#workspace,#workspace:has(#home:not([hidden])){width:auto;max-width:none;margin:20px 22px 0 82px;padding:20px;background:#dddde1;border-radius:5px;min-height:calc(100vh - 150px)}
.home-heading{margin:0 0 12px}.home-heading h1,.dashboard-heading h1{font-size:23px;text-transform:uppercase;letter-spacing:-.5px;font-weight:800}
.home-tools{gap:4px}.home-tools button{background:#f4f5fa;border:1px solid #c5cada;border-radius:4px;margin-left:4px}
.home-summary{border:0;padding:0;gap:14px;align-items:stretch;margin-bottom:14px}
#home .stats{display:grid;grid-template-columns:1fr 1fr;flex:2;gap:14px}
#home .stats>div{background:#fff;border:1px solid #293775;border-radius:10px;padding:16px 20px;gap:8px;flex-direction:column;align-items:stretch}
#home .stats span{order:-1;color:var(--navy);text-transform:uppercase;font-weight:800;font-size:13px;border-bottom:2px solid var(--red);padding-bottom:8px}
#home .stats strong{font-size:28px;text-align:right;line-height:1.1}
.home-shortcuts{flex:1;display:flex;flex-direction:column;justify-content:center;gap:8px;background:#fff;border:1px solid #293775;border-radius:10px;padding:12px}
.home-shortcuts .new-card,.home-shortcuts .analytics-launch{margin:0;width:100%;min-height:44px;padding:8px 13px;border-radius:4px;justify-content:center}
.home-shortcuts .new-card{background:var(--red)}.home-shortcuts .new-card:hover{background:var(--red-dark)}.home-shortcuts .analytics-launch{background:#1d287d;color:white;border-color:#1d287d}
#home>.section-heading{margin:0 0 7px}h2{font-weight:800}.section-heading h2{font-size:15px;text-transform:uppercase}
.search{border-radius:4px;border-color:#ccd1df}.search input{font-size:13px}
#home .draft-section{border-color:#b6bed2;border-radius:5px;background:#f5f6fb;margin-top:10px}
#home .records{gap:12px;margin-top:12px}.record-row{border:1px solid #283775;border-radius:10px}.record-row .record:hover{background:#f5f7fc}
#home .record{padding:15px}#home .record-main>strong{border-bottom:1px solid var(--red);padding-bottom:7px;text-transform:uppercase;font-size:13px}
#home .record-number{background:#1d287d;color:white;border-radius:3px;min-width:36px;margin-top:9px}.record-actions{background:#fafbfe;border-color:#dce0eb}
.plate{border-color:#c6cede;border-top-color:var(--navy);background:#f1f4fb}.record-meta{flex-shrink:0}
.panel{border:1px solid #293775;border-radius:10px;box-shadow:none}.primary{border-radius:4px}.secondary,.fields input,.fields select{border-radius:4px}
.metric{border:1px solid #293775;border-radius:10px}.metric:first-child{background:white}.metric:first-child strong,.metric:first-child>span{color:var(--navy)}.metric>span{text-transform:uppercase;border-top:1px solid var(--red);padding-top:8px}
.chart-heading h2,.panel-heading h2{text-transform:uppercase}.chart-panel{background:#fff}.table-scroll th{background:#eaf0fb;color:var(--navy)}.table-scroll td{border-bottom-color:#e9b5b9}
#editor{max-width:880px}.editor-heading{margin-bottom:18px}.editor-heading h1{font-size:24px}.draft-tag{background:white;border:1px solid #bac4d9}.eyebrow{display:none}
body:has(#workspace:not([hidden])) footer{margin-left:60px;padding:18px}
@media(min-width:1450px){#home .records{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){
 .topbar,body:has(#home:not([hidden])) .topbar{height:65px;padding:0 16px}.brand,body:has(#home:not([hidden])) .brand{width:min(53vw,205px)}
 .side-nav{inset:auto 0 0;width:100%;height:60px;padding-bottom:env(safe-area-inset-bottom);height:calc(60px + env(safe-area-inset-bottom));flex-direction:row;border-right:0;border-top:1px solid #c5ccdd;background:#fff}
 .side-nav .nav-brand{display:none}.side-nav button{flex:1;width:auto;height:60px;border:0!important}.side-nav button:focus-visible{outline-offset:-5px}#nav-logout{margin:0}
 body:has(#home:not([hidden])) #nav-home,body:has(#editor:not([hidden])) #nav-new,body:has(#analytics:not([hidden])) #nav-analytics{box-shadow:inset 0 3px var(--red)}
 #workspace,#workspace:has(#home:not([hidden])){margin:12px 10px 0;padding:12px;min-height:calc(100vh - 170px)}
 .home-summary{flex-direction:column;gap:10px}.home-shortcuts{flex-direction:row;padding:0;border:0;background:none;width:100%;gap:8px}.home-shortcuts>button{flex:1}
 #home .stats{width:100%;gap:10px}#home .stats>div{padding:12px;gap:8px}#home .stats span{font-size:11px}#home .stats strong{font-size:24px}
 #home .records{grid-template-columns:1fr}#home .record{padding:12px 10px}#home .record-main>strong{font-size:12px}.home-heading h1{font-size:21px}
 body:has(#workspace:not([hidden])) footer{margin-left:0;padding-bottom:80px}.toast{bottom:80px}.dashboard-heading h1{font-size:23px}.panel{padding:17px 13px}
}
#drafts-view #draft-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#drafts-view .draft-row{padding:14px;background:#fff;border:1px solid #293775;border-radius:10px}
#drafts-view .draft-row strong{display:block;padding-bottom:7px;border-bottom:1px solid var(--red);text-transform:uppercase;font-size:13px}
#drafts-view .draft-row button:last-child{color:var(--red-dark)}
.draft-storage-note{font-size:11px;color:#43516a;margin:15px 0 0}
body:has(#drafts-view:not([hidden])) #nav-drafts{background:#e2e7f3;border-left:3px solid var(--red);color:var(--navy)}
@media(max-width:760px){#drafts-view #draft-list{grid-template-columns:1fr}body:has(#drafts-view:not([hidden])) #nav-drafts{box-shadow:inset 0 3px var(--red)}}
#home .record-identity{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;border-bottom:1px solid var(--red);padding-bottom:7px}#home .record-identity strong{font-size:13px;text-transform:uppercase;white-space:normal;overflow-wrap:anywhere;min-width:0}#home .record-document{font-size:11px;font-weight:500;color:#43516a;white-space:nowrap;font-variant-numeric:tabular-nums}@media(max-width:760px){#home .record-identity strong{font-size:12px}}
.nav-brand{background:#fff}.nav-brand img{display:block;width:44px;height:44px;object-fit:contain}
.document-preview{display:inline-flex;align-items:center;gap:4px;max-width:100%;flex-wrap:wrap}.record-document{user-select:text;-webkit-user-select:text;cursor:text;white-space:nowrap;font-variant-numeric:tabular-nums}.document-preview .action-icon{color:var(--navy)}.document-preview svg{width:17px;height:17px}.table-scroll td:nth-child(3){min-width:190px}.table-scroll .record-document{font-size:11px}.record-row .record{cursor:default}

.cash-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.cash-stats .panel{padding:18px}.cash-stats strong{display:block;font-size:26px;color:#071d53}.cash-table input{min-width:110px;width:100%}.cash-table td:nth-child(3){min-width:220px}.cash-req{display:block;color:#d90818;font-weight:800}.cash-row-status{display:block;font-size:11px;max-width:220px}.cash-plate{font-weight:700;white-space:nowrap}#cash-dirty{color:#855200;font-size:13px}@media(max-width:600px){.cash-stats{grid-template-columns:1fr 1fr}.cash-stats .panel{padding:12px}.side-nav button{min-width:40px}}

.cash-table input{border:1px solid #ced6e5;border-radius:5px;padding:10px 12px;color:#071d53;background:#fff;font:inherit;box-sizing:border-box}.cash-table td:last-child{min-width:104px}

.cash-table select{padding:9px;border:1px solid #ced6e5;border-radius:5px;color:#071d53;background:#fff;width:100%;margin-bottom:6px}.cash-method-cell{min-width:230px}.cash-methods summary{cursor:pointer;font-weight:600;padding:9px;border:1px solid #ced6e5;border-radius:5px}.cash-method-choices{display:grid;gap:7px;padding:12px 0}.cash-check{display:flex;gap:8px;align-items:center;font-size:13px}.cash-table .cash-check input{min-width:0;width:16px;height:16px;padding:0;accent-color:#102a66}.cash-split-label{display:grid;grid-template-columns:1fr 100px;gap:8px;align-items:center;margin-top:8px;font-size:12px}.cash-grand-total{font-weight:800;background:#eaf0fb}.cash-table td{vertical-align:top}.cash-table td:nth-child(3){min-width:165px}.cash-table td:nth-child(4){min-width:145px}
.cash-table td>input,.cash-table td>select{display:block;max-width:100%}.cash-split input{min-width:0}.cash-method-cell{white-space:normal}.cash-table td:nth-child(4){white-space:normal}

.vehicle-plate{display:inline-flex!important;flex-direction:column;width:148px;min-width:148px;height:54px;border:2px solid #363a42;border-radius:6px;overflow:hidden;background:#fff;color:#111;box-shadow:inset 0 0 0 1px #b7bdc5;vertical-align:middle;text-align:center;line-height:1;user-select:text}.vehicle-plate-band{height:15px;display:flex;align-items:center;justify-content:space-between;background:#003bb6;color:#fff;padding:0 5px}.plate-mercosul{font-size:5px;font-weight:700;letter-spacing:0}.plate-country{font-size:9px;font-weight:800;letter-spacing:2px}.plate-flag{font-size:12px}.vehicle-plate-body{display:flex;align-items:center;padding:3px 5px;gap:3px;flex:1}.plate-br{font-size:8px;font-weight:900;align-self:flex-end;margin-bottom:2px}.vehicle-plate-code{font:900 25px/1 'Arial Narrow',Impact,monospace;letter-spacing:1px;white-space:nowrap;color:#111}.record-meta .vehicle-plate{margin-bottom:5px}.cash-value-line{display:flex;align-items:center;gap:6px;min-width:208px}.cash-value-line select{width:92px;flex:0 0 92px;margin:0}.cash-value-line input{width:110px;min-width:95px;flex:1}.cash-table td:nth-child(4){min-width:230px}.draft-row .vehicle-plate{margin-top:6px}

.vehicle-plate-code{font-size:22px;letter-spacing:.5px;flex:1;min-width:0}.plate-flag{position:relative;width:17px;height:11px;display:inline-block;background:#159447;border:1px solid #fff;border-radius:1px}.plate-flag:before{content:"";position:absolute;width:9px;height:7px;left:3px;top:1px;background:#ffdf32;transform:rotate(35deg)}.plate-flag:after{content:"";position:absolute;width:5px;height:5px;left:5px;top:2px;background:#073cb0;border-radius:50%}

.record-meta{display:flex;flex-direction:column;align-items:center;gap:5px}.record-meta .vehicle-plate{margin-bottom:0}.record-date{display:block;text-align:center;white-space:nowrap}

.record-meta{align-items:flex-start}.record-date{text-align:left;align-self:flex-start}.cash-table td{vertical-align:middle}.cash-methods{margin:0}.cash-method-trigger{display:block;width:100%;min-height:40px;text-align:left;padding:10px 12px;border:1px solid #ced6e5;border-radius:5px;background:#fff;color:#071d53;font:inherit}.cash-method-trigger:after{content:' ▾'}.cash-table input,.cash-value-line select{height:40px}.cash-payment-popover{position:fixed;inset:auto;margin:0;padding:14px;background:#fff;color:#071d53;border:1px solid #c9d2e3;border-radius:8px;box-shadow:0 8px 28px #071d5330;overflow:auto;box-sizing:border-box}.cash-payment-popover::backdrop{background:transparent}.cash-payment-popover .cash-method-choices{padding:0;gap:10px}.cash-payment-popover .cash-check{display:flex;align-items:center;gap:9px;cursor:pointer}.cash-payment-popover .cash-check input{width:17px;height:17px;min-width:17px;margin:0;accent-color:#102a66}.cash-payment-popover .cash-split input{width:100%;height:36px;padding:6px;border:1px solid #ced6e5;border-radius:4px}.cash-payment-popover>.text-button{display:block;margin:12px 0 0 auto}.cash-payment-popover .cash-split:not(:empty){border-top:1px solid #dfe5ef;margin-top:12px;padding-top:4px}
.record-date{text-align:right;align-self:flex-end}

.cash-table tr.cash-row-new>td{background:#f0f1f4}.cash-table tr.cash-row-saved>td{background:#d2f3e7;border-bottom-color:#a6d8c7}.cash-table tr.cash-row-pending>td{background:#f1f5fc}.cash-row-saved input[readonly]{background:transparent;border-color:transparent;color:#173d27}.cash-row-saved select:disabled,.cash-row-saved .cash-method-trigger:disabled{opacity:1;color:#173d27;background:#f2faf3;cursor:default}.cash-actions .action-icon{width:40px;height:40px;min-width:40px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;padding:8px;vertical-align:middle}.cash-actions .action-icon svg{width:20px;height:20px;stroke-width:1.9}.cash-main-action{background:#071d53!important;color:white!important;border:1px solid #071d53!important}.cash-erase-action{background:#fff0f1;color:#d90818;border:1px solid #edb9bf}.cash-erase-action:disabled{opacity:.35;cursor:default}.cash-row-status{margin-top:5px;min-height:14px}.cash-row-saved .cash-row-status{color:#276237;font-weight:600}

.cash-table tbody td{padding-top:24px;padding-bottom:24px}.cash-action-buttons{position:relative;display:flex;align-items:center;gap:12px;height:40px}.cash-action-buttons .action-icon{margin:0;box-sizing:border-box;flex:0 0 40px}.cash-action-buttons .cash-row-status{position:absolute;top:44px;left:0;margin:0;line-height:14px;white-space:normal}.cash-row-saved select:disabled,.cash-row-saved .cash-method-trigger:disabled{background:#eafaf4}

body,button,input,select,textarea,h1,h2,h3,.vehicle-plate-code{font-family:'Montserrat',sans-serif!important}button.brand{border:0;background:transparent;padding:0;cursor:pointer}.side-nav button.nav-brand{padding:0;border:0;background:transparent}.cash-row-status:empty{display:none}.vehicle-plate-old{background:linear-gradient(#b5b5b5,#ddd,#b5b5b5);border-color:#777;box-shadow:inset 0 0 0 2px #ccc}.vehicle-plate-old .vehicle-plate-band{background:transparent;color:#303238;height:15px;justify-content:center;border-bottom:1px solid #999;margin:2px 8px 0;padding:0}.plate-location{font-size:8px;letter-spacing:.6px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.vehicle-plate-old .vehicle-plate-body{justify-content:center;padding:0 3px}.vehicle-plate-old .vehicle-plate-code{font-size:23px;letter-spacing:1px;text-shadow:1px 1px #eee;font-weight:900}

.cash-erase-action svg{display:none!important}.cash-erase-action::after{content:'';display:block;width:20px;height:20px;background:currentColor;mask:url('/imagens/borracha.png') center/contain no-repeat;-webkit-mask:url('/imagens/borracha.png') center/contain no-repeat}

.field-title{display:flex;align-items:center;justify-content:space-between}.catalog-plus{width:25px;height:25px;padding:0;border:1px solid #ccd6e8;border-radius:5px;background:#071d53;color:white;font-size:21px;line-height:1;cursor:pointer}.cash-client-wrap{position:relative}.cash-particular{position:absolute;top:44px;left:0;display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:11px}.cash-table .cash-particular input{height:14px;width:14px;min-width:14px;margin:0;accent-color:#071d53}.cash-client-wrap>input[readonly]{background:transparent;border-color:transparent}.finance-toolbar,.finance-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.finance-filters label{display:grid;gap:6px;min-width:140px;flex:1}.finance-filters input,.finance-filters select,#finance-login input,#catalog-form input{padding:10px;border:1px solid #ccd6e8;border-radius:5px;max-width:100%;box-sizing:border-box}.finance-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:18px 0}.finance-card{border:1px solid #ccd6e8;border-radius:8px;padding:15px}.finance-card strong{display:block;font-size:24px;margin-top:8px}.finance-chart svg{width:100%;max-height:320px;min-width:460px}.finance-chart{overflow:auto;margin:14px 0}.finance-chart text{font-size:12px;fill:#071d53}.finance-chart [role=button]{cursor:pointer}.finance-chart [role=button]:focus{outline:2px solid #d90818}.finance-chart [role=button]:hover{opacity:.7}#finance-message{color:#b80018}#finance-detail{min-height:24px;font-weight:bold}.finance-note{font-size:12px;color:#576782}#finance-panel{margin-top:20px}#finance-login{display:flex;align-items:end;gap:10px;flex-wrap:wrap}#finance-login label{display:grid;gap:6px}#catalog-dialog{border:1px solid #ccd6e8;border-radius:10px;padding:24px;max-width:90vw}.dialog-actions{display:flex;gap:12px;justify-content:end;margin-top:20px}

.finance-chart svg{height:300px;width:100%;display:block}.finance-filters select,.finance-filters input{min-width:0;width:100%}.finance-toolbar{margin-bottom:14px}

.inspection-types{border:1px solid #ccd6e8;border-radius:8px;padding:14px;display:flex;flex-wrap:wrap;gap:16px}.inspection-types legend{font-weight:bold;padding:0 6px}.inspection-types label{display:flex!important;align-items:center;gap:7px}.inspection-types input[type=checkbox]{width:18px!important;height:18px;padding:0;accent-color:#071d53}.inspection-types small{flex-basis:100%;color:#576782}.analysis-table-search{margin:16px 0}.table-number-total{font-weight:bold;color:#071d53}#finance-login{display:grid;grid-template-columns:repeat(2,minmax(180px,260px));align-items:end;gap:12px}#finance-login input,#finance-login button{width:100%;height:44px;box-sizing:border-box}#finance-login label{min-width:0}@media(max-width:550px){#finance-login{grid-template-columns:minmax(0,1fr)}}

#finance-login input,#finance-login button{min-height:44px;max-height:44px}

.client-date-row{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:16px;align-items:end}.client-date-row label{min-width:0}.number-choice-row{display:grid;grid-template-columns:110px minmax(0,1fr);gap:14px;align-items:end}.number-choice-row .number-suggestions{gap:6px;align-items:center;margin:0}.number-choice-row .number-suggestions>span{flex-basis:auto;font-size:11px;margin-right:3px}.number-choice-row .number-suggestions button{min-width:32px;min-height:34px;height:34px;padding:5px 8px;font-size:12px;border-radius:5px}.number-choice-row input{height:34px;min-height:34px;padding:6px 9px;font-size:14px}.number-choice-row label{min-width:0}@media(max-width:550px){.client-date-row{grid-template-columns:minmax(0,1fr) 140px;gap:10px}.client-date-row input{min-width:0;padding-left:7px;padding-right:7px}.number-choice-row{grid-template-columns:80px minmax(0,1fr);gap:10px;align-items:start}.number-choice-row .number-suggestions{padding-top:22px}.number-choice-row .number-suggestions>span{display:none}}

#catalog-dialog{width:min(500px,calc(100vw - 32px));max-width:500px}#catalog-form>label{display:grid;gap:6px;margin:14px 0}#catalog-form>label[hidden]{display:none}#catalog-form input{width:100%;text-transform:uppercase}#catalog-preview{padding:10px 12px;background:#eaf5f0;border-radius:6px;color:#123e33;overflow-wrap:anywhere}#catalog-preview:empty{display:none}.catalog-matches{display:flex;flex-wrap:wrap;gap:6px;max-height:140px;overflow:auto}.catalog-matches button{padding:7px 10px;min-height:32px;font-size:12px}.catalog-help{font-size:12px}#catalog-error{color:#c40919}#form input[name=brand],#form input[name=model]{text-transform:uppercase}

.analysis-record-actions{display:flex;align-items:center;gap:10px;white-space:nowrap}.analysis-record-actions button[aria-label^="Excluir"]{color:#d90818;background:#fff0f2}

#duplicate-warning{display:block;color:#8a5000;background:#fff4d6;padding:8px;border-radius:5px;margin-top:6px}#duplicate-warning[hidden]{display:none}

.home-shortcuts .new-card,.home-shortcuts .analytics-launch{gap:9px}.home-shortcuts>button>svg{width:22px;height:22px}.timeline-tooltip text{font-family:inherit;font-weight:600}

.analytics-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.analytics-metrics .metric{min-width:0;padding:18px 14px}.analytics-metrics .metric strong{overflow-wrap:anywhere}@media(max-width:760px){.analytics-metrics{grid-template-columns:repeat(5,minmax(150px,1fr));overflow-x:auto;padding-bottom:8px}}
#invoices-login{display:flex;align-items:end;gap:12px;flex-wrap:wrap}#invoices-login label,#invoices-content>.panel>label{display:grid;gap:7px;margin:12px 0}#invoices-view input:not([type=checkbox]){padding:10px;border:1px solid #ccd6e8;border-radius:5px}#invoice-records{max-height:350px;overflow:auto;margin:15px 0}.invoice-record{display:flex;align-items:center;gap:14px;padding:10px;border-bottom:1px solid #dfe5ef}.invoice-record input,.invoice-confirm input{width:18px;height:18px;accent-color:#071d53}.invoice-history-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:14px 0;border-bottom:1px solid #dfe5ef}.invoice-history-row small{flex-basis:100%}.invoice-confirm{display:flex;gap:10px;align-items:center;margin:18px 0}#invoices-message{color:#9b1722}#invoices-view .panel{margin:16px 0}#invoice-defaults{background:#edf1f9;padding:12px;border-radius:6px}
/* Notas: controles compactos e alinhados ao restante do sistema. */
#invoices-login{display:grid;grid-template-columns:repeat(2,minmax(0,280px));gap:14px;align-items:end}#invoices-login[hidden]{display:none}#invoices-login label{margin:0;min-width:0;display:grid;gap:7px}#invoices-login input,#invoices-login button{width:100%;height:44px;min-height:44px;box-sizing:border-box;margin:0}
.invoice-toolbar{display:flex;justify-content:flex-end;margin-bottom:16px}.invoice-actions{display:flex;align-items:center;gap:14px}#invoices-view .invoice-icon{display:grid;place-items:center;width:36px;height:36px;min-height:36px;padding:0;border-radius:5px}#invoices-view .invoice-icon svg{width:18px;height:18px}.invoice-filters{display:grid;grid-template-columns:minmax(140px,1fr) minmax(170px,1fr) minmax(240px,2fr);gap:14px;align-items:end}.invoice-filters label{min-width:0;margin:0}.invoice-filters input,.invoice-filters select{height:42px;width:100%;box-sizing:border-box}.invoice-filters input:disabled{background:#edf1f7;color:#52627b}.invoice-icon:focus-visible{outline:2px solid #ed201c;outline-offset:3px}#invoice-editor .invoice-confirm{display:flex;align-items:center;gap:10px}#invoice-editor .invoice-confirm input{flex:0 0 18px;margin:0}#invoice-submit,#invoice-cancel{min-height:42px;margin:4px 12px 4px 0}body:has(#invoices-view:not([hidden])) #nav-invoices{background:#e2e7f3;border-left:3px solid var(--red);color:var(--navy)}
@media(max-width:760px){.invoice-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-filters .invoice-search-label{grid-column:1/-1}#invoices-login{grid-template-columns:minmax(0,1fr)}#invoices-view .invoice-icon{width:42px;height:42px;min-height:42px}.invoice-record{gap:9px;flex-wrap:wrap}}
.invoice-details{margin:18px 0;border:1px solid #ccd6e8;border-radius:6px;padding:14px}.invoice-details summary{cursor:pointer;font-weight:bold;color:#092457}.invoice-details .fields{margin-top:14px}#invoice-editor textarea,#invoice-editor select,#invoice-cancel-dialog textarea,#invoice-cancel-dialog select{width:100%;padding:10px;border:1px solid #ccd6e8;border-radius:5px;font:inherit;box-sizing:border-box;color:#092457;background:white}#invoice-editor textarea{resize:vertical;min-height:76px}#invoice-service-fields>label:first-child{grid-column:1/-1}#invoice-replacement{padding:14px;background:#fff4d6;border-radius:6px;margin:14px 0}#invoice-replacement label{display:grid;gap:7px}#invoice-cancel-dialog{border:1px solid #ccd6e8;border-radius:10px;width:520px;max-width:90vw;padding:24px}#invoice-cancel-dialog label{display:grid;gap:8px;margin:14px 0}.invoice-history-row .danger{color:#c41519;border-color:#efbcc1;background:#fff2f3}

/* Global typography: Montserrat Regular, including controls and chart labels. */
html, body, body *, body *::before, body *::after { font-family:'Montserrat',sans-serif!important; font-weight: 400 !important; font-synthesis: none; }
.invoice-summary{margin:16px 0;padding:18px;border:1px solid #ccd6e8;border-radius:6px;background:#fff}.invoice-summary h2{font-size:16px;margin:0 0 14px}.invoice-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.invoice-summary-grid div{min-width:0}.invoice-summary-grid dt{font-size:11px;color:#52627b;margin-bottom:5px}.invoice-summary-grid dd{margin:0;font-size:13px;overflow-wrap:anywhere}.invoice-summary-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:16px}.invoice-summary-actions p{margin:0;font-size:12px}.invoice-help{margin:16px 0;font-size:13px;line-height:1.65}.invoice-help summary{cursor:pointer}.invoice-record-info{display:grid;gap:4px;min-width:0}.invoice-record-info small{font-size:11px;color:#52627b}.invoice-history-row small{overflow-wrap:anywhere}@media(max-width:760px){.invoice-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:460px){.invoice-summary-grid{grid-template-columns:1fr}}

/* Preserve the original 148 x 54 px plates in the invoice list too. */
.invoice-record{display:grid;grid-template-columns:18px 148px minmax(0,1fr);align-items:center}.invoice-record>.vehicle-plate{align-self:center;height:54px}.invoice-record>.invoice-record-info{align-self:stretch;align-content:center}.invoice-record>.vehicle-plate>.vehicle-plate-band{flex-shrink:0}.invoice-record>.vehicle-plate>.vehicle-plate-body{min-height:0}@media(max-width:460px){.invoice-record{gap:8px;padding-inline:4px}.invoice-record-info{overflow-wrap:anywhere}}

/* Condensed lettering inspired by the Mercosul and older Brazilian plates. */
body .vehicle-plate .vehicle-plate-code { font-family:'Montserrat',sans-serif!important; font-weight: 700 !important; font-variant-numeric: lining-nums tabular-nums; letter-spacing: 1.2px; }
body .vehicle-plate-old .vehicle-plate-code, body .vehicle-plate-old .plate-location { font-family:'Montserrat',sans-serif!important; font-weight: 500 !important; }

/* Keep BR independent from the centered Mercosul registration code. */
.vehicle-plate:not(.vehicle-plate-old) .vehicle-plate-body { position: relative; justify-content: center; }
.vehicle-plate:not(.vehicle-plate-old) .plate-br { position: absolute; left: 5px; bottom: 3px; margin: 0; }
.vehicle-plate:not(.vehicle-plate-old) .vehicle-plate-code { flex: 0 1 auto; text-align: center; }

.invoice-template-form{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.invoice-template-form h3{font-size:16px}.invoice-template-form>p{font-size:12px;line-height:1.6}.invoice-template-form>.primary{margin-right:12px}.invoice-template-form .invoice-details{background:var(--background)}

.invoice-selection{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:14px}.invoice-selection label{display:flex;align-items:center;gap:8px;font-size:13px}.invoice-selection input{width:18px;height:18px;accent-color:var(--navy)}.invoice-selection span{font-size:12px;color:var(--muted)}
.table-tools{display:flex;align-items:end;gap:16px;margin:16px 0}.table-tools .search{flex:1;margin:0}.table-tools .chart-controls{margin:0;flex:0 0 230px}.table-tools .chart-controls label{width:100%}.table-tools select{width:100%}#invoice-records{max-height:560px}.invoice-table{min-width:1000px;width:100%;border-collapse:collapse}.invoice-table th,.invoice-table td{padding:14px 12px;text-align:left;border-bottom:1px solid #dfe5ef;font-size:12px}.invoice-table th{background:#edf1f9;position:sticky;top:0;z-index:1}.invoice-table input[type=checkbox]{width:18px;height:18px;accent-color:#071d53}.invoice-table td:nth-child(7){white-space:nowrap}.invoice-table .vehicle-plate{width:148px;height:54px}#invoice-save-prepared{margin-right:12px}input[name=value][readonly]{background:#f2f5fa;cursor:default}@media(max-width:640px){.table-tools{flex-wrap:wrap}.table-tools .search,.table-tools .chart-controls{flex-basis:100%}}

.invoice-table td:last-child button{white-space:nowrap}.invoice-table{min-width:1180px}
#invoice-records .invoice-table{min-width:1180px}#invoice-records .invoice-table td{overflow-wrap:normal;word-break:normal}#invoice-records .invoice-table td:nth-child(2),#invoice-records .invoice-table td:nth-child(4){white-space:nowrap}
.invoice-history-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px}.invoice-history-info{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;min-width:0}.invoice-history-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-left:auto}.invoice-history-actions button{white-space:nowrap}#invoice-review-panel>summary{cursor:pointer;font-size:18px;color:var(--navy)}.invoice-review-body{padding-top:18px}.invoice-details .fields>.invoice-field-wide{grid-column:1/-1}#invoices-view .fields textarea{display:block;width:100%;max-width:100%;min-width:0;min-height:108px;box-sizing:border-box;margin-top:8px;padding:12px;border:1px solid #ccd6e8;border-radius:5px;background:#fff;color:#092457;line-height:1.5;resize:vertical;vertical-align:top}#invoices-view .fields textarea:focus{outline:0;border-color:var(--navy);box-shadow:0 0 0 3px #071d5310}@media(max-width:760px){.invoice-history-row{grid-template-columns:minmax(0,1fr)}.invoice-history-actions{width:100%;flex-wrap:wrap}}
#invoice-records .invoice-table tbody tr:not([data-invoice-status=prepared]):not([data-invoice-status=authorized]):has(input[type=checkbox]:checked)>td,.invoice-history-row.invoice-selected:not([data-invoice-status=prepared]):not([data-invoice-status=authorized]){background:#fff4d6;border-bottom-color:#e6d39a}
#invoice-records .invoice-table tbody tr[data-invoice-status=authorized]>td,.invoice-history-row[data-invoice-status=authorized]{background:#d2f3e7;border-bottom-color:#a6d8c7}
.invoice-history-row.invoice-selected,.invoice-history-row[data-invoice-status=authorized]{padding-inline:14px;border-radius:6px}

#invoice-records .invoice-table tbody tr[data-invoice-status=prepared]>td,.invoice-history-row[data-invoice-status=prepared]{background:#eaf0fb;border-bottom-color:#bdcfe9}
.invoice-history-row[data-invoice-status=prepared]{padding-inline:14px;border-radius:6px}
.site-footer,body:has(#workspace:not([hidden])) .site-footer{margin:24px 22px 0 82px;padding:0;border-top:1px solid #cbd0db;color:#52627c;text-align:left;letter-spacing:0}.footer-content{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0}.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand img{display:block;object-fit:contain}.footer-brand>div{display:grid;gap:4px}.footer-brand strong{font-size:14px;color:var(--navy)}.site-footer span{padding:0;color:inherit}.footer-brand span{font-size:11px}.footer-credit{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:11px}.footer-credit a{display:inline-flex;align-items:center;gap:4px;color:var(--navy);text-decoration:none;border-bottom:1px solid #b7c3d6;padding:3px 0}.footer-credit a:hover{color:var(--red);border-color:var(--red)}.footer-credit a:focus-visible{outline:2px solid var(--navy);outline-offset:5px;border-radius:2px}.footer-credit svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.7}.footer-test-notice{margin:0;padding:10px 0 16px;border-top:1px solid #dfe3eb;font-size:10px;line-height:1.6;color:#627089}body:has(#workspace[hidden]) .site-footer{margin-left:22px}@media(max-width:760px){.site-footer,body:has(#workspace:not([hidden])) .site-footer{margin:20px 22px 0;padding:0 0 calc(80px + env(safe-area-inset-bottom))}.footer-content{flex-wrap:wrap;gap:16px;padding:20px 0}.footer-credit{margin-left:auto}}@media(max-width:420px){.footer-content{flex-direction:column;align-items:flex-start}.footer-credit{margin-left:0}}

/* Shared warning appearance: white card, red left rule and pale blue surroundings. */
:is(#confirm,#invoice-cancel-dialog,#catalog-dialog){background:#fff;border:0;border-left:4px solid var(--red);border-radius:12px;padding:24px;color:var(--navy);box-shadow:0 18px 60px #09245726;max-height:calc(100dvh - 40px);overflow:auto}
dialog::backdrop{background:rgba(173,194,229,.7)}
:is(#confirm,#invoice-cancel-dialog,#catalog-dialog) h2{font-size:16px;line-height:1.5}
:is(#confirm,#invoice-cancel-dialog,#catalog-dialog) p{line-height:1.65;color:#52627c;overflow-wrap:anywhere}
:is(.form-error,#invoices-message,#finance-message,#catalog-error):not(:empty){background:#fff;color:var(--navy);border:0;border-left:4px solid var(--red);border-radius:6px;padding:14px 16px;margin:18px 6px;font-size:12px;line-height:1.65;box-shadow:0 0 0 6px #eaf0fb;overflow-wrap:anywhere}
.toast{background:#fff;color:var(--navy);border:0;border-left:4px solid var(--red);border-radius:8px;line-height:1.6;box-shadow:0 0 0 6px #eaf0fb,0 10px 32px #09245726}

/* Invoice history follows the same table layout as inspection selection. */
#invoice-history .invoice-history-row{display:table-row;border-radius:0;padding:0}#invoice-history .invoice-history-row>td{border-radius:0}#invoice-history .invoice-history-actions{flex-wrap:nowrap;justify-content:flex-end;width:auto}#invoice-history .invoice-history-status>*{display:block;margin:3px 0;font-size:11px;line-height:1.5}#invoice-history .invoice-history-status{min-width:210px}#invoice-history .invoice-history-status small{max-width:330px}#invoice-history .invoice-table{min-width:1400px}#invoice-history .invoice-table td{overflow-wrap:normal}#invoice-history .invoice-table td:first-child,#invoice-history .invoice-table td:nth-child(3){white-space:nowrap}
#invoices-view .invoice-filters{display:grid;grid-template-columns:minmax(130px,1fr) minmax(160px,1fr) minmax(200px,2fr) auto;align-items:end}#invoices-view .invoice-filters .invoice-actions{gap:10px;padding-bottom:0}#invoices-view .invoice-filters .invoice-icon{width:42px;height:42px;min-height:42px}
:is(#confirm,#invoice-cancel-dialog,#catalog-dialog),.toast,:is(.form-error,#invoices-message,#finance-message,#catalog-error):not(:empty){border-radius:0}
@media(max-width:760px){#invoices-view .invoice-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}#invoices-view .invoice-filters>label:first-child{grid-column:1/2}#invoices-view .invoice-filters>label:nth-child(2){grid-column:2/4}#invoices-view .invoice-filters .invoice-search-label{grid-column:1/3}#invoices-view .invoice-filters .invoice-actions{grid-column:3/4}}
#invoice-history{max-height:560px}#invoice-history .invoice-history-status{white-space:normal}#invoice-history .invoice-table td:nth-child(6){white-space:nowrap}
#invoice-history .invoice-table th:last-child,#invoice-history .invoice-table td:last-child{position:sticky;right:0;z-index:1;background:#fff;box-shadow:-1px 0 0 #ccd6e8}#invoice-history .invoice-table th:last-child{background:#edf1f9;z-index:2}#invoice-history .invoice-table tr[data-invoice-status=prepared]>td{background:#eaf0fb}#invoice-history .invoice-table tr[data-invoice-status=authorized]>td{background:#d2f3e7}#invoice-history .invoice-table tr.invoice-selected:not([data-invoice-status=prepared]):not([data-invoice-status=authorized])>td{background:#fff4d6}

#invoices-view .invoice-selection-panel,#invoices-view .invoice-history-panel{border-radius:0}

#invoices-view .invoice-selection-panel,#invoices-view .invoice-history-panel{border-radius:10px}
.invoice-stage-heading{display:flex;align-items:flex-start;gap:12px;margin:0 0 20px}.invoice-stage-heading .invoice-step-number{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:#092457;color:#fff;font-size:15px}.invoice-stage-heading h2{font-size:19px;line-height:1.4;letter-spacing:-.3px;margin:1px 0 6px;color:var(--navy)}.invoice-stage-heading p,.invoice-stage-description{font-size:12px;line-height:1.7;color:#52627c;margin:0;max-width:850px}.municipality-name{display:block;color:#52627c;font-size:11px;line-height:1.5;margin-top:6px}#invoice-history{--invoice-actions-width:320px}#invoice-history .invoice-table th:last-child,#invoice-history .invoice-table td:last-child{width:var(--invoice-actions-width);min-width:var(--invoice-actions-width);max-width:none;box-sizing:content-box}#invoice-history .invoice-history-actions{width:var(--invoice-actions-width);max-width:100%;margin:0;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}#invoice-history .invoice-history-actions button{flex:0 0 auto;max-width:100%;white-space:normal}#invoices-view .invoice-history-status{white-space:normal}@media(max-width:760px){#invoice-history{--invoice-actions-width:200px}.invoice-stage-heading h2{font-size:17px}.invoice-stage-heading{gap:10px}.invoice-stage-heading .invoice-step-number{flex-basis:28px;width:28px;height:28px;font-size:13px}}

/* Collapsible stages with explanations available from their information icons. */
#invoices-view .invoice-stage{margin:0;color:var(--navy);font-size:inherit}.invoice-stage-toggle{display:flex;align-items:center;gap:9px;padding:0;list-style:none;cursor:pointer;position:relative}.invoice-stage-toggle::-webkit-details-marker{display:none}.invoice-stage-toggle::after{content:'⌄';margin-left:auto;font-size:22px;line-height:1;transform:rotate(-90deg);color:#52627c}.invoice-stage[open]>.invoice-stage-toggle::after{transform:none}.invoice-stage-toggle>h2,#invoice-review-panel>.invoice-stage-toggle>h2{margin:0;font-size:19px;line-height:1.4;color:var(--navy);letter-spacing:-.3px}.invoice-stage[open]>.invoice-stage-content{padding-top:20px}.invoice-info{display:inline-flex;position:relative;align-items:center;flex:0 0 auto}.invoice-info-button{display:inline-grid;place-items:center;width:21px;height:21px;min-height:21px;min-width:21px;border:1px solid #7486a6;border-radius:50%;background:#fff;color:#52627c;padding:0;font-size:13px!important;line-height:1;font-style:normal;cursor:help}.invoice-info-tooltip{display:none;position:absolute;top:calc(100% + 10px);left:0;z-index:25;width:320px;max-width:calc(100vw - 48px);padding:13px 15px;border-left:3px solid var(--red);border-radius:0;background:#fff;box-shadow:0 0 0 5px #eaf0fb,0 8px 24px #09245726;color:#52627c;font-size:12px;line-height:1.65;font-weight:400;white-space:normal;cursor:default}.invoice-info:hover>.invoice-info-tooltip,.invoice-info:focus-within>.invoice-info-tooltip{display:block}.invoice-info.invoice-info-dismissed>.invoice-info-tooltip{display:none}#invoices-view .invoice-stage:not([open])>.invoice-stage-content{display:none}.invoice-info-button:focus-visible{outline:2px solid var(--navy);outline-offset:3px}@media(max-width:760px){.invoice-stage-toggle>h2,#invoice-review-panel>.invoice-stage-toggle>h2{font-size:17px}.invoice-info-tooltip{left:auto;right:0;width:280px;max-width:calc(100vw - 48px)}}

.invoice-stage-toggle>.invoice-step-number{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:#092457;color:#fff;font-size:15px;line-height:1;margin-right:3px}@media(max-width:760px){.invoice-stage-toggle>.invoice-step-number{flex-basis:28px;width:28px;height:28px;font-size:13px}}

#invoice-review-fields{border:0;margin:0;padding:0;min-width:0}#invoice-review-empty{margin:0}

#invoices-view .invoice-summary{border:1px solid #293775;border-radius:10px;padding:24px}
#invoice-history .invoice-history-actions{gap:8px;align-items:center}#invoice-history .invoice-action-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:8px 12px;border-radius:5px;font-size:12px;line-height:1.3;white-space:nowrap;box-shadow:none}#invoice-history .invoice-action-button svg{width:16px;height:16px;stroke-width:1.8;flex:0 0 16px}#invoice-history .invoice-action-button.secondary{background:#fff;border:1px solid #bdc9df;color:#092457}#invoice-history .invoice-action-button.secondary:hover:not(:disabled){background:#f1f5fc;border-color:#8298bb}#invoice-history .invoice-action-button.primary{background:var(--red);border-color:var(--red);color:#fff}#invoice-history .invoice-action-button.primary:hover:not(:disabled){background:var(--red-dark);border-color:var(--red-dark)}#invoice-history .invoice-action-button.danger{color:#b31a22;border-color:#e9bcc0}#invoice-history .invoice-action-button:disabled{cursor:not-allowed;opacity:.4}@media(max-width:760px){#invoices-view .invoice-summary{padding:17px 13px}}

/* Site-wide headings and information icons. */
.site-title-wrap{display:flex;align-items:center;gap:9px;min-width:0;margin:0 0 14px}.home-heading>.site-title-wrap,.section-heading>.site-title-wrap,.editor-heading .site-title-wrap,.dashboard-heading .site-title-wrap,.panel-heading .site-title-wrap,.chart-heading .site-title-wrap{margin:0}.site-title-wrap>.site-title{min-width:0}body .site-title{color:var(--navy);text-transform:none!important;letter-spacing:-.3px!important;line-height:1.4!important}body h1.site-title{font-size:26px!important;margin:0!important}body h2.site-title{font-size:19px!important;margin:0!important}body h3.site-title{font-size:16px!important;margin:0!important}.site-info{display:inline-flex;align-items:center;flex:0 0 auto}.site-info-button{display:inline-grid;place-items:center;width:21px;height:21px;min-width:21px;min-height:21px;padding:0;border:1px solid #7486a6;border-radius:50%;background:#fff;color:#52627c;font-size:13px!important;line-height:1;cursor:help}.site-info-button:focus-visible{outline:2px solid var(--navy);outline-offset:3px}.site-info-tooltip{position:fixed!important;inset:auto;z-index:1000;width:320px;max-width:calc(100vw - 24px);margin:0;padding:13px 15px;border:0;border-left:3px solid var(--red);border-radius:0;background:#fff;box-shadow:0 0 0 5px #eaf0fb,0 8px 24px #09245726;color:#52627c;font-size:12px;line-height:1.65;font-weight:400;white-space:normal;overflow-wrap:anywhere;cursor:default}.site-info-tooltip:not([hidden]){display:block}.site-info-tooltip[hidden]{display:none!important}.site-title-wrap .site-info{margin-top:1px}#draft-count{display:inline-block;font-size:13px;vertical-align:middle;letter-spacing:0}#invoice-review-panel>.invoice-stage-toggle>.site-title{margin:0}@media(max-width:760px){body h1.site-title{font-size:23px!important}body h2.site-title{font-size:17px!important}body h3.site-title{font-size:15px!important}.site-title-wrap{gap:8px}.site-info-tooltip{width:280px}}

.site-subtitle{font-size:15px!important;line-height:1.5;color:var(--navy);font-weight:400!important}.site-subtitle>.site-info{margin-left:8px;vertical-align:middle}.site-title-wrap:empty{display:none}

/* Shared numbered, initially collapsed sections. */
.site-section-panel{border:1px solid #293775!important;border-radius:10px!important;padding:24px!important;min-width:0}.site-section{margin:0}.site-section-toggle>.site-title-wrap{margin:0;min-width:0}.site-section-toggle .site-title{font-size:19px!important}.site-section[open]>.site-section-toggle::after{transform:none}.site-section[open]>.site-section-body{padding-top:20px}.site-section:not([open])>.site-section-body{display:none}.site-section-body>.section-heading:empty,.site-section-body>.chart-heading:empty{display:none}.site-section-body>.section-heading,.site-section-body>.chart-heading{justify-content:flex-end}.chart-grid:has(.site-section){align-items:start}.site-section-toggle:focus-visible{outline:2px solid #293775;outline-offset:6px}@media(max-width:760px){.site-section-panel{padding:18px!important}.site-section-toggle .site-title{font-size:17px!important}}

/* Pedidos de senha centralizados. */
.password-dialog{position:fixed;inset:0;margin:auto;width:420px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto;box-sizing:border-box;padding:26px;background:#fff;border:0;border-left:4px solid var(--red);border-radius:0;color:var(--navy);box-shadow:0 12px 40px #09245726}.password-dialog::backdrop{background:rgba(173,194,229,.7)}.password-dialog>h2,.password-dialog>.site-title-wrap{margin-bottom:22px!important}.password-dialog #invoices-login,.password-dialog #finance-login{display:flex;flex-direction:column;align-items:stretch;gap:14px;margin:0;padding:0;border:0;box-shadow:none;background:transparent}.password-dialog form[hidden]{display:none!important}.password-dialog label{display:grid;gap:8px;margin:0}.password-dialog input{width:100%;box-sizing:border-box;min-height:46px}.password-dialog button{width:100%;min-height:44px;margin:0}.password-dialog .site-info-button{width:21px;min-height:21px}.password-dialog p:empty{display:none}.password-dialog h1.site-title{font-size:19px!important;text-align:left}

#home .today-search-toolbar{display:flex;align-items:center;gap:12px;margin:0 0 14px}#home .today-search-toolbar .search{flex:1;min-width:0;margin:0}#home .today-search-toolbar #export{flex:0 0 auto;margin:0}#home .site-section-body>.section-heading[hidden]{display:none!important}

/* Ferramentas de filtros e listagem sem uma linha vazia abaixo do titulo. */
#analytics .filter-panel .period-shortcuts{margin-top:0;align-items:center}#analytics #clear-filters{order:1;margin-left:auto;min-height:40px}#analytics .table-tools{margin:0 0 14px;align-items:flex-end}#analytics .table-tools .search{height:44px;box-sizing:border-box;align-self:flex-end}#analytics .table-tools .search input{height:42px;box-sizing:border-box}#analytics .table-tools .chart-controls{flex:0 0 230px;max-width:230px;align-self:flex-end}#analytics .table-tools .chart-controls label{display:block;margin:0}#analytics .table-tools select{height:44px;min-height:44px;box-sizing:border-box;margin-top:6px}#analytics #export-filtered{height:44px;min-height:44px;box-sizing:border-box;margin:0;flex:0 0 auto}#analytics .site-section-body>.section-heading[hidden]{display:none!important}@media(max-width:640px){#analytics .table-tools .chart-controls{flex:1;min-width:160px;max-width:none}#analytics .table-tools .search{flex-basis:100%}#analytics #export-filtered{flex:0 0 auto}}

/* Fontes especificas das placas, servidas junto ao site. */


body .vehicle-plate .vehicle-plate-code{font-family:'Placa Mercosul','Barlow Condensed',sans-serif!important;font-weight:400!important;letter-spacing:.8px}
body .vehicle-plate-old .vehicle-plate-code{font-family:'Placa Antiga','Oswald',sans-serif!important;font-weight:400!important;letter-spacing:1px}

/* Acoes de notas emitidas em uma unica linha, com rotulos acessiveis. */
#invoice-history tr:is([data-invoice-status=authorized],[data-invoice-status=cancelled],[data-invoice-status=substituted]) .invoice-history-actions{flex-wrap:nowrap;gap:8px}
#invoice-history tr:is([data-invoice-status=authorized],[data-invoice-status=cancelled],[data-invoice-status=substituted]) .invoice-action-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;min-width:36px;height:36px;padding:8px;white-space:nowrap}
#invoice-history tr:is([data-invoice-status=authorized],[data-invoice-status=cancelled],[data-invoice-status=substituted]) .invoice-action-button span{display:none}

/* Destaque dos dados obrigatorios no preenchimento da ficha. */
#form .fields input[required],#form #document-type{background:#fff4d6!important;border-color:#d6be79}
#form .inspection-types{background:#fff4d6;border-color:#d6be79}
#form .inspection-types legend{background:#fff4d6;border-radius:3px}
#form .fields input[required]:focus,#form #document-type:focus{border-color:var(--navy);outline-color:var(--navy)}

/* Sugestoes de valores sempre em uma unica linha. */
#form .number-choice-row .number-suggestions{display:grid;grid-template-columns:repeat(9,minmax(52px,1fr));gap:4px;flex-wrap:nowrap;min-width:0;overflow-x:auto;overflow-y:hidden;padding:2px 0;align-items:center;scrollbar-width:thin}
#form .number-choice-row .number-suggestions>span{display:none}
#form .number-choice-row .number-suggestions button{min-width:0;width:100%;height:34px;min-height:34px;padding:4px 2px;font-size:10px;letter-spacing:0;white-space:nowrap;box-sizing:border-box}
#form .number-choice-row .number-suggestions[hidden]{display:none}
@media(max-width:550px){#form .number-choice-row{align-items:end}#form .number-choice-row .number-suggestions{padding-top:2px}}

#form .number-choice-row{align-items:end}#form .number-choice-row .number-suggestions{padding:0}#form .number-choice-row input[name=value]{height:34px;min-height:34px;box-sizing:border-box;margin-bottom:0}

/* Acoes da ficha: salvar azul e descarte/exclusao vermelhos. */
#form .save-bar .action-icon,#form #delete.action-icon{width:44px;height:44px;min-width:44px;min-height:44px;padding:10px;border-radius:5px;box-sizing:border-box}
#form .save-bar button[type=submit]{background:var(--navy);color:#fff;border:1px solid var(--navy);box-shadow:none}
#form .save-bar button[type=submit]:hover:not(:disabled){background:#15376b;border-color:#15376b;color:#fff}
#form #discard,#form #delete{background:var(--red);color:#fff;border:1px solid var(--red);box-shadow:none}
#form #discard:hover:not(:disabled),#form #delete:hover:not(:disabled){background:var(--red-dark);border-color:var(--red-dark);color:#fff}

/* Aba do caixa ativa e controles financeiros alinhados. */
body:has(#cash-view:not([hidden])) #nav-cash{background:#e2e7f3;border-left:3px solid var(--red);color:var(--navy)}
#finance-panel .finance-filters{align-items:flex-end}
#finance-panel .finance-filters label{margin:0;min-width:0}
#finance-panel .finance-filters input,#finance-panel .finance-filters select,#finance-panel .finance-filters>button{height:44px;min-height:44px;box-sizing:border-box;margin:0}
#finance-panel .finance-filters>button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;white-space:nowrap}
@media(max-width:760px){body:has(#cash-view:not([hidden])) #nav-cash{box-shadow:inset 0 3px var(--red)}}

/* Marca transparente e simbolo lateral na mesma escala visual. */
.nav-brand img{width:56px;height:56px;object-fit:contain}.side-nav button.nav-brand{height:68px;min-height:68px}.brand-logo{transform:translateY(-50%)}

/* Titulos principais das secoes com Montserrat em peso leve. */
#workspace h1.site-title{font-family:'Montserrat',sans-serif!important;font-weight:400!important;font-style:normal;letter-spacing:-.02em}

/* Selecao de notas preparadas e emissao em grupo. */
.invoice-batch-toolbar{margin:0 0 14px}.invoice-batch-toolbar button{margin-left:auto}
#invoice-history input[type=checkbox]{width:18px;height:18px;accent-color:var(--navy);cursor:pointer}
#invoice-history .invoice-table td:nth-child(2),#invoice-history .invoice-table td:nth-child(4),#invoice-history .invoice-table td:nth-child(7){white-space:nowrap}
#invoice-batch-progress:not(:empty){padding:12px;border-left:3px solid var(--navy);background:#edf1f9;line-height:1.6}
@media(max-width:600px){.invoice-batch-toolbar button{width:100%;margin-left:0}}

/* Confirmacao fiscal pendente: destaque vermelho ate marcar a caixa. */
#invoice-editor .invoice-confirm:has(#invoice-tax-confirm:not(:checked):not(:disabled)){color:#b31a22}
#invoice-tax-confirm:not(:checked):not(:disabled){outline:2px solid #ed201c;outline-offset:2px;animation:confirmacao-fiscal-pendente 1.4s ease-in-out infinite}
@keyframes confirmacao-fiscal-pendente{0%,100%{outline-color:#ed201c;box-shadow:0 0 0 3px #ed201c18}50%{outline-color:#ed201c55;box-shadow:0 0 0 7px #ed201c00}}


/* Legendas permanecem visiveis ao lado dos titulos das etapas de notas. */
.invoice-color-legend{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px 13px;margin-left:14px;color:#52627c;font-size:11px;font-weight:400;line-height:1.4}
.invoice-legend-item{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.invoice-legend-swatch{display:inline-block;flex:0 0 11px;width:11px;height:11px;border:1px solid;box-sizing:border-box}.invoice-legend-swatch.selected{background:#fff4d6;border-color:#d8bb63}.invoice-legend-swatch.prepared{background:#eaf0fb;border-color:#8ca6cf}.invoice-legend-swatch.authorized{background:#d2f3e7;border-color:#78b9a0}
.invoice-stage-toggle:has(.invoice-color-legend){flex-wrap:wrap}
@media(max-width:850px){.invoice-color-legend{order:3;flex-basis:calc(100% - 40px);margin:3px 0 0 40px}.invoice-stage-toggle:has(.invoice-color-legend)::after{order:2}.invoice-stage-toggle:has(.invoice-color-legend)>h2{flex:1}}

/* Emissao em verde, com acoes de notas somente por icones. */
#invoices-view .invoice-icon-only{display:inline-flex;align-items:center;justify-content:center;width:42px;min-width:42px;height:42px;min-height:42px;flex:0 0 42px;padding:10px;line-height:1;box-sizing:border-box}
#invoices-view .invoice-icon-only svg{width:20px;height:20px;flex:0 0 20px}
#invoices-view button.invoice-emit-button{background:#198754!important;border-color:#198754!important;color:#fff!important}
#invoices-view button.invoice-emit-button:hover:not(:disabled){background:#157347!important;border-color:#157347!important}
.invoice-emit-button.brilho-botao{--brilho-base:#146c43;--brilho-meio:#198754;--brilho-luz:#45aa7d;--brilho-sombra:#19875433}
#invoices-view #invoice-emit-selected{width:42px;min-width:42px;margin-left:auto}
#invoice-history{--invoice-actions-width:132px}
#invoice-history .invoice-history-actions{flex-wrap:nowrap}
#invoice-history .invoice-action-button{width:36px;min-width:36px;height:36px;min-height:36px;flex:0 0 36px;padding:8px}
#invoice-history .invoice-action-button svg{width:18px;height:18px;flex-basis:18px}

/* Abrir/recolher: mesmo icone animado em todas as secoes e subtopicos. */
summary.site-expand-summary{display:flex;align-items:center;gap:9px;list-style:none;cursor:pointer}
summary.site-expand-summary::marker{content:""}summary.site-expand-summary::-webkit-details-marker{display:none}
summary.site-expand-summary::after{content:none!important;display:none!important}
.site-expand-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;margin-left:auto;border:1px solid #ccd6e8;border-radius:4px;background:#fff;color:#092457;box-sizing:border-box;transition:background-color .22s ease,border-color .22s ease,transform .22s ease}
.site-expand-icon svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round}
.site-expand-vertical{transform-origin:12px 12px;transform:scaleY(1);transition:transform .24s cubic-bezier(.2,.7,.2,1),opacity .18s ease;opacity:1}
details[open]>summary>.site-expand-icon{background:#edf1f9;border-color:#8ba1c5}
details[open]>summary>.site-expand-icon .site-expand-vertical{transform:scaleY(0);opacity:0}
.site-expand-icon:hover{border-color:#8298bb;background:#edf1f9}
summary.site-expand-summary:active>.site-expand-icon{transform:scale(.92)}
@media(max-width:850px){.invoice-stage-toggle:has(.invoice-color-legend)>.site-expand-icon{order:2}}

.analytics-status:empty{display:none}

/* Consulta e edicao de caixas anteriores, com valores de caixa independentes. */
.cash-period-filters{margin:0 0 18px;align-items:flex-end}.cash-period-filters label{margin:0;min-width:150px}.cash-period-filters .cash-period-search{flex:2;min-width:180px}.cash-period-filters input,.cash-period-filters>button{height:42px;min-height:42px;margin:0;box-sizing:border-box}.cash-period-filters>button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.cash-row-date{white-space:nowrap;font-size:12px}.cash-table td:nth-child(3){min-width:110px}.cash-table td:nth-child(4){min-width:220px}
.cash-history-access-form{display:grid;gap:14px;margin:0}.cash-history-access-form>p{margin:0}.cash-history-access-form>.site-title-wrap{margin:0 0 8px}.cash-history-access-form [role=alert]{color:#b31a22;font-size:12px;line-height:1.5}
@media(max-width:600px){.cash-period-filters label{min-width:calc(50% - 5px)}.cash-period-filters .cash-period-search{flex-basis:100%}}

/* Documento alinhado aos demais campos, inclusive no menu personalizado. */
#form .document-field{align-items:start}
#form .document-field>input,#form .document-field>.campo-menu,#form .document-field .campo-menu-trigger{height:46px!important;min-height:46px!important;box-sizing:border-box}
#form .document-field>.campo-menu{align-self:start}

#form .editor-actions{display:flex;align-items:center;gap:12px}
#form .editor-actions #discard,#form .editor-actions #delete{margin:0;width:44px;height:44px;background:transparent!important;border:1px solid transparent!important;color:var(--navy);box-shadow:none}
#form .editor-actions #delete{color:var(--red)}
#form .editor-actions svg{width:22px;height:22px}
#form .save-bar{align-items:center;gap:16px}

#finance-panel .site-section-body > .section-heading{margin:0 0 12px}
#finance-panel .site-section-body > .section-heading:has(#finance-lock[hidden]){display:none}
#finance-panel #finance-message:empty{display:none}

.invoice-review-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px}
#invoice-editor .invoice-review-actions>button{height:44px;min-height:44px;margin:0}
#invoice-editor .invoice-review-actions #invoice-cancel{order:1}
#invoice-editor .invoice-review-actions #invoice-submit{order:2;margin-left:auto;flex:0 0 44px;width:44px;padding:0;display:inline-flex;align-items:center;justify-content:center}

.municipality-label-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px}
.municipality-label-row .municipality-name{display:inline;margin:0}

/* Lista de notas compacta apos a retirada das colunas de veiculo e placa. */
#invoice-history .invoice-history-table{width:100%;min-width:880px;table-layout:fixed}
#invoice-history .invoice-history-table th,#invoice-history .invoice-history-table td{padding:10px 8px;box-sizing:border-box;vertical-align:middle}
#invoice-history .invoice-history-table th:first-child{width:90px;white-space:nowrap}
#invoice-history .invoice-history-table th:nth-child(2){width:9%}
#invoice-history .invoice-history-table th:nth-child(3){width:22%}
#invoice-history .invoice-history-table th:nth-child(4){width:18%}
#invoice-history .invoice-history-table th:nth-child(5){width:12%}
#invoice-history .invoice-history-table th:nth-child(6){width:auto}
#invoice-history .invoice-history-table th:last-child,#invoice-history .invoice-history-table td:last-child{width:140px;min-width:0;box-sizing:border-box}
#invoice-history .invoice-history-table td:nth-child(3){white-space:normal;overflow-wrap:anywhere}
#invoice-history .invoice-history-table .invoice-history-status{min-width:0;white-space:normal;overflow-wrap:anywhere}
#invoice-history .invoice-history-table .invoice-history-status small{max-width:none}
#invoice-history .invoice-history-table .invoice-history-actions{width:100%;gap:6px;flex-wrap:nowrap}
#invoice-history .invoice-history-table .invoice-action-button{width:36px;min-width:36px;height:36px;min-height:36px;padding:0;flex:0 0 36px}

/* Textos dos graficos sem contorno herdado dos icones nem negrito. */
.finance-chart svg text,.chart-panel svg text{font-weight:400;stroke:none;stroke-width:0}
.chart-panel .category-label strong{font-weight:400}


.finance-chart .finance-tooltip text{fill:#fff;stroke:none;font-weight:400;font-size:12px}


.footer-credit a{gap:8px}.footer-credit .developer-logo{display:block;width:36px;height:36px;padding:4px;box-sizing:border-box;background:transparent;object-fit:contain;flex:none;border-radius:0}

/* Assinatura do desenvolvedor: halo circular e luz laranja seguindo o ponteiro. */
.footer-credit .developer-logo-halo{position:relative;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:none;isolation:isolate}
.footer-credit .developer-logo-halo::before{content:'';position:absolute;inset:-4px;border-radius:50%;background:radial-gradient(circle,#ed4900 0%,#ff6500e6 35%,#ff7b168f 57%,#ff7b1600 76%);filter:blur(3px);z-index:-1;pointer-events:none}
.footer-credit .developer-logo{filter:drop-shadow(0 0 2px #ff5b00) drop-shadow(0 0 5px #ff650099);position:relative}
.footer-credit a{position:relative;isolation:isolate;border-radius:8px;padding:4px 8px;border-bottom-color:transparent;transition:color .18s ease,text-shadow .18s ease}
.footer-credit a:hover,.footer-credit a.brilho-botao:is(.brilho-ativo,:focus-visible){color:#a53b05!important;background:transparent!important;border-color:transparent!important;box-shadow:none!important;text-shadow:0 0 8px #ff6a2a85}
.footer-credit a.brilho-botao::before{inset:-6px;border-radius:14px;background:radial-gradient(circle 55px at var(--brilho-x,50%) var(--brilho-y,50%),#ff65007a 0%,#ff65003d 42%,#ff650000 75%);filter:blur(4px)}
.footer-credit a:is(:hover,:focus-visible) .developer-logo-halo::before{filter:blur(4px);opacity:1}
/* Mostrar e ocultar a senha mantendo o botao dentro do campo. */
.password-field{display:block;position:relative;width:100%;min-width:0}
.password-field>input,.password-dialog .password-field>input{width:100%;box-sizing:border-box;margin:0;padding-right:50px}
.password-field>button.password-visibility,.password-dialog .password-field>button.password-visibility,#finance-login .password-field>button.password-visibility{position:absolute;right:0;left:auto;top:0;bottom:0;transform:none;display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;max-width:44px;height:100%;min-height:0;margin:0;padding:9px;border:0;border-radius:0;background:transparent;color:var(--navy);box-shadow:none;cursor:pointer}
.password-visibility svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.password-field>.password-visibility:hover{color:var(--red);background:transparent}
.password-field>.password-visibility:focus-visible{outline:2px solid var(--navy);outline-offset:-4px}
input[type=password]::-ms-reveal{display:none}

.fields .password-field{margin-top:8px}

/* Logo Hub inteiro no cabecalho, sem cortes em telas pequenas. */
.topbar #brand-home{height:56px;aspect-ratio:auto}
.topbar #brand-home .brand-logo{position:static;display:block;width:100%;height:100%;object-fit:contain;object-position:left center;transform:none}

/* Mesmo alinhamento visual da margem interna do conteudo, compensando o respiro do logo. */
.topbar,body:has(#home:not([hidden])) .topbar{padding-left:98px}
@media(max-width:760px){.topbar,body:has(#home:not([hidden])) .topbar{padding-left:18px}}

/* Laudos em lote: arraste PDFs e preencha os valores na mesma lista. */
.laudo-soltar{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:150px;padding:24px;border:2px dashed #9daecb;border-radius:8px;background:#f4f7fd;color:var(--navy);text-align:center;cursor:pointer;transition:background .18s,border-color .18s}.laudo-soltar svg{width:30px;height:30px}.laudo-soltar span{font-size:13px;color:#627089}.laudo-soltar:hover,.laudo-soltar:focus-visible,.laudo-soltar.laudo-arrastando{border-color:#254880;background:#e5edfb}.laudo-soltar:focus-visible{outline:2px solid var(--navy);outline-offset:3px}.laudo-soltar[aria-disabled=true]{opacity:.6;cursor:wait}.laudo-orientacao,#laudo-lote-status{font-size:12px;line-height:1.7}.laudo-tabela{width:100%;min-width:760px}.laudo-tabela small{display:block;font-size:11px;color:#627089;margin-top:5px}.laudo-tabela td{vertical-align:middle}.laudo-valor{width:125px;min-height:42px;background:#fff4d6!important;border:1px solid #d6bf76;border-radius:4px;padding:8px;box-sizing:border-box}.laudo-tabela td:last-child{min-width:270px}.laudo-tabela td:last-child button{margin:3px;padding:8px 10px;min-height:36px;font-size:12px;border-radius:4px}.laudo-lote-acoes{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px}.laudo-lote-acoes span{font-size:12px}.laudo-tabela .laudo-salvo{background:#d4f3e7}.laudo-erro{color:#b31a22;font-size:12px;max-width:300px}.laudo-tabela .laudo-salvo .laudo-valor{background:transparent!important;border-color:transparent}@media(max-width:600px){.laudo-lote-acoes{align-items:stretch;flex-direction:column}.laudo-soltar{padding:18px;min-height:130px}}

.home-summary-group{min-width:0}.home-summary-group>.laudo-lote-panel{margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}

/* Acoes dos laudos: icones alinhados a direita e salvar lote em verde. */
.laudo-tabela td:last-child{min-width:160px;white-space:nowrap}.laudo-tabela .laudo-erro{white-space:normal}.laudo-tabela td:last-child .laudo-icone,.laudo-lote-acoes .laudo-icone{display:inline-flex;align-items:center;justify-content:center;width:42px;min-width:42px;height:42px;min-height:42px;padding:10px;margin:0 0 0 6px;box-sizing:border-box;border-radius:4px;vertical-align:middle}.laudo-icone svg{width:20px;height:20px;flex:0 0 20px}.laudo-lote-acoes{justify-content:flex-end}.laudo-lote-acoes #laudo-lote-contagem{margin-right:auto}.laudo-lote-acoes .laudo-icone{margin:0}.laudo-tabela .laudo-icone.danger{color:var(--red);border-color:#e9bcc0}#laudo-salvar-todas{background:#198754;border-color:#198754;color:#fff;--brilho-base:#146c43;--brilho-meio:#198754;--brilho-luz:#45aa7d;--brilho-sombra:#19875433}#laudo-salvar-todas:hover:not(:disabled){background:#146c43;border-color:#146c43}@media(max-width:600px){.laudo-lote-acoes{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-end}.laudo-lote-acoes #laudo-lote-contagem{flex-basis:100%;margin-right:0}}

.laudo-tabela td:first-child{min-width:170px}.laudo-tabela td:first-child>small{margin-top:8px}

/* Mesmas colunas e acoes por icone das fichas do periodo. */
.laudo-tabela{min-width:1100px}.laudo-tabela th,.laudo-tabela td{text-align:left;vertical-align:middle;padding:12px 10px}.laudo-tabela th:first-child,.laudo-tabela td:first-child{min-width:90px;white-space:nowrap}.laudo-tabela th:nth-child(3),.laudo-tabela td:nth-child(3){min-width:175px}.laudo-tabela th:nth-child(5),.laudo-tabela td:nth-child(5){min-width:168px}.laudo-tabela th:last-child,.laudo-tabela td:last-child{min-width:150px;text-align:left}.laudo-tabela .laudo-acoes-linha{display:flex;justify-content:flex-start;align-items:center;gap:6px;margin:0}.laudo-tabela td:last-child .laudo-acoes-linha .laudo-icone{margin:0;flex:0 0 42px}.laudo-tabela .document-preview{white-space:nowrap}

/* Teste dos atalhos lado a lado. */
#home .home-shortcuts{flex-direction:row;align-items:stretch}#home .home-shortcuts>.new-card,#home .home-shortcuts>.analytics-launch{flex:1 1 0;width:auto;min-width:0;margin:0;padding:10px 12px}#home .home-shortcuts>button strong{font-size:13px;white-space:nowrap}@media(max-width:420px){#home .home-shortcuts>.new-card,#home .home-shortcuts>.analytics-launch{padding:9px 7px;gap:6px}#home .home-shortcuts>button strong{font-size:12px}}

.cash-value-option{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin:14px 0 18px}.cash-value-option label{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:13px}.cash-value-option input{width:17px;height:17px;min-height:0;margin:0;accent-color:var(--navy)}.cash-value-option small{font-size:11px;color:var(--muted);line-height:1.6}

/* Caixa: ajuda no mesmo balao dos titulos e salvar lote em verde. */
.cash-value-option #cash-save-all{display:inline-flex;align-items:center;justify-content:center;width:42px;min-width:42px;height:42px;min-height:42px;padding:10px;margin-left:auto;border-radius:4px;background:#198754;border-color:#198754;color:#fff;--brilho-base:#146c43;--brilho-meio:#198754;--brilho-luz:#45aa7d;--brilho-sombra:#19875433}.cash-value-option #cash-save-all:hover:not(:disabled){background:#146c43;border-color:#146c43}#cash-save-all svg{width:20px;height:20px}

#cash-save-all svg{width:24px;height:24px;stroke-width:2.5}

.cash-bulk-payment{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 12px;margin:0 0 18px}.cash-bulk-payment>label{display:grid;gap:6px;min-width:220px;margin:0;font-size:12px}.cash-bulk-payment select{height:42px;min-height:42px;margin:0}.cash-bulk-payment>button{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;min-height:42px;padding:10px;border-radius:4px}.cash-bulk-payment>small{flex:1 1 260px;font-size:11px;color:var(--muted);line-height:1.6}

/* Pagamento em lote ao lado da opcao de valores, com ajuda padronizada. */
.cash-value-option{align-items:center}.cash-value-option>.cash-bulk-payment{display:flex;flex-wrap:wrap;align-items:center;margin:0 0 0 16px;gap:8px}.cash-value-option>.cash-bulk-payment>label{min-width:220px}.cash-value-option>.cash-bulk-payment .site-info-button{width:21px;min-width:21px;height:21px;min-height:21px;padding:0}@media(max-width:760px){.cash-value-option>.cash-bulk-payment{margin-left:0;flex-basis:100%}}

/* Barra compacta do caixa: alturas iguais, grupos claros e ajuda discreta. */
#cash-view .cash-value-option{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:14px 0 18px;padding:12px 14px;border:1px solid #d6deec;border-radius:6px;background:#f6f8fc}
.cash-value-toggle{display:flex;align-items:center;gap:10px;flex:0 1 auto;min-height:42px}#cash-view .cash-value-toggle>label{font-size:12px;gap:8px;white-space:nowrap}
#cash-view .cash-value-option>.cash-bulk-payment{display:flex;align-items:center;flex-wrap:nowrap;gap:8px;margin:0 0 0 auto;padding-left:18px;border-left:1px solid #d6deec;flex:0 1 330px}
#cash-view .cash-bulk-payment>label{display:block;flex:1;min-width:170px;margin:0}
#cash-view .cash-bulk-payment select,#cash-view .cash-bulk-payment .campo-menu-trigger{width:100%;height:42px;min-height:42px;box-sizing:border-box;margin:0;padding:9px 12px;border:1px solid #bdc9de;border-radius:4px;background:#fff;color:#092457;font-size:12px;font-family:inherit}
#cash-view .cash-bulk-payment .campo-menu{display:block;width:100%;margin:0!important}
#cash-view #cash-bulk-apply{flex:0 0 42px;background:#092457;color:#fff;border:1px solid #092457;margin:0}
#cash-view .cash-value-option #cash-save-all{margin-left:4px;flex:0 0 42px}
.cash-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:800px){#cash-view .cash-value-option>.cash-bulk-payment{flex:1 1 260px;margin-left:0;padding-left:0;border-left:0}#cash-view .cash-value-option #cash-save-all{margin-left:auto}}

.customer-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}#clients-view>.panel{margin-bottom:18px}#customers-status{font-size:12px}body:has(#clients-view:not([hidden])) #nav-clients{background:#e2e7f3;border-left:3px solid var(--red);color:var(--navy)}

/* Rodape: assinatura compacta, fundo branco e hierarquia da plataforma. */
.site-footer,body:has(#workspace:not([hidden])) .site-footer{position:relative;margin:24px 22px 24px 82px;padding:0 22px;border:1px solid #dce2ed;border-radius:10px;background:#fff;color:#627089;box-shadow:0 3px 12px #09245704;overflow:hidden}
.site-footer::before{content:'';position:absolute;top:0;left:22px;width:48px;height:3px;border-radius:0 0 3px 3px;background:var(--red)}
.site-footer .footer-content{min-height:98px;padding:20px 0;gap:24px}
.site-footer .footer-brand{gap:14px;min-width:0}.site-footer .footer-brand-mark{display:flex;align-items:center;justify-content:center;flex:0 0 46px;width:46px;height:46px}.site-footer .footer-brand img{width:42px;height:42px;object-fit:contain}.site-footer .footer-brand>div{gap:5px}.site-footer .footer-brand strong{font-size:18px;font-weight:700;letter-spacing:-.5px;color:#092457;line-height:1.3}.site-footer .footer-brand strong>.footer-hub{font-size:12px;font-weight:400;letter-spacing:.4px;margin-left:3px;color:#627089}.site-footer .footer-brand>div>span{font-size:11px;line-height:1.6;color:#627089}
.site-footer .footer-credit{margin-left:auto;padding-left:24px;border-left:1px solid #e3e8f0}.site-footer .footer-credit a{display:flex;align-items:center;gap:11px;padding:8px 10px;border:1px solid transparent;border-radius:6px;background:transparent;color:#092457;text-shadow:none;transition:background .18s,border-color .18s}.site-footer .footer-credit-copy{display:grid;gap:4px}.site-footer .footer-credit-copy>span{font-size:10px;color:#78849a}.site-footer .footer-credit-copy strong{font-size:12px;font-weight:700;letter-spacing:0}.site-footer .footer-credit svg{width:16px;height:16px;margin-left:10px;color:#8a97ac}.site-footer .developer-logo-halo{width:34px;height:34px;border:1px solid #e1e7f1;border-radius:7px;background:#f7f9fc;isolation:auto}.site-footer .developer-logo{width:32px;height:32px;padding:4px;filter:none}.site-footer .developer-logo-halo::before,.site-footer .footer-credit a::before{display:none!important}.site-footer .footer-credit a:is(:hover,:focus-visible,.brilho-ativo){background:#f3f6fc!important;border-color:#dbe3f0!important;color:#092457!important;text-shadow:none!important;box-shadow:none!important}.site-footer .footer-test-notice{margin:0;padding:10px 0 12px;border-color:#edf0f5;color:#78849a;font-size:10px}
body:has(#workspace[hidden]) .site-footer{margin-left:22px}
@media(max-width:760px){.site-footer,body:has(#workspace:not([hidden])) .site-footer{margin:20px 18px calc(84px + env(safe-area-inset-bottom));padding:0 18px}.site-footer .footer-content{gap:18px;flex-wrap:wrap}.site-footer .footer-brand strong{font-size:16px}.site-footer .footer-credit{padding-left:18px}.site-footer::before{left:18px}}
@media(max-width:520px){.site-footer .footer-content{align-items:stretch;flex-direction:column;gap:14px}.site-footer .footer-credit{margin:0;padding:12px 0 0;border-left:0;border-top:1px solid #edf0f5}.site-footer .footer-credit a{padding:4px 0}.site-footer .footer-credit svg{margin-left:auto}.site-footer .footer-credit{display:block}.site-footer .footer-credit a{width:100%}}
@media(prefers-reduced-motion:reduce){.site-footer .footer-credit a{transition:none}}

/* Fundo laranja da marca do desenvolvedor no rodape. */
.site-footer .developer-logo-halo{background:#ff6500;border-color:#f15b00}

.site-footer .footer-store-info{display:grid;gap:5px;margin:0;font-style:normal;line-height:1.5;font-size:12px;color:var(--navy)}.site-footer .footer-store-info a{width:fit-content;color:#627089;text-decoration:none;font-size:11px}.site-footer .footer-store-info a:hover{color:var(--navy);text-decoration:underline}.site-footer .footer-store-info a:focus-visible{outline:2px solid var(--navy);outline-offset:3px}

/* Rankings de veiculos e locais com leitura alinhada e navegacao clara. */
#analytics .chart-panel:has(#breakdown-chart) .chart-controls,#analytics .chart-panel:has(#location-chart) .chart-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px;background:#f5f7fb;border:1px solid #e1e7f0;border-radius:6px;margin-bottom:18px}
#analytics .chart-panel .chart-controls label{min-width:0}.category-overview{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 2px 12px;border-bottom:1px solid #e7ebf3;font-size:11px}.category-overview-label{color:#78859b}.category-overview-total{color:#092457;font-weight:700}
:is(#breakdown-chart,#location-chart)[data-visualization=bar] .chart-category-list{max-height:390px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#bdc9dd transparent;padding:6px 5px 6px 0;scrollbar-gutter:stable}
:is(#breakdown-chart,#location-chart)[data-visualization=bar] .category-item{min-height:65px;padding:12px 10px;margin:0;border:0;border-bottom:1px solid #edf0f6;border-radius:0;background:transparent;color:#092457;transition:background .16s}
:is(#breakdown-chart,#location-chart)[data-visualization=bar] .category-item:hover{background:#f5f8fd}:is(#breakdown-chart,#location-chart)[data-visualization=bar] .category-item[aria-pressed=true]{background:#fff3f2;box-shadow:inset 3px 0 var(--red)}
:is(#breakdown-chart,#location-chart)[data-visualization=bar] .category-label{display:flex;align-items:center;gap:10px;font-size:12px}.category-rank{flex:0 0 22px;font-size:10px;color:#8a97ac;font-variant-numeric:tabular-nums}.category-name{flex:1;min-width:0;line-height:1.5}.category-stats{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex:0 0 auto;font-variant-numeric:tabular-nums}.category-stats strong{font-size:14px;font-weight:700}.category-percent{width:48px;text-align:right;font-size:11px;color:#78859b}
:is(#breakdown-chart,#location-chart)[data-visualization=bar] .bar-svg{display:block;width:calc(100% - 32px);height:5px;margin:9px 0 0 32px;overflow:visible}.category-item:focus-visible{outline:2px solid #254880;outline-offset:-2px}
@media(max-width:420px){#analytics .chart-panel:has(#breakdown-chart) .chart-controls,#analytics .chart-panel:has(#location-chart) .chart-controls{grid-template-columns:1fr}.category-stats{gap:7px}}

/* Data de referencia so participa do filtro quando o periodo e Data. */
#invoices-view label:has(#invoice-date:disabled){color:#929aaa}#invoices-view #invoice-date:disabled,#invoices-view label:has(#invoice-date:disabled) .campo-menu-trigger{background:#eef0f3!important;border-color:#d9dee6!important;color:#98a0ae!important;box-shadow:none!important;cursor:not-allowed;opacity:1}#invoices-view label:has(#invoice-date:disabled) .site-expand-icon{background:transparent;border-color:#d4dae3;color:#98a0ae}

/* Lista de clientes cadastrados. */
.customer-directory-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:4px 0 20px}
#clients-view .customer-directory-search{display:flex;align-items:center;gap:10px;flex:1;max-width:540px;margin:0;padding:0 14px;height:44px;border:1px solid #d9e1ef;border-radius:6px;background:#f7f9fc;box-sizing:border-box}
.customer-directory-search>svg{width:18px;height:18px;flex-shrink:0;color:#6b7d9f}
#clients-view .customer-directory-search input{width:100%;min-width:0;height:42px;margin:0;padding:0;border:0;outline:0;background:transparent;box-shadow:none;font-size:12px}
#clients-view .customer-directory-search:focus-within{border-color:#092457;outline:2px solid #09245714}
#customers-count{flex-shrink:0;margin:0;padding:7px 12px;border:1px solid #dce4f2;border-radius:20px;background:#edf2fa;color:#264574;font-size:11px;font-weight:500;white-space:nowrap}
.customer-directory-table{border:1px solid #e1e7f0;border-radius:6px;overflow:auto}
.customer-directory-table table{width:100%;min-width:680px;border-collapse:collapse;margin:0;text-align:left;table-layout:fixed}
.customer-directory-table th{padding:13px 18px;background:#edf2fa;color:#607393;font-size:10px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;border:0;border-bottom:1px solid #e1e7f0}
.customer-directory-table th:first-child{width:40%}.customer-directory-table th:nth-child(2){width:24%}.customer-directory-table th:nth-child(3){width:23%}.customer-directory-table th:last-child{width:110px;text-align:right}
.customer-directory-table td{padding:15px 18px;border:0;border-bottom:1px solid #e8edf4;font-size:12px;vertical-align:middle;color:#092457;overflow-wrap:anywhere}
.customer-directory-table tr:last-child td{border-bottom:0}.customer-directory-table tbody tr:hover{background:#f8faff}
.customer-identity{display:flex;align-items:center;gap:13px;min-width:0}.customer-identity strong{font-size:12px;font-weight:500;line-height:1.6}
.customer-avatar{display:grid;place-items:center;flex:0 0 36px;height:36px;border:1px solid #dce5f3;border-radius:8px;background:#edf2fa;color:#294d83;font-size:11px;font-weight:600;letter-spacing:.02em}
.customer-document{font-variant-numeric:tabular-nums}.customer-directory-table a{color:#3c5b84;text-decoration:none;white-space:nowrap}.customer-directory-table a:hover{text-decoration:underline}
.customer-directory-table .customer-missing{color:#8a96ab;font-size:11px}
.customer-directory-table .customer-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;white-space:nowrap}.customer-row-actions button{flex:0 0 28px;width:28px;height:32px;padding:4px;margin:0}.customer-row-actions svg{width:18px;height:18px}
.customer-directory-table .customer-empty{text-align:center;padding:42px 20px;color:#647895}.customer-empty strong{font-size:14px;font-weight:500;color:#092457}.customer-empty p{margin:9px 0 0;font-size:12px}
@media(max-width:640px){.customer-directory-toolbar{gap:10px;flex-wrap:wrap}.customer-directory-toolbar .customer-directory-search{flex-basis:100%;max-width:none}#customers-count{margin-left:auto}.customer-directory-table th,.customer-directory-table td{padding-left:13px;padding-right:13px}}

@media(max-width:760px){.customer-directory-table table{min-width:590px}.customer-directory-table th:first-child{width:34%}.customer-directory-table th:nth-child(2){width:24%}.customer-directory-table th:nth-child(3){width:25%}.customer-directory-table th:last-child{width:17%}.customer-directory-table th,.customer-directory-table td{padding-left:12px;padding-right:12px;font-size:11px}.customer-identity{gap:8px}.customer-identity strong{font-size:11px}.customer-avatar{flex-basis:28px;height:28px;font-size:9px}.customer-directory-table .customer-row-actions{gap:5px}}

/* Exibições de fichas e notas seguem a lista de clientes. */
.registry-display{border:1px solid #e1e7f0;border-radius:6px;overflow:auto;background:#fff}
.registry-display table{width:100%;border-collapse:collapse;margin:0;text-align:left}
.registry-display table th{padding:13px 18px;background:#edf2fa;color:#607393;font-size:10px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;border:0;border-bottom:1px solid #e1e7f0;white-space:nowrap}
.registry-display table td{padding:15px 18px;border:0;border-bottom:1px solid #e8edf4;font-size:12px;vertical-align:middle;color:#092457}
.registry-display table tbody tr:last-child>td{border-bottom:0}
.registry-display table th:last-child,.registry-display table td:last-child{text-align:right}
.registry-display .analysis-record-actions,.registry-display .invoice-history-actions{justify-content:flex-end;align-items:center;gap:12px}
.registry-display .customer-identity{min-width:180px}.registry-display .customer-identity strong{max-width:260px;overflow-wrap:anywhere}
.registry-display td:has(.document-preview),.registry-display td:nth-child(2){font-variant-numeric:tabular-nums}
.registry-display table .registry-empty,.registry-display table .table-empty{padding:38px 20px;text-align:center;color:#7a89a2;font-size:12px}
#analytics .registry-display tbody tr:hover>td{background:#f8faff}
#analytics #table-count,#invoice-selection-count,#invoice-batch-count{display:inline-block;padding:7px 12px;margin:8px 0 14px;border:1px solid #dce4f2;border-radius:20px;background:#edf2fa;color:#264574;font-size:11px;font-weight:500}
#invoice-selection-count,#invoice-batch-count{margin:0 0 2px}#invoice-batch-count:empty{display:none}
#invoices-view .invoice-selection{margin:18px 0 14px;align-items:center}
#invoice-history .invoice-table th:last-child{background:#edf2fa}
#invoice-records .invoice-table th:first-child,#invoice-records .invoice-table td:first-child,#invoice-history .invoice-table th:first-child,#invoice-history .invoice-table td:first-child{width:65px;min-width:65px;text-align:center}
#invoice-records .invoice-table td:last-child .invoice-icon-only{width:34px;height:34px;min-width:34px;padding:7px}
.registry-display .analysis-record-actions svg{width:18px;height:18px}.registry-display .analysis-record-actions button{margin:0}
@media(max-width:760px){.registry-display table th,.registry-display table td{padding:12px;font-size:11px}.registry-display .customer-identity{min-width:165px}}

.registry-display table td.registry-empty{position:static!important;width:auto!important;min-width:0!important;max-width:none!important;text-align:center!important;box-shadow:none!important}

/* Caixa, faturamento e fila de laudos usam o mesmo padrão das demais listas. */
.cash-summary-display table{min-width:430px}
.cash-summary-display table th:first-child{width:46%}
.cash-summary-display table th:last-child,.cash-summary-display table td:last-child{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.cash-summary-display table th:nth-child(2):not(:last-child),.cash-summary-display table td:nth-child(2):not(:last-child),.cash-summary-display table th:nth-child(3):not(:last-child),.cash-summary-display table td:nth-child(3):not(:last-child){text-align:center}
.cash-summary-display table td:first-child{font-weight:500}
.cash-summary-display tbody tr:hover>td{background:#f8faff}
.cash-summary-display .cash-grand-total>td{background:#edf2fa;font-weight:600;border-top:1px solid #d6e0ef}
.cash-entry-display .cash-table th:last-child{min-width:120px}
.cash-entry-display .cash-table td{padding-top:22px;padding-bottom:30px}
.cash-entry-display .cash-table tr.cash-row-new>td{background:#f8fafc;border-bottom-color:#e8edf4}
.cash-entry-display .cash-action-buttons{justify-content:flex-end}
.cash-entry-display .cash-action-buttons .cash-row-status{left:auto;right:0;text-align:right}
.cash-entry-display .cash-table :is(input:not([type=checkbox]),.campo-menu-trigger,.cash-method-trigger){border-color:#d9e2ef;border-radius:6px;background-color:#fff;font-size:12px}
.cash-entry-display .cash-table tr.cash-row-saved input[readonly]{background:transparent;border-color:transparent}
.cash-entry-display .cash-table tr.cash-row-saved :is(.campo-menu-trigger,.cash-method-trigger):disabled{background:#eafaf4}
.laudo-queue-display .laudo-tabela{margin:0;min-width:1150px}
.laudo-queue-display .laudo-acoes-linha{justify-content:flex-end}
.laudo-queue-display .laudo-tabela th:last-child,.laudo-queue-display .laudo-tabela td:last-child{text-align:right;min-width:145px}
.laudo-queue-display .laudo-tabela tbody tr:not(.laudo-salvo):hover>td{background:#f8faff}
.laudo-lote-panel .laudo-soltar{border-color:#bdcbe2;background:#f7f9fc;border-radius:6px}
.laudo-lote-panel .laudo-lote-acoes{padding-top:4px;align-items:center}

/* Os três campos do cadastro compartilham a mesma linha e altura. */
#customer-form>.fields{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr));align-items:end}
#customer-form>.fields>label{min-width:0;margin:0}
#customer-form>.fields input{width:100%;height:46px;box-sizing:border-box}
@media(max-width:600px){#customer-form>.fields{grid-template-columns:minmax(0,1fr)}}

/* Aviso de pendências compacto; a explicação completa fica no ícone de informação. */
#cash-dirty.cash-unsaved-notice{display:flex;align-items:center;gap:9px;width:fit-content;max-width:100%;box-sizing:border-box;padding:8px 11px;margin:12px 0 16px auto;background:#fff8e7;border:1px solid #f0dfb5;border-radius:6px;box-shadow:none;color:#866123;font-size:11px;line-height:1.5}
.cash-unsaved-dot{flex:0 0 6px;width:6px;height:6px;border-radius:50%;background:#bd8422}
#cash-dirty .site-info{display:inline-flex;flex:0 0 auto;margin:0}
#cash-dirty .site-info-button{width:19px;height:19px;min-width:19px;min-height:19px;font-size:10px}

/* Pendências junto ao título da etapa, sem ocupar uma linha própria. */
#cash-view summary>#cash-dirty.cash-unsaved-notice{margin:0 12px 0 4px;padding:5px 9px;flex:0 1 auto;font-size:10px;font-weight:400;letter-spacing:normal;text-transform:none}
#cash-view summary:has(>#cash-dirty)>.site-title-wrap{flex:0 1 auto}
#cash-view summary:has(>#cash-dirty)>.site-expand-icon{margin-left:auto}
@media(max-width:600px){#cash-view summary>#cash-dirty.cash-unsaved-notice{margin-left:0;font-size:9px;gap:6px}}

/* O rodapé ocupa a própria altura; páginas curtas cabem na janela. */
body:has(#workspace:not([hidden])){display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}
body:has(#workspace:not([hidden]))>.topbar{flex:0 0 auto}
body:has(#workspace:not([hidden])) #workspace{flex:1 0 auto;min-height:0}
body:has(#workspace:not([hidden]))>.site-footer{flex:0 0 auto}

@font-face{font-family:'Placa Mercosul';src:url('../fontes/placa-mercosul.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Placa Antiga';src:url('../fontes/placa-antiga.otf') format('opentype');font-style:normal;font-weight:400;font-display:swap}
