/* MOBTRACK360: painel, acesso e cadastro. Carregado por ultimo; mesmos tokens do app e do site. */
/* Sora: Copyright 2019 The Sora Project Authors. Plus Jakarta Sans: Copyright 2020 The Plus Jakarta Sans Project Authors. SIL OFL 1.1. */
@font-face{font-family:'Sora';font-style:normal;font-weight:100 800;font-display:swap;src:url('fonts/sora.woff2') format('woff2')}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:200 800;font-display:swap;src:url('fonts/jakarta.woff2') format('woff2')}
@font-face{font-family:'Sora Fallback';src:local('Arial');size-adjust:114.1%;ascent-override:85%;descent-override:25.4%;line-gap-override:0%}
@font-face{font-family:'Jakarta Fallback';src:local('Arial');size-adjust:107.1%;ascent-override:96.9%;descent-override:20.7%;line-gap-override:0%}
.ui :is(button,input,select,textarea,optgroup){font-family:inherit}
:root{
  --bg:#0A0B0E;--bg-2:#0E1014;--surface:#15171C;--surface-2:#1E2129;--surface-3:#252935;--border:#272B35;--border-soft:#1C1F27;--border-strong:#3A4050;
  --text:#fff;--text-2:#C3C7D0;--muted:#8A909E;--accent:#19E57E;--accent-ink:#06140C;--accent-soft:rgba(25,229,126,.12);
  --gold:#E6C257;--warn:#EF9A2B;--danger:#FF4D4F;--danger-soft:rgba(255,77,79,.12);--info:#60A5FA;--info-soft:rgba(96,165,250,.12);
  --radius-sm:8px;--radius:12px;--radius-lg:16px;--shadow:0 16px 40px rgba(0,0,0,.4);
  --topbar-h:64px;--sidebar-w:264px;--gutter:clamp(16px,3vw,32px);
  --font:'Plus Jakarta Sans','Jakarta Fallback',system-ui,sans-serif;--display:'Sora','Sora Fallback',system-ui,sans-serif;
  color-scheme:dark
}
body.ui{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden;margin:0}
.ui *,.ui *::before,.ui *::after{box-sizing:border-box}
.ui :focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.ui .skip-link{position:absolute;left:12px;top:-60px;z-index:10000;background:var(--accent);color:var(--accent-ink);padding:10px 16px;border-radius:8px;font-weight:700;text-decoration:none}
.ui .skip-link:focus{top:12px}
.ui .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:reduce){.ui *,.ui *::before,.ui *::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* ------------------------------------------------------------------ Botoes */
.ui .btn,.ui .native-button,.painel-page .btn-primary,.painel-page .btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 18px;border-radius:10px;border:1px solid transparent;font:inherit;font-size:.92rem;font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s;white-space:normal;text-align:center;transform:none}
.ui .btn-primary,.ui .native-button:not(.native-button-secondary),.painel-page .native-shell button:not(.app-logout):not(.app-nav-logout):not(.action-btn):not(.tab-btn):not([class*="btn-"]):not(.toggle-senha){background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.ui .btn-primary:hover,.ui .native-button:not(.native-button-secondary):hover,.painel-page .native-shell button:not([class]):hover{background:#3ef094;border-color:#3ef094;transform:none;box-shadow:0 8px 24px rgba(25,229,126,.2)}
.ui .btn-secondary,.ui .native-button-secondary{background:var(--surface-2);color:var(--text);border-color:var(--border)}
.ui .btn-secondary:hover,.ui .native-button-secondary:hover{background:var(--surface-3);border-color:var(--border-strong);transform:none}
.ui .btn-sm{min-height:40px;padding:6px 14px;font-size:.85rem}
.ui button:disabled,.ui .btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;box-shadow:none}
.painel-page .action-btns{display:flex;flex-wrap:wrap;gap:8px;white-space:normal}
.painel-page .action-btns form{margin:0;display:inline}
.painel-page .action-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:6px 12px;border-radius:8px;font-size:.82rem;font-weight:600;text-decoration:none;border:1px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer}
.painel-page .action-btn:hover{border-color:var(--border-strong);background:var(--surface-3)}
.painel-page .action-btn.cancelar,.painel-page .action-btn.excluir{background:var(--danger-soft);border-color:rgba(255,77,79,.3);color:#ff8a8b}
.painel-page .action-btn.confirmar{background:var(--accent-soft);border-color:rgba(25,229,126,.3);color:var(--accent)}

/* ------------------------------------------------------------------ Casca do painel */
.painel-page .app-topbar{position:sticky;top:0;z-index:900;display:flex;align-items:center;gap:12px;height:var(--topbar-h);padding:0 var(--gutter);background:rgba(10,11,14,.88);-webkit-backdrop-filter:saturate(160%) blur(14px);backdrop-filter:saturate(160%) blur(14px);border-bottom:1px solid var(--border-soft)}
.painel-page .app-logo{display:flex;align-items:center;min-height:44px;margin-right:auto}
.painel-page .app-logo img{height:46px;width:auto;display:block}
.painel-page .app-menu-btn{display:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer}
.painel-page .app-topbar-right{display:flex;align-items:center;gap:10px;min-width:0;margin-left:auto}
.painel-page .app-top-link{color:var(--text-2);text-decoration:none;font-weight:500;padding:10px 8px}
.painel-page .app-top-link:hover{color:var(--text)}
.painel-page .app-user{display:flex;align-items:center;gap:10px;min-width:0;padding:4px 12px 4px 4px;border:1px solid var(--border);border-radius:999px;background:var(--surface)}
.painel-page .app-avatar{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-weight:800;font-size:.9rem;flex-shrink:0}
.painel-page .app-user-text{display:flex;flex-direction:column;min-width:0;line-height:1.2}
.painel-page .app-user .user-name{font-size:.86rem;font-weight:600;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.painel-page .app-user .user-level{font-size:.72rem;font-weight:600;color:var(--muted);background:none;padding:0;border:0;text-transform:none;letter-spacing:0}
.painel-page .app-user .user-level-master{color:var(--gold)}
.painel-page .app-logout-form{margin:0}
.painel-page .app-logout{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:10px;border:1px solid var(--border);background:transparent;color:var(--text-2);font:inherit;font-size:.88rem;font-weight:600;cursor:pointer}
.painel-page .app-logout:hover{color:#ff8a8b;border-color:rgba(255,77,79,.4)}
.painel-page .app-sidebar{position:fixed;top:var(--topbar-h);bottom:0;left:0;z-index:800;width:var(--sidebar-w);overflow-y:auto;overscroll-behavior:contain;padding:20px 14px 24px;background:var(--bg);border-right:1px solid var(--border-soft);display:flex;flex-direction:column;gap:18px}
.painel-page .app-nav-group ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.painel-page .app-nav-title{margin:0 0 6px;padding:0 12px;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.painel-page .app-sidebar a,.painel-page .app-nav-logout{display:flex;align-items:center;gap:12px;min-height:42px;padding:8px 12px;border-radius:10px;color:var(--text-2);text-decoration:none;font-size:.92rem;font-weight:500;transition:background-color .15s,color .15s;width:100%;border:0;background:none;font-family:inherit;cursor:pointer;text-align:left}
.painel-page .app-sidebar a svg,.painel-page .app-nav-logout svg{color:var(--muted)}
.painel-page .app-sidebar a:hover{background:var(--surface);color:var(--text)}
.painel-page .app-sidebar a[aria-current=page]{background:var(--accent-soft);color:var(--accent);font-weight:600}
.painel-page .app-sidebar a[aria-current=page] svg{color:var(--accent)}
.painel-page .app-sidebar form{margin:auto 0 0}
.painel-page .app-nav-logout:hover{color:#ff8a8b;background:var(--danger-soft)}
.painel-page .app-scrim{position:fixed;inset:0;z-index:790;background:rgba(0,0,0,.6)}
.painel-page .app-scrim[hidden]{display:none}
@media (min-width:1100px){
  body.has-sidebar{padding-left:var(--sidebar-w)}
  body.has-sidebar .app-topbar{margin-left:calc(-1 * var(--sidebar-w));padding-left:calc(var(--sidebar-w) + var(--gutter))}
  body.has-sidebar .app-logo{position:fixed;left:22px;top:calc((var(--topbar-h) - 46px) / 2)}
  .painel-page .app-sidebar form{display:none}
}
@media (max-width:1099px){
  .painel-page .app-menu-btn{display:inline-flex}
  .painel-page .app-sidebar{top:0;z-index:1000;width:min(86vw,320px);padding-top:24px;transform:translateX(-100%);transition:transform .25s ease;box-shadow:var(--shadow)}
  body.nav-open .app-sidebar{transform:none}
  body.nav-open{overflow:hidden}
}
@media (max-width:640px){
  .painel-page .app-user{padding:3px;border:0;background:none}
  .painel-page .app-user-text{display:none}
  .painel-page .app-logout{padding:0;width:44px;justify-content:center}
  .painel-page .app-logout span{display:none}
  .painel-page .app-logo img{height:38px}
}
.painel-page .app-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 20px;margin-top:48px;padding:20px var(--gutter) 28px;border-top:1px solid var(--border-soft);color:var(--muted);font-size:.84rem}
.painel-page .app-footer p{margin:0}
.painel-page .app-footer nav{display:flex;flex-wrap:wrap;gap:4px 18px}
.painel-page .app-footer a{color:var(--muted);text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.painel-page .app-footer a:hover{color:var(--text)}
.painel-page .header,.painel-page .whatsapp-float{display:none}

/* ------------------------------------------------------------------ Conteudo */
.painel-page main{display:block}
.painel-page .main,.painel-page .painel-main,.painel-page .native-shell,.painel-page .wallet-page{max-width:1320px;margin:0 auto;padding:28px var(--gutter) 24px;min-height:auto}
.painel-page h1,.painel-page h2,.painel-page h3{line-height:1.25;letter-spacing:-.01em}
.painel-page .page-header{display:flex;flex-direction:row;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 24px}
.painel-page .page-eyebrow,.painel-page .native-eyebrow,.painel-page .native-card>p:first-child:not([class]):has(+h1){margin:0 0 4px;font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.painel-page .page-title,.painel-page .native-shell h1,.painel-page .wallet-page h1{font-size:clamp(1.5rem,3vw,2rem);font-weight:800;margin:0;background:none;-webkit-text-fill-color:currentColor;color:var(--text)}
.painel-page .actions{display:flex;flex-wrap:wrap;gap:10px}
.painel-page .section-title,.painel-page .painel-main .section-title{font-size:1.1rem;font-weight:700;color:var(--text);margin:0 0 14px;text-align:left}
.painel-page .section-header-flex{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px;margin:28px 0 12px}
.painel-page .section-header-flex .section-title{margin:0}
.painel-page .section-header-flex>span{color:var(--muted);font-size:.9rem}
.painel-page p{margin:0 0 12px}
.painel-page main a:not([class]){color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.painel-page .native-muted,.painel-page small{color:var(--muted)}
.painel-page .native-card,.painel-page .table-container,.painel-page section.table-container{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:clamp(18px,2.4vw,28px);margin:0 0 20px;box-shadow:none}
.painel-page .table-container{overflow-x:auto}
.painel-page .table-container>table:first-child{margin:-1px}
.painel-page .native-card h2,.painel-page .table-container h2{font-size:1.15rem;margin:24px 0 12px}
.painel-page .native-card h2:first-child,.painel-page .table-container h2:first-child{margin-top:0}
.painel-page .native-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:16px}
.painel-page a.native-card{display:flex;align-items:center;min-height:72px;color:var(--text);text-decoration:none;font-weight:600;transition:border-color .15s,background-color .15s}
.painel-page a.native-card:hover{border-color:rgba(25,229,126,.45);background:var(--surface-2)}
.painel-page .native-narrow{max-width:520px;margin:40px auto}

/* Indicadores */
.painel-page .kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:14px;margin:0 0 24px}
.painel-page .kpi-title{font-size:.95rem;font-weight:700;color:var(--text)}
@media (max-width:640px){.painel-page .kpi-grid{grid-template-columns:1fr 1fr;gap:10px}.painel-page .kpi-card{padding:14px}.painel-page .kpi-value{font-size:1.6rem}}
.painel-page .kpi-card{display:flex;flex-direction:column;gap:6px;padding:18px 20px;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface);color:var(--text);text-decoration:none;transition:border-color .15s,transform .15s}
.painel-page .kpi-card:hover{border-color:var(--border-strong);transform:translateY(-2px)}
.painel-page .kpi-value{font-size:2rem;font-weight:800;line-height:1;color:var(--accent)}
.painel-page .kpi-label{font-size:.86rem;color:var(--text-2)}
.painel-page .kpi-warn .kpi-value{color:var(--gold)}
.painel-page .kpi-danger .kpi-value{color:#ff8a8b}
.painel-page .kpi-warn{border-color:rgba(230,194,87,.3)}
.painel-page .kpi-danger{border-color:rgba(255,77,79,.35)}
.painel-page .driver-dashboard-stats,.painel-page #tab-desempenho .driver-dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:14px}
.painel-page .stat-card,.painel-page .driver-dashboard-stats .stat-card{display:flex;align-items:center;gap:14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px}
.painel-page .driver-dashboard-stats .stat-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:var(--accent-soft);color:var(--accent);flex-shrink:0}
.painel-page .driver-dashboard-stats .stat-label{font-size:.78rem;color:var(--muted);text-transform:none;letter-spacing:0}
.painel-page .driver-dashboard-stats .stat-value{font-size:1.35rem;font-weight:800;color:var(--text)}

/* Abas */
.painel-page .dashboard-tabs{display:flex;gap:4px;padding:4px;margin:0 0 20px;border:1px solid var(--border);border-radius:12px;background:var(--surface);width:max-content;max-width:100%;overflow-x:auto}
.painel-page .tab-btn{position:relative;min-height:40px;padding:8px 16px;border-radius:9px;border:0;background:none;color:var(--muted);font:inherit;font-size:.9rem;font-weight:600;cursor:pointer;white-space:nowrap}
.painel-page .tab-btn:hover{color:var(--text)}
.painel-page .tab-btn.active{background:var(--surface-3);color:var(--text)}
.painel-page .tab-btn.active::after{display:none}

/* Formularios */
.painel-page label{color:var(--text-2);font-size:.88rem;font-weight:600}
.painel-page input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),.painel-page select,.painel-page textarea,.painel-page .form-input,.painel-page .form-select,.painel-page .empresa-filter select,.painel-page .empresa-filter #caseProtocol{width:100%;min-height:44px;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--bg-2);color:var(--text);font:inherit;font-size:.95rem;font-weight:400;transition:border-color .15s,box-shadow .15s}
.painel-page input[type=file]{width:100%;padding:10px;border-radius:10px;border:1px dashed var(--border-strong);background:var(--bg-2);color:var(--text-2);font:inherit;font-size:.9rem}
.painel-page input[type=file]::file-selector-button{margin-right:12px;padding:8px 14px;border-radius:8px;border:0;background:var(--surface-3);color:var(--text);font:inherit;font-weight:600;cursor:pointer}
.painel-page textarea{min-height:96px;resize:vertical}
.painel-page select option{background:var(--surface)}
.painel-page input::placeholder,.painel-page textarea::placeholder{color:var(--muted)}
.painel-page input:focus,.painel-page select:focus,.painel-page textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(25,229,126,.18)}
.painel-page input[type=checkbox],.painel-page input[type=radio]{accent-color:var(--accent);width:18px;height:18px}
.painel-page .empresa-filter{display:flex;flex-direction:row;flex-wrap:wrap;align-items:flex-end;gap:12px;margin:0 0 16px;padding:14px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}
.painel-page section.table-container>.empresa-filter{padding:0;border:0;background:none;margin-bottom:16px}
.painel-page .empresa-filter label{flex:0 0 auto;display:flex;align-items:center;min-height:44px;margin:0;color:var(--muted);font-size:.84rem}
.painel-page .empresa-filter select,.painel-page .empresa-filter input{flex:1 1 160px;width:auto;min-width:0}
.painel-page .empresa-filter .btn{flex:0 0 auto}
.painel-page .native-shell form{gap:16px}
.painel-page .native-shell label{gap:6px}
.painel-page fieldset,.painel-page .native-shell fieldset{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-2);padding:16px}
.painel-page legend{font-weight:700;color:var(--text);padding:0 6px}
.painel-page details{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-2);padding:0 16px;margin:16px 0}
.painel-page details[open]{padding-bottom:14px}
.painel-page summary{cursor:pointer;min-height:48px;display:flex;align-items:center;font-weight:600}
.painel-page .form-group{margin:0 0 16px}
.painel-page .form-label{display:block;margin-bottom:6px}

