:root{--bg:#07110f;--panel:#0d1916;--panel-2:#12211d;--panel-3:#172a25;--line:#213832;--text:#eef7f3;--muted:#8da79d;--accent:#31d17c;--accent-hover:#1ba963;--accent-active:#13844d;--accent-soft:rgb(var(--accent-rgb) / .12);--accent-border:rgb(var(--accent-rgb) / .35);--accent-rgb:49 209 124;--on-accent:#04120c;--primary:var(--accent);--primary-2:var(--accent-hover);--danger:#ff6b68;--warning:#f5b942;--blue:#67a7ff;--radius:14px;--shadow:0 18px 60px rgba(0,0,0,.28)}
html[data-accent="AZUL"]{--accent:#1d4ed8;--accent-hover:#1e40af;--accent-active:#1e3a8a;--accent-soft:rgba(29,78,216,.12);--accent-border:rgba(29,78,216,.35);--accent-rgb:29 78 216;--on-accent:#fff}
html[data-accent="AZUL_PETROLEO"]{--accent:#0f6b75;--accent-hover:#0b5961;--accent-active:#08434a;--accent-soft:rgba(15,107,117,.12);--accent-border:rgba(15,107,117,.35);--accent-rgb:15 107 117;--on-accent:#fff}
html[data-accent="ROXO"]{--accent:#6d28d9;--accent-hover:#5b21b6;--accent-active:#4c1d95;--accent-soft:rgba(109,40,217,.14);--accent-border:rgba(109,40,217,.38);--accent-rgb:109 40 217;--on-accent:#fff}
html[data-accent="LARANJA"]{--accent:#b45309;--accent-hover:#92400e;--accent-active:#78350f;--accent-soft:rgba(180,83,9,.14);--accent-border:rgba(180,83,9,.38);--accent-rgb:180 83 9;--on-accent:#fff}
html[data-accent="GRAFITE"]{--accent:#475569;--accent-hover:#334155;--accent-active:#1e293b;--accent-soft:rgba(71,85,105,.16);--accent-border:rgba(71,85,105,.42);--accent-rgb:71 85 105;--on-accent:#fff}
*{box-sizing:border-box}html{background:var(--bg);color-scheme:dark}body{margin:0;font-family:Inter,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--text);min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:var(--primary)}[hidden]{display:none!important}.muted{color:var(--muted)}.eyebrow{display:block;color:var(--primary);font-size:.7rem;font-weight:800;letter-spacing:.15em;margin-bottom:7px}.mobile-only,.mobile-brand{display:none}.offline{position:fixed;inset:0 0 auto;z-index:100;background:#9b6711;color:white;padding:8px;text-align:center;font-size:.82rem}
.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(420px,.82fr)}.auth-art{position:relative;overflow:hidden;padding:42px clamp(36px,6vw,92px);display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 20% 80%,rgb(var(--accent-rgb) / .2),transparent 35%),radial-gradient(circle at 70% 20%,rgb(var(--accent-rgb) / .08),transparent 35%),linear-gradient(140deg,#07110f,#0b1c17)}.auth-art:after{content:"";position:absolute;width:600px;height:600px;border:1px solid rgb(var(--accent-rgb) / .12);border-radius:50%;right:-280px;top:15%;box-shadow:0 0 0 80px rgb(var(--accent-rgb) / .025),0 0 0 160px rgb(var(--accent-rgb) / .018)}.auth-brand,.mobile-brand{font-size:1.4rem;font-weight:800;display:flex;align-items:center;gap:12px;z-index:1}.brand-mark{width:40px;height:40px;display:inline-grid;place-items:center;color:#05110d;background:var(--primary);border-radius:12px;font-size:1.35rem;box-shadow:0 8px 30px rgb(var(--accent-rgb) / .2)}.auth-copy{z-index:1;max-width:720px}.auth-copy h1{font-size:clamp(3rem,6vw,5.8rem);line-height:.98;margin:0 0 28px;letter-spacing:-.055em}.auth-copy h1 em{font-style:normal;color:var(--primary)}.auth-copy p{max-width:580px;font-size:1.15rem;color:#a8beb6;line-height:1.7}.auth-stats{display:flex;gap:48px;z-index:1}.auth-stats div{display:flex;flex-direction:column;gap:4px}.auth-stats strong{font-size:.95rem}.auth-stats span{color:var(--muted);font-size:.78rem}.auth-panel{display:grid;place-items:center;padding:40px;background:#091411}.auth-card{width:min(420px,100%)}.auth-card h2{font-size:2rem;margin:0 0 8px}.auth-card>p{margin:0 0 32px}.auth-card label,.form-grid label{display:flex;flex-direction:column;gap:8px;color:#bdd0c9;font-size:.8rem;font-weight:700;margin-bottom:17px}.auth-card input,.form-grid input,.form-grid select,.form-grid textarea,.field{width:100%;border:1px solid var(--line);background:#0e1b17;color:var(--text);padding:13px 14px;border-radius:10px;outline:none;transition:.2s}.auth-card input:focus,.form-grid input:focus,.form-grid select:focus,.field:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .12)}.password-wrap{display:flex;position:relative}.password-wrap input{padding-right:50px}.password-wrap button{position:absolute;right:4px;top:4px}.login-help{text-align:center!important;margin-top:22px!important;font-size:.76rem;color:var(--muted)}
.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:260px;background:#091512;border-right:1px solid var(--line);padding:18px 14px;z-index:70;display:flex;flex-direction:column}.sidebar-brand{height:54px;display:flex;align-items:center;gap:11px;padding:0 8px}.sidebar-brand>div{display:flex;flex-direction:column}.sidebar-brand small{color:var(--muted);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}.company-pill{margin:17px 3px;padding:11px 13px;background:var(--panel);border:1px solid var(--line);border-radius:10px;display:flex;flex-direction:column;gap:3px}.company-pill span{color:var(--muted);font-size:.58rem;letter-spacing:.12em}.company-pill b{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu{overflow:auto;padding:4px 0 100px}.menu-group{font-size:.58rem;color:#6f8b80;letter-spacing:.14em;padding:15px 12px 6px}.menu button{width:100%;display:flex;gap:11px;align-items:center;padding:10px 12px;border:0;background:transparent;color:#a9beb6;border-radius:9px;text-align:left;margin:2px 0;font-size:.83rem}.menu button .nav-icon{font-size:1.02rem;width:20px;text-align:center}.menu button:hover{background:var(--panel);color:var(--text)}.menu button.active{background:linear-gradient(90deg,rgb(var(--accent-rgb) / .17),rgb(var(--accent-rgb) / .04));color:var(--primary);box-shadow:inset 2px 0 var(--primary)}.sidebar-footer{position:absolute;bottom:14px;left:14px;right:14px;background:#091512}.install-btn{width:100%;border:1px dashed var(--line);background:transparent;color:var(--primary);border-radius:9px;padding:9px;margin-bottom:8px}.profile{width:100%;display:flex;align-items:center;gap:10px;background:var(--panel);border:1px solid var(--line);color:var(--text);padding:9px;border-radius:10px}.profile>span{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:#18352b;color:var(--primary);font-weight:800}.profile div{display:flex;flex:1;min-width:0;flex-direction:column;text-align:left}.profile b{font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile small{font-size:.62rem;color:var(--muted)}.profile i{font-style:normal;color:var(--muted)}.main{margin-left:260px;min-height:100vh}.topbar{height:88px;padding:0 clamp(20px,3vw,38px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(7,17,15,.86);backdrop-filter:blur(14px);position:sticky;top:0;z-index:30}.topbar h1{font-size:1.35rem;margin:0}.top-actions{display:flex;gap:9px;align-items:center}.content{padding:clamp(18px,3vw,36px);max-width:1600px;margin:auto}.scrim{position:fixed;inset:0;background:rgba(0,0,0,.58);z-index:60;border:0;width:100%;touch-action:none}
.btn{border:1px solid transparent;border-radius:9px;padding:10px 14px;background:var(--panel-3);color:var(--text);font-weight:700;font-size:.78rem;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;transition:.18s}.btn:hover{filter:brightness(1.12);transform:translateY(-1px)}.btn.primary{background:var(--primary);color:var(--on-accent)}.btn.secondary{background:transparent;border-color:var(--line);color:#bed0ca}.btn.danger{background:rgba(255,107,104,.12);border-color:rgba(255,107,104,.24);color:var(--danger)}.btn.warning{background:rgba(245,185,66,.12);color:var(--warning)}.btn.wide{width:100%}.btn.large{padding:14px 18px;font-size:.86rem}.icon-btn{width:40px;height:40px;padding:0;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:9px;display:grid;place-items:center}.icon-btn:hover{border-color:#3a5c51}.actions{display:flex;gap:7px;flex-wrap:wrap}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px}.toolbar-left,.toolbar-right{display:flex;gap:10px;align-items:center}.search{position:relative;min-width:min(360px,100%)}.search input{padding-left:38px}.search:before{content:"⌕";position:absolute;left:13px;top:10px;color:var(--muted);z-index:1}.filter-tabs{display:flex;gap:5px;padding:4px;background:var(--panel);border:1px solid var(--line);border-radius:10px}.filter-tabs button{border:0;background:transparent;color:var(--muted);border-radius:7px;padding:7px 11px;font-size:.72rem}.filter-tabs button.active{background:var(--panel-3);color:var(--text)}
.grid{display:grid;gap:15px}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.two-col{grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr)}.three-col{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:linear-gradient(145deg,rgba(17,33,28,.97),rgba(12,25,21,.97));border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:0 8px 40px rgba(0,0,0,.11)}.card-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.card-title h2,.card-title h3{margin:0;font-size:.95rem}.card-title small{color:var(--muted)}.kpi{min-height:120px;display:flex;flex-direction:column;justify-content:space-between}.kpi-top{display:flex;justify-content:space-between;color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.kpi-icon{width:32px;height:32px;display:grid;place-items:center;background:rgb(var(--accent-rgb) / .1);color:var(--primary);border-radius:9px;font-size:1rem}.kpi strong{font-size:clamp(1.45rem,2.5vw,2rem);letter-spacing:-.04em}.kpi small{color:var(--muted)}.metric-row{display:flex;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid var(--line)}.metric-row:last-child{border:0}.metric-row span{color:var(--muted)}.metric-row b{font-size:.86rem}.progress{height:8px;border-radius:20px;background:#172923;overflow:hidden}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--primary-2),var(--primary));border-radius:20px}.empty{display:grid;place-items:center;text-align:center;min-height:180px;color:var(--muted);padding:30px}.empty i{font-size:2rem;font-style:normal;margin-bottom:8px}.empty b{color:var(--text);display:block;margin-bottom:6px}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}table{width:100%;border-collapse:collapse;min-width:720px}th,td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;font-size:.76rem;vertical-align:middle}th{position:sticky;top:0;background:#10201b;color:#6f8b80;font-size:.62rem;text-transform:uppercase;letter-spacing:.09em;z-index:1}tr:last-child td{border:0}tbody tr:hover{background:rgba(255,255,255,.018)}td strong{font-size:.81rem}.status{display:inline-flex;padding:5px 8px;border-radius:30px;font-size:.63rem;font-weight:800;background:#1a3028;color:#a8c4ba}.status.success,.status.Disponível,.status.Finalizado,.status.Pago{background:rgb(var(--accent-rgb) / .12);color:var(--primary)}.status.warning,.status.Reservado,.status.Pendente,.status.Em.andamento{background:rgba(245,185,66,.12);color:var(--warning)}.status.danger,.status.Cancelado,.status.Estornado,.status.Atrasado{background:rgba(255,107,104,.12);color:var(--danger)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.form-grid label{margin:0}.form-grid .full{grid-column:1/-1}.form-grid textarea{min-height:90px;resize:vertical}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.field-row{display:flex;gap:10px}.field-row>*{flex:1}.modal{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.72);backdrop-filter:blur(5px);display:grid;place-items:center;padding:18px}.modal-box{width:min(820px,100%);max-height:92vh;overflow:auto;background:#0b1814;border:1px solid #29473d;border-radius:16px;box-shadow:var(--shadow)}.modal-head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:18px 20px;background:#0b1814;border-bottom:1px solid var(--line)}.modal-head h2{font-size:1.05rem;margin:0}.modal-body{padding:20px}.modal.large .modal-box{width:min(1100px,100%)}
.session-tabs{display:flex;gap:10px;overflow:auto;padding:1px 1px 12px}.session-tab{min-width:185px;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:11px;padding:11px;text-align:left}.session-tab.active{border-color:var(--primary);box-shadow:0 0 0 2px rgb(var(--accent-rgb) / .1)}.session-tab b,.session-tab small{display:block}.session-tab small{color:var(--muted);margin-top:4px}.weigh-layout{display:grid;grid-template-columns:minmax(340px,.78fr) minmax(0,1.22fr);gap:16px}.weight-card{position:sticky;top:106px;align-self:start}.weight-input{position:relative;margin:16px 0}.weight-input input{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:850;text-align:center;padding:22px 72px 22px 20px;background:#08130f;border:1px solid #2c4b40;border-radius:14px;width:100%;color:var(--primary);outline:none}.weight-input input:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgb(var(--accent-rgb) / .12)}.weight-input span{position:absolute;right:22px;top:50%;transform:translateY(-50%);color:var(--muted);font-weight:800}.material-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:330px;overflow:auto}.material-btn{border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:10px;padding:13px 10px;text-align:left;min-height:58px}.material-btn:hover,.material-btn.selected{border-color:var(--primary);background:rgb(var(--accent-rgb) / .08)}.material-btn b,.material-btn small{display:block}.material-btn small{color:var(--muted);margin-top:3px}.weight-group{border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:12px}.weight-group-head{padding:12px 14px;background:#10201b;display:flex;justify-content:space-between}.weight-item{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:10px 14px;border-top:1px solid var(--line)}.weight-item strong{font-size:1rem}.weight-item small{color:var(--muted)}.weight-total{display:flex;justify-content:space-between;padding:16px;border-radius:12px;background:linear-gradient(100deg,rgb(var(--accent-rgb) / .15),rgb(var(--accent-rgb) / .03));border:1px solid rgb(var(--accent-rgb) / .22);margin-top:14px}.weight-total strong{font-size:1.3rem;color:var(--primary)}.quick-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}.quick-summary div{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px}.quick-summary small,.quick-summary b{display:block}.quick-summary small{color:var(--muted);font-size:.62rem}.quick-summary b{margin-top:4px}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.entity-card{position:relative}.entity-card h3{margin:0 0 4px;font-size:.94rem}.entity-card p{margin:0;color:var(--muted);font-size:.73rem}.entity-card .entity-meta{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:16px 0}.entity-meta div{background:#0b1714;border-radius:8px;padding:9px}.entity-meta small,.entity-meta b{display:block}.entity-meta small{font-size:.58rem;color:var(--muted)}.entity-meta b{font-size:.76rem;margin-top:3px}.checkbox-list{display:grid;gap:7px;max-height:320px;overflow:auto}.check-card{display:flex!important;flex-direction:row!important;align-items:center;gap:10px!important;border:1px solid var(--line);border-radius:9px;padding:10px;margin:0!important}.check-card input{width:auto}.check-card div{flex:1}.check-card small{display:block;color:var(--muted)}.integration-list{display:grid;gap:9px}.integration{display:flex;justify-content:space-between;gap:20px;padding:13px;border:1px solid var(--line);border-radius:10px}.integration span{color:var(--warning);font-size:.7rem}.toast-root{position:fixed;right:18px;bottom:18px;z-index:120;display:grid;gap:8px}.toast{min-width:280px;max-width:430px;padding:13px 15px;border-radius:10px;background:#173128;border:1px solid #285b48;color:#dff9ed;box-shadow:var(--shadow);animation:toast-in .25s ease}.toast.error{background:#351b1b;border-color:#713333;color:#ffdada}.toast.warning{background:#332812;border-color:#755d24;color:#ffedc2}@keyframes toast-in{from{opacity:0;transform:translateY(10px)}}.skeleton{background:linear-gradient(90deg,#10201b,#193129,#10201b);background-size:200% 100%;animation:load 1.2s infinite;border-radius:8px;min-height:100px}@keyframes load{to{background-position:-200% 0}}
.chart-bars{height:180px;display:flex;align-items:flex-end;gap:6px;padding:18px 2px 2px;border-bottom:1px solid var(--line)}.chart-bar{flex:1;min-width:7px;max-width:34px;height:var(--h);background:linear-gradient(180deg,var(--primary),var(--primary-2));border-radius:5px 5px 1px 1px;position:relative}.chart-bar:hover:after{content:attr(data-value);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);white-space:nowrap;background:#06100d;border:1px solid var(--line);padding:5px 7px;border-radius:6px;font-size:.62rem;z-index:3}.chart-axis{display:flex;justify-content:space-between;color:var(--muted);font-size:.6rem;margin-top:7px}
@media(max-width:1180px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.card-grid{grid-template-columns:repeat(2,1fr)}.weigh-layout{grid-template-columns:minmax(310px,.85fr) minmax(0,1.15fr)}.two-col{grid-template-columns:1fr}}
@media(max-width:900px){.mobile-only,.mobile-brand{display:flex}.sidebar{transform:translateX(-102%);transition:.25s;width:min(290px,86vw)}.sidebar.open{transform:translateX(0)}.main{margin-left:0}.topbar{height:76px}.content{padding-bottom:96px}.weigh-layout{grid-template-columns:1fr}.weight-card{position:static}.card-grid{grid-template-columns:repeat(2,1fr)}.auth-shell{grid-template-columns:1fr}.auth-art{display:none}.auth-panel{min-height:100vh;padding:26px}.mobile-brand{margin-bottom:50px}.top-actions .primary{display:none}}
@media(max-width:620px){.topbar{padding:0 14px}.topbar h1{font-size:1.08rem}.topbar .eyebrow{font-size:.55rem}.content{padding:14px 12px 90px}.kpi-grid,.card-grid,.three-col{grid-template-columns:1fr 1fr;gap:9px}.kpi{min-height:105px;padding:14px}.kpi strong{font-size:1.25rem}.toolbar{align-items:stretch;flex-direction:column}.toolbar-left,.toolbar-right{width:100%;flex-wrap:wrap}.search{width:100%;min-width:0}.filter-tabs{overflow:auto}.filter-tabs button{white-space:nowrap}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.modal{padding:0;place-items:end stretch}.modal-box,.modal.large .modal-box{width:100%;max-height:93vh;border-radius:16px 16px 0 0}.material-buttons{grid-template-columns:repeat(2,1fr)}.weight-input input{font-size:3rem;padding:18px 60px 18px 12px}.quick-summary{grid-template-columns:1fr 1fr}.quick-summary div:last-child{grid-column:1/-1}.weight-item{grid-template-columns:1fr auto}.weight-item .actions{grid-column:1/-1}.auth-card h2{font-size:1.7rem}.toast-root{left:12px;right:12px;bottom:12px}.toast{min-width:0;width:100%}}
@media(max-width:390px){.kpi-grid,.card-grid{grid-template-columns:1fr}.material-buttons{grid-template-columns:1fr 1fr}.btn{padding:9px 11px}.top-actions{gap:5px}}

.costing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:16px;align-items:start}.costing-inventory-row{min-width:0}.costing-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:12px 0}.costing-facts>div{display:grid;gap:4px;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--panel-2)}.costing-facts small{color:var(--muted);font-size:.68rem}.costing-facts b{font-size:.86rem;overflow-wrap:anywhere}.costing-source{font-size:.74rem;line-height:1.45}.costing-calculation{margin-top:12px;border-top:1px solid var(--line);padding-top:10px;color:var(--muted);font-size:.75rem}.costing-calculation summary{cursor:pointer;color:var(--primary);font-weight:800;letter-spacing:.04em}.costing-actions{margin-top:14px;display:grid;gap:9px}.costing-cost-form{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}.costing-cost-form input,.costing-cost-form select{min-width:0;border:1px solid var(--line);background:var(--panel-2);color:var(--text);padding:10px;border-radius:9px}.costing-cost-form button{grid-column:1/-1}@media(max-width:620px){.costing-grid{grid-template-columns:minmax(0,1fr)}.costing-cost-form{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* V5.21.130: superfícies profissionais; status semânticos continuam independentes. */
html[data-surface-theme="NEUTRO"]{--surface-bg:#07110f;--surface-sidebar:#091512;--surface-topbar:rgba(7,17,15,.86);--surface-panel:#0d1916;--surface-panel-2:#12211d;--surface-panel-3:#172a25;--surface-elevated:#0b1814;--surface-line:#213832;--surface-text:#eef7f3;--surface-muted:#8da79d;--surface-disabled:#8da79d;--surface-shadow:rgba(0,0,0,.28)}
html[data-surface-theme="VERDE_FLORESTA"]{--surface-bg:#07150f;--surface-sidebar:#091d14;--surface-topbar:rgba(7,21,15,.88);--surface-panel:#0d2419;--surface-panel-2:#123522;--surface-panel-3:#17452d;--surface-elevated:#0b2117;--surface-line:#24503a;--surface-text:#e8f7ef;--surface-muted:#9dc1ac;--surface-disabled:#6c8b79;--surface-shadow:rgba(0,12,6,.34)}
html[data-surface-theme="AZUL_PROFUNDO"]{--surface-bg:#071225;--surface-sidebar:#091936;--surface-topbar:rgba(7,18,37,.9);--surface-panel:#0e2040;--surface-panel-2:#142b50;--surface-panel-3:#1b3764;--surface-elevated:#0b1c38;--surface-line:#29466f;--surface-text:#e9f1ff;--surface-muted:#a7bad8;--surface-disabled:#7184a0;--surface-shadow:rgba(1,8,22,.38)}
html[data-surface-theme="AZUL_PETROLEO"]{--surface-bg:#07181c;--surface-sidebar:#092328;--surface-topbar:rgba(7,24,28,.9);--surface-panel:#0d2a30;--surface-panel-2:#123a40;--surface-panel-3:#185058;--surface-elevated:#0b252b;--surface-line:#27606a;--surface-text:#e6f7f8;--surface-muted:#9dc8cb;--surface-disabled:#6f999d;--surface-shadow:rgba(0,13,16,.38)}
html[data-surface-theme="ROXO_NOTURNO"]{--surface-bg:#110b1d;--surface-sidebar:#190f2a;--surface-topbar:rgba(17,11,29,.9);--surface-panel:#211438;--surface-panel-2:#2d1c4a;--surface-panel-3:#3b255f;--surface-elevated:#1b102f;--surface-line:#513776;--surface-text:#f2eaff;--surface-muted:#c0aed9;--surface-disabled:#88769f;--surface-shadow:rgba(8,3,18,.4)}
html[data-surface-theme="GRAFITE"]{--surface-bg:#11151b;--surface-sidebar:#171c23;--surface-topbar:rgba(17,21,27,.9);--surface-panel:#20262e;--surface-panel-2:#2a323c;--surface-panel-3:#37424f;--surface-elevated:#1c222a;--surface-line:#465362;--surface-text:#f1f4f7;--surface-muted:#b1bdc9;--surface-disabled:#7c8997;--surface-shadow:rgba(5,7,10,.4)}
html[data-theme="CLARO"][data-surface-theme="NEUTRO"]{--surface-bg:#f5f7f6;--surface-sidebar:#f8fbf9;--surface-topbar:rgba(248,251,249,.9);--surface-panel:#fff;--surface-panel-2:#eef3f1;--surface-panel-3:#e4ece8;--surface-elevated:#fff;--surface-line:#d4dfda;--surface-text:#14221d;--surface-muted:#667b72;--surface-disabled:#65756c;--surface-shadow:rgba(25,54,43,.12)}
html[data-theme="CLARO"][data-surface-theme="VERDE_FLORESTA"]{--surface-bg:#f0f7f2;--surface-sidebar:#e6f1e9;--surface-topbar:rgba(246,251,247,.92);--surface-panel:#fff;--surface-panel-2:#e8f3eb;--surface-panel-3:#dcece1;--surface-elevated:#fff;--surface-line:#c5dccb;--surface-text:#14271c;--surface-muted:#587564;--surface-disabled:#607568;--surface-shadow:rgba(22,70,40,.13)}
html[data-theme="CLARO"][data-surface-theme="AZUL_PROFUNDO"]{--surface-bg:#f1f5fb;--surface-sidebar:#e7eef9;--surface-topbar:rgba(248,250,254,.92);--surface-panel:#fff;--surface-panel-2:#eaf0f8;--surface-panel-3:#dfe8f5;--surface-elevated:#fff;--surface-line:#c7d5e8;--surface-text:#17263d;--surface-muted:#60738f;--surface-disabled:#5b6e85;--surface-shadow:rgba(20,48,90,.13)}
html[data-theme="CLARO"][data-surface-theme="AZUL_PETROLEO"]{--surface-bg:#eef8f8;--surface-sidebar:#e2f1f2;--surface-topbar:rgba(247,252,252,.92);--surface-panel:#fff;--surface-panel-2:#e6f2f3;--surface-panel-3:#d9ebed;--surface-elevated:#fff;--surface-line:#bfdadd;--surface-text:#152b2f;--surface-muted:#5a777b;--surface-disabled:#557477;--surface-shadow:rgba(15,78,86,.13)}
html[data-theme="CLARO"][data-surface-theme="ROXO_NOTURNO"]{--surface-bg:#f7f2fb;--surface-sidebar:#eee5f6;--surface-topbar:rgba(252,249,254,.92);--surface-panel:#fff;--surface-panel-2:#f1eaf8;--surface-panel-3:#e7dcf1;--surface-elevated:#fff;--surface-line:#d8c9e5;--surface-text:#2b1d3d;--surface-muted:#766286;--surface-disabled:#766880;--surface-shadow:rgba(70,38,106,.13)}
html[data-theme="CLARO"][data-surface-theme="GRAFITE"]{--surface-bg:#f2f4f6;--surface-sidebar:#e8ebef;--surface-topbar:rgba(250,251,252,.92);--surface-panel:#fff;--surface-panel-2:#edf0f3;--surface-panel-3:#e2e6eb;--surface-elevated:#fff;--surface-line:#cbd2da;--surface-text:#1d252d;--surface-muted:#66727e;--surface-disabled:#5d6b77;--surface-shadow:rgba(28,39,52,.14)}
html{--bg:var(--surface-bg);--panel:var(--surface-panel);--panel-2:var(--surface-panel-2);--panel-3:var(--surface-panel-3);--line:var(--surface-line);--text:var(--surface-text);--muted:var(--surface-muted);--shadow:0 18px 60px var(--surface-shadow);background:var(--surface-bg);color-scheme:dark}body{background:var(--surface-bg);color:var(--surface-text)}.sidebar,.sidebar-footer{background:var(--surface-sidebar)}.topbar{background:var(--surface-topbar)}.card,.company-pill,.profile,.filter-tabs,.table-wrap,.session-tab,.quick-summary div{background:var(--surface-panel);border-color:var(--surface-line);box-shadow:0 8px 40px var(--surface-shadow)}.modal-box,.modal-head{background:var(--surface-elevated);border-color:var(--surface-line)}.form-grid input,.form-grid select,.form-grid textarea,.auth-card input,.field,.icon-btn,.material-btn{background:var(--surface-panel-2);color:var(--surface-text);border-color:var(--surface-line)}.menu button{color:var(--surface-muted)}.menu-group,th{color:var(--surface-muted)}.btn,.filter-tabs button.active,.weight-group-head,.check-card,.entity-meta div,.progress{background:var(--surface-panel-3);border-color:var(--surface-line)}.btn.secondary{color:var(--surface-text)}.appearance-description{display:block;color:var(--surface-muted);font-size:.76rem;margin:-4px 0 8px}.appearance-surface-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.appearance-surface{display:flex;align-items:center;gap:10px;min-height:60px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);text-align:left}.appearance-surface:hover,.appearance-surface.selected{border-color:var(--accent);background:var(--accent-soft)}.appearance-surface.selected{box-shadow:0 0 0 2px rgb(var(--accent-rgb) / .18);color:var(--accent)}.appearance-surface:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.appearance-surface strong,.appearance-surface small{display:block}.appearance-surface small{color:var(--muted);font-size:.66rem;font-weight:500;margin-top:2px}.surface-preview{width:50px;height:38px;flex:0 0 50px;display:block;position:relative;border-radius:7px;background:var(--surface-preview-bg);overflow:hidden;border:1px solid rgb(255 255 255 / .2)}.surface-preview i{display:block;position:absolute;inset:0 0 0 0;width:15px;background:var(--surface-preview-panel)}.surface-preview b{display:block;position:absolute;left:21px;right:5px;top:8px;height:9px;border-radius:3px;background:var(--surface-preview-panel)}.surface-preview em{display:block;position:absolute;left:21px;right:13px;top:22px;height:3px;border-radius:2px;background:var(--surface-preview-text);opacity:.7}@media(max-width:620px){.appearance-surface-options{grid-template-columns:1fr}.appearance-surface{min-height:56px}}
.press-form input,.press-form select{min-height:58px;font-size:1.05rem}.press-balance{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:14px;background:#08130f;border:1px solid var(--line);border-radius:12px}.press-balance>*{display:flex;align-items:center}.press-balance strong{color:var(--primary)}.receipt-80{width:80mm;max-width:100%;margin:auto;background:#fff;color:#111;padding:5mm;font-family:Arial,sans-serif}.receipt-80 h2,.receipt-80 h3,.receipt-80 p{margin:0 0 2.5mm}.receipt-80 .receipt-line{border-top:1px dashed #111;margin:2.5mm 0}.receipt-80 .receipt-item{margin:2mm 0}.receipt-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
@media(max-width:900px){.press-shell .btn.large{min-height:56px;font-size:1rem}.press-form{grid-template-columns:1fr 1fr}.press-balance{grid-template-columns:1fr 1fr}.press-balance b{grid-column:1/-1}}
@media(max-width:620px){.press-form{grid-template-columns:1fr}.press-form .full{grid-column:1}.press-balance{grid-template-columns:1fr}.press-balance b{grid-column:1}.press-form input,.press-form select{min-height:62px;font-size:1.15rem}}
@page{size:80mm auto;margin:0}
@media print{html,body{width:80mm!important;height:auto!important;margin:0!important;padding:0!important;overflow:visible!important;background:#fff!important}body>*:not(#modalRoot){display:none!important}#modalRoot,.modal,.modal-box,.modal-body{position:static!important;display:block!important;width:80mm!important;max-width:80mm!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important;background:#fff!important;border:0!important;box-shadow:none!important}.modal-head,.receipt-actions,.modal-body>*:not(.receipt-80){display:none!important}.receipt-80{display:block!important;position:static!important;width:80mm!important;box-sizing:border-box!important;margin:0!important;padding:3mm!important;box-shadow:none!important;break-inside:avoid-page;page-break-inside:avoid;color:#000!important;background:#fff!important}.receipt-80 *{color:#000!important}.receipt-80 img{max-width:58mm;max-height:22mm;object-fit:contain}}

/* v4: menu realmente adaptativo, filtros e módulos administrativos */
.brand-mark img{width:28px;height:28px;object-fit:contain;border-radius:7px}.app-shell,.sidebar,.main{transition:margin .22s ease,width .22s ease,transform .22s ease}.app-shell.sidebar-collapsed .sidebar{width:82px}.app-shell.sidebar-collapsed .main{margin-left:82px}.app-shell.sidebar-collapsed .sidebar-brand div,.app-shell.sidebar-collapsed .company-pill,.app-shell.sidebar-collapsed .menu-group,.app-shell.sidebar-collapsed .menu button span:not(.nav-icon),.app-shell.sidebar-collapsed .profile div,.app-shell.sidebar-collapsed .profile i,.app-shell.sidebar-collapsed .install-btn{display:none}.app-shell.sidebar-collapsed .sidebar-brand{justify-content:center}.app-shell.sidebar-collapsed .menu button{justify-content:center}.session-filters,.material-filter,.tabs-v4{margin-bottom:16px;width:max-content;max-width:100%;overflow:auto}.material-filter{margin-top:12px}.tabs-v4{display:flex;padding:4px;border:1px solid var(--line);border-radius:11px;background:var(--panel);gap:4px}.tabs-v4 button{border:0;border-radius:8px;background:transparent;color:var(--muted);padding:10px 14px;font-weight:700}.tabs-v4 button.active{background:var(--panel-3);color:var(--primary)}.people-panel[hidden]{display:none}.metric-list{margin-top:16px;max-height:350px;overflow:auto}.status.Cancelada{background:rgba(255,107,104,.12);color:var(--danger)}
@media(min-width:901px){#openMenu{display:grid}.sidebar #closeMenu{display:none}}
@media(max-width:900px){.app-shell.sidebar-collapsed .sidebar{width:min(290px,86vw)}.app-shell.sidebar-collapsed .main{margin-left:0}.app-shell.sidebar-collapsed .sidebar-brand div,.app-shell.sidebar-collapsed .company-pill,.app-shell.sidebar-collapsed .menu-group,.app-shell.sidebar-collapsed .menu button span:not(.nav-icon),.app-shell.sidebar-collapsed .profile div,.app-shell.sidebar-collapsed .profile i,.app-shell.sidebar-collapsed .install-btn{display:initial}.app-shell.sidebar-collapsed .menu button{justify-content:flex-start}}
@media(max-width:620px){.session-filters,.material-filter,.tabs-v4{width:100%}.session-filters button,.material-filter button,.tabs-v4 button{flex:1;white-space:nowrap}.field-row{flex-direction:column}.table-wrap .actions .btn{min-height:38px}.material-btn{min-height:66px}.receipt-80{overflow-wrap:anywhere}}

/* v5 · separação operacional/financeira e documentos */
.section-head{display:flex;justify-content:space-between;align-items:end;gap:14px;margin:28px 0 14px}.section-head h2{margin:3px 0 0;font-size:1.1rem}.session-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.session-active-card{display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-height:175px;padding:18px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(145deg,#11231d,#0b1814);color:var(--text);text-align:left;transition:.18s}.session-active-card:hover{border-color:var(--primary);transform:translateY(-2px)}.session-active-card b{font-size:1.08rem;margin-top:5px}.session-active-card small{color:var(--muted)}.session-active-card strong{font-size:1.5rem;color:var(--primary);margin:auto 0 5px}.session-active-card i{font-style:normal;font-size:.72rem;color:#a8cabe}.table-sub{display:block;color:var(--muted);margin-top:4px}.modal-step{display:flex;align-items:center;gap:12px;margin-bottom:18px}.modal-step>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--primary);color:#06110d;font-weight:900}.modal-step div{display:flex;flex-direction:column}.modal-step small{color:var(--muted);margin-top:3px}.supplier-pick-list{display:grid;gap:8px;max-height:450px;overflow:auto;margin-top:14px}.supplier-pick{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;width:100%;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--panel);color:var(--text);text-align:left}.supplier-pick:hover{border-color:var(--primary);background:#12251f}.supplier-pick .avatar{width:40px;height:40px;border-radius:10px;background:#18352b;color:var(--primary);display:grid;place-items:center;font-weight:900}.supplier-pick div{display:flex;min-width:0;flex-direction:column}.supplier-pick small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}.session-actions{display:flex;gap:8px;justify-content:flex-end;margin:-4px 0 14px}.operator-hint{color:var(--muted);font-size:.7rem;line-height:1.5;margin:12px 0 0}.weight-total div{display:flex;flex-direction:column;gap:4px}.weight-total small{color:var(--muted)}.closing-party{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.closing-party>div{display:flex;flex-direction:column;padding:13px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.closing-party small{color:var(--muted);font-size:.62rem}.closing-party b{margin:5px 0}.closing-party span{color:var(--muted);font-size:.72rem}.closing-table{border:1px solid var(--line);border-radius:12px;overflow:hidden}.closing-row{display:grid;grid-template-columns:minmax(150px,1.4fr) minmax(100px,.7fr) minmax(120px,.7fr) minmax(110px,.7fr);gap:10px;align-items:center;padding:10px 13px;border-bottom:1px solid var(--line)}.closing-row:last-child{border:0}.closing-row.heading{background:#10201b;color:var(--muted);font-size:.63rem;text-transform:uppercase}.closing-row label{margin:0}.closing-row .field{padding:9px}.closing-total{display:flex;justify-content:flex-end;gap:28px;padding:17px 3px;font-size:.75rem}.closing-total span{display:flex;flex-direction:column;gap:4px;color:var(--muted)}.closing-total b,.closing-total strong{font-size:1.15rem;color:var(--text)}.closing-total strong{color:var(--primary)}.closing-options{padding-top:8px}.success-mark{width:62px;height:62px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:rgb(var(--accent-rgb) / .16);border:1px solid var(--primary);color:var(--primary);font-size:2rem}.completion-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:18px}.receipt-v5 .center{text-align:center}.receipt-v5>h2,.receipt-v5>h3{text-align:center}.receipt-logo{text-align:center;border:1px dashed #aaa;padding:3mm;margin-bottom:3mm}.cdf-item{display:grid;grid-template-columns:1fr 140px 1fr auto;gap:8px;align-items:center;margin-bottom:8px}.certificate-history{margin-top:16px}.logo-upload{margin-top:16px}.status.Inativa,.status.Inativo{background:rgba(255,107,104,.12);color:var(--danger)}
input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;appearance:textfield}
@media(max-width:900px){.session-card-grid{grid-template-columns:repeat(2,1fr)}.closing-row{grid-template-columns:1fr 110px 120px}.closing-row>*:last-child{grid-column:2/-1;text-align:right}.cdf-item{grid-template-columns:1fr 120px auto}.cdf-description{grid-column:1/-1}}
@media(max-width:620px){.section-head{align-items:stretch;flex-direction:column}.session-card-grid{grid-template-columns:1fr}.session-actions{justify-content:stretch}.session-actions .btn{flex:1}.closing-party{grid-template-columns:1fr}.closing-row,.closing-row.heading{grid-template-columns:1fr 1fr}.closing-row.heading span:nth-child(3),.closing-row.heading span:nth-child(4){display:none}.closing-row label,.closing-row strong{grid-column:auto}.closing-total{justify-content:space-between}.completion-actions{grid-template-columns:1fr}.cdf-item{grid-template-columns:1fr auto}.cdf-weight,.cdf-description{grid-column:1/-1}.supplier-pick small{white-space:normal}.weight-card{padding:14px}.material-buttons{max-height:none}}
.receipt-logo{border:0;padding:2mm;margin-bottom:2mm}.receipt-logo img{max-width:34mm;max-height:16mm;object-fit:contain}
.warning-box{display:flex;flex-direction:column;gap:4px;margin-bottom:14px;padding:12px;border:1px solid rgba(245,185,66,.35);border-radius:10px;background:rgba(245,185,66,.09);color:var(--warning)}.warning-box span{font-size:.72rem}

/* v5.1 · PIN operacional, relatórios e ações explícitas */
.pin-pad{display:grid;grid-template-columns:repeat(3,minmax(56px,1fr));gap:10px;margin:4px 0 8px}.pin-pad[hidden]{display:none}.pin-pad button{min-height:54px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2);color:var(--text);font-size:1.25rem;font-weight:800}.pin-pad button:hover,.pin-pad button:focus-visible{border-color:var(--primary);background:var(--panel-3);transform:translateY(-1px)}.detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.detail-list>div{padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2)}.detail-list small{display:block;color:var(--muted);margin-bottom:5px}.visually-muted{opacity:.72}.report-feature{margin-bottom:18px}.session-active-card>span:not(.status){color:var(--muted);font-size:.82rem}
@media(max-width:680px){.pin-pad button{min-height:60px;font-size:1.4rem}.detail-list{grid-template-columns:1fr}.actions{gap:7px}.actions .btn{min-height:42px;white-space:normal}.weight-item .actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.weight-item .actions .btn.danger{grid-column:1/-1}}

/* v5.1.1 · documentos empresariais e vencimentos */
.document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.document-card{display:flex;flex-direction:column;border-left:3px solid var(--primary)}.document-card.expiring{border-left-color:var(--warning)}.document-card.expired{border-left-color:var(--danger)}.document-card .actions{margin-top:auto}.status.PRÓXIMO.DO.VENCIMENTO{background:rgba(245,185,66,.12);color:var(--warning)}.status.VENCIDO,.status.CANCELADO{background:rgba(255,107,104,.12);color:var(--danger)}.status.RENOVADO{background:rgba(103,167,255,.12);color:var(--blue)}
@media(max-width:900px){.document-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.document-grid{grid-template-columns:1fr}}
.beneficiary-section{margin:10px 0 6px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#0b1714}.recipient-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:8px 0}.recipient-choice{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px!important;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);cursor:pointer}.recipient-choice:has(input:checked){border-color:var(--primary);background:rgb(var(--accent-rgb) / .08)}.recipient-choice input{width:auto;margin-top:3px}.recipient-choice span,.recipient-choice b,.recipient-choice small{display:block}.recipient-choice span{flex:1}.recipient-choice small{margin-top:4px;color:var(--muted)}.prospect-controls{display:flex;justify-content:space-between;gap:12px;margin-bottom:16px}.prospect-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.prospect-card{border-top:2px solid var(--primary)}.prospect-materials{padding:9px;border-radius:8px;background:#0a1612;color:var(--muted)!important}.automatic-pin{display:none}
@media(max-width:900px){.prospect-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.recipient-grid,.prospect-grid{grid-template-columns:1fr}.prospect-controls{flex-direction:column}.automatic-pin{display:grid}.prospect-card .actions .btn{flex:1}}

/* v5.1.3 · retorno visível do CDF e favorecidos reutilizáveis */
.app-version{display:block;text-align:center;color:var(--muted);padding:8px 4px;font-size:.65rem}.cdf-inline-error{display:none;padding:12px 14px;border:1px solid #713333;border-radius:10px;background:#351b1b;color:#ffdada}.cdf-inline-error.visible{display:block}.btn[aria-busy="true"]{cursor:wait;opacity:.72}.beneficiary-picker{display:grid;gap:8px;max-height:240px;overflow:auto}.beneficiary-card{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:11px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.beneficiary-card:has(input:checked){border-color:var(--primary);background:rgb(var(--accent-rgb) / .07)}

/* v5.1.4 · estação operacional de prensa inspirada no fluxo real do Power Apps */

/* v5.2.0 · RH mensal e comercial transacional */
.rh-conference .toolbar select,.rh-conference .toolbar input{min-height:42px;background:#101827;color:var(--text);border:1px solid var(--border);border-radius:10px;padding:0 12px}.field.compact{width:110px}.conference-item,.sale-item-builder{margin:12px 0;padding:16px;border:1px solid var(--border);border-radius:14px;background:rgba(15,23,42,.55)}.conference-item>b{display:block;margin-bottom:10px}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.kpi{padding:18px;border:1px solid var(--border);border-radius:14px;background:linear-gradient(145deg,#101827,#0b1220)}.kpi small{display:block;color:var(--muted);margin-bottom:8px}.kpi b{font-size:1.45rem}.station-history-row .btn{white-space:nowrap}
@media(max-width:760px){.rh-conference .toolbar,.rh-conference .toolbar .actions{align-items:stretch}.rh-conference .toolbar .actions{display:grid;grid-template-columns:1fr 1fr}.rh-conference .toolbar .actions .btn{grid-column:1/-1}.conference-item .form-grid,.sale-item-builder .form-grid{grid-template-columns:1fr}.station-history-row .btn{width:100%;margin-top:6px}}
.press-exclusive .sidebar,.press-exclusive .topbar{display:none}.press-exclusive .main{margin-left:0}.press-exclusive .content{max-width:none;padding:0}.press-station{min-height:calc(100vh - 160px);background:#07110f;border:1px solid var(--line);border-radius:16px;overflow:hidden}.press-exclusive .press-station{min-height:100vh;border:0;border-radius:0}.press-station-head{min-height:96px;padding:16px 24px;display:grid;grid-template-columns:minmax(300px,1fr) auto minmax(340px,1fr);gap:22px;align-items:center;background:#0b1713;border-bottom:1px solid var(--line)}.press-station-brand{display:flex;align-items:center;gap:14px}.press-kg{width:58px;height:58px;display:grid;place-items:center;border-radius:12px;background:var(--primary);color:#04100c;font-size:1.25rem;font-weight:900;box-shadow:0 10px 30px rgb(var(--accent-rgb) / .2)}.press-station-brand h2{margin:0;font-size:1.35rem;letter-spacing:.02em}.press-station-brand p{margin:4px 0 0;color:var(--muted)}.press-tabs{display:flex;padding:4px;border:1px solid var(--line);background:#101e19;border-radius:12px}.press-tabs button{min-width:132px;min-height:50px;padding:0 22px;border:0;border-radius:9px;background:transparent;color:#a7bbb4;font-weight:900;font-size:.95rem;letter-spacing:.05em}.press-tabs button.active{background:var(--primary);color:#04100c;box-shadow:0 5px 18px rgb(var(--accent-rgb) / .18)}.press-head-status{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.press-operator{padding:11px 14px;border:1px solid #255744;background:#10251e;border-radius:10px;color:#a8bdb5;font-size:.72rem}.press-operator b{color:var(--text)}.connection-state{padding:9px 12px;border:1px solid var(--line);border-radius:999px;font-size:.68rem;font-weight:800}.connection-state.online{color:var(--primary);border-color:#255744}.connection-state.offline-state{color:var(--danger);border-color:#663331}.press-head-status>small{color:var(--muted)}.press-logout{min-height:40px}.press-station-layout{display:grid;grid-template-columns:minmax(360px,38%) minmax(0,62%);min-height:650px}.press-register-panel{padding:clamp(22px,2.4vw,38px);border-right:1px solid var(--line);background:linear-gradient(160deg,#091512,#07110f)}.press-history-panel{padding:clamp(22px,2.4vw,38px);background:#081310}.press-panel-title{display:flex;flex-direction:column;gap:6px;margin-bottom:24px}.press-panel-title>span,.station-history-head span{font-size:1.08rem;font-weight:900;letter-spacing:.07em}.press-panel-title small,.station-history-head small{color:var(--muted)}.station-form{display:flex;flex-direction:column;gap:16px}.station-picker{width:100%;min-height:82px;padding:14px 18px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:12px;background:#102019;color:var(--text);text-align:left}.station-picker:hover,.station-picker:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .1)}.station-picker span{font-size:.65rem;color:var(--muted);letter-spacing:.1em}.station-picker b{font-size:1.05rem}.station-weight-label{margin-top:4px;color:#9ab0a8;font-size:.72rem;font-weight:800;letter-spacing:.08em}.station-weight{height:132px;display:grid;grid-template-columns:1fr 72px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#06100d}.station-weight:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px rgb(var(--accent-rgb) / .1)}.station-weight input{min-width:0;border:0;background:transparent;color:var(--primary);font-size:clamp(3.6rem,6vw,5.4rem);font-weight:900;text-align:center;outline:none;font-variant-numeric:tabular-nums}.station-weight input:disabled{color:#466057}.station-weight span{display:grid;place-items:center;border-left:1px solid var(--line);color:var(--muted);font-size:1.3rem;font-weight:800}.station-error{padding:12px 14px;border:1px solid #713735;border-radius:10px;background:rgba(255,107,104,.1);color:#ffaaa7;font-size:.84rem;line-height:1.4}.station-error[hidden]{display:none}.station-submit{min-height:76px;font-size:1.05rem;font-weight:900;letter-spacing:.04em}.station-kpis{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}.station-kpis.one{grid-template-columns:1fr}.station-kpis>div{min-height:130px;padding:20px;border:1px solid var(--line);border-radius:12px;background:#0e1d18;display:flex;flex-direction:column;justify-content:space-between}.station-kpis small{color:var(--muted);font-size:.67rem;letter-spacing:.09em}.station-kpis strong{font-size:2.15rem;color:var(--primary);font-variant-numeric:tabular-nums}.station-kpis em{margin-left:6px;font-size:.9rem;color:var(--muted);font-style:normal}.station-history-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.station-history-head>div{display:flex;flex-direction:column;gap:6px}.station-history-list{display:flex;flex-direction:column;gap:9px}.station-history-row{min-height:82px;padding:12px 14px;display:grid;grid-template-columns:120px minmax(190px,1fr) 130px 100px auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:11px;background:#0e1c18}.station-history-row.cancelled{opacity:.58}.station-history-row.cancelled b,.station-history-row.cancelled strong{text-decoration:line-through}.history-number,.history-material{display:flex;flex-direction:column;gap:5px}.history-number b{font-size:.86rem}.history-number small,.history-material small{color:var(--muted);font-size:.7rem}.history-material b{font-size:.95rem}.history-weight{text-align:right;color:var(--primary);font-size:1.35rem;font-variant-numeric:tabular-nums}.waste-type{display:grid;grid-template-columns:1fr 1fr;gap:8px}.waste-type button{min-height:58px;border:1px solid var(--line);border-radius:10px;background:#102019;color:#a8bbb4;font-weight:900}.waste-type button.active{border-color:var(--primary);background:#153328;color:var(--primary)}.station-material-modal,.station-reference-modal{display:flex;flex-direction:column;gap:18px}.station-material-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-height:62vh;overflow:auto}.station-material-card{min-height:108px;padding:18px;border:1px solid var(--line);border-radius:12px;background:#0e1d18;color:var(--text);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;text-align:left}.station-material-card:hover,.station-material-card:focus-visible{border-color:var(--primary);background:#153328}.station-material-card b{font-size:1.02rem}.station-material-card small{color:var(--muted)}.reference-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.reference-list button{min-height:68px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#0e1d18;color:var(--text);text-align:left;display:flex;flex-direction:column;gap:5px}.reference-list button:hover{border-color:var(--primary)}.reference-list small{color:var(--muted)}
@media(max-width:1100px){.press-station-head{grid-template-columns:1fr auto}.press-head-status{grid-column:1/-1;justify-content:space-between}.press-station-layout{grid-template-columns:minmax(330px,40%) minmax(0,60%)}.station-history-row{grid-template-columns:96px minmax(150px,1fr) 105px auto}.station-history-row>span{display:none}.station-history-row .btn{grid-column:4}.station-material-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.press-station{border-radius:0}.press-station-head{grid-template-columns:1fr;padding:14px}.press-tabs{width:100%}.press-tabs button{flex:1;min-width:0}.press-head-status{justify-content:flex-start}.press-operator{width:100%}.press-station-layout{grid-template-columns:1fr}.press-register-panel{border-right:0;border-bottom:1px solid var(--line);padding:20px 14px}.press-history-panel{padding:20px 14px}.station-weight{height:116px}.station-history-head{flex-direction:column}.station-history-row{grid-template-columns:1fr auto;gap:8px}.history-number{grid-row:1}.history-material{grid-column:1}.history-weight{grid-column:2;grid-row:1/3}.station-history-row>span{display:block;grid-column:1}.station-history-row .btn{grid-column:1/-1;min-height:48px}.station-material-grid,.reference-list{grid-template-columns:1fr}.station-kpis>div{min-height:105px}.press-head-status>small{margin-left:auto}}

/* v5.2.1 · completude da interface comercial e conferência RH */
.form-section-title{display:flex;justify-content:space-between;gap:12px;align-items:end;padding:14px 0 6px;border-bottom:1px solid var(--line)}.form-section-title b{color:var(--primary);font-size:.76rem;letter-spacing:.1em}.form-section-title small{color:var(--muted)}.sale-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.status-counter{padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.status-counter small,.status-counter b{display:block}.status-counter small{color:var(--muted);font-size:.62rem;letter-spacing:.06em}.status-counter b{font-size:1.5rem;margin-top:8px}.sale-operational-form .sale-item-builder{background:#0a1612}.sale-operational-form .quick-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.sale-operational-form .quick-summary .full{grid-column:1/-1}.alert.danger{padding:12px 14px;border:1px solid #713333;border-radius:10px;background:#351b1b;color:#ffdada}.conference-form{margin-top:16px}.conference-item{background:#0a1612;border-color:#29473d}.conference-title{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.conference-title b{display:block;font-size:1rem}.conference-indicator{padding:6px 9px;border-radius:999px;font-size:.62rem;font-weight:900}.conference-indicator.neutral{background:rgb(var(--accent-rgb) / .1);color:var(--primary)}.conference-indicator.attention{background:rgba(245,185,66,.12);color:var(--warning)}.conference-indicator.danger{background:rgba(255,107,104,.13);color:var(--danger)}.conference-metrics,.conference-calculation{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0 16px}.conference-metrics>div,.conference-calculation>div{padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--panel)}.conference-metrics small,.conference-calculation small,.conference-metrics b,.conference-calculation b{display:block}.conference-metrics small,.conference-calculation small{color:var(--muted);font-size:.58rem}.conference-metrics b,.conference-calculation b{margin-top:5px;font-size:.82rem}.required-note{color:var(--warning)!important}.sale-detail-item{padding:13px 0;border-bottom:1px solid var(--line)}.sale-detail-item:last-child{border-bottom:0}.adjustment-reason{padding:10px;border-left:3px solid var(--warning);background:rgba(245,185,66,.07);color:#ead6a8}.receipt-history{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.receipt-history>div{display:flex;align-items:flex-end;gap:7px;flex-direction:column}.receipt-history>div:first-child{align-items:flex-start}.receipt-history small{color:var(--muted)}.absence-block{margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.statement-table table{min-width:1500px}.status.attention{background:rgba(245,185,66,.12);color:var(--warning)}
@media(max-width:900px){.sale-status-grid{grid-template-columns:repeat(2,1fr)}.sale-operational-form .quick-summary,.conference-metrics,.conference-calculation{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.sale-status-grid,.sale-operational-form .quick-summary,.conference-metrics,.conference-calculation{grid-template-columns:1fr}.conference-title,.receipt-history{align-items:stretch;flex-direction:column}.receipt-history>div{align-items:flex-start}.form-section-title{align-items:flex-start;flex-direction:column}.modal-body{padding:14px}.sale-operational-form .form-actions .btn,.conference-form .form-actions .btn{width:100%}}
@media(max-width:620px){.topbar{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;gap:8px}.topbar>div:not(.top-actions){min-width:0}.topbar h1,.topbar .eyebrow{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-actions{width:auto;min-width:0}.toolbar>*{min-width:0;width:100%}.filter-tabs{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}}

/* V5.21.125 · evolução da UX da prensa após homologação manual */
.press-outside-state{padding:10px 18px;background:rgba(245,185,66,.14);border-bottom:1px solid rgba(245,185,66,.38);color:#f6d98f;font-weight:900;letter-spacing:.04em;text-align:center}
.station-picker{border-color:#d7a52f;background:#4a3710;box-shadow:0 0 0 2px rgba(245,185,66,.16)}
.station-picker span,.station-picker b{color:#fff1bf}.station-picker:hover,.station-picker:focus-visible{border-color:#ffe08a;box-shadow:0 0 0 4px rgba(245,185,66,.22)}
.station-operator-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.station-operator-grid .press-eligible{border-color:#f5b942;background:#3e3010}.station-operator-grid button{min-height:92px;font-size:1.05rem;position:relative}.station-operator-grid button.selected{border-color:#7dd3fc;background:#12334a;box-shadow:0 0 0 3px rgba(125,211,252,.62),0 0 22px rgba(56,189,248,.22);outline:2px solid #e0f2fe;outline-offset:2px}.station-operator-grid button.selected.press-eligible{border-color:#7dd3fc;background:#25402c}.station-operator-grid button[aria-pressed="true"]:after{content:"";position:absolute;inset:6px;border:1px solid rgba(224,242,254,.75);border-radius:8px;pointer-events:none}.station-operator-grid .selection-indicator{display:none;color:#e0f2fe;font-size:.68rem;font-weight:900;letter-spacing:.08em}.station-operator-grid button.selected .selection-indicator{display:block}.station-operator-grid button:disabled{opacity:.6}
@media (min-width:761px) and (max-height:850px){.press-station-head{min-height:76px;padding:10px 18px}.press-kg{width:44px;height:44px}.press-station-brand h2{font-size:1.08rem}.press-station-brand p{margin-top:2px}.press-station-layout{min-height:0}.press-register-panel,.press-history-panel{padding:clamp(14px,1.8vw,24px)}.press-panel-title{margin-bottom:12px}.station-form{gap:10px}.station-picker{min-height:68px;padding:10px 14px}.station-weight{height:96px}.station-submit{min-height:58px}.station-kpis{margin-top:14px}.station-kpis>div{min-height:82px;padding:12px}.station-kpis strong{font-size:1.65rem}.station-history-row{min-height:62px;padding:8px 10px}}
@media (min-width:761px) and (max-height:850px){
  .press-page{height:100dvh;overflow:hidden}
  .press-page .sidebar,.press-page .topbar{display:none}
  .press-page .main{margin-left:0}
  .press-page .main,.press-page .content{height:100dvh;min-height:0;overflow:hidden}
  .press-page .press-station{height:100dvh;min-height:0;display:flex;flex-direction:column}
  .press-page .press-station-layout{min-height:0;flex:1;overflow:hidden}
  .press-page .press-register-panel,.press-page .press-history-panel{min-height:0;overflow:auto}
  .press-change-shift{min-height:44px;white-space:nowrap}
}
@media (min-width:761px) and (max-height:850px){
  .press-page,.press-page .main,.press-page .content,.press-page .press-station{
    box-sizing:border-box;height:100dvh;max-height:100dvh;min-height:0;overflow:hidden
  }
  .press-page .press-station-head{
    display:flex;flex-wrap:nowrap;gap:8px;padding:8px 14px;min-height:0;height:76px
  }
  .press-page .press-station-brand{min-width:0;flex:1 1 auto;gap:8px}
  .press-page .press-station-brand>div{min-width:0}
  .press-page .press-station-brand h2,.press-page .press-station-brand p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .press-page .press-tabs{flex:0 0 auto}
  .press-page .press-tabs button{min-width:100px;min-height:40px;padding:0 12px;font-size:.78rem}
  .press-page .press-head-status{grid-column:auto;flex:0 1 auto;flex-wrap:nowrap;gap:6px;min-width:0}
  .press-page .press-operator{max-width:200px;overflow:hidden;text-overflow:ellipsis;padding:7px 8px;font-size:.62rem;white-space:nowrap}
  .press-page .press-change-shift{min-height:40px;padding:7px 8px;font-size:.65rem}
  .press-page .connection-state{padding:6px 8px;font-size:.6rem;white-space:nowrap}
  .press-page .press-head-status>small{white-space:nowrap}
  .press-page .press-station-layout{height:auto;min-height:0;max-height:none;flex:1 1 0;overflow:hidden}
  .press-page .press-register-panel,.press-page .press-history-panel{height:100%;min-height:0;overflow:auto}
}
@media (min-width:761px) and (max-width:1180px){
  .press-page{height:100dvh;overflow:hidden}
  .press-page .sidebar,.press-page .topbar{display:none}
  .press-page .main{margin-left:0}
  .press-page .main,.press-page .content{height:100dvh;min-height:0;overflow:hidden}
  .press-page .press-station{height:100dvh;min-height:0;display:flex;flex-direction:column}
  .press-page .press-station-layout{min-height:0;flex:1;overflow:hidden}
  .press-page .press-register-panel,.press-page .press-history-panel{min-height:0;overflow:auto}
}
@media (orientation:portrait) and (min-width:761px) and (max-width:1180px){
  .press-page .press-station-layout{display:flex;flex-direction:column;height:auto;min-height:0;flex:1 1 0}
  .press-page .press-register-panel{flex:0 0 auto}
  .press-page .press-history-panel{flex:1 1 auto;min-height:0;overflow:auto}
}
@media (orientation:portrait) and (min-width:761px){.press-station-layout{grid-template-columns:1fr}.press-register-panel{border-right:0;border-bottom:1px solid var(--line)}.press-history-panel{min-height:320px}}

/* v5.6.0 · dashboard compacto, tablet first e popups responsivos */
.history-presets{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}

.quick-expense-trigger{background:linear-gradient(135deg,#f5b83b,#e78c25);color:#17110a;border-color:transparent;font-weight:900;box-shadow:0 8px 24px #e78c2530}
.quick-expense-shell{display:grid;gap:18px}.quick-expense-search input{font-size:1.05rem;padding:15px 18px}.quick-expense-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;max-height:56vh;overflow:auto;padding:2px}.quick-expense-card{min-height:138px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,var(--panel),var(--panel-soft));color:var(--text);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;padding:20px;text-align:left;cursor:pointer;transition:.18s ease}.quick-expense-card:hover,.quick-expense-card:focus{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 12px 30px #0004}.quick-expense-card span{font-size:1.8rem}.quick-expense-card b{font-size:1rem}.quick-expense-card small{color:var(--muted)}.quick-expense-form{display:grid;gap:18px}.quick-selected{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid var(--primary);border-radius:14px;background:#36d3990c}.quick-selected>span{font-size:2rem}.quick-selected>div{display:grid;gap:3px;flex:1}.quick-value{font-size:.8rem;letter-spacing:.08em;color:var(--muted)}.quick-value input{font-size:clamp(2rem,7vw,4.2rem);height:auto;padding:16px 20px;font-weight:900;color:var(--primary)}
.advance-grid,.fleet-vehicle-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.advance-card,.vehicle-card{display:grid;gap:18px}.advance-balance{display:grid;grid-template-columns:1fr auto;gap:4px;align-items:end;padding:18px;border-radius:14px;background:var(--panel-soft);border:1px solid var(--line)}.advance-balance small,.advance-balance span{color:var(--muted)}.advance-balance strong{grid-row:1/3;grid-column:2;font-size:1.7rem;color:var(--primary)}
.fleet-map-toolbar{display:flex;justify-content:flex-end;gap:8px}
.fleet-map-fullscreen{
  position:fixed!important;
  inset:0!important;
  z-index:9999!important;
  display:grid!important;
  grid-template-rows:auto auto 1fr!important;
  gap:10px!important;
  padding:14px!important;
  background:var(--bg,#07110f)!important;
  overflow:hidden!important;
}

/* V5.21.4 · contadores de pendências financeiras no menu */
.menu button .nav-label{min-width:0}
.nav-pending-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#f5b942;color:#07110f;font-size:.68rem;font-weight:900;line-height:1;box-shadow:0 0 0 1px rgba(245,185,66,.25)}
.nav-pending-badge[hidden]{display:none}
.menu-zone-label{padding:11px 12px 7px;color:var(--primary);font-size:.62rem;font-weight:900;letter-spacing:.14em}.menu-more-options{margin-top:12px;border-top:1px solid var(--line);padding-top:6px}.menu-more-items{display:grid;gap:3px}.menu-more-items[hidden]{display:none}.navigation-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.navigation-editor>div{min-width:0;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2)}.navigation-editor h3{margin:0 0 10px;font-size:.75rem;letter-spacing:.1em}.navigation-sort-list{display:grid;gap:8px;min-height:58px}.navigation-sort-item{display:flex;align-items:center;gap:8px;min-height:58px;padding:7px 8px;border:1px solid var(--line);border-radius:10px;background:var(--panel);overflow:hidden}.navigation-sort-item>b{min-width:0;flex:1}.navigation-item-actions{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.navigation-item-actions .icon-btn{min-width:40px;min-height:40px}.navigation-item-actions .btn{min-height:40px;padding:8px 10px;font-size:.68rem}.navigation-role-picker{min-width:220px}.navigation-settings .form-actions{margin-top:16px}
.menu-section{margin:3px 0 7px}.menu-group{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;border:0;background:transparent;color:var(--muted);font-size:.62rem;letter-spacing:.14em;text-align:left;padding:11px 12px 7px;margin:0;border-radius:8px;cursor:pointer}.menu-group:hover,.menu-group:focus-visible{background:var(--panel);color:var(--text)}.menu-group:focus-visible,.menu button:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.menu-group-arrow{font-size:.9rem;line-height:1;transition:transform .16s ease}.menu-section:not(.is-open) .menu-group-arrow{transform:rotate(-90deg)}.menu-items{display:grid;gap:2px}.menu-items[hidden]{display:none}.menu-items>button{min-height:44px;padding:10px 12px}.menu-items>button.active{position:relative;font-weight:800}.menu-items>button.active:after{content:"";position:absolute;right:8px;width:6px;height:6px;border-radius:50%;background:var(--primary)}
.bank-payment-pending > td{background:rgba(245,185,66,.10);color:#f5c451}
.bank-payment-pending > td strong,.bank-payment-pending > td small{color:inherit}
.fleet-map-fullscreen .fleet-integration{display:none!important}
.fleet-map-fullscreen #fleetKpis{display:none!important}
.fleet-map-fullscreen .fleet-map-toolbar{
  position:absolute;
  top:18px;
  right:18px;
  z-index:10002;
}
.fleet-map-fullscreen #fleetMap{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  border:0!important;
  border-radius:0!important;
}
.fleet-map-fullscreen #fleetLiveList{display:none!important}
.fleet-map-fullscreen #fleetMapFullscreen{
  position:relative;
  z-index:10003;
  background:var(--panel)!important;
  box-shadow:0 4px 18px #0008;
}
body.fleet-fullscreen-open{overflow:hidden!important}

.fleet-tabs{margin-bottom:14px}.fleet-panel{display:grid;gap:14px;min-width:0}.fleet-integration{display:flex;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:12px;border:1px solid var(--line);background:var(--panel)}.fleet-integration.online{border-color:#36d39966}.fleet-integration.warning{border-color:#f5b83b66}.fleet-integration span{color:var(--muted)}.fleet-map{position:relative;height:min(62vh,650px);min-height:420px;border-radius:18px;overflow:hidden;border:1px solid var(--line);background:#0c1716;z-index:0;isolation:isolate;contain:paint}.fleet-map.history{height:480px}.leaflet-container{background:#101b1a;font-family:inherit}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#12201e;color:#f0f7f5}.leaflet-control-attribution{background:#0d1917db!important;color:#b6c5c1!important}.leaflet-control-attribution a{color:#65dfb2!important}.fleet-vehicle-label{padding:4px 7px!important;border:1px solid #36d39988!important;border-radius:7px!important;background:#0b1714e8!important;color:#f1fff9!important;box-shadow:0 4px 12px #0007!important;font-size:.68rem!important;font-weight:800!important;line-height:1.15!important;text-align:center!important}.fleet-vehicle-label:before{display:none}.fleet-live-list{display:grid;gap:10px}.fleet-live-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:15px 18px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.fleet-live-row>div{display:grid;gap:5px}.fleet-live-row>div:last-child{text-align:right}.fleet-live-row span,.fleet-live-row small{color:var(--muted)}.fleet-live-row.DISPOSITIVO.OFFLINE{border-color:#f06b6b66}.fleet-live-row.EM.MOVIMENTO{border-color:#36d39955}.vehicle-card .detail-list{grid-template-columns:repeat(2,1fr)}
.advance-offset-panel{margin:16px 0;padding:16px;border:1px solid #f5b83b66;background:#f5b83b0c;border-radius:14px;display:grid;gap:12px}.advance-offset-panel .advance-offset-values{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}.advance-offset-panel input{font-size:1.25rem;font-weight:800}.purchase-values{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}.purchase-values>div{padding:12px;border-radius:12px;background:var(--panel-soft);display:grid;gap:4px}.purchase-values strong{font-size:1.15rem}
@media(max-width:720px){.quick-expense-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-expense-card{min-height:120px;padding:15px}.advance-grid,.fleet-vehicle-grid{grid-template-columns:1fr}.fleet-map{min-height:360px;height:55vh;border-radius:12px}.fleet-integration,.fleet-live-row{align-items:flex-start;flex-direction:column}.fleet-live-row>div:last-child{text-align:left}.vehicle-card .detail-list{grid-template-columns:1fr}.purchase-values{grid-template-columns:1fr}}

.employee-advance-history{margin-top:10px;border-top:1px solid var(--line);padding-top:8px}.employee-advance-history summary,.employee-advance-technical summary{cursor:pointer;color:var(--muted);font-size:.85rem}.employee-advance-technical{margin-top:8px}.employee-advance-technical pre{max-width:100%;overflow:auto;white-space:pre-wrap;font-size:.72rem;background:var(--panel-2);padding:10px;border-radius:8px}
.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.kpi{min-height:102px;padding:14px 15px}.kpi-top{align-items:center}.kpi-icon{width:28px;height:28px;border-radius:8px;font-size:.82rem}.kpi strong{font-size:clamp(1.18rem,1.65vw,1.55rem);letter-spacing:-.025em;line-height:1.15;overflow-wrap:anywhere}.kpi small{margin:3px 0 0;font-size:.68rem;line-height:1.3}.dashboard-compact .card{padding:16px}.prospect-controls{flex-wrap:wrap}.prospect-controls #prospectView{order:-1;width:100%}.modal-box{max-width:calc(100vw - 28px)}.modal.large .modal-box{width:min(1180px,calc(100vw - 28px))}.station-material-card{min-height:120px;font-size:1rem}.station-material-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.field-row select{min-width:0}
@media(min-width:621px) and (max-width:1180px){.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.press-station-layout{grid-template-columns:minmax(330px,42%) minmax(0,58%)}.station-material-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.station-material-card{min-height:132px}.modal.large .modal-box{width:calc(100vw - 36px)}}
@media(max-width:620px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi{min-height:94px;padding:12px}.kpi strong{font-size:1.12rem}.kpi-icon{width:25px;height:25px}.modal-box,.modal.large .modal-box{max-width:100vw}.station-material-card{min-height:88px}.prospect-controls #prospectView{display:grid;grid-template-columns:1fr}.prospect-controls #prospectView button{width:100%}}
@media(max-width:370px){.kpi-grid{grid-template-columns:1fr}}

/* V5.21.135 · seletor de material da Prensa adaptativo para tablets */
.modal:has(.press-material-picker) .modal-box{width:min(1180px,calc(100vw - 28px));max-height:calc(100dvh - 20px)}
.press-material-picker{gap:10px}
.press-material-picker #pressMaterialSearch{height:42px;min-height:42px;padding:9px 12px}
.press-material-picker .station-material-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;max-height:none;overflow:visible}
.press-material-picker .station-material-card{min-height:88px;padding:10px;gap:4px;line-height:1.2}
.press-material-picker .station-material-card b{font-size:clamp(.82rem,1.15vw,1rem);line-height:1.2;overflow-wrap:anywhere}
.press-material-picker .station-material-card small{font-size:.7rem;line-height:1.2}
@media (min-width:761px) and (max-width:1180px){
  .modal:has(.press-material-picker){padding:10px}
  .modal:has(.press-material-picker) .modal-box{width:calc(100vw - 20px)}
  .modal:has(.press-material-picker) .modal-head{padding:12px 16px}
  .modal:has(.press-material-picker) .modal-body{padding:14px 16px 16px}
  .press-material-picker .station-material-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
  .press-material-picker .station-material-card{min-height:84px}
}
@media (max-width:760px){
  .press-material-picker .station-material-grid{grid-template-columns:repeat(auto-fit,minmax(142px,1fr))}
  .press-material-picker .station-material-card{min-height:78px;padding:9px}
}
.cdf-origin-choice{display:grid;gap:.75rem}.cdf-origin-choice>.eyebrow{font-size:.82rem;color:var(--text)}
.cdf-beneficiary-panel{padding:1rem;border:1px solid var(--border);border-radius:14px;background:rgba(255,255,255,.018)}
.cdf-chooser{margin-top:1rem;padding:1rem;border:1px solid var(--primary);border-radius:14px;background:var(--panel);box-shadow:0 18px 50px rgba(0,0,0,.35)}
.cdf-chooser>.field{width:100%;margin:.75rem 0}.cdf-chooser .beneficiary-picker{max-height:52vh;overflow:auto}
.cdf-new-beneficiary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem;padding:1rem;border:1px solid var(--border);border-radius:14px}
.cdf-new-beneficiary legend{padding:0 .5rem;font-weight:800;color:var(--primary)}
@media(max-width:700px){.cdf-new-beneficiary{grid-template-columns:1fr}.cdf-beneficiary-panel .card-title{align-items:flex-start}.cdf-beneficiary-panel .actions{width:100%}.cdf-beneficiary-panel .actions .btn{flex:1}}
.account-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:1rem}.account-card{display:grid;gap:1rem;padding:1rem;border:1px solid var(--border);border-radius:14px;background:rgba(255,255,255,.02)}.account-card.inactive{opacity:.58}.account-card strong{font-size:1.35rem}.account-card span{display:block;color:var(--muted);font-size:.84rem}.restricted-value{font-size:.92rem!important;color:var(--muted)}
.cash-flow-days{display:grid;gap:.75rem}.cash-flow-day{padding:0!important}.cash-flow-day summary{display:grid;grid-template-columns:1fr repeat(3,minmax(130px,auto));align-items:center;gap:1rem;padding:1rem;cursor:pointer}.cash-flow-day summary small{display:block;color:var(--muted)}.flow-in{color:#5ee4ad}.flow-out{color:#ff8b8b}.cash-flow-day .table-wrap{border-width:1px 0 0;border-radius:0}
.flow-visual{margin-bottom:1rem}.flow-chart{height:180px;display:flex;align-items:stretch;gap:8px;overflow-x:auto;padding:8px 2px 0;border-bottom:1px solid var(--line)}.flow-chart-day{min-width:34px;flex:1;display:grid;grid-template-rows:1fr 20px;gap:5px;text-align:center}.flow-bars{display:flex;align-items:flex-end;justify-content:center;gap:3px}.flow-bars i{width:min(13px,42%);height:var(--h);min-height:2px;border-radius:4px 4px 0 0}.flow-bars .in{background:#5ee4ad}.flow-bars .out{background:#ff8b8b}.flow-chart-day small{font-size:.58rem;color:var(--muted)}.flow-legend{display:flex;justify-content:flex-end;gap:1rem;padding-top:.7rem;font-size:.72rem}
@media(max-width:700px){.cash-flow-day summary{grid-template-columns:1fr 1fr}.account-grid{grid-template-columns:1fr}}
.report-catalog{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;margin-bottom:1rem}.report-card{display:flex;gap:.8rem;align-items:flex-start;padding:1rem;border:1px solid var(--border);border-radius:14px;background:var(--panel);color:var(--text);text-align:left}.report-card>span{font-size:1.4rem;color:var(--primary)}.report-card b,.report-card small{display:block}.report-card small{margin-top:.35rem;color:var(--muted);line-height:1.35}.report-card:hover,.report-card.active{border-color:var(--primary);background:rgb(var(--accent-rgb) / .08)}
/* V5.7 · Coletas */
.collection-filters{display:flex;gap:.55rem;overflow:auto;padding:.2rem 0 1rem}.collection-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem}.collection-card{border-left:3px solid #36d399}.collection-card.priority-urgente{border-left-color:#fb7185}.collection-team{display:grid;gap:.45rem;padding:.75rem 0;color:var(--muted)}.collection-mobile-summary{display:grid;gap:.45rem}.timeline{border-left:2px solid rgba(54,211,153,.25);margin:1rem;padding-left:1rem}.timeline>div{margin-bottom:1rem}.timeline span{color:var(--muted);margin-left:.5rem;font-size:.8rem}
@media(max-width:720px){.collection-grid{grid-template-columns:1fr}.collection-card .actions{position:sticky;bottom:0;background:var(--panel);padding:.65rem 0}.collection-card .btn{min-height:48px;flex:1}.collection-filters .btn{white-space:nowrap;min-height:44px}}

/* Coletas encerradas · diferenciação visual sem perder legibilidade */
.collection-card.collection-card-closed{
  opacity:.48;
  filter:saturate(.45);
  border-left-color:rgba(148,163,184,.45);
  background:rgba(255,255,255,.018);
}
.collection-card.collection-card-closed:hover{
  opacity:.62;
}
.collection-card.collection-card-closed .actions{
  opacity:1;
}
.collection-card.collection-card-closed .actions .btn{
  opacity:1;
}

/* V5.7.1 · coleta legível no pátio e administrativa no desktop */
.collection-filter-bar{grid-template-columns:minmax(180px,2fr) repeat(3,minmax(130px,1fr)) auto auto;align-items:end}.collection-material-tags{display:flex;flex-wrap:wrap;gap:.45rem;margin:.8rem 0}.collection-material-tags span{padding:.38rem .58rem;border:1px solid var(--border);border-radius:999px;background:rgba(255,255,255,.025);font-size:.78rem}.collection-material-row{display:grid;grid-template-columns:1.25fr 1fr .55fr 1fr auto;gap:.55rem;margin:.55rem 0;align-items:center}.collection-detail-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:1rem}.collection-destination-map{height:260px;border:1px solid var(--border);border-radius:var(--radius);display:grid;place-items:center;overflow:hidden;margin-bottom:1rem}.pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin:1.25rem 0}.pagination span{color:var(--muted);font-size:.86rem}
@media(max-width:900px){.collection-filter-bar{grid-template-columns:1fr 1fr}.collection-detail-grid{grid-template-columns:1fr}.collection-material-row{grid-template-columns:1fr 1fr}.collection-material-row [data-note]{grid-column:1/-1}.collection-card .actions .btn{min-height:46px;flex:1}.collection-card .actions{display:flex;flex-wrap:wrap}}
@media(max-width:560px){#content{min-width:0;overflow-x:hidden}.collection-filter-bar{grid-template-columns:minmax(0,1fr);min-width:0;width:100%}.collection-filter-bar label,.collection-filter-bar input,.collection-filter-bar select,.collection-card{min-width:0;max-width:100%}.collection-material-row{grid-template-columns:minmax(0,1fr)}.collection-material-row [data-note]{grid-column:auto}.collection-grid{grid-template-columns:minmax(0,1fr);min-width:0}.pagination{justify-content:space-between;flex-wrap:wrap;min-width:0}.pagination span{font-size:.72rem;text-align:center;order:-1;width:100%}.pagination .btn{flex:1;min-width:0}}
/* V5.7.2 · chegada física, motorista mobile e acompanhamento público */
.arrival-confirmed{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;padding:12px 14px;border:1px solid rgba(52,211,153,.38);border-radius:12px;background:rgba(16,185,129,.1);color:#a7f3d0}.arrival-confirmed span{font-size:.84rem}.btn.success{background:#10b981;color:#04110d;border-color:#34d399}.collection-quick-views{display:flex;gap:8px;overflow-x:auto;margin:0 0 14px;padding-bottom:4px}.collection-quick-views .btn{white-space:nowrap}.driver-mobile{width:min(720px,100%);margin:0 auto}.driver-hero{padding:20px}.driver-address{display:grid;gap:6px;margin:18px 0;padding:16px;border-radius:14px;background:rgba(255,255,255,.045)}.driver-address b{font-size:1.08rem}.driver-address span{color:var(--muted)}.driver-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.driver-actions .btn{min-height:58px;display:flex;align-items:center;justify-content:center;text-align:center}.collection-public-map{height:300px;margin:16px 0;border-radius:14px;overflow:hidden;background:#0d1715}.public-collection-card{width:min(720px,calc(100vw - 24px))}.collection-dashboard-panel{margin-top:16px}.collection-filter-bar label{min-width:150px}
@media(max-width:600px){.driver-mobile{padding-bottom:24px}.driver-hero{padding:16px}.driver-actions{grid-template-columns:1fr}.driver-actions .btn{width:100%;font-size:.92rem}.collection-destination-map,.collection-public-map{min-height:260px;height:260px}.arrival-confirmed{align-items:flex-start;flex-direction:column}.collection-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Central de Despacho V5.8.0 */
.dispatch-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.75fr);gap:18px;align-items:start;min-width:0}.dispatch-board{display:grid;gap:16px;min-width:0}.dispatch-vehicle{padding:18px;border:1px solid rgba(148,163,184,.14);min-width:0}.dispatch-vehicle>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.dispatch-vehicle h2{margin:.25rem 0}.dispatch-discovered-stops:empty{display:none}.dispatch-vehicle-pending-only{border-color:rgba(245,185,66,.45)}.dispatch-mission{display:grid;gap:7px;padding:14px;margin-top:12px;border-radius:12px;background:rgba(15,23,42,.55);border:1px solid rgba(148,163,184,.1)}.dispatch-mission>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.dispatch-mission>small,.dispatch-queue>small{font-size:.7rem;letter-spacing:.13em;color:#94a3b8}.dispatch-mission>span{color:#a8b3c7}.dispatch-queue{display:grid;gap:8px;margin-top:14px}.dispatch-queue-item{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border-radius:10px;background:#0c1716;border:1px solid rgba(54,211,153,.12);cursor:grab}.dispatch-queue-item>span{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#17342d;color:#7cf0c4}.dispatch-queue-item small{display:block;color:#94a3b8}.dispatch-queue-item.dragging{opacity:.42}.dispatch-map-card{position:sticky;top:104px;min-width:0;max-width:100%;isolation:isolate;z-index:0;contain:paint}.dispatch-map{position:relative;z-index:0;height:min(62vh,560px);min-height:360px;max-width:100%;border-radius:12px;overflow:hidden;background:#0b1514;isolation:isolate;contain:paint}.dispatch-map-fullscreen{position:fixed!important;inset:98px 10px 10px 270px!important;z-index:45!important;margin:0!important;padding:14px!important;background:#091512!important;display:flex!important;flex-direction:column!important}.app-shell.sidebar-collapsed .dispatch-map-fullscreen{left:92px!important}.dispatch-map-fullscreen .dispatch-map{height:auto!important;min-height:0!important;flex:1}.map-fullscreen-open{overflow:hidden}.sidebar.open~.main .leaflet-container{pointer-events:none!important}.leaflet-container{isolation:isolate}.discovered-stop-alert{margin-top:14px;display:grid;gap:12px;overflow:hidden}.discovered-stop-heading{display:grid;gap:4px;min-width:0}.discovered-stop-title{display:block;letter-spacing:.04em}.discovered-stop-vehicle{font-size:.92rem;font-weight:900;color:var(--text);overflow-wrap:anywhere}.discovered-stop-driver{font-weight:700;color:#d5e4df;overflow-wrap:anywhere}.discovered-stop-duration{color:var(--muted);font-size:.76rem}.supplier-combobox{position:relative;display:grid;gap:8px;z-index:5}.supplier-combobox-results{position:absolute;top:calc(100% + 6px);left:0;right:0;max-height:min(44vh,320px);overflow:auto;border:1px solid #315c4d;border-radius:11px;background:#0b1814;box-shadow:0 18px 45px rgba(0,0,0,.55);z-index:20}.supplier-combobox-results>button{width:100%;min-height:58px;padding:11px 13px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left;display:grid;gap:4px}.supplier-combobox-results>button:last-child{border-bottom:0}.supplier-combobox-results>button:hover,.supplier-combobox-results>button:focus-visible{background:rgb(var(--accent-rgb) / .1);outline:2px solid var(--primary);outline-offset:-2px}.supplier-combobox-results small{color:var(--muted)}.discovered-location-names{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.discovered-location-names p{margin:5px 0}.location-name-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.location-name-choice{margin:0!important}.location-name-choice input{position:absolute;opacity:0;pointer-events:none}.location-name-choice span{min-height:54px;padding:10px;display:flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2);text-align:center;font-weight:800}.location-name-choice small{font-size:.55rem;color:var(--primary)}.location-name-choice input:checked+span{border-color:var(--primary);background:rgb(var(--accent-rgb) / .12);color:var(--primary);box-shadow:0 0 0 2px rgb(var(--accent-rgb) / .1)}.location-name-choice input:focus-visible+span{outline:2px solid var(--primary);outline-offset:2px}.transfer-route-summary{display:grid;gap:10px}.transfer-route-summary>div{padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.transfer-route-summary small,.transfer-route-summary b{display:block}.transfer-route-summary small{color:var(--muted);margin-bottom:5px}.tracking-prompt{display:grid;gap:18px}.tracking-prompt>p{font-size:1.15rem}.driver-route{max-width:760px;margin:0 auto;display:grid;gap:15px}.driver-route>h1,.driver-route>h2{margin:12px 0 0}.driver-route-card{padding:18px}.driver-route-address{font-size:1.06rem;line-height:1.5}.driver-route-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.driver-return{text-align:center;font-weight:700;padding:22px}
@media(max-width:1050px){.dispatch-layout{grid-template-columns:1fr}.dispatch-map-card{position:static}.dispatch-map{height:420px}.location-name-options{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.dispatch-map-fullscreen{inset:86px 8px 8px!important;z-index:35!important}.app-shell.sidebar-collapsed .dispatch-map-fullscreen{left:8px!important}}
@media(max-width:700px){.navigation-editor{grid-template-columns:1fr}.navigation-sort-item{align-items:flex-start;flex-wrap:wrap}.navigation-item-actions{width:100%;justify-content:flex-end}}
@media(max-width:600px){.dispatch-vehicle{padding:14px}.dispatch-vehicle>header{flex-direction:column}.dispatch-mission>div{align-items:flex-start;flex-direction:column}.dispatch-queue-item{grid-template-columns:30px 1fr}.dispatch-queue-item .actions{grid-column:1/-1;display:grid;grid-template-columns:1fr}.dispatch-queue-item .btn,.discovered-stop-alert .btn{width:100%;min-height:48px}.location-name-options{grid-template-columns:repeat(2,minmax(0,1fr))}.location-name-choice span{min-height:58px;padding:9px 6px}.driver-route{padding-bottom:24px}.driver-route-actions{grid-template-columns:1fr}.driver-route .btn{min-height:54px}.dispatch-map{height:330px;min-height:330px}}
/* V5.9.0 · conferência de pesos */
.weight-summary-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.weight-summary-meta>div{display:grid;gap:4px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.weight-summary-meta small{color:var(--muted)}.weight-summary-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:14px}.weight-summary-group{border:1px solid var(--line);border-radius:12px;overflow:hidden}.weight-summary-group h3{margin:0;padding:14px;background:#10201b}.weight-summary-heading,.weight-summary-row{display:grid;grid-template-columns:70px 1fr;gap:12px;padding:9px 14px;border-top:1px solid var(--line)}.weight-summary-heading{color:var(--muted);font-size:.7rem}.weight-summary-row strong{text-align:right;color:var(--primary);font-variant-numeric:tabular-nums}.weight-summary-subtotal{display:grid;gap:5px;padding:12px 14px;background:rgb(var(--accent-rgb) / .06)}.weight-summary-total{display:grid;grid-template-columns:1fr auto auto;gap:20px;align-items:center;margin-top:16px;padding:18px;border:1px solid rgb(var(--accent-rgb) / .25);border-radius:12px;background:rgb(var(--accent-rgb) / .1)}.weight-summary-total strong{font-size:1.3rem;color:var(--primary)}
@media(max-width:600px){.weight-summary-meta{grid-template-columns:1fr}.weight-summary-groups{grid-template-columns:1fr}.weight-summary-total{grid-template-columns:1fr}.dispatch-map-fullscreen{inset:0!important;border-radius:0!important}.dispatch-map-fullscreen .card-title{align-items:flex-start;flex-direction:column}.dispatch-map-fullscreen .actions{width:100%}.dispatch-map-fullscreen .btn{width:100%}}

.fleet-truck-marker{
  background:transparent!important;
  border:0!important;
}

/* V5.21.2 · operação de balança compacta em desktop */
@media(min-width:901px){
  .content:has(.weigh-operation-open){padding-bottom:0}
  .weigh-operation-open{height:calc(100dvh - 126px);min-height:560px;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:8px;overflow:hidden}
  .weigh-operation-open .session-tabs{gap:6px;padding-bottom:0}
  .weigh-operation-open .session-tab{min-width:160px;padding:7px 9px;border-radius:9px}
  .weigh-operation-open .session-tab small{margin-top:2px;font-size:.65rem}
  .weigh-session-context{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 11px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
  .weigh-party{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:9px;min-width:0}
  .weigh-party small{grid-row:1/3;color:var(--muted);font-size:.56rem;letter-spacing:.08em}
  .weigh-party b,.weigh-party span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .weigh-party span{color:var(--muted);font-size:.68rem}
  .weigh-context-actions{display:flex;gap:6px;flex:0 0 auto}
  .weigh-context-actions .btn{padding:7px 10px}
  .weigh-operation-open .operational-weigh-layout{grid-template-columns:minmax(0,1.45fr) minmax(350px,.82fr);height:100%;min-height:0;gap:10px}
  .weigh-operation-open .weight-card{position:static;display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;min-height:0;overflow:hidden;padding:12px}
  .weigh-operation-open .weight-input{margin:5px 0}
  .weigh-operation-open .weight-input input{font-size:clamp(2.6rem,4vw,3.75rem);padding:8px 58px 8px 15px;min-height:68px}
  .weigh-operation-open .material-filter{margin-bottom:5px}
  .weigh-operation-open .material-filter button{padding:7px 12px}
  .weigh-operation-open .material-buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-height:none;min-height:0;overflow:auto;overscroll-behavior:contain;padding-right:2px}
  .weigh-operation-open .material-btn{min-height:46px;padding:7px 9px}
  .weigh-operation-open .material-btn small{font-size:.62rem}
  .weigh-operation-open .operator-hint{margin:5px 0 0}
  .weigh-notebook{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:0;overflow:hidden;padding:12px}
  .weigh-notebook .card-title{margin-bottom:6px}
  .weigh-notebook-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;padding-right:3px}
  .weigh-notebook .weight-group{margin-bottom:7px}
  .weigh-notebook .weight-group-head{padding:8px 10px}
  .weigh-notebook .weight-item{padding:7px 10px}
  .weigh-notebook .weight-item .btn{padding:6px 8px;font-size:.62rem}
  .weigh-notebook-footer{border-top:1px solid var(--line);padding-top:7px;background:var(--panel)}
  .weigh-notebook-footer .weight-total{margin:0 0 7px;padding:9px 11px}
  .weigh-notebook-footer .form-actions{margin-top:0;gap:6px}
  .weigh-notebook-footer .btn{padding:8px 10px}
}
@media(min-width:901px) and (max-width:1180px){.weigh-operation-open .material-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){
  .weigh-operation{display:block;height:auto;overflow:visible}
  .weigh-session-context{display:grid;gap:10px;margin-bottom:12px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
  .weigh-party{display:grid;gap:4px}.weigh-party small,.weigh-party span{color:var(--muted)}
  .weigh-context-actions{display:flex;gap:8px;flex-wrap:wrap}.weigh-context-actions .btn{flex:1}
  .weigh-notebook{margin-top:12px}.weigh-notebook-scroll{overflow:visible}.weigh-notebook-footer{position:static}
}

.pix-copy-panel{display:grid;gap:10px}.pix-copy-panel p{margin:0;line-height:1.5}.pix-copy-panel label{font-size:.66rem;color:var(--muted);letter-spacing:.08em}.pix-copy-panel input{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:1rem;user-select:all}

/* V5.21.2 · contexto do ponto GPS e seletor móvel com área útil ampla */
.discovered-stop-alert.is-map-active{border-color:#f5b942;box-shadow:0 0 0 2px rgba(245,185,66,.2)}
.dispatch-map-card.has-discovered-stop{border-color:#f5b942;box-shadow:0 0 0 2px rgba(245,185,66,.16)}
.discovered-stop-context{display:grid;gap:8px;padding:12px;border:1px solid rgba(245,185,66,.42);border-radius:11px;background:rgba(245,185,66,.08)}
.discovered-stop-context-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.discovered-stop-context-grid>div{display:grid;gap:3px}.discovered-stop-context small{color:var(--muted)}
@media(max-width:600px){
  .modal-body{padding-bottom:max(14px,env(safe-area-inset-bottom))}
  .discovered-location-form:not(.supplier-selected){min-height:min(70dvh,610px)}
  .discovered-location-form:not(.supplier-selected) .supplier-combobox{align-content:start;min-height:0}
  .discovered-location-form:not(.supplier-selected) .supplier-combobox-results{min-height:min(34dvh,285px);max-height:min(43dvh,390px);overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  .discovered-location-form:not(.supplier-selected) .supplier-combobox input.field{height:50px;min-height:50px}
  .supplier-combobox-results>button{min-height:64px;touch-action:manipulation}
  .discovered-stop-context-grid{grid-template-columns:1fr}
}

/* V5.21.130 · seletor profissional de modo, superfície e cor de destaque */
.appearance-picker{display:grid;gap:22px}.appearance-picker section{display:grid;gap:9px}.appearance-label{font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.appearance-theme-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.appearance-choice,.appearance-accent{min-height:48px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);font-weight:700;text-align:left;transition:.18s}.appearance-choice{text-align:center}.appearance-choice:hover,.appearance-accent:hover{border-color:var(--accent);background:var(--accent-soft)}.appearance-choice.selected,.appearance-accent.selected{border-color:var(--accent);box-shadow:0 0 0 2px rgb(var(--accent-rgb) / .18);background:var(--accent-soft);color:var(--accent)}.appearance-choice:focus-visible,.appearance-accent:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.appearance-accent-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.appearance-accent{display:flex;align-items:center;gap:9px;padding:9px 11px}.accent-swatch{width:22px;height:22px;flex:0 0 22px;border-radius:50%;background:var(--swatch);box-shadow:inset 0 0 0 1px rgb(0 0 0 / .18)}.appearance-hint{margin:0;font-size:.75rem;line-height:1.45}@media(max-width:430px){.appearance-theme-options{grid-template-columns:1fr}.appearance-accent-options{grid-template-columns:1fr}.appearance-accent{min-height:52px}}

.fleet-truck-icon{
  width:var(--truck-size,34px);
  height:var(--truck-size,34px);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:var(--truck-font,25px);
  line-height:1;
  background:#ffffff;
  border:2px solid #238bff;
  border-radius:50%;
  box-shadow:0 3px 10px #0008;
  transform:rotate(var(--truck-bearing,0deg));
  transform-origin:50% 50%;
}

/* MELHORIA 2 - FORNECEDORES NO MAPA */

.fleet-supplier-marker {
    background: transparent !important;
    border: 0 !important;
}

.fleet-supplier-pin {
    position: relative;
    width: 28px;
    height: 28px;
    border-radius: 50% 50% 50% 0;
    background: var(--supplier-color, #94a3b8);
    border: 3px solid #ffffff;
    box-shadow:
        0 2px 8px rgba(0, 0, 0, 0.45),
        0 0 0 2px rgba(15, 23, 42, 0.55);
    transform: rotate(-45deg);
}

.fleet-supplier-pin span {
    position: absolute;
    width: 8px;
    height: 8px;
    left: 7px;
    top: 7px;
    border-radius: 50%;
    background: #ffffff;
    transform: rotate(45deg);
}

.fleet-supplier-label {
    background: rgba(15, 23, 42, 0.94) !important;
    color: #f8fafc !important;
    border: 1px solid rgba(148, 163, 184, 0.45) !important;
    border-radius: 6px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
}

.fleet-supplier-popup {
    min-width: 220px;
    display: flex;
    flex-direction: column;
    gap: 5px;
    color: #0f172a;
}

.fleet-supplier-popup b {
    font-size: 15px;
}

.fleet-supplier-popup strong {
    font-size: 12px;
}

.fleet-supplier-popup span {
    font-size: 12px;
    line-height: 1.35;
}

.fleet-supplier-popup hr {
    width: 100%;
    border: 0;
    border-top: 1px solid #e2e8f0;
    margin: 4px 0;
}

/* V5.10.0 · temas e agenda operacional */
html[data-theme="ESCURO"]{color-scheme:dark}
html[data-theme="CLARO"]{--bg:#f5f7f6;--panel:#ffffff;--panel-2:#eef3f1;--panel-3:#e4ece8;--line:#d4dfda;--text:#14221d;--muted:#667b72;--primary:var(--accent);--primary-2:var(--accent-hover);--danger:#c73f3c;--warning:#9a6810;--blue:#246fc7;--shadow:0 18px 50px rgba(25,54,43,.12);color-scheme:light}
html[data-theme="CLARO"] body{background:var(--bg);color:var(--text)}
html[data-theme="CLARO"] .sidebar,html[data-theme="CLARO"] .sidebar-footer,html[data-theme="CLARO"] .auth-panel{background:#f8fbf9}
html[data-theme="CLARO"] .topbar{background:rgba(248,251,249,.9)}
html[data-theme="CLARO"] .card{background:linear-gradient(145deg,#fff,#f7faf8)}
html[data-theme="CLARO"] .auth-art{background:radial-gradient(circle at 20% 80%,rgba(21,154,91,.12),transparent 35%),linear-gradient(140deg,#eef7f2,#f8fbf9)}
html[data-theme="CLARO"] .auth-copy p,html[data-theme="CLARO"] .auth-card label,html[data-theme="CLARO"] .form-grid label,html[data-theme="CLARO"] .btn.secondary{color:#526b61}
html[data-theme="CLARO"] .auth-card input,html[data-theme="CLARO"] .form-grid input,html[data-theme="CLARO"] .form-grid select,html[data-theme="CLARO"] .form-grid textarea,html[data-theme="CLARO"] .field{background:#fff;color:var(--text)}
html[data-theme="CLARO"] th{background:#edf3f0;color:#5d756a}
html[data-theme="CLARO"] tbody tr:hover{background:rgba(20,80,55,.035)}
html[data-theme="CLARO"] .dispatch-mission,html[data-theme="CLARO"] .dispatch-queue-item,html[data-theme="CLARO"] .driver-address{background:#f2f6f4}
html[data-theme="CLARO"] .collection-public-map,html[data-theme="CLARO"] .dispatch-map{background:#e9efec}
.fleet-independent-statuses{display:flex!important;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:7px}.fleet-independent-statuses>span{display:grid;gap:3px}.fleet-independent-statuses>span>small{font-size:.55rem;letter-spacing:.08em;color:var(--muted)}.fleet-independent-statuses>strong,.fleet-independent-statuses>small{flex-basis:100%;text-align:right}@media(max-width:760px){.fleet-independent-statuses{justify-content:flex-start}.fleet-independent-statuses>strong,.fleet-independent-statuses>small{text-align:left}}
.operating-hours-grid{display:grid;gap:10px}.operating-day{display:grid;grid-template-columns:minmax(110px,.65fr) repeat(4,minmax(100px,1fr));gap:10px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.operating-day .day-toggle{display:flex;align-items:center;gap:9px;margin:0}.operating-day .day-toggle input{width:auto}.theme-choice{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.theme-choice label{margin:0}.period-choice{display:grid;grid-template-columns:1fr 1fr;gap:8px}.period-choice label{margin:0}.automatic-flow-note{padding:12px 14px;border:1px solid rgb(var(--accent-rgb) / .3);border-radius:12px;background:rgb(var(--accent-rgb) / .07);display:grid;gap:4px}.automatic-flow-note b{color:var(--primary)}
@media(max-width:760px){.operating-day{grid-template-columns:1fr 1fr}.operating-day .day-toggle{grid-column:1/-1}.theme-choice{grid-template-columns:1fr}.period-choice{grid-template-columns:1fr 1fr}}

/* V5.11.0 · contraste escuro e filtros compactos */
html[data-theme="ESCURO"]{--text:#f7fffb;--muted:#b7cbc3;--line:#2c4940}
html[data-theme="ESCURO"] .auth-copy p,
html[data-theme="ESCURO"] .auth-card label,
html[data-theme="ESCURO"] .form-grid label{color:#d0e0da}
html[data-theme="ESCURO"] .menu-group,
html[data-theme="ESCURO"] th{color:#a8beb6}
html[data-theme="ESCURO"] .menu button{color:#c7d8d2}
html[data-theme="ESCURO"] .btn.secondary{color:#d3e2dc}
html[data-theme="ESCURO"] .dispatch-mission>small,
html[data-theme="ESCURO"] .dispatch-queue>small,
html[data-theme="ESCURO"] .dispatch-mission>span,
html[data-theme="ESCURO"] .dispatch-queue-item small{color:#b8cbc4}
.collection-compact-filters{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 18px}
.collection-filter-button strong{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:20px;background:var(--primary);color:var(--on-accent);font-size:.68rem}
.collection-filter-summary{display:flex;align-items:center;gap:8px;min-width:0;padding:5px 6px 5px 11px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.collection-filter-summary span{color:var(--muted);font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(720px,62vw)}
.collection-filter-summary .icon-btn{width:30px;height:30px;border:0;background:transparent}
@media(max-width:700px){.collection-compact-filters{align-items:stretch;flex-direction:column}.collection-quick-views{width:100%;overflow:auto}.collection-filter-summary{width:100%}.collection-filter-summary span{max-width:none;white-space:normal}}

/* Homologação V5.21.2 · seleção inequívoca do fornecedor na coleta rápida */
.quick-supplier-picker{display:grid;gap:8px}.quick-supplier-results{display:grid;max-height:min(36vh,300px);overflow:auto;border:1px solid var(--line);border-radius:11px;background:var(--panel-2);overscroll-behavior:contain}.quick-supplier-option{display:grid;gap:4px;width:100%;min-height:58px;padding:11px 13px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left}.quick-supplier-option:last-child{border-bottom:0}.quick-supplier-option:hover,.quick-supplier-option:focus-visible{background:rgb(var(--accent-rgb) / .1);outline:2px solid var(--primary);outline-offset:-2px}.quick-supplier-option small{color:var(--muted)}.quick-selected-supplier{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid rgb(var(--accent-rgb) / .45);border-radius:11px;background:rgb(var(--accent-rgb) / .08)}.quick-selected-supplier>div{display:grid;gap:3px}.quick-selected-supplier small{color:var(--primary);font-weight:800;letter-spacing:.08em}.quick-selected-supplier span{color:var(--muted)}
.quick-team-picker{display:grid;gap:8px}.quick-team-picker select{min-height:48px}.quick-team-confirmed,.quick-team-required{display:grid;gap:4px;padding:12px;border-radius:11px}.quick-team-confirmed{border:1px solid rgb(var(--accent-rgb) / .48);background:rgb(var(--accent-rgb) / .09)}.quick-team-confirmed b{color:var(--primary)}.quick-team-confirmed span,.quick-team-required span{color:var(--muted)}.quick-team-required{border:1px solid rgba(242,184,75,.45);background:rgba(242,184,75,.08)}.quick-team-required b{color:#f2b84b}
@media(max-width:600px){.quick-supplier-results{max-height:40dvh}.quick-selected-supplier{align-items:stretch;flex-direction:column}.quick-selected-supplier .btn{width:100%}}
.receipt-pdf-preview{display:block;width:min(100%,80mm);height:70vh;min-height:520px;margin:1rem auto;border:1px solid var(--border);border-radius:12px;background:#fff}.public-fullscreen-actions{display:flex;justify-content:flex-end;margin-bottom:.75rem}@media(max-width:600px){.receipt-pdf-preview{width:100%;height:65vh;min-height:420px}.public-fullscreen-actions .btn{width:100%}}
.weight-summary-pdf-preview{display:block;width:min(100%,210mm);height:72vh;min-height:540px;margin:1rem auto;border:1px solid var(--border);border-radius:12px;background:#fff}.pdf-print-frame{position:fixed;width:1px;height:1px;right:0;bottom:0;border:0;opacity:0;pointer-events:none}@media(max-width:600px){.weight-summary-pdf-preview{width:100%;height:65vh;min-height:420px}}

/* Destaque operacional: material e peso do último lançamento */
.weigh-notebook .weight-group-latest {
  border-color: var(--primary);
  box-shadow: 0 0 0 2px rgb(var(--accent-rgb) / .10);
}

.weigh-notebook .weight-group-latest > .weight-group-head {
  background: linear-gradient(
    90deg,
    rgb(var(--accent-rgb) / .20),
    rgb(var(--accent-rgb) / .06)
  );
}

.weigh-notebook .weight-group-latest > .weight-group-head b,
.weigh-notebook .weight-group-latest > .weight-group-head strong {
  color: var(--primary);
}

.weigh-notebook .weight-item-latest {
  position: relative;
  background: rgb(var(--accent-rgb) / .13);
  box-shadow: inset 4px 0 0 var(--primary);
}

.weigh-notebook .weight-item-latest > strong {
  color: var(--primary);
  font-size: 1.08rem;
}

.weigh-notebook .weight-value {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
}

.weigh-notebook .last-weighing-badge {
  display: inline-flex;
  align-items: center;
  padding: 3px 6px;
  border: 1px solid rgb(var(--accent-rgb) / .45);
  border-radius: 999px;
  background: rgb(var(--accent-rgb) / .12);
  color: var(--primary);
  font-size: .52rem;
  font-weight: 850;
  letter-spacing: .06em;
  line-height: 1;
  white-space: nowrap;
}

/* Mapa público: expansão exclusiva do mapa */
.public-map-shell {
  position: relative;
  margin-top: 12px;
}

.public-map-shell .collection-public-map {
  margin: 0;
}

.public-map-expand {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 1000;
  background: rgba(7,17,15,.92);
  backdrop-filter: blur(6px);
  box-shadow: 0 4px 14px rgba(0,0,0,.30);
}

/* Fullscreen nativo */
.public-map-shell:fullscreen {
  width: 100vw;
  height: 100vh;
  margin: 0;
  padding: 0;
  background: #07110f;
}

.public-map-shell:fullscreen .collection-public-map {
  width: 100%;
  height: 100%;
  min-height: 100vh;
  border-radius: 0;
}

/* Fallback para navegadores sem Fullscreen API */
.public-map-shell.public-map-expanded {
  position: fixed;
  inset: 0;
  z-index: 9999;
  width: 100vw;
  height: 100vh;
  margin: 0;
  background: #07110f;
}

.public-map-shell.public-map-expanded .collection-public-map {
  width: 100%;
  height: 100%;
  min-height: 100vh;
  border-radius: 0;
}

.public-map-shell:fullscreen .public-map-expand,
.public-map-shell.public-map-expanded .public-map-expand {
  position: absolute;
  top: max(12px, env(safe-area-inset-top));
  right: max(12px, env(safe-area-inset-right));
  z-index: 1100;
}

@media(max-width:600px) {
  .public-map-expand {
    top: 8px;
    right: 8px;
    padding: 8px 10px;
    font-size: .65rem;
  }
}

/* Melhor contraste do botão expandir/retornar do mapa público */
.public-map-expand {
  background: rgba(7,17,15,.98);
  border-color: rgb(var(--accent-rgb) / .65);
}

.public-map-expand:hover,
.public-map-expand:focus-visible {
  background: rgba(7,17,15,1);
  border-color: var(--primary);
}

/* ============================================================
   COLETAS · PAINEL POR SITUAÇÃO
   ============================================================ */

.collection-status-board{
  display:grid;
  gap:18px;
}

.collection-status-section{
  border:1px solid var(--line);
  border-radius:16px;
  padding:14px;
  background:rgba(8,20,17,.38);
}

.collection-status-section>summary{
  list-style:none;
  cursor:pointer;
  user-select:none;
}

.collection-status-section>summary::-webkit-details-marker{
  display:none;
}

.collection-status-section:not([open]) .collection-status-header{
  margin-bottom:0;
  padding-bottom:0;
  border-bottom-color:transparent;
}

.collection-status-heading::after{
  content:"⌄";
  color:var(--muted);
  font-weight:800;
  transition:transform .18s ease;
}

.collection-status-section[open] .collection-status-heading::after{
  transform:rotate(180deg);
}

.collection-all-controls{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin:14px 0 18px;
}

.collection-all-controls .collection-compact-filters{
  flex:1;
  margin:0;
}

.collection-all-tab{
  min-width:190px;
}

.collection-status-header{
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
  padding:0 4px 10px;
  border-bottom:1px solid var(--line);
}

.collection-status-heading{
  display:flex;
  align-items:center;
  gap:11px;
  min-width:0;
}

.collection-status-heading>div{
  display:grid;
  gap:3px;
}

.collection-status-heading .eyebrow{
  margin:0;
}

.collection-status-heading small{
  color:var(--muted);
  font-size:.72rem;
}

.collection-status-icon{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:rgb(var(--accent-rgb) / .10);
  color:var(--primary);
  font-weight:800;
  font-size:1rem;
}

.collection-status-count{
  min-width:38px;
  height:38px;
  padding:0 10px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:rgba(255,255,255,.055);
  border:1px solid var(--line);
  font-size:1.1rem;
}

/* EM ANDAMENTO — prioridade operacional */
.collection-status-active{
  border-color:rgb(var(--accent-rgb) / .42);
  background:
    linear-gradient(
      135deg,
      rgb(var(--accent-rgb) / .075),
      rgba(8,20,17,.42) 42%
    );
  box-shadow:0 10px 35px rgba(0,0,0,.10);
}

.collection-status-active .collection-status-header{
  border-bottom-color:rgb(var(--accent-rgb) / .25);
}

.collection-status-active .collection-status-icon{
  background:rgb(var(--accent-rgb) / .17);
  box-shadow:0 0 0 1px rgb(var(--accent-rgb) / .12);
}

.collection-status-active .collection-status-count{
  color:var(--primary);
  border-color:rgb(var(--accent-rgb) / .30);
  background:rgb(var(--accent-rgb) / .10);
}

/* AGENDADAS */
.collection-status-scheduled{
  background:rgba(10,25,21,.34);
}

/* FINALIZADAS — informação secundária */
.collection-status-finished{
  background:rgba(8,18,16,.26);
}

.collection-status-finished .collection-status-icon{
  background:rgb(var(--accent-rgb) / .07);
}

.collection-status-finished .collection-card{
  opacity:.78;
}

.collection-status-finished .collection-card:hover{
  opacity:1;
}

/* CANCELADAS — histórico, sem competir com operação */
.collection-status-cancelled{
  background:rgba(18,16,16,.22);
  border-color:rgba(248,113,113,.14);
}

.collection-status-cancelled .collection-status-icon{
  color:#f87171;
  background:rgba(248,113,113,.08);
}

.collection-status-cancelled .collection-status-count{
  color:#fca5a5;
  border-color:rgba(248,113,113,.18);
  background:rgba(248,113,113,.055);
}

/* vazio dentro de uma situação */
.collection-section-empty{
  grid-column:1/-1;
  min-height:74px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  border:1px dashed var(--line);
  border-radius:12px;
  color:var(--muted);
  font-size:.78rem;
  text-align:center;
}

/* separação antes da paginação */
.collection-status-board + .pagination{
  margin-top:20px;
}

/* Mobile */
@media(max-width:720px){
  .collection-all-controls{
    align-items:stretch;
    flex-direction:column;
  }
  .collection-status-board{
    gap:13px;
  }

  .collection-status-section{
    padding:10px;
    border-radius:14px;
  }

  .collection-status-header{
    min-height:52px;
    margin-bottom:10px;
  }

  .collection-status-heading small{
    font-size:.67rem;
  }

  .collection-status-icon{
    width:30px;
    height:30px;
    flex-basis:30px;
  }

  .collection-status-count{
    min-width:34px;
    height:34px;
    font-size:1rem;
  }
}

/* ============================================================
   CENTRAL DE DESPACHO · PENDÊNCIAS OPERACIONAIS HUMANIZADAS
   ============================================================ */

.dispatch-attention-list{
  display:grid;
  gap:12px;
  margin-top:12px;
}

.dispatch-attention-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(240px,1.35fr) auto;
  align-items:center;
  gap:18px;
  padding:16px;
  border:1px solid rgba(245,185,66,.28);
  border-radius:12px;
  background:rgba(245,185,66,.055);
  min-width:0;
}

/* V5.21.164 · cartões operacionais da Atenção agora */
.dispatch-attendance-decision{display:grid;grid-template-columns:1fr;align-items:stretch;gap:14px;padding:16px;background:linear-gradient(145deg,rgba(245,185,66,.10),rgba(16,31,26,.96));border-color:rgba(245,185,66,.42);border-left:4px solid var(--warning)}
.dispatch-attention-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.dispatch-attention-type{display:flex;align-items:center;gap:10px;min-width:0}.dispatch-attention-type h4{margin:2px 0 0;font-size:.98rem;overflow-wrap:anywhere}.dispatch-attention-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:rgba(245,185,66,.18);color:var(--warning);font-size:1.2rem;font-weight:900}.dispatch-attention-state{padding:6px 8px;border:1px solid rgba(245,185,66,.35);border-radius:999px;color:var(--warning);font-size:.6rem;font-weight:900;letter-spacing:.05em;text-align:center}.dispatch-attention-supplier{display:grid;gap:4px;padding:11px 12px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:rgba(0,0,0,.14)}.dispatch-attention-supplier small,.dispatch-attention-facts small{color:var(--muted);font-size:.6rem;font-weight:900;letter-spacing:.06em}.dispatch-attention-supplier strong{font-size:1.08rem;line-height:1.25;overflow-wrap:anywhere}.dispatch-attention-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.dispatch-attention-facts>div{display:grid;gap:4px;min-width:0;padding:9px;border:1px solid rgba(255,255,255,.07);border-radius:8px;background:rgba(255,255,255,.025)}.dispatch-attention-facts b{font-size:.76rem;line-height:1.25;overflow-wrap:anywhere}.dispatch-attention-message{margin:0;color:#e7eee9;font-size:.82rem;line-height:1.4}.dispatch-attention-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.dispatch-attention-actions .btn{min-height:44px}.dispatch-attention-actions .btn.danger{border-color:rgba(255,107,104,.65);background:rgba(255,107,104,.14);color:#ffd8d7}.dispatch-attention-hint{flex:1 1 240px;color:var(--muted);font-size:.78rem}.dispatch-modal-context{display:grid;gap:5px;padding:12px;border:1px solid rgba(245,185,66,.4);border-radius:10px;background:rgba(245,185,66,.08)}.dispatch-modal-context b{font-size:1.05rem;overflow-wrap:anywhere}.dispatch-modal-context span{font-weight:800}.dispatch-modal-context small{color:var(--muted)}.dispatch-modal-notice{padding:10px 12px;border-left:3px solid var(--info,#218cff);background:rgba(33,140,255,.08);line-height:1.4}
@media(max-width:600px){.dispatch-attention-card-header{flex-direction:column}.dispatch-attention-state{align-self:flex-start}.dispatch-attention-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.dispatch-attention-actions{display:grid;grid-template-columns:1fr}.dispatch-attention-actions .btn{width:100%;min-height:48px}.dispatch-attention-hint{display:block}.dispatch-modal-context{font-size:.9rem}}

.dispatch-attention-heading{
  min-width:0;
}

.dispatch-attention-heading h4{
  margin:0 0 5px;
  font-size:1rem;
  line-height:1.25;
  overflow-wrap:anywhere;
}

.dispatch-attention-heading small{
  color:var(--muted);
}

.dispatch-attention-problems{
  display:grid;
  gap:7px;
  min-width:0;
}

.dispatch-attention-problems>b{
  font-size:.72rem;
  letter-spacing:.06em;
  color:var(--muted);
}

.dispatch-attention-problems ul{
  display:grid;
  gap:5px;
  margin:0;
  padding:0;
  list-style:none;
}

.dispatch-attention-problems li{
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  align-items:start;
  gap:6px;
  line-height:1.35;
}

.dispatch-attention-problems li>span:first-child{
  text-align:center;
}

.dispatch-attention-action{
  display:flex;
  justify-content:flex-end;
}

.dispatch-attention-action .btn{
  min-width:110px;
  min-height:42px;
}

html[data-theme="CLARO"] .dispatch-attention-card{
  background:#fffaf0;
  border-color:rgba(184,125,18,.28);
}

@media(max-width:900px){
  .dispatch-attention-card{
    grid-template-columns:minmax(0,1fr) minmax(220px,1fr);
  }

  .dispatch-attention-action{
    grid-column:1/-1;
  }

  .dispatch-attention-action .btn{
    width:100%;
  }
}

@media(max-width:600px){
  .dispatch-attention-list{
    gap:10px;
  }

  .dispatch-attention-card{
    grid-template-columns:1fr;
    align-items:stretch;
    gap:13px;
    padding:14px;
  }

  .dispatch-attention-action{
    grid-column:auto;
  }

  .dispatch-attention-action .btn{
    width:100%;
    min-height:48px;
  }
}


/* V5.21.4 · Agenda dos motoristas em formato de caderno */
.dispatch-notebook-shell{
  display:grid;
  gap:0;
  min-width:0;
}

.dispatch-driver-tabs{
  display:flex;
  align-items:end;
  gap:6px;
  padding-left:42px;
  overflow-x:auto;
  scrollbar-width:thin;
}

.dispatch-driver-tab{
  min-width:210px;
  min-height:72px;
  padding:13px 22px 11px;
  border:1px solid var(--line);
  border-bottom-color:var(--primary);
  border-radius:22px 22px 0 0;
  background:#101c19;
  color:var(--text);
  display:grid;
  grid-template-columns:auto auto;
  justify-content:center;
  align-content:center;
  gap:3px 6px;
  cursor:pointer;
}

.dispatch-driver-tab b{
  font-size:.92rem;
  text-transform:uppercase;
}

.dispatch-driver-tab span{
  color:var(--primary);
  font-size:.78rem;
  font-weight:900;
}

.dispatch-driver-tab small{
  grid-column:1/-1;
  color:var(--muted);
  font-size:.62rem;
}

.dispatch-driver-tab.active{
  min-height:82px;
  border-color:var(--primary);
  border-bottom-color:#0a1713;
  background:
    linear-gradient(
      180deg,
      rgb(var(--accent-rgb) / .17),
      #0a1713
    );
  box-shadow:inset 0 3px 0 var(--primary);
}

.dispatch-map-supplier-label,
.dispatch-map-base-label{
  border:1px solid rgb(var(--accent-rgb) / .55);
  border-radius:8px;
  background:#07120e;
  color:#e8fff4;
  box-shadow:0 4px 14px rgba(0,0,0,.28);
  font-size:.72rem;
  font-weight:800;
  white-space:nowrap;
}
.dispatch-map-base-label{border-color:rgba(167,139,250,.7);color:#f2edff}
.dispatch-base-marker{background:transparent!important;border:0!important}
.dispatch-base-marker span{display:grid;place-items:center;width:34px;height:34px;border:2px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#8b5cf6;color:#fff;font-size:21px;font-weight:900;box-shadow:0 3px 10px rgba(0,0,0,.4)}
.dispatch-base-marker span::first-letter{transform:rotate(45deg)}

/* Seta exclusiva do histórico: ponta para cima no bearing 0°, com contorno
   branco para contraste e rotação CSS sem alterar o ponto GPS da âncora. */
.dispatch-history-navigation-arrow{display:grid;place-items:center;width:42px;height:42px;transform:rotate(var(--navigation-bearing,0deg));transform-origin:50% 50%;filter:drop-shadow(0 2px 3px rgba(0,0,0,.55))}
.dispatch-history-navigation-arrow::before,.dispatch-history-navigation-arrow span{content:"";display:block;position:absolute;clip-path:polygon(50% 0,94% 100%,50% 78%,6% 100%);}
.dispatch-history-navigation-arrow::before{width:26px;height:34px;background:#fff}
.dispatch-history-navigation-arrow span{width:20px;height:28px;background:#2583ff}

.dispatch-notebook-layout{
  display:grid;
  grid-template-columns:minmax(570px,1.6fr) minmax(350px,.74fr);
  min-height:670px;
  border:1px solid rgb(var(--accent-rgb) / .42);
  border-radius:18px;
  background:
    radial-gradient(
      circle at 18% 15%,
      rgb(var(--accent-rgb) / .055),
      transparent 34%
    ),
    #08130f;
  overflow:hidden;
}

.dispatch-notebook{
  position:relative;
  min-width:0;
  padding:30px 24px 30px 48px;
  border-right:1px solid var(--line);
}

.dispatch-notebook:before{
  content:"";
  position:absolute;
  inset:0 auto 0 17px;
  width:18px;
  background:
    radial-gradient(
      circle,
      #07110e 0 4px,
      #76827e 5px 6px,
      transparent 7px
    )
    center top/18px 39px repeat-y;
  opacity:.88;
}

.dispatch-notebook-queue{
  display:grid;
  gap:13px;
}

.dispatch-notebook-caption{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:16px;
  padding:0 4px 8px;
}

.dispatch-notebook-caption>div{
  display:grid;
  gap:4px;
}

.dispatch-notebook-caption small{
  color:var(--primary);
  font-weight:900;
  letter-spacing:.12em;
}

.dispatch-notebook-caption span{
  color:var(--muted);
  font-size:.72rem;
}

.dispatch-notebook-row{
  display:grid;
  grid-template-columns:34px 62px minmax(0,1fr) auto 34px;
  gap:15px;
  align-items:center;
  min-height:112px;
  padding:14px 15px;
  border:1px solid var(--line);
  border-radius:15px;
  background:rgba(10,24,19,.88);
  color:var(--text);
  cursor:pointer;
  transition:
    border-color .16s ease,
    background .16s ease,
    transform .16s ease;
}

.dispatch-notebook-row:hover,
.dispatch-notebook-row:focus-visible,
.dispatch-notebook-row.selected{
  border-color:var(--primary);
  background:rgb(var(--accent-rgb) / .075);
  outline:none;
}

.dispatch-notebook-row.dragging{
  opacity:.45;
  transform:scale(.985);
}

.dispatch-drag-handle{
  color:#c0d0ca;
  font-size:1.7rem;
  line-height:1;
  cursor:grab;
  user-select:none;
  touch-action:none;
}

.dispatch-drag-handle.locked{
  opacity:.28;
  cursor:not-allowed;
}

.dispatch-order-number{
  color:var(--primary);
  font-size:clamp(2.6rem,4.5vw,4.15rem);
  line-height:1;
  text-align:center;
  font-variant-numeric:tabular-nums;
}

.dispatch-notebook-main{
  display:grid;
  gap:9px;
  min-width:0;
}

.dispatch-notebook-main>b{
  font-size:clamp(1rem,1.45vw,1.35rem);
  overflow-wrap:anywhere;
}

.dispatch-notebook-main>span{
  color:#c0d0ca;
  line-height:1.45;
  overflow-wrap:anywhere;
}

.dispatch-notebook-main i{
  display:inline-block;
  height:18px;
  margin:0 8px;
  border-left:1px solid var(--line);
  vertical-align:middle;
}

.dispatch-notebook-status{
  min-width:150px;
  padding:11px 14px;
  border:1px solid var(--line);
  border-radius:11px;
  text-align:center;
  font-size:.72rem;
  font-style:normal;
  font-weight:900;
  text-transform:uppercase;
}

.dispatch-notebook-status.current{
  border-color:rgb(var(--accent-rgb) / .55);
  background:rgb(var(--accent-rgb) / .12);
  color:#8ff4c7;
}

.dispatch-notebook-status.next,
.dispatch-notebook-status.attention{
  border-color:rgba(245,185,66,.58);
  background:rgba(245,185,66,.08);
  color:var(--warning);
}

.dispatch-row-arrow{
  color:#f1fff9;
  font-size:2.8rem;
  line-height:1;
}

.dispatch-notebook-detail{
  min-width:0;
  padding:28px 24px 22px;
  display:grid;
  align-content:start;
  gap:19px;
  background:
    linear-gradient(
      145deg,
      rgb(var(--accent-rgb) / .045),
      transparent 44%
    ),
    #091512;
  overflow:auto;
}

.dispatch-notebook-detail.closed{
  display:none;
}

.dispatch-detail-header{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:start;
}

.dispatch-detail-header h2{
  margin:0 0 8px;
  font-size:clamp(1.35rem,2vw,2rem);
}

.dispatch-detail-header>div>b{
  color:var(--primary);
  text-transform:uppercase;
}

.dispatch-detail-summary{
  display:grid;
  gap:13px;
}

.dispatch-detail-summary>div{
  display:grid;
  gap:5px;
}

.dispatch-detail-summary small,
.dispatch-detail-section>small{
  color:var(--primary);
  font-size:.65rem;
  font-weight:900;
  letter-spacing:.08em;
}

.dispatch-detail-map-wrap{
  position:relative;
  min-width:0;
}

.dispatch-detail-map{
  width:100%;
  height:255px;
  min-height:255px;
  border:1px solid var(--line);
}

.dispatch-inline-map-expand,
.dispatch-inline-map-exit{
  position:absolute;
  z-index:500;
  top:10px;
  right:10px;
  min-height:36px;
  padding:7px 10px;
  background:#0b2119e8!important;
  box-shadow:0 5px 18px #0008;
}

.dispatch-route-facts{
  display:grid;
  gap:8px;
  padding:13px;
  border:1px solid rgb(var(--accent-rgb) / .22);
  border-radius:12px;
  background:rgb(var(--accent-rgb) / .045);
}

.dispatch-route-facts span,
.dispatch-route-facts small{
  color:var(--muted);
}

.dispatch-detail-section{
  display:grid;
  gap:9px;
}

.dispatch-detail-section>b,
.dispatch-detail-section>span{
  overflow-wrap:anywhere;
}

.dispatch-material-list{
  display:grid;
  gap:7px;
  margin:0;
  padding:0;
  list-style:none;
}

.dispatch-material-list li{
  display:grid;
  grid-template-columns:24px minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
}

.dispatch-material-list li>span{
  color:var(--primary);
}

.dispatch-material-list li>small{
  color:var(--muted);
}

.dispatch-detail-actions{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:8px;
  margin-top:4px;
}

.dispatch-map-fullscreen.dispatch-notebook-detail{
  display:flex!important;
  inset:82px 10px 10px 270px!important;
  padding:14px!important;
  overflow:hidden!important;
}

.dispatch-map-fullscreen .dispatch-detail-header,
.dispatch-map-fullscreen .dispatch-detail-summary,
.dispatch-map-fullscreen .dispatch-route-facts,
.dispatch-map-fullscreen .dispatch-detail-section,
.dispatch-map-fullscreen .dispatch-detail-actions{
  display:none!important;
}

.dispatch-map-fullscreen .dispatch-detail-map-wrap{
  flex:1;
  min-height:0;
}

.dispatch-map-fullscreen .dispatch-detail-map{
  height:100%!important;
  min-height:0!important;
}

.dispatch-map-fullscreen .dispatch-inline-map-exit{
  display:block;
}

@media(max-width:1150px){
  .dispatch-notebook-layout{
    grid-template-columns:minmax(0,1.35fr) minmax(330px,.8fr);
  }

  .dispatch-notebook{
    padding-left:38px;
    padding-right:16px;
  }

  .dispatch-notebook-row{
    grid-template-columns:30px 50px minmax(0,1fr) 32px;
  }

  .dispatch-notebook-status{
    grid-column:3;
    justify-self:start;
    min-width:0;
    padding:7px 10px;
  }

  .dispatch-row-arrow{
    grid-column:4;
    grid-row:1/3;
  }
}

@media(max-width:850px){
  .dispatch-driver-tabs{
    padding-left:14px;
  }

  .dispatch-driver-tab{
    min-width:175px;
  }

  .dispatch-notebook-layout{
    grid-template-columns:1fr;
    min-height:0;
  }

  .dispatch-notebook{
    border-right:0;
  }

  .dispatch-notebook-detail{
    border-top:1px solid var(--line);
  }
}

@media(max-width:600px){
  .dispatch-notebook-toolbar{
    align-items:stretch;
  }

  .dispatch-notebook-toolbar .actions{
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
  }

  .dispatch-driver-tabs{
    padding-left:6px;
  }

  .dispatch-driver-tab{
    min-width:154px;
    min-height:65px;
    padding:10px 12px;
  }

  .dispatch-driver-tab.active{
    min-height:72px;
  }

  .dispatch-notebook{
    padding:20px 10px 20px 27px;
  }

  .dispatch-notebook:before{
    left:4px;
  }

  .dispatch-notebook-caption{
    align-items:start;
    flex-direction:column;
  }

  .dispatch-notebook-row{
    grid-template-columns:25px 38px minmax(0,1fr) 25px;
    gap:8px;
    min-height:104px;
    padding:12px 9px;
  }

  .dispatch-drag-handle{
    font-size:1.35rem;
  }

  .dispatch-order-number{
    font-size:2.25rem;
  }

  .dispatch-notebook-main>b{
    font-size:.93rem;
  }

  .dispatch-notebook-main>span{
    font-size:.69rem;
  }

  .dispatch-notebook-main i{
    display:none;
  }

  .dispatch-notebook-status{
    grid-column:3;
    padding:6px 8px;
    font-size:.57rem;
  }

  .dispatch-row-arrow{
    grid-column:4;
    grid-row:1/3;
    font-size:2.1rem;
  }

  .dispatch-notebook-detail{
    padding:20px 14px;
  }

  .dispatch-detail-actions{
    grid-template-columns:1fr;
  }

  .dispatch-detail-actions .btn{
    min-height:48px;
  }

  .dispatch-map-fullscreen.dispatch-notebook-detail{
    inset:0!important;
  }
}


/* V5.21.4 · ajustes do caderno dentro de Coletas */
.collection-notebook-shell{
  width:100%;
  max-width:none;
}

.collection-notebook-shell .dispatch-notebook-layout{
  min-height:calc(100dvh - 245px);
}

.collection-notebook-shell .dispatch-detail-actions{
  grid-template-columns:1fr 1fr;
}

.collection-notebook-map-fullscreen{
  position:fixed!important;
  inset:82px 10px 10px 270px!important;
  z-index:9999!important;
  display:flex!important;
  padding:14px!important;
  background:#07110e!important;
  overflow:hidden!important;
}

/* Agenda real (lista): o painel de mapa tem expansão própria, independente
   do painel de detalhes da visão por motorista. */
.collection-agenda-map-fullscreen{
  position:fixed!important;
  inset:82px 10px 10px 270px!important;
  z-index:9999!important;
  display:block!important;
  padding:14px!important;
  background:#07110e!important;
  overflow:hidden!important;
}

.app-shell.sidebar-collapsed
.collection-agenda-map-fullscreen{
  left:92px!important;
}

.collection-agenda-map-fullscreen .dispatch-detail-map{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
}

.collection-agenda-map-fullscreen .dispatch-inline-map-expand,
.collection-agenda-map-fullscreen .dispatch-inline-map-exit{
  top:24px;
  right:24px;
}

@media(max-width:900px){
  .collection-agenda-map-fullscreen{
    inset:72px 8px 8px!important;
  }
}

@media(max-width:600px){
  .collection-agenda-map-fullscreen{
    inset:0!important;
    border-radius:0!important;
  }
}

.app-shell.sidebar-collapsed
.collection-notebook-map-fullscreen{
  left:92px!important;
}

.collection-notebook-map-fullscreen
.dispatch-detail-header,
.collection-notebook-map-fullscreen
.dispatch-detail-summary,
.collection-notebook-map-fullscreen
.dispatch-route-facts,
.collection-notebook-map-fullscreen
.dispatch-detail-section,
.collection-notebook-map-fullscreen
.dispatch-detail-actions{
  display:none!important;
}

.collection-notebook-map-fullscreen
.dispatch-detail-map-wrap{
  flex:1;
  min-height:0;
}

.collection-notebook-map-fullscreen
.dispatch-detail-map{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
}

@media(max-width:900px){
  .collection-notebook-map-fullscreen{
    inset:72px 8px 8px!important;
  }
}

@media(max-width:600px){
  .collection-notebook-shell
  .dispatch-notebook-layout{
    min-height:0;
  }

  .collection-notebook-map-fullscreen{
    inset:0!important;
    border-radius:0!important;
  }
}


/* V5.21.4 · alça de ordenação visível */
.collection-notebook-shell
.dispatch-notebook-row{
  grid-template-columns:76px 62px minmax(0,1fr) auto 34px;
}

.collection-notebook-shell
.dispatch-drag-handle{
  align-self:stretch;
  min-height:72px;
  padding:8px 5px;
  border:1px solid rgb(var(--accent-rgb) / .48);
  border-radius:11px;
  background:rgb(var(--accent-rgb) / .1);
  color:var(--primary);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  cursor:grab;
  user-select:none;
  touch-action:none;
}

.collection-notebook-shell
.dispatch-drag-handle:hover{
  border-color:var(--primary);
  background:rgb(var(--accent-rgb) / .18);
  box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .08);
}

.collection-notebook-shell
.dispatch-drag-handle:active{
  cursor:grabbing;
  transform:scale(.97);
}

.collection-notebook-shell
.dispatch-drag-handle>b{
  font-size:1.7rem;
  line-height:1;
}

.collection-notebook-shell
.dispatch-drag-handle>small{
  color:inherit;
  font-size:.54rem;
  font-weight:900;
  letter-spacing:.05em;
}

.collection-notebook-shell
.dispatch-drag-handle.locked{
  border-color:var(--line);
  background:rgba(148,163,184,.045);
  color:var(--muted);
  cursor:not-allowed;
  opacity:.62;
}

@media(max-width:1150px){
  .collection-notebook-shell
  .dispatch-notebook-row{
    grid-template-columns:70px 50px minmax(0,1fr) 32px;
  }
}

@media(max-width:600px){
  .collection-notebook-shell
  .dispatch-notebook-row{
    grid-template-columns:58px 36px minmax(0,1fr) 25px;
  }

  .collection-notebook-shell
  .dispatch-drag-handle{
    min-height:64px;
    padding:6px 3px;
  }

  .collection-notebook-shell
  .dispatch-drag-handle>b{
    font-size:1.35rem;
  }

  .collection-notebook-shell
  .dispatch-drag-handle>small{
    font-size:.45rem;
  }
}


/* V5.21.4 · acabamento e botões de ordenação */
.collection-notebook-shell
.dispatch-notebook-layout{
  grid-template-columns:
    minmax(540px,1.48fr)
    minmax(390px,.82fr);
  min-height:560px;
}

.collection-notebook-shell
.dispatch-notebook{
  padding-top:22px;
  padding-bottom:22px;
}

.collection-notebook-shell
.dispatch-notebook-row{
  grid-template-columns:
    76px
    58px
    minmax(0,1fr)
    auto
    38px
    30px;
  min-height:104px;
}

.collection-notebook-order-buttons{
  display:grid;
  gap:5px;
}

.collection-order-button{
  width:34px;
  height:32px;
  padding:0;
  border:1px solid rgb(var(--accent-rgb) / .42);
  border-radius:8px;
  background:rgb(var(--accent-rgb) / .08);
  color:var(--primary);
  font-size:1rem;
  font-weight:900;
  cursor:pointer;
}

.collection-order-button:hover:not(:disabled){
  border-color:var(--primary);
  background:rgb(var(--accent-rgb) / .18);
}

.collection-order-button:disabled{
  border-color:var(--line);
  background:transparent;
  color:var(--muted);
  cursor:not-allowed;
  opacity:.3;
}

.collection-notebook-shell
.dispatch-row-arrow{
  text-align:center;
}

.collection-notebook-shell
.dispatch-notebook-detail{
  padding:22px 20px;
  gap:15px;
  overflow-wrap:anywhere;
}

.collection-notebook-shell
.dispatch-detail-header h2{
  font-size:clamp(1.25rem,1.65vw,1.75rem);
}

.collection-notebook-shell
.dispatch-detail-summary b,
.collection-notebook-shell
.dispatch-detail-section b,
.collection-notebook-shell
.dispatch-detail-section span{
  line-height:1.4;
}

.collection-notebook-shell
.dispatch-material-list li:has(> b:only-child){
  display:block;
}

.collection-notebook-shell
.dispatch-material-list li> b:only-child{
  display:block;
  grid-column:1/-1;
  color:var(--text);
  white-space:normal;
}

.collection-notebook-shell
.dispatch-route-facts{
  font-size:.78rem;
  line-height:1.35;
}

.collection-notebook-shell
.dispatch-detail-map{
  height:230px;
  min-height:230px;
}

.collection-notebook-shell
.dispatch-detail-actions .btn{
  min-height:42px;
}

@media(max-width:1150px){
  .collection-notebook-shell
  .dispatch-notebook-layout{
    grid-template-columns:
      minmax(0,1.25fr)
      minmax(350px,.85fr);
  }

  .collection-notebook-shell
  .dispatch-notebook-row{
    grid-template-columns:
      68px
      48px
      minmax(0,1fr)
      38px
      28px;
  }

  .collection-notebook-shell
  .dispatch-notebook-status{
    grid-column:3;
  }

  .collection-notebook-shell
  .collection-notebook-order-buttons{
    grid-column:4;
    grid-row:1/3;
  }

  .collection-notebook-shell
  .dispatch-row-arrow{
    grid-column:5;
    grid-row:1/3;
  }
}

@media(max-width:850px){
  .collection-notebook-shell
  .dispatch-notebook-layout{
    grid-template-columns:1fr;
    min-height:0;
  }

  .collection-notebook-shell
  .dispatch-notebook-detail{
    min-height:520px;
  }
}

@media(max-width:600px){
  .collection-notebook-shell
  .dispatch-notebook-row{
    grid-template-columns:
      56px
      36px
      minmax(0,1fr)
      34px
      23px;
    gap:7px;
  }

  .collection-order-button{
    width:31px;
    height:29px;
  }

  .collection-notebook-shell
  .dispatch-notebook-detail{
    min-height:0;
  }
}


/* V5.21.4 · agenda rápida por motorista e transferência individual */
.collection-notebook-caption-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
.collection-notebook-caption-actions>span{
  color:var(--muted);
  font-size:.72rem;
  white-space:nowrap;
}
.collection-notebook-caption-actions .btn{
  min-height:40px;
  padding:9px 13px;
}
.quick-driver-context span,
.quick-driver-context small{
  display:block;
}
.collection-notebook-shell .dispatch-detail-actions{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
@media(max-width:1100px){
  .collection-notebook-caption-actions{
    align-items:stretch;
    flex-direction:column;
  }
  .collection-notebook-caption-actions .btn{
    width:100%;
  }
}
@media(max-width:700px){
  .collection-notebook-shell .dispatch-detail-actions{
    grid-template-columns:1fr;
  }
}


/* V5.21.4 · radar de fornecedores próximos na agenda */
.collection-radar-supplier-marker{
  opacity:.92;
}
.collection-radar-supplier-label{
  text-align:center!important;
  line-height:1.15!important;
}
.collection-radar-supplier-label b{
  color:#73f0b3;
  font-size:.72rem;
}
.collection-radar-popup{
  min-width:250px;
}
.collection-radar-popup .btn{
  width:100%;
  margin-top:7px;
  text-decoration:none;
  text-align:center;
}
.collection-radar-note{
  color:var(--primary)!important;
}


/* V5.21.4 · Central de Despacho simplificada */
.dispatch-command-toolbar{
  margin-bottom:14px;
}
.dispatch-command-kpis{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-bottom:14px;
}
.dispatch-command-kpis article{
  display:grid;
  gap:5px;
  min-height:92px;
  padding:15px;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--panel);
}
.dispatch-command-kpis small{
  color:var(--muted);
  font-size:.66rem;
  font-weight:900;
  letter-spacing:.09em;
}
.dispatch-command-kpis strong{
  color:var(--primary);
  font-size:1.8rem;
}
.dispatch-command-kpis article.attention{
  border-color:rgba(245,185,66,.5);
}
.dispatch-command-kpis article.attention strong{
  color:var(--warning);
}
.dispatch-command-kpis article.danger{
  border-color:rgba(255,107,104,.5);
}
.dispatch-command-kpis article.danger strong{
  color:var(--danger);
}
.dispatch-command-layout{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(330px,.72fr);
  gap:14px;
  align-items:stretch;
}
.dispatch-command-layout .dispatch-map-card{
  position:relative;
  top:auto;
  min-height:560px;
}
.dispatch-command-layout .dispatch-map{
  height:500px;
  min-height:500px;
}
.dispatch-command-attention{
  min-width:0;
  max-height:620px;
  overflow:auto;
  overscroll-behavior:contain;
}
.dispatch-command-attention .dispatch-attention-card{
  grid-template-columns:1fr;
  align-items:stretch;
  gap:11px;
  padding:13px;
}
.dispatch-command-attention
.dispatch-attention-action{
  justify-content:stretch;
}
.dispatch-command-attention
.dispatch-attention-action .btn{
  width:100%;
}
.dispatch-command-conflict{
  display:grid;
  gap:11px;
  padding:13px;
  border:1px solid rgba(245,185,66,.42);
  border-radius:11px;
  background:rgba(245,185,66,.07);
}
.dispatch-command-conflict>div{
  display:grid;
  gap:5px;
}
.dispatch-command-conflict small{
  color:var(--warning);
  font-weight:900;
}
.dispatch-command-clear{
  display:grid;
  gap:6px;
  padding:24px 15px;
  border:1px dashed rgb(var(--accent-rgb) / .45);
  border-radius:12px;
  text-align:center;
}
.dispatch-command-clear b{
  color:var(--primary);
}
.dispatch-command-clear span{
  color:var(--muted);
}
.dispatch-live-section{
  margin-top:16px;
}
.dispatch-live-heading{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:10px;
}
.dispatch-live-heading h2{
  margin:3px 0 0;
}
.dispatch-live-heading>small{
  color:var(--muted);
  text-align:right;
}
.dispatch-live-board{
  display:grid;
  gap:9px;
}
.dispatch-live-vehicle{
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--panel);
  overflow:hidden;
}
.dispatch-live-vehicle-main{
  display:grid;
  grid-template-columns:minmax(190px,.9fr)
    minmax(220px,1.25fr)
    minmax(210px,1fr)
    auto
    auto;
  align-items:center;
  gap:14px;
  padding:14px;
}
.dispatch-live-identification,
.dispatch-live-current,
.dispatch-live-route,
.dispatch-live-state{
  display:grid;
  gap:4px;
  min-width:0;
}
.dispatch-live-identification small,
.dispatch-live-current small,
.dispatch-live-state small{
  color:var(--muted);
  font-size:.62rem;
}
.dispatch-live-identification h3{
  margin:0;
  overflow-wrap:anywhere;
}
.dispatch-live-identification span,
.dispatch-live-current span,
.dispatch-live-route span{
  color:var(--muted);
  font-size:.74rem;
}
.dispatch-live-current b{
  overflow-wrap:anywhere;
}
.dispatch-live-current.idle{
  grid-column:span 2;
}
.dispatch-live-vehicle
.dispatch-discovered-stops:not(:empty){
  padding:0 14px 14px;
}
.dispatch-live-vehicle
.discovered-stop-alert{
  margin-top:0;
}
@media(max-width:1180px){
  .dispatch-command-layout{
    grid-template-columns:1fr;
  }
  .dispatch-command-attention{
    max-height:none;
  }
  .dispatch-live-vehicle-main{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:760px){
  .dispatch-command-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .dispatch-command-layout .dispatch-map-card{
    min-height:auto;
  }
  .dispatch-command-layout .dispatch-map{
    height:390px;
    min-height:390px;
  }
  .dispatch-live-heading{
    align-items:flex-start;
    flex-direction:column;
  }
  .dispatch-live-heading>small{
    text-align:left;
  }
  .dispatch-live-vehicle-main{
    grid-template-columns:1fr;
    align-items:stretch;
  }
  .dispatch-live-current.idle{
    grid-column:auto;
  }
  .dispatch-live-vehicle-main .btn{
    width:100%;
    min-height:46px;
  }
}


/* V5.21.4 · acabamento final da Central */
.dispatch-discovered-attention:empty{
  display:none;
}
.dispatch-discovered-attention{
  display:grid;
  gap:10px;
}
.dispatch-command-attention
.dispatch-discovered-attention
.discovered-stop-alert{
  margin:0;
  padding:13px;
}
.dispatch-command-attention
.discovered-stop-alert .actions{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.dispatch-live-state span{
  color:var(--muted);
  font-size:.66rem;
  font-weight:700;
}
.dispatch-ignore-actions{justify-content:space-between;align-items:center;gap:24px}
.dispatch-ignore-actions #ignoreOnce{margin-right:auto}
.dispatch-ignore-actions #ignoreAlways{margin-left:auto}
@media(max-width:600px){
  .dispatch-command-attention
  .discovered-stop-alert .actions{
    grid-template-columns:1fr;
  }
  .dispatch-ignore-actions{display:grid;grid-template-columns:1fr;gap:12px}
  .dispatch-ignore-actions #ignoreOnce,.dispatch-ignore-actions #ignoreAlways{margin:0;width:100%}
}


/* V5.21.4 · cartões operacionais da frota ao vivo */
.fleet-live-list{display:grid;gap:10px;margin-top:14px}
.fleet-live-row{display:block;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--panel);transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}
.fleet-live-row>.fleet-live-summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;cursor:pointer}
.fleet-live-row>.fleet-live-summary::-webkit-details-marker{display:none}
.fleet-live-identity{display:grid;gap:4px;min-width:0}
.fleet-live-identity>b,.fleet-live-identity>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fleet-live-identity>span{color:var(--muted);font-size:.82rem}
.fleet-base-distance{font-size:.82rem;color:#b8c7c2}
.fleet-live-summary-state{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex:0 0 auto}
.fleet-live-chevron{font-size:1.35rem;color:var(--muted);transition:transform .18s ease}
.fleet-live-row[open] .fleet-live-chevron{transform:rotate(180deg)}
.fleet-live-details{display:grid;gap:14px;padding:0 16px 16px;border-top:1px solid var(--line)}
.fleet-live-details .fleet-independent-statuses{padding-top:14px}
.fleet-live-actions{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap}
.fleet-live-actions .btn{min-height:46px}
.fleet-live-actions .gps-register-location{background:#2563eb;border-color:#2563eb;color:#fff;box-shadow:0 5px 14px rgb(37 99 235 / .25)}
.fleet-live-actions .gps-register-location:hover,.fleet-live-actions .gps-register-location:focus-visible{background:#1d4ed8;border-color:#1d4ed8;color:#fff}
.fleet-live-actions .gps-register-location:focus-visible{outline:3px solid rgb(147 197 253 / .9);outline-offset:2px}
.fleet-live-actions .btn:disabled{opacity:1;background:#172722;border-color:#587067;color:#c4d2cd;box-shadow:none;text-align:center}
.fleet-live-actions .btn:disabled small{display:block;color:#aebeb8;font-size:.68rem;font-weight:600}
.fleet-gps-freshness{display:block}
.fleet-gps-freshness.fresh{color:#8fe5ba}
.fleet-gps-freshness.stale{color:#ffd27a}
.fleet-vehicle-label.fleet-vehicle-label-moving{
  border-color:var(--accent)!important;
  background:var(--accent)!important;
  color:var(--on-accent)!important;
  box-shadow:
    0 0 0 2px rgb(var(--accent-rgb) / .32),
    0 7px 20px rgba(0,0,0,.42)!important;
}
.fleet-vehicle-label.fleet-vehicle-label-moving
.fleet-map-base-distance{
  color:var(--on-accent)!important;
}
.fleet-vehicle-label.fleet-vehicle-label-moving
*{
  color:var(--on-accent)!important;
}
@media(max-width:700px){.fleet-live-row>.fleet-live-summary{align-items:flex-start;padding:13px}.fleet-live-summary-state{align-items:flex-end;flex-direction:column-reverse}.fleet-live-details{padding:0 13px 13px}.fleet-live-actions,.fleet-live-actions .btn{width:100%}}


/* V5.21.4 · distância no marcador e logo sem fundo artificial */
.fleet-vehicle-label .fleet-map-base-distance{display:inline-block;margin-top:3px;color:#a7f3d0;font-size:.72rem;font-weight:800;white-space:nowrap}
.brand-mark:has(img){
  background:transparent;
  box-shadow:none;
  border-radius:0;
  overflow:visible;
}
.brand-mark:has(img) img{
  width:40px;
  height:40px;
  object-fit:contain;
  border-radius:0;
}
.sidebar-brand .brand-mark:has(img){
  width:46px;
  height:46px;
  padding:4px;
  flex:0 0 46px;
  background:#ffffff;
  border:1px solid rgba(255,255,255,.85);
  border-radius:11px;
  box-shadow:0 6px 18px rgba(0,0,0,.24);
  overflow:hidden;
}
.sidebar-brand .brand-mark:has(img) img{
  width:38px;
  height:38px;
  object-fit:contain;
}


/* V5.21.4 · ação de socorro no balão do caminhão */
.fleet-map-whatsapp-action{display:grid;margin-top:12px;padding-top:10px;border-top:1px solid #d6dedb}
.fleet-map-whatsapp-action .btn{width:100%;min-height:44px;display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;font-size:.72rem}
.fleet-map-whatsapp-unavailable{margin-top:10px;padding:8px;border-radius:8px;background:#eef2f1;color:#596762;font-size:.7rem;text-align:center}

/* V5.21.4 · autoenquadramento operacional dos três mapas */
.operational-map-fit-control{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.operational-map-fit-button{
  min-height:38px;
  padding:0 11px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  border:1px solid rgb(var(--accent-rgb) / .72);
  border-radius:9px;
  background:#0b1714;
  color:#eef7f3;
  box-shadow:0 5px 18px rgba(0,0,0,.35);
  cursor:pointer;
}
.operational-map-fit-button:hover,
.operational-map-fit-button:focus-visible{
  background:var(--accent);
  color:var(--on-accent);
  outline:none;
}
.operational-map-fit-button span{
  font-size:1.05rem;
  line-height:1;
}
.operational-map-fit-button b{
  font-size:.64rem;
  letter-spacing:.04em;
  white-space:nowrap;
}
@media(max-width:620px){
  .operational-map-fit-button{
    width:38px;
    padding:0;
  }
  .operational-map-fit-button b{
    display:none;
  }
}

/* V5.21.4 · área segura do PWA em celulares */
@media(max-width:900px){
  /*
   * No PWA instalado, o iPhone permite que a aplicação ocupe
   * toda a tela. A altura abaixo reserva o espaço do relógio,
   * câmera, sinal e bateria.
   */
  .topbar{
    height:calc(
      76px + env(safe-area-inset-top, 0px)
    );
    min-height:calc(
      76px + env(safe-area-inset-top, 0px)
    );
    padding-top:env(safe-area-inset-top, 0px);
    padding-left:max(
      20px,
      env(safe-area-inset-left, 0px)
    );
    padding-right:max(
      20px,
      env(safe-area-inset-right, 0px)
    );
  }

  /*
   * O menu lateral também respeita o recorte superior e a
   * barra inferior do iPhone.
   */
  .sidebar{
    padding-top:calc(
      18px + env(safe-area-inset-top, 0px)
    );
    padding-left:max(
      14px,
      env(safe-area-inset-left, 0px)
    );
    padding-right:max(
      14px,
      env(safe-area-inset-right, 0px)
    );
    padding-bottom:calc(
      18px + env(safe-area-inset-bottom, 0px)
    );
  }

  .sidebar-footer{
    bottom:calc(
      14px + env(safe-area-inset-bottom, 0px)
    );
  }

  .content{
    padding-bottom:calc(
      96px + env(safe-area-inset-bottom, 0px)
    );
  }

  .auth-panel{
    padding-top:calc(
      26px + env(safe-area-inset-top, 0px)
    );
    padding-right:max(
      26px,
      env(safe-area-inset-right, 0px)
    );
    padding-bottom:calc(
      26px + env(safe-area-inset-bottom, 0px)
    );
    padding-left:max(
      26px,
      env(safe-area-inset-left, 0px)
    );
  }

  .toast-root{
    bottom:calc(
      18px + env(safe-area-inset-bottom, 0px)
    );
  }
}

@media(max-width:620px){
  .topbar{
    padding-left:max(
      14px,
      env(safe-area-inset-left, 0px)
    );
    padding-right:max(
      14px,
      env(safe-area-inset-right, 0px)
    );
  }

  .content{
    padding-bottom:calc(
      90px + env(safe-area-inset-bottom, 0px)
    );
  }

  .toast-root{
    bottom:calc(
      12px + env(safe-area-inset-bottom, 0px)
    );
    left:max(
      12px,
      env(safe-area-inset-left, 0px)
    );
    right:max(
      12px,
      env(safe-area-inset-right, 0px)
    );
  }
}

/* V5.21.4 · identificação operacional do caminhão no mapa */
.fleet-map-vehicle-name{
  display:inline-block;
  max-width:150px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.76rem;
  font-weight:900;
  line-height:1.15;
}
.fleet-map-current-speed{
  display:inline-block;
  margin-top:3px;
  color:#d8e7e1;
  font-size:.72rem;
  font-weight:900;
  white-space:nowrap;
}
.fleet-map-telemetry-row{display:inline-flex;align-items:center;justify-content:center;gap:5px;margin-top:3px;white-space:nowrap}
.fleet-map-network-icon{width:14px;height:14px;display:inline-grid;place-items:center;filter:drop-shadow(0 0 3px currentColor)}
.fleet-map-network-icon svg{width:14px;height:14px;fill:currentColor;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;fill-rule:evenodd}
.fleet-map-network-icon path{fill:none}
.fleet-map-network-icon.online{color:#00ff78}
.fleet-map-network-icon.offline{color:#ff3131}
.fleet-map-stopped-time{display:inline-block;margin-top:3px;color:#ffd166;font-size:.69rem;font-weight:900;white-space:nowrap}
.fleet-vehicle-label-moving
.fleet-map-current-speed,
.fleet-vehicle-label-moving
.fleet-map-vehicle-name{
  color:var(--on-accent)!important;
}

/* V5.21.4 · local real reconhecido na central */
.dispatch-live-location{
  display:block;
  margin-top:5px;
  color:var(--primary);
  font-size:.74rem;
  font-weight:900;
  line-height:1.3;
}

/* V5.21.4 · agenda caderno manhã tarde com mapa lateral */
.collection-notebook-toolbar-actions{
  align-items:center;
}

.collection-notebook-shell
.dispatch-notebook-layout{
  grid-template-columns:
    minmax(620px,1.62fr)
    minmax(390px,.86fr);
  gap:18px;
  align-items:stretch;
}

.collection-notebook-shell
.dispatch-notebook{
  position:relative;
  min-height:690px;
  padding:18px 20px 22px;
  overflow:hidden;
  border:1px solid #315044;
  border-radius:22px;
  background:
    radial-gradient(
      ellipse at 50% 0,
      rgba(255,255,255,.055),
      transparent 48%
    ),
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.018) 0,
      rgba(255,255,255,.018) 1px,
      transparent 1px,
      transparent 27px
    ),
    linear-gradient(
      100deg,
      #18201d 0%,
      #242a27 47%,
      #111714 50%,
      #242a27 53%,
      #171e1b 100%
    );
  box-shadow:
    inset 0 0 45px rgba(0,0,0,.65),
    0 18px 45px rgba(0,0,0,.34);
}

.collection-notebook-shell
.dispatch-notebook::before{
  content:"";
  position:absolute;
  inset:50% 0 auto;
  height:5px;
  transform:translateY(-50%);
  background:
    linear-gradient(
      180deg,
      rgba(0,0,0,.75),
      rgba(255,255,255,.08),
      rgba(0,0,0,.75)
    );
  box-shadow:
    0 -5px 13px rgba(0,0,0,.55),
    0 5px 13px rgba(0,0,0,.55);
  pointer-events:none;
}

.collection-notebook-shell
.dispatch-notebook::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  width:22px;
  transform:translateX(-50%);
  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(0,0,0,.42),
      transparent
    );
  pointer-events:none;
}

.collection-notebook-shell
.dispatch-notebook-queue{
  position:relative;
  z-index:1;
}

.collection-notebook-shell
.dispatch-notebook-caption{
  margin-bottom:13px;
  padding:0 7px 12px;
  border-bottom:1px solid rgb(var(--accent-rgb) / .25);
}

.collection-notebook-live-state{
  color:#9cb8ae;
  font-size:.72rem;
  font-weight:800;
}

.collection-notebook-pages{
  display:grid;
  grid-template-rows:minmax(290px,auto) minmax(290px,auto);
  gap:22px;
}

.collection-notebook-period{
  position:relative;
  min-height:285px;
  padding:9px 9px 14px;
}

.collection-notebook-period-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:50px;
  padding:4px 6px 12px;
  border-bottom:1px solid rgba(255,255,255,.11);
}

.collection-notebook-period-head>div{
  display:flex;
  align-items:center;
  gap:8px;
}

.collection-notebook-period-head b{
  font-size:1.04rem;
  letter-spacing:.02em;
}

.collection-notebook-period-head small{
  color:#75d55c;
  font-size:.76rem;
  font-weight:900;
}

.collection-notebook-period-icon{
  display:grid;
  place-items:center;
  width:35px;
  height:35px;
  color:#75d55c;
  font-size:1.45rem;
}

.collection-period-schedule{
  min-height:38px;
  padding:0 12px;
  border:1px solid rgba(117,213,92,.65);
  border-radius:9px;
  background:rgba(10,25,17,.58);
  color:#8be36d;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.025em;
}

.collection-period-schedule:hover,
.collection-period-schedule:focus-visible{
  background:var(--accent);
  color:var(--on-accent);
  outline:none;
}

.collection-notebook-period-list{
  display:grid;
  gap:11px;
  padding-top:13px;
}

.collection-notebook-shell
.dispatch-notebook-row{
  min-height:82px;
  grid-template-columns:
    56px
    54px
    minmax(190px,1fr)
    auto
    auto
    18px;
  padding:10px 12px;
  border-color:#43514c;
  border-radius:13px;
  background:
    linear-gradient(
      145deg,
      rgba(27,35,32,.98),
      rgba(14,20,18,.98)
    );
  box-shadow:
    0 7px 16px rgba(0,0,0,.32),
    inset 0 1px rgba(255,255,255,.025);
}

.collection-notebook-shell
.dispatch-notebook-row:hover,
.collection-notebook-shell
.dispatch-notebook-row.selected{
  border-color:var(--accent);
  background:
    linear-gradient(
      145deg,
      rgba(31,66,51,.98),
      rgba(13,30,23,.98)
    );
}

.collection-notebook-shell
.dispatch-order-number{
  display:grid;
  place-items:center;
  min-width:46px;
  min-height:46px;
  border-radius:8px;
  background:
    linear-gradient(145deg,#428b3d,#255d2c);
  color:#fff;
  font-size:1.55rem;
  box-shadow:
    inset 0 1px rgba(255,255,255,.16),
    0 5px 12px rgba(0,0,0,.28);
}

.collection-notebook-shell
.dispatch-notebook-main>b{
  font-size:.93rem;
}

.collection-notebook-shell
.dispatch-notebook-main>span{
  line-height:1.45;
}

.collection-period-empty{
  min-height:112px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:5px;
  border:1px dashed rgba(117,213,92,.2);
  border-radius:12px;
  color:#789087;
  text-align:center;
}

.collection-period-empty>span{
  color:#75d55c;
  font-size:1.3rem;
}

.collection-period-empty small{
  color:#687e76;
}

.collection-notebook-shell
.dispatch-notebook-detail{
  min-height:690px;
  max-height:calc(100vh - 170px);
  overflow:auto;
  border:1px solid #315044;
  border-radius:18px;
  background:
    linear-gradient(
      150deg,
      rgba(17,29,25,.98),
      rgba(8,17,14,.98)
    );
  box-shadow:0 18px 45px rgba(0,0,0,.28);
}

.collection-notebook-shell
.dispatch-detail-map{
  height:440px;
  min-height:390px;
  border-radius:14px;
}

.collection-notebook-shell
.dispatch-driver-tabs{
  margin-bottom:14px;
}

.collection-notebook-shell
.dispatch-driver-tab{
  min-height:55px;
  background:
    linear-gradient(
      180deg,
      rgba(19,31,27,.98),
      rgba(10,18,15,.98)
    );
}

.collection-notebook-shell
.dispatch-driver-tab.active{
  border-color:var(--accent);
  background:
    linear-gradient(
      180deg,
      rgb(var(--accent-rgb) / .17),
      rgba(11,28,21,.98)
    );
}

@media(max-width:1180px){
  .collection-notebook-shell
  .dispatch-notebook-layout{
    grid-template-columns:
      minmax(520px,1.4fr)
      minmax(340px,.8fr);
  }

  .collection-notebook-shell
  .dispatch-notebook-row{
    grid-template-columns:
      50px
      48px
      minmax(150px,1fr)
      auto
      18px;
  }

  .collection-notebook-shell
  .collection-notebook-order-buttons{
    display:none;
  }
}

@media(max-width:900px){
  .collection-notebook-toolbar-actions{
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
  }

  .collection-notebook-toolbar-actions
  #collectionNotebookAll{
    grid-column:1/-1;
  }

  .collection-notebook-shell
  .dispatch-notebook-layout{
    grid-template-columns:1fr;
  }

  .collection-notebook-shell
  .dispatch-notebook{
    min-height:0;
  }

  .collection-notebook-shell
  .dispatch-notebook-detail{
    min-height:0;
    max-height:none;
  }

  .collection-notebook-shell
  .dispatch-detail-map{
    height:55vh;
    min-height:380px;
  }
}

@media(max-width:620px){
  .collection-notebook-toolbar-actions{
    grid-template-columns:1fr;
  }

  .collection-notebook-toolbar-actions
  #collectionNotebookAll{
    grid-column:auto;
  }

  .collection-notebook-pages{
    grid-template-rows:auto auto;
  }

  .collection-notebook-period{
    min-height:230px;
    padding:7px 2px 12px;
  }

  .collection-notebook-period-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .collection-period-schedule{
    width:100%;
  }

  .collection-notebook-shell
  .dispatch-notebook{
    padding:13px;
    border-radius:15px;
  }

  .collection-notebook-shell
  .dispatch-notebook::after{
    display:none;
  }

  .collection-notebook-shell
  .dispatch-notebook-row{
    grid-template-columns:42px minmax(0,1fr) 18px;
    min-height:92px;
  }

  .collection-notebook-shell
  .dispatch-drag-handle{
    display:none;
  }

  .collection-notebook-shell
  .dispatch-order-number{
    min-width:38px;
    min-height:38px;
    font-size:1.15rem;
  }

  .collection-notebook-shell
  .dispatch-notebook-main{
    min-width:0;
  }

  .collection-notebook-shell
  .dispatch-notebook-status{
    grid-column:2;
    justify-self:start;
  }

  .collection-notebook-shell
  .collection-notebook-order-buttons{
    display:none;
  }

  .collection-notebook-shell
  .dispatch-row-arrow{
    grid-column:3;
    grid-row:1/3;
  }

  .collection-notebook-shell
  .dispatch-detail-map{
    height:48vh;
    min-height:330px;
  }
}

/* V5.21.4 · encadernação e período atual */
.collection-notebook-shell
.dispatch-notebook{
  padding-left:34px;
  border-color:#365b4c;
  background:
    radial-gradient(
      ellipse at 50% -15%,
      rgba(255,255,255,.085),
      transparent 46%
    ),
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.022) 0,
      rgba(255,255,255,.022) 1px,
      transparent 1px,
      transparent 26px
    ),
    linear-gradient(
      100deg,
      #111815 0%,
      #252c29 46.5%,
      #0b100e 49.5%,
      #0b100e 50.5%,
      #252c29 53.5%,
      #111815 100%
    );
  box-shadow:
    inset 14px 0 20px rgba(0,0,0,.42),
    inset -10px 0 20px rgba(0,0,0,.28),
    inset 0 0 55px rgba(0,0,0,.64),
    0 20px 46px rgba(0,0,0,.38);
}

.collection-notebook-binding{
  position:absolute;
  z-index:3;
  top:17px;
  bottom:17px;
  left:7px;
  width:20px;
  border-right:1px solid rgba(91,120,108,.28);
  background:
    radial-gradient(
      circle at center,
      #020605 0 4px,
      #0a100e 4px 5px,
      #63736d 5px 6px,
      transparent 6px
    )
    center top / 20px 34px repeat-y;
  filter:
    drop-shadow(1px 1px 1px rgba(0,0,0,.9));
  pointer-events:none;
}

.collection-notebook-binding::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:9px;
  width:1px;
  background:
    linear-gradient(
      180deg,
      transparent,
      rgba(255,255,255,.12),
      transparent
    );
}

.collection-notebook-period{
  border-radius:10px;
}

.collection-notebook-period.morning{
  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,.018),
      transparent 70%
    );
}

.collection-notebook-period.afternoon{
  background:
    linear-gradient(
      145deg,
      rgba(0,0,0,.06),
      rgba(255,255,255,.012)
    );
}

.collection-notebook-period-head{
  border-bottom-color:rgba(117,213,92,.24);
}

.collection-notebook-shell
.dispatch-notebook-row{
  border-color:#46554f;
  background:
    linear-gradient(
      145deg,
      rgba(31,39,36,.99),
      rgba(13,19,17,.99)
    );
  box-shadow:
    0 8px 18px rgba(0,0,0,.4),
    inset 0 1px rgba(255,255,255,.04);
}

.collection-notebook-shell
.dispatch-notebook-detail{
  background:
    radial-gradient(
      circle at 50% 0,
      rgb(var(--accent-rgb) / .045),
      transparent 42%
    ),
    linear-gradient(
      150deg,
      rgba(17,29,25,.99),
      rgba(7,15,12,.99)
    );
}

@media(max-width:620px){
  .collection-notebook-shell
  .dispatch-notebook{
    padding-left:27px;
  }

  .collection-notebook-binding{
    left:3px;
    width:18px;
    background-size:18px 32px;
  }
}
/* V5.21.4 · central de despacho profissional */
.dispatch-command-filters{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.dispatch-command-filters .active{border-color:var(--accent);background:rgb(var(--accent-rgb) / .14);color:var(--accent)}.dispatch-live-vehicle{border-left:4px solid #60716b}.dispatch-live-vehicle.moving{border-left-color:var(--accent);background:linear-gradient(90deg,rgb(var(--accent-rgb) / .08),transparent 32%)}.dispatch-live-vehicle.stopped{border-left-color:#f2c94c}.dispatch-live-vehicle.offline{border-left-color:#ff5d5d}.dispatch-live-state strong{display:block;font-size:1rem}.dispatch-signal{font-weight:900;font-size:.72rem}.dispatch-signal.online{color:#31f58a}.dispatch-signal.offline{color:#ff4747}.dispatch-vehicle-timeline{border-top:1px solid var(--line);padding:10px 14px}.dispatch-vehicle-timeline summary{cursor:pointer;color:var(--accent);font-weight:800;font-size:.72rem}.dispatch-vehicle-timeline>div{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px}.dispatch-day-section{margin-top:22px}.dispatch-day-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.dispatch-day-grid article{display:flex;flex-direction:column;gap:5px;padding:14px;border:1px solid var(--line);border-radius:12px;background:rgba(11,23,20,.76)}.dispatch-day-grid article small{color:var(--muted)}.dispatch-day-grid article strong{color:var(--accent)}.dispatch-day-grid article em{color:#f2c94c;font-style:normal}.leaflet-tooltip.fleet-vehicle-label-moving{background:var(--accent)!important;color:var(--on-accent)!important}
@media(max-width:700px){.dispatch-vehicle-timeline>div{grid-template-columns:1fr}.dispatch-command-filters{overflow-x:auto;flex-wrap:nowrap}.dispatch-command-filters .btn{white-space:nowrap}}

/* Central de Despacho v2 · leitura operacional e percursos por coleta */
.dispatch-command-toolbar{position:static!important;top:auto!important;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.dispatch-command-toolbar h1{margin:0 0 4px;font-size:1.65rem}.dispatch-command-toolbar p{margin:0}
.dispatch-live-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(520px,1fr));gap:12px}
.dispatch-fleet-card{display:grid;border:1px solid var(--line);border-left:5px solid #60716b;border-radius:14px;background:var(--panel);overflow:hidden}
.dispatch-fleet-card.moving{border-left-color:var(--accent)}.dispatch-fleet-card.stopped{border-left-color:#f2b84b}.dispatch-fleet-card.offline{border-left-color:#ff5d5d}
.dispatch-fleet-card-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 16px 10px}.dispatch-fleet-card-head>div{display:grid;gap:4px}.dispatch-fleet-card-head b{font-size:1rem}.dispatch-fleet-card-head span{color:var(--muted);font-size:.82rem}
.dispatch-fleet-statuses{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:6px 16px 12px}.dispatch-fleet-statuses>span{display:grid;gap:5px}.dispatch-fleet-statuses small{color:var(--muted);font-size:.62rem;font-weight:900}
.dispatch-fleet-telemetry{display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding:11px 16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.dispatch-fleet-telemetry>span{color:var(--muted);font-size:.76rem}
.dispatch-fleet-missions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px 16px}.dispatch-fleet-actions{display:flex;justify-content:flex-end;padding:0 16px 14px}
.dispatch-route-selection{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;padding:10px 12px;border:1px solid rgba(33,140,255,.55);border-radius:10px;background:rgba(33,140,255,.10)}
.collection-route-button:disabled{opacity:1;color:var(--muted);border-color:var(--line);background:var(--panel-3);cursor:not-allowed;transform:none;filter:none}
.dispatch-supplier-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.dispatch-supplier-actions .btn{opacity:1!important;visibility:visible;min-height:38px;font-weight:900;text-shadow:none}.dispatch-supplier-actions .btn.secondary{border-color:#70d6af;background:#123b30;color:#effff8;box-shadow:0 0 0 1px rgb(var(--accent-rgb) / .18)}.dispatch-supplier-actions .btn.secondary:hover,.dispatch-supplier-actions .btn.secondary:focus-visible{border-color:#a7f3d0;background:#1d5946;color:#fff}.dispatch-supplier-actions .btn:disabled{opacity:.62!important;cursor:not-allowed}
.dispatch-supplier-map-icon{background:transparent!important;border:0!important}.dispatch-supplier-map-icon span{display:grid;place-items:center;width:32px;height:32px;border:3px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#27d17f;color:#07120e;font-size:19px;font-weight:1000;box-shadow:0 3px 10px rgba(0,0,0,.45)}.dispatch-supplier-map-icon span::first-letter{transform:rotate(45deg)}
.dispatch-supplier-collected-card{width:min(216px,calc(100vw - 32px));padding:0!important;border:0!important;border-radius:9px!important;background:#fff!important;color:#18342b!important;box-shadow:0 7px 19px rgba(0,0,0,.28)!important;white-space:normal;pointer-events:none;overflow:hidden}.dispatch-supplier-collected-card::before{border-top-color:#fff!important}.dispatch-supplier-collected-card .leaflet-tooltip-content{display:block;margin:0;padding:0}.dispatch-supplier-card-content{overflow:hidden;border:1px solid rgba(11,66,49,.22);border-radius:9px}.dispatch-supplier-card-head{display:grid;grid-template-columns:23px minmax(0,1fr) 12px;align-items:center;gap:7px;min-height:49px;padding:8px 9px;background:#0d503d;color:#f4fff9}.dispatch-supplier-card-truck{display:grid;place-items:center;width:21px;height:21px;font-size:15px;line-height:1}.dispatch-supplier-card-heading{display:grid;min-width:0;gap:2px}.dispatch-supplier-card-heading strong,.dispatch-supplier-card-heading small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dispatch-supplier-card-heading strong{font-size:.66rem;font-weight:900;letter-spacing:.02em}.dispatch-supplier-card-heading small{color:#b7ead3;font-size:.56rem;font-weight:750}.dispatch-supplier-card-arrow{color:#b7ead3;font-size:1.06rem;font-weight:300;line-height:1;text-align:right}.dispatch-supplier-card-body{display:grid;gap:5px;padding:8px 9px;background:#fff}.dispatch-supplier-card-row{display:grid;grid-template-columns:14px minmax(0,1fr);align-items:center;gap:6px;min-width:0;color:#29473d;font-size:.58rem;font-weight:750;line-height:1.25}.dispatch-supplier-card-row>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dispatch-supplier-card-icon{color:#26765a;font-size:.73rem;text-align:center;line-height:1}
@media(max-width:600px){.dispatch-supplier-collected-card{width:min(201px,calc(100vw - 24px))}.dispatch-supplier-card-head{min-height:46px;padding:7px 8px}.dispatch-supplier-card-body{padding:7px 8px}.dispatch-supplier-card-row{font-size:.56rem}}
.dispatch-day-card{cursor:pointer;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}.dispatch-day-card:hover{transform:translateY(-2px)}.dispatch-day-card.weighed{border-left:5px solid #27d17f}.dispatch-day-card.waiting{border-left:5px solid #f2b84b}.dispatch-day-card.returning{border-left:5px solid #218cff}.dispatch-day-card.decision{border-left:5px solid #f97316}.dispatch-day-card.selected{border-color:#218cff;box-shadow:0 0 0 2px rgba(33,140,255,.28)}
.dispatch-day-card-title{display:flex;align-items:center;gap:9px}.dispatch-collection-marker,.dispatch-collection-map-icon span{display:grid;place-items:center;width:30px;height:30px;border:3px solid #fff;border-radius:50%;color:#07120e;font-weight:1000;box-shadow:0 3px 10px rgba(0,0,0,.35)}.dispatch-collection-marker.weighed,.dispatch-collection-map-icon .weighed{background:#27d17f}.dispatch-collection-marker.waiting,.dispatch-collection-map-icon .waiting{background:#f2b84b}.dispatch-collection-marker.returning,.dispatch-collection-map-icon .returning{background:#218cff}.dispatch-collection-marker.decision,.dispatch-collection-map-icon .decision{background:#f97316}.dispatch-collection-map-icon{background:transparent!important;border:0!important}
@media(max-width:900px){.dispatch-live-board{grid-template-columns:1fr}.dispatch-fleet-statuses,.dispatch-fleet-missions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.dispatch-command-toolbar,.dispatch-route-selection{align-items:stretch;flex-direction:column}.dispatch-fleet-statuses,.dispatch-fleet-missions{grid-template-columns:1fr}}

/* Correção controlada pós-auditoria: o card da Central é o card real da Frota. */
.dispatch-shared-fleet-card{display:grid;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--panel)}
.dispatch-shared-fleet-card>.fleet-live-row{margin:0;border:0;border-radius:0;border-bottom:1px solid var(--line)}
.dispatch-shared-fleet-card .dispatch-fleet-missions{padding:14px 16px}
.dispatch-shared-fleet-card .dispatch-fleet-actions{padding:0 16px 14px}
.quick-existing-collection{display:grid;gap:10px}.quick-existing-collection .btn{justify-self:start}

/* V5.21.4 · agenda harmonizada e estados operacionais consistentes */
.collection-agenda-heading{margin-bottom:14px}
.collection-agenda-heading>div:first-child{display:grid;gap:5px}
.collection-agenda-heading b{font-size:1.18rem}
.collection-all-shell{width:100%;max-width:none;padding:14px}
.collection-all-shell .collection-notebook-tabs{margin-bottom:12px}
.collection-all-controls{display:flex;align-items:center;gap:10px;min-height:46px;margin-bottom:12px;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:rgba(8,19,16,.72)}
.collection-all-controls .collection-quick-views{display:flex;gap:6px;margin:0}
.collection-all-controls .collection-filter-summary{min-width:0;flex:1}
.collection-all-controls .collection-filter-button{margin-left:auto;white-space:nowrap}
.collection-status-board{display:grid;gap:10px}
.collection-status-section{border:1px solid var(--line);border-radius:13px;background:rgba(8,18,15,.76);overflow:hidden}
.collection-status-header{min-height:54px;padding:10px 13px}
.collection-status-heading{display:flex;align-items:center;gap:10px}
.collection-status-heading small{display:block;margin-top:2px;color:var(--muted)}
.collection-status-count{display:grid;place-items:center;min-width:30px;height:30px;border:1px solid var(--line);border-radius:9px}
.collection-status-section[open]>.collection-status-header{border-bottom:1px solid var(--line)}
.collection-status-section .collection-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:10px;padding:10px}
.collection-card{display:grid;align-content:start;gap:10px;min-height:0;padding:13px!important;border-left:4px solid #63746d!important;background:rgba(12,26,22,.92)!important}
.collection-card.collection-phase-agendada,.collection-card.collection-phase-confirmada,.collection-card.collection-phase-motorista-designado{border-left-color:#4e9f7a!important}
.collection-card[class*="collection-phase-em-"],.collection-card.collection-phase-no-fornecedor,.collection-card.collection-phase-carregando{border-left-color:var(--accent)!important}
.collection-card.collection-phase-cancelada{border-left-color:#e45f5f!important}
.collection-card.collection-phase-finalizada{border-left-color:#6c8178!important}
.collection-card-main{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.collection-card-identity{display:grid;gap:3px;min-width:0}
.collection-card-identity small{color:var(--muted);font-weight:800}
.collection-card-identity h3{margin:0;font-size:1rem;line-height:1.2}
.collection-card-schedule{color:#eaf8f1;font-size:.82rem}
.collection-card-facts{display:grid;gap:6px;padding:9px 10px;border-radius:9px;background:rgba(255,255,255,.025);font-size:.78rem}
.collection-card-material{color:#f0c75e}
.collection-card .collection-team{display:flex;flex-wrap:wrap;gap:8px 16px;margin:0;color:var(--muted);font-size:.76rem}
.collection-card-actions{margin-top:0;padding-top:9px;border-top:1px solid var(--line)}
.collection-section-empty{min-height:58px}
@media(max-width:720px){.collection-all-controls{align-items:stretch;flex-wrap:wrap}.collection-all-controls .collection-filter-summary{order:3;flex-basis:100%}.collection-status-section .collection-grid{grid-template-columns:1fr}.collection-agenda-heading{align-items:stretch}.collection-agenda-heading,.collection-agenda-heading .actions{flex-direction:column}.collection-card-main{align-items:stretch;flex-direction:column}}

/* Comunicação simples e legível para Base e Motorista. */
.communication-head{align-items:center}.communication-driver-list{display:grid;gap:10px;max-width:900px}.communication-driver{display:flex;justify-content:space-between;align-items:center;text-align:left;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:inherit}.communication-driver span{display:grid;gap:4px}.communication-driver em{font-style:normal;color:var(--muted)}.communication-driver.unread{border-color:#35d98b;box-shadow:0 0 0 1px #35d98b}.communication-driver strong{display:grid;place-items:center;min-width:30px;height:30px;border-radius:50%;background:#35d98b;color:#04120d}.communication-toolbar,.sg-compose-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.communication-log{max-height:55vh;overflow:auto;display:flex;flex-direction:column;gap:8px;padding:10px;background:#07110f;border-radius:12px}.communication-bubble{max-width:78%;padding:12px;border-radius:14px;background:#162b25}.communication-bubble.mine{align-self:flex-end;background:#145441}.communication-bubble.theirs{align-self:flex-start}.communication-bubble.latest,.sg-msg.latest{box-shadow:0 0 0 2px #35d98b}.communication-bubble audio{width:min(360px,100%)}.communication-composer{margin-top:12px}.communication-record-panel,.communication-text-form{display:grid;gap:10px}.communication-text-form textarea{min-height:100px}.driver-app{background:#07110f;color:#e9fff6}.sg{max-width:680px;margin:auto;padding:20px 16px 96px}.sg .card{margin:12px 0}.sg .btn{min-height:52px}.sg-actions,.sg-header-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.sg-chat{height:48vh;overflow:auto;background:#0b1c18;border:1px solid #27463e;border-radius:12px;padding:12px}.sg-msg{margin:8px 0;padding:10px;border-radius:10px;background:#153126}.sg-msg.mine{background:#174d3f}.sg-msg.urgent{border:2px solid #ff896b}.sg-offline{position:sticky;top:0;z-index:5;background:#8a3b20;color:white;padding:10px;text-align:center}.sg textarea,.sg input,.sg select{width:100%;margin:6px 0}.sg audio{width:100%;margin-top:8px}#audioComposer,#messageForm{margin-top:12px;display:grid;gap:10px}#audioComposer[hidden],#messageForm[hidden]{display:none}@media(max-width:600px){.communication-bubble{max-width:92%}.sg-header-actions{grid-template-columns:1fr}.communication-toolbar,.sg-compose-choices{position:sticky;bottom:0;z-index:2;background:#07110f;padding:8px 0}}
.sg-hold-record{touch-action:none;user-select:none;-webkit-user-select:none;min-height:64px}.sg-hold-record.recording{background:#b42318!important;border-color:#ff6b5f!important;color:#fff!important;transform:scale(.99)}.sg-record-status{display:block;padding:8px 4px 14px;text-align:center;color:var(--muted)}.communication-media-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.communication-media-card{display:grid;gap:7px;padding:10px;border:1px solid var(--border);border-radius:12px;color:inherit;text-decoration:none;background:rgba(255,255,255,.02)}.communication-media-card img,.communication-media-card video{display:block;width:100%;max-height:260px;object-fit:contain;border-radius:8px;background:#000}.communication-media-card small{color:var(--muted)}


/* Auditoria 03Q · logo transparente sem alterar o card operacional. */
/* A logo enviada pela empresa não recebe fundo branco artificial na sidebar. */
.sidebar-brand .brand-mark:has(img){background:#fff!important;border-color:#fff!important;box-shadow:none!important;border-radius:8px!important;overflow:hidden}
.sidebar-brand .brand-mark:has(img) img{width:40px;height:40px;object-fit:contain;border-radius:0}
.security-account-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.security-account-grid .card{margin:0}.recovery-code{font:700 clamp(.82rem,2.5vw,1.2rem)/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere;letter-spacing:.06em;padding:18px;border:1px dashed var(--border);border-radius:12px;text-align:center;margin:16px 0;background:var(--panel)}
.expense-vehicle-picker{border:1px solid var(--line);border-radius:12px;padding:13px;background:rgb(var(--accent-rgb) / .035)}.expense-vehicle-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.expense-vehicle-title b,.expense-vehicle-title small{display:block}.expense-vehicle-title small{color:var(--muted);margin-top:3px}.expense-vehicle-search{margin-bottom:9px}.expense-vehicle-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:250px;overflow:auto}.expense-vehicle-list .check-card{background:var(--panel)}.expense-vehicle-list .check-card:has(input:checked){border-color:var(--primary);background:rgb(var(--accent-rgb) / .09)}.expense-vehicle-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:4px}.expense-vehicle-tag{font-size:.64rem;color:var(--primary);background:rgb(var(--accent-rgb) / .1);border-radius:20px;padding:3px 7px}@media(max-width:620px){.expense-vehicle-list{grid-template-columns:1fr}.expense-vehicle-title{align-items:flex-start;flex-direction:column}}

/* Agenda: compact planning actions, shared map styles. */
.collection-agenda-actions{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;padding:.35rem}
.collection-agenda-actions small{flex:1 1 12rem;min-width:12rem}
.collection-agenda-actions .btn{white-space:nowrap;min-height:38px;flex:0 0 auto}
.collection-agenda-map-label,.collection-agenda-base-label{display:grid;gap:2px;padding:4px 7px;border:1px solid rgb(var(--accent-rgb) / .55);border-radius:7px;background:rgba(7,17,15,.94);color:#ecfff6;box-shadow:0 3px 12px rgba(0,0,0,.3);font-size:.74rem;line-height:1.15}
.collection-agenda-map-label small,.collection-agenda-base-label small{color:#a7f3d0;font-size:.68rem;font-weight:700}
.collection-agenda-base-label{border-color:#f0c75e;color:#fff5c2}
.collection-agenda-base-label small{color:#f0c75e}
.collection-card.selected{outline:2px solid var(--primary,#49df8c)}
.collection-all-shell .dispatch-notebook-layout{align-items:start}
.collection-all-shell .collection-status-board{min-width:0}
.collection-all-shell .dispatch-notebook-detail{position:sticky;top:1rem}
@media(max-width:900px){.collection-all-shell .dispatch-notebook-detail{position:static}.collection-agenda-actions{width:100%}}
@media(max-width:1100px){
  .collection-notebook-shell .dispatch-notebook-layout{
    grid-template-columns:1fr;
  }
  .collection-all-shell .dispatch-notebook-detail{
    position:static;
  }
}
@media(max-width:560px){.collection-agenda-actions small{flex-basis:100%;min-width:0}.collection-agenda-actions .btn{flex:1 1 auto}.collection-agenda-actions .collection-share-button{min-width:10.5rem}}
html .auth-panel,html .auth-art{background:var(--surface-sidebar)}html .auth-art{background:radial-gradient(circle at 20% 80%,rgb(var(--accent-rgb) / .16),transparent 35%),linear-gradient(140deg,var(--surface-bg),var(--surface-panel))}.auth-card label,.form-grid label{color:var(--surface-muted)}th{background:var(--surface-panel-2)}.modal{background:rgb(0 0 0 / .62)}.weight-input input,.press-balance{background:var(--surface-bg);border-color:var(--surface-line)}.skeleton{background:linear-gradient(90deg,var(--surface-panel-2),var(--surface-panel-3),var(--surface-panel-2))}
.dispatch-supplier-whatsapp{margin-top:10px}.dispatch-supplier-whatsapp .btn{width:100%;min-height:42px;text-align:center}
@media(max-width:560px){.dispatch-supplier-whatsapp .btn{min-height:48px}}
/* V5.21.158 · visita GPS retroativa ainda pendente de pesagem */
.dispatch-recognized-visit{color:#7cf0c4!important;font-weight:800}
.people-rh-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px;padding:24px 28px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,var(--panel),var(--accent-soft));box-shadow:0 12px 30px rgb(0 0 0 / .08)}
.people-rh-hero h2{margin:5px 0 7px;font-size:clamp(1.5rem,2.4vw,2.2rem)}
.people-rh-hero p{max-width:720px;margin:0;color:var(--muted);line-height:1.55}
.people-rh-hero-mark{display:grid;place-items:center;width:68px;height:68px;flex:0 0 68px;border-radius:20px;background:var(--accent);color:#fff;font-size:2rem;box-shadow:0 8px 20px rgb(var(--accent-rgb) / .28)}
.people-rh-coverage{margin:0 0 20px;padding:0;border:1px solid var(--line);border-radius:16px;background:var(--panel);overflow:hidden}.people-rh-coverage summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px;cursor:pointer;list-style:none}.people-rh-coverage summary::-webkit-details-marker{display:none}.people-rh-coverage summary>span{display:grid;gap:5px}.people-rh-coverage summary b{font-size:1rem}.people-rh-coverage summary small{color:var(--muted)}.people-rh-coverage summary:after{content:"＋";color:var(--primary);font-size:1.25rem}.people-rh-coverage[open] summary:after{content:"−"}.people-rh-coverage[open] .people-rh-coverage-grid{padding:0 18px 18px}
.people-rh-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}.people-rh-section-heading h3{margin:4px 0 0}
.people-rh-coverage-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.people-rh-overview{display:grid;gap:14px;margin:0 0 20px}.people-rh-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.people-rh-metric{min-width:0;padding:15px;border:1px solid #29483f;border-radius:13px;background:#10201b;color:#effaf5;box-shadow:0 8px 20px rgb(0 0 0 / .12)}.people-rh-metric span,.people-rh-metric small{display:block;color:#b9cec5;font-size:.66rem;line-height:1.35}.people-rh-metric strong{display:block;margin:8px 0 3px;color:#ffffff;font-size:1.25rem;overflow-wrap:anywhere}.people-rh-metric.available{border-color:#2f8e68}.people-rh-metric.partial{border-color:#a87827;background:#241f12}.people-rh-metric.partial strong{color:#ffe2a1}.people-rh-metric.neutral{border-color:#40504b}.people-rh-access-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.people-rh-access{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:70px;padding:13px;text-align:left;border:1px solid #29483f;border-radius:12px;background:#0d1a17;color:#f0faf5;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}.people-rh-access:hover,.people-rh-access:focus-visible{border-color:#59e0a1;background:#142c24;transform:translateY(-1px);outline:none;box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .22)}.people-rh-access span{display:grid;gap:5px;min-width:0}.people-rh-access b{font-size:.78rem}.people-rh-access small{color:#b9cec5;line-height:1.35}.people-rh-access i{color:#72e5b0;font-size:1.15rem;font-style:normal}.people-rh-access.partial{border-color:#896a2c}.people-rh-access.partial i{color:#ffd37a}
.people-rh-coverage-card{min-height:126px;padding:14px;border:1px solid #29483f;border-left:4px solid #43d695;border-radius:12px;background:#10201b;color:#effaf5}.people-rh-coverage-card.partial{border-left-color:#e0a83b;background:#201c12}.people-rh-coverage-card.unavailable{border-left-color:#84938e;background:#151c1a}.people-rh-coverage-card>div{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.people-rh-coverage-card b{font-size:.9rem;color:#ffffff}.people-rh-coverage-card p{margin:12px 0 0;color:#b9cec5;font-size:.78rem;line-height:1.45}
.people-rh-status{display:inline-flex;white-space:nowrap;padding:3px 7px;border-radius:999px;background:#164b37;color:#a9f3ce;font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.partial .people-rh-status{background:#5b4216;color:#ffe1a0}.unavailable .people-rh-status{background:#303b37;color:#d1ddd8}
.people-rh-attention{margin:0 0 20px;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}.people-rh-attention-list{display:grid;gap:9px}.people-rh-attention-item{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:13px 15px;border:1px solid rgb(var(--accent-rgb) / .35);border-radius:11px;background:rgb(var(--accent-rgb) / .08);color:var(--text);text-align:left;cursor:pointer}.people-rh-attention-item:hover,.people-rh-attention-item:focus-visible{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .16)}.people-rh-attention-item span{display:grid;gap:4px}.people-rh-attention-item small{color:var(--muted)}.people-rh-attention-item i{color:var(--primary);font-style:normal;font-size:1.15rem}.people-rh-no-attention{margin:0}
.rh-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-bottom:18px;padding:22px 24px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(135deg,var(--panel),var(--accent-soft))}.rh-page-header h2{margin:5px 0 7px;font-size:clamp(1.35rem,2.4vw,2rem)}.rh-page-header p{max-width:720px;margin:0;color:var(--muted);line-height:1.5}.rh-page-nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;max-width:440px}.rh-page-nav button{padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--muted);font-size:.72rem;font-weight:800;text-align:left;cursor:pointer}.rh-page-nav button:hover,.rh-page-nav button:focus-visible,.rh-page-nav button.active{border-color:var(--primary);color:var(--primary);outline:none}.rh-operation-tabs{display:flex;gap:6px;margin-bottom:12px;border-bottom:1px solid var(--line)}.rh-operation-tabs button{padding:10px 14px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-weight:800;cursor:pointer}.rh-operation-tabs button.active,.rh-operation-tabs button:focus-visible{border-bottom-color:var(--primary);color:var(--primary);outline:none}.rh-operation-panel,.rh-integrations-panel,.rh-import-history{margin-bottom:18px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.rh-import-history .metric-list{margin-top:10px}
.rh-inline-section{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
@media(max-width:900px){.people-rh-coverage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1100px){.people-rh-metrics,.people-rh-access-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.people-rh-hero{align-items:flex-start;padding:18px;gap:14px}.people-rh-hero-mark{width:48px;height:48px;flex-basis:48px;border-radius:14px;font-size:1.4rem}.people-rh-section-heading{align-items:flex-start;flex-direction:column;gap:5px}.people-rh-coverage-grid,.people-rh-metrics,.people-rh-access-grid{grid-template-columns:1fr}.people-rh-coverage-card{min-height:0}}
@media(max-width:760px){.rh-page-header{flex-direction:column;padding:18px}.rh-page-nav{justify-content:flex-start;max-width:none}.rh-page-nav button{flex:1 1 auto}.people-rh-coverage summary{align-items:flex-start;flex-direction:column}.people-rh-coverage summary:after{position:absolute;right:18px}.people-rh-coverage{position:relative}}
.profile-tabs{display:flex;gap:6px;overflow:auto;border-bottom:1px solid var(--line);padding-bottom:9px;margin-bottom:16px}.profile-tab{white-space:nowrap;border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:8px;padding:8px 11px;font-size:.72rem}.profile-tab.active,.profile-tab:hover{color:var(--primary);border-color:var(--primary);background:var(--accent-soft)}.profile-pane.hidden{display:none}.profile-pane .detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.profile-pane .detail-list>div,.profile-pane .quick-summary>div{border:1px solid var(--line);border-radius:9px;padding:11px;background:var(--panel)}.profile-pane small,.profile-pane b{display:block}.profile-pane small{color:var(--muted);font-size:.65rem}.profile-pane b{margin-top:4px}.profile-pane .metric-row{display:flex;justify-content:space-between;gap:12px}
.employee-profile-page{max-width:1500px;margin:auto}.employee-profile-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:22px;border:1px solid var(--line);border-radius:14px;background:var(--panel);margin-bottom:14px}.employee-profile-header h2{margin:4px 0}.employee-profile-header p{color:var(--muted);margin:0}.employee-profile-tabs{position:sticky;top:88px;z-index:20;background:var(--surface-bg);padding:8px 0}.employee-profile-tabs nav{display:flex;gap:6px;overflow-x:auto}.employee-profile-tabs select{display:none}.profile-section-tab{white-space:nowrap;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--muted)}.profile-section-tab.active,.profile-section-tab:hover{color:var(--primary);border-color:var(--primary)}.employee-profile-content{border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:20px}.employee-profile-pane.hidden{display:none}.profile-summary-grid,.profile-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.profile-card{border:1px solid var(--line);border-radius:10px;padding:14px;background:var(--panel-2)}.profile-card small,.profile-card b{display:block}.profile-card small{color:var(--muted);font-size:.7rem}.profile-card b{margin-top:5px}.profile-section-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.profile-record-list{display:grid;gap:8px;width:100%}.profile-record{display:flex;justify-content:space-between;gap:16px;padding:13px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2)}.profile-record small,.profile-record span{display:block;color:var(--muted);font-size:.75rem}.profile-inline-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px;border:1px solid var(--accent-border);border-radius:12px;background:var(--panel-2);margin-top:14px}.profile-inline-form h3{grid-column:1/-1;margin:0}.profile-inline-form label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:.75rem}.profile-inline-form input{padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text)}
@media(max-width:760px){.employee-profile-header{flex-direction:column;position:static}.employee-profile-tabs{top:0}.employee-profile-tabs nav{display:none}.employee-profile-tabs select{display:block;width:100%;padding:11px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--text)}.profile-summary-grid,.profile-detail-grid,.profile-inline-form{grid-template-columns:1fr}.profile-record{flex-direction:column}.employee-profile-content{padding:13px}}
.employee-list-filters .search{flex:1;min-width:min(520px,100%)}.employee-list-filters #employeeSearch{width:100%;min-height:44px;border-color:#4d7467;background:#13251f;color:#f4fff9;box-shadow:0 0 0 2px rgb(var(--accent-rgb) / .08)}.employee-list-filters #employeeSearch::placeholder{color:#b9cec5;opacity:1}.employee-list-filters #employeeSearch:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .2)}
.employee-list-page{max-width:1500px;margin:auto}.employee-list-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px;padding:22px 24px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(135deg,var(--panel),var(--accent-soft))}.employee-list-header h2{margin:5px 0 6px}.employee-list-header p{margin:0;color:var(--muted)}.employee-list-summary{grid-template-columns:repeat(3,minmax(0,1fr));max-width:680px}.employee-list-filters{align-items:center;gap:10px}.employee-list-filters select{min-height:44px;min-width:150px}.employee-profile-header p{line-height:1.5}.employee-context-line{margin:0 0 14px;padding:10px 13px;border-left:3px solid var(--primary);border-radius:8px;background:var(--accent-soft);color:var(--muted)}.employee-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:12px}.employee-section-heading h3{margin:4px 0 0}.employee-section-heading small{color:var(--muted)}.employee-quick-actions{margin:0 0 16px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.employee-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.employee-quick-action{display:flex;align-items:center;gap:10px;min-height:58px;padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:var(--panel-2);color:var(--text);text-align:left;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}.employee-quick-action span{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--accent-soft);color:var(--primary);font-weight:900}.employee-quick-action:hover,.employee-quick-action:focus-visible{border-color:var(--primary);background:var(--accent-soft);outline:none;transform:translateY(-1px);box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .14)}.employee-area-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:0 0 14px;padding:5px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.employee-area-tab{min-height:42px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-weight:800;cursor:pointer}.employee-area-tab.active,.employee-area-tab:hover,.employee-area-tab:focus-visible{background:var(--panel-3);color:var(--primary);outline:none}.employee-area-pane.hidden{display:none}.employee-area-pane>.employee-profile-pane{margin:0}.employee-area-pane>.employee-profile-pane:not(.hidden)+.employee-profile-pane{margin-top:18px}.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}
.employee-advance-panel{margin:0 0 18px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2)}.employee-advance-panel h3{margin:0 0 8px}.employee-advance-panel .profile-record-list{margin-top:12px}.employee-advance-record{align-items:flex-start}.employee-advance-record .actions{justify-content:flex-end;margin-top:7px}.employee-advance-record .actions .btn{font-size:.7rem;padding:7px 9px}
.financial-obligation-record{align-items:flex-start}.financial-obligation-record>span{display:grid;gap:8px;justify-items:end}.financial-obligation-technical{width:100%;text-align:right}.financial-obligation-technical summary{cursor:pointer;color:var(--muted);font-size:.75rem}.financial-obligation-technical pre{max-width:min(620px,100%);margin:0;overflow:auto;white-space:pre-wrap;text-align:left;font-size:.72rem;background:var(--panel-2);padding:10px;border-radius:8px}
@media(max-width:760px){.financial-obligation-record>span{justify-items:start}.financial-obligation-technical{text-align:left}}
@media(max-width:760px){.employee-list-header{flex-direction:column;padding:18px}.employee-list-header .actions{width:100%}.employee-list-header .actions .btn{flex:1}.employee-list-summary{max-width:none}.employee-quick-actions{padding:14px}.employee-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.employee-quick-action{min-height:64px;padding:11px;font-size:.78rem}.employee-section-heading{align-items:flex-start;flex-direction:column;gap:4px}.employee-area-nav{grid-template-columns:repeat(2,minmax(0,1fr));position:sticky;top:0;z-index:21}.employee-list-filters select{width:100%}}
.employee-area-subnav{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--line)}.employee-area-subtab{min-height:34px;padding:6px 11px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--muted);font-weight:700;cursor:pointer}.employee-area-subtab.active,.employee-area-subtab:hover,.employee-area-subtab:focus-visible{border-color:var(--primary);background:var(--accent-soft);color:var(--primary);outline:none}
/* Central de Despacho · histórico inteligente */
.dispatch-history-toolbar{display:grid;gap:12px;margin:12px 0}.dispatch-history-toolbar label{display:grid;gap:5px}.dispatch-history-presets{display:flex;gap:8px;flex-wrap:wrap}.dispatch-history-presets .active,.dispatch-history-graph-wrap .active{border-color:#2583ff;color:#9ac7ff}.dispatch-history-custom{display:flex;gap:10px;flex-wrap:wrap;align-items:end}.dispatch-history-summary{margin:10px 0}.dispatch-history-meta{display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:.82rem}.dispatch-history-meta b{color:var(--text)}.dispatch-history-map{height:min(58vh,520px);min-height:330px}.dispatch-history-events{display:grid;gap:6px;max-height:520px;overflow:auto}.dispatch-history-event{display:grid;gap:3px;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:var(--panel-2);color:var(--text);text-align:left;cursor:pointer}.dispatch-history-event span{color:var(--muted);font-size:.76rem}.dispatch-history-event.selected{border-color:#2583ff;box-shadow:0 0 0 2px rgb(37 131 255 / .18)}.dispatch-history-empty,.dispatch-history-loading{padding:16px;border:1px dashed var(--line);border-radius:10px;color:var(--muted)}.dispatch-history-graph-wrap{margin-top:12px}.dispatch-history-graph-wrap>button{margin-bottom:8px}.dispatch-speed-chart{width:100%;min-height:130px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2)}.dispatch-speed-chart text{fill:var(--muted);font-size:11px}.dispatch-speed-chart .axis{stroke:var(--line);stroke-width:1}.dispatch-speed-chart .speed-line{fill:none;stroke:#2583ff;stroke-width:3;stroke-linejoin:round;stroke-linecap:round}.dispatch-history-start,.dispatch-history-end{border:0!important;border-radius:5px;padding:3px 5px!important;background:#167bff!important;color:#fff!important;font-size:10px!important;font-weight:800!important;text-align:center}.dispatch-history-end{background:#7c3aed!important}@media(max-width:720px){.dispatch-history-custom{display:grid;grid-template-columns:1fr}.dispatch-history-custom .btn{width:100%}.dispatch-history-map{min-height:290px;height:48vh}.dispatch-history-presets{display:grid;grid-template-columns:repeat(2,1fr)}.dispatch-history-presets .btn{width:100%}}
.dispatch-history-modal-toolbar{display:grid;gap:14px;margin-bottom:16px;padding:2px}.dispatch-history-modal-toolbar label{display:grid;gap:6px}.dispatch-history-modal-toolbar select{min-height:44px;font-weight:800}.dispatch-history-modal-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.7fr);gap:16px;align-items:start}.dispatch-history-modal-layout>aside{min-width:0;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.dispatch-history-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 14px}.dispatch-history-meta>*{padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:var(--panel-2)}.dispatch-history-meta b{grid-column:1/-1}.dispatch-history-end{display:flex!important;align-items:center;gap:5px;white-space:nowrap;filter:drop-shadow(0 2px 3px rgba(0,0,0,.45));background:transparent!important;color:#fff!important;font-size:11px!important}.dispatch-history-truck{display:grid;place-items:center;width:30px;height:30px;border:2px solid #fff;border-radius:50%;background:#7c3aed;font-size:17px;line-height:1}.dispatch-history-end-label{padding:4px 6px;border-radius:6px;background:#7c3aed;font-weight:900;letter-spacing:.06em}.dispatch-history-start{z-index:500}.dispatch-history-end{z-index:510}@media(max-width:800px){.dispatch-history-modal-layout{grid-template-columns:1fr}.dispatch-history-modal-layout>aside{order:2}.dispatch-history-meta{grid-template-columns:1fr}.dispatch-history-meta b{grid-column:auto}}
/* RC05: camadas do Histórico Inteligente */
.dispatch-history-supplier{background:transparent!important;border:0!important}
.dispatch-history-stop-event{border-left:4px solid #f59e0b;background:linear-gradient(90deg,rgb(245 158 11 / .14),var(--panel-2))}.dispatch-history-stop-event b{color:#fbbf24}.dispatch-history-stop-event small{color:var(--muted);font-size:.72rem}.dispatch-history-gps-event{border-left:4px solid #38bdf8}.dispatch-history-temporary-marker{border:3px solid #fff;border-radius:50%;background:#ef4444;box-shadow:0 0 0 4px rgb(239 68 68 / .3)}
.dispatch-history-stop-context{display:grid;gap:2px;margin-top:4px;padding:6px 7px;border-radius:7px;background:rgb(245 158 11 / .08);font-size:.7rem}.dispatch-history-stop-context span{font-size:.66rem}.dispatch-history-stop-context.neutral{background:rgb(148 163 184 / .08)}.dispatch-history-neutral-card .dispatch-supplier-card-head{background:#475569}.dispatch-history-neutral-card .dispatch-supplier-card-heading small{color:#e2e8f0}
.dispatch-history-route-legend{display:flex;flex-wrap:wrap;gap:8px 12px;padding:6px 2px;color:var(--muted);font-size:.64rem}.dispatch-history-route-legend span{display:inline-flex;align-items:center;gap:4px}.dispatch-history-route-legend i{display:inline-block;width:9px;height:9px;border-radius:50%;background:#28bd6c}.dispatch-history-route-legend .route-legend-line{width:16px;height:3px;border-radius:2px;background:#2583ff}.dispatch-history-route-legend .route-legend-gap{background:#94a3b8}

/* Historical supplier cards are the Central card, permanently anchored to
   the registered blue supplier marker. */
.dispatch-history-supplier-card{z-index:1200!important}.dispatch-history-supplier-card .leaflet-tooltip-content{display:block!important;margin:0!important;padding:0!important}

/* V5.21.173: o histórico ocupa a janela inteira; somente os eventos podem rolar. */
.dispatch-history-window{padding:10px;place-items:center}
.dispatch-history-window .modal-box{width:min(1280px,calc(100vw - 32px));height:min(760px,calc(100dvh - 32px));max-height:none;overflow:hidden;display:flex;flex-direction:column}
.dispatch-history-window .modal-head{flex:0 0 auto;padding:10px 16px;min-height:50px}
.dispatch-history-window .modal-head h2{font-size:.98rem}
.dispatch-history-window-actions{display:flex;align-items:center;gap:6px;margin-left:auto}
.dispatch-history-window-actions .icon-btn{display:inline-flex;align-items:center;gap:5px;width:auto;height:34px;padding:0 9px;border:1px solid var(--line);border-radius:8px;color:var(--text);font-size:.72rem;font-weight:900;background:var(--panel-2)}
.dispatch-history-window-actions .icon-btn:hover,.dispatch-history-window-actions .icon-btn:focus-visible{border-color:var(--primary);color:var(--primary);outline:2px solid rgb(var(--accent-rgb) / .18);outline-offset:1px}
.dispatch-history-window-actions .dispatch-history-close{font-size:1rem;color:var(--muted)}
.dispatch-history-window-actions .dispatch-history-close span{font-size:.68rem;color:var(--text)}
.dispatch-history-window .modal-body{min-height:0;flex:1;overflow:hidden;padding:12px 16px 14px;display:flex;flex-direction:column}
.dispatch-history-modal{min-height:0;flex:1;display:flex;flex-direction:column;gap:8px}
.dispatch-history-modal-toolbar{display:grid;gap:8px;margin:0;padding:0}
.dispatch-history-modal-toolbar label{gap:4px;font-size:.72rem;color:var(--muted)}
.dispatch-history-modal-toolbar select{min-height:40px;padding:7px 40px 7px 11px!important}
.dispatch-history-modal .dispatch-history-presets{gap:6px}
.dispatch-history-modal .dispatch-history-presets .btn{min-height:32px;padding:6px 10px;font-size:.7rem}
.dispatch-history-modal .dispatch-history-custom{gap:8px}
.dispatch-history-modal .dispatch-history-custom input{min-height:34px;padding:6px 8px}
.dispatch-history-modal .dispatch-history-summary{margin:0}
.dispatch-history-modal-layout{min-height:0;flex:1;grid-template-columns:minmax(0,1.7fr) minmax(270px,.72fr);gap:10px;align-items:stretch}
.dispatch-history-modal-layout>div{min-width:0;min-height:0;display:flex;flex-direction:column}
.dispatch-history-modal-layout>aside{min-height:0;padding:10px;display:flex;flex-direction:column;overflow:hidden}
.dispatch-history-modal-layout>aside .card-title{flex:0 0 auto;margin-bottom:7px}
.dispatch-history-modal-layout>aside .card-title{align-items:center}.dispatch-history-panel-toggle{min-height:30px;padding:5px 8px;font-size:.62rem;white-space:nowrap}.dispatch-history-panel-collapsed .dispatch-history-modal-layout{grid-template-columns:minmax(0,1fr) 0}.dispatch-history-panel-collapsed .dispatch-history-modal-layout>aside{display:none}.dispatch-history-panel-collapsed .dispatch-history-map{min-width:0}
.dispatch-history-panel-reopen{display:none;position:absolute;right:10px;top:10px;z-index:500;min-height:32px;padding:6px 9px;font-size:.65rem}.dispatch-history-panel-collapsed .dispatch-history-panel-reopen{display:inline-flex}.dispatch-history-modal-layout>div:first-child{position:relative}
.dispatch-history-modal-layout>aside .card-title h3{font-size:.86rem}
.dispatch-history-map{height:auto;min-height:0;flex:1;border-radius:10px}
.dispatch-history-events{min-height:0;max-height:none;flex:1;overflow-y:auto;padding-right:2px}
.dispatch-history-graph-wrap{flex:0 0 auto;margin-top:7px}
.dispatch-history-graph-wrap>button{margin:0;min-height:32px;padding:6px 10px;font-size:.7rem}
.dispatch-history-window.dispatch-history-expanded{padding:10px}
.dispatch-history-window.dispatch-history-expanded .modal-box{width:calc(100vw - 20px);height:calc(100dvh - 20px)}
.dispatch-history-window.dispatch-history-expanded .modal-body{padding:10px 14px 12px}
.dispatch-history-window.dispatch-history-expanded .dispatch-history-modal-layout{grid-template-columns:minmax(0,1.9fr) minmax(300px,.65fr)}
.dispatch-history-vehicle-picker::after{color:#f5c542;font-size:1.15rem;bottom:11px}
.dispatch-history-vehicle-select{background:var(--panel-2)!important;color:#f5c542!important;border:1px solid var(--line)!important;box-shadow:none!important;font-weight:800}
.dispatch-history-vehicle-select:hover,.dispatch-history-vehicle-select:focus-visible{background:var(--panel-2)!important;color:#ffe27a!important;border-color:#f5c542!important;outline:2px solid rgb(245 197 66 / .25);outline-offset:1px}
.dispatch-history-vehicle-select option{background:var(--panel-2);color:var(--text);font-weight:700}
.dispatch-history-vehicle-select option:checked{color:#f5c542;background:var(--panel-3)}
@media(max-width:800px){
  .dispatch-history-window{padding:0;place-items:end stretch}
  .dispatch-history-window .modal-box,.dispatch-history-window.dispatch-history-expanded .modal-box{width:100%;height:calc(100dvh - 8px);border-radius:14px 14px 0 0}
  .dispatch-history-window .modal-head{padding:8px 10px}
  .dispatch-history-window-actions .icon-btn{padding:0 7px}
  .dispatch-history-window-actions .icon-btn span{font-size:.58rem}
  .dispatch-history-window .modal-body{padding:9px 10px 10px}
  .dispatch-history-modal-layout,.dispatch-history-window.dispatch-history-expanded .dispatch-history-modal-layout{grid-template-columns:1fr;grid-template-rows:minmax(250px,1fr) minmax(150px,.72fr)}
  .dispatch-history-modal-layout>aside{order:2}
  .dispatch-history-panel-collapsed .dispatch-history-modal-layout{grid-template-rows:minmax(250px,1fr)}
}
@media(max-width:480px){.dispatch-history-window-actions .icon-btn{gap:0}.dispatch-history-window-actions .icon-btn span{display:none}.dispatch-history-modal-layout{grid-template-rows:minmax(220px,1fr) minmax(145px,.8fr)}}

/* V5.21.221: layout visual obrigatório do Histórico Inteligente.
   O mapa recebe uma altura real da linha flex/grid; o gráfico nunca participa
   da altura principal quando fechado e o painel consome somente a coluna de
   eventos. Estes overrides ficam após as regras legadas para impedir que a
   cascata da Central achate o Leaflet. */
.dispatch-history-window .modal-box {
  width: min(1280px, calc(100vw - 32px));
  height: min(760px, calc(100dvh - 32px));
}
.dispatch-history-window.dispatch-history-expanded .modal-box {
  width: calc(100vw - 20px);
  height: calc(100dvh - 20px);
}
.dispatch-history-window .modal-body { min-height: 0; }
.dispatch-history-modal { min-height: 0; height: 100%; }
.dispatch-history-modal-layout,
.dispatch-history-window.dispatch-history-expanded .dispatch-history-modal-layout {
  min-height: 0;
  height: 100%;
  grid-template-columns: minmax(0, 3fr) minmax(270px, 1fr);
  grid-template-rows: minmax(0, 1fr);
  align-items: stretch;
}
.dispatch-history-modal-layout > div:first-child {
  min-width: 0;
  min-height: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.dispatch-history-map {
  flex: 1 1 auto;
  height: 0;
  min-height: 260px;
  width: 100%;
}
.dispatch-history-route-legend { flex: 0 0 auto; }
.dispatch-history-graph-wrap { flex: 0 0 auto; }
.dispatch-history-graph-wrap #dispatchHistoryGraph[hidden] { display: none; }
.dispatch-history-graph-wrap #dispatchHistoryGraph:not([hidden]) { max-height: 156px; }
.dispatch-history-graph-wrap .dispatch-speed-chart { display: block; height: 150px; min-height: 0; }
.dispatch-history-modal-layout > aside { min-width: 0; min-height: 0; }
.dispatch-history-panel-collapsed .dispatch-history-modal-layout { grid-template-columns: minmax(0, 1fr); }
.dispatch-history-panel-collapsed .dispatch-history-modal-layout > aside { display: none; }
@media(max-width:800px) {
  .dispatch-history-window .modal-box,
  .dispatch-history-window.dispatch-history-expanded .modal-box {
    width: 100%;
    height: calc(100dvh - 8px);
  }
  .dispatch-history-modal-layout,
  .dispatch-history-window.dispatch-history-expanded .dispatch-history-modal-layout {
    height: 100%;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(260px, 1fr) minmax(150px, .72fr);
  }
  .dispatch-history-panel-collapsed .dispatch-history-modal-layout {
    grid-template-rows: minmax(260px, 1fr);
  }
  .dispatch-history-map { min-height: 220px; }
}
@media(max-width:480px) {
  .dispatch-history-modal-layout { grid-template-rows: minmax(230px, 1fr) minmax(145px, .8fr); }
  .dispatch-history-panel-collapsed .dispatch-history-modal-layout { grid-template-rows: minmax(230px, 1fr); }
}

/* V5.21.224: composição profissional compacta do Histórico Inteligente.
   A hierarquia é: cabeçalho do modal, uma faixa de seleção/filtros, indicadores
   objetivos, mapa dominante, playback e eventos. O gráfico permanece secundário. */
.dispatch-history-window .modal-head {
  min-height: 44px;
  padding: 7px 12px;
}
.dispatch-history-window .modal-head h2 {
  font-size: .92rem;
  letter-spacing: -.01em;
}
.dispatch-history-window .modal-body {
  padding: 8px 12px 10px;
}
.dispatch-history-modal {
  gap: 6px;
}
.dispatch-history-modal-toolbar {
  display: grid;
  grid-template-columns: minmax(190px, .8fr) minmax(0, 1.7fr);
  align-items: end;
  gap: 7px 10px;
}
.dispatch-history-modal-toolbar > label {
  min-width: 0;
}
.dispatch-history-modal-toolbar > label > span {
  color: var(--muted);
  font-size: .58rem;
  font-weight: 900;
  letter-spacing: .08em;
}
.dispatch-history-modal .dispatch-history-vehicle-select {
  min-height: 34px;
  height: 34px;
  padding: 5px 34px 5px 9px !important;
  font-size: .73rem;
}
.dispatch-history-modal .dispatch-history-presets {
  display: flex;
  align-items: end;
  flex-wrap: nowrap;
  gap: 5px;
  min-width: 0;
}
.dispatch-history-modal .dispatch-history-presets .btn {
  min-height: 34px;
  padding: 5px 8px;
  white-space: nowrap;
  font-size: .64rem;
}
.dispatch-history-modal .dispatch-history-presets .btn[data-history-hours="12"] {
  color: var(--primary);
}
.dispatch-history-modal .dispatch-history-custom {
  grid-column: 1 / -1;
  padding: 6px 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-2);
}
.dispatch-history-summary {
  margin: 0;
}
.dispatch-history-meta {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) repeat(3, minmax(72px, .55fr));
  gap: 5px;
  margin: 0;
}
.dispatch-history-meta > span {
  min-width: 0;
  display: grid;
  gap: 2px;
  padding: 5px 8px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--panel-2);
}
.dispatch-history-meta small {
  color: var(--muted);
  font-size: .52rem;
  font-weight: 900;
  letter-spacing: .06em;
}
.dispatch-history-meta b {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: .68rem;
}
.dispatch-history-meta .dispatch-history-driver-meta b {
  color: var(--muted);
}
.dispatch-history-modal-layout,
.dispatch-history-window.dispatch-history-expanded .dispatch-history-modal-layout {
  grid-template-columns: minmax(0, 3fr) minmax(240px, 1fr);
  gap: 8px;
}
.dispatch-history-window.dispatch-history-expanded .dispatch-history-modal-layout {
  grid-template-columns: minmax(0, 3fr) minmax(280px, 1fr);
}
.dispatch-history-modal-layout > div:first-child {
  gap: 5px;
}
.dispatch-history-map {
  min-height: 0;
  border-radius: 9px;
}
.dispatch-history-modal-layout > aside {
  padding: 8px;
  border-radius: 9px;
}
.dispatch-history-modal-layout > aside .card-title {
  margin-bottom: 5px;
}
.dispatch-history-modal-layout > aside .card-title h3 {
  font-size: .76rem;
}
.dispatch-history-panel-toggle {
  min-height: 27px;
  padding: 4px 6px;
  font-size: .57rem;
}
.dispatch-history-events {
  gap: 5px;
}
.dispatch-history-event {
  gap: 3px;
  padding: 7px 8px;
  border-radius: 7px;
  border-left-width: 3px;
}
.dispatch-history-event-summary {
  display: grid;
  gap: 2px;
}
.dispatch-history-event-summary b {
  font-size: .65rem;
  line-height: 1.15;
}
.dispatch-history-event-summary > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: .63rem;
}
.dispatch-history-event-details {
  display: none;
  gap: 3px;
  padding-top: 4px;
  border-top: 1px solid rgb(var(--accent-rgb) / .16);
  color: var(--muted);
  font-size: .61rem;
}
.dispatch-history-event.selected .dispatch-history-event-details {
  display: grid;
}
.dispatch-history-event.selected .dispatch-history-event-summary > span {
  white-space: normal;
}
.dispatch-history-stop-context {
  display: grid;
  gap: 2px;
  margin-top: 1px;
  padding: 4px 5px;
  border-radius: 5px;
  background: rgb(245 158 11 / .08);
}
.dispatch-history-stop-context strong {
  color: var(--text);
  font-size: .62rem;
}
.dispatch-history-stop-context span {
  font-size: .59rem;
}
.dispatch-history-timeline {
  flex: 0 0 auto;
  min-height: 39px;
  height: auto;
  display: grid;
  gap: 3px;
  padding: 4px 6px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-2);
}
.dispatch-history-playback-main {
  min-width: 0;
  display: grid;
  grid-template-columns: auto auto auto minmax(70px, 1fr) auto auto;
  align-items: center;
  gap: 5px;
}
.dispatch-history-timeline-label {
  font-size: .56rem;
}
.dispatch-history-timeline-time {
  font-size: .56rem;
}
.dispatch-history-timeline-track {
  height: 13px;
}
.dispatch-history-timeline-track > b {
  inset: 5px 0;
}
.dispatch-history-playback-toggle,
.dispatch-history-speed-toggle {
  min-height: 24px;
  padding: 3px 6px;
  border: 1px solid var(--line);
  border-radius: 5px;
  background: var(--panel);
  color: var(--primary);
  font-size: .58rem;
  font-weight: 900;
  white-space: nowrap;
  cursor: pointer;
}
.dispatch-history-speed-toggle {
  display: inline-flex;
  align-items: center;
  gap: 3px;
}
.dispatch-history-speed-toggle.active {
  border-color: var(--primary);
  background: var(--accent-soft);
}
.dispatch-history-playback-range {
  width: 100%;
  height: 10px;
}
.dispatch-history-route-legend {
  min-height: 16px;
  padding: 1px 2px;
  gap: 5px 10px;
  font-size: .57rem;
}
.dispatch-history-graph-wrap {
  flex: 0 0 auto;
  margin: 0;
}
.dispatch-history-graph-wrap #dispatchHistoryGraph:not([hidden]) {
  max-height: 132px;
}
.dispatch-history-graph-wrap .dispatch-speed-chart {
  height: 126px;
}
@media(max-width: 900px) {
  .dispatch-history-modal-toolbar {
    grid-template-columns: minmax(170px, .8fr) minmax(0, 1.4fr);
  }
  .dispatch-history-meta {
    grid-template-columns: minmax(0, 1.5fr) repeat(3, minmax(62px, .55fr));
  }
}
@media(max-width: 800px) {
  .dispatch-history-modal-toolbar {
    grid-template-columns: 1fr;
  }
  .dispatch-history-modal .dispatch-history-presets {
    overflow-x: auto;
    padding-bottom: 1px;
  }
  .dispatch-history-modal .dispatch-history-custom {
    grid-column: auto;
  }
  .dispatch-history-meta {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .dispatch-history-meta > span:first-child {
    grid-column: 1 / -1;
  }
  .dispatch-history-meta .dispatch-history-driver-meta {
    grid-column: 1 / -1;
  }
}
@media(max-width: 520px) {
  .dispatch-history-playback-main {
    grid-template-columns: auto auto minmax(48px, 1fr) auto;
    grid-template-rows: 24px 13px;
  }
  .dispatch-history-playback-main .dispatch-history-timeline-label { grid-column: 1; }
  .dispatch-history-playback-main .dispatch-history-playback-toggle { grid-column: 2; }
  .dispatch-history-playback-main .dispatch-history-timeline-time { grid-column: 3; }
  .dispatch-history-playback-main .dispatch-history-speed-toggle { grid-column: 4; }
  .dispatch-history-playback-main .dispatch-history-timeline-track { grid-column: 1 / -1; grid-row: 2; }
  .dispatch-history-playback-range { grid-row: 2; margin-top: 14px; }
  .dispatch-history-meta { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dispatch-history-meta > span:first-child,
  .dispatch-history-meta .dispatch-history-driver-meta { grid-column: 1 / -1; }
  .dispatch-history-speed-toggle span { display: none; }
}
/* V5.21.222: viewport real, timeline compacta e recomposição observável. */
html:has(body.dispatch-history-open),body.dispatch-history-open { overflow:hidden!important; overscroll-behavior:none; }
.dispatch-history-window { box-sizing:border-box; padding: max(6px, env(safe-area-inset-top)) max(6px, env(safe-area-inset-right)) max(6px, env(safe-area-inset-bottom)) max(6px, env(safe-area-inset-left)); }
.dispatch-history-window.dispatch-history-expanded { place-items:stretch; }
.dispatch-history-window.dispatch-history-expanded .modal-box { box-sizing:border-box; width:100%; height:100%; max-width:none; max-height:none!important; }
.dispatch-history-window.dispatch-history-expanded .modal-body { padding:8px 10px max(8px, env(safe-area-inset-bottom)); }
.dispatch-history-timeline { flex:0 0 28px; min-width:0; display:grid; grid-template-columns:auto auto auto minmax(80px,1fr) auto minmax(72px,.7fr); align-items:center; gap:7px; color:var(--muted); font-size:.58rem; line-height:1; white-space:nowrap; }
.dispatch-history-timeline-label { color:var(--primary); font-weight:900; letter-spacing:.07em; }
.dispatch-history-timeline-time { font-variant-numeric:tabular-nums; }
.dispatch-history-timeline-track { position:relative; height:16px; min-width:0; border-radius:999px; background:rgb(var(--accent-rgb) / .12); }
.dispatch-history-timeline-track>b { position:absolute; inset:6px 0; border-radius:999px; background:#2583ff; opacity:.9; }
.dispatch-history-timeline-stop { position:absolute; top:1px; width:14px; height:14px; padding:0; transform:translateX(-50%); border:2px solid var(--panel); border-radius:50%; background:#f59e0b; cursor:pointer; z-index:1; }
.dispatch-history-timeline-stop:nth-of-type(1) { left:8%; }.dispatch-history-timeline-stop:nth-of-type(2) { left:22%; }.dispatch-history-timeline-stop:nth-of-type(3) { left:47%; }.dispatch-history-timeline-stop:nth-of-type(4) { left:72%; }.dispatch-history-timeline-stop:nth-of-type(5) { left:92%; }
.dispatch-history-timeline-stop i,.dispatch-history-timeline-stop span { position:absolute; }.dispatch-history-timeline-stop i { inset:0; }.dispatch-history-timeline-stop span { display:none; }
.dispatch-history-timeline-stop:focus-visible { outline:2px solid var(--primary); outline-offset:2px; }
.dispatch-history-playback-toggle { min-height:20px; padding:3px 6px; border:1px solid var(--line); border-radius:6px; background:var(--panel-2); color:var(--primary); font-size:.56rem; font-weight:900; cursor:pointer; }
.dispatch-history-playback-toggle:disabled { opacity:.45; cursor:not-allowed; }
.dispatch-history-playback-range { width:100%; min-width:60px; height:12px; accent-color:var(--primary); }
.dispatch-history-playback-marker { display:grid; place-items:center; border:2px solid #fff; border-radius:50%; background:#2583ff; box-shadow:0 3px 9px #0009; color:#fff; font-size:.68rem; }
.dispatch-history-modal-layout>div:first-child { overflow:hidden; }
.dispatch-history-modal-layout>aside,.dispatch-history-events { overscroll-behavior:contain; }
.dispatch-history-window .dispatch-history-panel-collapsed .dispatch-history-modal-layout { grid-template-columns:minmax(0,1fr); }
.dispatch-history-window .dispatch-history-panel-collapsed .dispatch-history-modal-layout>aside { display:none; }
@media(max-width:800px) {
  .dispatch-history-window { padding:0 0 max(0px, env(safe-area-inset-bottom)) 0; }
  .dispatch-history-window.dispatch-history-expanded .modal-box { height:100%; }
  .dispatch-history-window .modal-head { padding-top:max(8px, env(safe-area-inset-top)); }
  .dispatch-history-timeline { flex-basis:42px; grid-template-columns:auto auto minmax(50px,1fr) auto; grid-template-rows:16px 12px; gap:3px 4px; font-size:.5rem; }
  .dispatch-history-playback-toggle { grid-column:2; grid-row:1; }
  .dispatch-history-timeline-track { grid-column:1 / 5; grid-row:2; }
  .dispatch-history-timeline-time:first-of-type { grid-column:3; grid-row:1; }
  .dispatch-history-timeline-time:last-of-type { grid-column:4; grid-row:1; }
  .dispatch-history-playback-range { grid-column:1 / 5; grid-row:3; }
  .dispatch-history-timeline-label { max-width:52px; overflow:hidden; text-overflow:ellipsis; }
}
.ficha-import-list { display: grid; gap: 18px; max-height: 70vh; overflow: auto; padding: 2px; }
.ficha-import-card { border: 1px solid var(--line, #d9dee5); border-radius: 12px; padding: 14px; background: var(--surface, #fff); }
.ficha-import-card > header { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.ficha-import-card header small, .ficha-import-fields label > span small { display: block; color: var(--muted, #68717c); font-size: .75rem; }
.ficha-import-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 14px; }
.ficha-import-fields label { display: grid; gap: 4px; }
.ficha-import-summary{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}.ficha-import-summary div{background:var(--panel-2);box-shadow:none}.ficha-import-card{background:var(--panel);color:var(--text);box-shadow:0 8px 24px var(--surface-shadow)}.ficha-import-card input,.ficha-import-card select{width:100%;min-height:40px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:9px;padding:9px 10px}.ficha-import-card input[type=checkbox]{width:auto;min-height:auto;accent-color:var(--accent)}.ficha-replace-wrap { display:flex;align-items:center;gap:6px;color:var(--warning);font-size:.75rem; }.ficha-import-list{max-height:none;overflow:visible}.modal.large .modal-box{max-height:min(92vh,980px)}.modal.large .modal-body{max-height:calc(min(92vh,980px) - 70px);overflow:auto}.ficha-import-card>header label{min-width:190px}.ficha-import-card>header select{margin-top:5px}
@media (max-width: 700px) { .ficha-import-fields { grid-template-columns: 1fr; } .ficha-import-card > header { align-items: stretch; flex-direction: column; } }
.ficha-select-wrap,.ficha-replace-wrap{display:flex;align-items:center;gap:6px;font-size:.75rem}.ficha-replace-wrap{color:var(--warning)}.ficha-field-difference{border-left:3px solid var(--accent);padding-left:8px}.ficha-import-details{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}.ficha-import-details summary{cursor:pointer;color:var(--accent);font-weight:700}.ficha-import-actions{position:sticky;bottom:0;z-index:2;background:var(--panel);border-top:1px solid var(--line);padding:12px 0;margin-top:14px}
@media(max-width:700px){.ficha-import-actions{margin-inline:-14px;padding-inline:14px}}
@media (max-width:700px){.ficha-import-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.ficha-import-card{padding:12px}.ficha-import-card>header label{min-width:0}.modal.large .modal-body{max-height:calc(93dvh - 66px);padding:14px}.ficha-import-list{display:grid;gap:12px}}
/* Nova pesagem: controles compactos e carregamento progressivo de fornecedores. */
.weigh-supplier-controls{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:stretch}.weigh-supplier-controls .field{min-width:0}.weigh-supplier-load-more{justify-self:center;margin-top:6px}
.weigh-supplier-ranking{display:grid;gap:9px;margin:0 0 16px;padding:13px;border:1px solid rgb(var(--accent-rgb) / .28);border-radius:13px;background:linear-gradient(145deg,#10251e,#0b1814)}
.weigh-supplier-ranking-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.weigh-supplier-ranking-heading small{color:var(--muted);font-size:.72rem}.weigh-supplier-ranking-track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;min-width:0}.weigh-supplier-ranking-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:10px;background:#122c23;color:var(--text);text-align:left;cursor:pointer}.weigh-supplier-ranking-card:hover,.weigh-supplier-ranking-card:focus-visible{border-color:var(--primary);background:#173a2d;outline:2px solid rgb(var(--accent-rgb) / .35);outline-offset:1px}.weigh-supplier-ranking-position{display:grid;place-items:center;width:23px;height:23px;border-radius:7px;background:rgb(var(--accent-rgb) / .16);color:var(--primary);font-size:.72rem;font-weight:900}.weigh-supplier-ranking-copy{display:grid;min-width:0;gap:3px}.weigh-supplier-ranking-copy b,.weigh-supplier-ranking-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weigh-supplier-ranking-copy b{font-size:.8rem}.weigh-supplier-ranking-copy small{color:var(--muted);font-size:.64rem}.weigh-supplier-ranking-card strong{grid-column:2;color:var(--primary);font-size:.72rem}
@media(max-width:620px){.weigh-supplier-controls{grid-template-columns:1fr}.weigh-supplier-controls .btn{width:100%}}
@media(max-width:620px){.weigh-supplier-ranking{margin-left:-2px;margin-right:-2px}.weigh-supplier-ranking-heading{align-items:flex-start;flex-direction:column;gap:3px}.weigh-supplier-ranking-track{display:flex;overflow-x:auto;padding-bottom:3px;scroll-snap-type:x proximity;overscroll-behavior-x:contain}.weigh-supplier-ranking-card{flex:0 0 178px;scroll-snap-align:start}}

/* V5.21.224 final cascade: keep the compact route-history composition after
   the legacy responsive rules above. */
.dispatch-history-window .modal-head{min-height:44px;padding:7px 12px}
.dispatch-history-window .modal-head h2{font-size:.92rem}
.dispatch-history-window .modal-body{padding:8px 12px 10px;max-height:none!important;overflow:hidden!important}
.dispatch-history-modal{gap:6px}
.dispatch-history-modal-toolbar{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(0,1.7fr);align-items:end;gap:7px 10px;margin:0;padding:0}
.dispatch-history-modal-toolbar>label{min-width:0;gap:3px;font-size:.58rem}
.dispatch-history-modal-toolbar>label>span{color:var(--muted);font-size:.58rem;font-weight:900;letter-spacing:.08em}
.dispatch-history-modal .dispatch-history-vehicle-select{min-height:34px;height:34px;padding:5px 34px 5px 9px!important;font-size:.73rem}
.dispatch-history-modal .dispatch-history-presets{display:flex;align-items:end;flex-wrap:nowrap;gap:5px;min-width:0}
.dispatch-history-modal .dispatch-history-presets .btn{min-height:34px;padding:5px 8px;white-space:nowrap;font-size:.64rem}
.dispatch-history-modal .dispatch-history-custom{grid-column:1/-1;padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2)}
.dispatch-history-summary{margin:0}
.dispatch-history-meta{display:grid;grid-template-columns:minmax(0,1.7fr) repeat(3,minmax(72px,.55fr));gap:5px;margin:0}
.dispatch-history-meta>*{min-width:0;display:grid;gap:2px;padding:5px 8px;border:1px solid var(--line);border-radius:7px;background:var(--panel-2)}
.dispatch-history-meta small{color:var(--muted);font-size:.52rem;font-weight:900;letter-spacing:.06em}
.dispatch-history-meta b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem}
.dispatch-history-meta .dispatch-history-driver-meta b{color:var(--muted)}
.dispatch-history-modal-layout,.dispatch-history-window.dispatch-history-expanded .dispatch-history-modal-layout{grid-template-columns:minmax(0,3fr) minmax(240px,1fr);gap:8px}
.dispatch-history-window.dispatch-history-expanded .dispatch-history-modal-layout{grid-template-columns:minmax(0,3fr) minmax(280px,1fr)}
.dispatch-history-window .dispatch-history-panel-collapsed .dispatch-history-modal-layout{grid-template-columns:minmax(0,1fr)}
.dispatch-history-window .dispatch-history-panel-collapsed .dispatch-history-modal-layout>aside{display:none}
.dispatch-history-modal-layout>div:first-child{gap:5px}
.dispatch-history-map{min-height:0;border-radius:9px}
.dispatch-history-map{position:relative}
.dispatch-history-follow-control{position:absolute;top:10px;right:10px;z-index:700;padding:6px 9px;border:1px solid rgba(13,80,61,.25);border-radius:7px;background:var(--panel);color:var(--primary);box-shadow:0 2px 8px rgba(0,0,0,.18);font-size:.64rem;font-weight:850;cursor:pointer}
.dispatch-history-follow-control[aria-pressed="false"]{color:var(--muted);background:var(--panel-2)}
.dispatch-history-follow-control{top:auto!important;right:10px!important;bottom:10px!important;height:auto!important;width:auto!important}
.dispatch-history-playback-marker,.dispatch-history-end-truck{width:36px!important;height:36px!important}
.dispatch-history-truck-glyph{width:36px!important;height:36px!important}
.dispatch-history-truck-circle svg{width:21px;height:15px;fill:#fff;stroke:#0b3d8f;stroke-width:1.2}
.dispatch-history-panel-reopen{top:10px!important;right:10px!important;bottom:auto!important}

/* V5.21.233: tela inteira real, usando a mesma janela/instância Leaflet. */
.dispatch-history-window.dispatch-history-expanded{
  position:fixed!important;inset:0!important;z-index:1200!important;padding:0!important;place-items:stretch!important;
}
.dispatch-history-window.dispatch-history-expanded .modal-box{
  width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;border-radius:0!important;
}
.dispatch-history-window.dispatch-history-expanded .dispatch-history-modal-toolbar,
.dispatch-history-window.dispatch-history-expanded #dispatchHistorySummary,
.dispatch-history-window.dispatch-history-expanded .dispatch-history-route-legend,
.dispatch-history-window.dispatch-history-expanded .dispatch-history-graph-wrap{display:none!important}
.dispatch-history-window.dispatch-history-expanded .dispatch-history-modal-layout{grid-template-columns:minmax(0,1fr)!important;}
.dispatch-history-window.dispatch-history-expanded .dispatch-history-modal-layout>aside{display:none!important}
.dispatch-history-window.dispatch-history-expanded .dispatch-history-map{min-height:0!important;border-radius:0!important}
.dispatch-history-timeline-durations{display:inline-flex;gap:3px;align-items:center}
.dispatch-history-window.dispatch-history-expanded #dispatchHistoryTimeline{
  position:fixed;left:50%;bottom:max(12px,env(safe-area-inset-bottom));transform:translateX(-50%);
  width:min(680px,calc(100vw - 24px));z-index:1300;padding:8px 10px;border:1px solid var(--line);
  border-radius:10px;background:color-mix(in srgb,var(--panel) 94%,transparent);box-shadow:0 8px 28px #0008;backdrop-filter:blur(8px);
}
.dispatch-history-window.dispatch-history-expanded .dispatch-history-panel-reopen{display:inline-flex!important}
.dispatch-history-window.dispatch-history-expanded .dispatch-history-follow-control{bottom:72px!important}
@media(max-width:600px){
  .dispatch-history-window.dispatch-history-expanded .modal-head{min-height:40px;padding:5px 8px}
  .dispatch-history-window.dispatch-history-expanded .dispatch-history-window-actions .dispatch-history-close{display:none}
  .dispatch-history-window.dispatch-history-expanded #dispatchHistoryTimeline{width:calc(100vw - 12px);bottom:max(6px,env(safe-area-inset-bottom));padding:7px}
  .dispatch-history-window.dispatch-history-expanded .dispatch-history-follow-control{bottom:68px!important;right:8px!important}
}

/* Final V5.21.230 cascade: controls never share a hit area. */
.dispatch-history-follow-control{top:auto!important;right:10px!important;bottom:10px!important;z-index:700;min-height:32px!important;height:auto!important;width:auto!important}
.dispatch-history-playback-marker,.dispatch-history-end-truck{display:block!important;width:36px!important;height:36px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.dispatch-history-truck-glyph{display:grid;place-items:center;width:36px!important;height:36px!important;transform:rotate(var(--truck-bearing,0deg));transform-origin:50% 50%;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}
.dispatch-history-truck-circle{display:grid;place-items:center;width:28px;height:28px;border:2px solid #fff;border-radius:50%;background:#2583ff;box-shadow:0 2px 6px rgba(0,0,0,.42)}
.dispatch-history-truck-circle svg{width:21px;height:15px;overflow:visible;fill:#fff;stroke:#0b3d8f;stroke-width:1.2;stroke-linejoin:round}
.dispatch-history-panel-reopen{top:10px!important;right:10px!important;bottom:auto!important;z-index:700}

/* Final V5.21.230 cascade: keep playback control away from the event reopen
   control even after the responsive rules above. */
.dispatch-history-follow-control{top:auto!important;right:10px!important;bottom:10px!important;z-index:700;min-height:32px!important;height:auto!important;width:auto!important}
.dispatch-history-playback-marker,.dispatch-history-end-truck{display:block!important;width:36px!important;height:36px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.dispatch-history-truck-glyph{display:grid;place-items:center;width:36px!important;height:36px!important;transform:rotate(var(--truck-bearing,0deg));transform-origin:50% 50%;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}
.dispatch-history-truck-circle{display:grid;place-items:center;width:28px;height:28px;border:2px solid #fff;border-radius:50%;background:#2583ff;box-shadow:0 2px 6px rgba(0,0,0,.42)}
.dispatch-history-truck-circle svg{width:21px;height:15px;overflow:visible;fill:#fff;stroke:#0b3d8f;stroke-width:1.2;stroke-linejoin:round}
.dispatch-history-panel-reopen{top:10px!important;right:10px!important;bottom:auto!important;z-index:700}

/* V5.21.230: controles separados e marcador compatível com a linguagem da
   228. O botão de seguir fica no rodapé do mapa; o botão de reabrir eventos
   permanece no canto superior direito, sem sobreposição. */
.dispatch-history-follow-control{top:auto;right:10px;bottom:10px;z-index:700;min-height:32px}
.dispatch-history-playback-marker,.dispatch-history-end-truck{display:block!important;width:36px!important;height:36px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:inherit!important}
.dispatch-history-truck-glyph{display:grid;place-items:center;width:36px;height:36px;transform:rotate(var(--truck-bearing,0deg));transform-origin:50% 50%;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}
.dispatch-history-truck-circle{display:grid;place-items:center;width:28px;height:28px;border:2px solid #fff;border-radius:50%;background:#2583ff;box-shadow:0 2px 6px rgba(0,0,0,.42);font-size:16px;line-height:1}
.dispatch-history-panel-reopen{top:10px;right:10px;z-index:700}
.dispatch-history-playback-marker{background:transparent!important;border:0!important;box-shadow:none!important}
.dispatch-history-truck-glyph{display:grid;place-items:center;width:42px;height:32px;transform:rotate(var(--truck-bearing,0deg));transform-origin:50% 50%;filter:drop-shadow(0 1px 2px rgba(0,0,0,.55))}
.dispatch-history-truck-glyph svg{width:38px;height:26px;overflow:visible;fill:#0b503d;stroke:#fff;stroke-width:1.7;stroke-linejoin:round}
.dispatch-history-truck-glyph svg path:nth-child(2){fill:#172c26;stroke:#fff;stroke-width:1.2}
.dispatch-history-truck-glyph svg path:nth-child(3){fill:#b7ead3;stroke:#0b503d;stroke-width:1.2}
.dispatch-history-modal-layout>aside{padding:8px;border-radius:9px}
.dispatch-history-modal-layout>aside .card-title{margin-bottom:5px}
.dispatch-history-modal-layout>aside .card-title h3{font-size:.76rem}
.dispatch-history-panel-toggle{min-height:27px;padding:4px 6px;font-size:.57rem}
.dispatch-history-events{gap:5px}
.dispatch-history-event{gap:3px;padding:7px 8px;border-radius:7px;border-left-width:3px}
.dispatch-history-event-summary{display:grid;gap:2px}
.dispatch-history-event-summary b{font-size:.65rem;line-height:1.15}
.dispatch-history-event-summary>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.63rem}
.dispatch-history-event-details{display:none;gap:3px;padding-top:4px;border-top:1px solid rgb(var(--accent-rgb)/.16);color:var(--muted);font-size:.61rem}
.dispatch-history-event.selected .dispatch-history-event-details{display:grid}
.dispatch-history-event.selected .dispatch-history-event-summary>span{white-space:normal}
.dispatch-history-stop-context{display:grid;gap:2px;margin-top:1px;padding:4px 5px;border-radius:5px;background:rgb(245 158 11/.08)}
.dispatch-history-stop-context strong{color:var(--text);font-size:.62rem}.dispatch-history-stop-context span{font-size:.59rem}
.dispatch-history-timeline{display:grid;flex:0 0 auto;min-height:39px;height:auto;padding:4px 6px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2);gap:3px;color:var(--muted);font-size:.58rem;line-height:1;white-space:nowrap}
.dispatch-history-playback-main{min-width:0;display:grid;grid-template-columns:auto auto auto minmax(70px,1fr) auto auto;align-items:center;gap:5px}
.dispatch-history-timeline-label{font-size:.56rem}.dispatch-history-timeline-time{font-size:.56rem}.dispatch-history-timeline-track{height:13px}.dispatch-history-timeline-track>b{inset:5px 0}
.dispatch-history-playback-toggle,.dispatch-history-speed-toggle{min-height:24px;padding:3px 6px;border:1px solid var(--line);border-radius:5px;background:var(--panel);color:var(--primary);font-size:.58rem;font-weight:900;white-space:nowrap;cursor:pointer}
.dispatch-history-speed-toggle{display:inline-flex;align-items:center;gap:3px}.dispatch-history-speed-toggle.active{border-color:var(--primary);background:var(--accent-soft)}
.dispatch-history-playback-range{width:100%;height:10px}.dispatch-history-route-legend{min-height:16px;padding:1px 2px;gap:5px 10px;font-size:.57rem}
.dispatch-history-graph-wrap{flex:0 0 auto;margin:0}.dispatch-history-graph-wrap #dispatchHistoryGraph:not([hidden]){max-height:132px}.dispatch-history-graph-wrap .dispatch-speed-chart{height:126px}
.dispatch-history-events .dispatch-history-event{height:58px;min-height:58px;overflow:hidden}
.dispatch-history-events .dispatch-history-event.selected .dispatch-history-event-details{display:none}
.dispatch-history-trip-card{display:grid;gap:6px;padding:9px;border:1px solid var(--line);border-radius:9px;background:var(--panel-2);align-self:start}.dispatch-history-trip-card.selected{border-color:#2583ff;box-shadow:0 0 0 2px rgb(37 131 255/.18)}.dispatch-history-trip-card.playing{border-color:#f5c542}.dispatch-history-trip-head,.dispatch-history-trip-route,.dispatch-history-trip-meta{display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap}.dispatch-history-trip-head b{color:var(--primary);font-size:.68rem}.dispatch-history-trip-head span,.dispatch-history-trip-route,.dispatch-history-trip-meta{font-size:.63rem;color:var(--muted)}.dispatch-history-trip-route{justify-content:flex-start;color:var(--text)}.dispatch-history-trip-route strong{color:var(--primary)}.dispatch-history-trip-meta em{color:#f5c542;font-style:normal;font-weight:800}.dispatch-history-trip-controls{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.dispatch-history-trip-controls .btn{min-height:24px;padding:3px 6px;font-size:.57rem}.dispatch-history-trip-controls label{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:.58rem}.dispatch-history-trip-controls select{min-height:24px;padding:2px 18px 2px 5px;font-size:.58rem}.dispatch-speed-chart-wrap{display:grid;gap:3px}.dispatch-speed-summary{display:flex;justify-content:flex-end;gap:15px;color:var(--muted);font-size:.65rem}.dispatch-speed-summary b{color:var(--text)}.dispatch-speed-chart .speed-current{fill:#f5c542;stroke:#fff;stroke-width:2}
.dispatch-history-date-picker{min-width:150px}.dispatch-history-date-picker input{width:100%;min-height:34px;height:34px;padding:5px 8px;border:1px solid var(--line);border-radius:7px;background:var(--panel-2);color:var(--text);font-size:.73rem}.dispatch-history-trip-scrub{display:grid;gap:3px}.dispatch-history-trip-scrub label,.dispatch-history-duration-label{font-size:.58rem;color:var(--muted);font-weight:800}.dispatch-history-trip-scrub input{width:100%;accent-color:var(--accent)}
/* V5.21.226: event rows stay grouped at the top of the scroll region. */
.dispatch-history-events{
  align-content:start;
  align-items:start;
  grid-auto-rows:max-content;
  gap:7px;
  overflow-x:hidden;
}
.dispatch-history-events .dispatch-history-event{
  align-self:start;
  box-sizing:border-box;
  height:58px;
  min-height:58px;
  max-height:58px;
  margin:0;
}
@media(max-width:900px){.dispatch-history-modal-toolbar{grid-template-columns:minmax(170px,.8fr) minmax(0,1.4fr)}.dispatch-history-meta{grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(62px,.55fr))}}
@media(max-width:800px){
  .dispatch-history-modal-toolbar{grid-template-columns:1fr}
  .dispatch-history-modal .dispatch-history-presets{overflow-x:auto;padding-bottom:1px}
  .dispatch-history-modal .dispatch-history-custom{grid-column:auto}
  .dispatch-history-meta{grid-template-columns:repeat(3,minmax(0,1fr))}
  .dispatch-history-meta>span:first-child,.dispatch-history-meta .dispatch-history-driver-meta{grid-column:1/-1}
  .dispatch-history-timeline{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto;min-height:56px}
  .dispatch-history-playback-main{grid-template-columns:auto auto minmax(50px,1fr) auto;grid-template-rows:24px 13px}
  .dispatch-history-playback-main .dispatch-history-timeline-label{grid-column:1}
  .dispatch-history-playback-main .dispatch-history-playback-toggle{grid-column:2}
  .dispatch-history-playback-main .dispatch-history-timeline-time{grid-column:3}
  .dispatch-history-playback-main .dispatch-history-speed-toggle{grid-column:4}
  .dispatch-history-playback-main .dispatch-history-timeline-track{grid-column:1/-1;grid-row:2}
  .dispatch-history-playback-range{grid-row:2;margin-top:14px}
}
@media(max-width:520px){.dispatch-history-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.dispatch-history-meta>span:first-child,.dispatch-history-meta .dispatch-history-driver-meta{grid-column:1/-1}.dispatch-history-speed-toggle span{display:none}}
@media(max-width:800px){
  .dispatch-history-modal-layout,
  .dispatch-history-window.dispatch-history-expanded .dispatch-history-modal-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(250px,1fr) minmax(150px,.72fr)}
  .dispatch-history-modal-layout>aside{order:2}
  .dispatch-history-map{min-height:250px}
  .dispatch-history-window .dispatch-history-panel-collapsed .dispatch-history-modal-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(250px,1fr)}
}
@media(max-width:480px){
  .dispatch-history-modal-layout,
  .dispatch-history-window.dispatch-history-expanded .dispatch-history-modal-layout{grid-template-rows:minmax(230px,1fr) minmax(145px,.8fr)}
  .dispatch-history-window .dispatch-history-panel-collapsed .dispatch-history-modal-layout{grid-template-rows:minmax(230px,1fr)}
  .dispatch-history-map{min-height:230px}
}
@media(max-width:800px){
  .dispatch-history-modal-layout,
  .dispatch-history-window.dispatch-history-expanded .dispatch-history-modal-layout{grid-template-rows:minmax(302px,1fr) minmax(145px,.72fr)}
  .dispatch-history-window .dispatch-history-panel-collapsed .dispatch-history-modal-layout{grid-template-rows:minmax(302px,1fr)}
  .dispatch-history-timeline{height:56px;min-height:56px;grid-template-rows:37px 12px;overflow:visible}
  .dispatch-history-playback-main{height:37px}
  .dispatch-history-playback-range{grid-column:1;grid-row:2;margin:0}
}
@media(max-width:480px){
  .dispatch-history-modal-layout,
  .dispatch-history-window.dispatch-history-expanded .dispatch-history-modal-layout{grid-template-rows:minmax(282px,1fr) minmax(145px,.8fr)}
  .dispatch-history-window .dispatch-history-panel-collapsed .dispatch-history-modal-layout{grid-template-rows:minmax(282px,1fr)}
}
.dispatch-history-playback-marker{display:block!important;width:42px!important;height:32px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:inherit!important}
.dispatch-history-end-truck{display:block!important;width:42px!important;height:32px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.dispatch-history-truck-glyph{display:grid;place-items:center;width:42px;height:32px;transform:rotate(var(--truck-bearing,0deg));transform-origin:50% 50%;filter:drop-shadow(0 1px 2px rgba(0,0,0,.55))}
.dispatch-history-truck-glyph svg{width:38px;height:26px;overflow:visible;fill:#0b503d;stroke:#fff;stroke-width:1.7;stroke-linejoin:round}
.dispatch-history-truck-glyph svg path:nth-child(2){fill:#172c26;stroke:#fff;stroke-width:1.2}
.dispatch-history-truck-glyph svg path:nth-child(3){fill:#b7ead3;stroke:#0b503d;stroke-width:1.2}
.dispatch-history-follow-control{position:absolute;top:10px;right:10px;z-index:700;padding:6px 9px;border:1px solid rgba(13,80,61,.25);border-radius:7px;background:var(--panel);color:var(--primary);box-shadow:0 2px 8px rgba(0,0,0,.18);font-size:.64rem;font-weight:850;cursor:pointer}
.dispatch-history-follow-control[aria-pressed="false"]{color:var(--muted);background:var(--panel-2)}
.dispatch-history-follow-control{top:auto!important;right:10px!important;bottom:10px!important;height:auto!important;width:auto!important}
.dispatch-history-playback-marker,.dispatch-history-end-truck{width:36px!important;height:36px!important}
.dispatch-history-truck-glyph{width:36px!important;height:36px!important}
.dispatch-history-truck-circle svg{width:21px;height:15px;fill:#fff;stroke:#0b3d8f;stroke-width:1.2}
.dispatch-history-panel-reopen{top:10px!important;right:10px!important;bottom:auto!important}
