:root{--font-sans: "Geist", "Geist Fallback", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono: ui-monospace, "SF Mono", "Cascadia Code", Consolas, "Geist Mono", monospace;--text-2xs: 11px;--text-xs: 12px;--text-sm: 13px;--text-md: 14px;--text-lg: 16px;--text-xl: 18px;--text-2xl: 22px;--text-3xl: 24px;--text-display: 34px;--leading-none: 1;--leading-tight: 1.15;--leading-snug: 1.3;--leading-normal: 1.5;--tracking-tight: -.02em;--tracking-snug: -.01em;--tracking-normal: 0;--tracking-wide: .04em;--tracking-wider: .08em;--backend-bg:#f5f7f9;--backend-surface:#ffffff;--backend-surface-muted:#f8fafc;--backend-surface-subtle:#f2f5f8;--backend-text:#1a1a17;--backend-muted:#667085;--backend-border:#dfe5ec;--backend-border-soft:#e3e9f0;--backend-accent:#1849a9;--backend-ok:#067647;--backend-warning:#9c6500;--backend-critical:#b42318;--backend-max-width:1440px;--backend-gap:16px;--backend-gap-sm:10px;--backend-radius:8px;--backend-shadow:0 18px 45px -36px rgba(15,23,42,.2);--backend-table-min-width:620px}@font-face{font-family:Geist Fallback;src:local("Inter"),local("Helvetica Neue"),local("Arial");size-adjust:100%;ascent-override:95%;descent-override:22%;line-gap-override:0%;font-display:swap}.mono-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 0%,rgba(124,92,255,.18) 0%,transparent 55%),radial-gradient(circle at 80% 100%,rgba(124,92,255,.08) 0%,transparent 50%),#f4f2ed;font-family:var(--font-sans);color:#1a1a17}.auth-card{width:min(420px,100%);padding:32px 30px;background:#fbfaf6;border:1px solid #e0dbcf;border-radius:18px;box-shadow:0 30px 60px -20px #0000002e}.auth-brand{display:flex;align-items:center;gap:10px;margin-bottom:18px}.auth-logo{width:36px;height:36px;border-radius:10px;background:#fff;color:#6b3fd4;display:grid;place-items:center;box-shadow:0 4px 12px -4px #6b3fd4;overflow:hidden}.auth-logo img{display:block;width:32px;height:auto}.auth-brand-name{font:600 17px/1 Geist,sans-serif;letter-spacing:-.01em}.auth-card h1{font:700 24px/1.1 Geist,sans-serif;letter-spacing:-.02em;margin:0 0 6px}.auth-card .auth-sub{color:#76746a;font-size:var(--text-md);margin-bottom:18px}.auth-card label{display:grid;gap:6px;font-size:var(--text-sm);color:#4a4a44;font-weight:600;margin-bottom:12px}.auth-card input{font:13px Geist,sans-serif;padding:10px 12px;background:#f4f2ed;border:1px solid #e0dbcf;border-radius:9px;outline:0;color:#1a1a17}.auth-card input:focus{border-color:#6b3fd4;box-shadow:0 0 0 3px #6b3fd41f}.auth-card .auth-error{color:#d24b3e;font-size:var(--text-sm);margin:0 0 12px}.auth-card button{width:100%;padding:11px 14px;background:#6b3fd4;color:#fbfaf6;border:0;border-radius:9px;font:600 13.5px/1 Geist,sans-serif;cursor:pointer;transition:.15s}.auth-card button:hover{background:#5a30c2}.auth-card button:disabled{opacity:.6;cursor:not-allowed}.sms-consent-shell{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;padding:48px 18px;background:#f4f2ed;font-family:var(--font-sans);color:#1a1a17}.sms-consent-card{width:min(760px,100%);margin:0 auto;padding:34px;background:#fbfaf6;border:1px solid #e0dbcf;border-radius:18px;box-shadow:0 24px 60px -32px #00000038}.sms-consent-brand{margin-bottom:26px}.sms-consent-eyebrow{margin:0 0 10px;color:#6b3fd4;font:800 var(--text-xs)/var(--leading-none) var(--font-sans);letter-spacing:.12em;text-transform:uppercase}.sms-consent-card h1{margin:0 0 14px;color:#1a1a17;font:800 clamp(30px,4vw,46px)/var(--leading-tight) var(--font-sans);letter-spacing:var(--tracking-tight)}.sms-consent-lede{margin:0 0 24px;color:#4a4a44;font:500 var(--text-lg)/var(--leading-normal) var(--font-sans)}.sms-consent-facts{display:grid;gap:0;margin:0;border:1px solid #e8e2d6;border-radius:14px;overflow:hidden;background:#fffefa}.sms-consent-facts div{display:grid;grid-template-columns:190px 1fr;gap:18px;padding:16px 18px;border-bottom:1px solid #ece6dc}.sms-consent-facts div:last-child{border-bottom:0}.sms-consent-facts dt{margin:0;color:#76746a;font:800 var(--text-xs)/var(--leading-snug) var(--font-sans);letter-spacing:.08em;text-transform:uppercase}.sms-consent-facts dd{margin:0;color:#24231f;font:500 var(--text-md)/var(--leading-normal) var(--font-sans)}.sms-consent-facts a{color:#5f35cf;font-weight:700;text-decoration:none}.sms-consent-facts a:hover{text-decoration:underline}@media(max-width:680px){.sms-consent-shell{padding:24px 12px}.sms-consent-card{padding:24px 18px;border-radius:14px}.sms-consent-facts div{grid-template-columns:1fr;gap:6px}}.backend-dashboard-shell{position:fixed;top:0;right:0;bottom:0;left:0;height:100vh;overflow-y:auto;overflow-x:hidden;padding:28px;background:var(--backend-bg);color:var(--backend-text);font-family:var(--font-sans);-webkit-overflow-scrolling:touch}.backend-dashboard-header{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;max-width:var(--backend-max-width);margin:0 auto 22px;padding:18px;background:var(--backend-surface);border:1px solid var(--backend-border);border-radius:var(--backend-radius);box-shadow:0 18px 50px -34px #0f172a38}.backend-dashboard-header h1{margin:0 0 6px;font:800 34px/1 var(--font-sans);letter-spacing:0}.backend-dashboard-header span{color:var(--backend-muted);font:600 var(--text-sm)/1.3 var(--font-mono)}.backend-dashboard-header .backend-refresh-note{display:block;margin-top:6px;font:700 var(--text-xs)/1.35 var(--font-sans);letter-spacing:0;color:#168056}.backend-dashboard-header button{height:40px;padding:0 14px;border:1px solid #ced6e0;border-radius:var(--backend-radius);background:var(--backend-surface);color:var(--backend-text);font-weight:800;cursor:pointer}.backend-dashboard-header button:disabled{opacity:.6;cursor:not-allowed}.backend-dashboard-error,.backend-warning{max-width:var(--backend-max-width);margin:0 auto 16px;padding:14px 16px;border-radius:var(--backend-radius);border:1px solid #f0b9b3;background:#fff0ee;color:#b73f35;font-weight:700}.backend-warning{border-color:#e5c16d;background:#fff7df;color:#875f0c}.backend-dashboard-success{max-width:var(--backend-max-width);margin:0 auto 16px;padding:14px 16px;border-radius:var(--backend-radius);border:1px solid #acd9be;background:#edfdf3;color:#067647;font-weight:700}.backend-dashboard-inline-message{max-width:none;margin:8px 0 0}.backend-panel-grid,.backend-table-inspector-layout,.backend-grid,.backend-dashboard-panels{width:100%;max-width:var(--backend-max-width);margin:0 auto;display:grid;gap:var(--backend-gap)}.backend-panel-grid--overview,.backend-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}.backend-panel-grid--overview>.backend-card,.backend-grid>.backend-card{height:100%}.backend-panel-grid--overview .backend-card-wide,.backend-grid .backend-card-wide{grid-column:span 2}.backend-panel-grid--details,.backend-dashboard-panels,.backend-panel-grid--two,.backend-two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.backend-panel-grid--incident,.backend-incident-grid{grid-template-columns:minmax(260px,.78fr) minmax(540px,1.55fr) minmax(320px,.9fr);align-items:stretch}.backend-table-inspector-layout--split,.backend-request-log-layout{grid-template-columns:minmax(0,1.55fr) minmax(340px,.72fr);align-items:start}.backend-table-inspector-main{min-width:0}.backend-action-strip{width:100%;max-width:var(--backend-max-width);margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.backend-action-strip button,.backend-action-strip div{min-width:0;display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"dot title value" "dot detail detail";gap:6px 10px;align-items:center;padding:12px;min-height:60px;border:1px solid var(--backend-border);border-radius:var(--backend-radius);background:var(--backend-surface);color:var(--backend-text);text-align:left;box-shadow:0 14px 30px -28px #0f172a38}.backend-action-strip button{cursor:pointer}.backend-action-strip button:hover{border-color:#b7c4d3;background:var(--backend-surface-muted)}.backend-action-dot{grid-area:dot;width:10px;height:10px;border-radius:999px;background:#667085}.backend-action-ok{background:#12b76a}.backend-action-info{background:#2e90fa}.backend-action-warning{background:#f79009}.backend-action-critical{background:#f04438}.backend-action-strip b{grid-area:title;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:850 var(--text-sm)/1.1 var(--font-sans)}.backend-action-strip strong{grid-area:value;font:850 var(--text-sm)/1.1 var(--font-sans);white-space:nowrap}.backend-action-strip small{grid-area:detail;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--backend-muted);font:650 var(--text-xs)/1.2 var(--font-sans)}.backend-today-panel{width:100%;max-width:var(--backend-max-width);margin:0 auto}.backend-today-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:var(--backend-gap-sm)}.backend-today-grid button{min-width:0;height:74px;padding:10px;border:1px solid var(--backend-border-soft);border-radius:var(--backend-radius);background:var(--backend-surface-muted);color:var(--backend-text);text-align:left;cursor:pointer}.backend-today-grid button:hover{border-color:#b7c4d3;background:#fff}.backend-today-grid span{display:block;color:#667085;font:850 var(--text-2xs)/1.2 var(--font-sans);letter-spacing:.06em;text-transform:uppercase}.backend-today-grid strong{display:block;margin-top:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:850 var(--text-lg)/1 var(--font-sans)}.backend-completion-ring{width:72px;height:72px;flex:0 0 auto;border-radius:999px;display:grid;place-items:center;background:conic-gradient(#168056 var(--progress,0%),#e5eaf0 0),#e5eaf0}.backend-completion-ring span{width:54px;height:54px;display:grid;place-items:center;border-radius:999px;background:#fff;color:#1a1a17;font:900 var(--text-xs)/1 var(--font-sans)}.backend-card,.backend-panel{min-width:0;background:var(--backend-surface);border:1px solid var(--backend-border);border-radius:var(--backend-radius);padding:18px;box-shadow:var(--backend-shadow)}.backend-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--backend-muted);font:800 var(--text-xs)/1 var(--font-sans);letter-spacing:.08em;text-transform:uppercase}.backend-card-value{display:block;margin-top:14px;font:800 30px/1 var(--font-sans);letter-spacing:0}.backend-card p,.backend-card small{margin:8px 0 0;color:#667085;font:600 var(--text-xs)/1.45 var(--font-sans)}.backend-meter{height:8px;margin-top:16px;border-radius:999px;overflow:hidden;background:#e5eaf0}.backend-meter span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#168056,#d99a1f,#c9362c)}.backend-status{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:999px;border:1px solid #d7dee8;background:var(--backend-surface-subtle);color:var(--backend-muted);font:800 var(--text-2xs)/1 var(--font-sans)}.backend-status-ok{background:#def7ec;color:#067647;border-color:#b7ebd2}.backend-status-warning{background:#fff2cc;color:#9c6500;border-color:#f3d37a}.backend-status-critical{background:#ffe4df;color:#b42318;border-color:#f5b5ae}.backend-card-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.backend-card-detail-grid div{min-width:0;padding:8px;border:1px solid var(--backend-border-soft);border-radius:var(--backend-radius);background:var(--backend-surface-muted)}.backend-card-detail-grid span{display:block;color:#667085;font:800 var(--text-2xs)/1.1 var(--font-sans);letter-spacing:.05em;text-transform:uppercase}.backend-card-detail-grid strong{display:block;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:850 var(--text-sm)/1.1 var(--font-sans)}.backend-kv-grid,.backend-record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.backend-kv-grid div,.backend-record-grid div{min-width:0;padding:10px;border:1px solid var(--backend-border-soft);border-radius:var(--backend-radius);background:var(--backend-surface-muted)}.backend-kv-grid span,.backend-record-grid span{display:block;color:#667085;font:800 var(--text-2xs)/1.2 var(--font-sans);letter-spacing:.06em;text-transform:uppercase}.backend-kv-grid strong,.backend-record-grid strong{display:block;margin-top:6px;font:800 var(--text-lg)/1.1 var(--font-sans);overflow:hidden;text-overflow:ellipsis}.backend-panel h2{margin:0 0 14px;font:800 var(--text-xl)/1.1 var(--font-sans);letter-spacing:0}.backend-drilldown-panel{grid-column:1/-1}.backend-drilldown-tabs{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:720px}.backend-drilldown-tabs button{height:30px;padding:0 10px;border:1px solid #dfe5ec;border-radius:999px;background:#fff;color:#667085;font:850 var(--text-xs)/1 var(--font-sans);cursor:pointer}.backend-drilldown-tabs button.active,.backend-drilldown-tabs button:hover{border-color:#1849a9;background:#eff6ff;color:#1849a9}.backend-drilldown-list{display:grid;gap:8px}.backend-drilldown-list div{display:grid;grid-template-columns:minmax(0,1.2fr) auto minmax(180px,.9fr);gap:12px;align-items:center;min-height:48px;padding:10px 12px;border:1px solid #e3e9f0;border-radius:8px;background:#f8fafc}.backend-drilldown-list span,.backend-drilldown-list strong,.backend-drilldown-list small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backend-drilldown-list span,.backend-drilldown-list strong{font:850 var(--text-sm)/1.2 var(--font-sans)}.backend-drilldown-list small{color:#667085;font:700 var(--text-xs)/1.2 var(--font-sans)}.backend-drilldown-list p{margin:0;padding:18px;color:#667085;font:750 var(--text-sm)/1.4 var(--font-sans)}.backend-home-stop-table{display:grid;gap:8px;margin-top:12px}.backend-home-stop-table-head,.backend-home-stop-table div{display:grid;grid-template-columns:minmax(0,1.2fr) 132px minmax(180px,.9fr);gap:12px;align-items:center}.backend-home-stop-table-head{color:#667085;font:800 var(--text-2xs)/1.2 var(--font-sans);letter-spacing:.06em;text-transform:uppercase}.backend-home-stop-table div{min-height:42px;padding:9px 10px;border:1px solid #e3e9f0;border-radius:8px;background:#f8fafc}.backend-home-stop-table strong,.backend-home-stop-table small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backend-home-stop-table strong{font:850 var(--text-sm)/1.2 var(--font-sans)}.backend-home-stop-table small{color:#667085;font:700 var(--text-xs)/1.2 var(--font-sans)}.backend-home-stop-status{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:0 9px;border:1px solid #d7dee8;border-radius:999px;background:#eef4ff;color:#1849a9;font:850 var(--text-2xs)/1 var(--font-sans);text-transform:uppercase}.backend-home-stop-status.is-created{background:#def7ec;color:#067647;border-color:#b7ebd2}.backend-home-stop-status.is-already_existed{background:#f2f5f8;color:#475467;border-color:#d7dee8}.backend-home-stop-status.is-repaired{background:#fff2cc;color:#9c6500;border-color:#f3d37a}.backend-home-stop-status.is-failed{background:#ffe4df;color:#b42318;border-color:#f5b5ae}.backend-home-stop-table p{margin:0;padding:12px;color:#667085;font:750 var(--text-sm)/1.4 var(--font-sans)}.backend-home-stop-table button{justify-self:start;min-height:30px;padding:0 10px;border:1px solid #dfe5ec;border-radius:999px;background:#fff;color:#1849a9;font:850 var(--text-xs)/1 var(--font-sans);cursor:pointer}.backend-deleted-stops-panel{max-width:1440px;margin:0 auto 16px}.backend-deleted-stops-table{display:grid;gap:0;overflow:hidden;border:1px solid #dfe5ec;border-radius:10px;background:#fff}.backend-deleted-stops-head,.backend-deleted-stops-row{display:grid;grid-template-columns:minmax(280px,1.5fr) minmax(180px,.7fr) minmax(220px,1fr);gap:12px;align-items:center;padding:10px 12px;border-bottom:1px solid #edf1f5}.backend-deleted-stops-head{background:#f8fafc;color:#667085;font:850 var(--text-2xs)/1.2 var(--font-sans);letter-spacing:.06em;text-transform:uppercase}.backend-deleted-stops-row{color:#1a1a17;font:700 var(--text-sm)/1.35 var(--font-sans)}.backend-deleted-stops-row:last-of-type{border-bottom:0}.backend-deleted-stops-head label,.backend-deleted-stops-row>span:first-child{display:flex;align-items:center;gap:9px;min-width:0}.backend-deleted-stops-head input,.backend-deleted-stops-row input{width:16px;height:16px;flex:0 0 auto;accent-color:#1849a9}.backend-deleted-stops-row>span{min-width:0}.backend-deleted-stops-row strong,.backend-deleted-stops-row small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backend-deleted-stops-row strong{font:850 var(--text-sm)/1.25 var(--font-sans)}.backend-deleted-stops-row small{margin-top:3px;color:#667085;font:700 var(--text-xs)/1.25 var(--font-sans)}.backend-deleted-stops-table>p{margin:0;padding:14px 12px;color:#667085;font:750 var(--text-sm)/1.4 var(--font-sans)}.backend-trend-panel{grid-column:1/-1}.backend-panel-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:12px}.backend-panel-title-row h2{margin-bottom:5px}.backend-panel-title-row p{margin:0;color:#667085;font:650 var(--text-sm)/1.4 var(--font-sans)}.backend-trend-summary{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.backend-trend-summary span{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:0 10px;border:1px solid #e5dfd3;border-radius:999px;background:#f8fafc;color:#667085;font:800 var(--text-xs)/1 var(--font-sans)}.backend-trend-summary b{color:#1a1a17;font-size:var(--text-md)}.backend-trend-chart{position:relative;width:100%;min-height:280px;border:1px solid #e3e9f0;border-radius:10px;background:linear-gradient(180deg,#fff,#f8fafc);overflow:hidden}.backend-trend-chart svg{display:block;width:100%;height:280px}.backend-trend-grid{stroke:#e3e9f0;stroke-width:1}.backend-trend-axis{fill:#667085;font:700 11px var(--font-sans)}.backend-trend-axis-right{fill:#1849a9}.backend-trend-axis-title{fill:#667085;font:900 11px var(--font-sans);letter-spacing:.08em;text-transform:uppercase}.backend-trend-bar{shape-rendering:geometricPrecision}.backend-trend-bar-assigned{fill:#bfd7ff}.backend-trend-bar-completed{fill:#168056}.backend-trend-line{fill:none;stroke:#1849a9;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 4px 8px rgba(24,73,169,.18))}.backend-trend-dot{fill:#1849a9;stroke:#fff;stroke-width:2}.backend-trend-empty{position:absolute;top:58px;right:72px;bottom:62px;left:72px;display:grid;place-items:center;padding:18px;color:#667085;font:800 var(--text-md)/1.4 var(--font-sans);text-align:center;background:#ffffffc7;border:1px solid rgba(223,229,236,.78);border-radius:10px;box-shadow:0 14px 30px #201c120f}.backend-trend-footer{display:flex;flex-wrap:wrap;gap:12px 18px;margin-top:12px;color:#667085;font:800 var(--text-xs)/1.3 var(--font-sans)}.backend-trend-footer span{display:inline-flex;align-items:center;gap:7px}.backend-trend-footer i{width:12px;height:12px;border-radius:4px;display:inline-block}.legend-stop-assigned{background:#bfd7ff}.legend-stop-completed{background:#168056}.legend-driver-line{width:18px!important;height:4px!important;border-radius:999px!important;background:#1849a9}.backend-trend-details{margin-top:14px;border:1px solid #e3e9f0;border-radius:10px;overflow:hidden;background:#fff}.backend-trend-details-head,.backend-trend-details-row{display:grid;grid-template-columns:minmax(78px,1.1fr) repeat(4,minmax(70px,.85fr));align-items:center;gap:8px;padding:10px 12px}.backend-trend-details-head{background:#f2f5f8;color:#667085;font:900 var(--text-2xs)/1.1 var(--font-sans);letter-spacing:.07em;text-transform:uppercase}.backend-trend-details-row{border-top:1px solid #e3e9f0;color:#1f1e1b;font:750 var(--text-sm)/1.2 var(--font-sans)}.backend-trend-details-row span{color:#667085;font-family:var(--font-mono)}.backend-trend-details-row strong{font:850 var(--text-md)/1 var(--font-sans)}.backend-table,.backend-error-list{display:grid;gap:8px}.backend-table div,.backend-error-list div{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:10px;border:1px solid #e3e9f0;border-radius:8px;background:#f8fafc}.backend-error-list div{grid-template-columns:minmax(160px,.5fr) minmax(0,1fr) auto}.backend-table span,.backend-error-list span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:700 var(--text-sm)/1.2 var(--font-mono)}.backend-table b,.backend-error-list strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:800 var(--text-sm)/1.2 var(--font-sans)}.backend-table small,.backend-error-list small{color:#667085;font:700 var(--text-xs)/1.2 var(--font-sans)}.backend-dashboard-shell--nav{display:grid;grid-template-columns:248px minmax(0,1fr);padding:0;overflow:hidden}.backend-left-nav{min-width:0;height:100vh;overflow-y:auto;padding:18px 14px;background:#fff;border-right:1px solid #dfe5ec;display:flex;flex-direction:column}.backend-left-nav-brand{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;padding:4px 6px 18px;margin-bottom:12px;border-bottom:1px solid #edf1f5}.backend-left-nav-brand strong,.backend-left-nav-brand span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backend-left-nav-brand strong{color:#1a1a17;font:900 var(--text-md)/1.1 var(--font-sans)}.backend-left-nav-brand span{margin-top:3px;color:#667085;font:750 var(--text-xs)/1.2 var(--font-sans)}.backend-left-nav nav{display:grid;gap:6px}.backend-left-nav nav button{position:relative;min-width:0;display:grid;grid-template-columns:22px minmax(0,1fr) auto;grid-template-areas:"icon label badge" "icon detail detail";gap:4px 8px;align-items:center;padding:10px 10px 10px 12px;border:1px solid transparent;border-radius:8px;background:transparent;color:#475467;text-align:left;cursor:pointer}.backend-left-nav nav button:before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:3px;border-radius:999px;background:transparent}.backend-left-nav nav button:hover{background:#f8fafc;border-color:#edf1f5}.backend-left-nav nav button.active{background:#eff6ff;border-color:#bfd7ff;color:#1849a9}.backend-left-nav nav button.active:before{background:#1849a9}.backend-left-nav nav button.is-critical:not(.active) b{border-color:#f5b5ae;background:#fff0ee;color:#b42318}.backend-left-nav nav button.is-warning:not(.active) b{border-color:#f3d37a;background:#fff8e1;color:#9c6500}.backend-left-nav nav svg{grid-area:icon;align-self:start;margin-top:1px;color:#98a2b3}.backend-left-nav nav button.active svg{color:#1849a9}.backend-left-nav nav span{grid-area:label;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:900 var(--text-sm)/1.1 var(--font-sans)}.backend-left-nav nav b{grid-area:badge;max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:3px 7px;border:1px solid #d7dee8;border-radius:999px;background:#fff;color:#667085;font:900 var(--text-2xs)/1 var(--font-sans)}.backend-left-nav nav button.active b{color:#1849a9;border-color:#bfd7ff}.backend-left-nav nav small{grid-area:detail;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#667085;font:750 var(--text-xs)/1.2 var(--font-sans)}.backend-left-nav-foot{margin-top:auto;padding:14px 10px 4px;border-top:1px solid #edf1f5;color:#667085}.backend-left-nav-foot span,.backend-left-nav-foot strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backend-left-nav-foot span{font:900 var(--text-2xs)/1 var(--font-sans);letter-spacing:.07em;text-transform:uppercase}.backend-left-nav-foot strong{margin-top:7px;color:#1a1a17;font:850 var(--text-sm)/1.15 var(--font-sans)}.backend-dashboard-workspace{min-width:0;height:100vh;overflow-y:auto;padding:24px;-webkit-overflow-scrolling:touch}.backend-dashboard-workspace .backend-dashboard-header,.backend-dashboard-workspace .backend-warning,.backend-dashboard-workspace .backend-dashboard-error,.backend-tab-panel,.backend-tab-intro,.backend-metric-grid,.backend-panel-grid,.backend-table-inspector-layout,.backend-two-column,.backend-request-log-layout{width:100%;max-width:var(--backend-max-width);margin-left:auto;margin-right:auto}.backend-dashboard-workspace .backend-dashboard-header{grid-template-columns:1fr auto}.backend-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.backend-tab-panel{display:grid;gap:var(--backend-gap)}.backend-tab-panel>.backend-panel,.backend-tab-panel>.backend-trend-panel,.backend-tab-panel>.backend-deleted-stops-panel{width:100%;max-width:var(--backend-max-width);margin-left:auto;margin-right:auto}.backend-tab-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:18px;border:1px solid var(--backend-border);border-radius:var(--backend-radius);background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 18px 45px -38px #0f172a3d}.backend-tab-intro-main{min-width:0;display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:start}.backend-tab-icon{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--backend-border);border-radius:var(--backend-radius);background:var(--backend-surface);color:var(--backend-accent)}.backend-tab-intro-main p{margin:0 0 6px;color:#1849a9;font:900 var(--text-2xs)/1.1 var(--font-sans);letter-spacing:.08em;text-transform:uppercase}.backend-tab-intro-main h2{margin:0;color:#1a1a17;font:900 28px/1.05 var(--font-sans);letter-spacing:0}.backend-tab-intro-main span:not(.backend-tab-icon){display:block;max-width:760px;margin-top:7px;color:#667085;font:650 var(--text-sm)/1.45 var(--font-sans)}.backend-tab-intro-side{min-width:260px;display:grid;justify-items:end;gap:10px}.backend-tab-chips{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.backend-tab-chips span{min-height:30px;display:inline-flex;align-items:center;gap:6px;padding:0 10px;border:1px solid #e3e9f0;border-radius:999px;background:#fff;color:#667085;font:800 var(--text-xs)/1 var(--font-sans)}.backend-tab-chips b{color:#1a1a17;font:900 var(--text-sm)/1 var(--font-mono)}.backend-tab-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.backend-metric-grid,.backend-mini-grid{width:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:var(--backend-gap-sm)}.backend-mini-card{min-width:0;min-height:88px;display:grid;align-content:start;padding:14px;border:1px solid var(--backend-border);border-radius:var(--backend-radius);background:var(--backend-surface);box-shadow:0 14px 32px -30px #0f172a38}.backend-mini-card span,.backend-mini-card strong,.backend-mini-card small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backend-mini-card.is-ok{background:#fbfffd;border-color:#b7ebd2}.backend-mini-card.is-warning{background:#fffaf0;border-color:#f3d37a}.backend-mini-card.is-critical{background:#fff7f5;border-color:#f5b5ae}.backend-mini-card span{color:#667085;font:900 var(--text-2xs)/1.1 var(--font-sans);letter-spacing:.06em;text-transform:uppercase}.backend-mini-card strong{margin-top:8px;color:#1a1a17;font:900 var(--text-xl)/1 var(--font-sans)}.backend-mini-card small{margin-top:6px;color:#667085;font:750 var(--text-xs)/1.2 var(--font-sans)}.backend-incident-grid{align-items:stretch}.backend-incident-groups,.backend-request-log-panel,.backend-request-inspector{min-height:520px}.backend-incident-group-list{display:grid;gap:8px}.backend-incident-group-list button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"status title count" "status meta req";gap:5px 9px;align-items:center;min-width:0;padding:10px;border:1px solid var(--backend-border-soft);border-radius:var(--backend-radius);background:var(--backend-surface-muted);color:#1a1a17;text-align:left;cursor:pointer}.backend-incident-group-list button.active{border-color:#f5b5ae;background:#fff0ee}.backend-incident-group-list .backend-status{grid-area:status}.backend-incident-group-list strong{grid-area:title;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:900 var(--text-sm)/1.2 var(--font-sans)}.backend-incident-group-list small{grid-area:meta;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#667085;font:750 var(--text-xs)/1.2 var(--font-sans)}.backend-incident-group-list b{grid-area:count;color:#1a1a17;font:900 var(--text-xs)/1 var(--font-sans)}.backend-incident-group-list em{grid-area:req;color:#667085;font:750 var(--text-2xs)/1.2 var(--font-mono);font-style:normal}.backend-data-table{display:grid;gap:0;overflow:auto;border:1px solid var(--backend-border-soft);border-radius:var(--backend-radius);background:var(--backend-surface)}.backend-data-table-head,.backend-data-table-row{display:grid;gap:10px;align-items:center;min-width:max(100%,var(--backend-table-min-width));padding:9px 10px}.backend-request-log-panel .backend-data-table{--backend-table-min-width:920px}.backend-data-table-head{position:sticky;top:0;z-index:1;border-bottom:1px solid var(--backend-border-soft);background:var(--backend-surface-subtle);color:var(--backend-muted);font:900 var(--text-2xs)/1.1 var(--font-sans);letter-spacing:.06em;text-transform:uppercase}.backend-data-table-row{border:0;border-bottom:1px solid #edf1f5;background:var(--backend-surface);color:var(--backend-text);text-align:left;font:750 var(--text-xs)/1.25 var(--font-sans)}button.backend-data-table-row{cursor:pointer}.backend-data-table-row:last-of-type{border-bottom:0}.backend-data-table-row:hover{background:#f8fafc}.backend-data-table-row.is-critical{background:#fff7f5}.backend-data-table-row.is-warning{background:#fffaf0}.backend-data-table-row.is-ok{background:#fbfffd}.backend-data-table-row.is-selected{outline:2px solid #1849a9;outline-offset:-2px;background:#eff6ff}.backend-data-table-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backend-data-table-row span:nth-child(2),.backend-data-table-row span:nth-child(6),.backend-data-table-row span:nth-child(7),.backend-data-table-row span:nth-child(8){font-family:var(--font-mono)}.backend-data-table>p{margin:0;padding:14px;color:#667085;font:750 var(--text-sm)/1.4 var(--font-sans)}.backend-request-inspector{display:flex;flex-direction:column}.backend-panel-grid--incident .backend-request-inspector,.backend-table-inspector-layout .backend-request-inspector{position:sticky;top:16px;max-height:calc(100vh - 48px);overflow:auto}.backend-inspector-hero{display:grid;gap:8px;padding:12px;border:1px solid #e3e9f0;border-radius:8px;background:#f8fafc}.backend-inspector-hero strong{min-width:0;overflow-wrap:anywhere;font:900 var(--text-md)/1.25 var(--font-sans)}.backend-inspector-hero small{color:#667085;font:750 var(--text-xs)/1.35 var(--font-sans)}.backend-inspector-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:12px}.backend-inspector-grid div,.backend-inspector-block{min-width:0;padding:9px;border:1px solid #e3e9f0;border-radius:8px;background:#fff}.backend-inspector-grid span,.backend-inspector-block span{display:block;color:#667085;font:900 var(--text-2xs)/1.1 var(--font-sans);letter-spacing:.06em;text-transform:uppercase}.backend-inspector-grid strong,.backend-inspector-block code{display:block;min-width:0;margin-top:6px;overflow-wrap:anywhere;color:#1a1a17;font:850 var(--text-xs)/1.35 var(--font-mono)}.backend-inspector-block{margin-top:12px;background:#f8fafc}.backend-inspector-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:14px}.backend-inspector-actions button,.backend-log-filter-bar input,.backend-log-filter-bar select,.backend-workflow-list button,.backend-clear-filter{border:1px solid #dfe5ec;border-radius:8px;background:#fff;color:#1a1a17}.backend-inspector-actions button{min-height:34px;padding:0 10px;color:#1849a9;font:850 var(--text-xs)/1 var(--font-sans);cursor:pointer}.backend-inspector-actions button:disabled{opacity:.5;cursor:not-allowed}.backend-clear-filter{min-height:34px;padding:0 11px;color:#1849a9;font:850 var(--text-xs)/1 var(--font-sans);cursor:pointer}.backend-log-filter-bar{display:grid;grid-template-columns:minmax(220px,1fr) repeat(3,minmax(130px,.35fr));gap:10px;margin-bottom:12px}.backend-log-filter-bar label{min-width:0;display:grid;gap:5px;color:#667085;font:900 var(--text-2xs)/1.1 var(--font-sans);letter-spacing:.06em;text-transform:uppercase}.backend-log-filter-bar input,.backend-log-filter-bar select{min-width:0;height:36px;padding:0 10px;color:#1a1a17;font:750 var(--text-sm)/1 var(--font-sans);text-transform:none;letter-spacing:0}.backend-two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--backend-gap)}.backend-request-log-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(340px,.72fr);gap:var(--backend-gap);align-items:start}.backend-flow-check-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.backend-flow-check-grid div{min-width:0;padding:12px;border:1px solid #e3e9f0;border-radius:9px;background:#f8fafc}.backend-flow-check-grid div.is-ok{background:#fbfffd;border-color:#b7ebd2}.backend-flow-check-grid div.is-warning{background:#fffaf0;border-color:#f3d37a}.backend-flow-check-grid div.is-critical{background:#fff7f5;border-color:#f5b5ae}.backend-flow-check-grid strong,.backend-flow-check-grid b,.backend-flow-check-grid small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis}.backend-flow-check-grid strong{margin-top:10px;color:#1a1a17;font:900 var(--text-sm)/1.15 var(--font-sans)}.backend-flow-check-grid b{margin-top:6px;color:#1a1a17;font:900 var(--text-lg)/1 var(--font-sans)}.backend-flow-check-grid small{margin-top:7px;color:#667085;font:700 var(--text-xs)/1.35 var(--font-sans)}.backend-record-grid-wide{grid-template-columns:repeat(4,minmax(0,1fr))}.backend-workflow-list{display:grid;gap:8px}.backend-workflow-list button{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title badge" "detail badge";gap:5px 12px;align-items:center;min-height:58px;padding:10px 12px;text-align:left;cursor:pointer}.backend-workflow-list button:disabled{opacity:.62;cursor:not-allowed}.backend-workflow-list strong{grid-area:title;font:900 var(--text-sm)/1.2 var(--font-sans)}.backend-workflow-list span{grid-area:detail;color:#667085;font:750 var(--text-xs)/1.2 var(--font-sans)}.backend-workflow-list b{grid-area:badge;padding:4px 8px;border:1px solid #d7dee8;border-radius:999px;background:#f2f5f8;color:#667085;font:900 var(--text-2xs)/1 var(--font-sans)}.backend-photo-integrity-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.backend-photo-integrity-actions button{min-height:34px;padding:0 11px}.backend-photo-integrity-actions button:disabled{cursor:not-allowed;opacity:.62}.backend-photo-integrity-confirmation{display:flex;align-items:center;gap:8px;width:max-content;max-width:100%;margin-top:12px;padding:9px 10px;border:1px solid #f3d37a;border-radius:var(--backend-radius);background:#fffaf0;color:#7a4b00;font:800 var(--text-xs)/1.35 var(--font-sans)}.backend-photo-integrity-confirmation input,.backend-photo-integrity-select input{width:16px;height:16px;margin:0;flex:0 0 auto;accent-color:#1849a9}.backend-photo-integrity-confirmation span,.backend-photo-integrity-select span{min-width:0}.backend-photo-integrity-select{display:inline-flex;align-items:center;gap:6px;color:#1849a9;font:850 var(--text-xs)/1 var(--font-sans)}.backend-photo-integrity-state{display:inline-flex;align-items:center;justify-content:center;max-width:100%;padding:4px 8px;border:1px solid #d7dee8;border-radius:999px;background:#f2f5f8;color:#667085;font:900 var(--text-2xs)/1.1 var(--font-sans);text-align:center;white-space:normal}.backend-photo-integrity-state.is-ok{background:#e7f7ee;border-color:#b7ebd2;color:#216b45}.backend-photo-integrity-state.is-warning{background:#fff4d6;border-color:#f3d37a;color:#7a4b00}.backend-photo-integrity-state.is-critical{background:#ffe4df;border-color:#f5b5ae;color:#b42318}.backend-photo-integrity-state.is-neutral{background:#f2f5f8;border-color:#d7dee8;color:#667085}.backend-photo-integrity-notice{margin:12px 0 0;padding:10px 12px;border:1px solid #f3d37a;border-radius:var(--backend-radius);background:#fffaf0;color:#7a4b00;font:750 var(--text-sm)/1.4 var(--font-sans)}.backend-audit-warning{margin-bottom:0}.backend-archive-tools{display:grid;gap:16px}.backend-archive-tools .backend-panel-title-row{margin-bottom:0}.backend-archive-tools button{min-height:36px;padding:0 12px;border:1px solid var(--backend-border);border-radius:var(--backend-radius);background:var(--backend-surface);color:var(--backend-accent);font:850 var(--text-xs)/1 var(--font-sans);cursor:pointer}.backend-archive-tools button:hover:not(:disabled){border-color:var(--backend-accent);background:#eff6ff}.backend-archive-tools button:disabled{opacity:.5;cursor:not-allowed}.backend-archive-range{display:grid;grid-template-columns:minmax(170px,.4fr) minmax(170px,.4fr) auto;gap:10px;align-items:end;padding:14px;border:1px solid var(--backend-border-soft);border-radius:var(--backend-radius);background:var(--backend-surface-muted)}.backend-archive-range label,.backend-archive-removal>label:first-child{display:grid;gap:6px;color:var(--backend-muted);font:850 var(--text-xs)/1 var(--font-sans)}.backend-archive-range input,.backend-archive-removal textarea{width:100%;box-sizing:border-box;border:1px solid var(--backend-border);border-radius:var(--backend-radius);background:var(--backend-surface);color:var(--backend-text);font:750 var(--text-sm)/1 var(--font-sans)}.backend-archive-range input{height:38px;padding:0 10px}.backend-archive-range input:focus,.backend-archive-removal textarea:focus{outline:2px solid rgba(24,73,169,.14);border-color:var(--backend-accent)}.backend-archive-range button,.backend-archive-confirm-row button{background:var(--backend-accent);border-color:var(--backend-accent);color:#fff}.backend-archive-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.backend-archive-preview div{padding:11px;border:1px solid var(--backend-border-soft);border-radius:var(--backend-radius);background:var(--backend-surface-muted)}.backend-archive-preview span{display:block;color:var(--backend-muted);font:800 var(--text-2xs)/1.2 var(--font-sans);text-transform:uppercase;letter-spacing:.06em}.backend-archive-preview strong{display:block;margin-top:7px;color:var(--backend-text);font:850 var(--text-xl)/1 var(--font-sans)}.backend-archive-confirm-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid #f3d37a;border-radius:var(--backend-radius);background:#fffaf0}.backend-archive-confirm-row label,.backend-archive-removal-confirm{display:flex;align-items:flex-start;gap:9px;color:var(--backend-text);font:750 var(--text-sm)/1.4 var(--font-sans)}.backend-archive-confirm-row input,.backend-archive-removal-confirm input,.backend-archive-select input{width:16px;height:16px;accent-color:var(--backend-accent)}.backend-archive-message{margin:0;padding:10px 12px;border:1px solid #c9daf8;border-radius:var(--backend-radius);background:#eff6ff;color:var(--backend-accent);font:750 var(--text-sm)/1.4 var(--font-sans)}.backend-archive-message.is-error{border-color:#f5b5ae;background:#fff7f5;color:var(--backend-critical)}.backend-archive-list-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding-top:2px}.backend-archive-list-head h3{margin:0;font:850 var(--text-lg)/1.15 var(--font-sans)}.backend-archive-list-head p{margin:5px 0 0;color:var(--backend-muted);font:650 var(--text-xs)/1.4 var(--font-sans)}.backend-archive-list-head>span{color:var(--backend-muted);font:800 var(--text-xs)/1 var(--font-sans)}.backend-archive-list{border:1px solid var(--backend-border-soft);border-radius:var(--backend-radius);overflow:hidden}.backend-archive-row{display:grid;grid-template-columns:28px minmax(260px,1.3fr) 140px 170px 80px;gap:12px;align-items:center;min-height:58px;padding:10px 12px;border-top:1px solid var(--backend-border-soft);background:var(--backend-surface)}.backend-archive-row:first-child{border-top:0}.backend-archive-row>div{min-width:0}.backend-archive-row strong,.backend-archive-row div>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backend-archive-row strong{font:800 var(--text-sm)/1.2 var(--font-sans)}.backend-archive-row div>span,.backend-archive-row>span{margin-top:5px;color:var(--backend-muted);font:700 var(--text-xs)/1.25 var(--font-sans)}.backend-archive-select{display:grid;place-items:center}.backend-archive-state{justify-self:start;display:inline-flex;align-items:center;min-height:25px;padding:0 8px;border:1px solid var(--backend-border);border-radius:999px;background:var(--backend-surface-subtle);white-space:nowrap}.backend-archive-state.is-ok{border-color:#b7ebd2;background:#def7ec;color:var(--backend-ok)}.backend-archive-state.is-warning{border-color:#f3d37a;background:#fff2cc;color:var(--backend-warning)}.backend-archive-state.is-critical{border-color:#f5b5ae;background:#ffe4df;color:var(--backend-critical)}.backend-archive-state.is-progress{border-color:#c9daf8;background:#eff6ff;color:var(--backend-accent)}.backend-archive-empty{margin:0;padding:28px;text-align:center;color:var(--backend-muted);font:700 var(--text-sm)/1.4 var(--font-sans)}.backend-archive-removal{display:grid;grid-template-columns:minmax(260px,1fr) minmax(260px,1fr) auto;gap:12px;align-items:end;padding:14px;border:1px solid #f5b5ae;border-radius:var(--backend-radius);background:#fff7f5}.backend-archive-removal textarea{min-height:62px;padding:9px 10px;resize:vertical;line-height:1.35}.backend-archive-removal>button{color:#fff;background:var(--backend-critical);border-color:var(--backend-critical)}.backend-monthly-reports{--monthly-purple:#6f3ee0;--monthly-green:#168056}.backend-monthly-month-select{display:grid;gap:5px;min-width:190px;color:#667085;font:900 var(--text-2xs)/1.1 var(--font-sans);letter-spacing:.06em;text-transform:uppercase}.backend-monthly-month-select select{height:38px;padding:0 34px 0 10px;border:1px solid var(--backend-border);border-radius:var(--backend-radius);background:var(--backend-surface);color:var(--backend-text);font:800 var(--text-sm)/1 var(--font-sans);letter-spacing:0;text-transform:none}.backend-monthly-layout{width:100%;max-width:var(--backend-max-width);margin:0 auto;display:grid;grid-template-columns:minmax(360px,.82fr) minmax(520px,1.18fr);gap:var(--backend-gap);align-items:start}.backend-monthly-editor{display:grid;gap:14px;position:sticky;top:0}.backend-monthly-editor label{display:grid;gap:6px;color:#475467;font:850 var(--text-xs)/1.2 var(--font-sans)}.backend-monthly-editor textarea{width:100%;min-height:86px;padding:10px 11px;resize:vertical;border:1px solid #d7dee8;border-radius:var(--backend-radius);background:#fff;color:#1a1a17;font:650 var(--text-sm)/1.45 var(--font-sans)}.backend-monthly-editor textarea:focus{outline:2px solid rgba(111,62,224,.2);border-color:var(--monthly-purple)}.backend-monthly-editor label small{color:#98a2b3;font:700 var(--text-2xs)/1.2 var(--font-sans)}.backend-monthly-editor-actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:4px}.backend-monthly-editor-actions button,.backend-monthly-library button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 11px;border:1px solid #d7dee8;border-radius:var(--backend-radius);background:#fff;color:#344054;font:850 var(--text-xs)/1 var(--font-sans);cursor:pointer}.backend-monthly-editor-actions button.primary{border-color:var(--monthly-purple);background:var(--monthly-purple);color:#fff}.backend-monthly-editor-actions button:disabled,.backend-monthly-library button:disabled{opacity:.5;cursor:not-allowed}.backend-monthly-preview{min-width:0;overflow:hidden;border:1px solid #d8d2c4;border-radius:var(--backend-radius);background:#fffdfa;box-shadow:0 18px 45px -36px #1d170d66}.backend-monthly-preview>header{padding:28px 30px;background:#eee8f7;border-bottom:1px solid #d8d2c4}.backend-monthly-preview>header span{display:block;color:var(--monthly-purple);font:900 var(--text-2xs)/1 var(--font-sans);letter-spacing:.08em}.backend-monthly-preview>header h2{margin:9px 0 5px;color:#1a1a17;font:900 25px/1.08 var(--font-sans);letter-spacing:0}.backend-monthly-preview>header p{margin:0;color:#667085;font:750 var(--text-sm)/1.3 var(--font-sans)}.backend-monthly-preview-section{padding:20px 30px;border-bottom:1px solid #ebe7df}.backend-monthly-preview-section h4{margin:0 0 10px;color:#1a1a17;font:900 var(--text-sm)/1.15 var(--font-sans);letter-spacing:0}.backend-monthly-preview-section p,.backend-monthly-preview-section li{color:#475467;font:650 var(--text-sm)/1.5 var(--font-sans)}.backend-monthly-preview-section p{margin:0;white-space:pre-wrap}.backend-monthly-preview-section ul{display:grid;gap:7px;margin:0;padding-left:18px}.backend-monthly-preview-section li::marker{color:var(--monthly-purple)}.backend-monthly-activity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:20px 30px;border-bottom:1px solid #ebe7df}.backend-monthly-activity-grid div{min-width:0;padding:11px 12px;border:1px solid #e5e1d7;border-radius:var(--backend-radius);background:#f7f5f0}.backend-monthly-activity-grid span,.backend-monthly-health-band span{display:block;color:#667085;font:850 var(--text-2xs)/1.15 var(--font-sans);letter-spacing:.04em;text-transform:uppercase}.backend-monthly-activity-grid strong{display:block;margin-top:7px;color:#1a1a17;font:900 var(--text-lg)/1 var(--font-sans)}.backend-monthly-health-band{display:grid;gap:10px;padding:18px 30px;border-bottom:1px solid #b7ddc8;background:#eaf6ef}.backend-monthly-health-band div{display:grid;grid-template-columns:160px minmax(0,1fr);gap:12px;align-items:center}.backend-monthly-health-band strong{min-width:0;color:#174f37;font:850 var(--text-xs)/1.35 var(--font-sans)}.backend-monthly-deployments{display:grid;gap:10px}.backend-monthly-deployments div{display:grid;grid-template-columns:minmax(120px,.32fr) minmax(0,1fr);gap:10px;padding-top:10px;border-top:1px solid #ebe7df}.backend-monthly-deployments div:first-child{padding-top:0;border-top:0}.backend-monthly-deployments strong{font:850 var(--text-xs)/1.35 var(--font-sans)}.backend-monthly-deployments span{color:#667085;font:650 var(--text-xs)/1.4 var(--font-sans)}.backend-monthly-library .backend-panel-title-row{align-items:center}.backend-monthly-library button.danger{border-color:#f1b2aa;color:#b42318;background:#fff7f5}.backend-monthly-report-list{overflow:auto;border:1px solid var(--backend-border-soft);border-radius:var(--backend-radius)}.backend-monthly-report-list-head,.backend-monthly-report-row{min-width:860px;display:grid;grid-template-columns:26px minmax(150px,.8fr) 110px minmax(190px,1fr) 100px 132px;gap:10px;align-items:center;padding:10px 12px}.backend-monthly-report-list-head{position:sticky;top:0;z-index:1;border-bottom:1px solid var(--backend-border-soft);background:var(--backend-surface-subtle);color:var(--backend-muted);font:900 var(--text-2xs)/1.1 var(--font-sans);letter-spacing:.06em;text-transform:uppercase}.backend-monthly-report-row{min-height:56px;border-bottom:1px solid var(--backend-border-soft);color:#344054;font:750 var(--text-xs)/1.3 var(--font-sans)}.backend-monthly-report-row:last-of-type{border-bottom:0}.backend-monthly-report-row>span:not(.backend-status){white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#667085}.backend-monthly-report-row>div{display:flex;gap:6px}.backend-monthly-report-row>div button{width:34px;padding:0}.backend-monthly-report-list>p{margin:0;padding:24px;text-align:center;color:#667085;font:750 var(--text-sm)/1.4 var(--font-sans)}@media(max-width:1100px){.backend-panel-grid--overview,.backend-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.backend-panel-grid--overview .backend-card-wide,.backend-grid .backend-card-wide{grid-column:span 2}.backend-panel-grid--details,.backend-dashboard-panels,.backend-dashboard-header{grid-template-columns:1fr}.backend-today-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.backend-drilldown-tabs{justify-content:flex-start;max-width:none}.backend-drilldown-list div{grid-template-columns:minmax(0,1fr) auto}.backend-drilldown-list small{grid-column:1/-1}.backend-home-stop-table-head{display:none}.backend-home-stop-table div{grid-template-columns:minmax(0,1fr) auto}.backend-home-stop-table small{grid-column:1/-1}.backend-deleted-stops-head{display:none}.backend-deleted-stops-row{grid-template-columns:1fr;gap:8px}.backend-deleted-stops-row strong,.backend-deleted-stops-row small{white-space:normal}.backend-dashboard-shell--nav{grid-template-columns:1fr;height:100dvh;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.backend-left-nav{height:auto;overflow:visible;border-right:0;border-bottom:1px solid #dfe5ec}.backend-left-nav nav{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.backend-left-nav nav button{min-width:180px}.backend-left-nav-foot{display:none}.backend-dashboard-workspace{height:auto;min-height:0;overflow:visible}.backend-metric-grid,.backend-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.backend-panel-grid--incident,.backend-incident-grid,.backend-panel-grid--two,.backend-two-column,.backend-table-inspector-layout,.backend-request-log-layout{grid-template-columns:1fr}.backend-flow-check-grid,.backend-record-grid-wide{grid-template-columns:repeat(2,minmax(0,1fr))}.backend-incident-groups,.backend-request-log-panel,.backend-request-inspector{min-height:0}.backend-panel-grid--incident .backend-request-inspector,.backend-table-inspector-layout .backend-request-inspector{position:static;max-height:none}.backend-log-filter-bar{grid-template-columns:1fr 1fr}.backend-tab-intro{grid-template-columns:1fr}.backend-tab-intro-side{min-width:0;justify-items:start}.backend-tab-chips,.backend-photo-integrity-actions{justify-content:flex-start}.backend-archive-row{grid-template-columns:28px minmax(240px,1fr) 130px 150px 75px}.backend-archive-removal{grid-template-columns:1fr 1fr}.backend-archive-removal>button{grid-column:2;justify-self:end}.backend-monthly-layout{grid-template-columns:1fr}.backend-monthly-editor{position:static}}@media(max-width:680px){.backend-dashboard-shell{padding:16px}.backend-dashboard-shell--nav{padding:0}.backend-left-nav{padding:12px 14px 10px}.backend-left-nav-brand{gap:8px;padding:2px 2px 12px;margin-bottom:10px}.backend-left-nav-brand .auth-logo{width:40px;height:40px}.backend-left-nav nav button{min-width:132px;grid-template-columns:18px minmax(0,1fr) auto;gap:3px 6px;padding:8px 8px 8px 10px}.backend-left-nav nav svg{width:15px;height:15px}.backend-left-nav nav span{font-size:12px}.backend-left-nav nav small{font-size:10px}.backend-left-nav nav b{max-width:44px;padding:2px 6px}.backend-dashboard-workspace{padding:14px}.backend-dashboard-workspace .backend-dashboard-header{grid-template-columns:1fr}.backend-header-actions{justify-content:flex-start}.backend-dashboard-header{padding:16px;margin-bottom:16px}.backend-dashboard-header h1{font-size:30px;line-height:1.05}.backend-dashboard-header span{overflow-wrap:anywhere}.backend-panel-title-row{display:block}.backend-archive-range{grid-template-columns:1fr 1fr}.backend-archive-range button{grid-column:1/-1}.backend-archive-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.backend-archive-confirm-row{align-items:stretch;flex-direction:column}.backend-archive-row{grid-template-columns:24px 1fr}.backend-archive-row>*:not(.backend-archive-select){grid-column:2}.backend-archive-row>button{justify-self:start}.backend-archive-removal{grid-template-columns:1fr}.backend-archive-removal>button{grid-column:auto;justify-self:stretch}.backend-monthly-month-select,.backend-monthly-month-select select{width:100%}.backend-monthly-editor-actions button{flex:1 1 150px}.backend-monthly-preview>header,.backend-monthly-preview-section,.backend-monthly-activity-grid,.backend-monthly-health-band{padding-left:18px;padding-right:18px}.backend-monthly-activity-grid{grid-template-columns:1fr}.backend-monthly-health-band div{grid-template-columns:1fr;gap:5px}.backend-monthly-deployments div{grid-template-columns:1fr;gap:4px}.backend-photo-integrity-actions{margin-top:12px}.backend-photo-integrity-actions button{flex:1 1 150px}.backend-photo-integrity-confirmation{width:100%;align-items:flex-start}.backend-action-strip,.backend-today-grid,.backend-panel-grid--overview,.backend-grid,.backend-mini-grid,.backend-log-filter-bar,.backend-flow-check-grid,.backend-record-grid-wide{grid-template-columns:1fr}.backend-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.backend-panel-grid--overview .backend-card-wide,.backend-grid .backend-card-wide{grid-column:span 1}.backend-tab-intro{padding:16px}.backend-tab-intro-main{grid-template-columns:1fr}.backend-tab-icon{display:none}.backend-tab-intro-main h2{font-size:24px}.backend-tab-chips span{width:100%;justify-content:space-between}.backend-card-detail-grid{grid-template-columns:1fr}.backend-completion-ring{margin-top:12px}.backend-drilldown-list div{grid-template-columns:1fr}.backend-drilldown-list strong,.backend-drilldown-list small{white-space:normal}.backend-home-stop-table div{grid-template-columns:1fr}.backend-home-stop-table strong,.backend-home-stop-table small{white-space:normal}.backend-deleted-stops-row{padding:12px}.backend-action-strip small{white-space:normal}.backend-trend-summary{justify-content:flex-start;margin-top:12px}.backend-trend-chart{min-height:230px}.backend-trend-chart svg{height:230px}.backend-trend-details{overflow-x:auto}.backend-trend-details-head,.backend-trend-details-row{min-width:520px}.backend-kv-grid,.backend-record-grid,.backend-table div,.backend-error-list div{grid-template-columns:1fr}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;overflow:hidden;font-family:var(--font-sans);font-size:var(--text-md);line-height:var(--leading-snug);color:var(--fg);background:var(--bg)}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-synthesis:none;font-feature-settings:"cv11","zero" 0,"ss03" 0,"ss04" 0}html.customer-tracking-page,body.customer-tracking-page{height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:auto;-webkit-overflow-scrolling:touch}*,*:before,*:after{font-feature-settings:"cv11","zero" 0,"ss03" 0,"ss04" 0!important}:root[data-theme=ink]{--bg:#0b0d10;--bg-2:#101317;--bg-3:#171b21;--panel:#0e1115;--panel-2:#13171c;--border:#1f242b;--border-strong:#2a313a;--fg:#eef0f3;--fg-2:#b6bcc6;--fg-3:#7c848f;--fg-4:#525962;--accent:#c8ff3a;--accent-ink:#0b0d10;--accent-soft:rgba(200,255,58,.12);--warn:#ffb454;--danger:#ff6b6b;--ok:#5ee3a1;--day-sep:#10B981;--map-land:#13171c;--map-land-2:#171c22;--map-water:#0a1820;--map-road:#2a3038;--map-road-major:#3a424d;--map-park:#142019;--map-label:#5b6470;--shadow:0 1px 0 rgba(255,255,255,.04) inset, 0 8px 32px rgba(0,0,0,.45)}:root[data-theme=paper]{--bg:#f4f2ed;--bg-2:#ece9e1;--bg-3:#e3dfd4;--panel:#fbfaf6;--panel-2:#f6f4ed;--border:#e0dbcf;--border-strong:#cdc6b5;--fg:#1a1a17;--fg-2:#4a4a44;--fg-3:#76746a;--fg-4:#a09c8e;--accent:#ff5a1f;--accent-ink:#fbfaf6;--accent-soft:rgba(255,90,31,.1);--warn:#c68a1a;--danger:#d24b3e;--ok:#2a8f5f;--day-sep:#10B981;--map-land:#ece9e1;--map-land-2:#e6e2d7;--map-water:#cfd8d6;--map-road:#fbfaf6;--map-road-major:#ffffff;--map-park:#d8e0c8;--map-label:#8c8878;--shadow:0 1px 0 rgba(255,255,255,.6) inset, 0 4px 16px rgba(80,70,40,.06)}:root[data-theme=aurora]{--bg:#07101a;--bg-2:#0b1622;--bg-3:#0f1c2c;--panel:#0a1420;--panel-2:#0e1a28;--border:#1a2738;--border-strong:#26364a;--fg:#eaf1fa;--fg-2:#a9b8cb;--fg-3:#6f7e92;--fg-4:#4a5566;--accent:#7df9d5;--accent-ink:#07101a;--accent-soft:rgba(125,249,213,.12);--warn:#ffb454;--danger:#ff6b6b;--ok:#7df9d5;--day-sep:#10B981;--map-land:#0e1a28;--map-land-2:#122035;--map-water:#08111c;--map-road:#1f2d44;--map-road-major:#2e4163;--map-park:#0f2230;--map-label:#536175;--shadow:0 1px 0 rgba(255,255,255,.04) inset, 0 8px 32px rgba(0,0,0,.45)}.app{display:grid;grid-template-columns:72px 1fr;height:100vh;background:var(--bg)}.rail{background:var(--panel);border-right:1px solid var(--border);display:flex;flex-direction:column;align-items:center;padding:18px 0 14px;gap:6px}.logo{width:40px;height:40px;border-radius:11px;background:#fff;display:grid;place-items:center;color:var(--accent);box-shadow:0 0 0 1px #0000000a,0 6px 20px -8px var(--accent);overflow:hidden}.logo img{display:block;width:36px;height:auto}.rail-divider{width:24px;height:1px;background:var(--border);margin:10px 0}.rail-btn{width:44px;height:44px;border-radius:11px;display:grid;place-items:center;color:var(--fg-3);cursor:pointer;position:relative;transition:.15s}.rail-btn:hover,.rail-btn.active{color:var(--fg);background:var(--bg-2)}.rail-btn.active:before{content:"";position:absolute;left:-14px;top:50%;width:3px;height:18px;background:var(--accent);border-radius:0 3px 3px 0;transform:translateY(-50%)}.rail-spacer{flex:1}.rail-avatar-wrap{position:relative}.rail-avatar{width:36px;height:36px;border-radius:11px;background:var(--bg-3);color:var(--fg-2);display:grid;place-items:center;font-weight:600;font-size:var(--text-sm);border:1px solid var(--border);cursor:pointer;padding:0;transition:.15s;font-family:inherit}.rail-avatar:hover{background:var(--bg-2);border-color:var(--border-strong);color:var(--fg)}.rail-avatar.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.user-menu{position:absolute;left:calc(100% + 10px);bottom:0;z-index:55;min-width:240px;background:var(--panel);border:1px solid var(--border-strong);border-radius:12px;padding:6px;box-shadow:0 20px 48px -12px #00000059,0 0 0 1px #ffffff0a inset;animation:fadeIn .12s ease-out}.user-menu-head{padding:10px 12px 8px}.user-menu-name{font-size:var(--text-sm);font-weight:600;color:var(--fg);letter-spacing:-.005em;word-break:break-all}.user-menu-sub{font-size:var(--text-xs);color:var(--fg-3);margin-top:2px;font-family:var(--font-mono)}.user-menu-divider{height:1px;background:var(--border);margin:6px 4px}.user-menu-item{width:100%;display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;background:transparent;border:0;cursor:pointer;color:var(--fg-2);font:500 12.5px/1.2 Geist,ui-sans-serif,sans-serif;text-align:left;transition:.12s}.user-menu-item:hover{background:var(--bg-2);color:var(--fg)}.user-menu-item.danger{color:var(--danger)}.user-menu-item.danger:hover{background:#d24b3e14}[data-theme=ink] .user-menu-item.danger:hover{background:#ff6b6b1a}.user-menu-item>span:nth-child(2){flex:1}.user-menu-end{font-size:var(--text-xs);color:var(--fg-3);font-family:var(--font-mono)}.user-menu-group{position:relative}.user-menu-item.active{background:var(--bg-2);color:var(--fg)}.user-submenu{position:absolute;left:100%;bottom:0;z-index:56;min-width:220px;background:var(--panel);border:1px solid var(--border-strong);border-radius:12px;padding:6px;margin-left:8px;box-shadow:0 20px 48px -12px #00000059,0 0 0 1px #ffffff0a inset;animation:fadeIn .12s ease-out}.user-submenu-head{padding:10px 12px 8px}.user-submenu-eyebrow{font-size:var(--text-2xs);color:var(--fg-3);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.user-submenu-title{font-size:var(--text-md);font-weight:600;color:var(--fg);letter-spacing:-.01em;margin-top:3px}a.user-menu-item{text-decoration:none}.user-submenu-brand{padding:14px 14px 12px;text-align:center;display:flex;align-items:baseline;justify-content:center;gap:8px}.user-submenu-brand-name{font:500 18px/1 Geist,ui-sans-serif,system-ui,-apple-system,sans-serif;letter-spacing:-.01em;color:var(--fg-2)}.user-submenu-brand-ver{font:500 10px/1 var(--font-mono);color:var(--fg-3);letter-spacing:.06em;text-transform:uppercase;padding:3px 6px;border-radius:4px;background:var(--bg-2)}.user-submenu:before{content:"";position:absolute;left:-10px;top:0;bottom:0;width:12px;background:transparent}.user-menu-item.selected{background:var(--accent-soft);color:var(--accent)}.user-menu-item.selected:hover{background:var(--accent-soft)}.user-menu-back{width:100%;display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;background:transparent;border:0;cursor:pointer;color:var(--fg-3);font:600 11px/1.2 Geist,ui-sans-serif,sans-serif;text-align:left;letter-spacing:.04em;text-transform:uppercase;transition:.12s}.user-menu-back:hover{background:var(--bg-2);color:var(--fg)}.user-menu-flag{width:24px;height:24px;border-radius:6px;background:var(--bg-3);border:1px solid var(--border);display:inline-grid;place-items:center;font:600 10px/1 var(--font-mono);color:var(--fg-2);flex-shrink:0}.user-menu-item.selected .user-menu-flag{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.main{display:flex;flex-direction:column;min-width:0;overflow:hidden}.topbar{display:flex;align-items:center;gap:18px;padding:18px 28px;border-bottom:1px solid var(--border);background:var(--panel-2);min-height:74px}.crumb{display:flex;align-items:center;gap:10px;color:var(--fg-3);font-size:var(--text-md);font-weight:500}.crumb b{color:var(--fg);font-weight:600}.topbar-grow{flex:1}.search{display:flex;align-items:center;gap:10px;padding:9px 14px;background:var(--bg-2);border:1px solid var(--border);border-radius:10px;color:var(--fg-3);font-size:var(--text-md);min-width:260px}.search input{background:none;border:0;outline:0;color:var(--fg);font-family:inherit;font-size:var(--text-md);flex:1}.search input::placeholder{color:var(--fg-3)}.kbd{padding:1px 6px;border:1px solid var(--border-strong);border-radius:4px;color:var(--fg-3);font-family:var(--font-mono);font-size:var(--text-2xs);background:var(--panel)}.pill-live{display:inline-flex;align-items:center;gap:8px;padding:7px 12px 7px 10px;border-radius:999px;background:#2a8f5f1f;color:var(--ok);font-size:var(--text-sm);font-weight:600;letter-spacing:.02em}[data-theme=ink] .pill-live{background:#5ee3a124}.pill-live .dot{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 0 var(--ok);animation:pulse 1.8s infinite}.pill-live.offline{background:var(--bg-2);color:var(--fg-3)}.pill-live.offline .dot{background:var(--fg-4);animation:none;box-shadow:none}@keyframes pulse{0%{box-shadow:0 0 0 0 var(--accent-soft)}70%{box-shadow:0 0 0 8px transparent}to{box-shadow:0 0 0 0 transparent}}@keyframes spin360{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.refresh-btn{transition:background .15s,color .15s}.refresh-btn:hover:not(:disabled){background:var(--bg-2);color:var(--accent);border-color:var(--accent)}.refresh-btn.spinning{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.refresh-btn.spinning svg{animation:spin360 .8s cubic-bezier(.4,0,.2,1)}.refresh-btn:disabled{cursor:wait}.btn{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border-radius:9px;border:1px solid var(--border);background:var(--panel);color:var(--fg);font-family:inherit;font-size:var(--text-md);font-weight:500;cursor:pointer;transition:.12s}.btn:hover{border-color:var(--border-strong);background:var(--bg-2)}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-primary:hover{filter:brightness(.95);background:var(--accent)}.btn-ghost{background:transparent;border-color:transparent;color:var(--fg-2)}.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn-danger:hover{filter:brightness(.92)}.btn-ghost:hover{background:var(--bg-2);color:var(--fg)}.icon-btn{width:34px;height:34px;padding:0;justify-content:center;color:var(--fg-2)}.sub-nav{display:flex;align-items:center;gap:2px;padding:0 28px;border-bottom:1px solid var(--border);background:var(--panel-2);position:sticky;top:0;z-index:45}.sub-nav-tabs{display:flex;align-items:center;gap:2px;min-width:0}.sub-nav-filters{display:flex;align-items:center;flex:0 0 auto;margin-left:10px;padding:8px 0}.sub-nav-filters .task-filter-group{width:auto;flex-wrap:nowrap}.sub-tab{padding:14px;font-size:var(--text-md);color:var(--fg-3);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;font-weight:500;display:flex;align-items:center;gap:8px}.sub-tab:hover{color:var(--fg)}.sub-tab.active{color:var(--fg);border-bottom-color:var(--accent)}.sub-tab .count{font-family:var(--font-mono);font-size:var(--text-xs);padding:2px 6px;border-radius:4px;background:var(--bg-2);color:var(--fg-3)}.sub-tab.active .count{background:var(--accent-soft);color:var(--accent)}.sub-nav-dispatch{min-height:55px}.sub-nav-actions{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0;padding:8px 0}.sub-nav-actions .manual-input-hint{margin-right:2px;white-space:nowrap}.sub-nav-actions .dispatch-actions{display:inline-flex;align-items:center;gap:8px}.sub-nav-actions .link-btn,.sub-nav-actions .btn,.sub-nav-actions .pill-live{white-space:nowrap}.sub-nav-actions .home-stop-run-picker{flex:0 0 auto}.content{flex:1;overflow:hidden;display:flex;min-height:0}.lt-left{width:340px;flex-shrink:0;border-right:1px solid var(--border);display:flex;flex-direction:column;background:var(--panel);min-height:0}.lt-stats{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border);border-bottom:1px solid var(--border)}.lt-stat{padding:18px 18px 16px;background:var(--panel)}.lt-stat .lbl{font-size:var(--text-xs);color:var(--fg-3);letter-spacing:.08em;text-transform:uppercase;font-weight:600}.lt-stat .val{font-size:32px;font-weight:600;letter-spacing:-.03em;margin-top:6px;line-height:1;display:flex;align-items:baseline;gap:8px}.lt-stat .val .unit{font-size:var(--text-sm);color:var(--fg-3);font-weight:500;letter-spacing:0}.lt-stat .delta{margin-top:8px;font-size:var(--text-xs);font-family:var(--font-mono);color:var(--ok)}.lt-stat.warn .delta{color:var(--warn)}.lt-section{padding:18px 18px 8px;display:flex;align-items:center;justify-content:space-between}.lt-section h4{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);margin:0;font-weight:600}.lt-filter{display:flex;gap:4px}.chip{padding:4px 9px;border-radius:6px;font-size:var(--text-xs);color:var(--fg-3);cursor:pointer;border:1px solid transparent;font-weight:500}.chip:hover{color:var(--fg)}.chip.on{background:var(--bg-2);color:var(--fg);border-color:var(--border)}.chip-icon{display:inline-flex;align-items:center;gap:4px;background:transparent;font-family:inherit}.chip-icon:hover{color:var(--fg);background:var(--bg-2);border-color:var(--border)}.history-date-picker-wrap{position:relative;display:inline-flex}.history-date-picker-native{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;pointer-events:none;margin:0;padding:0;border:0;background:transparent;color:transparent}.date-picker-hidden{position:absolute;width:0;height:0;opacity:0;pointer-events:none;margin:0;padding:0;border:0}.driver-list{flex:1;overflow:auto;padding:4px 10px 18px}.driver-list::-webkit-scrollbar{width:8px}.driver-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.driver{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px;border-radius:12px;cursor:pointer;position:relative;transition:.12s;margin-bottom:2px}.driver:hover,.driver.active{background:var(--bg-2)}.driver.active:before{content:"";position:absolute;left:4px;top:14px;bottom:14px;width:2px;background:var(--accent);border-radius:2px}.driver .av{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-size:var(--text-md);font-weight:600;color:var(--fg);background:var(--bg-3);border:1px solid var(--border);position:relative}.driver .av .stat-dot{position:absolute;right:-2px;bottom:-2px;width:11px;height:11px;border-radius:50%;background:var(--ok);border:2px solid var(--panel)}.driver.offline .av .stat-dot{background:var(--fg-4)}.driver-all .av-all{background:var(--accent);color:#fff;border-color:var(--accent);font-size:var(--text-xs);letter-spacing:.04em;font-weight:700}.driver-all{margin-bottom:8px;border-bottom:1px dashed var(--border);padding-bottom:14px;border-radius:12px 12px 0 0}.driver .name{font-size:var(--text-md);font-weight:600;letter-spacing:-.01em;margin-bottom:3px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.driver .run-pill{display:inline-flex;align-items:center;padding:1px 7px;border-radius:999px;border:1px solid currentColor;font:600 10px/1.4 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;flex-shrink:0}.maplibre-run-pill{--run-color:#6b3fd4;display:inline-flex;align-items:center;justify-content:center;padding:5px 12px;border-radius:999px;background:var(--run-color);color:#fff;font:700 11px/1 Geist,sans-serif;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border:2px solid rgba(255,255,255,.96);box-shadow:0 4px 14px #00000038,0 1px 3px #0000001f;pointer-events:none;-webkit-user-select:none;user-select:none}.maplibre-run-pill.is-compact{padding:3px 9px;font-size:10px}.driver .meta{font-size:var(--text-xs);color:var(--fg-3);font-family:var(--font-mono);display:flex;gap:8px;align-items:center}.driver .meta .sep{color:var(--fg-4)}.driver .prog{font-size:var(--text-xs);color:var(--fg-3);text-align:right}.driver .prog .big{color:var(--fg);font-weight:600;font-size:var(--text-md);font-family:var(--font-mono)}.progress-bar{height:3px;background:var(--bg-3);border-radius:2px;overflow:hidden;margin-top:6px}.progress-bar>div{height:100%;background:var(--accent);border-radius:2px}.history-driver-metrics{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.history-driver-metrics span{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:6px;border:1px solid var(--border);background:var(--panel);color:var(--fg-2);font:500 10px/1.25 var(--font-mono);white-space:nowrap}.history-driver-metrics span.warn{border-color:var(--danger);color:var(--danger);background:#d24b3e0f}.history-driver-metrics b{font-weight:500;color:inherit;opacity:.72}.idle-threshold{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;margin:0 10px 10px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--panel);font-size:var(--text-xs);color:var(--fg-3)}.idle-threshold b{display:block;color:var(--fg);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px}.idle-threshold label{display:flex;align-items:center;gap:5px;color:var(--fg-3);font-family:var(--font-mono)}.idle-threshold input{width:54px;height:30px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--fg);padding:0 8px;font:600 12px/1 var(--font-mono)}.idle-threshold .btn{height:30px;padding:0 10px;font-size:var(--text-xs)}.history-sync-error{margin:0 10px 10px;padding:8px 10px;border-radius:8px;border:1px solid rgba(210,75,62,.24);background:#d24b3e12;color:var(--danger);font-size:var(--text-xs)}.history-sync-note{margin-top:12px;color:var(--fg-3);font-size:var(--text-sm);line-height:1.45}.lt-right{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.map-wrap{flex:1;position:relative;min-height:0;overflow:hidden;background:var(--map-land)}.map-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.map-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(900px 600px at 30% 40%,transparent 0%,transparent 60%,rgba(0,0,0,.15) 100%)}.maplibre-shell{position:absolute;top:0;right:0;bottom:0;left:0;background:#e8e5df}.maplibre-shell.compact{border-radius:0;overflow:hidden}.maplibre-map{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right{display:none}.route-pin{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:var(--panel);border:2px solid #fff;box-shadow:0 8px 18px -10px #130c23bf,0 0 0 1px #130c2314}.route-pin--driver{width:20px;height:20px;background:var(--fg-3);opacity:.7}.route-pin--driver.is-selected{width:34px;height:34px;background:var(--accent);opacity:1;position:relative;border-width:3px}.route-pin--driver.is-selected:before{content:"";position:absolute;top:-9px;right:-9px;bottom:-9px;left:-9px;border-radius:50%;background:#6b3fd42e;z-index:-1}.route-pin-arrow{width:16px;height:16px;display:block;color:#fff;transform:rotate(42deg);transform-origin:center}.route-pin-arrow path{fill:currentColor}.route-pin--driver:not(.is-selected) .route-pin-arrow{display:none}.route-pin--stop{width:28px;height:28px;position:relative;color:#fff;font:800 11px/1 var(--font-mono);border-width:3px}.route-pin--stop.is-done{background:var(--ok)}.route-pin--stop.is-current{background:var(--accent);box-shadow:0 10px 24px -10px #6b3fd4cc,0 0 0 7px #6b3fd42e}.route-pin--stop.is-pending{background:var(--warn)}.route-pin--stop.is-active{background:var(--accent)}.route-pin--stop.is-next{background:var(--warn)}.map-controls{position:absolute;right:18px;top:18px;display:flex;flex-direction:column;gap:8px;z-index:3}.map-btn{width:38px;height:38px;border-radius:10px;background:var(--panel);border:1px solid var(--border);color:var(--fg-2);display:grid;place-items:center;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow)}.map-btn:hover{color:var(--fg);background:var(--panel-2)}.map-btn:disabled{opacity:.45;cursor:not-allowed}.map-legend{position:absolute;left:18px;bottom:18px;z-index:3;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:12px 14px;font-size:var(--text-xs);display:flex;gap:14px;align-items:center;box-shadow:var(--shadow)}.map-legend .item{display:flex;align-items:center;gap:6px;color:var(--fg-2)}.map-legend .sw{width:8px;height:8px;border-radius:50%}.route-card{position:absolute;left:18px;top:18px;z-index:3;width:280px;background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:14px 16px;box-shadow:var(--shadow)}.route-card .lbl{font-size:var(--text-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);font-weight:600}.route-card .driver-name{font-size:var(--text-xl);font-weight:600;letter-spacing:-.02em;margin-top:4px}.route-card .row{display:flex;align-items:center;gap:10px;margin-top:12px;font-size:var(--text-sm);color:var(--fg-2)}.route-card .row .ic{width:22px;height:22px;border-radius:6px;background:var(--bg-2);display:grid;place-items:center;color:var(--fg-3)}.route-card .eta{margin-top:14px;padding-top:14px;border-top:1px dashed var(--border);display:flex;justify-content:space-between;align-items:baseline}.route-card .eta .big{font-size:var(--text-3xl);font-weight:600;letter-spacing:-.02em;font-family:var(--font-mono)}.route-card .eta .sm{font-size:var(--text-xs);color:var(--fg-3)}.stops-drawer{border-top:1px solid var(--border);background:var(--panel);padding:14px 22px 18px}.drawer-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.drawer-title{font-size:var(--text-md);font-weight:600;letter-spacing:-.01em;display:flex;align-items:center;gap:10px}.drawer-title .badge{font-family:var(--font-mono);font-size:var(--text-2xs);padding:2px 7px;border-radius:5px;background:var(--bg-2);color:var(--fg-3);font-weight:500}.drawer-actions{display:flex;gap:8px;align-items:center}.stops-timeline{position:relative;display:flex;gap:12px;overflow-x:auto;padding-bottom:4px}.stops-timeline::-webkit-scrollbar{height:6px}.stops-timeline::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.stop{min-width:240px;padding:14px 14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--panel-2);position:relative;cursor:pointer;transition:.12s}.stop:hover{border-color:var(--border-strong)}.stop.done{opacity:.7}.stop.current{border-color:var(--accent);background:linear-gradient(180deg,var(--accent-soft) 0%,transparent 60%)}.stop.current:before{content:"";position:absolute;left:-1px;top:-1px;right:-1px;bottom:-1px;border-radius:12px;border:1px solid var(--accent);pointer-events:none}.stop .stop-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.stop .stop-num{width:24px;height:24px;border-radius:7px;display:grid;place-items:center;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;background:var(--bg-3);color:var(--fg-2)}.stop.done .stop-num{background:var(--ok);color:#06231a}.stop.current .stop-num{background:var(--accent);color:var(--accent-ink)}.stop .stop-status{font-size:var(--text-2xs);letter-spacing:.08em;text-transform:uppercase;font-weight:600;color:var(--fg-3)}.stop.done .stop-status{color:var(--ok)}.stop.current .stop-status{color:var(--accent)}.stop .stop-name{font-size:var(--text-md);font-weight:600;letter-spacing:-.01em;margin-bottom:4px}.stop .stop-addr{font-size:var(--text-xs);color:var(--fg-3);line-height:1.5;font-family:var(--font-mono)}.stop .stop-foot{margin-top:12px;padding-top:10px;border-top:1px dashed var(--border);display:flex;justify-content:space-between;align-items:center;font-size:var(--text-xs);color:var(--fg-3)}.stop .stop-foot .t{font-family:var(--font-mono);color:var(--fg-2)}.stop-history{flex:1;display:flex;flex-direction:column;padding:20px 28px;overflow:auto;min-height:0}.stop-history-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;gap:12px}.stop-history-head h3{margin:0;font-size:var(--text-lg);font-weight:600;letter-spacing:-.01em;display:inline-flex;align-items:baseline;gap:10px;flex-wrap:wrap}.shist-title-meta{font-size:var(--text-sm);font-weight:500;color:var(--fg-3);letter-spacing:-.005em}.stop-history-actions{display:flex;gap:8px;align-items:center}.shist-search{position:relative;display:inline-flex;align-items:center;width:280px;background:var(--panel);border:1px solid var(--border);border-radius:9px;padding:0 10px;height:34px;transition:border-color .12s,box-shadow .12s,background .12s}.shist-search:hover{border-color:var(--border-strong)}.shist-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #7c5cff1f}.shist-search .ic{color:var(--fg-3);flex-shrink:0;margin-right:8px}.shist-search:focus-within .ic{color:var(--accent)}.shist-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-family:Geist,sans-serif;font-size:var(--text-sm);color:var(--fg);letter-spacing:-.005em;padding:0}.shist-search input::placeholder{color:var(--fg-4);letter-spacing:-.005em}.shist-search-clear{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;cursor:pointer;background:var(--bg-2);color:var(--fg-3);width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-md);line-height:1;margin-left:6px;flex-shrink:0;transition:all .12s}.shist-search-clear:hover{background:var(--accent);color:var(--accent-ink)}.stop-history-table{--history-columns: minmax(96px, .68fr) 40px minmax(88px, .7fr) minmax(120px, 1fr) minmax(160px, 1.35fr) minmax(108px, .78fr) minmax(76px, .62fr) minmax(70px, .58fr) 88px minmax(72px, .56fr) 70px minmax(80px, .6fr) 44px 48px;background:var(--panel);border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;overflow:visible;position:relative}.shist-row{display:grid;align-items:center;gap:6px;grid-template-columns:var(--history-columns);width:100%;min-width:min(1373px,100%);padding:9px 14px;border-top:1px solid var(--border);font-size:var(--text-md);color:var(--fg);transition:background .12s;justify-content:start}.shist-row:first-child{border-top:0}.shist-row:not(.shist-row-head):hover{background:var(--bg-2)}.shist-row-sep{display:grid;grid-template-columns:var(--history-columns);gap:6px;align-items:center;width:100%;min-width:min(1373px,100%);padding:8px 14px;background:transparent;border:0}.shist-row-sep-left{grid-column:1 / span 9;display:flex;align-items:center;gap:10px;min-width:0}.shist-row-sep-total{grid-column:10;display:inline-flex;align-items:baseline;gap:6px;justify-content:center;justify-self:end;white-space:nowrap;padding:5px 12px;border-radius:8px;background:color-mix(in srgb,var(--day-sep) 12%,var(--panel));border:1px solid color-mix(in srgb,var(--day-sep) 45%,var(--border))}.shist-row-sep-total-label{font-family:Geist,sans-serif;font-size:var(--text-2xs);font-weight:700;color:color-mix(in srgb,var(--day-sep) 70%,var(--fg-3));letter-spacing:.06em;text-transform:uppercase}.shist-row-sep-total-amount{font-family:Geist,sans-serif;font-size:var(--text-md);font-weight:700;color:color-mix(in srgb,var(--day-sep) 70%,var(--fg));font-variant-numeric:tabular-nums;letter-spacing:-.01em}.shist-row-sep-chip{display:inline-flex;align-items:center;height:22px;padding:0 10px;background:var(--day-sep);color:#fff;border-radius:6px;font-family:Geist,sans-serif;font-size:var(--text-2xs);font-weight:700;letter-spacing:.04em;font-variant-numeric:tabular-nums;flex-shrink:0}.shist-row-sep-line{flex:1;height:2px;border-radius:1px;align-self:center;background:color-mix(in srgb,var(--day-sep) 45%,transparent);min-width:0}.shist-row-run-sep{display:grid;grid-template-columns:var(--history-columns);gap:6px;align-items:center;width:100%;min-width:min(1373px,100%);padding:5px 14px;background:color-mix(in srgb,var(--bg-2) 52%,transparent);border-top:1px solid color-mix(in srgb,var(--border) 65%,transparent)}.shist-row-run-left{grid-column:1 / span 9;display:flex;align-items:center;gap:9px;min-width:0}.shist-row-run-chip{display:inline-flex;align-items:center;height:18px;padding:0 8px;border-radius:5px;border:1px solid var(--border);background:var(--bg-3);color:var(--fg-2);font-family:Geist,sans-serif;font-size:var(--text-2xs);font-weight:700;letter-spacing:.01em;font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0}.shist-row-run-line{flex:1;height:1px;min-width:0;background:color-mix(in srgb,var(--fg-4) 28%,transparent)}.shist-row-run-meta{grid-column:10 / span 4;justify-self:end;display:inline-flex;align-items:center;gap:14px;color:var(--fg-3);font-family:Geist,sans-serif;font-size:var(--text-xs);font-weight:600;letter-spacing:-.005em;white-space:nowrap;font-variant-numeric:tabular-nums}.shist-row-run-amount{color:var(--fg-2);font-weight:700}.shist-row-sep-label{font-family:Geist,sans-serif;font-size:var(--text-2xs);font-weight:700;color:var(--day-sep);letter-spacing:.04em;font-variant-numeric:tabular-nums}.shist-row-sep+.shist-row,.shist-row-run-sep+.shist-row{border-top:0}.shist-row-head{background:var(--panel-2);border-top:0;border-bottom:1px solid var(--border);padding:4px 12px;align-items:stretch;z-index:2}.shist-col{position:relative;display:flex;align-items:stretch;min-width:0;width:100%;justify-self:stretch;overflow:visible}.shist-col-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;cursor:pointer;background:transparent;display:inline-flex;align-items:center;gap:4px;padding:8px 5px;border-radius:7px;width:auto;max-width:100%;min-width:0;font-family:Geist,sans-serif;font-size:var(--text-xs);font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--fg-2);text-align:left;line-height:1;transition:background .12s,color .12s}.shist-col-trigger:hover{background:var(--bg-2);color:var(--fg)}.shist-col-trigger .lbl{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.shist-col{justify-content:flex-start}.shist-col-vehicle,.shist-col-store,.shist-col-received{justify-content:center}.shist-col-trigger .chev{color:var(--fg-4);flex-shrink:0;transition:transform .15s ease-out,color .12s}.shist-col-trigger:hover .chev{color:var(--fg-2)}.shist-col.sorted .shist-col-trigger{color:var(--fg)}.shist-col.sorted .shist-col-trigger .chev{color:var(--accent)}.shist-col.sorted.dir-asc .shist-col-trigger .chev{transform:rotate(180deg)}.shist-col.open .shist-col-trigger{background:var(--bg-2);color:var(--fg)}.shist-col.open .shist-col-trigger .chev{transform:rotate(180deg)}.shist-col.open.sorted.dir-asc .shist-col-trigger .chev{transform:rotate(0)}.shist-col-trigger .filter-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 2px var(--panel-2);flex-shrink:0}.shist-col.open .shist-col-trigger .filter-dot{box-shadow:0 0 0 2px var(--bg-2)}.shist-head-static{font-family:Geist,sans-serif;font-size:var(--text-xs);color:var(--fg-3);font-weight:600;letter-spacing:.02em;text-transform:uppercase;display:inline-flex;align-items:center;justify-content:flex-start;justify-self:stretch;width:100%;padding:8px 5px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shist-head-stop,.shist-head-run,.shist-head-photos{justify-content:center;text-align:center}.shist-col-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:50;min-width:220px;max-width:280px;background:var(--panel);border:1px solid var(--border);border-radius:11px;box-shadow:0 12px 32px #0000002e,0 2px 8px #0000000f;padding:6px;display:flex;flex-direction:column;animation:colMenuPop .14s cubic-bezier(.16,1,.3,1)}@keyframes colMenuPop{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.shist-col:nth-last-child(-n+5) .shist-col-menu{left:auto;right:0}.shist-col-menu-divider{height:1px;background:var(--border);margin:4px 0}.shist-col-menu-sort-only{min-width:170px}.shist-col-menu-filter-only{min-width:180px;max-width:240px}.shist-col-menu-sort-filter{min-width:190px;max-width:250px}.shist-col-menu-calendar{min-width:260px;max-width:280px}.shist-cal-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;padding:6px 4px 4px}.shist-cal-day{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid transparent;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 4px;border-radius:7px;font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--fg-2);font-weight:600;line-height:1;letter-spacing:-.01em;transition:background .12s,color .12s,border-color .12s}.shist-cal-day .m{font-size:var(--text-xs)}.shist-cal-day .dot{width:4px;height:4px;border-radius:50%;background:var(--accent);opacity:.6}.shist-cal-day:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}.shist-cal-day.is-today{border-color:var(--accent-soft);color:var(--fg)}.shist-cal-day.is-picked{background:var(--accent);color:#fff;border-color:var(--accent)}.shist-cal-day.is-picked .dot{background:#fff;opacity:.95}.shist-cal-day.is-empty,.shist-cal-day:disabled{color:var(--fg-4);opacity:.45;cursor:not-allowed}.shist-cal-day.is-empty .dot{display:none}.shist-menu-row{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;cursor:pointer;display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border-radius:7px;font-size:var(--text-sm);color:var(--fg);font-weight:500;letter-spacing:-.005em;text-align:left;line-height:1.2;transition:background .1s,color .1s}.shist-menu-row .ar{font-family:var(--font-mono);font-size:var(--text-md);font-weight:700;color:var(--fg-3);width:14px;text-align:center;flex-shrink:0;transition:color .1s}.shist-menu-row .text{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shist-menu-row .check{color:var(--accent);flex-shrink:0;display:inline-flex}.shist-menu-row:hover{background:var(--bg-2)}.shist-menu-row.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.shist-menu-row.active .ar{color:var(--accent)}.shist-menu-row.all{font-weight:600;color:var(--fg-2)}.shist-menu-row.all.active{color:var(--accent)}.shist-menu-list{display:flex;flex-direction:column;gap:1px;max-height:300px;overflow-y:auto;padding-right:2px}.shist-menu-list::-webkit-scrollbar{width:6px}.shist-menu-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.shist-menu-list::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.shist-empty{padding:32px 16px;text-align:center;color:var(--fg-3);font-size:var(--text-md);display:flex;flex-direction:column;align-items:center;gap:10px}.shist-empty-clear{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;border:1px solid var(--border);background:var(--bg);color:var(--fg-2);padding:6px 12px;border-radius:7px;font-size:var(--text-xs);font-weight:600;transition:all .12s}.shist-empty-clear:hover{background:var(--bg-2);color:var(--fg)}.shist-cell-view{display:inline-flex;align-items:center;justify-content:center;padding:0}.shist-photo-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;width:28px;height:24px;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--fg-2);display:inline-flex;align-items:center;justify-content:center;transition:all .12s}.shist-photo-btn:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.shist-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:4px;font-family:Geist,sans-serif;min-width:0}.shist-cell:last-child{padding-right:0}.shist-cell-date{font-family:Geist,sans-serif;font-size:var(--text-md);color:var(--fg);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.015em;display:flex;flex-direction:column;gap:1px;line-height:1.25;overflow:visible;white-space:normal}.shist-cell-date .date-main{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shist-cell-date .date-time{display:inline-flex;align-items:center;gap:3px;font-size:var(--text-2xs);color:var(--fg-4);font-weight:500;letter-spacing:-.01em;white-space:nowrap}.shist-cell-num{font-family:var(--font-mono);font-weight:700;display:inline-flex;align-items:center;justify-content:center;padding:3px 9px;border-radius:6px;background:var(--accent-soft);color:var(--accent);font-size:var(--text-xs);max-width:max-content;justify-self:center;font-variant-numeric:tabular-nums}.shist-cell-inv{font-family:Geist,sans-serif;font-size:var(--text-sm);color:var(--fg-2);font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.shist-invoice-list{display:flex;flex-wrap:wrap;align-items:center;gap:3px;min-width:0;max-width:100%}.shist-invoice-chip{display:inline-flex;max-width:100%;min-width:0;padding:1px 3px;border-radius:4px;background:#6b3fd414;color:var(--fg-2);font-family:var(--font-mono);font-weight:700;font-size:var(--text-xs);line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shist-cell-name{font-weight:600;color:var(--fg);font-size:var(--text-md);letter-spacing:-.005em}.shist-cell-addr{color:var(--fg-2);font-size:var(--text-sm);letter-spacing:-.005em}.shist-cell-phone{font-family:Geist,sans-serif;font-size:var(--text-sm);color:var(--fg-2);font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.005em;overflow:visible;display:inline-flex;align-items:center;gap:4px}.shist-cell-phone .phone-main{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.phone-extra{position:relative;display:inline-flex;align-items:center;flex-shrink:0}.phone-more-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;border:1px solid var(--border);background:var(--bg);color:var(--fg-3);height:18px;min-width:24px;padding:0 5px;border-radius:4px;font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;letter-spacing:-.02em;line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:all .12s}.phone-more-btn:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.phone-more-btn.open{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.phone-pop{position:absolute;top:calc(100% + 7px);left:50%;transform:translate(-50%);z-index:40;display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:7px;background:var(--panel);border:1px solid var(--border-strong);box-shadow:0 6px 16px #0000001f,0 2px 4px #0000000f;white-space:nowrap;animation:phonePopIn .12s cubic-bezier(.16,1,.3,1)}@keyframes phonePopIn{0%{opacity:0;transform:translate(-50%) translateY(-3px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.phone-pop:before{content:"";position:absolute;top:-5px;left:50%;transform:translate(-50%) rotate(45deg);width:8px;height:8px;background:var(--panel);border-left:1px solid var(--border-strong);border-top:1px solid var(--border-strong)}.phone-pop-label{font-family:Geist,sans-serif;font-size:var(--text-2xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-4)}.phone-pop-num{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;color:var(--fg);letter-spacing:-.02em}.shist-cell-driver{font-family:var(--font-mono);font-weight:600;font-size:var(--text-xs);color:var(--fg-2);letter-spacing:0}.shist-cell-vehicle{font-family:Geist,sans-serif;font-weight:500;font-size:var(--text-xs);color:var(--fg-2);letter-spacing:-.005em;text-align:center}.shist-cell-cashar{display:inline-flex;align-items:center;justify-content:center;padding:3px 8px;border-radius:5px;font-size:var(--text-2xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--bg-3);color:var(--fg-3);max-width:max-content}.shist-cell-cashar.tag-cash,.shist-cell-cashar.tag-paid,.shist-cell-cashar.tag-cash-paid,.shist-cell-cashar.tag-settled{background:#2a8f5f26;color:#2a8f5f}.shist-cell-cashar.tag-check{background:#2174c426;color:#2174c4}.shist-cell-cashar.tag-ar{background:#c68a1a2e;color:#c68a1a}.shist-cell-cashar.tag-credit{background:#6b3fd424;color:#6b3fd4}.shist-cell-amt{font-family:Geist,sans-serif;font-weight:700;color:var(--fg);font-size:var(--text-sm);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.shist-cell-store{font-size:var(--text-md);font-weight:600;color:#2174c4;letter-spacing:.01em;text-align:center}.shist-cell-recv{font-size:var(--text-md);font-weight:500;color:var(--fg-2);letter-spacing:0;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shist-cell-run{font-family:var(--font-mono);font-weight:700;display:inline-flex;align-items:center;justify-content:center;padding:3px 9px;border-radius:5px;background:#6b3fd41a;color:var(--accent);font-size:var(--text-xs);max-width:max-content;justify-self:center}.routes-view{display:grid;grid-template-columns:340px 1fr;flex:1;min-height:0}.routes-detail{padding:24px 28px;overflow:auto;background:var(--bg)}.routes-detail::-webkit-scrollbar{width:8px}.routes-detail::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.route-hero{background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:24px 26px 22px;margin-bottom:20px;position:relative;overflow:hidden}.route-hero:before{content:"";position:absolute;right:-40px;top:-40px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,var(--accent-soft) 0%,transparent 70%);pointer-events:none}.route-hero .crumb-row{display:flex;align-items:center;gap:10px;font-size:var(--text-sm);color:var(--fg-3);margin-bottom:14px}.route-hero h1{margin:0;font-size:var(--text-display);letter-spacing:-.025em;font-weight:600;line-height:1.05}.route-hero .sub{margin-top:6px;color:var(--fg-3);font-size:var(--text-md)}.route-hero .stats-row{display:flex;gap:32px;margin-top:22px;flex-wrap:wrap}.route-hero .s{display:flex;flex-direction:column;gap:4px}.route-hero .s .l{font-size:var(--text-xs);color:var(--fg-3);letter-spacing:.06em;text-transform:uppercase;font-weight:600}.route-hero .s .v{font-size:var(--text-2xl);font-weight:600;letter-spacing:-.02em;font-family:var(--font-mono)}.route-hero .s .v.text{font-family:Geist,sans-serif}.route-hero .progress-track{margin-top:20px;height:6px;background:var(--bg-2);border-radius:3px;overflow:hidden;position:relative}.route-hero .progress-track>div{height:100%;background:var(--accent);border-radius:3px}.stop-row{display:grid;grid-template-columns:32px 1fr auto;gap:16px;align-items:flex-start;padding:18px 0;border-bottom:1px solid var(--border);position:relative}.stop-row:last-child{border-bottom:0}.stop-row:before{content:"";position:absolute;left:15px;top:50px;bottom:-18px;width:1px;background:linear-gradient(180deg,var(--border) 0%,var(--border) 50%,transparent 100%)}.stop-row:last-child:before{display:none}.stop-row .marker{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--bg-2);color:var(--fg-2);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;border:1px solid var(--border);position:relative;z-index:1}.stop-row.done .marker{background:var(--ok);color:#06231a;border-color:var(--ok)}.stop-row.current .marker{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.stop-row .title{font-size:var(--text-lg);font-weight:600;letter-spacing:-.01em;margin-bottom:3px}.stop-row .addr{font-size:var(--text-sm);color:var(--fg-3);font-family:var(--font-mono);margin-bottom:8px}.stop-row .tags{display:flex;gap:6px;flex-wrap:wrap}.tag{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:6px;background:var(--bg-2);color:var(--fg-2);font-size:var(--text-xs);font-weight:500;border:1px solid var(--border)}.tag.ok{background:#5ee3a11a;color:var(--ok);border-color:#5ee3a133}.stop-row .right{text-align:right;font-size:var(--text-xs);color:var(--fg-3)}.stop-row .right .t{font-size:var(--text-md);color:var(--fg);font-family:var(--font-mono);font-weight:500}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.photo{aspect-ratio:1.4/1;border-radius:10px;background:repeating-linear-gradient(45deg,var(--bg-2) 0 10px,var(--bg-3) 10px 20px);border:1px solid var(--border);display:grid;place-items:center;color:var(--fg-3);font-family:var(--font-mono);font-size:var(--text-2xs)}.section-head{display:flex;align-items:center;justify-content:space-between;margin:24px 0 12px}.section-head h3{margin:0;font-size:var(--text-md);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);font-weight:600}.drivers-view{flex:1;padding:24px 28px;overflow:auto;background:var(--bg);min-height:0}.drivers-view::-webkit-scrollbar{width:8px}.drivers-view::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:24px}.page-head h1{margin:0;font-size:38px;letter-spacing:-.03em;font-weight:600;line-height:1}.page-head .sub{color:var(--fg-3);font-size:var(--text-md);margin-top:8px}.page-head-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap;min-width:0;max-width:100%}.page-head-actions .btn{white-space:nowrap}@media(max-width:920px){.drivers-view .page-head{align-items:flex-start;flex-direction:column;gap:14px}.drivers-view .page-head-actions{justify-content:flex-start;width:100%}.drivers-view .dt-head,.drivers-view .dt-row-main{min-width:0;grid-template-columns:minmax(190px,1.2fr) minmax(118px,.65fr) minmax(140px,.95fr) 72px;gap:12px;padding-left:18px;padding-right:18px}.drivers-view .dt-head>div:nth-child(4),.drivers-view .dt-head>div:nth-child(5),.drivers-view .dt-head>div:nth-child(6),.drivers-view .dt-row-main>div:nth-child(4),.drivers-view .dt-row-main>div:nth-child(5),.drivers-view .dt-row-main>div:nth-child(6){display:none}.drivers-view .dt-row-stats{min-width:0;padding-left:18px;padding-right:18px}}@media(max-width:760px){.drivers-view .dt-head,.drivers-view .dt-row-main{grid-template-columns:minmax(160px,1fr) minmax(108px,.62fr) 68px}.drivers-view .dt-head>div:nth-child(3),.drivers-view .dt-row-main>div:nth-child(3){display:none}}.delivery-photos{margin-top:10px;padding-top:10px;border-top:1px dashed var(--border)}.delivery-photos-label{font-size:var(--text-2xs);color:var(--fg-3);font-weight:600;letter-spacing:.04em;text-transform:uppercase;display:inline-flex;align-items:center;gap:5px;margin-bottom:8px}.delivery-thumb-row{display:flex;gap:6px;flex-wrap:wrap}.delivery-thumb{width:44px;height:44px;border-radius:10px;display:grid;place-items:center;font-size:var(--text-2xl);line-height:1;border:1px solid var(--border);cursor:pointer;transition:transform .15s,box-shadow .15s;padding:0}.delivery-thumb:hover{transform:scale(1.05);box-shadow:0 6px 14px -6px #00000040}.delivery-thumb-more{background:var(--bg-2);color:var(--fg-2);font:600 12px/1 var(--font-mono)}.lightbox-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#000000e0;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:48px;animation:fadeIn .15s ease-out}.lightbox-close,.lightbox-nav{position:absolute;background:#ffffff14;border:1px solid rgba(255,255,255,.18);color:#fff;border-radius:50%;cursor:pointer;display:grid;place-items:center;transition:.15s}.lightbox-close{top:24px;right:24px;width:42px;height:42px;font-size:28px;line-height:1;font-weight:300}.lightbox-close:hover{background:#ffffff2e}.lightbox-nav{top:50%;transform:translateY(-50%);width:48px;height:48px;font-size:32px;line-height:1}.lightbox-prev{left:24px}.lightbox-next{right:24px}.lightbox-nav:hover{background:#ffffff2e}.lightbox-content{display:flex;flex-direction:column;align-items:center;gap:18px;max-width:min(520px,80vw)}.lightbox-img{width:min(420px,70vw);aspect-ratio:1/1;border-radius:18px;display:grid;place-items:center;font-size:140px;line-height:1;box-shadow:0 24px 48px -16px #0000008c;overflow:hidden}.lightbox-img img{width:100%;height:100%;object-fit:contain;background:#111}.lightbox-caption{text-align:center;color:#fff}.lightbox-title{font-size:var(--text-lg);font-weight:600;letter-spacing:-.01em}.lightbox-meta{font-size:var(--text-sm);color:#fff9;margin-top:4px;font-family:var(--font-mono)}.photo-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#0f0f146b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;padding:24px;animation:photoModalFade .14s ease-out}@keyframes photoModalFade{0%{opacity:0}to{opacity:1}}.photo-modal{width:min(680px,100%);max-height:88vh;background:var(--panel);border:1px solid var(--border);border-radius:18px;box-shadow:0 24px 64px -12px #00000047,0 4px 16px #00000014;display:flex;flex-direction:column;overflow:hidden;animation:photoModalPop .16s cubic-bezier(.16,1,.3,1)}@keyframes photoModalPop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.photo-modal-head{display:flex;align-items:center;gap:14px;padding:18px 20px 16px;border-bottom:1px solid var(--border)}.photo-modal-icon{width:42px;height:42px;border-radius:11px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;flex-shrink:0}.photo-modal-text{flex:1;min-width:0}.photo-modal-title{font-size:var(--text-xl);font-weight:600;letter-spacing:-.015em;color:var(--fg);line-height:1.2}.photo-modal-sub{margin-top:3px;font-size:var(--text-sm);color:var(--fg-3);letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.photo-modal-sub .sep{color:var(--fg-4);margin:0 2px}.photo-modal-sub .mono{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--fg-2)}.photo-modal-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:var(--bg);cursor:pointer;width:32px;height:32px;border-radius:8px;font-size:var(--text-2xl);line-height:1;color:var(--fg-3);display:grid;place-items:center;flex-shrink:0;transition:all .12s}.photo-modal-close:hover{background:var(--bg-2);color:var(--fg);border-color:var(--border-strong)}.photo-modal-body{padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.photo-history-section{display:flex;flex-direction:column;gap:10px;min-width:0}.photo-history-section h3{margin:0;font-size:var(--text-sm);font-weight:700;line-height:var(--leading-tight);color:var(--fg);letter-spacing:0}.photo-modal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}.photo-modal-grid.count-1{grid-template-columns:minmax(280px,1fr)}.photo-modal-grid.count-2{grid-template-columns:repeat(2,1fr)}.photo-modal-grid.count-3{grid-template-columns:repeat(3,1fr)}.photo-modal-grid.count-4{grid-template-columns:repeat(2,1fr)}.photo-modal-grid.count-5{grid-template-columns:repeat(3,1fr)}.photo-history-row{min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:var(--panel-2);display:flex;flex-direction:column}.photo-modal-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;cursor:pointer;width:100%;aspect-ratio:4/3;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:14px;box-shadow:0 1px 2px #0000000f,inset 0 0 0 1px #ffffff0f;transition:transform .14s ease-out,box-shadow .14s ease-out;position:relative;overflow:hidden}.photo-modal-thumb:hover{transform:translateY(-2px);box-shadow:0 8px 20px -8px #00000038,inset 0 0 0 1px #ffffff1f}.photo-history-row .photo-modal-thumb{border-radius:7px 7px 0 0}.photo-history-row.is-expired .photo-modal-thumb{border-radius:7px}.photo-history-expired-thumb{cursor:default;filter:saturate(.35);opacity:.72}.photo-history-expired-thumb:hover{transform:none;box-shadow:0 1px 2px #0000000f}.photo-modal-thumb .emoji{font-size:48px;line-height:1;filter:drop-shadow(0 2px 4px rgba(0,0,0,.08))}.photo-modal-thumb img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.photo-modal-thumb img+.caption{position:absolute;left:8px;right:8px;bottom:8px;padding:4px 6px;border-radius:4px;background:#00000094;color:#fff;text-shadow:none}.photo-modal-thumb .caption{font-size:var(--text-xs);font-weight:600;letter-spacing:.01em;opacity:.85;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.photo-history-meta{min-height:66px;padding:9px 10px;display:flex;align-items:flex-start;gap:8px;border-top:1px solid var(--border);min-width:0}.photo-history-meta-copy{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px;font-size:var(--text-xs);line-height:var(--leading-normal);color:var(--fg-3);overflow-wrap:anywhere}.photo-history-meta-copy strong{font-weight:700;color:var(--fg-2);overflow-wrap:anywhere}.photo-history-meta-copy .is-retained{color:var(--ok);font-weight:600}.photo-history-meta-copy .is-ended{color:var(--fg-3);font-weight:700}.photo-history-download{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;border:1px solid var(--border);border-radius:7px;background:var(--panel);color:var(--fg-2);text-decoration:none}.photo-history-download:hover{border-color:var(--border-strong);background:var(--bg-2);color:var(--accent)}.photo-history-previous{border-top:1px solid var(--border);border-bottom:1px solid var(--border);min-width:0}.photo-history-previous>summary{min-height:42px;display:flex;align-items:center;gap:8px;padding:8px 2px;cursor:pointer;list-style:none;color:var(--fg);font-size:var(--text-sm);font-weight:700}.photo-history-previous>summary::-webkit-details-marker{display:none}.photo-history-previous>summary svg{margin-left:auto;transition:transform .14s ease-out}.photo-history-previous[open]>summary svg{transform:rotate(180deg)}.photo-history-previous-count{min-width:22px;height:20px;padding:0 6px;border-radius:7px;background:var(--bg-3);color:var(--fg-3);display:inline-grid;place-items:center;font-size:var(--text-2xs);font-weight:700}.photo-history-previous-grid{padding:0 0 12px}.photo-history-load-more{margin:0 auto 12px;display:flex;align-items:center;gap:6px}.photo-history-page-status{padding:2px 0 10px;color:var(--fg-3);font-size:var(--text-xs);line-height:var(--leading-normal)}.photo-history-page-status.is-error{color:var(--danger)}.photo-history-empty,.photo-history-error{padding:16px 4px;color:var(--fg-3);font-size:var(--text-sm);line-height:var(--leading-normal)}.photo-history-realtime-notice{position:fixed;z-index:90;top:76px;right:20px;width:min(420px,calc(100vw - 32px));display:flex;align-items:flex-start;gap:9px;padding:9px 10px;border:1px solid var(--border-strong);border-left:4px solid var(--ok);border-radius:8px;background:var(--panel);color:var(--fg-2);box-shadow:var(--shadow-md);font-size:var(--text-sm);font-weight:700;line-height:var(--leading-normal)}.photo-history-realtime-notice>svg{flex:0 0 auto;margin-top:2px;color:var(--ok)}.photo-history-realtime-notice>span{min-width:0;flex:1;overflow-wrap:anywhere}.photo-history-realtime-notice>button{width:24px;height:24px;flex:0 0 24px;border:0;border-radius:6px;background:transparent;color:var(--fg-3);font-size:18px;line-height:1;cursor:pointer}.photo-history-realtime-notice>button:hover{background:var(--bg-2);color:var(--fg)}.photo-modal-footer{padding-top:4px;text-align:center}.photo-modal-footer .hint{font-size:var(--text-xs);color:var(--fg-4);letter-spacing:.01em}.data-table{background:var(--panel);border:1px solid var(--border);border-radius:14px;overflow:auto}.data-table::-webkit-scrollbar{height:8px;width:8px}.data-table::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.dt-head{display:grid;grid-template-columns:minmax(260px,1.35fr) minmax(126px,.7fr) minmax(250px,1.25fr) minmax(180px,.9fr) minmax(164px,.85fr) minmax(184px,.9fr) 96px;gap:18px;padding:14px 22px;background:var(--panel-2);border-bottom:1px solid var(--border);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);font-weight:600;min-width:1320px}.dt-row{display:flex;flex-direction:column;border-bottom:1px solid var(--border);transition:.1s}.dt-row:last-child{border-bottom:0}.dt-row:hover{background:var(--panel-2)}.dt-row-main{display:grid;grid-template-columns:minmax(260px,1.35fr) minmax(126px,.7fr) minmax(250px,1.25fr) minmax(180px,.9fr) minmax(164px,.85fr) minmax(184px,.9fr) 96px;gap:18px;padding:16px 22px;align-items:center;cursor:pointer;min-width:1320px}.dt-row-stats{display:flex;flex-wrap:wrap;gap:6px;padding:0 22px 16px;min-width:1320px}.dt-stat{display:inline-flex;align-items:baseline;gap:6px;padding:5px 12px;border-radius:7px;background:var(--bg-2);border:1px solid var(--border)}.dt-stat .l{font-family:Geist,sans-serif;font-size:var(--text-2xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3)}.dt-stat .v{font-family:var(--font-mono);font-size:var(--text-md);font-weight:700;color:var(--fg);letter-spacing:-.01em;font-variant-numeric:tabular-nums}.dt-stat .u{font-size:var(--text-2xs);font-weight:500;color:var(--fg-3);margin-left:2px;font-family:Geist,sans-serif;letter-spacing:0}.dt-driver{display:flex;align-items:center;gap:12px}.dt-driver .av{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--bg-3);font-size:var(--text-sm);font-weight:600;border:1px solid var(--border);position:relative}.dt-driver .av .dot{position:absolute;right:-1px;bottom:-1px;width:10px;height:10px;border-radius:50%;background:var(--ok);border:2px solid var(--panel)}.dt-driver.off .av .dot{background:var(--fg-4)}.dt-driver .n{font-size:var(--text-md);font-weight:600;letter-spacing:-.01em}.dt-driver .id{font-size:var(--text-xs);color:var(--fg-3);font-family:var(--font-mono);margin-top:2px}.dt-cell{font-size:var(--text-md);color:var(--fg-2)}.dt-cell.mono{font-family:var(--font-mono);overflow-wrap:anywhere;line-height:1.25}.idle-config-wrap{position:relative;display:inline-flex}.idle-config-trigger{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;font-size:var(--text-sm)}.idle-config-trigger .lbl{color:var(--fg-3);font-weight:500}.idle-config-trigger .val{font-family:var(--font-mono);color:var(--fg);font-weight:700;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.idle-config-trigger .chev{color:var(--fg-3);margin-left:2px;transition:transform .15s ease-out}.idle-config-trigger.is-open{background:var(--bg-2);border-color:var(--accent)}.idle-config-trigger.is-open .chev{transform:rotate(180deg);color:var(--accent)}.idle-config-pop{position:absolute;top:calc(100% + 6px);right:0;z-index:60;min-width:280px;background:var(--panel);border:1px solid var(--border);border-radius:11px;box-shadow:0 12px 32px #0000002e,0 2px 8px #0000000f;padding:14px;display:flex;flex-direction:column;gap:12px;animation:idleConfigPop .14s cubic-bezier(.16,1,.3,1)}@keyframes idleConfigPop{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.idle-config-head{font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3)}.idle-config-presets{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}.idle-config-preset{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background:var(--bg);border:1px solid var(--border-strong);color:var(--fg);padding:7px 0;border-radius:6px;font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;letter-spacing:-.01em;line-height:1;transition:all .12s}.idle-config-preset:hover{background:var(--bg-2);border-color:var(--accent)}.idle-config-preset.is-on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.idle-config-custom{display:flex;align-items:center;gap:8px;padding:6px 0;border-top:1px solid var(--border)}.idle-config-custom label{font-size:var(--text-xs);font-weight:600;color:var(--fg-3);letter-spacing:.04em;text-transform:uppercase;flex-shrink:0}.idle-config-custom input[type=number]{flex:1;min-width:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg);border:1px solid var(--border-strong);border-radius:6px;padding:6px 8px;font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;color:var(--fg);letter-spacing:-.01em;font-variant-numeric:tabular-nums;transition:border-color .12s,box-shadow .12s}.idle-config-custom input[type=number]:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px #7c5cff1f}.idle-config-custom .unit{font-size:var(--text-xs);color:var(--fg-3);flex-shrink:0}.idle-config-hint{font-size:var(--text-xs);color:var(--fg-3);line-height:1.45;letter-spacing:-.005em;padding-top:8px;border-top:1px solid var(--border)}.idle-cell{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:7px;font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;letter-spacing:-.005em;line-height:1}.idle-cell .m{font-variant-numeric:tabular-nums}.idle-cell.idle-ok{background:var(--bg-2);color:var(--fg-2);border:1px solid var(--border)}.idle-cell.idle-na{background:transparent;color:var(--fg-4);font-family:inherit;font-weight:500;border:0;padding:0}.idle-cell.idle-warn{background:#d24b3e24;color:var(--danger);border:1px solid rgba(210,75,62,.45);flex-wrap:wrap;animation:idlePulse 2s ease-in-out infinite}.idle-cell.idle-warn .lbl{font-family:Geist,sans-serif;font-size:var(--text-2xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding-left:6px;border-left:1px solid rgba(210,75,62,.4)}.status-pill.disabled{background:#d24b3e1f;color:var(--danger)}.driver-action-pop{background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 14px 38px #00000029,0 2px 8px #0000000f;padding:10px;animation:driverTimePopIn .14s cubic-bezier(.16,1,.3,1)}.driver-action-title{font-size:var(--text-xs);color:var(--fg-3);font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin:2px 4px 8px}.driver-phone-pop{display:flex;align-items:center;gap:8px;color:var(--fg);text-decoration:none;font-family:var(--font-mono);font-size:var(--text-sm);padding:8px;border-radius:8px;background:var(--bg-2);border:1px solid var(--border)}.driver-action-menu{display:flex;flex-direction:column;gap:4px}.driver-action-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--fg);display:flex;align-items:center;gap:8px;width:100%;padding:9px 10px;border-radius:8px;cursor:pointer;font:600 var(--text-sm)/1 "Geist",sans-serif;text-align:left}.driver-action-item:hover{background:var(--bg-2)}.driver-action-item.danger{color:var(--danger)}.driver-action-item:disabled{opacity:.45;cursor:not-allowed}@keyframes idlePulse{0%,to{background:#d24b3e24;box-shadow:0 0 #d24b3e00}50%{background:#d24b3e38;box-shadow:0 0 0 4px #d24b3e14}}button.driver-time-cell{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:inherit;cursor:pointer;font:inherit;color:inherit;transition:transform .12s,filter .12s}button.driver-time-cell:hover{filter:brightness(1.03)}button.driver-time-cell.is-open{outline:2px solid var(--accent);outline-offset:1px}.idle-over{display:inline-flex;align-items:center;gap:2px;margin-left:6px;padding:2px 5px;border-radius:5px;background:var(--danger);color:#fff;font-family:Geist,sans-serif;font-size:var(--text-2xs);font-weight:700;letter-spacing:.04em}.driver-time-pop{background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 14px 38px #0000002e,0 2px 8px #0000000f;padding:12px 14px 10px;animation:driverTimePopIn .14s cubic-bezier(.16,1,.3,1)}@keyframes driverTimePopIn{0%{opacity:0;transform:translateY(-4px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.driver-time-pop-head{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}.driver-time-pop-title{font-size:var(--text-md);font-weight:700;color:var(--fg);letter-spacing:-.01em}.driver-time-pop-sub{font-size:var(--text-2xs);color:var(--fg-3);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.driver-time-pop-table{display:flex;flex-direction:column;border-top:1px solid var(--border)}.driver-time-pop-row{display:grid;grid-template-columns:24px minmax(0,1fr) 52px 52px;gap:8px;align-items:center;padding:7px 2px;border-bottom:1px solid var(--border);font-size:var(--text-sm);color:var(--fg)}.driver-time-pop-single .driver-time-pop-row{grid-template-columns:24px minmax(0,1fr) 60px}.driver-time-pop-row .c-val{font-family:var(--font-mono);font-weight:600;font-variant-numeric:tabular-nums;text-align:right;color:var(--fg-2);position:relative}.driver-time-pop-row .c-val.is-over{color:var(--danger);font-weight:700}.driver-time-pop-row .c-val.is-over .over-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--danger);margin-left:5px;vertical-align:middle}.driver-time-pop-row-head .c-val{font-family:Geist,sans-serif;font-size:var(--text-2xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);text-align:right}.driver-time-pop-row-total .c-val{color:var(--fg);font-weight:700}.driver-time-pop-row:last-child{border-bottom:0}.driver-time-pop-row .c-n{font-family:var(--font-mono);font-weight:600;color:var(--fg-3);font-size:var(--text-xs);text-align:center}.driver-time-pop-row .c-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.driver-time-pop-row .c-load,.driver-time-pop-row .c-drop{font-family:var(--font-mono);font-weight:600;font-variant-numeric:tabular-nums;text-align:right;color:var(--fg-2);position:relative}.driver-time-pop-row .c-load.is-over,.driver-time-pop-row .c-drop.is-over{color:var(--danger);font-weight:700}.driver-time-pop-row .c-load.is-over .over-dot,.driver-time-pop-row .c-drop.is-over .over-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--danger);margin-left:5px;vertical-align:middle}.driver-time-pop-row-head{font-family:Geist,sans-serif;font-size:var(--text-2xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);border-bottom:1px solid var(--border);padding:6px 2px 8px}.driver-time-pop-row-head .c-load,.driver-time-pop-row-head .c-drop{font-weight:700;color:var(--fg-3)}.driver-time-pop-row-head .c-load.is-focus,.driver-time-pop-row-head .c-drop.is-focus{color:var(--accent)}.driver-time-pop-row-total{background:var(--bg-2);margin:6px -14px -10px;padding:8px 14px;border-radius:0 0 12px 12px;border-top:1px solid var(--border);border-bottom:0}.driver-time-pop-row-total .c-name{color:var(--fg-3);text-transform:uppercase;letter-spacing:.06em;font-size:var(--text-2xs);font-weight:700}.driver-time-pop-row-total .c-load,.driver-time-pop-row-total .c-drop{color:var(--fg);font-weight:700}.driver-time-pop-empty{padding:14px 6px;color:var(--fg-3);font-size:var(--text-sm);text-align:center}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:6px;font-size:var(--text-xs);font-weight:600;letter-spacing:.02em}.status-pill.online{background:#2a8f5f24;color:#2a8f5f}.status-pill.offline{background:var(--bg-2);color:var(--fg-3)}.status-pill .d{width:6px;height:6px;border-radius:50%;background:currentColor}svg.ic{width:18px;height:18px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}svg.ic-sm{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.pulse-marker{transform-origin:center;transform-box:fill-box}.pulse-marker .ring{animation:ringPulse 2s cubic-bezier(.4,0,.2,1) infinite;transform-origin:center;transform-box:fill-box}@keyframes ringPulse{0%{r:8;opacity:.8}to{r:26;opacity:0}}.moving-dot{animation:travel 12s linear infinite}@keyframes travel{0%{offset-distance:0%}to{offset-distance:100%}}*{scrollbar-width:thin;scrollbar-color:var(--border) transparent}.dispatch{flex:1;display:flex;flex-direction:column;min-height:0;background:var(--bg)}.dispatch-bar{display:flex;align-items:center;justify-content:space-between;padding:18px 28px;border-bottom:1px solid var(--border);background:var(--panel-2)}.stepper{display:flex;align-items:center;gap:12px}.step{display:flex;align-items:center;gap:8px;font-size:var(--text-md);color:var(--fg-3);font-weight:500}.step .n{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--bg-2);color:var(--fg-3);font-size:var(--text-xs);font-weight:600;font-family:var(--font-mono);border:1px solid var(--border)}.step.current{color:var(--fg)}.step.current .n{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.step.done{color:var(--fg-2)}.step.done .n{background:var(--ok);color:#06231a;border-color:var(--ok)}.step-line{width:32px;height:1px;background:var(--border)}.dispatch-actions{display:flex;gap:8px;align-items:center}.dispatch-bar-slim{padding:10px 28px}.pill-live.is-stale{background:#c68a1a24;color:#c68a1a;border-color:#c68a1a73}.pill-live.is-stale .dot{background:#c68a1a}.pill-live.is-draft-save{background:#3268db1a;color:#2f5bb7;border:1px solid rgba(50,104,219,.22);letter-spacing:0;max-width:220px}.pill-live.is-draft-save .dot{background:#2f5bb7;box-shadow:none;animation:none;flex:0 0 auto}.pill-live.is-draft-save.is-saving .dot{animation:pulse 1.2s infinite}.pill-live.is-draft-save.is-publish_needed{background:#c68a1a24;color:#b8790f;border-color:#c68a1a57}.pill-live.is-draft-save.is-publish_needed .dot{background:#c68a1a}.pill-live.is-draft-save.is-conflict,.pill-live.is-draft-save.is-error{background:#cd2b531f;color:#b4234b;border-color:#cd2b534d}.pill-live.is-draft-save.is-conflict .dot,.pill-live.is-draft-save.is-error .dot{background:#cd2b53}.dispatch-body{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0}.empty-state{flex:1;display:flex;justify-content:center;align-items:flex-start;padding:24px 32px;overflow:auto;min-height:0}.empty-state .empty-card{margin-block:0}.empty-state.task-timeline-scroll{align-items:flex-start;scroll-behavior:smooth;overscroll-behavior:contain}.empty-state.task-timeline-scroll .empty-card{overflow:visible}.empty-card{width:100%;max-width:1680px;text-align:left;padding:18px 14px;background:var(--panel);border:1px solid var(--border);border-radius:14px}.empty-ic{width:64px;height:64px;border-radius:16px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;margin:0 auto 18px}.empty-card h2{margin:0 0 10px;font-size:var(--text-3xl);letter-spacing:-.02em;font-weight:600}.empty-card p{margin:0;color:var(--fg-3);font-size:var(--text-md);line-height:1.6}.empty-actions{display:flex;gap:8px;justify-content:center;margin-top:22px;flex-wrap:wrap}.empty-hint{margin-top:24px;padding-top:20px;border-top:1px dashed var(--border);display:flex;flex-direction:column;gap:6px;text-align:left}.map-empty-state{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px;background:var(--bg);color:var(--fg-3);z-index:1}.map-empty-state h2{margin:12px 0 8px;color:var(--fg);font-size:var(--text-xl);letter-spacing:-.02em}.map-empty-state p{max-width:420px;margin:0;font-size:var(--text-md);line-height:1.55}.page-load-metric{position:fixed;right:88px;bottom:18px;z-index:70;display:inline-flex;align-items:center;gap:6px;max-width:min(320px,calc(100vw - 120px));padding:7px 10px;border-radius:999px;background:color-mix(in srgb,var(--panel) 92%,transparent);border:1px solid var(--border);box-shadow:0 8px 24px #0000001a;color:var(--fg-3);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.archive-page{flex:1;min-height:0;overflow:auto;padding:28px 32px 36px}.archive-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.archive-page-head h1{margin:0;font-size:38px;line-height:1;font-weight:700;letter-spacing:-.035em}.archive-page-head p{margin:10px 0 0;color:var(--fg-3);font-size:var(--text-sm)}.driver-sop-page{flex:1;min-height:0;overflow:auto;padding:28px 32px 36px}.driver-sop-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.driver-sop-head h1{margin:0;font-size:38px;line-height:1;font-weight:700;letter-spacing:0}.driver-sop-head p{margin:10px 0 0;color:var(--fg-3);font-size:var(--text-sm)}.driver-sop-refresh{min-height:38px;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.driver-sop-error{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--danger) 38%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--danger) 7%,var(--panel));color:var(--danger);font-weight:650}.driver-sop-error button,.driver-sop-retry{min-height:34px;padding:0 12px;border:1px solid currentColor;border-radius:7px;background:transparent;color:inherit;font-weight:700;cursor:pointer}.driver-sop-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.driver-sop-video{min-width:0;min-height:108px;padding:18px;display:flex;align-items:center;gap:16px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.driver-sop-video-icon{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;border-radius:50%;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border));background:var(--accent-soft);color:var(--accent)}.driver-sop-video-meta{min-width:0;flex:1}.driver-sop-video-meta>div{min-width:0}.driver-sop-video-meta h2{margin:5px 0 0;font-size:var(--text-lg);line-height:1.25;letter-spacing:0;overflow-wrap:anywhere}.driver-sop-video-meta>div>span{color:var(--accent);font-size:var(--text-xs);font-weight:750;text-transform:uppercase}.driver-sop-video-actions{flex:0 0 auto;display:flex;align-items:flex-end;flex-direction:column;gap:10px}.driver-sop-ready{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;color:var(--fg-3);font-size:var(--text-xs);font-weight:700}.driver-sop-ready>span{width:7px;height:7px;border-radius:50%;background:var(--ok)}.driver-sop-ready.is-unavailable>span{background:var(--fg-3)}.driver-sop-open,.driver-sop-retry{min-height:40px;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:7px;font-weight:750;white-space:nowrap;cursor:pointer}.driver-sop-open{border:1px solid var(--accent);background:var(--accent);color:#fff;box-shadow:0 5px 14px color-mix(in srgb,var(--accent) 20%,transparent)}.driver-sop-open:hover{filter:brightness(.96)}.driver-sop-open:focus-visible,.driver-sop-retry:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.driver-sop-open:disabled{opacity:.58;cursor:wait}.driver-sop-video.is-loading{animation:driver-sop-loading 1.2s ease-in-out infinite alternate}.driver-sop-video.is-loading .driver-sop-video-icon span{width:18px;height:18px;border-radius:50%;background:color-mix(in srgb,var(--accent) 24%,var(--bg-2))}.driver-sop-video.is-loading .driver-sop-video-meta span,.driver-sop-video.is-loading .driver-sop-video-meta small{display:block;height:12px;border-radius:4px;background:var(--bg-2)}.driver-sop-video.is-loading .driver-sop-video-meta span{width:35%}.driver-sop-video.is-loading .driver-sop-video-meta small{width:58%;margin-top:10px}@keyframes driver-sop-loading{0%{opacity:.72}to{opacity:1}}@media(max-width:900px){.driver-sop-grid{grid-template-columns:1fr}}@media(max-width:600px){.driver-sop-page{padding:20px 16px 30px}.driver-sop-head{align-items:stretch;flex-direction:column}.driver-sop-head h1{font-size:30px}.driver-sop-refresh{align-self:flex-start}.driver-sop-error{align-items:flex-start;flex-direction:column}.driver-sop-error button{width:100%}.driver-sop-video{align-items:flex-start;flex-wrap:wrap;padding:16px}.driver-sop-video-meta{width:calc(100% - 64px);flex:1 1 calc(100% - 64px)}.driver-sop-video-actions{width:100%;align-items:stretch;flex-direction:row;justify-content:space-between}.driver-sop-ready{align-self:center}.driver-sop-open,.driver-sop-retry{min-width:0;max-width:70%;white-space:normal;text-align:center}}.archive-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.archive-remove-selected{min-height:38px;padding:0 14px;border:1px solid color-mix(in srgb,var(--danger) 42%,var(--border));border-radius:9px;background:var(--panel);color:var(--danger);font-weight:700;display:inline-flex;align-items:center;gap:8px;cursor:pointer}.archive-remove-selected:disabled{opacity:.45;cursor:not-allowed}.archive-notice{margin:0 0 14px;padding:11px 14px;border:1px solid color-mix(in srgb,var(--ok) 35%,var(--border));border-radius:9px;background:color-mix(in srgb,var(--ok) 8%,var(--panel));color:var(--fg-2);font-weight:650}.archive-list{background:var(--panel);border:1px solid var(--border);border-radius:16px;overflow:hidden}.archive-list-head,.archive-row{display:grid;grid-template-columns:32px minmax(280px,1.5fr) 150px minmax(190px,.75fr) minmax(210px,.8fr);gap:16px;align-items:center}.archive-list-head{padding:14px 20px;background:var(--panel-2);border-bottom:1px solid var(--border);color:var(--fg-3);font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.archive-row{padding:16px 20px;border-top:1px solid var(--border)}.archive-row:first-of-type{border-top:0}.archive-row:hover{background:var(--bg-2)}.archive-select-all,.archive-row-select{display:grid;place-items:center;margin:0}.archive-select-all input,.archive-row-select input{width:17px;height:17px;accent-color:var(--accent);cursor:pointer}.archive-row-select input:disabled{cursor:not-allowed;opacity:.35}.archive-file{min-width:0}.archive-file b,.archive-completed b{display:block;color:var(--fg);font-size:var(--text-md);font-weight:700;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.archive-file span,.archive-file small{display:block;margin-top:5px;color:var(--fg-3);font-size:var(--text-xs);line-height:1.35}.archive-file small{color:color-mix(in srgb,var(--warn) 80%,var(--fg));font-weight:650}.archive-status{justify-self:start;display:inline-flex;align-items:center;min-height:27px;padding:0 9px;border:1px solid var(--border);border-radius:999px;background:var(--panel-2);color:var(--fg-2);font-size:var(--text-xs);font-weight:750;white-space:nowrap}.archive-status.is-ok{border-color:color-mix(in srgb,var(--ok) 38%,var(--border));background:color-mix(in srgb,var(--ok) 10%,var(--panel));color:var(--ok)}.archive-status.is-warning{border-color:color-mix(in srgb,var(--warn) 46%,var(--border));background:color-mix(in srgb,var(--warn) 10%,var(--panel));color:color-mix(in srgb,var(--warn) 78%,var(--fg))}.archive-status.is-critical{border-color:color-mix(in srgb,var(--danger) 42%,var(--border));background:color-mix(in srgb,var(--danger) 8%,var(--panel));color:var(--danger)}.archive-status.is-progress{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));background:var(--accent-soft);color:var(--accent)}.archive-row-actions{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}.archive-download-link{height:38px;border:0;border-radius:10px;background:var(--accent);color:var(--accent-ink);font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;white-space:nowrap;padding:0 12px}.archive-download-link:disabled{cursor:not-allowed;opacity:.55}.archive-icon-action{min-height:38px;padding:0 10px;border:1px solid var(--border);border-radius:9px;background:var(--panel);color:var(--fg-2);font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer}.archive-icon-action.is-danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 32%,var(--border))}.archive-icon-action.is-restore{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 32%,var(--border))}.archive-icon-action:disabled{opacity:.5;cursor:not-allowed}.archive-empty{min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--fg-3);text-align:center;padding:28px}.archive-empty b{color:var(--fg);font-size:var(--text-lg)}.archive-empty span{max-width:420px;line-height:1.5}.archive-error{margin:0 0 14px}.archive-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-items:center;padding:20px;background:#1614127a;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.archive-dialog{width:min(480px,100%);padding:24px;border:1px solid var(--border);border-radius:14px;background:var(--panel);box-shadow:0 24px 70px #0000003d}.archive-dialog-icon{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}.archive-dialog-icon.is-danger{background:color-mix(in srgb,var(--danger) 10%,var(--panel));color:var(--danger)}.archive-dialog h2{margin:16px 0 8px;font-size:var(--text-xl);letter-spacing:0}.archive-dialog>p{margin:0;color:var(--fg-3);line-height:1.55}.archive-dialog-reason{display:block;margin-top:18px;color:var(--fg-2);font-size:var(--text-sm);font-weight:700}.archive-dialog-reason textarea{width:100%;margin-top:7px;padding:10px 11px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--fg);font:inherit;resize:vertical;box-sizing:border-box}.archive-dialog-reason textarea:focus{outline:2px solid color-mix(in srgb,var(--accent) 28%,transparent);border-color:var(--accent)}.archive-dialog-reason small{display:block;margin-top:4px;text-align:right;color:var(--fg-3);font-weight:500}.archive-dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.archive-confirm-remove,.archive-confirm-restore{min-height:40px;padding:0 15px;border:0;border-radius:9px;color:#fff;font-weight:750;cursor:pointer}.archive-confirm-remove{background:var(--danger)}.archive-confirm-restore{background:var(--accent);color:var(--accent-ink)}.archive-confirm-remove:disabled,.archive-confirm-restore:disabled{opacity:.5;cursor:not-allowed}@media(max-width:980px){.archive-page-head{flex-direction:column}.archive-head-actions{width:100%}.archive-list-head{display:none}.archive-row{grid-template-columns:28px 1fr;gap:12px;align-items:start}.archive-file,.archive-status,.archive-completed,.archive-row-actions{grid-column:2}.archive-row-select{grid-column:1;grid-row:1}.archive-row-actions{justify-content:flex-start}.archive-download-link,.archive-icon-action{flex:1}}@media(max-width:600px){.archive-page{padding:20px 16px 30px}.archive-head-actions button{flex:1}.archive-dialog-actions{flex-direction:column-reverse}.archive-dialog-actions button{width:100%}}.hint-row{display:flex;gap:12px;font-size:var(--text-xs);color:var(--fg-3);font-family:var(--font-mono)}.hint-k{display:inline-block;width:50px;color:var(--fg-2);font-weight:600}.manual-input{margin-top:0;padding-top:0;border-top:0;display:flex;flex-direction:column;gap:14px;text-align:left}.manual-input-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 6px;position:sticky;top:0;z-index:30;background:var(--panel);border-bottom:1px solid color-mix(in srgb,var(--border) 80%,transparent);box-shadow:0 8px 18px #14120c0a}.manual-input-head-actions{display:flex;align-items:center;gap:14px;margin-left:auto;position:sticky;right:0;z-index:2;background:var(--panel);padding-left:12px}.manual-input-title{font-size:var(--text-lg);font-weight:600;color:var(--fg);letter-spacing:-.01em;line-height:1.2}.manual-input-hint{font-size:var(--text-xs);font-family:var(--font-mono);padding:3px 8px;background:var(--accent-soft);color:var(--accent);border-radius:6px;font-weight:600;transition:opacity .15s}.manual-input-hint.is-hidden{visibility:hidden;opacity:0}.link-btn{display:inline-flex;align-items:center;gap:4px;background:transparent;border:0;padding:2px 4px;cursor:pointer;color:var(--accent);font-size:var(--text-xs);font-weight:600;transition:.15s}.link-btn:hover{color:var(--accent-strong,#5430b0);text-decoration:underline}.link-btn-add{background:var(--accent);color:#fff;padding:5px 12px;border-radius:999px;font-size:var(--text-xs);font-weight:600;letter-spacing:0;box-shadow:0 1px 2px #6b3fd42e}.link-btn-add:hover{color:#fff;background:var(--accent-strong,#5430b0);text-decoration:none;box-shadow:0 2px 6px #6b3fd447}.mark-delivered-btn{background:#2a8f5f;box-shadow:0 1px 2px #2a8f5f2e}.mark-delivered-btn:hover{background:#23764f;box-shadow:0 2px 6px #2a8f5f40}.dispatch-soft-delete-action{background:var(--danger);border-color:color-mix(in srgb,var(--danger) 86%,#000 14%);color:#fff;gap:4px;padding:5px 12px;border-radius:999px;font-size:var(--text-xs);font-weight:600;box-shadow:0 10px 24px -18px color-mix(in srgb,var(--danger) 72%,transparent)}.dispatch-soft-delete-action:hover{background:color-mix(in srgb,var(--danger) 92%,#000 8%)}.home-stop-run-picker{display:inline-flex;align-items:center;gap:4px}.home-stop-run-picker.is-open .link-btn-add{background:var(--accent-strong,#5430b0);box-shadow:0 2px 6px #6b3fd447}.home-stop-run-options{display:inline-flex;align-items:center;flex:0 0 auto;gap:3px;padding:3px;border:1px solid var(--border);border-radius:999px;background:var(--panel);box-shadow:0 4px 12px #14120c1a}.home-stop-run-btn{width:26px;height:26px;border:1px solid transparent;border-radius:999px;background:var(--bg-2);color:var(--fg-2);cursor:pointer;display:inline-grid;place-items:center;font:700 var(--text-xs)/1 var(--font-mono);transition:background .15s,color .15s,border-color .15s,box-shadow .15s}.home-stop-run-btn:hover,.home-stop-run-btn:focus-visible{background:var(--accent);border-color:var(--accent);color:#fff;outline:0;box-shadow:0 2px 7px #6b3fd440}.staged-list{display:flex;flex-direction:column;gap:4px;padding:8px 16px 10px;background:var(--bg-2);border:1px solid var(--border);border-radius:12px;max-height:220px;overflow-y:auto}.staged-list::-webkit-scrollbar{width:6px}.staged-list::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.staged-list::-webkit-scrollbar-track{background:transparent}.staged-row{position:relative;padding:7px 32px 7px 4px;background:var(--panel);border:1px solid var(--border);border-radius:7px;transition:border-color .15s,background .15s;align-items:center}.staged-row:hover{border-color:var(--border-strong);background:#fbf9f3}.staged-cell{font-size:var(--text-sm);color:var(--fg-2);letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;padding:2px 4px;line-height:1.25}.staged-cell.sc-date{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--fg);display:flex;flex-direction:column;gap:1px;overflow:visible;white-space:normal}.sc-date-time{display:inline-flex;align-items:center;gap:3px;font-size:var(--text-2xs);color:var(--fg-4);letter-spacing:-.01em}.staged-cell.sc-stop{text-align:center;padding:2px 0}.sc-stop-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;border-radius:5px;background:var(--accent-soft);color:var(--accent);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;line-height:1}.staged-cell.sc-inv{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--fg-3)}.staged-cell.sc-name{font-weight:600;color:var(--fg);font-size:var(--text-sm)}.staged-cell.sc-addr{color:var(--fg-2);font-size:var(--text-xs)}.staged-cell.sc-phone{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--fg-3);display:flex;flex-direction:column;gap:1px;overflow:visible;white-space:normal}.sc-phone-main{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sc-phone-alt{font-size:var(--text-2xs);color:var(--fg-4)}.staged-cell.sc-driver{font-family:var(--font-mono);font-weight:600;font-size:var(--text-xs);color:var(--fg-2)}.staged-cell.sc-vehicle{font-family:Geist,sans-serif;font-weight:500;font-size:var(--text-xs);color:var(--fg-2);letter-spacing:-.005em}.staged-cell.sc-cashar{padding:2px 0}.sc-tag{display:inline-flex;align-items:center;justify-content:center;padding:2px 7px;border-radius:5px;background:var(--bg-3);color:var(--fg-3);font-size:var(--text-2xs);font-weight:700;letter-spacing:.05em;text-transform:uppercase;line-height:1;max-width:max-content}.sc-tag.tag-cash,.sc-tag.tag-paid,.sc-tag.tag-settled{background:#2a8f5f26;color:#2a8f5f}.sc-tag.tag-check{background:#2174c426;color:#2174c4}.sc-tag.tag-ar{background:#c68a1a2e;color:#c68a1a}.staged-cell.sc-amount{font-family:var(--font-mono);font-weight:700;color:var(--fg);font-variant-numeric:tabular-nums;font-size:var(--text-xs)}.staged-cell.sc-received{font-size:var(--text-xs);font-weight:600;color:#2174c4}.staged-cell.sc-run{padding:2px 0}.sc-run-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 7px;border-radius:5px;background:#6b3fd41a;color:var(--accent);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;line-height:1;max-width:max-content}.staged-rm{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:6px;background:transparent;border:0;color:var(--fg-4);cursor:pointer;display:grid;place-items:center;font-size:var(--text-lg);line-height:1;transition:.15s}.staged-rm:hover{background:var(--bg-2);color:var(--danger)}.task-table{--task-table-min-width:1360px;background:var(--panel);border:1px solid var(--border);border-radius:12px;margin-top:4px;min-width:var(--task-table-min-width);overflow:visible}.task-table>.task-row-head{border-top-left-radius:12px;border-top-right-radius:12px}.task-table.is-timeline>.task-row-head{position:sticky;top:0;z-index:36;box-shadow:0 8px 18px #00000014}.task-row{--task-row-grid-columns: 24px 132px 36px 104px minmax(112px, .95fr) 138px minmax(138px, 1.25fr) 78px 78px 84px 116px 58px 66px 40px 22px 22px 22px;display:grid;align-items:center;gap:4px;grid-template-columns:var(--task-row-grid-columns);width:100%;padding:12px 10px;border-top:1px solid var(--border);font-size:var(--text-md);color:var(--fg);transition:background .12s,opacity .12s;position:relative}.task-table-empty{display:flex;flex-direction:column;align-items:center;gap:10px;border:1px solid var(--border);border-radius:12px;padding:28px 18px;color:var(--fg-2);font-size:var(--text-sm);text-align:center;background:var(--panel)}.dispatch-route-warning{display:flex;align-items:flex-start;gap:10px;margin:0 0 12px;padding:10px 12px;border:1px solid rgba(190,18,60,.28);border-left:4px solid #be123c;border-radius:8px;background:#be123c12;color:#7f1d1d;min-height:0;align-self:stretch}.dispatch-route-warning-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:26px;height:26px;border-radius:7px;background:#be123c1a;color:#be123c}.dispatch-route-warning-body{min-width:0;flex:1}.dispatch-route-warning-title{font-size:var(--text-sm);font-weight:800;line-height:var(--leading-tight);color:#7f1d1d}.dispatch-route-warning-copy{margin-top:3px;color:#9f1239;font-size:var(--text-xs);line-height:var(--leading-normal)}.dispatch-route-warning-details{margin-top:8px;font-size:var(--text-xs);color:#7f1d1d}.dispatch-route-warning-details summary{cursor:pointer;width:max-content;max-width:100%;font-weight:800}.dispatch-route-warning-list{display:grid;gap:4px;margin-top:8px;max-width:100%}.dispatch-route-warning-row{display:grid;grid-template-columns:minmax(96px,.75fr) minmax(120px,1fr) minmax(140px,1fr) minmax(170px,1.1fr);gap:8px;align-items:center;min-width:0;padding:6px 8px;border-radius:6px;background:#ffffff8f;border:1px solid rgba(190,18,60,.12)}.dispatch-route-warning-row>*{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dispatch-route-warning-row strong{font-weight:800;color:#7f1d1d}.dispatch-route-warning-row em{font-style:normal;color:#9f1239;font-weight:700}.dispatch-route-warning-more{color:#9f1239;font-weight:700;padding:2px 8px}.dispatch-home-stop-notice{display:flex;align-items:flex-start;gap:10px;margin:0 0 12px;padding:9px 10px;border:1px solid rgba(32,129,91,.24);border-left:4px solid #20815b;border-radius:8px;background:#20815b12;color:#145c41;min-height:0;align-self:stretch}.dispatch-home-stop-notice.is-info{border-color:#2563eb33;border-left-color:#2563eb;background:#2563eb0f;color:#1e3a8a}.dispatch-home-stop-notice.is-warn{border-color:#c68a1a42;border-left-color:#c68a1a;background:#c68a1a14;color:#7a4d07}.dispatch-home-stop-notice-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:24px;height:24px;border-radius:7px;background:#20815b1c;color:#20815b}.dispatch-home-stop-notice.is-info .dispatch-home-stop-notice-icon{background:#2563eb1a;color:#2563eb}.dispatch-home-stop-notice.is-warn .dispatch-home-stop-notice-icon{background:#c68a1a1f;color:#a16307}.dispatch-home-stop-notice-body{min-width:0;flex:1}.dispatch-home-stop-notice-title{font-size:var(--text-sm);font-weight:800;line-height:var(--leading-tight)}.dispatch-home-stop-notice-copy{margin-top:3px;font-size:var(--text-xs);line-height:var(--leading-normal);color:inherit;opacity:.86}.dispatch-home-stop-notice-close{border:0;background:transparent;color:currentColor;cursor:pointer;flex:0 0 auto;width:24px;height:24px;border-radius:6px;font-size:18px;line-height:20px}.dispatch-home-stop-notice-close:hover{background:#0000000f}.dispatch-hold-realtime-banner{display:flex;align-items:flex-start;gap:10px;margin:0 0 12px;padding:9px 10px;border:1px solid rgba(198,138,26,.28);border-left:4px solid #c68a1a;border-radius:8px;background:#c68a1a14;color:#7a4d07;align-self:stretch;min-width:0}.dispatch-hold-realtime-banner.is-success{border-color:#20815b3d;border-left-color:#20815b;background:#20815b12;color:#145c41}.dispatch-hold-realtime-icon{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:7px;background:#c68a1a1f;color:#a16307}.dispatch-hold-realtime-banner.is-success .dispatch-hold-realtime-icon{background:#20815b1c;color:#20815b}.dispatch-hold-realtime-body{flex:1;min-width:0}.dispatch-hold-realtime-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;font-size:var(--text-sm);font-weight:800;line-height:var(--leading-tight);overflow-wrap:anywhere}.dispatch-hold-draft-conflict{display:flex;align-items:center;gap:8px;margin:0 0 12px;padding:8px 10px;border:1px solid rgba(198,138,26,.26);border-radius:8px;background:#c68a1a14;color:#7a4d07;font-size:var(--text-xs);font-weight:700;line-height:var(--leading-normal)}.dispatch-hold-draft-conflict svg{flex:0 0 auto}.dispatch-hold-realtime-close{border:0;background:transparent;color:currentColor;cursor:pointer;flex:0 0 24px;width:24px;height:24px;border-radius:6px;font-size:18px;line-height:20px}.dispatch-hold-realtime-close:hover{background:#0000000f}.dispatch-duplicate-warning{display:flex;align-items:flex-start;gap:10px;margin:0 0 12px;padding:10px 12px;border:1px solid rgba(37,99,235,.24);border-left:4px solid #2563eb;border-radius:8px;background:#2563eb12;color:#1e3a8a;min-height:0;align-self:stretch}.dispatch-duplicate-warning-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:26px;height:26px;border-radius:7px;background:#2563eb1a;color:#2563eb}.dispatch-duplicate-warning-body{min-width:0;flex:1}.dispatch-duplicate-warning-title{font-size:var(--text-sm);font-weight:800;line-height:var(--leading-tight);color:#1e3a8a}.dispatch-duplicate-warning-copy{margin-top:3px;color:#1d4ed8;font-size:var(--text-xs);line-height:var(--leading-normal)}.dispatch-duplicate-warning-details{margin-top:8px;font-size:var(--text-xs);color:#1e3a8a}.dispatch-duplicate-warning-details summary{cursor:pointer;width:max-content;max-width:100%;font-weight:800}.dispatch-duplicate-warning-list{display:grid;gap:4px;margin-top:8px;max-width:100%}.dispatch-duplicate-warning-row{display:grid;grid-template-columns:minmax(96px,.85fr) minmax(110px,.8fr) minmax(110px,.8fr) minmax(72px,.55fr);gap:8px;align-items:center;min-width:0;padding:6px 8px;border-radius:6px;background:#ffffff9e;border:1px solid rgba(37,99,235,.16)}.dispatch-duplicate-warning-row>*{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dispatch-duplicate-warning-row strong{font-weight:800;color:#1e3a8a}.dispatch-duplicate-warning-row em{font-style:normal;color:#1d4ed8;font-weight:700}.dispatch-duplicate-warning-more{color:#1d4ed8;font-weight:700;padding:2px 8px}.task-row.is-duplicate-stop-label:not(.is-held):not(.is-route-missing),.task-row.is-duplicate-stop-label:not(.is-held):not(.is-route-missing):hover{background:#2563eb0f;box-shadow:inset 4px 0 #2563eb,inset 0 0 0 1.5px #2563eb3d;border-radius:6px}.drv-tabs{display:flex;gap:4px;margin:18px 0 10px;border-bottom:1px solid var(--border)}.drv-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background:transparent;border:0;padding:9px 16px;margin-bottom:-1px;font-family:Geist,sans-serif;font-size:var(--text-sm);font-weight:600;color:var(--fg-3);letter-spacing:-.005em;border-bottom:2px solid transparent;transition:color .12s,border-color .12s}.drv-tab:hover{color:var(--fg)}.drv-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.drv-perf{background:var(--panel);border:1px solid var(--border);border-radius:12px;overflow:hidden}.drv-perf-head,.drv-perf-row{display:grid;align-items:center;gap:14px;grid-template-columns:200px minmax(280px,1fr) 470px;padding:12px 18px}.drv-perf-head{background:var(--panel-2);border-bottom:1px solid var(--border);font-size:var(--text-xs);font-weight:700;color:var(--fg-3);letter-spacing:.04em;text-transform:uppercase}.drv-perf-day-labels{display:grid;grid-template-columns:repeat(14,1fr);gap:4px;width:100%}.drv-perf-day-label{font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:600;color:var(--fg-4);letter-spacing:-.02em;text-transform:none;text-align:center;line-height:1}.drv-perf-row{border-top:1px solid var(--border);transition:background .12s}.drv-perf-row:hover{background:var(--bg-2)}.drv-perf-driver{display:flex;align-items:center;gap:10px;font-family:Geist,sans-serif}.drv-perf-driver .av{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent);font-size:var(--text-sm);font-weight:700;flex-shrink:0}.drv-perf-driver .av.off{background:var(--bg-3);color:var(--fg-3)}.drv-perf-driver .n{font-size:var(--text-md);font-weight:600;color:var(--fg);line-height:1.25}.drv-perf-driver .id{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--fg-4);line-height:1.25}.drv-perf-strip{display:grid;grid-template-columns:repeat(14,1fr);gap:4px;width:100%}.drv-perf-day{height:30px;border-radius:5px;display:flex;align-items:center;justify-content:center;cursor:default;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;color:#fff;line-height:1;letter-spacing:-.01em;text-shadow:0 1px 2px rgba(0,0,0,.22);transition:transform .12s,box-shadow .12s}.drv-perf-day:hover{transform:scale(1.1);box-shadow:0 2px 6px #0000002e}.drv-perf-day.perf-off{color:var(--fg-3);text-shadow:none}.perf-ex{background:#1f6e48}.perf-good{background:#5bb37e}.perf-ok{background:#e0a72e}.perf-poor{background:#d24a3a}.perf-off{background:#dcdbd5}.drv-perf-stats{display:grid;grid-template-columns:1fr 1fr 1fr 1.6fr 1.6fr;gap:12px;align-items:stretch}.drv-perf-stat{display:flex;flex-direction:column;gap:2px}.drv-perf-stat .l{font-size:var(--text-2xs);color:var(--fg-3);font-weight:600;letter-spacing:.02em;text-transform:uppercase}.drv-perf-stat .v{font-family:var(--font-mono);font-size:var(--text-lg);font-weight:700;color:var(--fg);letter-spacing:-.02em}.drv-perf-stat .u{font-size:var(--text-xs);font-weight:500;color:var(--fg-3);margin-left:2px;letter-spacing:0}button.drv-perf-time-stat{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;text-align:center;background:var(--bg-2);border:1px solid var(--border);padding:6px 10px;border-radius:8px;font:inherit;color:inherit;display:flex;flex-direction:column;gap:2px;align-items:center;justify-content:center;min-width:0;transition:background .12s,border-color .12s,box-shadow .12s}button.drv-perf-time-stat:hover{background:var(--panel);border-color:var(--border-strong, var(--border));box-shadow:0 1px 3px #0000000a}button.drv-perf-time-stat.is-open{background:color-mix(in srgb,var(--accent) 8%,var(--panel));border-color:var(--accent)}button.drv-perf-time-stat .l{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.driver-hist-time-pop{display:flex;flex-direction:column;padding:12px 0 0}.driver-hist-time-pop .driver-time-pop-head{padding:0 14px 10px;margin-bottom:0;border-bottom:1px solid var(--border)}.driver-hist-pop-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;padding:6px 14px 0}.driver-hist-pop-day{padding:8px 0;border-bottom:1px solid var(--border)}.driver-hist-pop-day:last-child{border-bottom:0}.driver-hist-pop-day.driver-hist-pop-day-off{opacity:.55}.driver-hist-pop-day-head{display:grid;grid-template-columns:54px 1fr auto;gap:8px;align-items:baseline;margin-bottom:6px}.driver-hist-pop-day-head .d-date{font-family:var(--font-mono);font-weight:700;font-size:var(--text-sm);color:var(--fg)}.driver-hist-pop-day-head .d-meta{font-size:var(--text-2xs);color:var(--fg-3);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.driver-hist-pop-day-head .d-tot{font-family:var(--font-mono);font-weight:600;font-size:var(--text-sm);color:var(--fg-2);display:inline-flex;align-items:center;gap:6px}.driver-hist-pop-day-head .d-over{background:var(--danger);color:#fff;font-family:Geist,sans-serif;font-size:var(--text-2xs);font-weight:700;letter-spacing:.04em;padding:1px 5px;border-radius:4px}.driver-hist-pop-day-stops{display:flex;flex-wrap:wrap;gap:6px}.driver-hist-pop-day-stops .d-stop{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:6px;background:var(--bg-2);border:1px solid var(--border);font-family:var(--font-mono);font-size:var(--text-xs)}.driver-hist-pop-day-stops .d-stop .s-n{color:var(--fg-4);font-weight:500}.driver-hist-pop-day-stops .d-stop .s-m{color:var(--fg-2);font-weight:600;font-variant-numeric:tabular-nums}.driver-hist-pop-day-stops .d-stop.is-over{background:#d24b3e1a;border-color:#d24b3e66}.driver-hist-pop-day-stops .d-stop.is-over .s-n{color:var(--danger)}.driver-hist-pop-day-stops .d-stop.is-over .s-m{color:var(--danger);font-weight:700}.driver-hist-pop-foot{background:var(--bg-2);border-top:1px solid var(--border);padding:10px 14px;display:flex;justify-content:space-between;align-items:baseline;border-radius:0 0 12px 12px}.driver-hist-pop-foot .f-l{font-size:var(--text-2xs);font-weight:700;color:var(--fg-3);text-transform:uppercase;letter-spacing:.06em}.driver-hist-pop-foot .f-v{font-family:var(--font-mono);font-weight:700;font-size:var(--text-md);color:var(--fg)}.driver-hist-pop-foot .f-u{font-size:var(--text-xs);font-weight:500;color:var(--fg-3);margin-left:3px}.drv-perf-legend{display:flex;flex-wrap:wrap;gap:14px;padding:12px 18px;background:var(--panel-2);border-top:1px solid var(--border);font-size:var(--text-xs);color:var(--fg-2)}.drv-perf-legend-item{display:inline-flex;align-items:center;gap:6px;font-weight:500}.drv-perf-legend-item .sw{width:14px;height:14px;border-radius:3px;flex-shrink:0}.drv-perf-empty{color:var(--fg-4);font-size:var(--text-xs);font-style:italic}.task-row.is-held,.task-row.is-held:hover{background:#f59e0b14;box-shadow:inset 4px 0 #f59e0b,inset 0 0 0 1.5px #f59e0b8c;border-radius:6px}.task-cell-hold{display:flex;align-items:center;justify-content:center;overflow:visible;padding:0}.task-hold-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:7px;color:var(--fg-4);transition:color .15s,background .15s,border-color .15s,transform .12s,box-shadow .15s}.task-hold-btn:hover{color:#9c6b14;background:#f59e0b2e;border-color:#f59e0b8c;transform:scale(1.08)}.task-hold-btn:active{transform:scale(.96)}.task-hold-btn.is-held{color:#fff;background:#f59e0b;border-color:#c97f08;box-shadow:0 1px 3px #f59e0b73}.task-hold-btn.is-held:hover{background:#c97f08;border-color:#a86904}.task-row.is-route-missing,.task-row.is-route-missing:hover{background:#be123c0e;box-shadow:inset 4px 0 #be123c,inset 0 0 0 1.5px #be123c42;border-radius:6px}.driver-route-missing-badge{display:inline-flex;align-items:center;justify-content:center;gap:3px;width:max-content;max-width:100%;padding:2px 6px;border-radius:5px;background:#be123c1a;color:#be123c;border:1px solid rgba(190,18,60,.3);font-family:Geist,sans-serif;font-size:var(--text-2xs);font-weight:800;line-height:var(--leading-none);letter-spacing:0;white-space:nowrap}.task-cell-vehicle{font-family:Geist,sans-serif;font-weight:500;font-size:var(--text-2xs);color:var(--fg-2);letter-spacing:-.005em}.task-cell-drag{display:flex;align-items:center;justify-content:center;overflow:visible;padding-right:0}.drag-handle{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:7px;color:var(--fg-4);cursor:grab;transition:color .15s,background .15s,border-color .15s,transform .12s,box-shadow .15s}.drag-handle:hover{color:var(--accent);background:var(--accent-soft);border-color:#6b3fd438;transform:scale(1.08)}.drag-handle:active{cursor:grabbing;transform:scale(.96);box-shadow:0 1px 3px #6b3fd440}.task-row.is-editing .drag-handle{opacity:.7;cursor:not-allowed;pointer-events:none}.task-cell-delete{display:flex;align-items:center;justify-content:center;overflow:visible;padding:0}.task-delete-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:7px;color:var(--fg-4);transition:color .15s,background .15s,border-color .15s,transform .12s}.task-delete-btn:hover{color:#fff;background:var(--danger, #d24a3a);border-color:var(--danger, #d24a3a);transform:scale(1.08)}.task-delete-btn:active{transform:scale(.96)}.task-cell-duplicate{display:flex;align-items:center;justify-content:center;overflow:visible;padding:0}.task-duplicate-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:7px;color:var(--fg-4);transition:color .15s,background .15s,border-color .15s,transform .12s}.task-duplicate-btn:hover{color:#fff;background:var(--accent);border-color:var(--accent);transform:scale(1.08)}.task-duplicate-btn:active{transform:scale(.96)}.task-reopen-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#2a8f5f1a;border:1px solid rgba(42,143,95,.34);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:7px;color:#2a8f5f;transition:color .15s,background .15s,border-color .15s,transform .12s,opacity .15s}.task-reopen-btn:hover{color:#fff;background:#2a8f5f;border-color:#23764f;transform:scale(1.08)}.task-reopen-btn:disabled{cursor:wait;opacity:.6;transform:none}.task-row:first-child{border-top:0}.task-row:not(.task-row-head):hover{background:var(--bg-2)}.task-row.is-completed,.task-row.is-completed:not(.task-row-head):hover{background:#2a8f5f1a;box-shadow:inset 4px 0 #2a8f5f,inset 0 0 0 1.5px #2a8f5f57}.task-row.is-admin-edit-reopened,.task-row.is-admin-edit-reopened:not(.task-row-head):hover{background:#f59e0b14;box-shadow:inset 4px 0 #f59e0b,inset 0 0 0 1.5px #f59e0b6b}.task-row.is-completed .cell-content.editable{cursor:default}.task-row.is-completed:not(.is-editing) .cell-content.editable:hover,.task-row.is-completed:not(.is-editing) .cell-content.editable:has(>.empty-cell):hover{background:transparent;box-shadow:none}.task-row.is-completed .drag-handle,.task-row.is-completed .task-duplicate-btn,.task-row.is-completed .task-hold-btn,.task-row.is-completed .task-delete-btn,.task-row.is-admin-edit-reopened .drag-handle,.task-row.is-admin-edit-reopened .task-duplicate-btn,.task-row.is-admin-edit-reopened .task-hold-btn,.task-row.is-admin-edit-reopened .task-delete-btn{cursor:not-allowed;opacity:.45;transform:none;color:var(--fg-4);background:transparent;border-color:transparent;box-shadow:none}.task-row.is-completed.is-received-pending .task-cell-received .cell-content.editable{cursor:text}.task-row.is-completed.is-received-pending:not(.is-editing) .task-cell-received .cell-content.editable:hover,.task-row.is-completed.is-received-pending:not(.is-editing) .task-cell-received .cell-content.editable:has(>.empty-cell):hover{background:#6b3fd41a;box-shadow:inset 0 0 0 1px #6b3fd438}.admin-edit-reopened-badge{display:inline-flex;align-items:center;justify-content:center;width:max-content;max-width:100%;margin-top:3px;padding:2px 6px;border-radius:5px;background:#f59e0b29;color:#9c6b14;border:1px solid rgba(245,158,11,.36);font-family:Geist,sans-serif;font-size:var(--text-2xs);font-weight:700;line-height:var(--leading-none);letter-spacing:0;white-space:nowrap}.admin-completed-badge{display:inline-flex;align-items:center;justify-content:center;width:max-content;max-width:100%;margin-top:3px;padding:2px 6px;border-radius:5px;background:#2174c41f;color:#2174c4;border:1px solid rgba(33,116,196,.28);font-family:Geist,sans-serif;font-size:var(--text-2xs);font-weight:700;line-height:var(--leading-none);letter-spacing:0;white-space:nowrap}.task-cell-driver,.shist-cell-driver{border-radius:6px;padding:3px 6px}.driver-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px;flex-shrink:0;box-shadow:0 0 0 1px #0000001f,0 1px 1px #0000000f;vertical-align:baseline}.task-cell-driver .cell-content,.shist-cell-driver{font-weight:700}.task-row.is-dragging{opacity:.32;background:#6b3fd40f;box-shadow:inset 0 0 0 1.5px var(--accent),inset 4px 0 0 0 var(--accent);border-radius:8px;border-top-color:transparent}.task-row.is-dragging .driver-dot,.task-row.is-dragging .t-stop-badge,.task-row.is-dragging .t-run-badge,.task-row.is-dragging .t-tag,.task-row.is-dragging .t-phone-alt{filter:saturate(.4)}.task-row.is-drag-snapshot{transform:scale(1.025);background:var(--panel);box-shadow:0 18px 38px #00000038,0 6px 12px #0000001a;border-radius:10px;outline:1.5px solid var(--accent);outline-offset:-1px}.task-row.drop-above:before,.task-row.drop-below:after{content:"";position:absolute;left:8px;right:8px;height:2px;background:var(--accent);border-radius:2px;box-shadow:0 0 0 1px #6b3fd42e;pointer-events:none}.task-row.drop-above:before{top:-1px}.task-row.drop-below:after{bottom:-1px}.task-row.is-editing{cursor:default}.task-row.is-editing:hover{background:var(--panel)}.cell-content{display:inline-flex;align-items:center;gap:3px;border-radius:4px;padding:1px 4px;margin:-1px -4px;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background .12s,box-shadow .12s}.cell-content:has(>.inline-edit-input),.cell-content:has(>.custom-select-wrap){display:flex;width:100%;padding:0;margin:0;overflow:visible}.cell-content.editable{cursor:text}.task-row:not(.is-editing) .cell-content.editable:hover{background:#6b3fd41a;box-shadow:inset 0 0 0 1px #6b3fd438}.cell-content:has(>.empty-cell){display:flex;width:100%;padding:0;margin:0;border-radius:5px;overflow:visible}.task-row:not(.is-editing) .cell-content.editable:has(>.empty-cell):hover{background:transparent;box-shadow:none}.task-cell-cashar .cell-content.editable,.task-cell-driver .cell-content.editable,.task-cell-vehicle .cell-content.editable,.task-cell-received .cell-content.editable,.task-cell-store .cell-content.editable,.task-cell-run .cell-content.editable,.task-cell-num .cell-content.editable{cursor:pointer}.task-cell-num .cell-content,.task-cell-run .cell-content,.task-cell-cashar .cell-content{overflow:visible}.empty-cell{position:relative;display:block;box-sizing:border-box;width:100%;flex:1 1 0;min-width:0;height:28px;background:color-mix(in srgb,var(--accent) 4%,var(--panel));border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));border-radius:6px;transition:background .15s,border-color .15s,transform .12s,box-shadow .15s}.empty-cell:before{content:"+";position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font:300 14px/1 Geist,sans-serif;color:color-mix(in srgb,var(--accent),var(--fg-4) 55%);opacity:.55;transition:color .15s,opacity .15s,transform .15s;pointer-events:none}.empty-cell.is-live-empty:before{content:""}.empty-cell.is-live-empty{background:var(--bg);border-color:var(--border)}.task-row:not(.task-row-head):hover .empty-cell.is-live-empty{background:var(--panel);border-color:var(--border-strong)}.cell-content.editable:has(>.empty-cell.is-live-empty):hover .empty-cell{border-color:var(--accent)}.cell-content:has(>.empty-cell){cursor:pointer}.task-row:not(.task-row-head):hover .empty-cell{background:color-mix(in srgb,var(--accent) 9%,var(--panel));border-color:color-mix(in srgb,var(--accent) 42%,var(--border))}.task-row:not(.task-row-head):hover .empty-cell:before{color:var(--accent);opacity:.78}.cell-content.editable:has(>.empty-cell):hover .empty-cell{background:color-mix(in srgb,var(--accent) 16%,var(--panel));border-color:var(--accent);transform:translateY(-1px);box-shadow:0 3px 10px color-mix(in srgb,var(--accent) 26%,transparent)}.cell-content.editable:has(>.empty-cell):hover .empty-cell:before{color:var(--accent);opacity:1;transform:scale(1.18)}.empty-cell.empty-cell-select:before{content:"▾";justify-content:flex-end;padding-right:9px;font-size:11px;letter-spacing:0}.empty-cell.empty-cell-select.is-live-empty:before{content:"▾";color:var(--fg-3);opacity:.5}.task-row:not(.task-row-head):hover .empty-cell.empty-cell-select.is-live-empty:before{color:var(--accent);opacity:.85}.cell-content.editable:has(>.empty-cell.empty-cell-select):hover .empty-cell:before{transform:scale(1.25)}.empty-cell-hint{display:inline-flex;align-items:center;gap:3px;color:var(--fg-4);font-style:normal;opacity:.65;letter-spacing:-.005em;cursor:pointer;transition:color .12s,opacity .12s}.empty-cell-hint:hover{color:var(--accent);opacity:1}.empty-cell-hint.time-empty-hint{min-height:16px}.empty-cell-hint.time-empty-hint.is-live-time-empty{width:18px;height:16px;justify-content:center;opacity:.72}.inline-edit-input{font:inherit;color:var(--fg);background:var(--panel);border:1.5px solid var(--accent);border-radius:5px;padding:2px 6px;width:100%;min-width:0;box-sizing:border-box;outline:none;box-shadow:0 0 0 3px #6b3fd424}.inline-edit-input::placeholder{color:var(--fg-4)}.inline-edit-input[type=number]{font-family:var(--font-mono);letter-spacing:-.02em;-moz-appearance:textfield}.inline-edit-input[type=number]::-webkit-outer-spin-button,.inline-edit-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.inline-edit-stop{text-align:center;padding:2px 4px}.inline-edit-phone2{width:140px;font-family:var(--font-mono);font-size:var(--text-sm)}.inline-invoice-editor{min-width:360px;max-width:min(1320px,calc(100vw - 20px));box-sizing:border-box;padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--panel);box-shadow:0 14px 34px #00000029,0 4px 10px #00000014;display:flex;flex-direction:column;gap:6px}.inline-invoice-editor.is-floating{min-width:0;overflow:auto;overscroll-behavior:contain;isolation:isolate;contain:paint;animation:none}.inline-invoice-row{display:grid;grid-template-columns:minmax(104px,.78fr) minmax(124px,.92fr) minmax(116px,.84fr) minmax(178px,1.26fr) minmax(92px,.7fr) minmax(88px,.66fr) minmax(72px,.52fr) minmax(82px,.58fr) minmax(76px,.54fr) minmax(84px,.6fr) minmax(54px,.42fr) 24px;gap:6px;align-items:center}.inline-invoice-header{display:grid;grid-template-columns:minmax(104px,.78fr) minmax(124px,.92fr) minmax(116px,.84fr) minmax(178px,1.26fr) minmax(92px,.7fr) minmax(88px,.66fr) minmax(72px,.52fr) minmax(82px,.58fr) minmax(76px,.54fr) minmax(84px,.6fr) minmax(54px,.42fr) 24px;gap:6px;color:var(--fg-4);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:800;letter-spacing:0;text-transform:uppercase}.inline-invoice-input{font-size:var(--text-sm)}.inline-invoice-phone{font-family:var(--font-mono)}.inline-invoice-detail-field{min-width:0;display:flex;flex-direction:column}.inline-invoice-detail-field span{display:none;color:var(--fg-4);font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:800;letter-spacing:0;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inline-invoice-detail-field input,.inline-invoice-detail-field select{width:100%;min-width:0}.inline-invoice-driver-select{cursor:pointer;padding-right:4px}.inline-invoice-remove{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:var(--bg);color:var(--fg-3);border-radius:6px;height:26px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-weight:800}.inline-invoice-remove:disabled{opacity:.35;cursor:not-allowed}.inline-invoice-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--fg-4);font-family:var(--font-mono);font-size:var(--text-xs)}.inline-invoice-add{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:var(--bg);color:var(--accent);border-radius:6px;padding:4px 8px;cursor:pointer;font-weight:700}.inline-invoice-add:disabled{opacity:.45;cursor:not-allowed}@media(max-width:760px){.inline-invoice-header{display:none}.inline-invoice-row{grid-template-columns:repeat(3,minmax(104px,1fr));align-items:end}.inline-invoice-remove{width:24px;justify-self:end}.inline-invoice-detail-field{gap:3px}.inline-invoice-detail-field span{display:block}}.invoice-chip-list{display:flex;flex-wrap:wrap;align-items:center;gap:3px;min-width:0}.invoice-chip-list-editing{max-width:100%;pointer-events:none}.invoice-chip{display:inline-flex;max-width:100%;min-width:0;padding:1px 3px;border-radius:4px;background:#6b3fd414;color:var(--fg-2);font-family:var(--font-mono);font-weight:700;font-size:var(--text-sm);line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invoice-child-panel{grid-column:1 / -1;min-width:0;display:grid;grid-template-columns:var(--task-row-grid-columns);column-gap:4px;row-gap:4px;padding:6px 0 1px;margin-top:2px}.invoice-child-panel:before{content:"";grid-column:3 / 14;border-top:1px dashed var(--border);height:0;margin-bottom:1px}.invoice-child-row{display:contents;color:var(--fg-2);font-size:var(--text-xs);line-height:1.25}.invoice-child-index{grid-column:3;color:var(--fg-4);font-family:var(--font-mono);font-weight:700;text-align:center}.invoice-child-invoice{grid-column:4;color:var(--fg);font-variant-numeric:tabular-nums;font-weight:700}.invoice-child-customer{grid-column:5;color:var(--fg);font-weight:600}.invoice-child-phone{grid-column:6;color:var(--fg-2);font-family:var(--font-mono)}.invoice-child-address{grid-column:7 / 10}.invoice-child-invoice,.invoice-child-customer,.invoice-child-phone,.invoice-child-address,.invoice-child-store,.invoice-child-received{min-width:0;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:break-word}.invoice-child-cashar{grid-column:10;display:flex;align-items:center;min-width:0}.invoice-child-editable{min-width:0;display:flex;align-items:center}.invoice-child-edit-trigger,.invoice-child-inline-input{box-sizing:border-box;width:100%;min-width:0;min-height:28px;margin:0;border-radius:6px;color:inherit;font:inherit;letter-spacing:0;text-align:left}.invoice-child-edit-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;background:transparent;padding:3px 4px;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background-color .12s,border-color .12s,color .12s}.invoice-child-edit-trigger:hover{border-color:#6b3fd43d;background:#6b3fd414}.invoice-child-edit-trigger:focus-visible{outline:2px solid rgba(107,63,212,.34);outline-offset:1px;border-color:#6b3fd452;background:#6b3fd414}.invoice-child-edit-trigger.is-saving{cursor:wait;opacity:.58}.invoice-child-inline-input{padding:3px 4px}.invoice-child-phone .invoice-child-inline-input,.invoice-child-amount .invoice-child-inline-input{font-family:var(--font-mono)}.invoice-child-cashar .invoice-child-edit-trigger,.invoice-child-store .invoice-child-edit-trigger,.invoice-child-received .invoice-child-edit-trigger{text-align:center}.invoice-child-cashar .invoice-child-edit-trigger{display:flex;align-items:center;justify-content:flex-start}.invoice-child-amount{grid-column:11;color:var(--fg);font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}.invoice-child-amount-editor{width:100%}.delivered-invoice-amount-trigger,.delivered-invoice-amount-input{box-sizing:border-box;width:100%;min-width:58px;max-width:116px;min-height:28px;margin:0;border-radius:6px;color:var(--fg);font:inherit;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:0;text-align:left}.delivered-invoice-amount-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:flex-start;border:1px solid transparent;background:transparent;padding:4px;cursor:pointer}.delivered-invoice-amount-trigger:hover{background:#6b3fd414}.delivered-invoice-amount-trigger:focus-visible{outline:2px solid rgba(107,63,212,.34);outline-offset:1px;background:#6b3fd414}.delivered-invoice-amount-trigger.is-empty{min-height:28px}.delivered-invoice-amount-empty{display:block;width:100%;min-height:1em}.delivered-invoice-amount-empty:before{content:"—";color:var(--fg-4)}.delivered-invoice-amount-trigger.is-saving{cursor:wait;opacity:.62}.delivered-invoice-amount-input{border:1px solid var(--accent);background:var(--bg);padding:3px 4px}.delivered-invoice-amount-input:focus{outline:2px solid rgba(107,63,212,.34);outline-offset:1px}.invoice-child-amount{display:flex;align-items:center;min-width:0}.invoice-child-store{grid-column:12;color:#2174c4;font-weight:700;text-align:center}.invoice-child-received{grid-column:13;text-align:center}.invoice-address-summary{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invoice-address-summary.is-mixed{display:inline-flex;width:max-content;max-width:100%;align-items:center;border:1px solid rgba(37,99,235,.28);background:#2563eb14;color:#1d4ed8;border-radius:5px;padding:1px 5px;font-weight:700}.task-cell .custom-select-wrap{min-width:0;width:100%}.task-cell .custom-select-trigger{padding:3px 6px;min-height:0;font:inherit;color:var(--fg);border:1.5px solid var(--accent);background:var(--panel);box-shadow:0 0 0 3px #6b3fd424}button.t-phone-alt{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;border:0;font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;line-height:1;color:var(--accent);background:var(--accent-soft);padding:3px 6px;border-radius:4px;flex-shrink:0;transition:background .12s,color .12s,box-shadow .12s,border-color .12s}button.t-phone-alt:hover,button.t-phone-alt.is-open{background:var(--accent);color:#fff}button.t-phone-alt.phone-alt-add{background:transparent;color:var(--fg-4);border:1px dashed var(--border-strong);font-weight:600}.task-row:not(.is-editing) button.t-phone-alt.phone-alt-add:hover,button.t-phone-alt.phone-alt-add.is-open{background:#6b3fd41a;color:var(--accent);border-color:var(--accent)}.phone-pop-host{background:var(--panel);border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 10px 32px #0000002e,0 2px 8px #0000000f;padding:10px 12px 11px;display:flex;flex-direction:column;gap:7px;animation:csMenuPop .12s cubic-bezier(.16,1,.3,1)}.phone-pop-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.phone-pop-label{font-size:var(--text-2xs);font-weight:700;color:var(--fg-3);letter-spacing:.06em;text-transform:uppercase}.phone-pop-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;cursor:pointer;width:18px;height:18px;border-radius:4px;font-size:18px;line-height:1;color:var(--fg-3);display:flex;align-items:center;justify-content:center}.phone-pop-close:hover{background:var(--bg-2);color:var(--fg)}.phone-pop-row{display:flex;align-items:center;gap:8px}.phone-pop-num{font-family:var(--font-mono);font-size:var(--text-md);font-weight:600;color:var(--fg);letter-spacing:-.02em;flex:1}.phone-pop-action{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;cursor:pointer;padding:3px 9px;border-radius:5px;background:var(--accent-soft);color:var(--accent);font-size:var(--text-2xs);font-weight:700;letter-spacing:.04em;transition:.12s}.phone-pop-action:hover{background:var(--accent);color:#fff}.phone-pop-rm{background:var(--bg-3);color:var(--fg-3)}.phone-pop-rm:hover{background:var(--danger,#d24a3a);color:#fff}.phone-pop-input{width:100%;padding:7px 10px;background:var(--bg);border:1.5px solid var(--accent);border-radius:7px;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--fg);outline:none;box-shadow:0 0 0 3px #6b3fd424}.inline-edit-pop{position:fixed;z-index:9999;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 10px 32px #0000002e;padding:10px}.inline-edit-pop.custom-date-pop{padding:8px}.inline-edit-pop.time-range-pop{min-width:240px}.inline-edit-pop .time-range-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.inline-edit-pop .time-range-label{width:42px;font-size:var(--text-xs);color:var(--fg-3);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.inline-edit-pop .time-range-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:8px}.task-row-head{background:var(--panel-2);border-top:0;border-bottom:1px solid var(--border);padding:9px 14px}.task-row-head>span{font-family:Geist,sans-serif;font-size:var(--text-xs);color:var(--fg-3);font-weight:600;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-head-stop,.task-head-store,.task-head-received,.task-head-run{text-align:center;justify-self:center}.task-group-actions{display:flex;align-items:center;justify-content:center;gap:8px;width:max-content;max-width:calc(100% - 24px);margin:10px auto;padding:6px 8px;border:1px solid var(--border);border-radius:8px;background:#ffffffc7}.task-group-actions-context{display:inline-flex;align-items:center;gap:7px;min-height:28px;padding:0 4px 0 2px;color:var(--fg-2);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:800;white-space:nowrap}.task-group-actions-run{color:var(--fg)}.task-group-actions-date{color:var(--fg-3);font-weight:700}.task-add-row{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;width:max-content;margin:10px auto;padding:9px 18px;background:var(--accent);border:0;border-radius:8px;color:#fff;font-family:Geist,sans-serif;font-size:var(--text-xs);font-weight:600;letter-spacing:0;box-shadow:0 2px 6px #6b3fd438;transition:filter .15s,transform .12s,box-shadow .15s}.task-group-actions .task-add-row{margin:0;padding:8px 12px;min-height:30px}.task-add-row svg{color:#fff}.task-group-secondary-actions{position:relative;display:inline-flex;align-items:center;margin:0}.task-group-secondary-actions>summary{list-style:none}.task-group-secondary-actions>summary::-webkit-details-marker{display:none}.task-group-secondary-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:42px;min-width:42px;height:32px;border:1px solid var(--border);border-radius:8px;background:#ffffffb8;color:var(--fg-3);transition:background .15s,border-color .15s,color .15s}.task-group-secondary-trigger:hover,.task-group-secondary-actions[open] .task-group-secondary-trigger{background:#fff;border-color:#6b3fd457;color:var(--accent)}.task-group-secondary-menu{position:absolute;z-index:35;top:calc(100% + 6px);right:0;min-width:190px;padding:6px;border:1px solid var(--border);border-radius:8px;background:#fff;box-shadow:0 10px 28px #19160e24}.task-group-secondary-actions:not([open]) .task-group-secondary-menu{display:none}.task-secondary-menu-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;display:flex;align-items:center;justify-content:flex-start;gap:8px;width:100%;min-height:32px;padding:8px 10px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--fg-2);font-family:Geist,sans-serif;font-size:var(--text-xs);font-weight:700;letter-spacing:0;text-align:left}.task-secondary-menu-btn svg{color:currentColor}.task-secondary-menu-btn-home{color:#075f3e}.task-secondary-menu-btn:hover{background:#087f4d14;border-color:#087f4d38;color:#075f3e}.task-add-row:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 4px 12px #6b3fd452}.task-add-row:active{transform:translateY(0);filter:brightness(.96)}.task-add-row-date{margin-left:10px;padding-left:10px;border-left:1px solid rgba(255,255,255,.4);opacity:.85;font-weight:500;font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:0}.task-row-sep{height:18px;background:var(--bg-2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);transition:background .12s,box-shadow .12s;display:flex;align-items:center;padding:0 14px}.task-row-sep.is-drop-target{background:#6b3fd41a;box-shadow:inset 0 2px 0 0 var(--accent),inset 0 -2px 0 0 var(--accent)}.task-date-divider{display:flex;align-items:center;gap:14px;min-height:42px;padding:10px 16px 9px;background:linear-gradient(90deg,#0bb86b17,#0bb86b09 52%,#0bb86b00);border-top:2px solid rgba(11,184,107,.36);border-bottom:1px solid rgba(11,184,107,.22)}.task-date-divider-pill{display:inline-flex;align-items:center;justify-content:center;min-width:102px;height:28px;padding:0 14px;border-radius:8px;background:#087f4d;color:#fff;font-family:Geist,sans-serif;font-size:var(--text-xs);font-weight:900;font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap;flex:0 0 auto;box-shadow:0 5px 12px #087f4d3d}.task-date-divider-line{flex:1;min-width:48px;height:3px;border-radius:999px;background:linear-gradient(90deg,#0bb86b9e,#0bb86b42)}.task-timeline-status{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;min-height:36px;margin:8px 12px 12px;padding:8px 12px;border-radius:8px;background:var(--bg-2);color:var(--fg-3);font-size:var(--text-xs);font-weight:700}.task-timeline-status.is-refreshing{background:#6b3fd41a;color:var(--accent)}.task-timeline-status.is-synced{background:#087f4d1a;color:#087f4d}.task-timeline-status.is-error{background:#fff3e8;color:#a14c00}.task-timeline-action{height:26px;padding:0 10px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--fg);font-size:var(--text-xs);font-weight:800;cursor:pointer}.task-timeline-action:hover{border-color:var(--accent);color:var(--accent)}@media(max-width:760px){.task-group-actions{justify-content:flex-start;width:max-content;max-width:calc(100vw - 40px);margin:10px 12px;flex-wrap:wrap}.task-group-actions-context{flex:1 1 100%}}.task-row-sep.is-date-change{background:transparent;border:0;height:32px;padding:0 14px;gap:10px}.task-row-sep.is-date-change.is-empty-date{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;width:100%;text-align:left;cursor:pointer;height:32px;background:transparent;border:0;transition:opacity .12s}.task-row-sep.is-date-change.is-empty-date:hover .task-row-sep-chip{filter:brightness(1.06);box-shadow:0 2px 8px color-mix(in srgb,var(--day-sep) 38%,transparent)}.task-row-sep.is-date-change.is-empty-date:hover .task-row-sep-line.is-dashed{border-top-color:var(--day-sep)}.task-row-sep.is-date-change.is-empty-date:hover .task-row-sep-add{transform:scale(1.08);box-shadow:0 3px 10px color-mix(in srgb,var(--day-sep) 38%,transparent)}.task-row-sep.is-date-change.is-empty-date:active .task-row-sep-add{transform:scale(.96)}.task-row-sep-chip{display:inline-flex;align-items:center;height:22px;padding:0 10px;background:var(--day-sep);color:#fff;border-radius:6px;font-family:Geist,sans-serif;font-size:var(--text-2xs);font-weight:700;letter-spacing:.04em;font-variant-numeric:tabular-nums;transition:filter .15s,box-shadow .15s;flex-shrink:0}.task-row-sep-line{flex:1;height:1px;align-self:center;background:color-mix(in srgb,var(--day-sep) 38%,transparent)}.task-row-sep-line.is-dashed{background:transparent;border-top:1.5px dashed color-mix(in srgb,var(--day-sep) 55%,transparent);height:0;transition:border-top-color .15s}.task-row-sep-label{color:inherit;font-family:Geist,sans-serif;font-size:var(--text-2xs);font-weight:700;letter-spacing:.04em;font-variant-numeric:tabular-nums}.task-row-sep-empty-cta{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;color:color-mix(in srgb,var(--day-sep),#1a1a17 28%)}.task-row-sep-hint{font-family:Geist,sans-serif;font-size:var(--text-xs);font-weight:500;color:inherit;letter-spacing:-.005em}.task-row-sep-add{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--day-sep);color:#fff;box-shadow:0 1px 4px color-mix(in srgb,var(--day-sep) 28%,transparent);transition:transform .12s,box-shadow .12s}.task-row-sep-add svg{color:#fff}.task-row-sep.is-date-change.is-drop-target .task-row-sep-line{background:var(--accent);border-top-color:var(--accent)}.task-row-sep.is-date-change.is-drop-target .task-row-sep-chip{background:var(--accent)}.task-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:2px;font-family:Geist,sans-serif}.task-cell:has(.inline-edit-input),.task-cell:has(.custom-select-trigger){overflow:visible}.task-cell-date{font-family:Geist,sans-serif;font-size:var(--text-md);color:var(--fg);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.015em;display:flex;flex-direction:column;gap:1px;line-height:1.25;overflow:visible;white-space:normal}.task-cell-date .date-main{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-cell-date .date-time{display:inline-flex;align-items:center;gap:3px;font-size:var(--text-2xs);color:var(--fg-4);font-weight:500;letter-spacing:-.01em;white-space:nowrap}.task-cell-date .date-time:has(.admin-edit-reopened-badge),.task-cell-date .date-time:has(.admin-completed-badge){align-items:flex-start;flex-direction:column;gap:2px}.task-cell-date .settled-time{display:inline-flex;align-items:center;gap:3px;color:#2a8f5f;font-weight:700}.task-cell-num{justify-self:center}.task-cell-num:has(>.cell-content>.empty-cell),.task-cell-run:has(>.cell-content>.empty-cell){justify-self:stretch}.t-stop-badge-wrap{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:34px}.t-stop-complete-dot{width:7px;height:7px;border-radius:999px;background:#2a8f5f;box-shadow:0 0 0 2px #2a8f5f2e;flex:0 0 auto}.t-stop-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:7px;background:var(--accent-soft);color:var(--accent);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:700;line-height:1;min-width:24px}.task-cell-inv{font-family:Geist,sans-serif;font-size:var(--text-sm);color:var(--fg-2);font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.task-cell-name{display:flex;flex-direction:column;align-items:flex-start;gap:2px;font-weight:600;color:var(--fg);font-size:var(--text-md);letter-spacing:-.005em;min-width:0}.task-held-meta{display:-webkit-box;max-width:100%;font-size:var(--text-2xs);font-weight:600;line-height:1.25;color:#8a5c0d;white-space:normal;overflow-wrap:anywhere;letter-spacing:0;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}.task-cell-addr{color:var(--fg-2);font-size:var(--text-sm);letter-spacing:-.005em}.task-cell-phone{font-family:Geist,sans-serif;font-size:var(--text-sm);color:var(--fg-2);font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.005em;display:inline-flex;align-items:center;gap:3px;overflow:visible}.task-cell-phone .phone-main{white-space:nowrap;overflow:visible;text-overflow:clip;min-width:max-content}.t-phone-alt{font-family:Geist,sans-serif;font-size:var(--text-2xs);font-variant-numeric:tabular-nums;font-weight:700;color:var(--accent);padding:2px 5px;border-radius:4px;background:var(--accent-soft);flex-shrink:0;letter-spacing:.02em}.task-cell-driver{font-family:var(--font-mono);font-weight:600;font-size:var(--text-2xs);color:var(--fg-2)}.task-cell-cashar{padding:2px 0}.t-tag{display:inline-flex;align-items:center;justify-content:center;padding:3px 8px;border-radius:5px;background:var(--bg-3);color:var(--fg-3);font-size:var(--text-2xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:1;max-width:max-content}.t-tag.tag-cash,.t-tag.tag-paid,.t-tag.tag-settled{background:#2a8f5f26;color:#2a8f5f}.t-tag.tag-check{background:#2174c426;color:#2174c4}.t-tag.tag-ar{background:#c68a1a2e;color:#c68a1a}.t-tag.tag-credit{background:#6b3fd424;color:#6b3fd4}.task-cell-amount{font-family:Geist,sans-serif;font-weight:700;color:var(--fg);font-variant-numeric:tabular-nums;font-size:var(--text-sm);letter-spacing:-.02em}.task-cell-amount .cell-content{gap:0}.amt-curr{font-size:.78em;font-weight:500;margin-right:4px;letter-spacing:0}.task-cell-store{font-size:var(--text-sm);font-weight:600;color:#2174c4;letter-spacing:.01em;text-align:center}.task-cell-received{font-size:var(--text-sm);color:var(--fg-2);text-align:center}.task-cell-run{padding:2px 0;justify-self:center}.task-row-head>span:nth-child(12),.task-row-head>span:nth-child(13){justify-self:center}.t-run-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:6px;background:#6b3fd41a;color:var(--accent);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:700;line-height:1;max-width:max-content;min-width:24px}@media(max-width:1120px){.task-row{--task-row-grid-columns: 20px 124px 28px 82px minmax(82px, .8fr) 116px minmax(108px, 1fr) 60px 60px 78px 116px 32px 18px 18px 18px;grid-template-columns:var(--task-row-grid-columns);gap:3px;padding:11px 8px}.task-head-store,.task-head-received,.task-cell-store,.task-cell-received{display:none}.task-row-head{padding:8px}.task-row-head>span{font-size:var(--text-2xs)}.task-hold-btn,.drag-handle,.task-delete-btn,.task-duplicate-btn{width:22px;height:22px;border-radius:6px}}.manual-input-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;background:#0f111473;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:24px;animation:miFade .12s ease-out}@keyframes miFade{0%{opacity:0}to{opacity:1}}.manual-input-modal{width:min(1760px,calc(100vw - 32px));max-height:90vh;background:var(--panel);border:1px solid var(--border-strong);border-radius:14px;box-shadow:0 24px 60px #00000047,0 4px 14px #0000001a;display:flex;flex-direction:column;overflow:hidden;animation:miPop .16s cubic-bezier(.16,1,.3,1)}@keyframes miPop{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.manual-input-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--border)}.manual-input-modal-title{font-family:Geist,sans-serif;font-size:var(--text-lg);font-weight:600;color:var(--fg);letter-spacing:-.01em}.manual-input-modal-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:var(--bg);cursor:pointer;width:32px;height:32px;border-radius:8px;font-size:20px;line-height:1;color:var(--fg-3);display:grid;place-items:center;flex-shrink:0;transition:all .12s}.manual-input-modal-close:hover{background:var(--danger);color:#fff;border-color:var(--danger)}.manual-input-modal-body{padding:16px 18px 18px;overflow:auto;flex:1;min-height:0}.manual-input-modal-body .draft-form{background:transparent;border:0;border-radius:0;padding:0;box-shadow:none}.draft-form{display:flex;flex-direction:column;gap:10px;padding:14px 16px 12px;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 1px #14120c05;overflow-x:auto}.draft-section{display:flex;flex-direction:column;gap:8px}.draft-section-head{display:flex;align-items:baseline;gap:8px;padding-bottom:2px}.draft-section-label{font-size:var(--text-2xs);font-weight:700;color:var(--fg-2);letter-spacing:.12em;text-transform:uppercase}.draft-section-optional{font-size:var(--text-2xs);color:var(--fg-4);font-weight:500;letter-spacing:.06em;text-transform:uppercase;padding:1px 6px;background:var(--bg-3);border-radius:4px}.draft-row-single{display:grid;align-items:start;grid-template-columns:minmax(132px,.8fr) minmax(72px,.45fr) minmax(126px,.8fr) minmax(170px,1fr) minmax(180px,1fr) minmax(280px,1.7fr) minmax(128px,.85fr) minmax(150px,.9fr) minmax(112px,.7fr) minmax(122px,.75fr) minmax(130px,.75fr) minmax(132px,.75fr) minmax(96px,.55fr);gap:8px}@media(max-width:1500px){.draft-row-single{grid-template-columns:repeat(4,minmax(0,1fr))}.draft-field-addr{grid-column:span 2}}@media(max-width:900px){.draft-row-single{grid-template-columns:repeat(2,minmax(0,1fr))}.draft-field-addr{grid-column:1 / -1}}@media(max-width:620px){.draft-row-single{grid-template-columns:1fr}.draft-field-addr{grid-column:auto}}.phone-stack{display:flex;flex-direction:column;gap:4px}.phone-input-wrap{position:relative;display:flex}.phone-input-wrap>input{padding-right:26px;flex:1;min-width:0}.phone-add-btn{position:absolute;right:3px;top:50%;transform:translateY(-50%);width:20px;height:20px;border-radius:5px;background:var(--accent-soft);border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:0;color:var(--accent);transition:.15s}.phone-add-btn svg{display:block;width:12px;height:12px}.phone-add-btn:hover{background:var(--accent);color:#fff}.phone-rm-btn{background:var(--bg-3);color:var(--fg-3)}.phone-rm-btn:hover{background:var(--danger);color:#fff}.draft-row-primary{display:grid;grid-template-columns:80px 110px minmax(0,1fr) minmax(0,1.6fr) 110px;gap:8px}.draft-row-meta{display:grid;grid-template-columns:110px 90px minmax(0,1fr) 110px 80px;gap:8px;margin-top:0}.draft-fields{display:grid;gap:8px}.draft-field{display:flex;flex-direction:column;gap:4px;min-width:0;max-width:100%}.draft-field input,.draft-field select{min-width:0}.draft-foot{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding-top:8px;border-top:1px solid var(--border);margin-top:2px}.staged-inv{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--fg-3);font-weight:500;margin-left:0;letter-spacing:-.02em;padding:1px 5px;background:var(--bg-3);border-radius:3px}.staged-date{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--fg-3);font-weight:600}.staged-stop{font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;padding:1px 5px;border-radius:3px;background:var(--accent-soft);color:var(--accent);letter-spacing:.04em}.staged-driver{display:inline-flex;align-items:center;gap:2px;color:var(--fg-2);font-size:var(--text-2xs);font-weight:500}.staged-amt{font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:700;color:var(--fg)}.staged-run{display:inline-flex;align-items:center;padding:1px 5px;border-radius:3px;font-size:var(--text-2xs);font-weight:700;letter-spacing:.05em;background:var(--bg-3);color:var(--fg-2)}.draft-field label{font-size:var(--text-sm);color:var(--fg-2);font-weight:700;letter-spacing:-.005em;text-transform:none;white-space:normal;overflow:visible;text-overflow:clip;line-height:1.2}.draft-field input,.draft-field select{width:100%;padding:7px 9px;height:32px;background:var(--bg);border:1px solid var(--border);border-radius:7px;color:var(--fg);font:12px/1.2 Geist,ui-sans-serif,system-ui,sans-serif;outline:0;transition:border-color .15s,box-shadow .15s,background .15s}.draft-field input:hover,.draft-field select:hover{border-color:var(--border-strong)}.draft-field input:focus,.draft-field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:var(--panel)}.draft-field input::placeholder{color:var(--fg-4);font-weight:400}.address-lookup-wrap{display:flex;align-items:center;gap:4px;min-width:0}.address-lookup-wrap input{flex:1}.address-lookup-btn{min-width:78px;height:32px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 9px;border:1px solid var(--border);border-radius:7px;background:var(--panel);color:var(--fg-2);cursor:pointer;transition:border-color .15s,box-shadow .15s,color .15s,background .15s}.address-lookup-btn:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.address-lookup-btn.is-verified{color:var(--ok);border-color:#2f946252;background:#2f946214}.address-lookup-text{white-space:nowrap;font-size:var(--text-xs);font-weight:800;line-height:1}.inline-address-edit{display:flex;align-items:center;gap:4px;width:100%;min-width:260px}.inline-address-edit .inline-address-input{flex:1}.inline-address-lookup{min-width:72px;height:26px;flex-basis:auto;border-radius:6px;padding:0 7px}.address-lookup-menu{background:var(--panel);border:1px solid var(--border-strong);border-radius:9px;box-shadow:0 18px 48px #1e180e2e,0 3px 12px #1e180e14;padding:8px;max-height:280px;overflow:auto}.address-lookup-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:2px 3px 7px;border-bottom:1px solid var(--border);margin-bottom:4px;font-size:var(--text-xs);font-weight:800;color:var(--fg-2);letter-spacing:.06em;text-transform:uppercase}.address-lookup-head button{border:0;background:transparent;color:var(--fg-3);cursor:pointer;font-size:16px;line-height:1}.address-lookup-results{display:flex;flex-direction:column;gap:3px}.address-lookup-result{border:0;border-radius:7px;background:transparent;color:var(--fg);text-align:left;padding:8px;cursor:pointer;display:flex;flex-direction:column;gap:3px;font-size:var(--text-sm);line-height:1.25}.address-lookup-result:hover{background:var(--accent-soft);color:var(--accent)}.address-lookup-result small{font-family:var(--font-mono);color:var(--fg-3);font-size:var(--text-2xs)}.address-lookup-provider{display:inline-flex;align-items:center;margin-right:6px;padding:1px 5px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-family:var(--font);font-size:var(--text-2xs);font-weight:800;text-transform:uppercase}.address-lookup-empty{padding:10px 8px;color:var(--fg-3);font-size:var(--text-sm)}.address-lookup-manual{border-top:1px solid var(--border);padding:8px 6px 2px}.address-lookup-manual-row{display:flex;align-items:center;gap:6px}.address-lookup-manual input{flex:1;min-width:0;height:30px;border:1px solid var(--border);border-radius:7px;background:var(--bg);color:var(--fg);padding:6px 8px;font:var(--text-xs)/1.2 var(--font-mono)}.address-lookup-manual input:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.address-lookup-manual button{height:30px;border:1px solid rgba(47,148,98,.32);border-radius:7px;background:#2f946214;color:var(--ok);display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 9px;font-size:var(--text-xs);font-weight:800;cursor:pointer;white-space:nowrap}.address-lookup-manual button:hover{border-color:#2f94628c;background:#2f946224}.address-lookup-manual-error{color:var(--danger);font-size:var(--text-2xs);font-weight:800;padding-top:5px}.draft-field .custom-select-wrap{position:relative;width:100%}.draft-field .custom-select-trigger{width:100%;height:32px;padding:7px 9px;background:var(--bg);border:1px solid var(--border);border-radius:7px;color:var(--fg);font:var(--text-sm)/1.2 "Geist",ui-sans-serif,system-ui,sans-serif;text-align:left;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:6px;outline:0;transition:border-color .15s,box-shadow .15s,background .15s}.draft-field .custom-select-trigger:hover{border-color:var(--border-strong)}.draft-field .custom-select-trigger:focus,.draft-field .custom-select-wrap.is-open .custom-select-trigger{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:var(--panel)}.custom-select-val{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-select-val.is-placeholder{color:var(--fg-4)}.custom-select-trigger .cs-chev{color:var(--fg-3);flex-shrink:0;transition:transform .15s}.custom-select-wrap.is-open .cs-chev{transform:rotate(180deg);color:var(--accent)}.custom-select-menu{position:fixed;z-index:9999;background:var(--panel);border:1px solid var(--border-strong);border-radius:8px;box-shadow:0 12px 32px #0000002e,0 2px 8px #0000000f;padding:4px;width:max-content;max-width:calc(100vw - 16px);max-height:280px;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:1px;animation:csMenuPop .12s cubic-bezier(.16,1,.3,1)}@keyframes csMenuPop{0%{opacity:0;transform:translateY(-3px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.custom-select-group{font-size:var(--text-2xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);padding:6px 10px 4px}.custom-select-empty{padding:8px 12px;color:var(--fg-3);font-size:var(--text-sm);white-space:nowrap}.custom-select-opt{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;width:100%;text-align:left;padding:7px 12px;background:transparent;border:0;border-radius:5px;font-family:Geist,sans-serif;font-size:var(--text-sm);font-weight:500;color:var(--fg);letter-spacing:-.005em;line-height:1.2;white-space:nowrap;overflow:visible;text-overflow:clip;transition:background .1s,color .1s}.custom-select-opt:hover,.custom-select-opt.is-hl{background:var(--bg-2)}.custom-select-opt.is-on{background:var(--accent-soft);color:var(--accent);font-weight:600}.custom-select-opt.is-on.is-hl{background:var(--accent);color:var(--accent-ink)}.custom-select-opt.is-missing{color:#b91c1c;background:#fff1f2}.custom-select-opt.is-empty{color:var(--fg-3)}.missing-driver-value{color:#b91c1c;display:inline-flex;align-items:center;gap:5px;min-width:0}.missing-driver-chip{display:inline-flex;align-items:center;border:1px solid #fecdd3;background:#fff1f2;color:#b91c1c;border-radius:5px;padding:1px 4px;font-size:10px;font-weight:700;line-height:1.2}.draft-field input[type=number]{-moz-appearance:textfield}.draft-field input[type=number]::-webkit-inner-spin-button,.draft-field input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.date-input-wrap{position:relative;display:flex;align-items:stretch;min-width:0}.date-input-wrap>input[type=text],.date-input-wrap>input:not([type]){padding-right:52px}.date-picker-btn{position:absolute;right:28px;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:5px;background:transparent;border:0;cursor:pointer;display:grid;place-items:center;color:var(--fg-3);transition:.15s}.date-picker-btn:hover{background:var(--accent-soft);color:var(--accent)}.time-picker-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:5px;background:transparent;border:0;cursor:pointer;display:grid;place-items:center;color:var(--fg-3);transition:.15s}.time-picker-btn:hover{background:var(--accent-soft);color:var(--accent)}.time-picker-btn.has-time{color:var(--accent)}.time-picker-btn .time-dot{position:absolute;top:2px;right:2px;width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 1.5px var(--panel)}.time-range-pop{position:fixed;z-index:9999;min-width:260px;background:var(--panel);border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 14px 36px #00000038,0 4px 12px #00000014;padding:10px;animation:timePopIn .12s cubic-bezier(.16,1,.3,1)}@keyframes timePopIn{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.time-range-head{font-size:var(--text-2xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);padding:2px 4px 8px}.time-range-row{display:flex;align-items:flex-end;gap:8px;padding:0 2px}.time-range-field{flex:1;display:flex;flex-direction:column;gap:4px}.time-range-field label{font-size:var(--text-2xs);font-weight:600;color:var(--fg-3);letter-spacing:.04em;text-transform:uppercase}.time-range-field input[type=time]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:6px 8px;font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;color:var(--fg);letter-spacing:-.01em;transition:border-color .12s,box-shadow .12s;width:100%}.time-range-field input[type=time]:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px #7c5cff1f}.draft-field .time-range-pair{display:inline-flex;align-items:center;gap:2px;width:max-content;align-self:flex-start;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:5px 8px;transition:border-color .12s,box-shadow .12s}.draft-field .time-range-pair:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #7c5cff1f}.draft-field .time-range-pair input.time-range-num{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;outline:0;padding:0;height:auto;width:24px;min-width:0;font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;color:var(--fg);letter-spacing:-.01em;text-align:center;font-variant-numeric:tabular-nums;box-shadow:none;transition:none}.draft-field .time-range-pair input.time-range-num:hover,.draft-field .time-range-pair input.time-range-num:focus{background:transparent;border:0;box-shadow:none}.draft-field .time-range-pair input.time-range-num::placeholder{color:var(--fg-4);font-weight:500}.draft-field .time-range-pair input.time-range-num::-webkit-outer-spin-button,.draft-field .time-range-pair input.time-range-num::-webkit-inner-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.time-range-colon{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;color:var(--fg-3);line-height:1;-webkit-user-select:none;user-select:none}.time-range-sep{font-family:var(--font-mono);font-size:var(--text-md);color:var(--fg-3);padding-bottom:6px}.time-range-actions{display:flex;justify-content:space-between;gap:6px;margin-top:10px;padding:8px 2px 0;border-top:1px solid var(--border)}.time-range-clear,.time-range-done{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;padding:5px 12px;border-radius:6px;font-size:var(--text-xs);font-weight:600;letter-spacing:-.005em;transition:all .12s}.time-range-clear{background:transparent;border:1px solid var(--border);color:var(--fg-2)}.time-range-clear:hover:not(:disabled){background:var(--bg-2);color:var(--fg)}.time-range-clear:disabled{opacity:.4;cursor:not-allowed}.time-range-done{background:var(--accent);border:0;color:var(--accent-ink)}.time-range-done:hover{filter:brightness(1.08)}.time-range-chip{margin-top:4px;display:inline-flex;align-items:center;gap:6px;padding:3px 4px 3px 8px;border-radius:6px;background:var(--accent-soft);color:var(--accent);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;letter-spacing:-.01em;line-height:1;max-width:max-content;font-variant-numeric:tabular-nums}.time-range-chip .r{white-space:nowrap}.time-range-chip-x{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;cursor:pointer;width:16px;height:16px;border-radius:4px;background:transparent;color:var(--accent);font-size:var(--text-md);line-height:1;font-weight:400;display:grid;place-items:center;transition:background .12s}.time-range-chip-x:hover{background:#7c5cff33}.custom-date-pop{position:fixed;z-index:9999;width:280px;background:var(--panel);border:1px solid var(--border-strong);border-radius:12px;box-shadow:0 16px 40px #00000038,0 4px 12px #00000014;padding:10px;display:flex;flex-direction:column;gap:8px;animation:cdpPop .14s cubic-bezier(.16,1,.3,1)}@keyframes cdpPop{0%{opacity:0;transform:translateY(-3px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.cdp-head{display:grid;grid-template-columns:28px 1fr 28px 28px;gap:4px;align-items:center;padding-bottom:6px;border-bottom:1px solid var(--border)}.cdp-nav,.cdp-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;width:28px;height:28px;border-radius:6px;background:transparent;border:0;color:var(--fg-3);display:grid;place-items:center;transition:background .12s,color .12s}.cdp-nav:hover{background:var(--bg-2);color:var(--fg)}.cdp-close{font-size:var(--text-xl);line-height:1;font-weight:400;border:1px solid var(--border);margin-left:2px}.cdp-close:hover{background:var(--danger);color:#fff;border-color:var(--danger)}.cdp-month{text-align:center;font-family:Geist,sans-serif;font-size:var(--text-md);font-weight:600;color:var(--fg);letter-spacing:-.005em;font-variant-numeric:tabular-nums}.cdp-week{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;padding:2px 0}.cdp-wd{text-align:center;font-family:Geist,sans-serif;font-size:var(--text-2xs);font-weight:700;color:var(--fg-4);letter-spacing:.04em;text-transform:uppercase}.cdp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cdp-cell{position:relative;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;cursor:pointer;background:transparent;aspect-ratio:1/1;border-radius:7px;font-family:var(--font-mono);font-size:var(--text-sm);font-weight:500;color:var(--fg);letter-spacing:-.01em;font-variant-numeric:tabular-nums;display:grid;place-items:center;transition:background .1s,color .1s,transform .1s}.cdp-cell .cdp-cell-num{grid-row:1;grid-column:1;line-height:1}.cdp-cell .cdp-cell-dot{position:absolute;left:50%;bottom:3px;transform:translate(-50%);width:4px;height:4px;border-radius:50%;background:var(--accent);transition:background .1s,opacity .1s}.cdp-cell-blank{cursor:default;background:transparent}.cdp-cell:hover:not(.cdp-cell-blank){background:var(--bg-2);color:var(--fg)}.cdp-cell.is-today{color:var(--accent);font-weight:700;box-shadow:inset 0 0 0 1.5px var(--accent)}.cdp-cell.is-selected{background:var(--accent);color:var(--accent-ink);font-weight:700;box-shadow:none}.cdp-cell.is-selected .cdp-cell-dot{background:#ffffffeb}.cdp-cell.is-selected:hover{background:var(--accent);color:var(--accent-ink);filter:brightness(1.08)}.cdp-foot{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding-top:6px;border-top:1px solid var(--border)}.cdp-foot-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;padding:7px 10px;border-radius:7px;font-family:Geist,sans-serif;font-size:var(--text-sm);font-weight:600;letter-spacing:-.005em;line-height:1;transition:all .12s}.cdp-today-btn{background:var(--bg);border:1px solid var(--border-strong);color:var(--fg-2)}.cdp-today-btn:hover{background:var(--bg-2);color:var(--fg)}.cdp-done-btn{background:var(--accent);border:0;color:var(--accent-ink)}.cdp-done-btn:hover{filter:brightness(1.08)}.date-picker-btn.is-open{background:var(--accent-soft);color:var(--accent)}.date-picker-hidden{position:absolute;left:0;bottom:0;width:1px;height:1px;opacity:0;pointer-events:none}.draft-field select{-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--fg-3) 50%),linear-gradient(135deg,var(--fg-3) 50%,transparent 50%);background-position:calc(100% - 10px) calc(50% - 1px),calc(100% - 6px) calc(50% - 1px);background-size:4px 4px;background-repeat:no-repeat;padding-right:22px}.staged-tag{display:inline-flex;align-items:center;padding:1px 6px;border-radius:4px;font-size:var(--text-2xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:var(--bg-3);color:var(--fg-2)}.staged-tag.tag-cash,.staged-tag.tag-paid,.staged-tag.tag-settled{background:#2a8f5f26;color:#2a8f5f}.staged-tag.tag-check{background:#2174c426;color:#2174c4}.staged-tag.tag-ar{background:#c68a1a2e;color:#c68a1a}.staged-tag.tag-credit{background:#6b3fd424;color:#6b3fd4}.draft-add{padding:8px 16px;font-size:var(--text-sm);font-weight:600}.draft-add:disabled{opacity:.4;cursor:not-allowed}.task-filter-group{display:inline-flex;align-items:center;gap:8px}.empty-date-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:8px;background:var(--bg);border:1px solid var(--border-strong);color:var(--fg);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;letter-spacing:-.02em;transition:background .12s,border-color .12s,color .12s}.empty-date-btn:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.empty-date-btn.is-on{border-color:var(--accent);background:var(--accent);color:#fff}.empty-date-btn.is-on:hover{background:var(--accent-strong, #5430b0);color:#fff}.empty-date-btn.is-open{border-color:var(--accent);box-shadow:0 0 0 3px #6b3fd424}.empty-date-btn.is-on.is-open{box-shadow:0 0 0 3px #6b3fd438}.empty-date-btn .d{font-family:var(--font-mono);letter-spacing:-.02em}.manual-input-count{font-size:var(--text-xs);color:var(--fg-3);font-family:var(--font-mono)}.manual-input .btn:disabled{opacity:.45;cursor:not-allowed}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#14120c9e;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:grid;place-items:center;padding:24px;animation:fadeIn .15s ease-out}[data-theme=ink] .modal-backdrop{background:#000000b8}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--panel);border:1px solid var(--border-strong);border-radius:16px;width:min(520px,calc(100vw - 48px));max-height:calc(100vh - 48px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 64px -12px #00000073}.modal-head{display:flex;gap:14px;padding:20px 22px 16px;align-items:flex-start;border-bottom:1px solid var(--border)}.modal-ic{width:40px;height:40px;flex-shrink:0;border-radius:10px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center}.modal-ic-danger{background:#d24b3e24;color:var(--danger)}[data-theme=ink] .modal-ic-danger{background:#ff6b6b29;color:var(--danger)}.modal-sm{width:min(440px,calc(100vw - 48px))}.addr-del:hover{color:var(--danger);border-color:var(--danger);background:#d24b3e0f}[data-theme=ink] .addr-del:hover{background:#ff6b6b14}.modal-title{font-size:var(--text-lg);font-weight:600;letter-spacing:-.01em;color:var(--fg)}.modal-sub{font-size:var(--text-sm);color:var(--fg-3);margin-top:3px}.modal-body{padding:14px 22px;overflow:auto;display:flex;flex-direction:column;gap:8px;flex:1;min-height:0}.modal-row{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:center;padding:8px 10px;background:var(--bg-2);border-radius:8px}.modal-n{width:20px;height:20px;border-radius:50%;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font:600 10px/1 var(--font-mono)}.modal-row-body{min-width:0}.modal-row-name{font-size:var(--text-sm);font-weight:600;color:var(--fg)}.modal-row-meta{font-size:var(--text-xs);color:var(--fg-3);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modal-foot{padding:14px 22px;border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end}.admin-hold-reason-modal{border-radius:14px}.admin-hold-reason-head{align-items:center}.admin-hold-reason-icon{background:#f59e0b24;color:#a16307}.admin-hold-reason-body{gap:6px;padding-top:16px;padding-bottom:16px}.admin-hold-reason-field{display:flex;flex-direction:column;gap:7px;font-size:var(--text-xs);font-weight:700;color:var(--fg-2)}.admin-hold-reason-field textarea{width:100%;min-height:80px;resize:vertical;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--fg);padding:10px 11px;font:500 var(--text-sm)/1.45 "Geist",sans-serif;letter-spacing:0;outline:none}.admin-hold-reason-field textarea:focus{border-color:#c68a1a;box-shadow:0 0 0 3px #c68a1a1f}.admin-hold-reason-count{align-self:flex-end;font:600 var(--text-xs)/1 var(--font-mono);color:var(--fg-3)}.admin-hold-reason-foot{flex-wrap:wrap}.admin-hold-reason-submit{display:inline-flex;align-items:center;justify-content:center;gap:6px;max-width:100%;white-space:normal}.backend-hold-sync-panel .backend-data-table{--backend-table-min-width:880px}.admin-completion-modal{width:min(860px,calc(100vw - 48px));border-radius:14px}.admin-completion-head{align-items:center}.admin-completion-ic{background:#2a8f5f24;color:#2a8f5f}.admin-completion-title-wrap{flex:1;min-width:0}.admin-completion-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:var(--bg);cursor:pointer;width:30px;height:30px;border-radius:8px;font-size:var(--text-2xl);line-height:1;color:var(--fg-3);display:grid;place-items:center;flex-shrink:0;transition:all .12s}.admin-completion-close:hover{background:var(--bg-2);color:var(--fg);border-color:var(--border-strong)}.admin-completion-controls{display:grid;grid-template-columns:minmax(160px,220px) minmax(210px,260px) 1fr;gap:10px;align-items:end;padding:14px 22px;border-bottom:1px solid var(--border);background:var(--bg-2)}.admin-completion-field{display:flex;flex-direction:column;gap:6px;font-size:var(--text-xs);font-weight:700;color:var(--fg-3);letter-spacing:.04em;text-transform:uppercase}.admin-completion-field input{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:34px;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--fg);padding:0 10px;font:600 var(--text-sm)/1 var(--font-mono);letter-spacing:0;text-transform:none;outline:none}.admin-completion-field input:focus{border-color:#2a8f5f;box-shadow:0 0 0 3px #2a8f5f1f}.admin-completion-body{gap:12px}.admin-completion-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-completion-select-all{display:inline-flex;align-items:center;gap:8px;font-size:var(--text-sm);font-weight:700;color:var(--fg);cursor:pointer}.admin-completion-select-all.is-disabled{opacity:.55;cursor:not-allowed}.admin-completion-select-all input,.admin-completion-row input{width:16px;height:16px;accent-color:#2a8f5f;flex:0 0 auto}.admin-completion-count{font:700 var(--text-xs)/1 var(--font-mono);color:#2a8f5f;background:#2a8f5f1f;border:1px solid rgba(42,143,95,.24);padding:5px 8px;border-radius:7px}.admin-completion-empty{display:grid;place-items:center;min-height:140px;color:var(--fg-3);background:var(--bg-2);border:1px dashed var(--border-strong);border-radius:10px;font-size:var(--text-sm)}.admin-completion-list{display:flex;flex-direction:column;gap:7px;max-height:min(44vh,430px);overflow:auto;padding-right:2px}.admin-completion-run-group{display:flex;flex-direction:column;gap:7px}.admin-completion-run-divider{display:flex;align-items:center;gap:10px;color:var(--fg-3);font:800 var(--text-xs)/1 var(--font-mono);text-transform:uppercase;letter-spacing:.04em;padding:3px 0}.admin-completion-run-divider:before,.admin-completion-run-divider:after{content:"";height:1px;background:var(--border-strong);flex:1 1 auto}.admin-completion-run-divider span{flex:0 0 auto;border:1px solid var(--border);background:var(--bg-2);border-radius:999px;padding:4px 8px}.admin-completion-row{display:grid;grid-template-columns:18px minmax(240px,1fr) minmax(250px,auto);gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:var(--bg);cursor:pointer;transition:border-color .12s,background .12s,box-shadow .12s}.admin-completion-row:hover{border-color:#2a8f5f6b;background:#2a8f5f0a}.admin-completion-row.is-selected{border-color:#2a8f5f94;background:#2a8f5f14;box-shadow:inset 3px 0 #2a8f5f}.admin-completion-row-main,.admin-completion-row-meta{min-width:0}.admin-completion-row-main{display:flex;flex-direction:column;gap:3px}.admin-completion-row-title{display:flex;align-items:center;gap:8px;min-width:0;color:var(--fg);font-size:var(--text-sm);font-weight:700}.admin-completion-row-title>span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-completion-invoice{font-family:var(--font-mono);color:#2a8f5f;flex:0 0 auto}.admin-completion-address{color:var(--fg-3);font-size:var(--text-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-completion-row-meta{display:flex;align-items:center;justify-content:flex-end;gap:6px;color:var(--fg-3);font:700 var(--text-xs)/1 var(--font-mono);white-space:nowrap}.admin-completion-row-meta>span:not(.admin-completion-status){background:var(--bg-2);border:1px solid var(--border);border-radius:6px;padding:5px 7px}.admin-completion-status{display:inline-flex;align-items:center;padding:5px 7px;border-radius:6px;border:1px solid rgba(33,116,196,.24);background:#2174c41a;color:#2174c4}.admin-completion-status.status-on_hold{border-color:#f59e0b5c;background:#f59e0b24;color:#9c6b14}.admin-completion-status.status-delivered{border-color:#2a8f5f57;background:#2a8f5f1f;color:#2a8f5f}.admin-completion-note{display:flex;flex-direction:column;gap:6px;font-size:var(--text-xs);font-weight:700;color:var(--fg-3);letter-spacing:.04em;text-transform:uppercase}.admin-completion-note textarea{min-height:72px;resize:vertical;border:1px solid var(--border);border-radius:9px;background:var(--bg);color:var(--fg);padding:10px 11px;font:500 var(--text-sm)/1.45 "Geist",sans-serif;letter-spacing:0;text-transform:none;outline:none}.admin-completion-note textarea:focus{border-color:#2a8f5f;box-shadow:0 0 0 3px #2a8f5f1f}.admin-completion-error{border:1px solid rgba(210,75,62,.28);background:#d24b3e1a;color:var(--danger);border-radius:8px;padding:9px 10px;font-size:var(--text-sm);font-weight:700}.admin-completion-review-grid{display:grid;grid-template-columns:110px 110px 1fr;gap:10px}.admin-completion-review-grid>div{border:1px solid var(--border);border-radius:9px;background:var(--bg-2);padding:10px 11px;display:flex;flex-direction:column;gap:5px;min-width:0}.admin-completion-review-grid span{font-size:var(--text-xs);font-weight:700;color:var(--fg-3);letter-spacing:.04em;text-transform:uppercase}.admin-completion-review-grid strong{font:800 var(--text-md)/1.2 var(--font-mono);color:var(--fg);letter-spacing:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-completion-review-note{border:1px solid rgba(245,158,11,.34);background:#f59e0b1f;color:#8a5c0d;border-radius:9px;padding:10px 12px;font-size:var(--text-sm);font-weight:700}.admin-completion-review-list{display:flex;flex-direction:column;gap:6px}.admin-completion-review-row{display:grid;grid-template-columns:1fr minmax(90px,auto);gap:10px;align-items:center;padding:8px 10px;background:var(--bg);border:1px solid var(--border);border-radius:8px;font-size:var(--text-sm)}.admin-completion-review-main{display:flex;align-items:center;gap:8px;min-width:0}.admin-completion-review-main strong{font-family:var(--font-mono);color:#2a8f5f;flex:0 0 auto}.admin-completion-review-main span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-completion-review-row>span:last-child{font:700 var(--text-xs)/1 var(--font-mono);color:var(--fg-3);white-space:nowrap}.admin-completion-review-more{color:var(--fg-3);font:700 var(--text-xs)/1 var(--font-mono);padding:2px 4px}.admin-completion-foot .btn-primary{background:#2a8f5f;border-color:#2a8f5f}.admin-completion-foot .btn-primary:hover:not(:disabled){background:#23764f}.admin-soft-delete-modal .modal-ic-danger{background:#d24b3e1f;color:var(--danger)}.admin-soft-delete-warning{border-color:#d24b3e47;background:#d24b3e14;color:var(--danger)}.admin-soft-delete-reason{display:grid;gap:6px;margin-top:12px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.admin-soft-delete-reason span{color:var(--fg-3);font:700 var(--text-xs)/1.2 var(--font-sans)}.admin-soft-delete-reason strong{color:var(--fg);font:700 var(--text-sm)/1.35 var(--font-sans);overflow-wrap:anywhere}.driver-invite-body{gap:12px}.driver-invite-body label{display:flex;flex-direction:column;gap:6px;font-size:var(--text-xs);font-weight:600;color:var(--fg-3)}.driver-invite-body input{width:100%;height:38px;border:1px solid var(--border);border-radius:9px;background:var(--bg);color:var(--fg);padding:0 11px;font:500 var(--text-sm)/1 "Geist",sans-serif;outline:none}.driver-invite-body input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.vehicle-delete-empty{min-height:64px;display:grid;place-items:center;color:var(--fg-3);font-size:var(--text-sm);border:1px dashed var(--border);border-radius:10px;background:var(--bg-2)}.vehicle-delete-list{display:flex;flex-direction:column;gap:8px}.vehicle-delete-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 10px 10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--bg)}.vehicle-delete-main{min-width:0}.vehicle-delete-name{font-size:var(--text-sm);font-weight:700;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vehicle-delete-meta{margin-top:3px;font-size:var(--text-xs);color:var(--fg-3)}.vehicle-delete-x{width:32px;height:32px;flex:0 0 auto;border:1px solid rgba(210,75,62,.28);border-radius:9px;background:#d24b3e14;color:var(--danger);display:grid;place-items:center;cursor:pointer;font:800 18px/1 Geist,sans-serif}.vehicle-delete-x:hover{background:#d24b3e24;border-color:#d24b3e73}.vehicle-delete-x:disabled{opacity:.55;cursor:not-allowed}.driver-form-error{font-size:var(--text-sm);color:var(--danger);background:#d24b3e14;border:1px solid rgba(210,75,62,.22);border-radius:9px;padding:8px 10px}.help-row{display:grid;grid-template-columns:36px 1fr;gap:14px;align-items:center;padding:14px;background:var(--bg-2);border-radius:10px}.help-icon{width:36px;height:36px;border-radius:10px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;flex-shrink:0}.help-content{min-width:0}.help-label{font-size:var(--text-2xs);color:var(--fg-3);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.help-val{font-size:var(--text-lg);font-weight:600;color:var(--fg);letter-spacing:-.01em;margin-top:3px;display:block}.help-phone{font-family:var(--font-mono);color:var(--accent);text-decoration:none}.help-phone:hover{text-decoration:underline}.hist-cal-wrap{position:relative;padding:14px 14px 0;display:flex;flex-shrink:0;align-self:flex-start}.hist-cal-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;padding:7px 11px;background:var(--panel);border:1px solid var(--border);border-radius:9px;color:var(--fg);font-size:var(--text-sm);font-weight:600;letter-spacing:-.005em;line-height:1;transition:all .12s;box-shadow:0 1px 2px #00000008}.hist-cal-trigger:hover{background:var(--bg-2);border-color:var(--border-strong)}.hist-cal-trigger .lbl{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.hist-cal-today{display:inline-flex;align-items:center;padding:2px 7px;border-radius:5px;background:#2a8f5f26;color:#2a8f5f;font-family:Geist,sans-serif;font-size:var(--text-2xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;line-height:1}.hist-cal-trigger .chev{color:var(--fg-3);margin-left:2px;transition:transform .15s ease-out,color .12s}.hist-cal-trigger.open{background:var(--bg-2);border-color:var(--accent);color:var(--fg)}.hist-cal-trigger.open .chev{transform:rotate(180deg);color:var(--accent)}.hist-cal-pop{position:absolute;top:calc(100% + 6px);left:14px;z-index:60;width:min(440px,calc(100vw - 32px));animation:histCalPop .14s cubic-bezier(.16,1,.3,1)}@keyframes histCalPop{0%{opacity:0;transform:translateY(-4px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.hist-cal-pop .dispatch-calendar{margin:0;box-shadow:0 16px 40px -8px #0000002e,0 4px 12px #00000014;border-color:var(--border-strong)}.dispatch-calendar{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:14px 16px;margin:0 24px 16px;display:flex;flex-direction:column;gap:10px;flex-shrink:0}.cal-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.cal-title{display:flex;align-items:center;gap:6px;font-size:var(--text-md);font-weight:700;color:var(--fg);letter-spacing:-.005em}.cal-nav{display:flex;align-items:center;gap:6px;position:relative}.cal-nav-btn{padding:4px;width:26px;height:26px}.cal-month{font-size:var(--text-md);font-weight:600;color:var(--fg-2);min-width:120px;text-align:center;font-variant-numeric:tabular-nums}.cal-month-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:140px;height:28px;padding:0 10px;font-size:var(--text-md);font-weight:600;color:var(--fg-2);background:transparent;border:1px solid transparent;border-radius:7px;cursor:pointer;font-variant-numeric:tabular-nums;transition:background .15s,border-color .15s}.cal-month-btn:hover{background:var(--bg-2);border-color:var(--border)}.cal-month-btn .ic{color:var(--fg-3)}.cal-picker-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:18}.cal-picker{position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%);z-index:19;background:var(--panel);border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 12px 32px -8px #14120c33;padding:8px 10px 10px;width:240px;display:flex;flex-direction:column;gap:8px}.cal-picker-yearrow{display:flex;align-items:center;justify-content:space-between;padding:2px 4px}.cal-picker-year{font:600 13px/1 var(--font-mono);color:var(--fg);letter-spacing:.02em}.cal-picker-months{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.cal-picker-month{height:30px;padding:0;border-radius:6px;border:1px solid transparent;background:var(--bg-2);font-size:var(--text-xs);font-weight:600;color:var(--fg-2);cursor:pointer;transition:.15s}.cal-picker-month:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.cal-picker-month.is-current{background:var(--accent);color:#fff;border-color:var(--accent)}.cal-picker-month.is-today{border-color:var(--fg-2)}.cal-today-btn{font-size:var(--text-xs);font-weight:600;letter-spacing:-.005em;padding:4px 10px;height:26px;margin-left:8px;border:1px solid var(--border-strong);background:var(--bg);color:var(--fg);border-radius:6px;box-shadow:0 1px 2px #0000000a;transition:all .12s}.cal-today-btn:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.cal-weekrow{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;padding:0 2px}.cal-wd{font-size:var(--text-2xs);font-weight:700;color:var(--fg-3);text-align:center;letter-spacing:.04em;text-transform:uppercase}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal-cell{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;height:48px;border-radius:8px;background:var(--bg-2);border:1px solid transparent;cursor:default;transition:.15s;padding:6px 4px;gap:2px}.cal-cell-blank{background:transparent}.cal-cell.has-dispatch{background:var(--bg);border-color:var(--border);cursor:pointer}.cal-cell.has-dispatch:hover{background:var(--accent-soft);border-color:var(--accent);transform:translateY(-1px)}.cal-cell.is-today{border-color:var(--fg-2);box-shadow:inset 0 0 0 1px var(--fg-2)}.cal-cell.is-selected{background:var(--accent);border-color:var(--accent)}.cal-cell.is-selected .cal-day-num,.cal-cell.is-selected .cal-stops{color:#fff}.cal-cell.is-selected .cal-dot{background:#fff}.cal-day-num{font-size:var(--text-md);font-weight:600;color:var(--fg);line-height:1;font-variant-numeric:tabular-nums}.cal-cell:not(.has-dispatch):not(.has-appointment):not(.is-future) .cal-day-num{color:var(--fg-4);font-weight:400}.cal-cell.has-appointment{background:var(--bg);border-color:#c68a1a59;cursor:pointer}.cal-cell.has-appointment:hover{background:#c68a1a1a;border-color:#c68a1a;transform:translateY(-1px)}.cal-cell.is-future{background:var(--bg);border-color:var(--border);cursor:pointer}.cal-cell.is-future .cal-day-num{color:var(--fg-3);font-weight:500}.cal-cell.is-future:hover{background:var(--bg-2);border-color:var(--border-strong);transform:translateY(-1px)}.cal-cell.is-future:hover .cal-day-num{color:var(--fg)}.cal-cell.is-future:after{content:"+";position:absolute;top:4px;right:6px;font-size:var(--text-xs);font-weight:600;color:var(--fg-4);opacity:0;transition:opacity .12s;line-height:1}.cal-cell.is-future:hover:after{opacity:.7}.cal-dot{width:5px;height:5px;border-radius:50%;background:var(--accent);position:absolute;top:6px;right:6px}.cal-dot-appt{background:#c68a1a;right:6px}.cal-cell.has-appointment.has-dispatch .cal-dot-appt{right:14px}.cal-stops{font-size:var(--text-2xs);font-weight:600;color:var(--accent);font-family:var(--font-mono);letter-spacing:0}.cal-stops-appt{color:#c68a1a}.cal-legend{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:var(--text-2xs);color:var(--fg-3)}.cal-legend .legend-dot{position:static;display:inline-block;margin-right:5px;vertical-align:middle}.cal-legend-hint{color:var(--fg-4);font-style:italic}.dispatch-calendar .cal-head{display:grid;grid-template-columns:28px 1fr 28px 28px;gap:4px;align-items:center;padding-bottom:6px;border-bottom:1px solid var(--border);flex-wrap:nowrap}.cal-nav-v2{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;width:28px;height:28px;border-radius:6px;background:transparent;border:0;color:var(--fg-3);display:grid;place-items:center;transition:background .12s,color .12s}.cal-nav-v2:hover{background:var(--bg-2);color:var(--fg)}.cal-month-label{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;border:0;background:transparent;padding:6px 8px;border-radius:6px;text-align:center;font-family:Geist,sans-serif;font-size:var(--text-md);font-weight:600;color:var(--fg);letter-spacing:-.005em;font-variant-numeric:tabular-nums;transition:background .12s}.cal-month-label:hover{background:var(--bg-2)}.cal-close-v2{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;width:28px;height:28px;border-radius:6px;background:transparent;border:1px solid var(--border);color:var(--fg-3);font-size:var(--text-xl);line-height:1;font-weight:400;display:grid;place-items:center;margin-left:2px;transition:all .12s}.cal-close-v2:hover{background:var(--danger);color:#fff;border-color:var(--danger)}.dispatch-calendar .cal-grid{grid-template-columns:repeat(7,1fr);gap:2px}.dispatch-calendar .cal-cell{aspect-ratio:1/1;height:auto;border-radius:7px;background:transparent;border:0;padding:4px;gap:1px;font-family:var(--font-mono)}.dispatch-calendar .cal-cell:not(.cal-cell-blank){background:transparent}.dispatch-calendar .cal-cell.has-dispatch{background:transparent;border:0}.dispatch-calendar .cal-cell.has-dispatch:hover,.dispatch-calendar .cal-cell.has-appointment:hover,.dispatch-calendar .cal-cell.is-future:hover{background:var(--bg-2);border-color:transparent;transform:none}.dispatch-calendar .cal-cell.is-today{color:var(--accent);font-weight:700;box-shadow:inset 0 0 0 1.5px var(--accent);border-color:transparent}.dispatch-calendar .cal-cell.is-today .cal-day-num{color:var(--accent)}.dispatch-calendar .cal-cell.is-selected{background:var(--accent);color:var(--accent-ink);box-shadow:none;border-color:transparent}.dispatch-calendar .cal-cell.is-selected .cal-day-num{color:var(--accent-ink);font-weight:700}.dispatch-calendar .cal-cell.is-selected .cal-stops{color:var(--accent-ink)}.dispatch-calendar .cal-cell.is-selected .cal-dot,.dispatch-calendar .cal-cell.is-selected .cal-dot-appt{background:var(--accent-ink)}.dispatch-calendar .cal-day-num{font-size:var(--text-sm);font-weight:500;letter-spacing:-.01em}.dispatch-calendar .cal-stops{font-size:var(--text-2xs);line-height:1.2}.cal-foot{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding-top:6px;border-top:1px solid var(--border)}.cal-foot-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;padding:7px 10px;border-radius:7px;font-family:Geist,sans-serif;font-size:var(--text-sm);font-weight:600;letter-spacing:-.005em;line-height:1;transition:all .12s}.cal-today-foot-btn{background:var(--bg);border:1px solid var(--border-strong);color:var(--fg-2)}.cal-today-foot-btn:hover{background:var(--bg-2);color:var(--fg)}.cal-done-foot-btn{background:var(--accent);border:0;color:var(--accent-ink)}.cal-done-foot-btn:hover{filter:brightness(1.08)}.appt-modal{width:min(580px,100%);max-height:88vh;background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:0 24px 64px -12px #00000047,0 4px 16px #00000014;display:flex;flex-direction:column;overflow:hidden}.appt-head{display:flex;align-items:center;gap:14px;padding:16px 18px;border-bottom:1px solid var(--border)}.appt-head-ic{width:40px;height:40px;border-radius:10px;background:#c68a1a24;color:#c68a1a;display:grid;place-items:center;flex-shrink:0}.appt-head-text{flex:1;min-width:0}.appt-title{font-size:var(--text-lg);font-weight:600;letter-spacing:-.015em;color:var(--fg);line-height:1.2}.appt-sub{margin-top:2px;font-size:var(--text-sm);color:var(--fg-3);font-family:var(--font-mono);letter-spacing:-.01em}.appt-sub .sep{color:var(--fg-4);margin:0 6px}.appt-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:var(--bg);cursor:pointer;width:30px;height:30px;border-radius:8px;font-size:var(--text-2xl);line-height:1;color:var(--fg-3);display:grid;place-items:center;flex-shrink:0;transition:all .12s}.appt-close:hover{background:var(--bg-2);color:var(--fg);border-color:var(--border-strong)}.appt-body{padding:14px 18px 18px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.appt-empty{text-align:center;padding:24px 16px;color:var(--fg-3);font-size:var(--text-md);display:flex;flex-direction:column;align-items:center;gap:8px;background:var(--bg-2);border-radius:10px}.appt-empty .hint{font-size:var(--text-xs);color:var(--fg-4)}.appt-list{display:flex;flex-direction:column;gap:8px}.appt-item{display:flex;align-items:flex-start;gap:10px;padding:11px 13px;background:var(--bg);border:1px solid var(--border);border-left:3px solid #c68a1a;border-radius:9px;transition:border-color .12s}.appt-item:hover{border-color:var(--border-strong)}.appt-item-main{flex:1;min-width:0}.appt-item-name{font-size:var(--text-md);font-weight:600;color:var(--fg);letter-spacing:-.005em;line-height:1.2;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.appt-item-time{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;color:#c68a1a;background:#c68a1a1f;padding:2px 7px;border-radius:5px;letter-spacing:-.01em}.appt-item-meta{display:flex;flex-direction:column;gap:3px;margin-top:5px}.appt-item-row{display:inline-flex;align-items:center;gap:5px;font-size:var(--text-xs);color:var(--fg-3);letter-spacing:-.005em}.appt-item-notes{margin-top:6px;padding:5px 8px;background:var(--bg-2);border-radius:5px;font-size:var(--text-xs);color:var(--fg-2);font-style:italic;letter-spacing:-.005em}.appt-item-rm{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;cursor:pointer;background:transparent;color:var(--fg-4);width:22px;height:22px;border-radius:5px;font-size:var(--text-lg);line-height:1;display:grid;place-items:center;flex-shrink:0;transition:all .12s}.appt-item-rm:hover{background:#d24b3e1a;color:var(--danger)}.appt-form{background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:12px 13px;display:flex;flex-direction:column;gap:10px}.appt-form-title{font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3)}.appt-form-grid{display:grid;grid-template-columns:1fr 130px;gap:7px}.appt-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--panel);border:1px solid var(--border);border-radius:7px;padding:8px 10px;font-family:Geist,sans-serif;font-size:var(--text-sm);color:var(--fg);letter-spacing:-.005em;transition:border-color .12s,box-shadow .12s}.appt-input::placeholder{color:var(--fg-4)}.appt-input:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px #7c5cff1f}.appt-input-addr,.appt-input-notes{grid-column:1 / -1}.appt-input-notes{resize:vertical;min-height:44px;font-family:inherit}.appt-form-actions{display:flex;justify-content:flex-end}.appt-submit{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;border:0;background:#c68a1a;color:#fff;padding:8px 14px;border-radius:7px;font-size:var(--text-sm);font-weight:600;letter-spacing:.005em;display:inline-flex;align-items:center;gap:6px;transition:all .12s}.appt-submit:hover:not(:disabled){filter:brightness(1.08)}.appt-submit:disabled{opacity:.45;cursor:not-allowed}.pay-modal{width:min(440px,100%);background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:0 24px 64px -12px #00000047,0 4px 16px #00000014;display:flex;flex-direction:column;overflow:hidden}.pay-head{display:flex;align-items:center;gap:14px;padding:16px 18px;border-bottom:1px solid var(--border)}.pay-head-ic{width:40px;height:40px;border-radius:10px;background:#2a8f5f24;color:#2a8f5f;display:grid;place-items:center;flex-shrink:0}.pay-head-text{flex:1;min-width:0}.pay-title{font-size:var(--text-lg);font-weight:600;letter-spacing:-.015em;color:var(--fg);line-height:1.2}.pay-sub{margin-top:3px;font-size:var(--text-sm);color:var(--fg-3);letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pay-sub .sep{color:var(--fg-4);margin:0 7px}.pay-sub .amt{font-family:var(--font-mono);color:var(--fg);font-weight:600}.pay-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:var(--bg);cursor:pointer;width:30px;height:30px;border-radius:8px;font-size:var(--text-2xl);line-height:1;color:var(--fg-3);display:grid;place-items:center;flex-shrink:0;transition:all .12s}.pay-close:hover{background:var(--bg-2);color:var(--fg);border-color:var(--border-strong)}.pay-body{padding:18px;display:flex;flex-direction:column;gap:16px}.pay-field{display:flex;flex-direction:column;gap:8px}.pay-label{font-family:Geist,sans-serif;font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3)}.pay-options{display:flex;flex-wrap:wrap;gap:6px}.pay-opt{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background:var(--bg);border:1px solid var(--border-strong);color:var(--fg);padding:8px 14px;border-radius:7px;font-family:Geist,sans-serif;font-size:var(--text-sm);font-weight:600;letter-spacing:-.005em;line-height:1;transition:all .12s}.pay-opt:hover{background:var(--bg-2);border-color:var(--accent)}.pay-opt.is-on.tag-cash,.pay-opt.is-on.tag-paid,.pay-opt.is-on.tag-settled{background:#2a8f5f2e;color:#2a8f5f;border-color:#2a8f5f}.pay-opt.is-on.tag-check{background:#2174c42e;color:#2174c4;border-color:#2174c4}.pay-opt.is-on.tag-ar{background:#c68a1a33;color:#c68a1a;border-color:#c68a1a}.pay-opt-recv.is-on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.pay-actions{display:flex;justify-content:flex-end;gap:8px;padding:14px 18px;border-top:1px solid var(--border);background:var(--bg)}.pay-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:7px;font-family:Geist,sans-serif;font-size:var(--text-sm);font-weight:600;letter-spacing:-.005em;line-height:1;transition:all .12s}.pay-btn-ghost{background:transparent;color:var(--fg-2);border:1px solid var(--border-strong)}.pay-btn-ghost:hover{background:var(--bg-2);color:var(--fg)}.pay-btn-primary{background:#2a8f5f;color:#fff;border:1px solid #2a8f5f}.pay-btn-primary:hover:not(:disabled){filter:brightness(1.08)}.pay-btn-primary:disabled{opacity:.45;cursor:not-allowed}.modal-history{max-width:560px;width:100%;max-height:80vh;display:flex;flex-direction:column}.history-body{display:flex;flex-direction:column;gap:14px;overflow-y:auto;padding:4px 2px}.history-empty{text-align:center;color:var(--fg-3);padding:30px 0;font-size:var(--text-md)}.history-driver{background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:10px 12px}.history-driver-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;padding-bottom:8px;border-bottom:1px dashed var(--border)}.history-driver-name{display:flex;align-items:center;gap:6px;font-size:var(--text-md);color:var(--fg)}.history-driver-name b{font-family:var(--font-mono);font-weight:700}.history-driver-stats{display:flex;gap:10px;font-size:var(--text-xs);color:var(--fg-3);align-items:center}.history-amount{font-family:var(--font-mono);font-weight:700;color:var(--fg)}.history-stop-list{display:flex;flex-direction:column;gap:4px}.history-stop{display:grid;grid-template-columns:20px 1fr auto;gap:8px;align-items:center;padding:6px 8px;background:var(--panel);border-radius:6px}.history-stop-n{width:18px;height:18px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font:600 10px/1 var(--font-mono)}.history-stop-name{font-size:var(--text-sm);font-weight:600;color:var(--fg);display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.history-stop-inv{font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:500;color:var(--fg-3);background:var(--bg-3);padding:1px 5px;border-radius:3px;letter-spacing:-.01em}.history-stop-addr{font-size:var(--text-xs);color:var(--fg-3);margin-top:2px}.history-stop-meta{display:flex;flex-wrap:wrap;gap:4px 5px;margin-top:5px;align-items:center}.history-stop-amt{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;color:var(--fg)}.assign-board{display:grid;grid-template-columns:320px minmax(0,1fr);flex:1;min-height:0;width:100%;overflow:hidden}.unassigned{border-right:1px solid var(--border);background:var(--panel);display:flex;flex-direction:column;min-height:0}.ua-head{padding:18px 18px 12px;display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--border)}.ua-title{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);font-weight:600;margin-bottom:6px}.ua-count{font-size:var(--text-md);color:var(--fg-2)}.ua-count b{color:var(--fg);font-weight:600;font-family:var(--font-mono)}.ua-count span{color:var(--fg-3)}.ua-list{flex:1;overflow:auto;padding:10px 12px}.ua-list::-webkit-scrollbar{width:8px}.ua-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.ua-empty{padding:32px 16px;text-align:center;color:var(--fg-3);font-size:var(--text-md);display:flex;flex-direction:column;gap:10px;align-items:center}.ua-empty svg{color:var(--ok)}.addr-card{display:grid;grid-template-columns:24px 1fr auto;gap:10px;align-items:flex-start;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--panel-2);margin-bottom:8px;position:relative}.addr-card:hover{border-color:var(--border-strong)}.addr-num{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--fg-3);background:var(--bg-2);border:1px solid var(--border);border-radius:6px;padding:3px 0;text-align:center}.addr-name{font-size:var(--text-md);font-weight:600;letter-spacing:-.01em;margin-bottom:3px}.addr-addr{font-size:var(--text-xs);color:var(--fg-3);font-family:var(--font-mono);line-height:1.45}.addr-meta{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:8px;font-size:var(--text-xs);color:var(--fg-3)}.addr-meta span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.addr-phone{display:inline-flex;align-items:center;gap:4px;margin-top:6px;font-size:var(--text-xs);color:var(--fg-3);font-family:var(--font-mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.addr-assign{position:relative;display:flex;align-items:flex-start;gap:4px}.addr-assign .icon-btn{display:grid;place-items:center;flex:0 0 34px}.addr-del span{display:block;line-height:1;transform:translateY(-1px)}.assign-pop{position:absolute;right:0;top:38px;z-index:10;width:220px;background:var(--panel);border:1px solid var(--border-strong);border-radius:10px;padding:6px;box-shadow:var(--shadow)}.pop-title{font-size:var(--text-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);padding:6px 8px;font-weight:600}.pop-item{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:7px;cursor:pointer;font-size:var(--text-md)}.pop-item:hover{background:var(--bg-2)}.pop-av{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:var(--text-2xs);font-weight:700;border:1px solid;font-family:var(--font-mono)}.pop-cnt{margin-left:auto;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--fg-3)}.drivers-board{flex:1;min-width:0;overflow:auto;padding:22px 32px 26px 36px;display:flex;gap:16px;align-items:flex-start;justify-content:flex-start;min-height:0}.drivers-board::-webkit-scrollbar{height:8px}.drv-col{background:var(--panel);border:1px solid var(--border);border-radius:14px;display:flex;flex-direction:column;overflow:hidden;flex:0 0 clamp(330px,23vw,360px);transition:border-color .15s,box-shadow .15s,background .15s}.drv-col.drop-hint{transition:background .12s,border-color .12s,box-shadow .12s,transform .12s}.drv-col.drop-target{border-style:solid;border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent-soft),0 14px 28px -14px var(--accent);transform:translateY(-1px)}.addr-card[draggable=true]{cursor:grab}.addr-card[draggable=true]:active{cursor:grabbing}.addr-card.dragging{opacity:.4}.drv-head{display:flex;align-items:center;justify-content:space-between;padding:14px 14px 10px}.drv-id{display:flex;align-items:center;gap:10px}.drv-av{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:var(--text-sm);font-weight:700;border:1px solid;font-family:var(--font-mono)}.drv-name{font-size:var(--text-md);font-weight:600;letter-spacing:-.01em}.drv-veh{font-size:var(--text-2xs);color:var(--fg-3);font-family:var(--font-mono);margin-top:2px}.drv-count{font-size:var(--text-3xl);font-weight:600;font-family:var(--font-mono);letter-spacing:-.03em}.drv-mini{padding:0 14px;margin-bottom:10px}.drv-mini svg{border:1px solid var(--border);border-radius:8px}.drv-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);margin:0 14px;border:1px solid var(--border);border-radius:8px;overflow:hidden}.drv-stats>div{background:var(--panel-2);padding:8px 10px}.ds-l{font-size:var(--text-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);font-weight:600;margin-bottom:2px}.ds-v{font-size:var(--text-md);font-weight:600;font-family:var(--font-mono)}.ds-v span{font-size:var(--text-2xs);color:var(--fg-3);font-weight:500;margin-left:2px}.drv-stops{padding:10px 10px 14px;overflow:auto;max-height:clamp(380px,68vh,820px);display:flex;flex-direction:column;gap:8px}.drv-stops::-webkit-scrollbar{width:6px}.drv-stops::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.drv-empty{padding:24px 12px;text-align:center;color:var(--fg-3);font-size:var(--text-sm)}.drv-stop{display:flex;flex-direction:column;gap:5px;padding:8px 10px;border-radius:9px;cursor:grab;background:var(--panel);border:1px solid var(--border);box-shadow:0 1px #14120c05;transition:background .15s,border-color .15s}.drv-stop:hover{background:var(--bg);border-color:var(--border-strong)}.drv-stop:hover .ds-grip{opacity:1}.drv-stops.is-dragging .drv-stop:hover{background:var(--panel);border-color:var(--border)}.drv-stop.dragging{opacity:0;transition:none}.drv-stop:active{cursor:grabbing}.drv-stop.is-held{background:#c68a1a0f;border-color:#c68a1a73;box-shadow:inset 3px 0 0 var(--warn)}.drv-stop.is-held .ds-name,.drv-stop.is-held .ds-addr{opacity:.7}.ds-held-meta{display:-webkit-box;font-size:var(--text-2xs);font-weight:650;line-height:1.3;color:#8a5c0d;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}.drv-stop.is-held .ds-n{filter:grayscale(.6) opacity(.7)}.drv-stop.is-paid{background:#2a8f5f0d;border-color:#2a8f5f73;box-shadow:inset 3px 0 #2a8f5f}.drv-stop.is-delivered{background:var(--panel);border-color:var(--border);box-shadow:0 1px #14120c05}.ds-actions{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:8px;padding-top:8px;border-top:1px dashed var(--border)}.ds-pay-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:6px;font-family:Geist,sans-serif;font-size:var(--text-xs);font-weight:600;letter-spacing:-.005em;line-height:1;transition:all .12s}.ds-pay-toggle.is-unpaid{background:var(--accent);color:var(--accent-ink);border:1px solid var(--accent)}.ds-pay-toggle.is-unpaid:hover{filter:brightness(1.08)}.ds-pay-toggle.is-paid{background:#2a8f5f24;color:#2a8f5f;border:1px solid rgba(42,143,95,.45)}.ds-pay-toggle.is-paid:hover{background:#2a8f5f38;border-color:#2a8f5f}.ds-pay-toggle:disabled{cursor:not-allowed;opacity:.7}.ds-delivered-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:6px;background:#2a8f5f;color:#fff;border:1px solid #2a8f5f;font-family:Geist,sans-serif;font-size:var(--text-xs);font-weight:700;letter-spacing:.02em;text-transform:uppercase;line-height:1;-webkit-user-select:none;user-select:none}.ds-top{display:grid;grid-template-columns:12px 22px 1fr 22px 20px;gap:6px;align-items:center}.ds-grip{color:var(--fg-4);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;line-height:1;letter-spacing:-.18em;-webkit-user-select:none;user-select:none;opacity:0;transition:opacity .15s;align-self:center;cursor:grab}.ds-n{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:var(--text-xs);font-weight:700;font-family:var(--font-mono)}.ds-name{font-size:var(--text-md);font-weight:600;color:var(--fg);letter-spacing:-.01em;display:flex;align-items:center;gap:6px;min-width:0}.ds-name-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1 1 auto}.ds-addr{font-size:var(--text-xs);color:var(--fg-3);font-family:var(--font-mono);line-height:1.4;padding-left:40px}.ds-meta{display:flex;flex-wrap:wrap;gap:4px 6px;padding-left:40px;align-items:center}.ds-chip{display:inline-flex;align-items:center;gap:3px;padding:1px 6px;border-radius:4px;font-size:var(--text-2xs);font-weight:600;background:var(--bg-3);color:var(--fg-2);white-space:nowrap}.ds-chip-phone{font-family:var(--font-mono);background:var(--bg-2);color:var(--fg-2)}.ds-chip-amt{font-family:var(--font-mono);font-weight:700;background:#2a8f5f21;color:#226d4a}.ds-chip-inv{font-family:var(--font-mono);font-weight:500;background:transparent;color:var(--fg-4);padding:1px 0}.ds-chip-run{background:#6b3fd41a;color:var(--accent);font-weight:700}.ds-chip-recv{background:#2174c41f;color:#2174c4;font-weight:600}.ds-chip-cashar{font-weight:700;letter-spacing:.04em;text-transform:uppercase}.ds-chip-cashar.tag-cash,.ds-chip-cashar.tag-paid,.ds-chip-cashar.tag-settled{background:#2a8f5f26;color:#2a8f5f}.ds-chip-cashar.tag-check{background:#2174c426;color:#2174c4}.ds-chip-cashar.tag-ar{background:#c68a1a2e;color:#c68a1a}.ds-chip-cashar.tag-credit{background:#6b3fd424;color:#6b3fd4}.ds-hold-tag{font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:800;padding:1px 5px;border-radius:3px;letter-spacing:.06em;background:var(--warn);color:#fff;flex-shrink:0;white-space:nowrap}.ds-hold{background:none;border:0;cursor:pointer;padding:0;width:22px;height:22px;border-radius:5px;color:var(--fg-3);display:grid;place-items:center;transition:.15s}.ds-hold:hover,.ds-hold.is-on{background:var(--warn);color:#fff}.ds-rm{background:none;border:0;color:var(--fg-3);font-size:var(--text-xl);cursor:pointer;padding:0;width:20px;height:20px;display:grid;place-items:center;border-radius:5px}.ds-rm:hover{background:var(--bg-3);color:var(--fg)}.chat-fab{position:fixed;right:24px;bottom:24px;z-index:40;width:56px;height:56px;border-radius:50%;background:var(--accent);color:var(--accent-ink);border:0;cursor:pointer;display:grid;place-items:center;box-shadow:0 12px 32px -8px var(--accent),0 2px 4px #0000004d;transition:.15s}.chat-fab:hover{transform:translateY(-2px) scale(1.03)}.chat-fab-badge{position:absolute;top:-2px;right:-2px;min-width:20px;height:20px;border-radius:10px;background:var(--danger);color:#fff;font-size:var(--text-xs);font-weight:700;display:grid;place-items:center;padding:0 6px;border:2px solid var(--bg);font-family:var(--font-mono)}.chat-dock{position:fixed;right:18px;bottom:18px;z-index:40;width:760px;height:560px;max-height:calc(100vh - 36px);max-width:calc(100vw - 36px);background:var(--panel);border:1px solid var(--border-strong);border-radius:16px;display:grid;grid-template-columns:280px 1fr;overflow:hidden;box-shadow:0 24px 64px -12px #0009,0 0 0 1px #ffffff0a inset}.chat-list{display:flex;flex-direction:column;border-right:1px solid var(--border);background:var(--panel-2);min-height:0}.chat-list-head{padding:14px 14px 10px;display:flex;justify-content:space-between;align-items:flex-start}.cl-title{font-size:var(--text-lg);font-weight:600;letter-spacing:-.01em}.cl-sub{font-size:var(--text-xs);color:var(--fg-3);margin-top:2px}.chat-search{display:flex;align-items:center;gap:8px;margin:0 12px 8px;padding:7px 10px;background:var(--bg-2);border:1px solid var(--border);border-radius:8px;color:var(--fg-3)}.chat-search input{background:none;border:0;outline:0;color:var(--fg);font-family:inherit;font-size:var(--text-sm);flex:1;width:0}.chat-search input::placeholder{color:var(--fg-3)}.chat-threads{flex:1;overflow:auto;padding:4px 8px 8px}.chat-threads::-webkit-scrollbar{width:6px}.chat-threads::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.thread{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;padding:9px 8px;border-radius:9px;cursor:pointer;margin-bottom:2px}.thread:hover,.thread.active{background:var(--bg-2)}.th-av{width:34px;height:34px;border-radius:50%;background:var(--bg-3);border:1px solid var(--border);display:grid;place-items:center;font-size:var(--text-xs);font-weight:600;position:relative;color:var(--fg);font-family:var(--font-mono)}.th-av .th-dot{position:absolute;right:-1px;bottom:-1px;width:9px;height:9px;border-radius:50%;background:var(--ok);border:2px solid var(--panel-2)}.th-av.off .th-dot{background:var(--fg-4)}.th-body{min-width:0}.th-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.th-name{font-size:var(--text-sm);font-weight:600;letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.th-time{font-size:var(--text-2xs);color:var(--fg-3);font-family:var(--font-mono);flex-shrink:0}.th-preview{font-size:var(--text-xs);color:var(--fg-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px;line-height:1.4}.th-unread{min-width:18px;height:18px;border-radius:9px;background:var(--accent);color:var(--accent-ink);font-size:var(--text-2xs);font-weight:700;display:grid;place-items:center;padding:0 5px;font-family:var(--font-mono)}.chat-list-foot{padding:10px 12px;border-top:1px solid var(--border)}.chat-conv{display:flex;flex-direction:column;min-height:0;min-width:0;background:var(--panel);overflow:hidden}.conv-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--border)}.conv-id{display:flex;align-items:center;gap:12px;min-width:0;overflow:hidden}.conv-name{font-size:var(--text-md);font-weight:600;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv-status{font-size:var(--text-xs);color:var(--fg-3);display:flex;align-items:center;gap:6px;margin-top:2px}.conv-dot{width:6px;height:6px;border-radius:50%}.conv-actions{display:flex;gap:6px;align-items:center;flex-shrink:0}.call-btn{display:inline-flex;align-items:center;gap:6px;padding:0 12px;height:34px;border-radius:8px;background:#16a34a;color:#fff;border:1px solid #15803d;font:600 12px/1 var(--font);letter-spacing:.02em;cursor:pointer;box-shadow:0 1px #0000000a,0 0 #16a34a66;transition:.15s}.call-btn:hover{background:#15803d;box-shadow:0 1px #0000000a,0 0 0 4px #16a34a2e}.call-btn:active{transform:translateY(1px)}[data-theme=ink] .call-btn{background:#22c55e;border-color:#16a34a;color:#052e16}[data-theme=ink] .call-btn:hover{background:#16a34a;color:#fff}.call-btn-round{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;cursor:pointer;background:#16a34a;color:#fff;border:1px solid #15803d;box-shadow:0 1px #0000000a,0 0 #16a34a66;transition:.15s;margin-left:2px}.call-btn-round:hover{background:#15803d;box-shadow:0 1px #0000000a,0 0 0 4px #16a34a33}.call-btn-round:active{transform:translateY(1px)}[data-theme=ink] .call-btn-round{background:#22c55e;border-color:#16a34a;color:#052e16}[data-theme=ink] .call-btn-round:hover{background:#16a34a;color:#fff}.conv-body{flex:1;overflow:auto;padding:16px 18px;display:flex;flex-direction:column;gap:8px;background:var(--bg)}.conv-body::-webkit-scrollbar{width:6px}.conv-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.conv-day{text-align:center;margin:4px 0 8px}.conv-day span{font-size:var(--text-2xs);color:var(--fg-3);letter-spacing:.08em;text-transform:uppercase;padding:3px 10px;background:var(--bg-2);border-radius:10px;font-weight:600}.conv-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--fg-3);font-size:var(--text-md)}.bubble-row{display:flex;gap:8px;max-width:80%}.bubble-row.me{align-self:flex-end;flex-direction:row-reverse}.b-av{width:24px;height:24px;border-radius:50%;background:var(--bg-3);border:1px solid var(--border);display:grid;place-items:center;font-size:var(--text-2xs);font-weight:700;color:var(--fg-2);font-family:var(--font-mono);flex-shrink:0;align-self:flex-end}.bubble{padding:9px 13px;border-radius:14px;font-size:var(--text-md);line-height:1.5;position:relative}.b-them{background:var(--panel-2);border:1px solid var(--border);border-bottom-left-radius:4px}.b-me{background:var(--accent);color:var(--accent-ink);border-bottom-right-radius:4px}.b-time{font-size:var(--text-2xs);opacity:.7;margin-top:3px;font-family:var(--font-mono)}.conv-quick{display:flex;gap:6px;padding:8px 14px;overflow-x:auto;border-top:1px solid var(--border);background:var(--panel)}.conv-quick::-webkit-scrollbar{display:none}.quick-chip{flex-shrink:0;padding:5px 10px;border-radius:14px;border:1px solid var(--border);background:var(--panel-2);color:var(--fg-2);font-size:var(--text-xs);cursor:pointer;font-family:inherit;white-space:nowrap}.quick-chip:hover{border-color:var(--border-strong);color:var(--fg)}.conv-input{display:flex;gap:8px;padding:12px 14px;border-top:1px solid var(--border);align-items:center}.conv-input input{flex:1;background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:10px 14px;color:var(--fg);font-family:inherit;font-size:var(--text-md);outline:none}.conv-input input:focus{border-color:var(--border-strong)}.conv-input button[type=submit]{padding:9px 12px}.conv-input button[type=submit]:disabled{opacity:.4;cursor:not-allowed}.lang-toggle{height:28px;min-width:36px;padding:0 10px;border-radius:8px;background:var(--panel);border:1px solid var(--border);color:var(--fg-2);font:600 11px/1 var(--font-mono);letter-spacing:.04em;cursor:pointer;transition:.15s}.lang-toggle:hover{background:var(--bg-2);color:var(--fg);border-color:var(--border-strong)}.theme-toggle{background:none;border:0;padding:0;cursor:pointer;display:grid;place-items:center}.tt-track{position:relative;width:52px;height:28px;border-radius:14px;background:var(--bg-2);border:1px solid var(--border);display:flex;align-items:center;transition:.18s}.tt-thumb{position:absolute;width:22px;height:22px;border-radius:50%;background:var(--panel);border:1px solid var(--border-strong);display:grid;place-items:center;color:var(--fg-2);transition:transform .18s cubic-bezier(.4,0,.2,1),background .18s,color .18s}.tt-track.ink .tt-thumb{transform:translate(2px);background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.tt-track.paper .tt-thumb{transform:translate(26px);background:var(--panel);color:#c68a1a;border-color:var(--border-strong)}.accent-picker{display:flex;gap:5px;padding:5px;background:var(--bg-2);border:1px solid var(--border);border-radius:9px}.ap-swatch{width:22px;height:22px;border-radius:6px;border:2px solid transparent;cursor:pointer;padding:0;transition:.12s;outline:none}.ap-swatch:hover{transform:scale(1.08)}.ap-swatch.on{border-color:var(--fg);box-shadow:0 0 0 2px var(--bg-2)}.shimmer{background:linear-gradient(90deg,var(--bg-2) 0%,var(--bg-3) 50%,var(--bg-2) 100%);background-size:200% 100%;animation:shim 1.4s linear infinite}@keyframes shim{0%{background-position:200% 0}to{background-position:-200% 0}}.mobile-stage{flex:1;display:grid;grid-template-columns:minmax(280px,1fr) auto;gap:48px;padding:48px 56px;overflow-y:auto;background:radial-gradient(circle at 20% -10%,var(--accent-soft) 0%,transparent 50%),radial-gradient(circle at 90% 90%,rgba(124,92,255,.05) 0%,transparent 55%),var(--bg);align-items:center}.mobile-stage-info{max-width:440px}.mobile-stage-eyebrow{font:600 11px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}.mobile-stage-title{font:600 38px/1.1 Geist,ui-sans-serif,sans-serif;letter-spacing:-.02em;color:var(--fg);margin:0 0 14px}.mobile-stage-sub{font-size:var(--text-md);line-height:1.6;color:var(--fg-3);margin:0 0 20px}.mobile-stage-chips{display:flex;flex-wrap:wrap;gap:6px}.m-stage-chip{padding:5px 11px;border-radius:999px;background:var(--panel);border:1px solid var(--border);font:500 11.5px/1.2 var(--font-mono);color:var(--fg-3);letter-spacing:.02em}.mobile-device{width:390px;height:830px;border-radius:50px;background:#0a0c0f;padding:14px;flex-shrink:0;position:relative;box-shadow:0 50px 100px -30px #0009,0 24px 48px -16px #00000073,0 0 0 1px #ffffff0f inset,0 0 0 8px #1a1d22}.mobile-notch{position:absolute;top:14px;left:50%;transform:translate(-50%);width:120px;height:34px;border-radius:0 0 22px 22px;background:#0a0c0f;z-index:2}.mobile-screen{--mob-bg:var(--bg);--mob-bg-2:var(--bg-2);--mob-bg-3:var(--bg-3);--mob-panel:var(--panel);--mob-panel-2:var(--panel-2);--mob-border:var(--border);--mob-fg:var(--fg);--mob-fg-2:var(--fg-2);--mob-fg-3:var(--fg-3);--mob-fg-4:var(--fg-4);--mob-accent:var(--accent);--mob-accent-soft:var(--accent-soft);--mob-ok:var(--ok);--mob-warn:var(--warn);--mob-danger:var(--danger);width:100%;height:100%;border-radius:38px;overflow:hidden;background:var(--mob-bg);color:var(--mob-fg);position:relative;display:flex;flex-direction:column}.m-status-bar{height:44px;padding:8px 22px 0 28px;display:flex;align-items:center;justify-content:space-between;font:600 15px/1 Geist,sans-serif;letter-spacing:-.01em;color:var(--mob-fg);flex-shrink:0}.m-status-icons{display:flex;align-items:center;gap:4px;color:var(--mob-fg)}.m-battery{display:inline-block;width:22px;height:10px;border:1px solid var(--mob-fg);border-radius:2px;position:relative;margin-left:2px}.m-battery:after{content:"";position:absolute;right:-3px;top:3px;width:1.5px;height:4px;background:var(--mob-fg);border-radius:0 1px 1px 0}.m-battery-fill{display:block;width:75%;height:100%;background:var(--mob-fg);border-radius:1px}.m-brand-bar{display:flex;align-items:center;gap:10px;padding:6px 20px 12px;flex-shrink:0;border-bottom:1px solid var(--mob-border);background:var(--mob-bg)}.m-brand-logo{width:30px;height:30px;border-radius:9px;background:#0a0c0f;color:var(--mob-accent);display:grid;place-items:center;flex-shrink:0;box-shadow:0 3px 10px -3px var(--mob-accent)}.m-brand-name{font:600 15px/1 Geist,ui-sans-serif,sans-serif;letter-spacing:-.01em;color:var(--mob-fg);flex:1}.m-content{flex:1;overflow-y:auto;padding:8px 20px 100px;display:flex;flex-direction:column;gap:14px;color:var(--mob-fg)}.m-content::-webkit-scrollbar{display:none}.m-content>*{flex-shrink:0}.m-pad{height:20px;flex-shrink:0}.m-page-head{display:flex;justify-content:space-between;align-items:flex-start;padding:14px 2px 4px;gap:12px}.m-page-head-text{flex:1;min-width:0}.m-page-title{font:700 28px/1.05 Geist,sans-serif;letter-spacing:-.025em;color:var(--mob-fg);margin:0}.m-page-sub-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:4px}.m-page-sub{font-size:var(--text-md);color:var(--mob-fg-3)}.m-connected{display:inline-flex;align-items:center;gap:5px;font:600 11.5px/1 Geist,sans-serif;color:var(--mob-ok);padding:3px 8px;background:#2a8f5f1f;border-radius:999px}[data-theme=ink] .m-connected{background:#5ee3a124}.m-conn-dot{width:6px;height:6px;border-radius:50%;background:var(--mob-ok);box-shadow:0 0 8px var(--mob-ok)}.m-driver-avatar{width:42px;height:42px;flex-shrink:0;border-radius:50%;background:var(--mob-bg-3);border:1px solid var(--mob-border);color:var(--mob-fg);display:grid;place-items:center;font:600 13px/1 var(--font-mono);cursor:pointer;position:relative;padding:0;transition:.15s}.m-driver-avatar:hover{border-color:var(--mob-accent);background:var(--mob-accent-soft);color:var(--mob-accent)}.m-driver-avatar:active{transform:scale(.95)}.m-driver-dot{position:absolute;right:-1px;bottom:-1px;width:11px;height:11px;border-radius:50%;background:var(--mob-ok);border:2px solid var(--mob-bg)}.m-chip-row{display:flex;gap:8px}.m-chip-stat{flex:1;display:inline-flex;align-items:center;gap:6px;justify-content:center;padding:10px 8px;border-radius:18px;background:var(--mob-panel);border:1px solid var(--mob-border);font:500 13px/1 Geist,sans-serif;color:var(--mob-fg-2)}.m-chip-stat b{color:var(--mob-fg);font:700 16px/1 var(--font-mono);margin-right:2px}.m-chip-dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0}.m-chip-stat.done{color:var(--mob-ok)}.m-chip-stat.active{color:var(--mob-accent)}.m-chip-stat.next{color:var(--mob-warn)}.m-btn-row{display:flex;gap:10px}.m-action-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:54px;padding:0 14px;border-radius:16px;background:var(--mob-panel);border:1px solid var(--mob-border);color:var(--mob-fg);font:600 14px/1.15 Geist,sans-serif;cursor:pointer;transition:.15s}.m-action-btn:active{transform:scale(.97)}.m-action-btn.primary{background:var(--mob-accent);border-color:var(--mob-accent);color:#fff}.m-action-btn.on{background:var(--mob-accent-soft);border-color:var(--mob-accent);color:var(--mob-accent)}.m-action-btn.green{background:#16a34a;border-color:#16a34a;color:#fff}.m-action-btn.red{background:#dc2626;border-color:#dc2626;color:#fff}.m-demo-btn{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 14px;border-radius:14px;background:var(--mob-panel);border:1px solid var(--mob-border);color:var(--mob-fg);font:600 13.5px/1 Geist,sans-serif;cursor:pointer;transition:.15s}.m-demo-btn.on{color:var(--mob-accent);border-color:var(--mob-accent)}.m-demo-btn svg{color:var(--mob-fg-3)}.m-demo-btn.on svg{color:var(--mob-accent)}.m-map-card{background:var(--mob-panel);border:1px solid var(--mob-border);border-radius:20px;overflow:hidden}.m-map-canvas{width:100%;height:200px;position:relative;background:#1d2a39}.m-map-attrib{position:absolute;left:8px;bottom:6px;font:500 10px/1 Geist,sans-serif;color:#9fa9bb;background:#00000059;padding:3px 6px;border-radius:5px}.m-map-foot{display:flex;align-items:center;gap:10px;padding:14px;border-top:1px solid var(--mob-border)}.m-map-foot-info{flex:1;min-width:0}.m-map-foot-lbl{font-size:var(--text-xs);color:var(--mob-fg-3);text-transform:none}.m-map-foot-val{font:600 16px/1.2 Geist,sans-serif;color:var(--mob-fg);margin-top:2px;letter-spacing:-.01em}.m-route-done{display:flex;align-items:center;gap:14px;padding:14px;border-radius:18px;background:linear-gradient(135deg,var(--mob-accent) 0%,#5a3fd6 100%);color:#fff}.m-route-done-num{font:700 36px/1 var(--font-mono);width:48px;height:48px;border-radius:50%;background:#fff3;display:grid;place-items:center}.m-route-done-title{font:700 14px/1.1 Geist,sans-serif;letter-spacing:.06em}.m-route-done-sub{font-size:var(--text-sm);opacity:.85;margin-top:2px}.m-current-card{flex-shrink:0;background:linear-gradient(160deg,var(--mob-accent-soft) 0%,var(--mob-panel) 65%);border:1px solid var(--mob-accent);border-radius:20px;padding:18px;box-shadow:0 12px 28px -14px var(--mob-accent);position:relative;overflow:hidden}.m-current-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.m-current-tag{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:var(--mob-accent);color:#fff;font:700 10.5px/1 Geist,sans-serif;letter-spacing:.06em;text-transform:uppercase}.m-current-eta{font:600 11.5px/1 var(--font-mono);color:var(--mob-fg-2)}.m-current-num{font:700 11px/1 var(--font-mono);color:var(--mob-accent);letter-spacing:.08em;margin-bottom:6px}.m-current-name{font:700 22px/1.15 Geist,sans-serif;letter-spacing:-.02em;color:var(--mob-fg);margin:0 0 6px}.m-current-addr{font-size:var(--text-md);color:var(--mob-fg-2);line-height:1.45;margin-bottom:10px}.m-current-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.m-meta-chip{display:inline-flex;align-items:center;gap:5px;padding:7px 11px;border-radius:999px;background:var(--mob-panel);border:1px solid var(--mob-border);color:var(--mob-fg-2);font:500 11.5px/1 Geist,ui-sans-serif,sans-serif;text-decoration:none;transition:.15s}.m-meta-chip.link{color:var(--mob-accent);border-color:var(--mob-accent);background:var(--mob-accent-soft);cursor:pointer}.m-meta-chip.link:hover{filter:brightness(.96)}.m-meta-chip.link:active{transform:scale(.97)}.m-slide-wrap{position:relative;height:56px;border-radius:30px;background:var(--mob-panel);border:1px solid var(--mob-border);overflow:hidden;user-select:none;-webkit-user-select:none;touch-action:none}.m-slide-fill{position:absolute;left:0;top:0;bottom:0;width:28px;background:linear-gradient(90deg,var(--mob-accent) 0%,#5a3fd6 100%);border-radius:30px;transition:width .25s}.m-slide-label{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font:600 13px/1 Geist,sans-serif;color:var(--mob-fg-2);letter-spacing:.02em;pointer-events:none;transition:opacity .15s}.m-slide-thumb{position:absolute;left:0;top:0;width:56px;height:56px;border-radius:50%;background:var(--mob-accent);color:#fff;display:flex;align-items:center;justify-content:center;cursor:grab;box-shadow:0 6px 16px -4px var(--mob-accent);z-index:2;will-change:transform}.m-slide-thumb:active{cursor:grabbing}.m-slide-thumb svg:nth-child(2){margin-left:-10px;opacity:.6}.m-stats-card{background:var(--mob-panel);border:1px solid var(--mob-border);border-radius:18px;padding:6px 18px}.m-stats-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;font:600 16px/1 Geist,sans-serif;color:var(--mob-fg);border-bottom:1px solid var(--mob-border)}.m-stats-row:last-child{border-bottom:0}.m-stats-row span{color:var(--mob-fg)}.m-stats-row b{font:700 16px/1 var(--font-mono)}.m-stop-list-card{display:grid;grid-template-columns:36px 1fr auto;gap:12px;align-items:flex-start;background:var(--mob-panel);border:1px solid var(--mob-border);border-radius:18px;padding:14px}.m-stop-list-num{width:32px;height:32px;border-radius:50%;background:var(--mob-accent);color:#fff;display:grid;place-items:center;font:700 13px/1 var(--font-mono)}.m-stop-list-body{min-width:0}.m-stop-list-name{font:600 16px/1.15 Geist,sans-serif;color:var(--mob-fg);margin-bottom:4px;letter-spacing:-.01em}.m-stop-list-addr{font-size:var(--text-sm);color:var(--mob-fg-3);line-height:1.45}.m-stop-list-photo{display:inline-flex;align-items:center;gap:5px;margin-top:10px;font:600 11.5px/1 Geist,sans-serif;color:var(--mob-ok);background:#22c55e24;padding:5px 9px;border-radius:6px}.m-stop-list-status{flex-shrink:0;padding:4px 10px;border-radius:999px;font:700 10px/1.4 Geist,sans-serif;letter-spacing:.08em}.m-stop-list-status.done{background:#2a8f5f24;color:var(--mob-ok)}.m-stop-list-status.current{background:var(--mob-accent-soft);color:var(--mob-accent)}.m-stop-list-status.pending{background:var(--mob-bg-2);color:var(--mob-fg-3)}.m-stop-list-card.done{opacity:.7}.m-stop-list-num.done{background:var(--mob-ok);color:#fff}.m-stop-list-num.current{background:var(--mob-accent);color:#fff}.m-stop-list-num.pending{background:var(--mob-bg-2);color:var(--mob-fg-3)}.m-empty-card{background:var(--mob-panel);border:1px solid var(--mob-border);border-radius:18px;padding:22px}.m-empty-ic{width:44px;height:44px;border-radius:14px;background:var(--mob-accent);color:#fff;display:grid;place-items:center;margin-bottom:14px}.m-empty-title{font:700 20px/1.2 Geist,sans-serif;color:var(--mob-fg);letter-spacing:-.02em;margin:0 0 8px}.m-empty-text{font-size:var(--text-md);line-height:1.55;color:var(--mob-fg-3);margin:0}.m-alert-card{display:grid;grid-template-columns:36px 1fr auto;gap:12px;align-items:flex-start;background:var(--mob-panel);border:1px solid var(--mob-border);border-radius:18px;padding:14px}.m-alert-card.warn{border-left:3px solid var(--mob-warn)}.m-alert-card.info{border-left:3px solid var(--mob-accent)}.m-alert-ic{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:#fff}.m-alert-ic.warn{background:var(--mob-warn)}.m-alert-ic.info{background:var(--mob-accent)}.m-alert-body{min-width:0}.m-alert-title{font:600 15px/1.2 Geist,sans-serif;color:var(--mob-fg);letter-spacing:-.01em}.m-alert-text{font-size:var(--text-sm);color:var(--mob-fg-3);line-height:1.45;margin-top:4px}.m-alert-time{font:500 11px/1 var(--font-mono);color:var(--mob-fg-3);flex-shrink:0}.m-header{display:flex;align-items:center;gap:12px;padding:8px 2px 4px}.m-avatar-lg{width:44px;height:44px;border-radius:14px;background:var(--bg-3);border:1px solid var(--border);display:grid;place-items:center;font:600 13px/1 var(--font-mono);color:var(--fg)}.m-greeting-wrap{flex:1;min-width:0}.m-greeting{font-size:var(--text-md);color:var(--fg-3)}.m-greeting-name{font:600 22px/1.1 Geist,sans-serif;letter-spacing:-.02em;color:var(--fg);margin-top:2px}.m-icon-btn{width:38px;height:38px;border-radius:12px;background:var(--panel);border:1px solid var(--border);display:grid;place-items:center;color:var(--fg-2);cursor:pointer;flex-shrink:0}.m-icon-btn:active{transform:scale(.96)}.m-progress-card{background:linear-gradient(135deg,var(--panel) 0%,var(--panel-2) 100%);border:1px solid var(--border);border-radius:22px;padding:22px 18px;display:flex;flex-direction:column;align-items:center;gap:18px;position:relative;overflow:hidden}.m-progress-card:before{content:"";position:absolute;top:-40px;right:-40px;width:140px;height:140px;background:radial-gradient(circle,var(--accent-soft) 0%,transparent 70%)}.m-progress-ring-wrap{position:relative;width:140px;height:140px}.m-progress-ring{width:100%;height:100%}.m-progress-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.m-progress-num{font:700 36px/1 Geist,sans-serif;letter-spacing:-.03em;color:var(--fg);font-family:var(--font-mono)}.m-progress-num span{font-size:var(--text-xl);color:var(--fg-3);font-weight:500}.m-progress-lbl{font-size:var(--text-2xs);color:var(--fg-3);letter-spacing:.14em;font-weight:600;margin-top:4px}.m-progress-stats{display:flex;align-items:stretch;gap:0;width:100%;padding-top:14px;border-top:1px solid var(--border)}.m-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.m-stat-lbl{font-size:var(--text-2xs);color:var(--fg-3);letter-spacing:.08em;font-weight:600;text-transform:uppercase}.m-stat-val{font:600 17px/1 var(--font-mono);color:var(--fg);letter-spacing:-.01em}.m-stat-val span{font-size:var(--text-xs);color:var(--fg-3);font-weight:500;margin-left:2px}.m-stat-divider{width:1px;background:var(--border);margin:4px 0}.m-card{background:var(--panel);border:1px solid var(--border);border-radius:22px;padding:18px;position:relative}.m-current{background:linear-gradient(160deg,var(--accent-soft) 0%,var(--panel) 60%);border-color:var(--accent);box-shadow:0 8px 24px -12px var(--accent)}.m-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.m-card-time{font:500 11px/1 var(--font-mono);color:var(--fg-3)}.m-badge-accent{background:var(--accent);color:var(--accent-ink)}.m-badge-ok{background:#2a8f5f26;color:var(--ok)}.m-pulse-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-ink);box-shadow:0 0 0 0 currentColor;animation:pulse 1.6s infinite}.m-stop-num{font:700 11px/1 var(--font-mono);color:var(--accent);letter-spacing:.06em;margin-bottom:6px}.m-stop-name{font:600 22px/1.15 Geist,sans-serif;letter-spacing:-.02em;color:var(--fg);margin:0 0 4px}.m-stop-addr{font-size:var(--text-md);color:var(--fg-2);line-height:1.4;margin-bottom:10px}.m-stop-meta{display:flex;gap:14px;font-size:var(--text-xs);color:var(--fg-3);margin-bottom:14px;flex-wrap:wrap}.m-stop-meta span{display:inline-flex;align-items:center;gap:4px}.m-stop-actions{display:flex;gap:8px}.m-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;height:44px;padding:0 12px;border-radius:14px;background:var(--panel);border:1px solid var(--border);color:var(--fg);font:600 13px/1 Geist,sans-serif;cursor:pointer;transition:.15s}.m-btn:active{transform:scale(.97)}.m-btn-primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);box-shadow:0 6px 16px -6px var(--accent)}.m-btn:not(.m-btn-primary):last-child{flex:0;width:44px;padding:0}.m-section-head{display:flex;justify-content:space-between;align-items:baseline;padding:4px 2px;margin-top:8px}.m-section-head h4{font:600 12px/1 Geist,sans-serif;color:var(--mob-fg-3);margin:0;letter-spacing:.08em;text-transform:uppercase}.m-section-head span{font:500 11px/1 var(--font-mono);color:var(--mob-fg-3)}.m-upnext-scroll{display:flex;gap:10px;overflow-x:auto;margin:0 -18px;padding:0 18px 4px;scroll-snap-type:x mandatory}.m-upnext-scroll::-webkit-scrollbar{display:none}.m-upnext-card{flex:0 0 200px;background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:14px;scroll-snap-align:start}.m-upnext-n{font:600 10px/1 var(--font-mono);color:var(--accent);letter-spacing:.06em;margin-bottom:8px}.m-upnext-name{font:600 14px/1.2 Geist,sans-serif;color:var(--fg);letter-spacing:-.01em;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-upnext-addr{font-size:var(--text-xs);color:var(--fg-3);line-height:1.4;margin-bottom:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-upnext-foot{display:flex;gap:10px;font-size:var(--text-2xs);color:var(--fg-3)}.m-upnext-foot span{display:inline-flex;align-items:center;gap:4px}.m-done-list{display:flex;flex-direction:column;gap:6px;background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:8px}.m-done-row{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:6px 8px}.m-done-check{width:26px;height:26px;border-radius:50%;background:#2a8f5f26;color:var(--ok);display:grid;place-items:center}.m-done-name{font-size:var(--text-sm);font-weight:600;color:var(--fg);letter-spacing:-.005em}.m-done-addr{font-size:var(--text-xs);color:var(--fg-3);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-done-time{font:500 11px/1 var(--font-mono);color:var(--fg-3)}.m-day{text-align:center;margin:6px 0}.m-day span{font:600 10px/1 var(--font-mono);color:var(--mob-fg-3);letter-spacing:.14em;padding:5px 10px;background:var(--mob-panel);border:1px solid var(--mob-border);border-radius:999px}.m-chat{flex:1;display:flex;flex-direction:column;gap:8px;padding:4px 0;overflow-y:auto;min-height:0}.m-chat::-webkit-scrollbar{display:none}.m-bubble-row{display:flex;gap:8px;align-items:flex-end}.m-bubble-row.me{justify-content:flex-end}.m-bubble-av{width:24px;height:24px;border-radius:50%;background:var(--mob-bg-3);border:1px solid var(--mob-border);display:grid;place-items:center;font:600 9px/1 var(--font-mono);color:var(--mob-fg-2);flex-shrink:0}.m-bubble{max-width:78%;padding:9px 12px;border-radius:18px;font-size:var(--text-md);line-height:1.45}.m-bubble.b-them{background:var(--mob-panel);border:1px solid var(--mob-border);color:var(--mob-fg);border-bottom-left-radius:6px}.m-bubble.b-me{background:var(--mob-accent);color:#fff;border-bottom-right-radius:6px}.m-bubble-time{font-size:var(--text-2xs);opacity:.65;margin-top:3px;font-family:var(--font-mono)}.m-quick-row{display:flex;gap:6px;overflow-x:auto;margin:0 -18px;padding:8px 18px}.m-quick-row{display:flex;gap:6px;overflow-x:auto;margin:0 -18px;padding:8px 18px;flex-shrink:0}.m-quick-row::-webkit-scrollbar{display:none}.m-quick-chip{flex-shrink:0;padding:8px 13px;background:var(--mob-panel);border:1px solid var(--mob-border);border-radius:999px;font:500 12px/1.2 Geist,sans-serif;color:var(--mob-fg);white-space:nowrap;cursor:pointer}.m-quick-chip:hover{background:var(--mob-bg-2);border-color:var(--mob-accent);color:var(--mob-accent)}.m-input-row{display:flex;gap:6px;align-items:center;padding:8px 0 0;border-top:1px solid var(--mob-border);margin-top:4px;flex-shrink:0}.m-input-row input{flex:1;height:40px;border-radius:20px;border:1px solid var(--mob-border);background:var(--mob-panel);padding:0 16px;color:var(--mob-fg);font-size:var(--text-md);outline:0;font-family:inherit}.m-input-icon,.m-input-send{width:40px;height:40px;border-radius:50%;border:0;cursor:pointer;display:grid;place-items:center;flex-shrink:0}.m-input-icon{background:var(--mob-panel);border:1px solid var(--mob-border);color:var(--mob-fg-2)}.m-input-send{background:var(--mob-accent);color:#fff}.m-input-send:disabled{background:var(--mob-bg-3);color:var(--mob-fg-4);cursor:not-allowed}.m-input-icon,.m-input-send{width:40px;height:40px;border-radius:50%;border:0;cursor:pointer;display:grid;place-items:center}.m-input-icon{background:var(--panel);border:1px solid var(--border);color:var(--fg-2)}.m-input-send{background:var(--accent);color:var(--accent-ink)}.m-profile-card{background:var(--mob-panel);border:1px solid var(--mob-border);border-radius:18px;padding:14px;display:flex;flex-direction:column;gap:14px}.m-profile-brand{display:flex;align-items:center;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--mob-border)}.m-profile-logo{width:36px;height:36px;border-radius:10px;background:#0a0c0f;color:var(--mob-accent);display:grid;place-items:center;box-shadow:0 4px 12px -4px var(--mob-accent)}.m-profile-brand-name{font:600 17px/1 Geist,ui-sans-serif,sans-serif;letter-spacing:-.01em;color:var(--mob-fg);flex:1}.m-profile-hero-row{display:flex;align-items:center;gap:14px}.m-profile-info{flex:1;min-width:0}.m-icon-btn{width:38px;height:38px;border-radius:12px;background:var(--mob-panel);border:1px solid var(--mob-border);color:var(--mob-fg-2);display:grid;place-items:center;cursor:pointer;flex-shrink:0;padding:0}.m-profile-hero{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 0 8px}.m-avatar-xl{width:76px;height:76px;border-radius:24px;background:var(--mob-bg-3);border:1px solid var(--mob-border);display:grid;place-items:center;font:600 22px/1 var(--font-mono);color:var(--mob-fg)}.m-profile-name{font:700 22px/1 Geist,sans-serif;letter-spacing:-.02em;color:var(--mob-fg);margin:6px 0 2px}.m-profile-sub{font-size:var(--text-sm);color:var(--mob-fg-3);font-family:var(--font-mono);margin-bottom:6px}.m-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:999px;font:600 10px/1 Geist,sans-serif;letter-spacing:.06em;text-transform:uppercase}.m-badge-ok{background:#22c55e2e;color:var(--mob-ok)}.m-pulse-dot{width:6px;height:6px;border-radius:50%;background:currentColor;animation:pulse 1.6s infinite}.m-kpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:6px}.m-kpi{background:var(--mob-panel);border:1px solid var(--mob-border);border-radius:18px;padding:14px}.m-kpi-lbl{font-size:var(--text-2xs);color:var(--mob-fg-3);letter-spacing:.08em;font-weight:600;text-transform:uppercase}.m-kpi-val{font:700 26px/1.05 var(--font-mono);color:var(--mob-fg);letter-spacing:-.02em;margin-top:8px}.m-kpi-val span{font-size:var(--text-md);color:var(--mob-fg-3);font-weight:500;margin-left:2px}.m-kpi-sub{font-size:var(--text-2xs);color:var(--mob-fg-3);margin-top:4px}.m-quick-list{display:flex;flex-direction:column;gap:4px;background:var(--mob-panel);border:1px solid var(--mob-border);border-radius:18px;padding:6px}.m-quick-action{width:100%;display:flex;align-items:center;gap:12px;padding:13px 12px;border-radius:14px;background:transparent;border:0;color:var(--mob-fg);font:500 13.5px/1.2 Geist,sans-serif;text-align:left;cursor:pointer}.m-quick-action:active{background:var(--mob-bg-3)}.m-quick-action>span{flex:1}.m-quick-action.danger{color:var(--mob-danger)}.m-quick-action svg{color:var(--mob-fg-3)}.m-quick-action.danger svg{color:var(--mob-danger)}.m-tab-bar{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(5,1fr);background:var(--mob-bg);border-top:1px solid var(--mob-border);padding:8px 4px 22px}.m-tab-bar.three{grid-template-columns:repeat(3,1fr);padding:10px 24px 22px}.m-tab-bar.four{grid-template-columns:repeat(4,1fr);padding:10px 12px 22px}.m-tab{background:transparent;border:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 2px 2px;color:var(--mob-fg-4);font:500 10.5px/1.1 Geist,sans-serif;position:relative}.m-tab.on{color:var(--mob-accent)}.m-tab.on:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:36px;height:32px;border-radius:8px;background:#7c5cff1f;z-index:-1}.m-tab-dot{position:absolute;top:5px;right:24%;width:7px;height:7px;border-radius:50%;background:var(--mob-danger);border:2px solid var(--mob-bg)}.m-home-indicator{position:absolute;left:50%;bottom:6px;transform:translate(-50%);width:130px;height:4px;border-radius:3px;background:var(--mob-fg);opacity:.5;pointer-events:none}.m-tab-avatar{padding-top:4px!important}.m-tab-av-circle{position:relative;width:28px;height:28px;border-radius:50%;background:var(--mob-bg-3);border:1px solid var(--mob-border);color:var(--mob-fg);display:grid;place-items:center;font:600 10px/1 var(--font-mono)}.m-tab.on .m-tab-av-circle{background:var(--mob-accent);color:#fff;border-color:var(--mob-accent)}.m-tab-av-dot{position:absolute;right:-1px;bottom:-1px;width:9px;height:9px;border-radius:50%;background:var(--mob-ok);border:2px solid var(--mob-bg)}.m-photo-flow{position:absolute;top:0;right:0;bottom:0;left:0;z-index:75;background:var(--mob-bg);color:var(--mob-fg);display:flex;flex-direction:column;padding:44px 18px 22px;animation:mSheetUp .25s cubic-bezier(.32,.72,0,1)}.m-photo-head{display:flex;align-items:center;gap:12px;padding:8px 0 14px}.m-photo-back{width:38px;height:38px;border-radius:12px;background:var(--mob-panel);border:1px solid var(--mob-border);color:var(--mob-fg);display:grid;place-items:center;cursor:pointer;padding:0}.m-photo-head-text{flex:1;min-width:0}.m-photo-eyebrow{font:600 10px/1 var(--font-mono);color:var(--mob-fg-3);letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px}.m-photo-title{font:700 18px/1.1 Geist,sans-serif;letter-spacing:-.01em;color:var(--mob-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-photo-progress{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-radius:14px;background:var(--mob-panel);border:1px solid var(--mob-border);font:600 12px/1 Geist,sans-serif;color:var(--mob-fg);margin-bottom:14px}.m-photo-progress .ok{color:var(--mob-ok)}.m-photo-progress .warn{color:var(--mob-warn)}.m-photo-grid{flex:1;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,1fr);gap:10px;min-height:0}.m-photo-grid>:first-child{grid-column:1 / -1}.m-photo-cell{position:relative;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1px solid var(--mob-border);background:var(--mob-bg-2);color:var(--mob-fg-3);cursor:pointer;padding:14px;font:600 11px/1.3 Geist,sans-serif}.m-photo-cell.empty{border-style:dashed}.m-photo-cell.empty.next{border-style:solid;border-color:var(--mob-accent);color:var(--mob-accent);background:var(--mob-accent-soft)}.m-photo-cell.empty:not(.next):disabled{opacity:.4;cursor:default}.m-photo-emoji{font-size:48px;line-height:1}.m-photo-label{font:600 11px/1.3 Geist,sans-serif;letter-spacing:.02em}.m-photo-slot-num{font:600 14px/1 var(--font-mono);color:var(--mob-fg-4)}.m-photo-idx{position:absolute;left:10px;top:10px;width:24px;height:24px;border-radius:50%;background:#0006;color:#fff;display:grid;place-items:center;font:700 11px/1 var(--font-mono);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.m-photo-remove{position:absolute;right:8px;top:8px;width:26px;height:26px;border-radius:50%;background:#00000080;border:0;color:#fff;cursor:pointer;display:grid;place-items:center;font-size:var(--text-xl);line-height:1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.m-photo-foot{display:flex;gap:10px;padding-top:14px}.m-photo-cancel{flex:0 0 auto;padding:0 22px;height:52px;border-radius:16px;background:var(--mob-panel);border:1px solid var(--mob-border);color:var(--mob-fg);font:600 14px/1 Geist,sans-serif;cursor:pointer}.m-photo-confirm{flex:1;height:52px;border-radius:16px;background:var(--mob-accent);border:1px solid var(--mob-accent);color:#fff;font:600 14px/1 Geist,sans-serif;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 8px 20px -6px var(--mob-accent)}.m-photo-confirm.disabled{background:var(--mob-bg-3);border-color:var(--mob-border);color:var(--mob-fg-4);box-shadow:none;cursor:not-allowed}@keyframes mSheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes mSheetFade{0%{opacity:0}to{opacity:1}}.m-sheet-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:70;background:#0006;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center;animation:mSheetFade .15s ease-out}.m-sheet{width:100%;max-height:85%;background:var(--mob-bg);border-radius:24px 24px 0 0;padding:8px 18px 100px;display:flex;flex-direction:column;gap:12px;overflow-y:auto;box-shadow:0 -20px 40px #00000040;animation:mSheetUp .25s cubic-bezier(.32,.72,0,1)}.m-sheet::-webkit-scrollbar{display:none}.m-sheet-grabber{width:38px;height:4px;border-radius:2px;background:var(--mob-fg-4);margin:6px auto 8px;flex-shrink:0}.m-sheet-brand{display:flex;align-items:center;gap:10px;justify-content:center;padding:8px 0 14px;border-bottom:1px solid var(--mob-border);margin-bottom:10px}.m-sheet-logo{width:36px;height:36px;border-radius:10px;background:#0a0c0f;display:grid;place-items:center;color:var(--mob-accent);box-shadow:0 4px 12px -4px var(--mob-accent)}.m-sheet-brand-name{font:600 18px/1 Geist,ui-sans-serif,sans-serif;letter-spacing:-.01em;color:var(--mob-fg)}.m-quick-action.primary{color:var(--mob-accent)}.m-quick-action.primary svg{color:var(--mob-accent)}.m-lang-chips{display:flex;gap:8px}.m-lang-chips>button{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 4px;border-radius:14px;background:var(--mob-panel);border:1px solid var(--mob-border);color:var(--mob-fg-2);cursor:pointer;font:500 11.5px/1.2 Geist,ui-sans-serif,sans-serif;position:relative;transition:.15s}.m-lang-chips>button:active{transform:scale(.97)}.m-lang-chips>button.on{background:var(--mob-accent-soft);border-color:var(--mob-accent);color:var(--mob-accent)}.m-lang-flag{width:32px;height:32px;border-radius:50%;background:var(--mob-bg-3);display:grid;place-items:center;font:600 10.5px/1 var(--font-mono);color:var(--mob-fg);border:1px solid var(--mob-border)}.m-lang-chips>button.on .m-lang-flag{background:var(--mob-accent);color:#fff;border-color:var(--mob-accent)}.m-lang-chips>button .ic{position:absolute;top:6px;right:6px;color:var(--mob-accent)}.m-sheet-head{display:flex;gap:14px;align-items:flex-start;padding:6px 2px 8px;position:relative}.m-sheet-info{flex:1;min-width:0;padding-top:6px}.m-sheet-name{font:700 22px/1.1 Geist,sans-serif;letter-spacing:-.02em;color:var(--mob-fg);margin:0 0 6px}.m-sheet-sub{font-size:var(--text-sm);color:var(--mob-fg-3);font-family:var(--font-mono)}.m-sheet-close{position:absolute;top:0;right:0;width:34px;height:34px;border-radius:50%;background:var(--mob-bg-3);border:0;color:var(--mob-fg-2);cursor:pointer;display:grid;place-items:center;font-size:var(--text-2xl);line-height:1;font-weight:300}.m-sheet-close:hover{background:var(--mob-border);color:var(--mob-fg)}@media(max-width:1200px){.mobile-stage{grid-template-columns:1fr;padding:32px 24px;text-align:center}.mobile-stage-info{max-width:none}.mobile-stage-chips{justify-content:center}}.customer-track-shell{min-height:100vh;background:#f7f4ed;display:grid;place-items:center;padding:24px;color:#1e1d1a}.customer-track-card{width:min(920px,100%);background:#fffdf8;border:1px solid #ded7ca;border-radius:22px;box-shadow:0 24px 70px #2a231824;padding:22px}.customer-track-card.compact{width:min(520px,100%);text-align:center}.customer-track-header{display:flex;gap:18px;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.customer-track-logo{width:54px;height:54px;object-fit:contain;border-radius:14px;background:#fff;border:1px solid #e5dece;box-shadow:0 8px 24px #683edc24;margin-bottom:12px}.customer-track-header h1,.customer-track-card.compact h1{margin:0 0 6px;font:800 30px/1.05 var(--font-sans);letter-spacing:0}.customer-track-header p{margin:0;color:#777267;font:500 15px/1.4 var(--font-sans)}.customer-track-language{display:flex;flex-direction:column;gap:6px;color:#777267;font:700 11px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.customer-track-language select{height:40px;border-radius:10px;border:1px solid #ded7ca;background:#fffdf8;padding:0 12px;font:700 14px/1 var(--font-sans);color:#1e1d1a}.customer-track-map{height:min(54vh,430px);min-height:300px;border-radius:18px;overflow:hidden;border:1px solid #ded7ca;background:#e8e5df;touch-action:pan-y;overscroll-behavior:contain}.customer-track-map .maplibregl-canvas,.customer-track-map .maplibregl-canvas-container{touch-action:pan-y!important}.customer-track-marker{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;min-width:40px;padding:0;cursor:default;color:#fff;font:900 13px/1 var(--font-mono);border:4px solid rgba(255,255,255,.9);box-shadow:0 9px 20px #241e1438;transform:none}.customer-track-marker--driver{background:#6d3fd6}.customer-track-marker--destination{background:#169865}.customer-track-details{display:grid;grid-template-columns:1fr 1.4fr .7fr;gap:12px;margin-top:14px}.customer-track-details>div{border:1px solid #e5dece;border-radius:14px;padding:14px;background:#faf8f2;min-width:0}.customer-track-details span{display:block;margin-bottom:7px;font:800 11px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:#777267}.customer-track-details strong{display:block;font:800 18px/1.15 var(--font-sans);letter-spacing:0;color:#1e1d1a}.customer-track-details small{display:block;margin-top:6px;color:#777267;font:500 13px/1.35 var(--font-sans)}.customer-track-loading{padding:80px 0;text-align:center;color:#777267;font:700 14px/1 var(--font-sans)}.apk-download-card{max-width:760px}.apk-download-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:20px 0;padding:18px;border:1px solid #ded7ca;border-radius:16px;background:#faf8f2}.apk-download-panel strong{display:block;margin-bottom:5px;color:#1e1d1a;font:800 18px/1.15 var(--font-sans)}.apk-download-panel span{display:block;color:#777267;font:700 13px/1.25 var(--font-mono)}.apk-download-panel small{display:block;margin-top:7px;color:#777267;font:700 12px/1.35 var(--font-mono)}.apk-download-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:12px;background:#6d3fd6;color:#fff;text-decoration:none;font:800 14px/1 var(--font-sans);white-space:nowrap;box-shadow:0 10px 24px #6d3fd633}.apk-download-button:hover{background:#5d31c4}@media(max-width:720px){.customer-track-shell{padding:12px;place-items:start center}.customer-track-card{padding:16px;border-radius:18px}.customer-track-header{display:block}.customer-track-language{margin-top:14px}.customer-track-map{height:44vh;min-height:250px;max-height:360px}.customer-track-details{grid-template-columns:1fr}.apk-download-panel{align-items:stretch;flex-direction:column}.apk-download-button{width:100%}}@media(max-width:820px){html,body{width:100%;min-width:0;overflow:hidden;height:100%}.app{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);height:100dvh;min-width:0;overflow:hidden}.rail{min-width:0;min-height:62px;flex-direction:row;align-items:center;justify-content:flex-start;gap:6px;padding:8px 10px;border-right:0;border-bottom:1px solid var(--border);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.rail::-webkit-scrollbar{display:none}.logo{width:38px;height:38px;flex:0 0 38px}.logo img{width:34px}.rail-divider{width:1px;height:26px;margin:0 6px;flex:0 0 1px}.rail-btn{width:42px;height:42px;flex:0 0 42px}.rail-btn.active:before{left:50%;top:auto;bottom:-8px;width:18px;height:3px;border-radius:3px 3px 0 0;transform:translate(-50%)}.rail-spacer{flex:1 0 12px;min-width:12px}.rail-avatar-wrap{flex:0 0 auto}.user-menu{position:fixed;left:10px;right:10px;top:66px;bottom:auto;min-width:0;width:auto;max-height:calc(100dvh - 82px);overflow:auto;-webkit-overflow-scrolling:touch}.user-submenu{position:static;margin:8px 0 0;min-width:0;width:100%}.user-submenu:before{display:none}.main{min-height:0;overflow:hidden}.topbar{min-height:58px;padding:10px 12px;gap:10px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.topbar::-webkit-scrollbar{display:none}.crumb{min-width:max-content;white-space:nowrap;font-size:var(--text-sm)}.search,.kbd{display:none}.pill-live,.btn{white-space:nowrap}.sub-nav{padding:0 12px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.sub-nav::-webkit-scrollbar{display:none}.sub-nav-tabs{flex:0 0 auto}.sub-nav-filters{flex:0 0 auto;margin-left:8px;padding:8px 0}.sub-nav-filters .task-filter-group{width:auto;flex-wrap:nowrap}.sub-nav-actions{flex:0 0 auto;margin-left:12px;justify-content:flex-start;gap:8px}.page-load-metric,.sub-nav-actions .manual-input-hint{display:none}.sub-tab{flex:0 0 auto;padding:12px}.content{display:block;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch}.dispatch,.dispatch-body,.empty-state,.drivers-view,.stop-history{min-height:auto;overflow:auto;-webkit-overflow-scrolling:touch}.dispatch-body{display:block}.dispatch-bar,.dispatch-bar-slim{padding:10px 12px;overflow-x:auto;-webkit-overflow-scrolling:touch}.dispatch-actions{flex:0 0 auto}.empty-state{justify-content:flex-start;align-items:stretch;padding:12px}.empty-card{min-width:1120px;max-width:none;width:max-content}.empty-state.task-timeline-scroll .empty-card{min-width:0;width:100%;max-width:none}.manual-input{position:sticky;left:0;z-index:3;width:calc(100vw - 54px);min-width:0;max-width:calc(100vw - 54px);background:var(--panel)}.manual-input-head{align-items:stretch;flex-direction:column;gap:10px;padding:10px 0 12px;position:static}.manual-input-head-actions{align-items:center;flex-wrap:wrap;gap:8px 10px;min-width:0;margin-left:0;padding-left:0;position:static;width:100%}.task-filter-group{flex-wrap:wrap;width:100%}.empty-date-btn{min-height:38px}.link-btn-add{min-height:34px;justify-content:center}.home-stop-run-picker.is-open .home-stop-run-options{order:-1}.task-table,.task-row{min-width:var(--task-table-min-width)}.task-filter-group{flex-wrap:nowrap}.stop-history{padding:14px 12px}.stop-history-head{align-items:stretch;flex-direction:column}.stop-history-actions{align-items:stretch;overflow-x:auto;-webkit-overflow-scrolling:touch}.shist-search{min-width:260px;width:100%}.stop-history-table,.shist-row,.shist-row-sep,.shist-row-run-sep{min-width:1180px}.photo-modal-backdrop{padding:10px}.photo-modal{max-height:calc(100dvh - 20px);border-radius:8px}.photo-modal-head{padding:14px 12px;align-items:flex-start}.photo-modal-sub{white-space:normal;overflow-wrap:anywhere}.photo-modal-body{padding:14px 12px}.photo-modal-grid,.photo-modal-grid.count-1,.photo-modal-grid.count-2,.photo-modal-grid.count-3,.photo-modal-grid.count-4,.photo-modal-grid.count-5{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-history-realtime-notice{top:72px;right:12px;width:calc(100vw - 24px)}.drivers-view{padding:16px 12px 22px}.drivers-view .data-table{overflow-x:auto;-webkit-overflow-scrolling:touch}.drivers-view .dt-row-main,.drivers-view .dt-head{min-width:640px}.lt-left{width:100%;max-height:42dvh;border-right:0;border-bottom:1px solid var(--border)}.map-wrap{min-height:58dvh;height:58dvh}.map-card{left:12px;right:12px;top:12px;width:auto;max-width:none}.stops-timeline{padding:10px 12px 14px}}@media(max-width:520px){.photo-modal-grid,.photo-modal-grid.count-1,.photo-modal-grid.count-2,.photo-modal-grid.count-3,.photo-modal-grid.count-4,.photo-modal-grid.count-5{grid-template-columns:1fr}}
