:root { color-scheme: dark; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; background: #000; color: #f2f4f7; }
body { margin: 0; background: #000; }
main { max-width: 760px; margin: 0 auto; padding: 20px; }
.card { background: #14171c; border: 1px solid #23272e; border-radius: 12px; padding: 14px; margin: 12px 0; }
label { display: grid; gap: 6px; margin: 10px 0; color: #9aa3ad; font-size: 14px; }
input, select, button { font: inherit; border-radius: 10px; border: 1px solid #363c46; padding: 10px; }
input, select { background: #10131a; color: #f2f4f7; }
button { background: #0f766e; border: 0; color: #fff; font-weight: 700; cursor: pointer; min-height: 44px; }
button.secondary { background: #262b33; color: #f2f4f7; }
button.danger { background: #8b2d2d; color: #fff; }
.row { display: flex; justify-content: space-between; gap: 12px; margin: 6px 0; align-items: center; }
.row.big { font-size: 17px; border-top: 1px solid #2a2f38; padding-top: 8px; }
.grid { display: grid; gap: 10px; }
.muted { color: #9aa3ad; font-size: 0.94rem; }
.error { color: #f87171; }
.success { color: #34d399; }
table { width: 100%; border-collapse: collapse; font-size: 0.94rem; }
th, td { text-align: left; border-bottom: 1px solid #23272e; padding: 8px 4px; vertical-align: top; }
th { color: #9aa3ad; font-size: 12px; }
pre { white-space: pre-wrap; background: #0a0a0a; padding: 12px; border-radius: 10px; overflow: auto; }

/* Barra superior com logo (desenho aprovado) */
.bar { display: flex; justify-content: space-between; align-items: center; gap: 8px; background: #101318; border: 1px solid #23272e; border-radius: 12px; padding: 10px 12px; margin: 12px 0; }
.brand { display: flex; align-items: center; gap: 10px; min-width: 0; }
.brand b { font-size: 17px; }
.brand small { display: block; font-weight: 400; opacity: .75; font-size: 12px; }
img.logo { height: 32px; width: auto; display: block; flex-shrink: 0; }
.login-card .logo-hero { height: 56px; width: auto; display: block; margin-bottom: 8px; }

/* Etiquetas de status (desenho aprovado) */
.tag { font-size: 12px; font-weight: 700; border-radius: 8px; padding: 2px 8px; background: #3d2f0b; color: #fbbf24; white-space: nowrap; }
.tag-approved, .tag-aprovado { background: #0f2e1c; color: #4ade80; }
.tag-correction { background: #3a1414; color: #f87171; }
.tag-open { background: #3d2f0b; color: #fbbf24; }
.tag-submitted { background: #3d2f0b; color: #fbbf24; }

/* Pagamento em botões (desenho aprovado) */
.seg-pay { display: flex; gap: 6px; margin: 4px 0; }
.seg-pay .seg { flex: 1; background: #262b33; color: #f2f4f7; border-radius: 10px; min-height: 44px; }
.seg-pay .seg.on { background: #0f766e; color: #fff; }

/* Fotos: tirar na hora ou escolher da galeria (desenho aprovado) */
.receipt-picker { display: flex; flex-direction: column; gap: 8px; border-top: 1px solid #2a2f38; padding-top: 10px; margin-top: 4px; }
.photo-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.photo-btn { flex: 1; min-width: 140px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; text-align: center; background: #262b33; color: #f2f4f7; border-radius: 10px; padding: 12px; font-size: 14px; font-weight: 700; cursor: pointer; margin: 0; }
.photo-preview .thumb-wrap { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.photo-preview .thumb { max-width: 140px; height: auto; border-radius: 8px; display: block; }
.pgcell { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.clip { background: #262b33; color: #f2f4f7; border: 0; border-radius: 8px; font-size: 12px; font-weight: 700; padding: 8px 10px; min-height: 36px; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }

@media (max-width: 420px) { .row.big { align-items: flex-start; flex-direction: column; } }

[hidden] { display: none !important; }
* { box-sizing: border-box; }
input, select { width:100%; min-width:0; }
.row > * { min-width:0; overflow-wrap:anywhere; }
.row b { flex-shrink:0; white-space:nowrap; }
.tabs { display:flex; gap:6px; margin:12px 0; flex-wrap:wrap; }
.tabs button { flex:1; background:#262b33; color:#f2f4f7; min-width:80px; }
.tabs button.on { background:#0f766e; }
.warn { background:#d97706; width:100%; }
@media(max-width:480px) { main {padding:10px;} .card {padding:12px;} table {font-size:13px;} .brand {gap:6px;} img.logo {height:24px;} .bar {padding:10px 8px;} }

.error:empty, .photo-preview:empty { display:none; }
.file-input { position:absolute; width:1px; height:1px; opacity:0; padding:0; border:0; }
.photo-btn:focus-within, .clip:focus-within { outline:2px solid #14b8a6; outline-offset:3px; }
.two { display:flex; gap:8px; } .two > label { flex:1; min-width:0; }
@media(max-width:420px) { .two { flex-wrap:wrap; } .two > label { flex-basis:100%; } }

.photo-dialog { background:#14171c; color:white; border:1px solid #363c46; border-radius:12px; max-width:94vw; max-height:94vh; }
.photo-dialog img { display:block; max-width:85vw; max-height:78vh; margin-top:10px; }
.photo-dialog::backdrop { background:#000c; }

.row > button { flex-shrink:0; white-space:nowrap; }
.photo-preview .thumb { cursor:zoom-in; }

.cad-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.cad-tabs button{min-width:0;white-space:normal;overflow-wrap:anywhere}
@media(max-width:600px){.cad-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}

.acerto-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;border-bottom:1px solid #282d34;padding:14px 0}.acerto-info{overflow-wrap:anywhere}.acerto-amount{text-align:right;display:flex;flex-direction:column;gap:5px}.acerto-amount small{color:#9ca6b2;font-size:12px}.acerto-amount strong{white-space:nowrap}.acerto-row>button{white-space:nowrap}.acertos-totais{border-top:2px solid #414b55;margin-top:22px;padding-top:10px}.acerto-total{padding:4px 0 12px}.acerto-total .row{gap:16px}.acerto-total b{white-space:nowrap}
@media(max-width:600px){.acerto-row{grid-template-columns:minmax(0,1fr) auto;gap:10px}.acerto-info{grid-column:1/-1}.acerto-amount{text-align:left}.acerto-row>button{justify-self:end}}

/* Keep native date controls within their grid track, including iOS WebKit. */
label { min-width:0; grid-template-columns:minmax(0,1fr); }
input, select, textarea { max-width:100%; }
input[type="date"] { display:block; width:100%; min-width:0; max-width:100%; min-height:44px; -webkit-appearance:none; appearance:none; text-align:left; }
input[type="date"]::-webkit-date-and-time-value { min-width:0; text-align:left; }
input[type="date"]::-webkit-datetime-edit { min-width:0; padding:0; }
input[type="date"]::-webkit-calendar-picker-indicator { flex-shrink:0; }
.grid, .card, .receipt-picker, .photo-preview { min-width:0; }
.grid { grid-template-columns:minmax(0,1fr); }
.grid > *, .two, .seg-pay, .seg-pay .seg { min-width:0; max-width:100%; }
.seg-pay .seg { padding-left:6px; padding-right:6px; }
.launch-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.launch-actions button{padding:8px;font-size:12px;min-height:36px}
.launch-dialog{width:calc(100% - 24px);max-width:520px;max-height:90vh;overflow:auto;background:#14171c;color:#f2f4f7;border:1px solid #363c46;border-radius:12px;padding:16px}.launch-dialog::backdrop{background:#000b}.launch-dialog h3{margin-top:0}.launch-dialog .photo-actions>button{flex:1;min-width:0}.launch-dialog input[readonly]{opacity:.7}
@media(max-width:600px){.rides-table thead{display:none}.rides-table,.rides-table tbody,.rides-table tr,.rides-table td{display:block;width:100%}.rides-table tr{padding:10px 0;border-bottom:1px solid #363c46}.rides-table td{border:0;padding:5px 0;overflow-wrap:anywhere}.rides-table td[data-label]::before{content:attr(data-label);display:block;color:#9aa3ad;font-size:12px;margin-bottom:3px}.rides-table .launch-actions{justify-content:flex-start}.rides-table .pgcell{gap:6px}}

.environment-banner{position:sticky;top:0;z-index:15;padding:10px 12px;border-radius:8px;font-size:14px;font-weight:800;text-align:center;letter-spacing:.03em}.environment-banner.test{background:#713f12;color:#fef08a;border:2px solid #eab308}.environment-banner.production{background:#064e3b;color:#a7f3d0;border:2px solid #10b981}

/* Fit every form and header to narrow screens without disabling user zoom. */
main,.bar,.brand,.brand>div,.card>*,section,form,details{min-width:0;max-width:100%}
.brand{flex:1}.brand>div{overflow-wrap:anywhere}.bar>#logout{flex:none}
button{max-width:100%;white-space:normal;overflow-wrap:anywhere}
input,select,textarea{font-size:16px}
input[type=date]{inline-size:100%;min-inline-size:0;max-inline-size:100%}
input[type=date]::-webkit-date-and-time-value{white-space:normal}
p,h2,h3,h4,td{overflow-wrap:anywhere}
@media(max-width:600px){main{width:100%;padding:10px}.card .card{padding:10px}.row{flex-wrap:wrap}.row>button{white-space:normal}.brand b{font-size:16px}.bar{gap:6px}.brand small{overflow-wrap:anywhere}.photo-btn{min-width:0;flex-basis:120px}.environment-banner{font-size:12px}.rides-table{table-layout:fixed}}
main{max-width:760px}
@media(max-width:360px){.seg-pay{flex-wrap:wrap}.seg-pay .seg{flex:1 1 100%;white-space:nowrap}}
.compact-ride{padding:12px 0;border-bottom:1px solid #363c46;min-width:0}.ride-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start;font-size:15px}.ride-head b{overflow-wrap:anywhere}.ride-head strong{white-space:nowrap}.ride-meta{display:flex;flex-wrap:wrap;gap:6px 14px;color:#b8c0ca;font-size:13px;margin:6px 0 8px}.ride-tools{display:flex;gap:12px;align-items:start;flex-wrap:wrap}.ride-tools>button{font-size:13px;min-height:40px;padding:8px 12px}.ride-tools>details{flex:1;min-width:110px}.ride-tools summary{cursor:pointer;padding:9px 0;color:#cbd5e1;font-size:13px;min-height:40px}.ride-details{font-size:14px;min-width:0}.ride-details p{margin:6px 0 10px}.compact-rides{min-width:0}
.ride-tools>details[open]{flex-basis:100%}.ride-tools>details[open] summary{padding-top:0}
/* Tela do motorista: proposta clean aprovada, sem alterar regras. */
.driver-day { padding: 16px; }
.driver-day>h2 { margin: 4px 0 14px; font-size: 26px; }
.driver-identity { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; color: #a7aeb9; font-size: 14px; margin-bottom: 12px; }
.date-choice { margin: 8px 0 16px; }
.date-choice>summary { display: flex; justify-content: space-between; align-items: center; min-height: 44px; font-size: 16px; cursor: pointer; }
.date-choice>summary span { color: #a7aeb9; font-size: 13px; }
.initial-km { display: flex; flex-wrap: wrap; gap: 12px; justify-content: space-between; align-items: center; }
.initial-value { display: grid; gap: 6px; }
.initial-value span { color: #a7aeb9; font-size: 12px; }
.initial-value b { font-size: 23px; }
.initial-photo, #initialEditFields { width: 100%; }
#driverWork>.launch-actions { display: grid; gap: 10px; margin-top: 18px; }
#driverWork>.launch-actions button { width: 100%; min-height: 48px; }
#closeDay.warn { background: #262b33; }
.clean-summary { border: 0; padding: 0; background: transparent; }
.clean-summary>h4 { font-size: 18px; margin: 24px 0 12px; }
.clean-summary .compact-ride { background: #1c2027; border: 1px solid #30353e; border-radius: 14px; padding: 16px; margin: 10px 0; }
.day-expenses, .day-details { border: 1px solid #30353e; background: #1c2027; border-radius: 14px; padding: 12px 16px; margin-top: 14px; }
.day-expenses>summary, .day-details>summary { cursor: pointer; min-height: 44px; display: flex; align-items: center; justify-content: space-between; gap: 10px; font-weight: 600; }
.day-expenses>summary span { font-size: 12px; color: #a7aeb9; font-weight: 400; }
.day-details>summary::after { content: '⌄'; color: #a7aeb9; }
.day-details[open]>summary::after { content: '⌃'; }
.day-expenses .expense-entry { background: transparent; border: 0; padding: 0; }
#driverWork>.launch-actions { grid-template-columns: minmax(0,1fr); justify-content: stretch; }
#driverWork>.launch-actions button { font-size: 15px; }

/* Identidade Nano Banana aprovada: somente apresentação. */
.taxi-identity{background:#000;border-bottom:3px solid #facc15;overflow:hidden;max-width:100%;margin:12px 0}
.taxi-checker{height:20px;background-color:#facc15;background-image:conic-gradient(#080808 25%,transparent 0 50%,#080808 0 75%,transparent 0);background-size:20px 20px}
.taxi-wordmark{display:flex;align-items:flex-start;gap:18px;padding:24px 20px 8px;max-width:100%}
.taxi-wordmark>img{width:190px;height:auto;display:block;max-width:65%;flex-shrink:1}
.taxi-wordmark>span{font-size:32px;font-weight:750;letter-spacing:1px;line-height:1;margin-top:33px;color:#facc15;white-space:nowrap}
.taxi-art{display:block;width:220px;height:auto;margin:0 auto 14px;max-width:90%}
.login-card{overflow:hidden;padding:20px;max-width:420px;margin:16px auto}
.login-card>.taxi-identity{margin:-20px -20px 26px;max-width:none;border-radius:12px 12px 0 0}
.login-card>h1{font-size:24px;margin:0 0 22px}
.login-card>#login{width:100%;margin-top:10px}
.taxi-identity.compact .taxi-checker{height:12px;background-size:12px 12px}
.taxi-identity.compact .taxi-wordmark{gap:10px;padding:12px 20px 6px}
.taxi-identity.compact .taxi-wordmark>img{width:120px}
.taxi-identity.compact .taxi-wordmark>span{font-size:20px;margin-top:21px}
.taxi-identity.compact .taxi-art{width:190px;margin-bottom:10px}
@media(max-width:360px){.login-card .taxi-wordmark{gap:12px;padding-left:16px;padding-right:16px}.login-card .taxi-wordmark>img{width:170px}.login-card .taxi-wordmark>span{font-size:28px;margin-top:29px}}
/* Motorista: carro pequeno à direita e alto, cabeçalho compacto aprovado. */
.taxi-identity.compact{position:relative;min-height:114px}
.taxi-identity.compact .taxi-wordmark{padding-right:145px}
.taxi-identity.compact .taxi-art{width:110px;position:absolute;right:20px;top:25px;margin:0}
@media(max-width:360px){.taxi-identity.compact .taxi-wordmark{padding-left:12px;padding-right:120px;gap:6px}.taxi-identity.compact .taxi-wordmark>img{width:105px}.taxi-identity.compact .taxi-wordmark>span{font-size:18px;margin-top:18px}.taxi-identity.compact .taxi-art{right:10px;width:100px}}
.day-expenses>h4{font-size:17px;margin:4px 0 12px}.day-expenses table td{overflow-wrap:anywhere}.day-expenses table td:nth-child(2){white-space:nowrap}.add-expense-box{margin-top:12px;border-top:1px solid #30353e;padding-top:8px}.add-expense-box>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600;color:#a7aeb9}
@media(max-width:360px){.day-expenses table td{padding:8px 3px;font-size:12px}.day-expenses table td:first-child{white-space:normal;overflow-wrap:normal}.day-expenses .launch-actions{gap:4px}.day-expenses button{padding:8px}}
.pending-day{border-top:1px solid #30353e;padding-top:12px;margin-top:16px}.pending-day>.row{flex-wrap:wrap}.pending-items{margin:12px 0}.pending-item{display:flex;gap:10px;justify-content:space-between;border-bottom:1px solid #23272e;padding:12px 0}.pending-item>div{display:grid;gap:4px;min-width:0;overflow-wrap:anywhere}.pending-item small,.pending-item span{font-size:13px;color:#a7aeb9}.pending-item strong{white-space:nowrap}.closing-history>summary{cursor:pointer;font-weight:700;min-height:32px;display:flex;align-items:center}
.inline-info{margin:2px 0 6px}.inline-info>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:center;width:44px;height:44px;font-size:23px;color:#a7aeb9;border-radius:10px;background:#262b33}.inline-info>summary::-webkit-details-marker{display:none}.inline-info[open]>summary{color:#fbbf24}.inline-info p{margin:8px 0}.photo-info{margin-top:0}[data-slot="initial"]{position:relative;padding-top:12px;gap:4px}[data-slot="initial"] .photo-info{position:absolute;top:2px;right:0}[data-slot="initial"]:has(.photo-info[open]) .photo-info{position:static}[data-slot="initial"]>b{padding-right:48px;min-height:36px;display:flex;align-items:center}[data-slot="initial"] .photo-btn{min-width:90px;margin:4px 0}[data-slot="initial"] .error:empty,[data-slot="initial"] .photo-preview:empty,#feedback:empty{display:none}

/* Carro apenas no rodapé do login, sem mudar o motorista. */
.login-card>.taxi-identity .taxi-wordmark{padding-bottom:20px}.login-car-footer{background:#000;margin:22px -20px -20px;padding:10px 20px 0;border-top:3px solid #facc15}.login-car-footer .taxi-art{width:220px;margin:0 auto;max-width:90%}
.login-card>.login-car-footer{width:calc(100% + 40px);max-width:none;display:block}
/* Motorista: proposta aprovada em23/10, apresentação apenas. */
.modern-driver{--driver-muted:#b1bbc6;padding-bottom:calc(116px + env(safe-area-inset-bottom,0px));color:#f7f8fa}
.modern-driver .driver-wordmark{min-height:0;padding:0;border-bottom:2px solid #facc15;margin:12px 0 0}
.modern-driver .driver-wordmark .taxi-art{display:none}.modern-driver .driver-wordmark .taxi-checker{height:8px}
.modern-driver .driver-wordmark .taxi-wordmark{padding:12px 16px;align-items:center;justify-content:space-between;gap:16px}.modern-driver .driver-wordmark .taxi-wordmark>img{width:114px}.modern-driver .driver-wordmark .taxi-wordmark>span{font-size:25px;margin:0}
.modern-driver>.bar{margin-top:0;border-radius:0 0 12px 12px;border-top:0;background:#000}
.modern-driver .driver-day{position:relative;border:0;padding:16px 6px;background:transparent}
.modern-driver .driver-day>h2{font-size:28px;margin:8px 56px 16px 0}.modern-driver .driver-help{position:absolute;top:14px;right:0;margin:0}.modern-driver .driver-help[open]{position:static}
.modern-driver button,.modern-driver summary,.modern-driver .photo-btn{min-height:48px}.modern-driver button{font-size:15px;border-radius:12px}
.modern-driver .muted,.modern-driver .driver-identity,.modern-driver label{color:var(--driver-muted)}
.modern-driver .initial-km{background:#171b20;border-color:#303740;border-radius:16px;padding:16px}.modern-driver .initial-value b{font-size:20px}.modern-driver .initial-value span{font-size:13px}
.modern-driver .compact-ride{border-color:#303740;background:#171b20;border-radius:16px;padding:16px}.modern-driver .ride-head{font-size:16px}.modern-driver .ride-meta{color:var(--driver-muted);font-size:13px;margin:8px 0 12px}
.modern-driver .ride-tools>button{min-height:48px}.modern-driver .ride-tools summary{padding:12px 0;min-height:48px}
.modern-driver .day-expenses{position:relative;background:#171b20;border-color:#303740;border-radius:16px}.modern-driver .day-expenses>h4{margin:6px 112px 18px 0}.modern-driver .add-expense-shortcut{position:absolute;right:12px;top:8px;font-size:13px}.modern-driver .add-expense-box>summary{font-size:14px}
.driver-dock{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,720px);max-width:100%;z-index:12;background:#11151a;border-top:1px solid #303740;padding:14px 20px calc(12px + env(safe-area-inset-bottom,0px))}.dock-actions{display:flex;gap:10px}.dock-actions>button{flex:1;min-width:0;min-height:48px;margin:0;font-size:15px;padding:10px 8px;width:auto}.dock-actions>#insertNewRide,.dock-actions>#addRide{flex:1.35;background:#facc15;color:#111}.dock-actions>#insertSubmittedRide{background:#facc15;color:#111}.dock-actions>#closeDay,.dock-actions>#backRides,.dock-actions>#cancelNewRide{background:#242b33;color:#f7f8fa}.dock-actions>#submitDay{background:#0f766e}.driver-dock>small{display:block;text-align:center;color:#b1bbc6;font-size:11px;margin-top:10px}
.modern-driver #driverWork>.launch-actions:empty{display:none}.modern-driver #newRideForm{position:relative;background:transparent;border:0;padding:8px 0;margin:0;scroll-margin-top:60px}.modern-driver #newRideForm h3{font-size:26px;margin:12px 52px 20px 0}.modern-driver .ride-help{position:absolute;right:0;top:12px}.modern-driver .ride-help[open]{position:static}
.modern-driver input,.modern-driver select{min-height:48px;border-radius:12px;background:#101419}.modern-driver label{margin:8px 0;font-size:14px}.modern-driver .field-caption{font-size:14px;color:#b1bbc6;margin-top:4px}
.modern-driver .seg-pay{flex-wrap:nowrap;gap:8px}.modern-driver .seg-pay .seg{flex:1 1 0;font-size:14px;min-height:48px}.modern-driver .seg-pay .seg.on{background:#facc15;color:#111}
.modern-driver .two.km-pair{flex-wrap:nowrap;gap:12px}.modern-driver .two.km-pair>label{flex:1 1 0;min-width:0}.modern-driver #rideKmDiff{color:#facc15;font-size:14px;font-weight:600;margin:4px 0}
.modern-driver [data-slot="receipt"]{background:#171b20;border:1px solid #303740;border-radius:16px;padding:14px;position:relative}.modern-driver [data-slot="receipt"]>b{font-size:14px;padding-right:48px;min-height:40px;display:flex;align-items:center}.modern-driver [data-slot="receipt"]>.inline-info{position:absolute;right:10px;top:10px}.modern-driver [data-slot="receipt"]>.inline-info[open]{position:static}.modern-driver [data-slot="receipt"] .photo-btn{flex:1 1 0;min-width:0}
.modern-driver[data-driver-mode="ride"] .driver-day>.initial-km,.modern-driver[data-driver-mode="ride"] #driverWork>.day-summary,.modern-driver[data-driver-mode="ride"]>.pending-launches,.modern-driver[data-driver-mode="ride"]>.closing-history,.modern-driver[data-driver-mode="ride"] .driver-day>.date-choice,.modern-driver[data-driver-mode="ride"] .driver-day>h2,.modern-driver[data-driver-mode="ride"] .driver-identity{display:none}
.modern-driver.driver-keyboard-open{padding-bottom:0}.modern-driver.driver-keyboard-open>.driver-dock{position:static;transform:none;width:100%;margin-top:14px;padding-bottom:14px}
.modern-driver button:focus-visible,.modern-driver summary:focus-visible{outline:2px solid #facc15;outline-offset:3px}
@media(min-width:760px){.driver-dock{border:1px solid #303740;border-radius:16px 16px 0 0}.modern-driver #newRideForm{max-width:520px;margin:auto}}
@media(max-width:360px){.driver-dock{padding-left:12px;padding-right:12px}.dock-actions>button{font-size:14px}.modern-driver .day-expenses{padding:12px}.modern-driver .day-expenses>h4{font-size:16px;margin-right:104px}.modern-driver .day-expenses button{font-size:12px}.modern-driver .initial-km{padding:12px;gap:10px}.modern-driver .initial-value b{font-size:18px}}
.modern-driver .driver-help[open]{clear:both}.modern-driver .driver-day>#feedback{padding-right:52px}.modern-driver[data-driver-mode="ride"] .driver-day>.driver-help{display:none}.modern-driver .ride-date{font-size:13px;margin:0 52px 16px 0}.modern-driver #newRideForm h3{margin-bottom:6px}
.modern-driver #driverWork:has(#newRideForm:not([hidden]))>.day-summary{display:none}.modern-driver #driverWork:has(#newRideForm:not([hidden])) .add-expense-box{display:none}
.modern-driver .driver-day,.modern-driver #driverClose{scroll-margin-bottom:130px}.modern-driver .ride-date{display:block}.modern-driver .dock-actions>button{scroll-margin-top:70px}.modern-driver .driver-day>h2:has(+.driver-help[open]){margin-bottom:6px}
/* Manager visual: scoped, no financial or permission changes */
.modern-manager{max-width:1000px}.modern-manager input,.modern-manager select{font-size:16px;min-height:48px}.modern-manager button{min-height:48px;border-radius:12px}.modern-manager .manager-heading{position:relative;padding:12px 0 20px}.manager-heading h2{font-size:30px;margin:4px 0}.manager-heading>.inline-info{position:absolute;right:0;top:12px}.manager-heading>.inline-info[open]{position:relative}.manager-heading>p{margin:6px 0}.manager-attention strong{font-size:24px}.manager-attention p{margin-bottom:0}.manager-filters{display:grid;grid-template-columns:1fr 1fr;gap:12px}.manager-status-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.manager-status-tabs button{flex:1;padding:10px;font-size:14px}.modern-manager .on,.modern-manager .primary,.modern-manager #approve{background:#facc15;color:#101010}.manager-extra-filter{max-width:360px}.modern-manager .acerto-row{background:#171b20;border:1px solid #303740;border-radius:16px;padding:18px;margin:14px 0;gap:14px}.modern-manager .acerto-amount strong{font-size:28px}.modern-manager .acerto-info{min-width:0}.modern-manager .acerto-info p{line-height:1.5}.modern-manager .review-hero strong{display:block;font-size:34px;margin-top:10px}.modern-manager .review-hero small{font-size:14px}.modern-manager .review-math .row,.modern-manager #dayReview>.card>.row{padding:12px 0;border-bottom:1px solid #303740;gap:20px;align-items:start}.modern-manager .review-math .row span{color:#b1bbc6}.modern-manager .review-math .row b{text-align:right}.modern-manager .review-actions{display:flex;gap:12px;margin:20px 0}.review-actions button{flex:1}.modern-manager .review-details>summary{min-height:48px;font-weight:700}.modern-manager #dayReview>.muted{line-height:1.5}.modern-manager .cad-tabs{display:grid;grid-template-columns:repeat(3,1fr)}
@media(max-width:600px){.modern-manager .acerto-row{display:grid;grid-template-columns:1fr auto}.modern-manager .acerto-info{grid-column:1/-1}.modern-manager .acerto-row>button{align-self:end}.modern-manager .acerto-amount{max-width:none}.modern-manager .manager-status-tabs{display:grid;grid-template-columns:1fr 1fr}.modern-manager .manager-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.modern-manager .row span,.modern-manager .row b{overflow-wrap:anywhere;min-width:0}.modern-manager .row b{flex-shrink:0;max-width:55%}.modern-manager .cad-tabs button{padding:8px;font-size:13px}.modern-manager .table-wrap{overflow-x:auto}}
.modern-manager .tabs button.on{background:#facc15;color:#101010}.modern-manager .manager-extra-filter{margin:12px 0}.modern-manager .manager-extra-filter summary{min-height:44px;display:flex;align-items:center;color:#b1bbc6;cursor:pointer}.modern-manager .review-math .row,.modern-manager #dayReview>.card>.row{display:grid;grid-template-columns:minmax(0,1fr) auto}.modern-manager .review-math .row b,.modern-manager #dayReview>.card>.row b{max-width:none}.modern-manager [data-cadpanel] table button{min-width:58px;padding:8px;font-size:13px;word-break:normal;overflow-wrap:normal}
@media(max-width:350px){.modern-manager .review-math .row,.modern-manager #dayReview>.card>.row{grid-template-columns:1fr;gap:6px}.modern-manager .review-math .row b,.modern-manager #dayReview>.card>.row b{text-align:left}}
/* Dedicated driver launches screen, TESTE-first UI. */
.launch-filters{display:grid;grid-template-columns:1fr 1fr;gap:12px}.launch-filters>label:last-child{grid-column:1/-1}.driver-launches-screen{min-width:0}.driver-launches-screen h2{font-size:28px}.driver-launches-screen .pending-launches{padding:0;border:0;background:none;box-shadow:none}.driver-launches-screen .pending-item strong{align-self:start}.dock-actions>#showDriverLaunches{font-size:13px;line-height:1.2;background:#242b33;color:#f7f8fa}.modern-driver[data-driver-mode="launches"] .driver-dock{position:fixed}.launch-filters input,.launch-filters select{width:100%;min-width:0;font-size:16px}.launch-filters label{min-width:0}@media(max-width:350px){.launch-filters{grid-template-columns:1fr}.launch-filters>label:last-child{grid-column:auto}.dock-actions>#showDriverLaunches{font-size:12px}.dock-actions>button{padding:10px 5px;font-size:13px}}
.dock-actions{flex-wrap:wrap}.dock-actions>#showDriverLaunches{flex:0 0 100%;order:2;font-size:14px;min-height:40px;padding:8px;white-space:nowrap}.modern-driver{padding-bottom:calc(166px + env(safe-area-inset-bottom,0px))}
.ride-date-control{margin:8px 0 18px;max-width:420px}.ride-date-control label{font-size:14px}.ride-date-control input{font-size:16px;min-height:44px;min-width:0;max-width:100%;box-sizing:border-box}.ride-date-control button{font-size:14px;padding:9px 14px;min-height:44px}.ride-date-control p{font-size:13px;line-height:1.4}.modern-driver[data-driver-mode="ride"] .ride-date-control{margin-right:0}
.driver-date-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.driver-date-bar>.brand{grid-column:1/-1}.header-day-choice{display:flex;gap:10px;align-items:center;min-width:0}.header-day-choice>strong{font-size:16px;white-space:nowrap}.header-day-choice>button{font-size:13px;min-height:46px;padding:9px 10px;white-space:nowrap}.driver-date-bar>#logout{min-height:46px;font-size:14px;padding:10px 12px}.header-date-controls{grid-column:1/-1;border-top:1px solid #303740;padding-top:10px}.header-date-controls input{width:100%;box-sizing:border-box;min-width:0}.header-date-controls[hidden]{display:none}.modern-driver .driver-day>h2{margin-top:8px}@media(max-width:350px){.header-day-choice{gap:7px}.header-day-choice>strong{font-size:14px}.header-day-choice>button{font-size:12px;padding:9px 8px}.driver-date-bar>#logout{font-size:13px;padding:10px}}
.dock-actions>#showSentClosings{flex:0 0 100%;order:3;background:#0f766e;color:white;font-size:14px;min-height:40px;padding:8px}.modern-driver{padding-bottom:calc(216px + env(safe-area-inset-bottom,0px))}.sent-closings-screen h2{font-size:26px}.sent-closing-row{margin-top:12px}.sent-closings-screen .day-summary>h3{font-size:20px;overflow-wrap:anywhere}

/* Recebimentos brutos separados do repasse do acerto. */
.modern-manager .review-receipts .receipt-cash{border:1px solid #facc15;border-radius:12px;background:#26240f;padding:0 12px;margin:12px 0}
.modern-manager .review-receipts .receipt-cash .row{border-bottom:0}
.modern-manager .review-receipts .receipt-cash span,.modern-manager .review-receipts .receipt-cash b{color:#facc15;font-weight:700}
.modern-manager .review-receipts .receipt-cash .row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;padding:12px 0}
@media(max-width:350px){.modern-manager .review-receipts .receipt-cash .row{grid-template-columns:1fr;gap:6px}}

.modern-manager .review-hero>.review-receipts{margin-top:20px;border-top:1px solid #303740;padding-top:8px}
.modern-manager .review-hero .review-receipts>.row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:12px 0;border-bottom:1px solid #303740}
.modern-manager .review-hero .receipt-rates{line-height:1.7;border-top:1px solid #303740;padding-top:12px}
@media(max-width:350px){.modern-manager .review-hero .review-receipts>.row{grid-template-columns:1fr;gap:6px}}

/* Conferência compacta, mantendo valores e taxas visíveis. */
.modern-manager .compact-status{display:inline-block;border:1px solid #6c5d1e;background:#302b14;color:#facc15;border-radius:20px;padding:7px 10px;font-size:12px;font-weight:700}
.modern-manager .compact-review .compact-caption{font-size:14px;color:#b1bbc6;margin:16px 0 8px}
.modern-manager .compact-review>strong{font-size:40px;margin:0 0 18px;line-height:1.1}
.modern-manager .compact-review>.review-receipts{border-top:0;padding-top:0;margin-top:0}
.modern-manager .compact-review h3{font-size:18px}
.modern-manager .compact-rate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;border-top:1px solid #303740;margin-top:12px;padding-top:12px}
.modern-manager .compact-rate-grid span{font-size:12px;color:#b1bbc6;display:block}
.modern-manager .compact-rate-grid b{font-size:18px;display:block;margin-top:4px}
.modern-manager .compact-disclosure{padding:4px 18px}
.modern-manager .compact-disclosure>summary{min-height:48px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:700}
.modern-manager .compact-disclosure>summary>span{font-size:12px;color:#b1bbc6;font-weight:400}
.modern-manager .compact-disclosure>summary::after{content:'+';color:#facc15;font-size:22px}
.modern-manager .compact-disclosure[open]>summary::after{content:'−'}

.modern-manager .compact-km>b{display:block;font-size:18px;margin:6px 0}.modern-manager .compact-km p{font-size:14px;line-height:1.5;margin-bottom:0}.modern-manager .compact-km>.compact-caption{font-size:14px;color:#b1bbc6}
