:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;color:#14272d;background:#f3f7f6;font-synthesis:none;--ink:#132b31;--muted:#7a8d91;--accent:#0eae7f;--deep:#071f24;--border:#dfe8e7;--red:#e25464;--gold:#d69d36;--panel:#fff;--radius:17px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #9fe6d0;outline-offset:2px}.hidden{display:none!important}a{color:var(--accent)}.muted{color:var(--muted)}.overline{font-weight:850;letter-spacing:1.9px;font-size:11px;color:#42ce9d}.hint{color:#869b9c;font-size:12px}.splash{display:grid;place-content:center;text-align:center;min-height:100vh;color:#eee;background:var(--deep);gap:9px}.splash b{font-size:24px}.splash b span{color:#50d8aa}.splash p{color:#97b6b5}.splash-logo{margin:auto;background:#16493e;border-radius:22px;width:70px;height:70px;font-size:47px;color:#5df2be}.login-screen{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:#f8fcfa}.login-card{max-width:490px;width:100%;align-self:center;justify-self:center;padding:50px}.login-card h1{font-size:clamp(32px,3.7vw,52px);line-height:1.12;letter-spacing:-2px;margin:20px 0}.login-card h1 em{font-style:normal;color:var(--accent)}.login-card .stack{margin-top:28px}.logo-round{width:65px;height:65px;border-radius:20px;background:#0b292b;color:#62e8b2;display:grid;place-items:center;font-size:39px;margin-bottom:30px}.login-side{background:radial-gradient(circle at 76% 20%,#18786666,transparent 50%),#09282e;color:white;display:flex;flex-direction:column;justify-content:center;padding:clamp(40px,8vw,110px)}.login-side h2{font-size:clamp(27px,3vw,48px);max-width:570px;line-height:1.16;letter-spacing:-1.5px}.login-side>p{color:#a2c7bf;max-width:480px;line-height:1.8}.tag{display:inline-block;width:max-content;background:#145442;color:#94f4cd;padding:9px 13px;border:1px solid #286e57;border-radius:30px;font-size:11px;font-weight:850;letter-spacing:1px}.mini-stats{display:flex;gap:20px;flex-wrap:wrap;margin-top:60px}.mini-stats>div{min-width:115px;display:flex;flex-direction:column;gap:5px}.mini-stats strong{font-size:22px}.mini-stats small{color:#89bbb2}.app-shell{display:flex;min-height:100vh}.sidebar{position:sticky;top:0;background:#092329;color:#c0d7d2;width:249px;flex:0 0 249px;height:100vh;padding:25px 15px;display:flex;flex-direction:column}.identity{display:flex;align-items:center;gap:10px;padding:0 10px 25px;border-bottom:1px solid #24454b}.identity .mark{width:39px;height:39px;border-radius:12px;display:grid;place-items:center;background:#1c725a;color:#64f0b8;font-size:28px;font-weight:900}.identity b{display:block;color:#f3faf8;font-size:15px;letter-spacing:-.6px}.identity b span{color:#49d5a3}.identity small{display:block;color:#78a29e;font-size:8px;letter-spacing:1.35px;margin-top:4px}.sidebar-nav{margin-top:27px;display:grid;gap:5px}.nav-link{border:0;background:transparent;display:flex;align-items:center;text-align:left;gap:13px;color:#91aca9;font-size:13px;font-weight:690;padding:13px;border-radius:11px}.nav-link:hover,.nav-link.active{background:#13463c;color:#63e6b6}.nav-icon{font-size:19px;min-width:22px;text-align:center}.sidebar-bottom{margin-top:auto;border-top:1px solid #24454b;padding:20px 8px 0;display:grid;gap:10px}.syncbox{font-size:12px;color:#c4ddda;display:flex;align-items:center;gap:8px}.sync-dot{width:9px;height:9px;background:#36daa6;border-radius:50%;box-shadow:0 0 0 4px #224b43}.sidebar-hint{color:#6e9d99;font-size:11px}.app-body{flex:1;min-width:0}.topbar{min-height:123px;display:flex;justify-content:space-between;align-items:center;padding:25px clamp(20px,3vw,48px);gap:20px;background:#fff;border-bottom:1px solid var(--border)}.breadcrumb{color:#8ca4a1;font-size:10px;letter-spacing:1.45px;font-weight:800}.topbar h1{font-size:clamp(23px,2.1vw,31px);margin:8px 0 0;letter-spacing:-1px}.topbar-actions{display:flex;gap:14px;align-items:center}.today-chip{font-size:12px;color:#7b918f;padding-right:5px}.avatar{border:1px solid #d6eee5;background:#dff5ec;color:#168365;border-radius:50%;width:38px;height:38px;font-size:12px;font-weight:900}.content{padding:27px clamp(18px,3vw,45px) 80px;max-width:1590px;margin:auto}.btn{border:1px solid var(--border);border-radius:10px;padding:11px 16px;background:#fff;color:#344c50;font-size:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.btn:hover{filter:brightness(.97)}.btn-primary{color:#fff;background:#0d9f78;border-color:#0d9f78;box-shadow:0 8px 18px #18b28226}.btn-dark{color:white;background:#102e33;border-color:#102e33}.btn-outline{color:#27836a;background:#edfbf6;border-color:#bde6d7}.btn-danger{color:#cf5364;background:#fff3f4;border-color:#f8d3d9}.btn-small{padding:7px 10px;font-size:11px}.wide{width:100%}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 18px #16423906;padding:21px;min-width:0}.card h2,.card h3{margin:0 0 17px}.card h2{font-size:16px;letter-spacing:-.35px}.card h3{font-size:14px}.section-bar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin:26px 0 12px}.section-bar h2{font-size:17px;letter-spacing:-.4px;margin:0}.section-bar p{color:var(--muted);font-size:12px;margin:4px 0 0}.summary-banner{background:linear-gradient(110deg,#0c3031 0%,#0f5848 100%);border-radius:19px;padding:30px;color:#f2fff9;position:relative;overflow:hidden;min-height:150px;display:flex;align-items:center;justify-content:space-between;gap:10px}.summary-banner:after{content:'↗';position:absolute;right:28%;font-size:240px;top:-80px;color:#d3fff00c}.summary-banner strong{font-size:26px;letter-spacing:-.7px}.summary-banner p{color:#b4dcd1;font-size:13px;max-width:440px;line-height:1.6}.banner-pill{border:1px solid #75c4ac;background:#235d4e;color:#ccfae6;font-size:12px;border-radius:22px;padding:9px 12px;white-space:nowrap}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:16px}.kpi{padding:19px 20px}.kpi-top{display:flex;justify-content:space-between;gap:6px;align-items:center;color:#849797;font-size:12px;font-weight:750}.kpi-icon{width:30px;height:30px;background:#e5f7ef;display:grid;place-items:center;border-radius:9px;color:#14976e;font-size:17px}.kpi-value{font-weight:880;letter-spacing:-1px;font-size:clamp(21px,2.2vw,31px);margin:11px 0 5px;white-space:nowrap}.kpi-sub{color:#98aaa7;font-size:11px}.green{color:#109a70!important}.red{color:#d85a69!important}.amber{color:#d5942a!important}.blue{color:#2a8bc0!important}.cols{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:15px;margin-top:16px}.cols-even{grid-template-columns:1fr 1fr}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:9px;flex-wrap:wrap;margin-bottom:15px}.panel-title h2{margin:0}.soft{font-size:11px;color:#859a99}.row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #ecf2f1;font-size:12px}.row:last-child{border:0}.row b{font-size:12px}.empty{color:#90a39f;font-size:13px;padding:28px 10px;text-align:center}.muted-box{border:1px dashed #cbdcd8;background:#f9fcfb;border-radius:13px;padding:17px;color:#7d9892;font-size:12px;line-height:1.6}.progress{background:#e9f3ef;height:9px;border-radius:10px;overflow:hidden}.progress span{display:block;height:100%;background:linear-gradient(90deg,#16a376,#68d7a4);border-radius:9px}.progress-caption{display:flex;justify-content:space-between;margin:10px 0;font-size:12px}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;min-width:630px;font-size:12px}.data-table th{text-align:left;text-transform:uppercase;font-size:10px;letter-spacing:.8px;color:#91a3a0;padding:13px 10px;background:#f8fbfa;white-space:nowrap}.data-table td{padding:13px 10px;border-bottom:1px solid #eef3f1;white-space:nowrap;color:#445d60}.data-table tbody tr:last-child td{border:0}.mini-tag{border-radius:25px;padding:5px 9px;background:#e7f8f0;color:#188c66;font-size:11px;font-weight:750;display:inline-flex}.mini-tag.loss{background:#fff0f2;color:#d85967}.table-actions{display:flex;gap:5px}.filter-strip{display:flex;gap:8px;align-items:end;flex-wrap:wrap;margin:0 0 15px}.filter-strip label{min-width:135px}.filter-strip select,.filter-strip input{min-width:130px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.span-all{grid-column:1/-1}label{display:block;color:#536d6b;font-size:12px;font-weight:730}input,select,textarea{width:100%;display:block;margin-top:6px;padding:12px 11px;min-height:43px;border:1px solid #d6e4e0;border-radius:10px;background:#fff;color:#214247;font-size:13px;outline:0}input:focus,select:focus,textarea:focus{border-color:#36c19c;box-shadow:0 0 0 3px #66d8b22a}textarea{min-height:85px;resize:vertical}.stack{display:grid;gap:14px}.stack label{width:100%}.form-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px}.form-hint{margin-top:15px;color:#7e9694;font-size:12px;line-height:1.6}.modal-mask{position:fixed;inset:0;background:#092221b9;z-index:10;display:flex;align-items:center;justify-content:center;padding:18px}.modal{background:#fff;border-radius:18px;padding:25px;max-width:640px;width:100%;max-height:calc(100vh - 36px);overflow:auto;box-shadow:0 30px 70px #0003}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.modal-head h2{font-size:20px;margin:0;letter-spacing:-.5px}.icon-x{border:0;background:#eef5f2;border-radius:9px;font-size:22px;color:#768e8a;width:34px;height:34px}.field-help{font-size:11px;color:#9aa9a6;margin-top:3px}.vehicle-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.vehicle-header{display:flex;gap:13px;align-items:center}.vehicle-icon{width:48px;height:48px;border-radius:14px;background:#ddf5eb;color:#14936e;display:grid;place-items:center;font-size:24px}.vehicle-name{font-size:16px;font-weight:850}.small{font-size:12px}.vehicle-detail{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0;font-size:12px}.vehicle-detail span{color:#8c9c9a;display:block;font-size:10px;margin-bottom:4px}.vehicle-detail b{font-weight:800}.shift-on{border:1px solid #b7e6d5;background:#effcf6;border-radius:13px;padding:17px}.shift-on h2{margin:8px 0}.shift-on .row{border-color:#cde8da}.pill{display:inline-block;border-radius:99px;padding:5px 9px;background:#ebf5f2;color:#40876c;font-size:11px;font-weight:800}.pill.warning{color:#b67c13;background:#fff5da}.pill.gray{color:#687b79;background:#f1f5f4}.chart{display:flex;gap:9px;align-items:flex-end;height:210px;margin-top:16px;border-bottom:1px solid #e6efec;overflow:auto;padding:14px 0 0}.bar-item{display:flex;flex-direction:column;align-items:center;justify-content:end;flex:1;gap:8px;min-width:24px;height:100%}.bar-group{display:flex;align-items:end;justify-content:center;gap:3px;width:100%;height:165px}.bar{border-radius:6px 6px 0 0;background:#2ac591;min-height:2px;max-width:27px;flex:1}.bar.exp{background:#f4a1a8}.bar-item small{font-size:10px;color:#9eaeaa;height:18px;white-space:nowrap}.legend{display:flex;gap:16px;font-size:11px;color:#82918e;margin-top:14px}.legend i{display:inline-block;background:#2ac591;width:9px;height:9px;border-radius:3px;margin-right:5px}.legend i.ex{background:#f4a1a8}.section-description{font-size:12px;color:#859b97;line-height:1.7}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.metric-row{display:flex;gap:10px;justify-content:space-between;border-bottom:1px solid #ecf2f1;padding:11px 0;font-size:12px}.metric-row span{color:#7d928f}.metric-row strong{color:#244247}.chart-list{display:grid;gap:12px}.dist-title{display:flex;justify-content:space-between;gap:10px;font-size:12px;margin-bottom:7px}.dist-title b{font-weight:800}.dist-bar{background:#eaf1ee;height:7px;border-radius:10px;overflow:hidden}.dist-bar>span{display:block;height:100%;background:#33bc91;border-radius:10px}.dist-bar.exp>span{background:#ea7c86}.controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.seg{display:flex;background:#edf5f2;border-radius:12px;padding:4px;gap:3px}.seg button{border:0;background:transparent;padding:8px 12px;border-radius:9px;font-weight:800;color:#77908b;font-size:11px}.seg button.active{background:white;color:#0e9871;box-shadow:0 2px 10px #33635312}.banner-warn{padding:12px 14px;border-radius:12px;background:#fff9eb;color:#9a711e;font-size:12px;line-height:1.6;border:1px solid #f1e3c5}.card-note{font-size:11px;color:#819895;line-height:1.6}.mobile-nav{display:none}#toast-root{position:fixed;bottom:24px;right:24px;z-index:50;pointer-events:none}.toast{background:#143b36;color:white;padding:12px 18px;border-radius:12px;box-shadow:0 10px 35px #11383a30;font-weight:750;font-size:12px;margin-top:6px;max-width:360px}.toast.err{background:#8c3344}
@media(max-width:1100px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar{width:215px;flex-basis:215px}.cols{grid-template-columns:1fr}.topbar{padding:21px}.content{padding:18px 20px 92px}}
@media(max-width:760px){.login-screen{grid-template-columns:1fr}.login-card{padding:35px 25px}.login-side{display:none}.sidebar{display:none}.topbar{padding:19px 18px 15px;min-height:93px;align-items:start}.topbar h1{font-size:23px}.topbar-actions{gap:7px}.topbar-actions .today-chip{display:none}.topbar-actions .btn{font-size:0;padding:11px}.topbar-actions .btn:before{content:'+';font-size:20px;line-height:10px}.avatar{width:34px;height:34px}.content{padding:17px 13px 88px}.summary-banner{padding:21px;min-height:155px;align-items:flex-start;flex-direction:column}.summary-banner strong{font-size:22px}.summary-banner p{margin:8px 0}.stats{gap:8px}.kpi{padding:15px 12px}.kpi-value{font-size:21px}.kpi-top{font-size:11px}.kpi-icon{width:24px;height:24px;font-size:15px}.kpi-sub{font-size:10px}.cols{gap:10px;margin-top:10px}.card{padding:15px}.grid3{grid-template-columns:1fr 1fr}.vehicle-list{grid-template-columns:1fr}.mobile-nav{position:fixed;display:flex;bottom:0;left:0;right:0;z-index:5;background:#fff;box-shadow:0 -4px 20px #224d4520;border-top:1px solid #dae7e3;padding:5px 7px calc(5px + env(safe-area-inset-bottom));justify-content:space-around}.mobile-nav button{background:none;border:0;display:grid;gap:4px;place-items:center;color:#849694;padding:6px 1px;font-size:10px;font-weight:700;min-width:53px}.mobile-nav button.active{color:#098d6d}.mobile-nav .nav-icon{font-size:20px}.modal{padding:19px}.modal-mask{align-items:flex-end;padding:0}.modal{max-height:92vh;border-radius:20px 20px 0 0}.form-grid{gap:12px}.filter-strip label{flex:1;min-width:130px}.topbar .btn-dark{display:none}}
@media(max-width:410px){.form-grid{grid-template-columns:1fr}.span-all{grid-column:auto}.kpi-value{font-size:18px}.vehicle-detail{grid-template-columns:1fr 1fr}.filter-strip .seg{width:100%}.filter-strip .seg button{flex:1}}
@media print{.sidebar,.mobile-nav,.topbar-actions,.noprint,.btn,#modal-root,#toast-root,.filter-strip{display:none!important}body,.app-shell,.app-body,.content{background:white!important}.topbar{border-bottom:2px solid #ddd;min-height:60px}.content{padding:12px}.app-body{width:100%}.card,.kpi{break-inside:avoid;box-shadow:none}.chart{height:150px}.bar-group{height:120px}.report-only{display:block}}

/* Motorista Gestão 2.1: pausas, receita por período e análise de desempenho */
.receipt-box{margin-top:19px;padding:14px;background:#f4fbf8;border:1px solid #d6e8e1;border-radius:13px}.receipt-box .receipt-toggle{display:flex;align-items:center;gap:10px;color:#205347;font-size:13px;font-weight:800}.receipt-toggle input{width:18px;height:18px;min-height:18px;margin:0;accent-color:#109a70}.receipt-box .form-grid{margin-top:13px}.auto-km{padding:12px;border:1px dashed #addccb;border-radius:12px;display:flex;flex-direction:column;gap:4px;background:#f4fff9}.auto-km span{font-size:12px;color:#66807a}.auto-km strong{font-size:19px;color:#078767}.auto-km small{font-size:11px;color:#879a95}.performance-highlight{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0 15px}.performance-highlight>div{background:#f0fbf6;border:1px solid #d6f0e5;padding:16px;border-radius:12px;display:grid;gap:7px}.performance-highlight span{color:#6e8e82;font-size:11px;font-weight:800}.performance-highlight strong{font-size:25px;color:#078c69}.performance-highlight small{font-size:11px;color:#547b70}@media(max-width:520px){.performance-highlight{grid-template-columns:1fr}.performance-highlight strong{font-size:21px}}
/* Respeita o atributo hidden mesmo quando inputs recebem display:block da regra geral. */
[hidden]{display:none!important}

/* Motorista Gestão 2.2 */
.monthly-panel{margin-top:17px;padding:20px 21px}.month-chart-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.month-mini{background:#f7fbfa;border:1px solid #e7f0ec;border-radius:12px;padding:12px;min-width:0}.month-mini>div{display:flex;justify-content:space-between;align-items:center;gap:6px}.month-mini span{font-size:11px;color:#667c80}.month-mini b{font-size:14px;white-space:nowrap}.month-spark{height:46px;width:100%;margin-top:12px;display:block}.month-target{margin-top:14px;display:grid;grid-template-columns:minmax(190px,1fr) 1.7fr;gap:17px;align-items:center}.month-target>div:first-child{display:grid;gap:3px}.month-target strong{font-size:15px;color:#087f62}.month-target span,.month-target small{font-size:11px;color:#7b9190}.month-target .progress{margin:0}.advanced-panel{margin:16px 0 0}.advanced-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.advanced-filter-grid label{font-size:11px;font-weight:750;color:#6c8285}.advanced-filter-grid select,.advanced-filter-grid input{display:block;width:100%;padding:9px 10px;margin-top:5px;border:1px solid #dce7e4;border-radius:10px;background:#fff;min-width:0}.filtered-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:17px 0}.filtered-metrics>div{background:#f6faf9;border-radius:10px;padding:11px;display:flex;flex-direction:column;gap:7px}.filtered-metrics small{font-size:10px;color:#7b9190}.filtered-metrics b{font-size:16px}.filter-bar-chart{display:flex;gap:3px;align-items:flex-end;height:115px;overflow:auto;padding:4px 0 6px;border-bottom:1px solid #e7efed}.filter-bar-chart>div{min-width:9px;display:flex;align-items:flex-end;gap:1px}.filter-bar-chart>div span{width:4px;display:block;min-height:1px;border-radius:2px}.filter-warning{background:#ffefed;padding:10px;border-radius:8px;color:#ae3a42}
@media(max-width:1100px){.month-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.advanced-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.month-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.month-mini{padding:10px}.month-mini>div{display:block}.month-mini b{display:block;margin-top:6px}.month-target{grid-template-columns:1fr}.advanced-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filtered-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-nav{overflow-x:auto;justify-content:flex-start}.mobile-nav .nav-icon{font-size:20px}}
@media print{.advanced-filter-grid,.advanced-panel .btn{display:none!important}.monthly-panel{break-inside:avoid}}

/* Motorista Gestão 2.3 · despesas fixas e custo por km */
.month-rate-strip{display:grid;grid-template-columns:1fr 1fr 1.28fr;gap:12px;margin-top:14px}
.month-rate-strip .kpi{border-color:#cce9dc;background:linear-gradient(150deg,#fff,#f4fbf7)}
.month-rate-strip .kpi-value{color:#077e61}
.month-rate-detail{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:16px}
.month-rate-detail>b{font-size:13px}.month-rate-detail>span{font-size:12px;color:#536e6b}.month-rate-detail>small{font-size:10px;color:#7c9790}
.month-rate-detail>.btn{align-self:flex-start}
.cost-setup{display:grid;gap:13px}.cost-intro{display:flex;align-items:start;justify-content:space-between;gap:22px}.cost-intro strong{font-size:17px;color:#173c37}.cost-intro p{font-size:12px;color:#6a8580;line-height:1.6}.cost-intro label{min-width:190px}
.cost-mileage-form{display:flex;align-items:end;gap:13px;flex-wrap:wrap}.cost-mileage-form label{flex:1;min-width:160px;max-width:320px}.cost-rate-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:14px}
.cost-explainer{margin-top:15px;background:#f8fcfa}.cost-explainer p{font-size:12px;color:#5d7972;line-height:1.7}.linklike{border:0;background:none;text-decoration:underline;cursor:pointer;color:#806013;font:inherit;font-weight:750}
@media(max-width:1100px){.month-rate-strip{grid-template-columns:1fr 1fr}.month-rate-detail{grid-column:1/-1}}
.cost-mobile-list{display:none}
.cost-mobile-item{border:1px solid #ddece7;border-radius:12px;background:#f8fcfa;padding:14px;display:grid;gap:5px}
.cost-mobile-item>strong{font-size:14px}.cost-mobile-item>span{font-size:12px;color:#729087}.cost-mobile-item>b{font-size:17px;color:#079870}.cost-mobile-item .table-actions{margin-top:7px}
@media(max-width:760px){.cost-desktop-table{display:none}.cost-mobile-list{display:grid;gap:9px}}
@media(max-width:760px){.month-rate-strip{gap:8px}.cost-rate-cards{grid-template-columns:1fr 1fr}.cost-intro{flex-direction:column}.cost-intro label{width:100%}}
@media(max-width:760px){.mobile-nav{justify-content:flex-start;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x}.mobile-nav::-webkit-scrollbar{display:none}.mobile-nav button{flex:0 0 70px;min-width:70px;white-space:nowrap;font-size:10px}}
@media(max-width:480px){.month-rate-strip{grid-template-columns:1fr}.month-rate-detail{grid-column:auto}.cost-rate-cards{grid-template-columns:1fr}.cost-mileage-form{flex-direction:column;align-items:stretch}.cost-mileage-form label{max-width:none;width:100%}}

/* Motorista Gestão 2.4 | módulo extra Orçamento doméstico */
.dom-head{display:flex;align-items:center;justify-content:space-between;gap:25px;background:linear-gradient(110deg,#093934,#15745d);border-radius:18px;color:white;padding:25px 29px}
.dom-head h2{font-size:25px;letter-spacing:-.8px;margin:8px 0}.dom-head p{font-size:12px;color:#b5e8d8;margin-bottom:0;line-height:1.6}
.dom-month-controls{display:flex;align-items:end;gap:6px;flex-shrink:0}.dom-month-controls label{color:#e5f9f2;font-size:11px}.dom-month-controls input{min-width:158px;background:white}
.dom-stats{margin-top:14px}.dom-clarification{color:#607d77;font-size:12px;line-height:1.65;margin-top:14px;background:#f9fcf9}.dom-clarification strong{display:block;color:#16745d;margin-bottom:4px}
.dom-teaser{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;background:#fafffc}.dom-teaser h2{font-size:17px;margin:5px 0}.dom-teaser p{font-size:12px;color:#69827c;margin:0}.dom-teaser>div:nth-child(2){display:grid;gap:8px}.dom-teaser small{font-size:11px;color:#71847d}.dom-teaser strong{font-size:20px}
.dom-mini-graph{display:flex;justify-content:space-around;gap:14px;height:122px;align-items:flex-end;margin-top:10px;padding-bottom:12px;border-bottom:1px solid #e9f2ee}
.dom-bar-item{display:flex;align-items:center;flex-direction:column;min-width:27px;gap:3px}.dom-bar-item small{font-size:11px;color:#829895}.dom-bars{height:92px;display:flex;align-items:end;gap:3px}.dom-bars span{width:10px;border-radius:4px 4px 0 0;background:#25b78a}.dom-bars span.expense{background:#e37c85}
.dom-table td{white-space:normal;min-width:90px}.dom-table td:first-child{min-width:180px}.dom-table .table-actions{flex-wrap:wrap}.dom-bank-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.dom-bank-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 13px;border:1px solid #e5efea;border-radius:12px;background:#f9fcfa}.dom-bank-item b{display:block;font-size:12px}.dom-bank-item small{display:block;color:#93a6a0;font-size:10px;margin-top:4px}
@media(max-width:1100px){.dom-head{flex-direction:column;align-items:flex-start}.dom-bank-grid{grid-template-columns:1fr}.dom-teaser{flex-wrap:wrap}}
@media(max-width:600px){.dom-head{padding:18px}.dom-head h2{font-size:20px}.dom-month-controls{width:100%}.dom-month-controls label{flex:1}.dom-month-controls input{width:100%;min-width:0}.dom-teaser{display:grid}.dom-bank-item{flex-wrap:wrap}.dom-stats .kpi-value{font-size:17px}.dom-mini-graph{gap:4px}.dom-bars span{width:8px}}
@media print{.dom-month-controls,.dom-head .btn{display:none!important}}

.dom-mobile-list{display:none}
.dom-mobile-item{padding:15px;border:1px solid #e0ebe5;border-radius:13px;background:#fcfefd;margin-top:9px}
.dom-mobile-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.dom-mobile-head strong{font-size:13px}.dom-mobile-head b{font-size:14px;white-space:nowrap}
.dom-mobile-sub{font-size:11px;color:#75908b;margin-top:8px}
.dom-mobile-item .form-actions{margin-top:12px}
@media(max-width:760px){.dom-mobile-list{display:block}.dom-desktop-table{display:none}}

/* ===== 2.5: mobile-first refinement (sem alterar o desktop) ===== */
.license-warning{background:#fff1d1;color:#7a4c09;padding:13px 25px;display:flex;gap:10px;align-items:center;border-bottom:1px solid #eacb91;font-size:13px}
.license-warning>span:first-child{font-size:22px}.license-warning strong{display:block}.license-warning small{display:block;margin-top:3px}
.subscription-screen{min-height:100dvh;background:radial-gradient(circle at 20% 5%,#115541,#061d23 48%);display:grid;place-items:center;padding:25px}
.locked-card{width:100%;max-width:460px;background:#fff;border-radius:24px;padding:32px;box-shadow:0 25px 65px #0019;display:grid;gap:14px}
.locked-card .overline{color:#168369}.locked-card h1{font-size:32px;line-height:1.1;margin:3px 0;color:#193a39}.locked-card p{font-size:14px;line-height:1.65;color:#637b7a;margin:0}.locked-symbol{width:62px;height:62px;border-radius:18px;background:#fff2d5;display:grid;place-items:center;color:#a47420;font-size:36px}
.lock-details{display:grid;grid-template-columns:1fr 1fr;background:#f1f7f5;border-radius:12px;padding:15px;gap:12px;font-size:12px;color:#55706c}.lock-details b{text-align:right;color:#183b34}.lock-actions{display:grid;gap:8px}.locked-card>small{font-size:11px;color:#78908c}
.admin-intro{background:#f1faf7}.admin-intro h2{font-size:24px;margin:10px 0}.admin-intro p{color:#657e7a;max-width:700px;line-height:1.6}.admin-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:15px}.admin-user-top{display:flex;justify-content:space-between;gap:10px}.admin-user-top b{font-size:13px;overflow-wrap:anywhere}.admin-user-top small{display:block;color:#90a49e;font-size:9px;margin-top:6px;overflow-wrap:anywhere}.admin-info{display:grid;gap:6px;font-size:12px;color:#5c7770;margin:14px 0}.admin-info strong{color:#123f34}.admin-license-form{display:flex;gap:10px;align-items:end}.admin-license-form label{flex:1}.admin-license-form select{min-width:0}
.mobile-quick{display:none}
@media(max-width:1000px){.admin-list{grid-template-columns:1fr}}
@media(max-width:760px){
 :root{--radius:16px} body{background:#f3f6fa} .app-body{background:#f3f6fa}
 .topbar{min-height:76px;padding:16px 18px 13px;border-bottom:1px solid #e4ebf0;position:sticky;top:0;z-index:3;background:#fbfdfd}
 .breadcrumb{font-size:9px;letter-spacing:.7px}.topbar h1{font-size:21px;line-height:1.12;margin:5px 0 0;color:#14332f}
 .content{padding:13px 12px calc(100px + env(safe-area-inset-bottom));max-width:100vw;overflow:hidden}
 .topbar-actions{gap:8px}.topbar-actions .btn{width:38px;height:38px;border-radius:12px}.avatar{width:38px;height:38px}
 .mobile-nav{z-index:8;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;justify-content:stretch;overflow:visible;border-top:1px solid #e1e9ee;box-shadow:0 -5px 20px #18363b13;padding:7px 6px calc(7px + env(safe-area-inset-bottom));background:#fff}
 .mobile-nav button{min-width:0!important;flex:auto;width:100%;padding:6px 0!important;gap:3px;font-size:10px;border-radius:10px;display:grid;justify-items:center;white-space:normal;line-height:1.1}
 .mobile-nav button.active{color:#077d66;background:#e6f7ef}.mobile-nav .nav-icon{font-size:21px;line-height:22px}
 .mobile-more-menu{position:fixed;bottom:calc(74px + env(safe-area-inset-bottom));left:12px;right:12px;z-index:9;padding:8px;background:#fff;border:1px solid #d6e6e0;box-shadow:0 -15px 50px #0f373a26;border-radius:18px;display:grid;grid-template-columns:1fr 1fr;gap:5px;max-height:60dvh;overflow:auto}
 .more-link{border:0;background:#f4f8f8;color:#31524d;text-align:left;display:flex;align-items:center;gap:7px;min-height:52px;padding:10px;border-radius:12px;font-size:12px;font-weight:750}
 .more-link.active{background:#dff7ed;color:#067a59}.more-link .more-icon{font-size:20px}.more-link span:last-child{margin-left:auto}
 .license-warning{padding:11px 14px;font-size:12px;position:relative;z-index:2}
 .mobile-quick{display:block!important;margin-bottom:12px;padding:14px;border-color:#dcebe7;background:#fff}
 .mobile-quick-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:11px}
 .mobile-quick-head span{font-size:10px;font-weight:900;letter-spacing:1px;color:#6f9390}.mobile-quick-head b{font-size:10px;color:#2c806c}
 .mobile-quick-actions{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:8px}
 .mobile-quick-actions button{border:0;border-radius:13px;min-height:66px;padding:10px 8px;display:grid;align-content:center;text-align:left;gap:5px;white-space:normal}
 .mobile-quick-actions strong{font-size:12px;line-height:1.1}.mobile-quick-actions small{font-size:10px;opacity:.78}
 .quick-drive{color:#fff;background:#114c43}.quick-earn{background:#e7f8ef;color:#086b4b}.quick-spend{background:#fff0ec;color:#b64934}
 .summary-banner{padding:18px;border-radius:16px;min-height:0;background:linear-gradient(130deg,#0d383b,#155f50);gap:7px}
 .summary-banner strong{font-size:19px;letter-spacing:-.6px}.summary-banner p{font-size:11px;line-height:1.45;margin:5px 0}
 .summary-banner .overline{font-size:9px}.banner-pill{font-size:10px;padding:6px 10px}
 .month-rate-strip{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important;margin-top:12px}
 .month-rate-strip .kpi{padding:14px 11px!important;background:#e7f7ef;border-color:#cbebdf}
 .month-rate-strip .kpi:nth-child(2){background:#fff0e2;border-color:#f6dccc}
 .month-rate-strip .kpi:nth-child(2) .kpi-value{color:#a46b19}
 .month-rate-strip .kpi-value{font-size:clamp(17px,5.4vw,22px);white-space:normal;overflow-wrap:anywhere;margin:10px 0 4px;letter-spacing:-.4px}
 .month-rate-strip .kpi-top{font-size:10px;color:#526a60}.month-rate-strip .kpi-sub{font-size:10px;line-height:1.3}
 .month-rate-detail{grid-column:1/-1!important;background:#f7fafb!important;border-color:#e7eeef!important;padding:13px!important;gap:6px!important}
 .month-rate-detail>b{font-size:12px}.month-rate-detail>span{font-size:11px}
 .stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px;margin-top:11px}
 .kpi{padding:14px 12px;min-height:112px;border:1px solid #e4ebee;box-shadow:none}
 .kpi-value{font-size:clamp(18px,5.5vw,23px);white-space:normal;overflow-wrap:anywhere;letter-spacing:-.5px}
 .kpi-top{font-size:11px;gap:4px}.kpi-sub{font-size:10px;line-height:1.35}
 .stats>.kpi:nth-child(4n+1){background:#eefaf4;border-color:#d5ebdf}.stats>.kpi:nth-child(4n+2){background:#fff3f2;border-color:#f6e0df}.stats>.kpi:nth-child(4n+3){background:#f2f6ff;border-color:#e1e9fa}.stats>.kpi:nth-child(4n){background:#fff9ee;border-color:#f5e8d4}
 .cols,.cols-even{grid-template-columns:1fr!important;gap:12px!important}.card{border-radius:16px;padding:15px;box-shadow:0 2px 9px #21434a08}
 .section-bar{margin:18px 0 9px}.section-bar h2{font-size:16px}.section-bar p{font-size:11px}
 .btn{min-height:42px;padding:10px 12px;font-size:12px;border-radius:11px}.form-actions{gap:8px}.form-actions .btn{flex:1 1 auto}
 .monthly-panel{padding:14px}.month-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .month-mini{border-radius:12px;padding:11px;min-height:98px}.month-mini:nth-child(1){background:#e9f9f0;border-color:#caedd9}.month-mini:nth-child(2){background:#fff0f1;border-color:#f3d8d9}.month-mini:nth-child(3){background:#eaf4ff;border-color:#d0e4ff}.month-mini:nth-child(4){background:#fff7e7;border-color:#f1e3c4}
 .month-mini b{font-size:14px}.month-mini span{font-size:10px}.month-target{margin-top:13px;gap:7px}
 .dom-head{background:linear-gradient(135deg,#142f62,#1a6c82);border-radius:17px;padding:18px}.dom-head p{color:#d6f0f2}
 .dom-stats .kpi:nth-child(odd){background:#eff8ff}.dom-stats .kpi:nth-child(even){background:#eff9f2}
 .dom-mobile-item{border-left:4px solid #e9a03e;padding:13px 12px;background:#fff;box-shadow:0 2px 8px #152c4010}
 .dom-mobile-item:has(.green){border-left-color:#11a775}.dom-mobile-head b{font-size:14px}
 .dom-mobile-item .form-actions .btn{min-height:40px}
 .performance-highlight{gap:8px}.performance-highlight>div{padding:12px}.performance-highlight strong{font-size:21px}
 .form-grid{grid-template-columns:1fr 1fr;gap:10px}.form-grid label:not(.span-all){min-width:0}.modal{border-radius:20px 20px 0 0;padding:19px 17px calc(22px + env(safe-area-inset-bottom))}.modal-mask{z-index:11}
 input,select,textarea{min-height:47px;font-size:16px} .filter-strip>label{min-width:0;flex:1 1 140px}
 .filter-strip{gap:8px}.seg{max-width:100%;overflow-x:auto}
 .advanced-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .admin-intro h2{font-size:20px}.admin-user{padding:14px}.admin-license-form{align-items:stretch;flex-direction:column}.admin-license-form .btn{width:100%}
 .lock-details{grid-template-columns:1fr 1fr}
}
@media(max-width:380px){.mobile-quick-actions{grid-template-columns:1fr 1fr}.quick-drive{grid-column:1/-1;min-height:54px}.mobile-nav button{font-size:9px}.topbar h1{font-size:19px}.kpi-value{font-size:18px}}
@media print{.license-warning,.mobile-quick,.mobile-more-menu,.subscription-screen,.admin-license-form{display:none!important}}

.subscription-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#eaf8f1;margin-bottom:14px;border-color:#cfe9dc}.subscription-summary h2{font-size:17px;margin:7px 0}.subscription-summary p{font-size:12px;color:#618278;margin:0}@media(max-width:760px){.subscription-summary{flex-direction:column;align-items:stretch}}

/* v2.5.1 — Ações do orçamento: excluir é uma opção distinta de arquivar. */
.dom-table .table-actions{gap:6px;align-items:center;flex-wrap:wrap}
.dom-table .table-actions [data-act="delete-dom-entry"], .dom-mobile-item [data-act="delete-dom-entry"]{color:#bb324d;background:#fff1f3;border-color:#f2b8c2}
@media(max-width:760px){.dom-mobile-item .form-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.dom-mobile-item .form-actions .btn{min-width:0;width:100%;white-space:normal;text-align:center;line-height:1.2;padding:10px 7px}.dom-mobile-item [data-act="delete-dom-entry"]{font-weight:850}}
