@font-face{font-family:Barlow Condensed;font-weight:700;font-style:normal;font-display:swap;src:url(/fonts/barlow-condensed-700.woff2) format("woff2")}@font-face{font-family:Inter;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/inter-400.woff2) format("woff2")}@font-face{font-family:Inter;font-weight:500;font-style:normal;font-display:swap;src:url(/fonts/inter-500.woff2) format("woff2")}@font-face{font-family:Inter;font-weight:600;font-style:normal;font-display:swap;src:url(/fonts/inter-600.woff2) format("woff2")}@font-face{font-family:Inter;font-weight:700;font-style:normal;font-display:swap;src:url(/fonts/inter-700.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/jetbrains-mono-400.woff2) format("woff2")}:root{--color-bg: #0C0F15;--color-surface: #121722;--color-surface-2: #18202E;--color-border: #232B3B;--color-text-primary: #E8ECF4;--color-text-secondary: #9BA6BB;--color-accent: #F59E0B;--color-accent-strong: #FFB224;--color-ifood: #ea1d2c;--color-success: #3ECF8E;--color-success-strong: #1E9E6A;--color-danger: #F16A6F;--color-danger-strong: #D64550;--font-ui: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display: "Barlow Condensed", "Arial Narrow", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 16px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-ui);background:var(--color-bg);color:var(--color-text-primary);-webkit-font-smoothing:antialiased}.brand-mark{display:inline-flex;align-items:center;gap:8px;min-width:0}.brand-mark-text{display:flex;flex-direction:column;line-height:1.05;min-width:0}.brand-mark-word{font-family:var(--font-display);font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--color-text-primary);white-space:nowrap}.brand-mark-word .brand-engine{color:var(--color-accent)}.brand-mark-sm .brand-mark-word{font-size:14px}.brand-mark-lg{flex-direction:column;gap:12px}.brand-mark-lg .brand-mark-text{align-items:center;gap:4px}.brand-mark-lg .brand-mark-word{font-size:26px;letter-spacing:.15em}.brand-mark-sub{font-size:10.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-secondary)}.brand-mark-sm .brand-mark-sub{letter-spacing:.14em;font-size:10px}.inline-icon{vertical-align:-.125em;flex-shrink:0}.app-shell{min-height:100vh;background:var(--color-bg)}.app-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);border-bottom:1px solid var(--color-border);color:var(--color-text-primary)}.app-brand{display:flex;align-items:center;gap:var(--space-2);min-width:0}.app-logo{font-size:24px;line-height:1}.app-title{font-size:14px;font-weight:700;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-header-right{display:flex;align-items:center;gap:var(--space-2);flex-shrink:1;min-width:0;max-width:100%}.app-driver-meta{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;font-size:14px;line-height:1.3;color:var(--color-text-primary);min-width:0;overflow:hidden}.app-driver-name{font-size:14px;font-weight:600;white-space:nowrap;max-width:38vw;min-width:0;overflow:hidden;text-overflow:ellipsis}.status-online{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--color-success)}.status-online:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.app-avatar{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--color-accent);color:var(--color-bg);font-weight:700;font-size:14px;flex-shrink:0}.tab-bar{display:flex;background:var(--color-surface);border-bottom:1px solid var(--color-border)}.tab-btn{flex:1;min-height:44px;padding:var(--space-2) var(--space-3);background:transparent;border:none;border-bottom:2px solid transparent;color:var(--color-text-secondary);font-size:14px;font-weight:600;cursor:pointer}.tab-btn-active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:1rem}.login-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);width:100%;max-width:360px;text-align:center;box-shadow:0 4px 12px #0006;color:var(--color-text-primary)}.login-card h1{font-size:1.75rem;margin-bottom:.5rem;color:var(--color-text-primary)}.login-card p{color:var(--color-text-secondary);margin-bottom:1.5rem}.code-input{width:100%;font-size:2rem;text-align:center;letter-spacing:.5rem;padding:.75rem;background:var(--color-surface-2);color:var(--color-text-primary);border:2px solid var(--color-border);border-radius:var(--radius-md);outline:none}.code-input:focus{border-color:var(--color-accent)}.btn-login{width:100%;min-height:44px;padding:.875rem;margin-top:1rem;font-size:1.1rem;font-weight:600;background:var(--color-accent);color:var(--color-bg);border:none;border-radius:var(--radius-md);cursor:pointer}.btn-login:disabled{opacity:.6}.error{color:var(--color-danger);margin-top:.5rem;font-size:.875rem}.route-page{padding-bottom:var(--space-5)}.btn-logout{display:inline-flex;align-items:center;min-height:44px;background:#ffffff1f;border:1px solid var(--color-border);color:var(--color-text-primary);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;font-size:14px}.page-center{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:var(--space-4);color:var(--color-text-primary)}.btn-refresh{min-height:44px;padding:var(--space-2) var(--space-5);background:var(--color-accent);color:var(--color-bg);border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:16px;font-weight:600}.stops-list{padding:var(--space-2)}.stop-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-3);color:var(--color-text-primary)}.stop-done{opacity:.5}.stop-header{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.stop-seq{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--color-accent);color:var(--color-bg);font-weight:700;font-size:14px;flex-shrink:0}.stop-nav{display:flex;gap:var(--space-2);margin-bottom:var(--space-3)}.btn-nav{flex:1;min-height:44px;padding:var(--space-2);border:none;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;font-size:14px}.btn-waze{background:#3cf;color:#0a2540}.btn-gmaps{background:#4285f4;color:#fff}.stop-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.btn-action{flex:1;min-height:44px;padding:var(--space-3);border:none;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;font-size:14px}.btn-enroute{background:transparent;border:1px solid var(--color-accent);color:var(--color-accent)}.btn-delivered{background:transparent;border:1px solid var(--color-success);color:var(--color-success)}.btn-failed{background:transparent;border:1px solid var(--color-danger);color:var(--color-danger)}.btn-inservice{background:transparent;border:1px solid #4dd0e1;color:#4dd0e1}.badge{display:inline-flex;align-items:center;gap:4px;padding:.15rem .5rem;border-radius:10px;font-size:.75rem;font-weight:600;white-space:nowrap}.badge-planned{background:#4f9dff2e;color:#4f9dff;border:1px solid #4f9dff}.badge-in_progress{background:#ffc1072e;color:var(--color-accent-strong);border:1px solid var(--color-accent)}.badge-completed{background:#2e7d322e;color:var(--color-success);border:1px solid var(--color-success)}.badge-pending{background:var(--color-surface-2);color:var(--color-text-secondary);border:1px solid var(--color-border)}.badge-en_route{background:#ffc1072e;color:var(--color-accent-strong);border:1px solid var(--color-accent)}.badge-delivered{background:#2e7d322e;color:var(--color-success);border:1px solid var(--color-success)}.badge-failed{background:#c628282e;color:var(--color-danger);border:1px solid var(--color-danger)}.badge-scheduled{background:#b085f52e;color:#b085f5;border:1px solid #b085f5}.badge-in_service{background:#4dd0e12e;color:#4dd0e1;border:1px solid #4dd0e1}.badge-rejected{background:#c628282e;color:var(--color-danger);border:1px solid var(--color-danger)}.badge-arrived{background:#4dd0e12e;color:#4dd0e1;border:1px solid #4dd0e1}.stop-order{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.order-ifood,.order-cell{display:inline-flex;align-items:center;gap:8px}.order-value{font-size:16px;font-weight:700;color:var(--color-text-primary)}.order-ifood-tag{background:var(--color-ifood);color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:700;letter-spacing:.5px}.order-code{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;background:var(--color-surface-2);padding:6px 10px;border-radius:4px;font-size:15px;font-weight:600;color:var(--color-text-primary)}.btn-copy{border:0;background:transparent;cursor:pointer;opacity:.7;font-size:18px;padding:8px 12px;min-width:44px;min-height:44px;color:var(--color-text-secondary)}.btn-copy:hover,.btn-copy:active{opacity:1}.route-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);background:var(--color-surface);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-2);color:var(--color-text-primary)}.route-header-main{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.route-open-count{font-size:16px;font-weight:700;color:var(--color-text-primary)}.route-km{font-size:14px;color:var(--color-text-secondary)}.route-id{font-size:12px;color:var(--color-text-secondary)}.route-header-right{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.btn-verrota{display:inline-flex;align-items:center;min-height:44px;padding:var(--space-2) var(--space-3);background:var(--color-accent);border:1px solid var(--color-accent);border-radius:var(--radius-sm);color:var(--color-bg);font-size:14px;font-weight:600;cursor:pointer}.gps-warning{flex-basis:100%;font-size:12px;font-weight:600;color:var(--color-danger)}.badge-source{color:#fff}.badge-source-ifood{background:var(--color-ifood)}.badge-source-site{background:var(--color-surface-2);color:var(--color-text-secondary)}.stop-title{margin-bottom:var(--space-3)}.stop-parada-label{display:block;font-size:16px;color:var(--color-text-primary)}.stop-title span{display:block;color:var(--color-text-secondary);font-size:14px}.stop-instruction{font-size:14px;margin-bottom:var(--space-3)}.stop-instruction-pickup{color:var(--color-accent);font-weight:600}.btn-confirm-ifood{display:inline-flex;align-items:center;min-height:44px;padding:var(--space-2) var(--space-3);background:var(--color-ifood);border:none;border-radius:var(--radius-sm);color:#fff;font-size:14px;font-weight:600;cursor:pointer}.stop-contact{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.stop-client-name{font-size:14px;color:var(--color-text-primary)}.stop-contact-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.btn-ligar{display:inline-flex;align-items:center;min-height:44px;padding:var(--space-2) var(--space-4);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:14px;font-weight:600;cursor:pointer}.btn-msg{display:inline-flex;align-items:center;min-height:44px;padding:var(--space-2) var(--space-4);background:transparent;border:1px dashed var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:14px;cursor:not-allowed}.stop-payment{font-size:14px;font-weight:600;margin-bottom:var(--space-2)}.payment-cobrar{color:var(--color-accent)}.payment-pago{color:var(--color-success)}.payment-neutral{color:var(--color-text-secondary)}.payment-block{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-3)}.payment-troco{font-size:14px;color:var(--color-text-secondary)}.payment-receive-btn{background:var(--color-accent);color:var(--color-bg);border:1px solid var(--color-accent)}.payment-receive-btn:disabled{background:var(--color-surface-2);color:var(--color-success);border-color:var(--color-success);cursor:default;opacity:.8}.stop-chips{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.chip{display:inline-flex;align-items:center;min-height:28px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);font-size:14px}.stepper{display:flex;align-items:stretch;gap:var(--space-1);margin-bottom:var(--space-3)}.step{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);min-height:44px;padding:var(--space-2) var(--space-1);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:14px;font-weight:600;cursor:pointer}.step:disabled{cursor:not-allowed}.step-dot{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--color-border);color:var(--color-text-primary);font-size:12px}.step-label{font-size:14px}.step-done{color:var(--color-success);border-color:var(--color-success)}.step-done .step-dot{background:var(--color-success-strong);color:#fff}.step-current{color:var(--color-accent);border-color:var(--color-accent)}.step-current .step-dot{background:var(--color-accent);color:var(--color-bg)}.step-stub{opacity:.7}.dashboard-drawer{background:var(--color-bg);overflow-y:auto;padding:var(--space-4)}.dashboard-section{margin-bottom:var(--space-6)}.dashboard-section-title{font-size:16px;font-weight:700;color:var(--color-text-primary);margin-bottom:var(--space-3)}.dashboard-loading{padding:var(--space-4);color:var(--color-text-secondary);font-size:14px}.dashboard-error{padding:var(--space-4)}.dashboard-empty{padding:var(--space-4);color:var(--color-text-secondary);font-size:14px}.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);margin-bottom:var(--space-6)}.kpi-card{padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);min-height:80px}.kpi-value{font-size:32px;font-weight:700;color:var(--color-text-primary)}.kpi-value-stub{font-size:18px;font-weight:600;color:var(--color-text-secondary)}.kpi-label{font-size:14px;color:var(--color-text-secondary);margin-top:var(--space-1)}.kpi-value-money{font-size:22px;font-weight:700;color:var(--color-text-primary);line-height:38px}.earnings-balance-row{display:flex;justify-content:space-between;align-items:baseline;margin-top:calc(-1 * var(--space-4));margin-bottom:var(--space-5);font-size:14px;color:var(--color-text-secondary)}.earnings-balance-row>span:last-child{color:var(--color-text-primary);font-weight:600}.route-list{display:flex;flex-direction:column;gap:var(--space-2);list-style:none;padding:0;margin:0}.route-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);min-height:44px}.route-item-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.route-item-id{font-size:14px;font-weight:600;color:var(--color-text-primary)}.route-item-time{font-size:14px;color:var(--color-text-secondary)}.route-item-metrics{display:flex;flex-wrap:wrap;gap:var(--space-3);font-size:14px}.route-metric{color:var(--color-text-primary)}.route-metric-stub{color:var(--color-text-secondary)}.route-metric-money{font-weight:600}.route-map-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;flex-direction:column;background:var(--color-bg)}.route-map-thumb{position:fixed;right:var(--space-4);bottom:var(--space-4);z-index:1000;width:200px;height:220px;display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 6px 24px #00000073;overflow:hidden}.route-map-bar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-surface);border-bottom:1px solid var(--color-border);color:var(--color-text-primary)}.route-map-title{font-size:14px;font-weight:700;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.route-map-bar-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.btn-map-close{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:var(--space-2) var(--space-3);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:14px;font-weight:600;cursor:pointer}.route-map-body{position:relative;flex:1;min-height:0}.route-map-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.route-map-expand{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:transparent;border:none;cursor:pointer}.route-map-marker{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--color-accent);color:var(--color-bg);font-weight:700;font-size:14px;border:2px solid var(--color-bg);box-shadow:0 1px 4px #00000080;cursor:default}.route-map-depot{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--radius-sm);background:var(--color-success-strong);color:#fff;font-weight:700;font-size:18px;line-height:1;border:2px solid var(--color-bg);box-shadow:0 1px 4px #00000080;cursor:default}.route-map-empty{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-5);color:var(--color-text-secondary);font-size:14px;text-align:center}.route-map-loading{padding:var(--space-5);color:var(--color-text-secondary);font-size:14px;text-align:center}.route-completed-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-3);color:var(--color-text-primary);text-align:center}.route-completed-title{font-size:16px;font-weight:700;color:var(--color-success);margin:0 0 var(--space-2)}.route-completed-metrics{font-size:14px;color:var(--color-text-primary);margin:0 0 var(--space-2)}.route-completed-actions{display:flex;gap:var(--space-2);justify-content:center;margin-top:var(--space-3)}.btn-view-performance{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:var(--space-2) var(--space-3);background:var(--color-accent);border:1px solid var(--color-accent);border-radius:var(--radius-sm);color:var(--color-bg);font-size:14px;font-weight:600;cursor:pointer}.btn-dismiss-completed{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:var(--space-2) var(--space-3);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:14px;font-weight:600;cursor:pointer}.period-chips{display:flex;gap:var(--space-2);overflow-x:auto;margin-bottom:var(--space-3)}.period-chip{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:var(--space-2) var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap}.period-chip-active{color:var(--color-accent);border-color:var(--color-accent)}.period-custom{display:flex;align-items:flex-end;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.period-field{display:flex;flex-direction:column;gap:var(--space-1);font-size:14px;color:var(--color-text-secondary)}.period-input{min-height:44px;padding:var(--space-2) var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:14px;color-scheme:dark}.period-apply{min-height:44px;padding:var(--space-2) var(--space-4);background:var(--color-accent);border:1px solid var(--color-accent);border-radius:var(--radius-sm);color:var(--color-bg);font-size:14px;font-weight:600;cursor:pointer}.period-apply:disabled{opacity:.5;cursor:not-allowed}.period-hint{width:100%;color:var(--color-danger);font-size:14px}.route-day-group{margin-bottom:var(--space-4)}.route-day-header{font-size:14px;font-weight:700;color:var(--color-text-secondary);margin-bottom:var(--space-2)}.route-item-btn{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:44px;font:inherit;color:inherit;text-align:left;cursor:pointer}.route-item-main{flex:1;min-width:0;display:flex;flex-direction:column}.route-item-chevron{color:var(--color-text-secondary);font-size:24px;flex-shrink:0}.history-truncated-note{color:var(--color-text-secondary);font-size:14px;margin-top:var(--space-3)}.route-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;display:flex;flex-direction:column;background:var(--color-bg)}.route-detail-bar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-surface);border-bottom:1px solid var(--color-border);color:var(--color-text-primary)}.route-detail-title{font-size:16px;font-weight:700;color:var(--color-text-primary)}.route-detail-body{flex:1;min-height:0;overflow-y:auto;padding:var(--space-4)}.route-detail-sub{font-size:14px;color:var(--color-text-secondary);margin-bottom:var(--space-3)}.route-detail-metrics{display:flex;flex-wrap:wrap;gap:var(--space-3);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-3);font-size:14px}.route-detail-map-btn{margin-bottom:var(--space-3)}.route-detail-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.detail-stop{display:flex;align-items:flex-start;gap:var(--space-3);min-height:44px;padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary)}.detail-stop-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.detail-stop-address{font-size:14px;font-weight:600;color:var(--color-text-primary)}.detail-stop-meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);font-size:14px;color:var(--color-text-secondary)}.detail-stop-time{font-size:14px;color:var(--color-text-secondary)}.ifood-confirm{display:flex;flex-direction:column;gap:var(--space-2);width:100%;margin-top:var(--space-2)}.ifood-label{font-size:14px;font-weight:600;color:var(--color-text-primary)}.ifood-input-row{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}.ifood-input-row .ifood-label{flex:1;min-width:150px}.ifood-code-input{flex:0 0 auto;width:128px;min-height:44px;padding:var(--space-2) var(--space-3);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:16px;letter-spacing:3px;text-align:center}.btn-ifood-main{width:100%;justify-content:center}.ifood-copied-hint{font-size:14px;font-weight:600;color:var(--color-accent)}.ifood-hint{font-size:13px;line-height:1.4;color:var(--color-text-secondary)}.ifood-customer-known{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.ifood-customer-code{font-family:var(--font-mono);font-size:22px;font-weight:400;letter-spacing:4px;color:var(--color-accent-strong)}.btn-edit-customer-code{min-height:44px;padding:0 var(--space-2);margin-left:auto;background:transparent;border:none;color:var(--color-text-secondary);font-size:14px;text-decoration:underline;cursor:pointer}.geo-gate{display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-3) var(--space-4) 0;padding:var(--space-3) var(--space-4);background:#ffc1071f;border:1px solid var(--color-accent);border-radius:var(--radius-md);color:var(--color-text-primary)}.geo-gate-msg{font-size:14px;font-weight:700;color:var(--color-text-primary)}.geo-gate-hint{font-size:14px;color:var(--color-text-secondary)}.geo-gate-btn{align-self:flex-start;min-height:44px;padding:var(--space-2) var(--space-5);background:var(--color-accent);color:var(--color-bg);border:1px solid var(--color-accent);border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer}.outbox-banner{margin:var(--space-3) 0;padding:var(--space-3) var(--space-4);background:#ffc1071f;border:1px solid var(--color-accent);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:14px;font-weight:600}.badge-pending{background:#ffc1072e;color:var(--color-accent-strong);border:1px solid var(--color-accent)}.login-keepalive{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3);font-size:14px;color:var(--color-text-primary);cursor:pointer}.login-keepalive input{width:20px;height:20px;flex:none;cursor:pointer}.login-keepalive-hint{margin-top:var(--space-1);font-size:14px;color:var(--color-text-secondary)}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;display:flex;align-items:flex-end;justify-content:center;background:#00000080}.confirm-sheet{width:100%;max-width:480px;background:var(--color-surface);color:var(--color-text-primary);border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);border-top:1px solid var(--color-border);padding:var(--space-5) var(--space-4) calc(var(--space-5) + env(safe-area-inset-bottom))}.confirm-title{font-size:18px;font-weight:700;margin-bottom:var(--space-2)}.confirm-message{font-size:14px;color:var(--color-text-secondary);margin-bottom:var(--space-4)}.confirm-actions{display:flex;gap:var(--space-3)}.confirm-cancel{background:var(--color-surface-2);color:var(--color-text-primary)}.confirm-ok{background:var(--color-accent);color:var(--color-bg)}.confirm-ok-danger{background:var(--color-danger-strong);color:#fff}.undo-toast{position:fixed;left:50%;bottom:calc(var(--space-5) + env(safe-area-inset-bottom));transform:translate(-50%);z-index:1100;display:flex;align-items:center;gap:var(--space-4);width:calc(100% - 2 * var(--space-4));max-width:440px;padding:var(--space-3) var(--space-4);background:var(--color-surface-2);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 6px 20px #0006;font-size:14px;font-weight:600}.undo-btn{flex:none;min-height:44px;padding:var(--space-2) var(--space-4);background:transparent;color:var(--color-accent);border:1px solid var(--color-accent);border-radius:var(--radius-sm);font-size:14px;font-weight:700;cursor:pointer}.checkin-box{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);width:100%;max-width:320px}.btn-checkin{min-height:48px;width:100%;padding:var(--space-3) var(--space-5);background:var(--color-accent);color:var(--color-bg);border:none;border-radius:var(--radius-sm);font-size:16px;font-weight:700;cursor:pointer}.btn-checkin:disabled{background:var(--color-surface-2);color:var(--color-text-secondary);cursor:not-allowed}.checkin-hint{font-size:13px;font-weight:600;color:var(--color-text-secondary);text-align:center}.checkin-error{color:var(--color-danger)}.checkin-retry{min-height:44px;padding:var(--space-2) var(--space-4);background:transparent;color:var(--color-accent);border:1px solid var(--color-accent);border-radius:var(--radius-sm);font-size:14px;font-weight:700;cursor:pointer}.checkin-done{flex-direction:row;justify-content:center;padding:var(--space-3) var(--space-4);background:#2e7d3226;border:1px solid var(--color-success);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:15px;font-weight:700}.checkin-done-icon{color:var(--color-success);font-size:18px}.stop-address-flags{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-3)}.chip-address-warning{background:var(--color-accent);color:var(--color-bg);font-weight:700}.address-warning-note{font-size:14px;color:var(--color-text-secondary)}.chip-address-quality{background:#ffc1072e;color:var(--color-accent-strong);border:1px solid var(--color-accent);font-weight:600}.same-address-group{display:inline-flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.chip-same-address{background:var(--color-surface-2);color:var(--color-text-primary);border:1px solid var(--color-border);font-weight:600}.same-address-note{font-size:14px;color:var(--color-text-secondary)}.payroll-list{display:flex;flex-direction:column;gap:var(--space-2);list-style:none;padding:0;margin:0 0 var(--space-3)}.payroll-day{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);min-height:44px}.payroll-day-off{opacity:.6}.payroll-day-info{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.payroll-day-when{display:flex;align-items:baseline;gap:var(--space-2)}.payroll-weekday{font-size:15px;font-weight:700;color:var(--color-text-primary)}.payroll-date{font-size:14px;color:var(--color-text-secondary)}.payroll-deliveries{display:flex;align-items:baseline;gap:var(--space-2);flex-wrap:wrap}.payroll-deliveries-count{font-size:14px;font-weight:600;color:var(--color-text-primary)}.payroll-deliveries-sub,.payroll-routes-detail{font-size:14px;color:var(--color-text-secondary)}.payroll-dayoff-label{font-size:14px;font-weight:600;color:var(--color-text-secondary)}.payroll-day-value{flex:none;text-align:right}.payroll-payout{font-size:18px;font-weight:700;color:var(--color-text-primary)}.payroll-badge-missing{background:#ffc1072e;color:var(--color-accent-strong);border:1px solid var(--color-accent);white-space:nowrap}.payroll-total-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-3);padding:var(--space-3) var(--space-1) 0;border-top:1px solid var(--color-border)}.payroll-total-label{display:flex;flex-direction:column;font-size:14px;font-weight:600;color:var(--color-text-primary)}.payroll-total-range{font-size:13px;font-weight:400;color:var(--color-text-secondary)}.payroll-total-value{font-size:20px;font-weight:700;color:var(--color-text-primary)}.payroll-missing-note{margin-top:var(--space-2);font-size:13px;color:var(--color-text-secondary)}.payroll-day-btn{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer}.payroll-day-chevron{color:var(--color-text-secondary);font-size:24px;flex-shrink:0}.payroll-detail-summary{align-items:center}.payroll-detail-payout{font-weight:600;color:var(--color-text-primary)}.payroll-detail-route{margin-bottom:var(--space-4)}.payroll-detail-route-head{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-1)}.payroll-detail-route-title{font-size:15px;font-weight:700;color:var(--color-text-primary)}.payroll-detail-route-sub{font-size:14px;color:var(--color-text-secondary);margin:0 0 var(--space-2)}.payroll-detail-stops{margin-bottom:0}.payroll-route-error{margin-bottom:var(--space-2)}.chip-outside-day{background:#ffc1072e;color:var(--color-accent-strong);border:1px solid var(--color-accent);white-space:nowrap}.payroll-detail-note{margin-top:var(--space-3);font-size:13px;color:var(--color-text-secondary)}