/* Tabelas */
.painel-page table{width:100%;border-collapse:collapse;font-size:.9rem}
.painel-page thead{background:transparent}
.painel-page th{padding:12px 14px;text-align:left;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--border);white-space:nowrap}
.painel-page td{padding:14px;border-top:0;border-bottom:1px solid var(--border-soft);vertical-align:middle;color:var(--text-2)}
.painel-page td strong{color:var(--text)}
.painel-page tbody tr:last-child td{border-bottom:0}
.painel-page tbody tr:hover td{background:rgba(255,255,255,.02)}
.painel-page .table-container table{margin:0}
.painel-page .trajeto{min-width:200px;max-width:340px}
.painel-page .trajeto .destino{color:var(--muted)}
.painel-page .aguardando{color:var(--muted);font-style:normal}
.painel-page table.table-stack.is-stacked,.painel-page .native-scroll table.table-stack.is-stacked,.painel-page .native-shell .table-container table.table-stack.is-stacked{min-width:0}
.painel-page table.table-stack.is-stacked thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.painel-page table.table-stack.is-stacked,.painel-page table.table-stack.is-stacked tbody,.painel-page table.table-stack.is-stacked tr,.painel-page table.table-stack.is-stacked td{display:block;width:100%}
.painel-page table.table-stack.is-stacked tr{padding:12px 0;border-bottom:1px solid var(--border)}
.painel-page table.table-stack.is-stacked tbody tr:last-child{border-bottom:0}
.painel-page table.table-stack.is-stacked td{display:grid;grid-template-columns:6.75rem minmax(0,1fr);gap:12px;align-items:baseline;padding:6px 0;border:0;max-width:none;min-width:0;overflow-wrap:anywhere}
.painel-page table.table-stack.is-stacked td::before{overflow-wrap:normal;word-break:normal;content:attr(data-label);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-top:2px}
.painel-page table.table-stack.is-stacked td:not([data-label])::before,.painel-page table.table-stack.is-stacked td[data-label=""]::before{content:none}
.painel-page table.table-stack.is-stacked td:not([data-label]),.painel-page table.table-stack.is-stacked td[data-label=""]{grid-template-columns:1fr}
.painel-page table.table-stack.is-stacked tbody tr:hover td{background:none}
.painel-page .native-scroll.has-stacked{background:none}
.painel-page .table-container.has-stacked{background:var(--surface)}
.painel-page table.table-stack.is-stacked td.native-nowrap{white-space:normal}
.painel-page table.table-stack.is-stacked td>a:only-child{display:inline-flex;align-items:center;min-height:40px}
@media (max-width:720px){
  .painel-page .table-container{padding:14px 16px}
  .painel-page .native-scroll{background:none}
}

/* Etiquetas */
.painel-page .status-badge,.painel-page .servico-badge,.painel-page .empresa-badge,.painel-page .fila-badge,.painel-page .badge-status-sub{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.04em;line-height:1.5;text-transform:uppercase;white-space:nowrap;margin:0}
.painel-page .servico-badge{background:var(--surface-3);color:var(--text-2);border:1px solid var(--border)}
.painel-page .empresa-badge{background:var(--info-soft);color:#9cc6fb;text-transform:none;letter-spacing:0;font-size:.8rem;white-space:normal}
.painel-page .status-pendente{background:rgba(230,194,87,.14);color:var(--gold)}
.painel-page .status-confirmado,.painel-page .status-concluido{background:var(--accent-soft);color:var(--accent)}
.painel-page .status-cancelado,.painel-page .status-expirado{background:var(--danger-soft);color:#ff8a8b}
.painel-page .status-em-fila{background:var(--info-soft);color:#9cc6fb}
.painel-page .native-code{color:var(--muted)}

/* Mensagens */
.painel-page .message,.painel-page .native-card [role=alert],.painel-page .native-card [role=status].message{padding:12px 14px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);color:var(--text-2)}
.painel-page .message.sucesso{background:var(--accent-soft);border-color:rgba(25,229,126,.3);color:#8ff3bf}
.painel-page .message.erro,.painel-page [role=alert]:not(:empty){background:var(--danger-soft);border-color:rgba(255,77,79,.35);color:#ff9fa0}
.painel-page .message.info{background:var(--info-soft);border-color:rgba(96,165,250,.3);color:#b9d6fc}
.painel-page [role=alert]:not(:empty){padding:12px 14px;border-radius:var(--radius);border:1px solid rgba(255,77,79,.35)}
.painel-page .empty-state,.painel-page .empty-state-sm{text-align:center;padding:32px 16px;color:var(--muted)}
.painel-page .empty-state h3{color:var(--text);font-size:1.05rem;margin:0 0 6px}

/* Cartoes de viagem do motorista */
.painel-page .trip-card-mini,.painel-page .trip-card-detailed{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px;margin-bottom:12px}
.painel-page .trip-card-detailed{display:block}
.painel-page .driver-pending-section,.painel-page .driver-next-section{margin-bottom:24px}

@media (min-width:641px) and (max-width:1099px){
  .painel-page .empresa-filter{display:grid;grid-template-columns:max-content minmax(0,1fr) max-content minmax(0,1fr);align-items:center;gap:10px 12px}
  .painel-page .empresa-filter>:not(label):not(select):not(input):not(textarea){grid-column:1/-1}
}
@media (max-width:640px){
  .painel-page .page-header{align-items:stretch}
  .painel-page .actions{width:100%}
  .painel-page .actions .btn{flex:1 1 calc(50% - 10px)}
  .painel-page .empresa-filter{padding:12px}
  .painel-page .empresa-filter label{min-height:0;width:100%}
  .painel-page .empresa-filter select,.painel-page .empresa-filter input,.painel-page .empresa-filter .btn{flex:1 1 100%;width:100%}
  .painel-page .dashboard-tabs{width:100%}
  .painel-page .tab-btn{flex:1}
}

/* ------------------------------------------------------------------ Telas de acesso */
.login-page .auth-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100dvh}
.login-page .auth-aside{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:32px;padding:40px clamp(32px,5vw,72px);background:radial-gradient(120% 90% at 0% 0%,rgba(25,229,126,.18) 0%,rgba(10,11,14,0) 55%),linear-gradient(160deg,#101318 0%,var(--bg) 100%);border-right:1px solid var(--border-soft);overflow:hidden}
.login-page .auth-brand{font-weight:800;letter-spacing:.18em;font-size:1.05rem;color:var(--text);text-decoration:none}
.login-page .auth-brand span{color:var(--accent)}
.login-page .auth-kicker{margin:0 0 12px;font-size:.78rem;font-weight:700;letter-spacing:.14em;color:var(--accent)}
.login-page .auth-headline{margin:0;font-size:clamp(1.8rem,3vw,2.6rem);font-weight:800;line-height:1.15;max-width:16ch}
.login-page .auth-points{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:12px;color:var(--text-2)}
.login-page .auth-points li{display:flex;align-items:center;gap:10px}
.login-page .auth-points svg{color:var(--accent)}
.login-page .auth-foot{margin:0;color:var(--muted);font-size:.84rem}
.login-page .auth-main{display:flex;align-items:center;justify-content:center;padding:40px 20px}
.login-page .login-container{width:100%;max-width:420px;margin:0;padding:clamp(24px,4vw,40px);background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow);text-align:left}
.login-page .login-container .logo{display:flex;justify-content:flex-start;margin:0 0 6px}
.login-page .login-container .logo img{height:52px;width:auto;margin-left:-6px}
.login-page .login-container .icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:16px;background:var(--accent-soft);color:var(--accent);margin:0 0 18px}
.login-page .login-container .icon svg{width:28px;height:28px}
.login-page .login-container .subtitle{margin:0 0 24px;color:var(--muted);font-size:.95rem;text-align:left}
.login-page .login-container .form-group{margin:0 0 16px}
.login-page .login-container label{display:block;margin:0 0 6px;color:var(--text-2);font-size:.88rem;font-weight:600}
.login-page .login-container input:not([type=checkbox]){width:100%;min-height:48px;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:var(--bg-2);color:var(--text);font:inherit;font-size:1rem}
.login-page .login-container input:not([type=checkbox]):focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(25,229,126,.18)}
.login-page .login-container input::placeholder{color:var(--muted)}
.login-page .password-field{position:relative}
.login-page .password-field input{padding-right:52px}
.login-page .toggle-senha{position:absolute;top:50%;right:4px;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:10px;background:none;color:var(--muted);cursor:pointer}
.login-page .toggle-senha:hover{color:var(--text)}
.login-page .toggle-senha svg[hidden]{display:none}
.login-page .remember-me .checkbox-label{display:inline-flex;align-items:center;gap:10px;min-height:44px;margin:0;font-weight:500;cursor:pointer}
.login-page .remember-me input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}
.login-page .btn-login,.login-page .btn-submit{display:flex;align-items:center;justify-content:center;width:100%;min-height:50px;margin-top:8px;border:0;border-radius:12px;background:var(--accent);color:var(--accent-ink);font:inherit;font-size:1rem;font-weight:700;letter-spacing:0;cursor:pointer;transition:background-color .15s}
.login-page .btn-login:hover,.login-page .btn-submit:hover{background:#3ef094;transform:none}
.login-page .btn-submit:disabled{opacity:.5;cursor:not-allowed}
.login-page .error,.login-page .success,.login-page .message{margin:0 0 18px;padding:12px 14px;border-radius:12px;font-size:.9rem;border:1px solid var(--border);text-align:left}
.login-page .error,.login-page .message.erro{background:var(--danger-soft);border-color:rgba(255,77,79,.35);color:#ff9fa0}
.login-page .success,.login-page .message.sucesso{background:var(--accent-soft);border-color:rgba(25,229,126,.3);color:#8ff3bf}
.login-page .message.info{background:var(--info-soft);border-color:rgba(96,165,250,.3);color:#b9d6fc}
.login-page .links,.login-page .back-home,.login-page .back-link{margin:18px 0 0;text-align:center;font-size:.9rem;color:var(--muted)}
.login-page .links p{margin:0 0 6px}
.login-page .links a,.login-page .back-home a,.login-page .back-link a,.login-page .links button,.login-page .back-home button{display:inline-flex;align-items:center;min-height:44px;padding:4px 8px!important;color:var(--text-2)!important;font:inherit;text-decoration:none!important}
.login-page .links a:hover,.login-page .back-home a:hover,.login-page .back-link a:hover,.login-page .links button:hover,.login-page .back-home button:hover{color:var(--accent)!important}
.login-page .password-feedback{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.login-page .password-feedback .req{padding:3px 10px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);font-size:.78rem;color:var(--muted)}
.login-page .password-feedback .req.valid{background:var(--accent-soft);border-color:rgba(25,229,126,.3);color:var(--accent)}
@media (max-width:900px){
  .login-page .auth-shell{grid-template-columns:1fr}
  .login-page .auth-aside{display:none}
  .login-page .auth-main{min-height:100dvh;padding:24px 16px;background:radial-gradient(100% 60% at 50% 0%,rgba(25,229,126,.12) 0%,rgba(10,11,14,0) 60%)}
}
@media (max-width:480px){
  .login-page .login-container{border:0;background:none;box-shadow:none;padding:8px 4px}
}

/* ------------------------------------------------------------------ Grades de formulario (cadastro, admin) */
.painel-page .native-grid>p,.painel-page .native-grid>fieldset,.painel-page .native-grid>details,.painel-page .native-grid>h2,.painel-page .native-grid>h3,.painel-page .native-grid>.native-actions{grid-column:1/-1}
.painel-page .native-grid>p{margin:0;padding:10px 14px;border-left:3px solid var(--info);border-radius:0 10px 10px 0;background:var(--info-soft);color:var(--text-2);font-size:.88rem;line-height:1.5}
.painel-page .native-grid>label{align-self:end}
.painel-page .native-card>h1+p{color:var(--text-2);max-width:760px}
.painel-page .native-shell form>button,.painel-page .native-shell form>.native-actions{justify-self:start}
@media (max-width:640px){.painel-page .native-shell form>button{justify-self:stretch;width:100%}}

/* ------------------------------------------------------------------ Formulario de viagem */
.painel-page .page-subtitle{color:var(--muted);margin:6px 0 24px}
.painel-page .solicitacao-container{gap:24px}
.painel-page .form-card,.painel-page .trip-summary,.painel-page .map-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:none;padding:clamp(18px,2.4vw,28px)}
.painel-page .trip-aside{top:calc(var(--topbar-h) + 16px)}
.painel-page .form-label,.painel-page .trip-layout .form-label{font-size:.86rem;font-weight:600;letter-spacing:0;text-transform:none;color:var(--text-2);margin-bottom:6px}
.painel-page .form-group{margin-bottom:18px}
.painel-page .trip-section,.painel-page .trip-layout fieldset.trip-section{border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--bg-2);padding:16px;margin:0 0 18px}
.painel-page .trip-legend{font-size:.98rem;font-weight:700;color:var(--text);padding:0}
.painel-page .form-hint,.painel-page .trip-summary-empty{color:var(--muted);font-size:.84rem;margin-top:6px}
.painel-page .form-notice{padding:10px 14px;border-radius:10px;background:var(--info-soft);border:1px solid rgba(96,165,250,.25);color:#b9d6fc;font-size:.88rem}
.painel-page .service-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;border:1px solid var(--border);border-radius:12px;background:var(--bg-2)}
.painel-page .service-tab{min-height:44px;border:0;border-radius:9px;background:none;color:var(--muted);font-size:.9rem;font-weight:600;letter-spacing:0;text-transform:none}
.painel-page .service-tab:hover{color:var(--text);border-color:transparent}
.painel-page .service-tab.active{background:var(--accent-soft);color:var(--accent);border-color:transparent}
.painel-page .service-card{background:var(--bg-2);border:1px solid var(--border);border-radius:12px;transform:none}
.painel-page .service-option input:checked+.service-card{border-color:var(--accent);background:var(--accent-soft);transform:none;box-shadow:none}
.painel-page .service-card:hover:not(input:checked+.service-card){border-color:var(--border-strong);transform:none}
.painel-page .service-option input:focus-visible+.service-card{outline:2px solid var(--accent);outline-offset:2px}
.painel-page .retorno-option,.painel-page .waypoint-card{border-radius:12px;border-color:var(--border);background:var(--bg-2)}
.painel-page .btn-submit,.painel-page .trip-actions .btn-submit{display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;padding:14px;border:0;border-radius:12px;background:var(--accent);color:var(--accent-ink);font:inherit;font-size:1rem;font-weight:700;letter-spacing:0;text-transform:none;cursor:pointer;box-shadow:none}
.painel-page .btn-submit:hover{background:#3ef094;transform:none;box-shadow:0 8px 24px rgba(25,229,126,.2)}
.painel-page .trip-actions .btn{min-height:48px;padding:12px}
.painel-page .status-chip{border-radius:999px}
@media (max-width:600px){.painel-page .painel-main{padding:20px 16px}.painel-page .form-card,.painel-page .trip-summary{padding:16px}.painel-page .service-tabs{grid-template-columns:1fr}}

.painel-page .service-card .franquia,.painel-page .service-card-text{color:var(--muted)}
.painel-page caption{caption-side:top;text-align:left;padding:0 0 10px;font-size:.86rem;font-weight:700;color:var(--text-2)}
@media (max-width:720px){.painel-page table.table-stack caption{display:block;width:100%}}
.painel-page td{vertical-align:top}
.painel-page td form{min-width:220px;display:grid;gap:8px;margin:0}
.painel-page td button,.painel-page td .btn,.painel-page td .native-button{overflow-wrap:normal;word-break:normal;white-space:normal}
.painel-page td textarea{min-height:64px}
@media (max-width:720px){.painel-page table.table-stack td form{min-width:0}}
.ui .btn-danger{background:var(--danger-soft);color:#ff9fa0;border-color:rgba(255,77,79,.4)}
.ui .btn-danger:hover{background:rgba(255,77,79,.22);border-color:var(--danger)}

/* ------------------------------------------------------------------ Identidade (sobrescreve o que estiver acima) */
.ui .btn,.ui .native-button,.painel-page .btn-primary,.painel-page .btn-secondary,.painel-page .action-btn,.ui .btn-danger{border-radius:6px}
.painel-page h1,.painel-page h2,.painel-page h3,.painel-page .page-title,.painel-page .section-title,.painel-page .kpi-value,.painel-page .stat-value,.login-page .auth-headline,.painel-page .wallet-page h2{font-family:var(--display);letter-spacing:-.025em}
.painel-page .page-title,.painel-page .native-shell h1,.painel-page .wallet-page h1{font-weight:600;letter-spacing:-.035em}
.painel-page .page-eyebrow,.painel-page .native-eyebrow,.painel-page .native-card>p:first-child:not([class]):has(+h1){font-size:.84rem;font-weight:500;letter-spacing:0;text-transform:none;color:var(--muted);margin-bottom:6px}
.painel-page .kpi-card,.painel-page .stat-card,.painel-page .native-card,.painel-page .table-container,.painel-page section.table-container,.painel-page .empresa-filter{border-radius:10px}
.painel-page .kpi-value{font-weight:300;font-size:2.4rem;letter-spacing:-.05em}
.painel-page .kpi-warn .kpi-value,.painel-page .kpi-danger .kpi-value{color:var(--text)}
.painel-page .kpi-card{position:relative;padding-left:22px}
.painel-page .kpi-card::before{content:'';position:absolute;left:0;top:18px;bottom:18px;width:2px;border-radius:2px;background:var(--border-strong)}
.painel-page .kpi-warn::before{background:var(--gold)}
.painel-page .kpi-danger::before{background:var(--danger)}
.painel-page .kpi-warn,.painel-page .kpi-danger{border-color:var(--border)}
.painel-page .driver-dashboard-stats .stat-icon{background:none;width:auto;height:auto;color:var(--muted)}
.painel-page .driver-dashboard-stats .stat-value{font-weight:400}
.painel-page .status-badge{gap:8px;padding:0;border-radius:0;background:none!important;font-size:.84rem;font-weight:600;letter-spacing:0;text-transform:none}
.painel-page .status-badge::before{content:'';width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0}
.painel-page .servico-badge{padding:2px 8px;border-radius:4px;background:none;border:1px solid var(--border-strong);font-size:.72rem;letter-spacing:.06em;color:var(--text-2)}
.painel-page .empresa-badge{padding:0;background:none;color:var(--text-2);font-size:.88rem;font-weight:500}
.painel-page .dashboard-tabs{border-radius:8px}
.painel-page .tab-btn{border-radius:6px}
.painel-page .app-sidebar a,.painel-page .app-nav-logout{border-radius:6px}
.painel-page .app-sidebar a[aria-current=page]{background:var(--surface);color:var(--text);box-shadow:inset 2px 0 0 var(--accent)}
.painel-page .app-sidebar a[aria-current=page] svg{color:var(--accent)}
.painel-page .app-nav-title{font-size:.78rem;font-weight:500;letter-spacing:0;text-transform:none}
.painel-page th{font-size:.76rem;letter-spacing:.02em;text-transform:none;font-weight:600}
.painel-page .native-grid>p{border-left-color:var(--border-strong);background:var(--bg-2)}
.painel-page .form-notice{background:var(--bg-2);border-color:var(--border);color:var(--text-2)}
.painel-page .service-tab.active{background:var(--surface-3);color:var(--text)}

.login-page .auth-aside{justify-content:flex-end;background:var(--bg);isolation:isolate}
.login-page .auth-media{position:absolute;inset:0;z-index:-1}
.login-page .auth-media img{width:100%;height:100%;object-fit:cover;object-position:68% 40%}
.login-page .auth-aside::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(10,11,14,.96) 8%,rgba(10,11,14,.35) 55%,rgba(10,11,14,.55) 100%)}
.login-page .auth-brand{position:absolute;top:40px;left:clamp(32px,5vw,72px);font-family:var(--display);font-weight:600;letter-spacing:.2em}
.login-page .auth-brand span{color:var(--muted)}
.login-page .auth-headline{font-family:var(--display);font-weight:600;font-size:clamp(1.8rem,2.8vw,2.6rem);line-height:1.1;letter-spacing:-.035em;max-width:15ch}
.login-page .auth-foot{margin-top:20px}
.login-page .login-container{border-radius:12px;box-shadow:none;background:var(--bg-2)}
.login-page .btn-login,.login-page .btn-submit{border-radius:6px}
.login-page .login-container .icon{background:none;border:1px solid var(--border-strong);border-radius:50%;width:52px;height:52px}
.login-page .login-container .subtitle{font-family:var(--display);color:var(--text-2);font-size:1.05rem;letter-spacing:-.01em}
.login-page .password-feedback .req{border-radius:4px}
@media screen{
  .painel-page .wallet-page{--wallet-border:var(--border);font-family:var(--font)}
  .painel-page .wallet-panel{border-radius:10px;position:relative}
  .painel-page .wallet-balance,.painel-page .wallet-expiry{border-color:var(--border)}
  .painel-page .wallet-balance::before,.painel-page .wallet-expiry::before{content:'';position:absolute;left:0;top:24px;bottom:24px;width:2px;border-radius:2px;background:var(--accent)}
  .painel-page .wallet-expiry::before{background:var(--gold)}
  .painel-page .wallet-value{font-family:var(--display);font-weight:300;letter-spacing:-.04em}
  .painel-page .wallet-page h2{font-size:1rem;font-weight:600;color:var(--text-2)}
  .painel-page .wallet-page button,.painel-page .wallet-page input,.painel-page .wallet-page select,.painel-page .wallet-edit-credit summary{border-radius:6px}
}
.painel-page .filters-panel{display:block;margin:0 0 24px;padding:16px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}
.painel-page .filters-panel .empresa-filter{margin:0;padding:0;border:0;background:none}
.painel-page .filters-panel .empresa-filter+.empresa-filter{padding-top:12px;border-top:1px solid var(--border-soft)}
.painel-page .filters-hint{margin:0;font-size:.84rem;color:var(--muted)}
.painel-page .filters-pages{display:flex;flex-wrap:wrap;gap:8px}
.painel-page .filters-pages .btn{min-height:40px;padding:6px 12px;font-size:.84rem}
.painel-page .filters-panel>*+*{margin-top:12px!important}
.painel-page details pre{font-family:inherit;font-size:.92rem;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}

/* Parametros do sistema */
.painel-page .param-lead{max-width:72ch;color:var(--text-2)}
.painel-page .param-links{font-size:.9rem;color:var(--muted)}
.painel-page .param-tools{position:sticky;top:calc(var(--topbar-h,64px) + 8px);z-index:5;display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:0 0 16px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:rgba(17,19,24,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.painel-page .param-search{flex:1 1 280px}
.painel-page .param-search input{width:100%}
.painel-page .param-only{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--text-2);font-size:.9rem;cursor:pointer}
.painel-page .param-jump{display:flex;flex-wrap:wrap;gap:6px;flex-basis:100%}
.painel-page .param-jump a{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid var(--border);border-radius:999px;color:var(--text-2);font-size:.82rem;text-decoration:none}
.painel-page .param-jump a:hover{border-color:var(--accent);color:var(--text)}
.painel-page .param-group{scroll-margin-top:190px}
.painel-page .param-group h2{margin-bottom:2px}
.painel-page .param-group-lead{margin:0 0 6px;color:var(--muted);font-size:.9rem}
.painel-page .param-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,300px);gap:12px 32px;align-items:start;padding:18px 0;border-top:1px solid var(--border-soft)}
.painel-page .param-row.is-dirty{background:linear-gradient(90deg,rgba(25,229,126,.06),transparent 60%)}
.painel-page .param-title{margin:0;font-weight:600;color:var(--text);font-size:1rem}
.painel-page .param-badge{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;background:rgba(230,194,87,.14);color:#e6c257;font-size:.72rem;font-weight:600;vertical-align:2px}
.painel-page .param-summary{margin:4px 0 0;color:var(--text-2);font-size:.9rem;line-height:1.55;max-width:62ch}
.painel-page details.param-more{margin:6px 0 0;padding:0;border:0;background:none}
.painel-page details.param-more[open]{padding:0}
.painel-page .param-more summary{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0;color:var(--muted);font-size:.82rem;font-weight:500;list-style:none}
.painel-page .param-more summary::-webkit-details-marker{display:none}
.painel-page .param-more summary::before{content:'';width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform .2s}
.painel-page .param-more[open] summary::before{transform:rotate(45deg)}
.painel-page .param-more summary:hover{color:var(--text)}
.painel-page .param-more p{margin:4px 0 0;color:var(--muted);font-size:.84rem;line-height:1.55;max-width:70ch}
.painel-page .param-control{display:grid;gap:6px}
.painel-page .param-number{display:flex;align-items:center;gap:10px}
.painel-page .param-number input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]){width:120px;flex:none}
.painel-page .param-unit{color:var(--text-2);font-size:.9rem;white-space:nowrap}
.painel-page .param-default{margin:0;color:var(--muted);font-size:.8rem}
.painel-page .param-switch{position:relative;display:inline-flex;align-items:center;gap:12px;min-height:44px;cursor:pointer}
.painel-page .param-switch input[type=checkbox]{position:absolute;opacity:0;width:1px;height:1px}
.painel-page .param-switch-ui{position:relative;width:46px;height:26px;border-radius:999px;background:var(--surface-3,#272b35);border:1px solid var(--border-strong);transition:background-color .2s}
.painel-page .param-switch-ui::after{content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s}
.painel-page .param-switch input:checked~.param-switch-ui{background:var(--accent);border-color:var(--accent)}
.painel-page .param-switch input:checked~.param-switch-ui::after{transform:translateX(20px);background:#06140c}
.painel-page .param-switch input:focus-visible~.param-switch-ui{outline:2px solid var(--accent);outline-offset:2px}
.painel-page .param-switch-text::after{content:attr(data-off);color:var(--text-2);font-size:.9rem}
.painel-page .param-switch input:checked~.param-switch-text::after{content:attr(data-on);color:var(--text)}
.painel-page .param-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;border:0}
.painel-page .param-chips label{position:relative;cursor:pointer}
.painel-page .param-chips input{position:absolute;opacity:0;width:1px;height:1px}
.painel-page .param-chips span{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border:1px solid var(--border-strong);border-radius:999px;color:var(--text-2);font-size:.88rem}
.painel-page .param-chips input:checked+span{border-color:var(--accent);background:rgba(25,229,126,.12);color:var(--text)}
.painel-page .param-chips input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}
.painel-page .param-savebar{position:sticky;bottom:12px;z-index:6;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px 12px;margin:8px 0 24px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:rgba(17,19,24,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.painel-page .param-savebar p{margin:0 auto 0 0;color:var(--muted);font-size:.9rem}
.painel-page form.has-dirty .param-savebar{border-color:rgba(25,229,126,.45)}
.painel-page form.has-dirty .param-savebar p{color:var(--text)}
.painel-page .param-savebar #paramReset{display:none}
.painel-page form.has-dirty .param-savebar #paramReset{display:inline-flex}
@media (max-width:760px){
  .painel-page .param-row{grid-template-columns:1fr;gap:10px}
  .painel-page .param-tools{position:static}
  .painel-page .param-jump{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}
  .painel-page .param-jump a{flex:none}
  .painel-page .param-savebar{bottom:8px}
  .painel-page .param-savebar .btn{flex:1 1 auto}
}

/* Frota e elegibilidade */
.painel-page .fleet-lead{max-width:72ch;color:var(--text-2)}
.painel-page .fleet-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0 0;max-width:560px}
.painel-page .fleet-stats>div{padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--bg-2)}
.painel-page .fleet-stats dt{color:var(--muted);font-size:.8rem}
.painel-page .fleet-stats dd{margin:2px 0 0;font-family:var(--font-display,inherit);font-size:1.6rem;font-weight:600;color:var(--text)}
.painel-page .fleet-stats .is-ok dd{color:var(--accent)}
.painel-page .fleet-stats .is-warn dd{color:#e6c257}
.painel-page .fleet-list{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.painel-page .fleet-item{display:flex;flex-direction:column;gap:10px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--bg-2);border-left:3px solid var(--border)}
.painel-page .fleet-item.is-ok{border-left-color:var(--accent)}
.painel-page .fleet-item.is-bad{border-left-color:#ff4d4f}
.painel-page .fleet-item-head{display:flex;align-items:center;gap:12px;min-width:0}
.painel-page .fleet-avatar{flex:none;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:var(--surface-3,#272b35);color:var(--text);font-weight:600}
.painel-page .fleet-item-name{display:flex;flex-direction:column;min-width:0}
.painel-page .fleet-item-name a{color:var(--text);font-weight:600;text-decoration:none;overflow-wrap:anywhere}
.painel-page .fleet-item-name a:hover{color:var(--accent)}
.painel-page .fleet-item-name span{color:var(--muted);font-size:.8rem}
.painel-page .fleet-pill{align-self:flex-start;display:inline-flex;align-items:center;min-height:28px;padding:2px 10px;border-radius:999px;font-size:.8rem;font-weight:600}
.painel-page .fleet-pill.is-ok{background:rgba(25,229,126,.12);color:#8ff3bf}
.painel-page .fleet-pill.is-bad{background:rgba(255,77,79,.12);color:#ff9fa0}
.painel-page .fleet-facts{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:0;font-size:.86rem}
.painel-page .fleet-facts>div{display:contents}
.painel-page .fleet-facts dt{color:var(--muted)}
.painel-page .fleet-facts dd{margin:0;color:var(--text-2);overflow-wrap:anywhere}
.painel-page .fleet-caste{display:inline-block;padding:0 8px;border-radius:6px;background:rgba(96,165,250,.14);color:#b9d6fc;font-weight:600}
.painel-page .fleet-muted{color:var(--muted)}
.painel-page .fleet-reasons{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.painel-page .fleet-reasons li{padding:3px 9px;border-radius:6px;background:rgba(230,194,87,.1);color:#ecd48d;font-size:.78rem;line-height:1.35}
.painel-page .fleet-reasons .fleet-more{background:var(--surface-3,#272b35);color:var(--text-2)}
.painel-page .fleet-open{margin-top:auto;display:inline-flex;align-items:center;min-height:40px;color:var(--accent);font-weight:600;font-size:.88rem;text-decoration:none}
.painel-page .fleet-open::after{content:'→';margin-left:6px;transition:transform .2s}
.painel-page .fleet-open:hover::after{transform:translateX(3px)}
.painel-page .fleet-note{margin:14px 0 0;color:var(--muted);font-size:.84rem}
.painel-page .fleet-back{margin:0 0 10px}
.painel-page .fleet-back-link{display:inline-flex;align-items:center;min-height:40px;color:var(--text-2);text-decoration:none;font-size:.9rem}
.painel-page .fleet-back-link::before{content:'←';margin-right:6px}
.painel-page .fleet-detail-head{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-bottom:16px}
.painel-page .fleet-detail-head h2{margin:0}
.painel-page .fleet-detail-head .fleet-pill{margin-left:auto}
.painel-page .fleet-sub{margin:0;color:var(--muted);font-size:.84rem}
.painel-page .fleet-checklist{list-style:none;margin:8px 0 16px;padding:0;display:grid;gap:6px}
.painel-page .fleet-checklist li{position:relative;padding:10px 12px 10px 36px;border:1px solid rgba(255,77,79,.25);border-radius:8px;background:rgba(255,77,79,.06);color:var(--text)}
.painel-page .fleet-checklist li::before{content:'';position:absolute;left:14px;top:50%;width:10px;height:10px;margin-top:-5px;border-radius:50%;background:#ff4d4f}
.painel-page .fleet-allgood{padding:10px 12px;border-radius:8px;background:rgba(25,229,126,.08);color:#8ff3bf}
.painel-page .fleet-step{display:flex;align-items:center;gap:10px;margin-top:28px;padding-top:18px;border-top:1px solid var(--border-soft)}
.painel-page .fleet-step span{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;border:1px solid var(--accent);color:var(--accent);font-size:.82rem}
.painel-page .fleet-sim details{margin:0;border:0;background:none;padding:0}
.painel-page .fleet-sim summary{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:56px;padding:4px 0;list-style:none}
.painel-page .fleet-sim summary::-webkit-details-marker{display:none}
.painel-page .fleet-sim summary span{font-family:var(--font-display,inherit);font-size:1.15rem;font-weight:600;color:var(--text)}
.painel-page .fleet-sim summary span::after{content:' +';color:var(--accent)}
.painel-page .fleet-sim details[open] summary span::after{content:' −'}
.painel-page .fleet-sim summary small{color:var(--muted);font-weight:400;font-size:.86rem}
@media (max-width:640px){
  .painel-page .fleet-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .painel-page .fleet-stats dd{font-size:1.3rem}
  .painel-page .fleet-list{grid-template-columns:1fr}
  .painel-page .fleet-detail-head .fleet-pill{margin-left:0}
}
.painel-page .fleet-pill.is-warn{background:rgba(230,194,87,.12);color:#ecd48d}
.painel-page .fleet-item.is-warn{border-left-color:#e6c257}
.painel-page .fleet-mode{margin:14px 0 0;padding:12px 14px;border:1px solid rgba(96,165,250,.3);border-radius:10px;background:rgba(96,165,250,.08);color:#cfe2fd;font-size:.9rem;max-width:80ch}
.painel-page .fleet-mode a{color:#b9d6fc}
.painel-page .fleet-detail .native-scroll{overflow:visible}
.painel-page .fleet-detail .native-scroll table{min-width:0;width:100%}
.painel-page .fleet-detail .native-scroll th{width:36%;white-space:normal;vertical-align:top}
.painel-page .fleet-detail .native-scroll td{overflow-wrap:anywhere}

/* Cargas em analise */
.painel-page .cargo-lead{max-width:72ch;color:var(--text-2)}
.painel-page .cargo-rules{margin:12px 0 0;padding:0;list-style:none;display:grid;gap:6px;max-width:80ch}
.painel-page .cargo-rules li{position:relative;padding-left:18px;color:var(--text-2);font-size:.9rem}
.painel-page .cargo-rules li::before{content:'';position:absolute;left:2px;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--accent)}
.painel-page .cargo-rules b{color:var(--text)}
.painel-page .cargo-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
.painel-page .cargo-tab{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text-2);font-weight:600;text-decoration:none}
.painel-page .cargo-tab.is-on{border-color:var(--accent);color:var(--text);background:rgba(25,229,126,.08)}
.painel-page .cargo-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;padding:0 6px;border-radius:999px;background:var(--surface-3,#272b35);color:var(--text);font-size:.78rem}
.painel-page .cargo-tab.is-on .cargo-count{background:var(--accent);color:#06140c}
.painel-page .cargo-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin-bottom:12px}
.painel-page .cargo-hint{margin:0;color:var(--muted)}
.painel-page .cargo-search{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.painel-page .cargo-search input{width:260px}
.painel-page .cargo-search .btn{flex:none;white-space:nowrap}
.painel-page .cargo-clear{color:var(--text-2);font-size:.88rem}
.painel-page .cargo-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.painel-page .cargo-item{padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--bg-2)}
.painel-page .cargo-item-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin-bottom:12px}
.painel-page .cargo-title{margin:0;font-family:var(--font-display,inherit);font-size:1.1rem;font-weight:600;color:var(--text)}
.painel-page .cargo-type{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:6px;background:rgba(96,165,250,.14);color:#b9d6fc;font-family:var(--font-body,inherit);font-size:.76rem;font-weight:600;vertical-align:2px}
.painel-page .cargo-type.is-cargo{background:rgba(230,194,87,.14);color:#ecd48d}
.painel-page .cargo-reason{display:inline-flex;align-items:center;min-height:28px;padding:2px 10px;border-radius:999px;background:rgba(255,77,79,.1);color:#ff9fa0;font-size:.8rem;font-weight:600}
.painel-page .cargo-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px 16px;margin:0}
.painel-page .cargo-facts dt{color:var(--muted);font-size:.78rem}
.painel-page .cargo-facts dd{margin:2px 0 0;color:var(--text);overflow-wrap:anywhere}
.painel-page .cargo-muted{color:var(--muted)}
.painel-page .cargo-missing{color:#ecd48d}
.painel-page .cargo-decide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border-soft)}
.painel-page .cargo-decide form{display:grid;gap:10px;align-content:start;padding:14px;border-radius:10px;border:1px solid var(--border)}
.painel-page .cargo-approve{background:rgba(25,229,126,.04);border-color:rgba(25,229,126,.25)!important}
.painel-page .cargo-reject{background:rgba(255,77,79,.04);border-color:rgba(255,77,79,.25)!important}
.painel-page .cargo-decide-title{margin:0;font-weight:700;color:var(--text)}
.painel-page .cargo-decide label{display:grid;gap:6px;color:var(--text-2);font-size:.86rem}
.painel-page .cargo-decide .btn{justify-self:start}
.painel-page .cargo-decided{margin:14px 0 0;padding-top:12px;border-top:1px solid var(--border-soft);color:var(--text-2);font-size:.9rem}
.painel-page .cargo-decided span{color:var(--text)}
.painel-page .cargo-empty{padding:32px 16px;text-align:center;color:var(--muted)}
.painel-page .cargo-empty-title{margin:0 0 6px;color:var(--text);font-weight:600}
@media (max-width:760px){
  .painel-page .cargo-decide{grid-template-columns:1fr}
  .painel-page .cargo-decide .btn{justify-self:stretch}
  .painel-page .cargo-search{width:100%}
  .painel-page .cargo-search input{flex:1 1 160px;width:auto}
  .painel-page .cargo-tab{flex:1 1 auto;justify-content:center;padding:0 10px}
}
.painel-page .trip-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.painel-page .cargo-search{flex-direction:row;flex-wrap:nowrap;margin:0}
@media (max-width:760px){.painel-page .cargo-search{flex-wrap:wrap}}

/* Leads do site */
.painel-page .lead-lead{max-width:72ch;color:var(--text-2)}
.painel-page .lead-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 16px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.painel-page .lead-tools label{margin:0}
.painel-page .lead-search{flex:1 1 300px}
.painel-page .lead-search input{width:100%}
.painel-page .lead-clear{color:var(--text-2);font-size:.88rem}
.painel-page .lead-list-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 12px}
.painel-page .lead-count{margin:0;color:var(--muted);font-size:.88rem}
.painel-page .lead-list{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px}
.painel-page .lead-item{display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--bg-2)}
.painel-page .lead-item-head{display:flex;align-items:center;gap:12px;min-width:0}
.painel-page .lead-who{min-width:0}
.painel-page .lead-name{margin:0;font-weight:600;color:var(--text);overflow-wrap:anywhere}
.painel-page .lead-meta{margin:2px 0 0;color:var(--muted);font-size:.8rem}
.painel-page .lead-source{color:#8ff3bf}
.painel-page .lead-source.is-download{color:#b9d6fc}
.painel-page .lead-actions{display:flex;flex-wrap:wrap;gap:8px;margin:0}
.painel-page .lead-actions .btn{min-height:40px}
.painel-page .lead-facts{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;margin:0;font-size:.88rem}
.painel-page .lead-facts>div{display:contents}
.painel-page .lead-facts dt{color:var(--muted)}
.painel-page .lead-facts dd{margin:0;color:var(--text-2);overflow-wrap:anywhere}
.painel-page .lead-msg-text,.painel-page .lead-msg{margin:0;padding:10px 12px;border-radius:8px;background:var(--surface);color:var(--text-2);font-size:.88rem;line-height:1.55}
.painel-page details.lead-msg{border:0}
.painel-page .lead-msg summary{display:block;min-height:0;font-weight:400;cursor:pointer;list-style:none}
.painel-page .lead-msg summary::-webkit-details-marker{display:none}
.painel-page .lead-msg summary span{color:var(--accent);font-weight:600}
.painel-page .lead-msg[open] summary{display:none}
.painel-page .lead-msg p{margin:0}
@media (max-width:760px){
  .painel-page .lead-list{grid-template-columns:1fr}
  .painel-page .lead-tools label,.painel-page .lead-tools select,.painel-page .lead-tools .btn{flex:1 1 100%;width:100%}
}

/* Entregas e filas */
.painel-page .dl-lead{max-width:72ch;color:var(--text-2)}
.painel-page .dl-queues{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 12px}
.painel-page .dl-queue{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);text-decoration:none}
.painel-page .dl-queue.is-on{border-color:var(--accent);background:rgba(25,229,126,.06)}
.painel-page .dl-queue-name{color:var(--text);font-weight:600}
.painel-page .dl-queue-state{color:#8ff3bf;font-size:.84rem}
.painel-page .dl-queue-state.is-bad{color:#ff9fa0}
.painel-page .dl-states{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 12px}
.painel-page .dl-state{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 12px;border:1px solid var(--border);border-radius:10px;color:var(--text-2);text-decoration:none;font-size:.88rem}
.painel-page .dl-state b{color:var(--text);font-weight:700}
.painel-page .dl-state.is-ok b{color:#8ff3bf}
.painel-page .dl-state.is-bad b{color:#ff9fa0}
.painel-page .dl-state.is-warn b{color:#ecd48d}
.painel-page .dl-state.is-on{border-color:var(--accent);background:rgba(25,229,126,.08);color:var(--text)}
.painel-page details.dl-errors{margin:0 0 12px}
.painel-page .dl-errors ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.painel-page .dl-errors li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:8px 0;border-top:1px solid var(--border-soft);font-size:.88rem}
.painel-page .dl-errors li span{color:var(--muted)}
.painel-page .dl-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;gap:10px 12px;margin:0 0 16px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--bg-2)}
.painel-page .dl-filters label{display:grid;gap:6px;margin:0;color:var(--text-2);font-size:.84rem}
.painel-page .dl-filter-actions{display:flex;align-items:center;gap:10px}
.painel-page .dl-list{list-style:none;margin:0;padding:0;display:grid}
.painel-page .dl-item{display:grid;grid-template-columns:130px minmax(0,1fr) auto;align-items:center;gap:8px 16px;padding:12px 0;border-top:1px solid var(--border-soft)}
.painel-page .dl-badge{justify-self:start;display:inline-flex;align-items:center;min-height:26px;padding:2px 10px;border-radius:999px;font-size:.78rem;font-weight:600;background:var(--surface-3,#272b35);color:var(--text-2)}
.painel-page .dl-badge.is-ok{background:rgba(25,229,126,.12);color:#8ff3bf}
.painel-page .dl-badge.is-bad{background:rgba(255,77,79,.12);color:#ff9fa0}
.painel-page .dl-badge.is-warn{background:rgba(230,194,87,.12);color:#ecd48d}
.painel-page .dl-title{margin:0;color:var(--text);font-weight:600}
.painel-page .dl-meta{margin:2px 0 0;color:var(--muted);font-size:.8rem}
.painel-page .dl-error{margin:4px 0 0;color:#ff9fa0;font-size:.84rem}
.painel-page .dl-facts{display:flex;gap:16px;margin:0;font-size:.82rem;text-align:right}
.painel-page .dl-facts dt{color:var(--muted)}
.painel-page .dl-facts dd{margin:0;color:var(--text-2)}
@media (max-width:900px){
  .painel-page .dl-filters{grid-template-columns:1fr 1fr}
  .painel-page .dl-filter-actions{grid-column:1/-1}
}
@media (max-width:640px){
  .painel-page .dl-queues{grid-template-columns:1fr}
  .painel-page .dl-filters{grid-template-columns:1fr}
  .painel-page .dl-item{grid-template-columns:1fr}
  .painel-page .dl-facts{text-align:left}
}

/* Usuarios e empresas: busca e lista */
.painel-page .dir-lead{color:var(--text-2);max-width:72ch}
.painel-page .dir-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0 16px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--bg-2)}
.painel-page .dir-tools label{margin:0}
.painel-page .dir-search{flex:1 1 300px}
.painel-page .dir-search input{width:100%}
.painel-page .dir-who{display:flex;align-items:center;gap:12px;min-width:0}
.painel-page .dir-who b{display:block;color:var(--text);font-weight:600}
.painel-page .dir-who small{display:block;color:var(--muted);font-size:.8rem;overflow-wrap:anywhere}
.painel-page .dir-role{display:inline-block;padding:2px 10px;border-radius:999px;background:rgba(96,165,250,.12);color:#b9d6fc;font-size:.8rem;font-weight:600}
.painel-page .dir-status{display:inline-block;flex-shrink:0;white-space:nowrap;padding:2px 10px;border-radius:999px;background:var(--surface-3,#272b35);color:var(--text-2);font-size:.8rem;font-weight:600}
.painel-page .dir-status.is-on{background:rgba(25,229,126,.12);color:#8ff3bf}
.painel-page .dir-id{color:var(--muted)}
.painel-page .dir-note{color:var(--muted);font-size:.86rem}
@media (max-width:640px){.painel-page .dir-tools label,.painel-page .dir-tools select,.painel-page .dir-tools .btn{flex:1 1 100%;width:100%}}

.painel-page table.table-stack.is-stacked td>.dir-role,.painel-page table.table-stack.is-stacked td>.dir-status{justify-self:start}

/* Modalidades */
.painel-page .mod-lead{max-width:76ch;color:var(--text-2)}
.painel-page .mod-hint{margin:0 0 10px;color:var(--muted);font-size:.88rem;max-width:76ch}
.painel-page .mod-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.painel-page .mod-item{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--bg-2)}
.painel-page .mod-item.is-off{opacity:.72}
.painel-page .mod-item.is-edit{border-color:var(--accent)}
.painel-page .mod-item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.painel-page .mod-name{margin:0;font-weight:700;color:var(--text);overflow-wrap:anywhere}
.painel-page .mod-type{margin:0;color:var(--muted);font-size:.84rem}
.painel-page .mod-price{margin:4px 0;font-family:var(--font-display,inherit);font-size:1.5rem;font-weight:600;color:var(--text)}
.painel-page .mod-facts{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:0;font-size:.86rem}
.painel-page .mod-facts>div{display:contents}
.painel-page .mod-facts dt{color:var(--muted)}
.painel-page .mod-facts dd{margin:0;color:var(--text-2)}
.painel-page .mod-editor{border-color:rgba(25,229,126,.4);scroll-margin-top:90px}
.painel-page .mod-editor-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}
.painel-page .mod-editor-head h2{margin:0}
.painel-page fieldset.mod-group{margin:0 0 16px;padding:14px 16px;border:1px solid var(--border);border-radius:10px}
.painel-page .mod-group legend{padding:0 6px;font-weight:700;color:var(--text)}
.painel-page .mod-check{display:flex;align-items:center;gap:10px;min-height:44px}
.painel-page .mod-actions{display:flex;justify-content:flex-end;margin-top:8px}
.painel-page .mod-links{margin:8px 0 12px}
@media (max-width:640px){.painel-page .mod-list{grid-template-columns:1fr}.painel-page .mod-actions .btn{flex:1}}

/* Relatorio financeiro */
.painel-page .fin-lead{max-width:76ch;color:var(--text-2)}
.painel-page .fin-stats{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.painel-page .fin-filters{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,.8fr) auto}
.painel-page .fin-reason{display:block;color:var(--muted);font-size:.8rem;margin-top:2px}
.painel-page details.fin-release{margin:0;border:0;background:none;padding:0}
.painel-page .fin-release summary{display:inline-flex;align-items:center;min-height:40px;padding:0 12px;border:1px solid var(--border-strong);border-radius:8px;font-size:.84rem;list-style:none}
.painel-page .fin-release summary::-webkit-details-marker{display:none}
.painel-page .fin-release form{display:grid;gap:8px;margin-top:8px;min-width:220px}
.painel-page .fin-release label{display:grid;gap:4px;font-size:.84rem;color:var(--text-2)}
@media (max-width:900px){.painel-page .fin-filters{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.painel-page .fin-filters{grid-template-columns:1fr}}
.painel-page .fiscal-filters{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr) auto auto}
.painel-page .fiscal-real{display:flex;align-items:center;gap:8px;min-height:44px;align-self:end}
.painel-page .fiscal-detail{margin:0 0 20px;padding:16px;border:1px solid rgba(25,229,126,.35);border-radius:12px;background:var(--bg-2)}
.painel-page .fin-muted{color:var(--muted)}
@media (max-width:900px){.painel-page .fiscal-filters{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.painel-page .fiscal-filters{grid-template-columns:1fr}}
.painel-page td .dl-badge{white-space:nowrap}
.painel-page .cmd-lead{margin:6px 0 0;max-width:62ch;color:var(--text-2);font-size:.95rem}
.painel-page .cmd-block-title{margin:0 0 10px;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.painel-page .cmd-filters{padding:0;border:0;background:none}
.painel-page .cmd-filters .cmd-filter-form{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr) auto;margin:0}
.painel-page .cmd-company-search{margin-top:8px!important;font-size:.88rem}
.painel-page .cmd-company-search>summary{cursor:pointer;color:var(--accent);width:max-content;max-width:100%;padding:6px 0}
.painel-page .cmd-company-search[open]{padding:4px 14px 14px;border:1px solid var(--border);border-radius:12px;background:var(--bg-2)}
.painel-page .cmd-company-search .dir-tools{margin:8px 0;padding:0;border:0;background:none}
.painel-page .cmd-company-search>*+*{margin-top:8px}
.painel-page .cmd-section-head{align-items:flex-end}
.painel-page .cmd-hint{margin:4px 0 0;color:var(--muted);font-size:.86rem}
.painel-page .cmd-count{color:var(--muted);font-size:.9rem;white-space:nowrap}
.painel-page .cmd-trips{container-type:inline-size;list-style:none;margin:0 0 16px;padding:0;border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden}
.painel-page .cmd-trips>li{display:flex;align-items:center;gap:14px;padding:12px 16px;border-top:1px solid var(--border-soft)}
.painel-page .cmd-trips>li:first-child{border-top:0}
.painel-page .cmd-trips-head{background:var(--bg-2);color:var(--muted);font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding-top:10px!important;padding-bottom:10px!important}
.painel-page .cmd-trip:hover{background:var(--surface-2)}
.painel-page .cmd-c-id{flex:0 0 7rem;min-width:0;display:grid;gap:2px}
.painel-page .cmd-c-route{flex:2 1 0;min-width:0;display:grid;gap:2px}
.painel-page .cmd-c-who{flex:1.3 1 0;min-width:0;display:grid;gap:2px}
.painel-page .cmd-c-driver{flex:1 1 0;min-width:0}
.painel-page .cmd-c-date{flex:0 0 5.6rem;line-height:1.35;color:var(--text-2);font-size:.88rem}
.painel-page .cmd-c-status{flex:0 0 7rem}
.painel-page .cmd-c-actions{flex:0 0 11rem;display:flex;align-items:center;justify-content:flex-start;gap:6px;flex-wrap:nowrap}
.painel-page .cmd-c-actions form{margin:0}
.painel-page .cmd-trip-number{font-weight:700;color:var(--text);text-decoration:none}
.painel-page .cmd-trip-number:hover{color:var(--accent)}
.painel-page .cmd-trip-type,.painel-page .cmd-company{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.78rem}
.painel-page .cmd-company{color:var(--text-2);font-size:.86rem}
.painel-page .cmd-from,.painel-page .cmd-to,.painel-page .cmd-passenger{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.painel-page .cmd-from{color:var(--text)}
.painel-page .cmd-to{color:var(--text-2);font-size:.88rem}
.painel-page .cmd-to::before{content:"\2192\00a0";color:var(--accent)}
.painel-page .cmd-passenger{color:var(--muted);font-size:.84rem}
.painel-page .cmd-c-driver{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;color:var(--text-2)}
.painel-page .cmd-label{display:none}
.painel-page .cmd-pages{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 8px}
.painel-page .cmd-pages:empty{display:none}
.painel-page .cmd-cases{margin-top:32px}
.painel-page .cmd-cases .cmd-section-head{margin:0 0 12px}
.painel-page .cmd-case-chips{margin:0 0 12px}
.painel-page .cmd-case-filters{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,.8fr) auto}
.painel-page .cmd-case-table td .fin-reason{display:block}
.painel-page .dl-badge.is-info{background:rgba(96,165,250,.14);color:#a9cbff}
.painel-page .dl-badge.is-neutral{background:var(--surface-3,#272b35);color:var(--text-2)}
@container (max-width:980px){
  .painel-page .cmd-trips-head{display:none!important}
  .painel-page .cmd-trips>li{flex-wrap:wrap;gap:6px 14px;align-items:flex-start}
  .painel-page .cmd-c-id{flex:1 1 auto;display:flex;align-items:baseline;gap:10px}
  .painel-page .cmd-c-status{flex:0 0 auto;order:1}
  .painel-page .cmd-c-route{flex:1 1 100%;order:2}
  .painel-page .cmd-c-who{flex:1 1 100%;order:3;display:flex;flex-wrap:wrap;gap:2px 10px}
  .painel-page .cmd-c-driver,.painel-page .cmd-c-date{order:4;flex:1 1 40%}
  .painel-page .cmd-c-actions{order:5;flex:1 1 100%;justify-content:flex-start;padding-top:4px}
  .painel-page .cmd-label{display:block;color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
  .painel-page .cmd-from,.painel-page .cmd-to{white-space:normal}
}
@media (max-width:900px){
  .painel-page .cmd-filters .cmd-filter-form,.painel-page .cmd-case-filters{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .painel-page .cmd-filters .cmd-filter-form,.painel-page .cmd-case-filters{grid-template-columns:1fr}
  .painel-page .cmd-trips>li{padding:12px}
  .painel-page .cmd-c-actions .action-btn{flex:1 1 0}
  .painel-page .cmd-c-actions form{flex:1 1 0;display:flex}
  .painel-page .cmd-c-actions form .action-btn{width:100%}
}
.painel-page .cmd-trips-head>span{font-size:.72rem;color:var(--muted);line-height:1.3}
.painel-page .case-admin h2{margin:28px 0 10px;font-size:1.1rem}
.painel-page .case-status{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 6px}
.painel-page .case-next{margin:8px 0 4px;padding:12px 14px;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:10px;background:var(--bg-2);color:var(--text);max-width:72ch}
.painel-page .case-empty{color:var(--muted)}
.painel-page .case-gates{margin:0;padding:0 0 0 18px;display:grid;gap:6px;color:var(--text-2)}
.painel-page .case-docs{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:10px}
.painel-page .case-docs li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px;padding:10px 14px;border-top:1px solid var(--border-soft)}
.painel-page .case-docs li:first-child{border-top:0}
.painel-page .case-docs li a{font-weight:600;margin-right:auto}
.painel-page .case-docs li span{color:var(--muted);font-size:.84rem}
.painel-page .case-edit,.painel-page .case-rules{margin:14px 0;border:1px solid var(--border);border-radius:10px;background:var(--bg-2)}
.painel-page .case-edit>summary,.painel-page .case-rules>summary{cursor:pointer;padding:12px 14px;color:var(--accent);font-weight:600}
.painel-page .case-edit[open],.painel-page .case-rules[open]{padding:0 14px 14px}
.painel-page .case-edit[open]>summary,.painel-page .case-rules[open]>summary{padding-left:0}
.painel-page .case-rules p{color:var(--text-2);font-size:.9rem}
.painel-page .case-export{margin:24px 0 0;font-size:.88rem}
.painel-page .case-decision{margin:20px 0;padding:18px;border:1px solid rgba(25,229,126,.35);border-radius:12px;background:var(--bg-2)}
.painel-page .case-decision h2{margin-top:0}
.painel-page .case-decision fieldset{display:grid;gap:4px}
@media (min-width:900px){.painel-page .case-decision fieldset{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px}.painel-page .case-decision fieldset legend{grid-column:1/-1}}
@media (max-width:768px){.painel-page .native-scroll table:not(.table-stack):has(thead th:nth-child(2):last-child){min-width:0;width:100%}.painel-page .native-scroll table:not(.table-stack):has(thead th:nth-child(2):last-child) td{overflow-wrap:anywhere}}
@media (max-width:640px){
  .painel-page .cmd-trip-number,.painel-page .fleet-item-name>a,.painel-page .dl-errors li>a{display:inline-flex;align-items:center;min-height:40px}
  .painel-page .param-jump a.param-jump-link{min-height:40px}
}
.painel-page table.cargo-list,.painel-page table.dl-list{display:block;width:100%;min-width:0;border:0;font-size:inherit}
.painel-page table.cargo-list tbody{display:grid;gap:12px}
.painel-page table.dl-list tbody{display:grid}
.painel-page table.cargo-list td,.painel-page table.dl-list td{display:block;padding:0;border:0;background:none!important;vertical-align:top;color:inherit}
.painel-page table.cargo-list tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--bg-2)}
.painel-page table.cargo-list td:nth-child(1){align-self:center;font-family:var(--font-display,inherit);font-size:1.1rem;font-weight:600;color:var(--text)}
.painel-page table.cargo-list td:nth-child(1)::before{content:"Viagem "}
.painel-page table.cargo-list td:nth-child(2){align-self:center;justify-self:end;display:inline-flex;align-items:center;min-height:28px;padding:2px 10px;border-radius:999px;background:rgba(255,77,79,.1);color:#ff9fa0;font-size:.8rem;font-weight:600}
.painel-page table.cargo-list td:nth-child(n+3){grid-column:1/-1}
.painel-page table.dl-list tr{display:grid;grid-template-columns:130px minmax(0,1fr) auto auto;align-items:center;gap:8px 16px;padding:12px 0;border-top:1px solid var(--border-soft)}
.painel-page table.dl-list td:nth-child(3){color:var(--text-2);font-size:.86rem;white-space:nowrap}
.painel-page table.dl-list td:nth-child(3):not(:empty)::before{content:"Viagem ";color:var(--muted)}
.painel-page table.dl-list .dl-title .native-code{display:inline;margin:0 0 0 8px}
.painel-page .fin-table td:first-child{white-space:nowrap;color:var(--text);font-weight:600}
.painel-page .fin-table td:first-child::before{content:"#"}
.painel-page .fin-table td:last-child{white-space:nowrap}
@media (max-width:640px){
  .painel-page table.cargo-list tr{grid-template-columns:1fr}
  .painel-page table.cargo-list td:nth-child(2){justify-self:start}
  .painel-page table.dl-list tr{grid-template-columns:1fr}
  .painel-page table.dl-list .dl-facts{text-align:left}
}
.painel-page table.cargo-list td:nth-child(2){background:rgba(255,77,79,.1)!important}
.painel-page .fleet-actions .fin-release summary{cursor:pointer}
.painel-page .fleet-actions{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px}
.painel-page .fleet-actions .fin-release[open]{flex:1 1 320px;max-width:520px}
.painel-page .fleet-actions .fin-release form{padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--bg-2)}
.painel-page .fleet-actions .fleet-note{margin:0}
.painel-page .cmd-cancel{margin:0;padding:0;border:0;background:none}
.painel-page .cmd-cancel>summary{list-style:none;cursor:pointer;min-height:40px}
.painel-page .cmd-cancel>summary::-webkit-details-marker{display:none}
.painel-page .cmd-trip:has(.cmd-cancel[open]){flex-wrap:wrap}
.painel-page .cmd-trip:has(.cmd-cancel[open]) .cmd-c-actions{flex:1 1 100%;flex-wrap:wrap;justify-content:flex-end}
.painel-page .cmd-cancel[open]{flex:1 1 100%;text-align:right}
.painel-page .cmd-c-actions .cmd-cancel form{display:grid;gap:8px;width:100%;max-width:420px;margin:8px 0 0 auto;padding:12px;text-align:left;border:1px solid var(--border-strong);border-radius:10px;background:var(--bg-2)}
.painel-page .cmd-cancel label{display:grid;gap:4px;font-size:.84rem;color:var(--text-2)}
.painel-page .cmd-cancel-note{margin:0;color:var(--muted);font-size:.8rem}
@media (max-width:640px){.painel-page .cmd-cancel{flex:1 1 0}.painel-page .cmd-cancel>summary{width:100%}.painel-page .cmd-c-actions .cmd-cancel form{max-width:none}}
.painel-page .native-card>details>summary{flex-wrap:wrap;column-gap:10px;row-gap:2px;padding:10px 0}
.painel-page .native-card>details>summary .native-muted,.painel-page .native-card>details>summary .native-code{flex-basis:100%;margin:0;padding:0;font-weight:400;font-size:.85rem}
.painel-page .native-card>details>summary .native-code{font-size:.75rem}
.painel-page table.dir-table.is-stacked td:first-child{grid-template-columns:1fr;padding-bottom:10px}
.painel-page table.dir-table.is-stacked td:first-child::before{content:none}
@media (max-width:768px){.painel-page .native-scroll table:not(.table-stack):not(:has(thead)){min-width:0;width:100%}.painel-page .native-scroll table:not(.table-stack):not(:has(thead)) th[scope=row]{width:1%;white-space:nowrap;padding-right:16px}.painel-page .native-scroll table:not(.table-stack):not(:has(thead)) td{overflow-wrap:anywhere}}
