:root{color:#182536;font-synthesis:none;text-rendering:optimizelegibility;--navy:#102a43;--navy-deep:#071b2c;--teal:#00a9c5;--teal-deep:#087b93;--sky:#dff7fb;--ink:#182536;--muted:#617287;--line:#dce5ee;--surface:#fff;--bg:#f5f8fb;--danger:#c0373d;--success:#08735c;--warning:#9b6500;background:#f5f8fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--bg);min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{border:0}a{color:inherit;text-decoration:none}.site-header{justify-content:space-between;align-items:center;max-width:1180px;min-height:76px;margin:auto;padding:0 28px;display:flex}.brand{color:var(--navy);letter-spacing:-.065em;align-items:center;gap:4px;font-size:1.4rem;font-weight:850;display:inline-flex}.brand span{color:var(--teal);font-size:.75rem}.site-header nav{color:var(--muted);align-items:center;gap:22px;font-size:.92rem;font-weight:700;display:flex}.site-header nav a:hover,.text-button:hover{color:var(--teal-deep)}.sign-in-link{border:1px solid var(--line);color:var(--navy);border-radius:9px;padding:9px 15px}.text-button{color:inherit;cursor:pointer;font-weight:inherit;background:0 0;padding:0}.public-shell{max-width:1180px;margin:auto;padding:64px 28px 42px}.hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:center;gap:clamp(40px,8vw,105px);min-height:500px;display:grid}.eyebrow{color:var(--teal-deep);letter-spacing:.115em;text-transform:uppercase;margin:0 0 10px;font-size:.72rem;font-weight:800}.hero-grid h1{max-width:630px;color:var(--navy);letter-spacing:-.065em;margin:0;font-size:clamp(3rem,5.8vw,5.3rem);line-height:.99}.lede{max-width:560px;color:var(--muted);margin:26px 0 0;font-size:1.15rem;line-height:1.65}.actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;min-height:43px;padding:10px 17px;font-weight:800;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.6}.button.primary{background:linear-gradient(130deg, var(--teal), var(--teal-deep));color:#fff;box-shadow:0 9px 22px #008ca433}.button.secondary{border-color:var(--line);color:var(--navy);background:#fff}.button.danger{color:var(--danger);background:#fff5f5;border-color:#f1c5c8}.button.compact{border-radius:7px;min-height:32px;padding:6px 10px;font-size:.78rem}.button.full{width:100%}.map-preview{background:#f3f5ed;border:1px solid #c9e5eb;border-radius:24px;min-height:388px;position:relative;overflow:hidden;box-shadow:0 24px 60px #102a4321}.map-grid{background-image:linear-gradient(23deg,#0000 46%,#d0d7ce 47% 49%,#0000 50%),linear-gradient(120deg,#0000 46%,#d0d7ce 47% 49%,#0000 50%),linear-gradient(#0000 50%,#d0d7ce 51% 52%,#0000 53%);background-size:105px 115px,135px 108px,90px 81px;position:absolute;inset:-25%;transform:rotate(-10deg)}.map-water{background:#b8e8ee;border-radius:47% 0 0 50%;width:61%;height:120%;position:absolute;top:-25%;right:-11%;transform:rotate(13deg)}.map-card{color:var(--navy);background:#ffffffeb;border:1px solid #fffc;border-radius:11px;align-items:center;gap:9px;padding:12px 15px;font-size:.84rem;font-weight:800;display:inline-flex;position:absolute;top:28px;left:26px;box-shadow:0 7px 20px #102a4324}.pulse{background:#10aa72;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 5px #10aa722b}.map-pin{color:#fff;border:3px solid #fff;border-radius:50% 50% 50% 7px;place-items:center;width:42px;height:42px;font-size:.82rem;font-weight:850;display:grid;position:absolute;transform:rotate(-45deg);box-shadow:0 8px 18px #102a4345}.map-pin:first-letter{transform:rotate(45deg)}.pin-one{background:#ef7d45;top:42%;left:27%}.pin-two{background:var(--navy);top:58%;left:50%}.pin-three{background:var(--teal);top:30%;right:20%}.feature-row{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:72px;display:grid}.feature-row article{border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:26px}.feature-row span{color:var(--teal-deep);letter-spacing:.1em;font-size:.75rem;font-weight:850}.feature-row h2{margin:16px 0 9px;font-size:1.12rem}.feature-row p{color:var(--muted);margin:0;font-size:.92rem;line-height:1.55}.need-page{background:radial-gradient(circle at 15% 5%, #e2f9fc, transparent 34%), var(--bg);place-items:start center;min-height:calc(100vh - 76px);padding:48px 24px;display:grid}.need-card{border:1px solid var(--line);background:var(--surface);border-radius:18px;width:min(100%,640px);padding:clamp(26px,5vw,45px);box-shadow:0 20px 50px #102a431a}.need-card h1{color:var(--navy);letter-spacing:-.06em;margin:0;font-size:clamp(2.25rem,5vw,3.5rem);line-height:1}.need-card .lede{margin-top:16px}.need-auth,.need-form{margin-top:28px}.need-auth p{color:var(--muted);line-height:1.6}.need-auth label,.need-form label{color:var(--navy);gap:7px;margin-top:16px;font-size:.8rem;font-weight:800;display:grid}.need-form small{color:var(--muted);font-weight:600}.need-form textarea{resize:vertical}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-grid label{min-width:0}.notice{color:#28576a;background:#effcff;border:1px solid #bfe8ef;border-radius:9px;margin:0;padding:12px 14px;font-size:.86rem;line-height:1.5}.need-form .consent{color:var(--muted);align-items:flex-start;gap:9px;font-size:.82rem;font-weight:600;line-height:1.5;display:flex}.need-form .consent input{width:auto;min-height:0;margin-top:3px}.explore-page{max-width:1180px;margin:auto;padding:28px 28px 48px}.live-map-section{background:var(--surface);border:1px solid #c9e5eb;border-radius:18px;overflow:hidden;box-shadow:0 18px 42px #102a431a}.live-map-meta{min-height:52px;color:var(--muted);align-items:center;gap:9px;padding:12px 16px;font-size:.82rem;display:flex}.live-map-meta strong{color:var(--navy)}.live-map-meta span:last-child{margin-left:auto}.live-drivers-map{width:100%;height:min(58vh,620px);min-height:390px;position:relative}.explore-page.map-mode{max-width:none;margin:0;padding:0}.live-map-section.is-expanded{z-index:30;border:0;border-radius:0;flex-direction:column;height:100vh;display:flex;position:fixed;inset:0}.live-map-section.is-expanded .live-drivers-map{flex:1;height:auto;min-height:0}.live-map-section.is-expanded .maplibregl-ctrl-bottom-right,.live-map-section.is-expanded .maplibregl-ctrl-bottom-left{margin-bottom:12px}.live-map-unavailable{color:#77501b;background:#fff9ed;border:1px solid #f1c78d;border-radius:14px;margin-top:28px;padding:22px}.live-map-unavailable p{margin:7px 0 0}.live-map-unavailable code{background:#fff;border-radius:4px;padding:2px 4px}.live-vehicle-marker{cursor:pointer;width:36px;height:36px;opacity:var(--marker-opacity,1);background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:relative}.vehicle-ring{background:#fff;border:2px solid #fff;border-radius:50%;place-items:center;width:32px;height:32px;display:grid;box-shadow:0 2px 7px #15323d57}.vehicle-ring.full{border-color:var(--danger)}.vehicle-disc{background:var(--vehicle-color);width:26px;height:26px;color:var(--navy);border-radius:50%;place-items:center;display:grid}.vehicle-glyph{fill:currentColor;width:21px;height:21px}.vehicle-direction{left:var(--direction-left);top:var(--direction-top);background:var(--navy);pointer-events:none;border:1.5px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute}.vehicle-direction.full{background:var(--danger)}.vehicle-plate-type{z-index:2;background:var(--plate-color,var(--navy));color:#fff;letter-spacing:.02em;pointer-events:none;border:1px solid #fff;border-radius:4px;min-width:14px;padding:0 3px;font-size:8px;font-weight:800;line-height:12px;position:absolute;top:-3px;right:-8px}.live-vehicle-marker.selected .vehicle-ring{outline:4px solid #00a9c559}.map-selection{border-top:1px solid var(--line);min-height:54px;color:var(--muted);flex-wrap:wrap;align-items:center;gap:9px;padding:10px 16px;font-size:.86rem;display:flex}.map-selection strong{color:var(--navy);text-transform:capitalize}.map-selection a{background:var(--sky);color:var(--teal-deep);border-radius:7px;padding:6px 9px;font-weight:800}.directory-header{margin-top:44px}.filter-row{flex-wrap:wrap;gap:8px;margin-top:22px;display:flex}.filter-chip{border:1px solid var(--line);min-height:38px;color:var(--navy);cursor:pointer;background:#fff;border-radius:999px;padding:8px 14px;font-size:.86rem;font-weight:800}.filter-chip.active{border-color:var(--teal);background:var(--sky);color:var(--teal-deep)}.driver-location{border:1px solid var(--line);background:var(--surface);border-radius:16px;margin-top:24px;padding:20px}.vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;margin-top:24px;display:grid}.vehicle-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:20px}.vehicle-card.selected{border-color:var(--teal);box-shadow:0 0 0 3px #00a9c529}.vehicle-card-hit{text-align:left;cursor:pointer;background:0 0;width:100%;padding:0;display:block}.vehicle-card-hit>div:first-child{justify-content:space-between;gap:8px;display:flex}.vehicle-type{color:var(--teal-deep);letter-spacing:.09em;text-transform:uppercase;font-size:.72rem;font-weight:850}.vehicle-card h2{color:var(--navy);margin:18px 0 5px;font-size:1.15rem}.vehicle-card p,.vehicle-card small{color:var(--muted)}.vehicle-card p{min-height:40px;margin:0}.vehicle-card .actions{margin-top:18px}.driver-location h2{color:var(--navy);margin:0 0 6px}.driver-location p{color:var(--muted);margin:0}.drive-page{max-width:720px;margin:36px auto;padding:48px 28px}.drive-page h1{color:var(--navy);letter-spacing:-.065em;margin:0;font-size:clamp(2.5rem,6vw,4.2rem);line-height:1}.drive-page .button{margin:28px 10px 0 0}.auth-page{background:radial-gradient(circle at 15% 10%, #e2f9fc, transparent 33%), var(--bg);place-content:center;gap:28px;min-height:100vh;padding:28px;display:grid}.auth-divider{text-align:center;margin:22px 0 10px;font-size:.82rem}.auth-page>.brand{justify-self:center}.auth-card{border:1px solid var(--line);background:#fff;border-radius:18px;width:min(100%,410px);padding:35px;box-shadow:0 20px 50px #102a431a}.auth-card h1{color:var(--navy);letter-spacing:-.04em;margin:0;font-size:2rem}.auth-card>p:not(.eyebrow){color:var(--muted);line-height:1.55}.auth-card label,.inline-form label{color:var(--navy);gap:7px;font-size:.79rem;font-weight:800;display:grid}.auth-card label{margin-top:18px}input,select,textarea{outline-color:var(--teal);min-height:42px;color:var(--ink);background:#fff;border:1px solid #cbd8e4;border-radius:8px;padding:9px 11px}.workspace{grid-template-columns:250px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--navy-deep);color:#c8d7e4;flex-direction:column;padding:25px 15px;display:flex}.sidebar .brand{color:#fff;padding:0 10px}.workspace-label{color:#87a2b8;letter-spacing:.11em;text-transform:uppercase;margin:26px 10px 12px;font-size:.69rem;font-weight:850}.sidebar nav{gap:3px;display:grid}.sidebar nav a{color:#bed0de;border-radius:8px;padding:10px;font-size:.91rem;font-weight:700}.sidebar nav a:hover,.sidebar nav a.active{color:#fff;background:#5cd5e529}.sidebar-bottom{color:#9cb2c4;border-top:1px solid #ffffff1a;gap:10px;margin-top:auto;padding:16px 10px 0;font-size:.73rem;display:grid}.sidebar-bottom .text-button{color:#d7ecf8;width:fit-content;font-size:.8rem}.workspace-main{padding:clamp(24px,4vw,52px);overflow:auto}.page-title{max-width:720px;margin-bottom:32px}.page-title h1{color:var(--navy);letter-spacing:-.055em;margin:0;font-size:clamp(2.1rem,4vw,3.1rem);line-height:1}.page-title>p:last-child{color:var(--muted);margin:14px 0 0;line-height:1.6}.metrics{grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:14px;margin-bottom:20px;display:grid}.metric{border:1px solid var(--line);background:#fff;border-radius:13px;padding:19px}.metric p{min-height:33px;color:var(--muted);text-transform:uppercase;letter-spacing:.055em;margin:0;font-size:.75rem;font-weight:800;line-height:1.35}.metric strong{color:var(--navy);letter-spacing:-.06em;margin-top:11px;font-size:2rem;display:block}.two-column{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:15px;margin-bottom:18px;padding:24px}.panel h2{color:var(--navy);letter-spacing:-.035em;margin:0 0 9px;font-size:1.25rem}.panel p:not(.eyebrow){color:var(--muted);line-height:1.55}.join-code{background:var(--sky);color:var(--teal-deep);letter-spacing:.14em;border-radius:9px;margin-top:12px;padding:12px 15px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.18rem;font-weight:900;display:inline-block}.inline-form{grid-template-columns:minmax(180px,1.3fr) minmax(100px,.6fr) minmax(120px,.7fr) auto;align-items:end;gap:12px;display:grid}.inline-form .button{min-height:42px}.alert{color:#38526b;background:#f6fbfe;border:1px solid #d6e3ed;border-radius:8px;margin:14px 0 0;padding:10px 12px;font-size:.86rem}.alert.error{color:#a42930;background:#fff5f5;border-color:#f3c2c4}.table-panel{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:590px}th{color:#7c8da0;letter-spacing:.085em;text-align:left;text-transform:uppercase;padding:0 10px 10px;font-size:.67rem}td{color:var(--ink);vertical-align:middle;border-top:1px solid #e8eef3;padding:13px 10px;font-size:.88rem}td strong{color:var(--navy);display:block}td small{color:var(--muted);margin-top:3px;line-height:1.35;display:block}.status{text-transform:uppercase;border-radius:999px;padding:4px 7px;font-size:.7rem;font-weight:850;display:inline-flex}.status.on{color:var(--success);background:#e5f8f0}.status.off{color:#5f6c79;background:#f0f3f6}.status.warn{color:var(--warning);background:#fff4d9}.table-actions{gap:7px;display:flex}.live-dot{color:var(--success);font-weight:800}.live-dot:before{content:"●";margin-right:5px}.empty-table{color:var(--muted);text-align:center;padding:34px 10px}.loading,.loading-page{color:var(--muted)}.loading-page{place-items:center;min-height:100vh;display:grid}.route-editor{max-width:860px}.route-editor form{gap:10px;margin-top:22px;display:grid}.route-editor label{color:var(--navy);gap:7px;font-size:.82rem;font-weight:800;display:grid}.route-editor textarea{resize:vertical;min-height:120px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;line-height:1.55}.editor-hint{font-size:.78rem;margin:-4px 0 8px!important}@media (width<=800px){.site-header{min-height:65px;padding:0 18px}.site-header nav{gap:13px;font-size:.82rem}.public-shell{padding:34px 18px}.hero-grid{grid-template-columns:1fr;min-height:0}.map-preview{min-height:315px}.live-drivers-map{height:55vh;min-height:350px}.feature-row,.two-column,.form-grid,.workspace{grid-template-columns:1fr}.sidebar{min-height:auto;padding:17px}.sidebar nav{display:flex;overflow-x:auto}.sidebar nav a{white-space:nowrap}.sidebar-bottom{display:none}.workspace-main{padding:28px 18px}.inline-form{grid-template-columns:1fr}.inline-form .button{width:100%}}@media (width<=520px){.site-header nav a:not(.sign-in-link),.site-header nav .text-button{display:none}.hero-grid h1{font-size:3rem}.auth-card{padding:25px}.map-card{top:15px;left:15px}.metrics{grid-template-columns:repeat(2,1fr)}.metric{padding:14px}.metric strong{font-size:1.6rem}}.map-stage{background:#c5d5df;height:100svh;min-height:540px;position:relative;overflow:hidden}.live-map-frame{width:100%;height:min(58vh,620px);min-height:390px;position:relative}.map-stage .live-map-frame,.live-map-frame>.live-drivers-map{height:100%;min-height:100%}.map-loading{z-index:1;color:#31566b;background:linear-gradient(145deg,#f2f8fb,#e4f0f4);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:0}.map-loading-logo{border-radius:14px;width:48px;height:48px;animation:1.8s ease-in-out infinite map-loading-bob;box-shadow:0 5px 16px #102a4329}.map-loading-spinner{border:2px solid #087f8c33;border-top-color:#087f8c;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite map-loading-spin}.map-loading-label{letter-spacing:.01em;font-size:.82rem;font-weight:750}@keyframes map-loading-spin{to{transform:rotate(360deg)}}@keyframes map-loading-bob{50%{transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.map-loading-logo,.map-loading-spinner{animation:none}}.map-stage .live-drivers-map{height:100%;min-height:100%}.map-stage .maplibregl-ctrl-bottom-left{margin-left:16px}.map-stage .maplibregl-ctrl-bottom-right{margin-right:16px}.map-stage .maplibregl-ctrl-bottom-left,.map-stage .maplibregl-ctrl-bottom-right{margin-bottom:var(--dock-offset,220px)}.map-float{z-index:2;background:#fffffff0;border-radius:16px;align-items:center;gap:14px;width:fit-content;max-width:calc(100% - 32px);padding:8px 12px 8px 16px;display:flex;position:absolute;top:16px;left:16px;right:16px;box-shadow:0 10px 30px #102a4329}.map-float nav{color:var(--muted);align-items:center;gap:14px;margin-left:8px;font-size:.88rem;font-weight:750;display:flex}button.map-live{color:var(--navy);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:8px;padding:6px 10px;font-size:.86rem;font-weight:800;display:inline-flex}button.map-live[aria-expanded=true]{background:#e7f4f7}.map-dock{z-index:2;width:min(420px,100% - 32px);position:absolute;bottom:16px;left:16px;right:16px}.map-modal{z-index:4;width:min(420px,100% - 32px);position:absolute;top:76px;left:16px}.map-modal .map-sheet{max-height:min(72vh,680px)}.map-ad{min-height:72px;color:var(--navy);background:#fff;border-radius:16px;align-items:center;gap:12px;padding:10px 14px;display:flex;box-shadow:0 12px 28px #102a4329}.map-ad img{object-fit:contain;background:#f4f7fa;border-radius:8px;width:52px;height:52px}.map-ad span{gap:2px;min-width:0;display:grid}.map-ad small{color:var(--teal-deep);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:850}.map-ad strong{font-size:.98rem}.map-ad em{color:var(--muted);font-size:.84rem;font-style:normal}.map-sheet{background:#fffffff7;border-radius:18px;gap:10px;min-height:0;padding:16px;display:grid;overflow:auto;box-shadow:0 16px 40px #102a432e}.map-sheet h2{color:var(--navy);letter-spacing:-.03em;margin:0;font-size:1.25rem}.map-sheet p{color:var(--muted);margin:0}.map-sheet label{color:var(--navy);gap:6px;font-size:.78rem;font-weight:800;display:grid}.map-sheet-head{color:var(--navy);justify-content:space-between;align-items:center;gap:12px;display:flex}.map-sheet-head span{color:var(--muted);font-size:.82rem}.map-sheet-actions{flex-wrap:wrap;gap:8px;display:flex}.map-vehicle-list{gap:8px;display:grid}.map-chat{gap:8px;max-height:220px;display:grid;overflow:auto}.map-chat p{color:var(--navy);background:#f3f6f8;border-radius:12px;margin:0;padding:8px 10px}.map-chat p.mine{background:#e7f4f7}.map-vehicle{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:14px;gap:3px;min-width:148px;padding:12px;display:grid}.map-vehicle.selected{border-color:var(--teal);box-shadow:0 0 0 3px #00a9c529}.map-vehicle strong{color:var(--navy);font-size:.95rem}.map-vehicle small{color:var(--muted)}.map-empty,.map-note{color:var(--muted);margin:0;font-size:.88rem}.ad-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px;display:grid}.ad-form label{color:var(--navy);gap:6px;font-size:.78rem;font-weight:800;display:grid}.ad-form .button{min-height:42px}@media (width<=720px){.map-float{width:auto}.map-float nav a:not(:first-child){display:none}.map-dock,.map-modal{width:auto;right:16px}.ad-form{grid-template-columns:1fr}}.legal-shell{background:radial-gradient(circle at 15% 5%, #e2f9fc, transparent 34%), var(--bg);min-height:100vh}.legal-card{border:1px solid var(--line);background:var(--surface);border-radius:18px;width:min(100% - 36px,780px);margin:12px auto 0;padding:clamp(24px,5vw,46px);line-height:1.65;box-shadow:0 18px 42px #102a4314}.legal-card h1{color:var(--navy);letter-spacing:-.045em;margin:0;font-size:clamp(1.9rem,4vw,2.6rem);line-height:1.05}.legal-card h2{color:var(--navy);margin:30px 0 8px;font-size:1.15rem}.legal-card p,.legal-card li{color:#34465a}.legal-card li{margin:6px 0}.legal-card a{color:var(--teal-deep);text-underline-offset:2px;text-decoration:underline}.legal-back{margin-bottom:18px;font-size:.88rem;font-weight:700;display:inline-block;color:var(--muted)!important;text-decoration:none!important}.legal-sub{margin:10px 0 0;color:var(--muted)!important}.legal-note{background:var(--sky);border:1px solid #c9e5eb;border-radius:12px;margin:22px 0 0;padding:14px 16px}.legal-footer{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:20px;padding:28px 18px 40px;font-size:.88rem;font-weight:700;display:flex}.legal-footer a:hover{color:var(--teal-deep)}.inbox-filters{flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0 6px;display:flex}.inbox-filters input{flex:1;min-width:240px;max-width:360px}.inbox-list{gap:14px;max-width:900px;margin-top:18px;display:grid}.inbox-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;gap:10px;padding:18px 20px;display:grid}.inbox-card header{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.inbox-card header time{color:var(--muted);margin-left:auto;font-size:.8rem}.inbox-content{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:1rem;line-height:1.55}.inbox-meta{color:var(--muted);margin:0;font-size:.82rem}.inbox-meta strong{color:var(--navy)}.inbox-card textarea,.inbox-card input{width:100%}.inbox-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inbox-actions small{color:var(--muted)}.type-pill{background:var(--sky);color:var(--teal-deep);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:3px 10px;font-size:.72rem;font-weight:850}.type-bug,.type-complaint{color:var(--danger);background:#fff1f1}.type-praise{color:var(--success);background:#e8f8f1}.rating{color:#d79a00;letter-spacing:1px}.pager{color:var(--muted);align-items:center;gap:14px;margin-top:18px;font-size:.86rem;display:flex}.feature-add{gap:10px;max-width:900px;margin-top:18px;display:grid}.feature-add h2{margin:0;font-size:1.05rem}.feature-card{grid-template-columns:78px minmax(0,1fr);align-items:start}.vote-badge{background:var(--sky);width:70px;height:78px;color:var(--teal-deep);border:1px solid #c9e5eb;border-radius:12px;align-content:center;place-items:center;display:grid}.vote-badge strong{font-size:1.6rem;line-height:1}.vote-badge span{text-transform:uppercase;font-size:.7rem;font-weight:800}.feature-body{gap:10px;min-width:0;display:grid}.feature-body>input{color:var(--navy);font-weight:800}.feature-fields{grid-template-columns:200px minmax(0,1fr);gap:10px;display:grid}.feature-fields label{color:var(--navy);gap:5px;font-size:.78rem;font-weight:800;display:grid}.text-button.link{color:var(--teal-deep);text-decoration:underline}@media (width<=640px){.feature-card{grid-template-columns:1fr}.vote-badge{grid-auto-flow:column;gap:8px;width:100%;height:48px}.feature-fields{grid-template-columns:1fr}}.pickup-desk-page{max-width:760px;margin:0 auto;padding:32px 20px 80px}.pickup-desk-page h1{font-size:clamp(26px,5vw,38px)}.pickup-desk-card{background:#fcfdfb;border:1px solid #dce6e3;border-radius:24px;flex-direction:column;gap:14px;margin:22px 0;padding:24px;display:flex}.pickup-desk-card h2,.pickup-desk-card p{margin:0}.pickup-desk-card label{flex-direction:column;gap:8px;display:flex}.pickup-desk-card input,.pickup-desk-card select{width:100%;font:inherit;border:1px solid #dce6e3;border-radius:12px;padding:12px}.pickup-pin-map{border-radius:16px;height:300px;overflow:hidden}.rider-sharing-control{z-index:3;background:#fcfdfb;border-radius:18px;max-width:calc(100vw - 32px);padding:10px 14px;position:absolute;top:110px;right:16px;box-shadow:0 3px 16px #15323d20}.service-page{max-width:1180px;margin:auto;padding:32px 24px 64px}.service-page label{margin:12px 0;font-weight:600;display:block}.service-page input,.service-page textarea,.service-page select{box-sizing:border-box;color:#102b42;width:100%;font:inherit;background:#fff;border:1px solid #cad6df;border-radius:12px;margin-top:6px;padding:12px;display:block}.service-page textarea{min-height:90px}.service-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:20px;display:grid}.service-actions{flex-wrap:wrap;gap:10px;margin:14px 0;display:flex}.service-search{max-width:600px}.service-form{max-width:650px}.service-page .check-row{align-items:center;gap:10px;font-weight:400;display:flex}.service-page .check-row input{width:20px;height:20px;margin:0}.service-page article{margin:18px 0}.service-messages{white-space:pre-wrap;max-width:720px;max-height:55vh;margin:20px 0;overflow:auto}.service-messages .message{background:#eff4f7;border-radius:14px;max-width:85%;padding:14px}.service-messages .mine{background:#daf5ef;margin-left:auto}.service-page .panel{margin-bottom:20px}.map-ad-full{position:relative;overflow:hidden;padding:0!important}.map-ad-full img{max-height:110px;object-fit:cover!important;border-radius:0!important;width:100%!important;height:100%!important}.map-ad-full small{background:#fff;border-radius:5px;padding:2px 6px;position:absolute;top:5px;left:8px}.map-ad-message img{display:none}.live-map-intro{max-width:900px;margin:0 auto;padding:48px 24px;line-height:1.6}.live-map-intro nav{flex-wrap:wrap;gap:24px;margin-top:20px;display:flex}.route-plan-map{border-radius:16px;width:100%;height:360px;overflow:hidden}.route-plan-row{border:1px solid #dce5e8;border-radius:12px;gap:12px;padding:16px;display:grid}.route-day-options{flex-wrap:wrap;gap:14px;display:flex}.route-stop-pin{color:#fff;cursor:pointer;background:#087f8c;border:2px solid #fff;border-radius:50%;width:32px;height:32px}.landing-page{max-width:1100px;margin:auto;padding:clamp(44px,9vw,112px) 28px 48px}.landing-page h1{letter-spacing:-.055em;color:var(--navy);margin:18px 0 28px;font-size:clamp(3rem,9vw,6.5rem);line-height:1.04}.landing-page .lede{max-width:560px;margin-bottom:28px}.landing-page .map-note{max-width:520px;margin:22px 0}.landing-page nav,.landing-page footer{flex-wrap:wrap;gap:24px;display:flex}.landing-page footer{margin-top:64px;font-size:.88rem}.landing-roles{margin-top:2rem}.landing-roles .button{margin:.25rem .5rem .25rem 0}.schedule-form{flex-wrap:wrap;align-items:end;gap:1rem;display:flex}.schedule-form fieldset{border:1px solid #d7e1e3;border-radius:8px;flex-wrap:wrap;gap:1rem;width:100%;display:flex}.schedule-form fieldset label{align-items:center;gap:.4rem;display:flex}.schedule-form input[type=checkbox]{width:auto}.company-fleet-map{border-radius:12px;height:min(60vh,600px);min-height:320px;position:relative;overflow:hidden}.journey-trend{align-items:end;gap:4px;height:180px;padding-top:15px;display:flex}.journey-trend>div{flex-direction:column;flex:1;justify-content:end;align-items:center;height:100%;display:flex}.journey-trend span{background:#148691;border-radius:3px 3px 0 0;width:100%;min-height:2px}.journey-trend small{margin-top:5px;font-size:10px}.monitoring-controls{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:24px;display:flex}.monitoring-controls label{align-items:center;gap:8px;display:flex}.monitoring-controls input[type=checkbox],.monitoring-controls select{width:auto}.monitoring-summary{overflow-wrap:anywhere}.monitoring-finding{border-left:4px solid #6b7280;margin:20px 0;padding:4px 16px}.monitoring-finding.warning{border-color:#b45309}.monitoring-finding.critical{border-color:#b91c1c}.monitoring-finding pre{white-space:pre-wrap;overflow-wrap:anywhere}.monitoring-table{overflow-x:auto}.monitoring-table code{overflow-wrap:anywhere}.monitoring-timeline{border-bottom:1px solid #94a3b8;align-items:stretch;gap:2px;height:150px;margin:24px 0;display:flex}.monitoring-bar-slot{flex-direction:column;flex:1;justify-content:flex-end;min-width:0;display:flex}.monitoring-bar{background:#16749a;flex-direction:column;justify-content:flex-end;width:100%;display:flex}.monitoring-bar-errors{background:#b91c1c}.monitoring-bar-limits{background:#d97706}:root{--navy:#12343c;--navy-deep:#102d34;--teal:#087f83;--teal-deep:#05666b;--sky:#e2f3ee;--ink:#18373d;--muted:#5d7477;--line:#dce6e1;--bg:#f8faf7}body{min-width:0;line-height:1.5}input,select,textarea{max-width:100%;font-size:16px}h1,h2,h3,p{overflow-wrap:break-word}a:focus-visible,button:focus-visible,summary:focus-visible{outline-offset:4px;outline:3px solid #07848b}input[type=checkbox]{width:20px;height:20px;min-height:20px;accent-color:var(--teal);flex-shrink:0;padding:0}.brand{letter-spacing:-.055em;white-space:nowrap;font-size:1.35rem}.site-header{gap:18px;max-width:1240px;min-height:84px;padding:18px 32px}.site-header nav{flex-wrap:wrap;justify-content:flex-end;gap:20px}.button{border-radius:12px;gap:16px;min-height:48px;padding:12px 20px;font-size:.94rem;font-weight:700}.button.primary{background:var(--teal);box-shadow:none}.button.primary:hover{background:var(--teal-deep)}.button.secondary{background:0 0;border-color:#becfc9}.full{width:100%}.landing-page{max-width:1240px;padding:30px 32px 0}.welcome-hero{grid-template-columns:1.1fr 1fr;align-items:center;gap:64px;padding:36px 0 72px;display:grid}.landing-page h1{letter-spacing:-.065em;margin:14px 0 24px;font-size:clamp(3.1rem,5.9vw,5.6rem);font-weight:750;line-height:1.04}.landing-page h1 em{color:var(--teal);letter-spacing:-.055em;font-family:Georgia,serif;font-weight:400}.landing-page .lede{max-width:420px;margin:0;font-size:1.12rem;line-height:1.7}.landing-page .button{padding:13px 20px}.hero-caption{color:var(--muted);max-width:390px;margin-top:20px;font-size:.8rem}.landing-photo{width:100%;max-width:560px;margin:0 auto}.landing-photo img{aspect-ratio:4/3;object-fit:cover;border-radius:22px;width:100%;max-height:500px;display:block;box-shadow:0 24px 64px #12343c1c}.landing-photo figcaption{color:var(--muted);text-align:right;margin-top:10px;font-size:.72rem}.landing-photo figcaption a{color:var(--teal-deep);text-underline-offset:2px}.join-section{border-top:1px solid var(--line);padding:48px 0;scroll-margin-top:20px}.section-heading h2{letter-spacing:-.05em;margin:4px 0;font-size:clamp(2rem,3.5vw,3rem)}.section-heading>p:last-child{color:var(--muted)}.role-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:32px;display:grid}.role-card{border:1px solid var(--line);background:#fff;border-radius:18px;flex-direction:column;align-items:flex-start;padding:28px;display:flex}.role-number{letter-spacing:.08em;text-transform:uppercase;color:var(--teal);font-size:.7rem;font-weight:800}.role-card h3{letter-spacing:-.04em;margin:26px 0 4px;font-size:1.45rem}.role-card>p{color:var(--muted);min-height:72px;margin:8px 0 22px}.role-card small{color:var(--muted);margin-top:auto;padding-top:24px;font-size:.75rem}.role-link{color:var(--teal-deep);margin-top:16px;font-size:.9rem;font-weight:700;display:inline-block}.role-card details{margin-top:18px;font-size:.85rem}.role-card summary{cursor:pointer;color:var(--teal-deep);padding:8px 0;font-weight:700}.role-card details p{color:var(--muted);line-height:1.6}.role-card details a,.auth-help a,.consent-row a{color:var(--teal-deep);text-underline-offset:3px;text-decoration:underline}.landing-page footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:24px;margin-top:24px;padding:32px 0;display:flex}.landing-page footer>span{font-size:.8rem}.auth-page{background:var(--bg);flex-direction:column;justify-content:center;align-items:center;min-height:100svh;padding:32px 20px;display:flex}.auth-card{border-radius:20px;width:100%;min-width:0;max-width:460px;padding:32px;box-shadow:0 12px 40px #12343c08}.auth-card h1{font-size:2rem;line-height:1.13}.auth-card h2{letter-spacing:-.04em;margin:0;font-size:1.65rem;line-height:1.2}.auth-card label{font-size:.85rem}.auth-card input:not([type=checkbox]),.auth-card select{width:100%;min-width:0}.auth-card input[type=file]{padding:12px 8px;font-size:.8rem}.auth-card .button{margin-top:16px}.auth-card .text-button{min-height:44px;color:var(--teal-deep);margin-top:8px;display:block}.auth-help{font-size:.8rem}.auth-card .consent-row{align-items:flex-start;gap:10px;font-weight:400;line-height:1.6;display:flex}.setup-page{max-width:1180px;margin:auto;padding:32px}.setup-layout{grid-template-columns:1fr 1fr;align-items:start;gap:90px;padding:64px 0;display:grid}.setup-intro h1{letter-spacing:-.06em;margin:16px 0 24px;font-size:clamp(2.5rem,4.5vw,4.3rem);line-height:1.05}.setup-intro>p{color:var(--muted);max-width:400px}.setup-intro .eyebrow{color:var(--teal-deep)}.setup-steps{counter-reset:setup;margin:32px 0;padding:0;list-style:none}.setup-steps li{counter-increment:setup;padding:0 0 24px 46px;position:relative}.setup-steps li:before{content:counter(setup);background:var(--sky);width:30px;height:30px;color:var(--teal-deep);border-radius:50%;place-items:center;font-size:.8rem;font-weight:800;display:grid;position:absolute;top:0;left:0}.setup-steps strong,.setup-steps span{display:block}.setup-steps span{color:var(--muted);margin-top:4px;font-size:.85rem}.setup-note{font-size:.85rem}.service-page h1{letter-spacing:-.055em;font-size:clamp(2.2rem,4vw,3.6rem);line-height:1.1}.advertiser-intro{grid-template-columns:1fr 1fr;align-items:start;gap:64px;margin-top:40px;display:grid}.advertiser-intro .panel{padding:32px}.advertiser-intro .setup-steps{margin-bottom:0}.workspace-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:24px 0;display:flex}.workspace-heading h2{margin:0}.empty-state{background:var(--sky);border:0}.campaign-editor{padding:32px}.sidebar{background:var(--navy-deep)}.sidebar .brand{font-size:1.25rem}.workspace-main{min-width:0}.sidebar-bottom strong{overflow-wrap:anywhere}@media (width<=900px){.welcome-hero{gap:32px}.role-grid{grid-template-columns:1fr}.role-card{padding:24px}.role-card h3{margin-top:16px}.role-card>p{min-height:0}.setup-layout{gap:32px}.advertiser-intro{gap:24px}}@media (width<=600px){.site-header{flex-wrap:wrap;min-height:72px;padding:16px 20px}.site-header nav{gap:12px;font-size:.8rem}.site-header nav a:not(.sign-in-link),.site-header nav .text-button{display:inline-flex}.site-header .sign-in-link{padding:8px 10px}.brand{font-size:1.2rem}.landing-page{padding:16px 20px 0}.welcome-hero{grid-template-columns:1fr;gap:32px;padding:18px 0 40px}.landing-page h1{font-size:clamp(2.75rem,12vw,4rem)}.landing-page .lede{font-size:1rem}.welcome-hero .actions{gap:10px}.welcome-hero .button{padding:12px 15px;font-size:.85rem}.landing-photo{width:100%;max-width:420px;margin:auto}.landing-photo img{max-height:330px}.join-section{padding-top:32px}.role-grid{margin-top:24px}.landing-page footer{flex-direction:column;align-items:flex-start;gap:16px}.landing-page footer nav{gap:24px}.auth-page{justify-content:flex-start;padding:24px 16px}.auth-card{padding:24px}.auth-card h1{font-size:1.8rem}.setup-page{padding:24px 20px}.setup-layout{grid-template-columns:1fr;gap:32px;padding:32px 0}.setup-intro .setup-steps{margin:24px 0 0}.setup-intro h1{font-size:2.6rem}.advertiser-intro{grid-template-columns:1fr;gap:24px;margin-top:24px}.service-page{padding:24px 20px 48px}.service-grid{grid-template-columns:minmax(0,1fr)}.campaign-editor{padding:20px}.sidebar nav{gap:8px;padding-bottom:8px}.sidebar nav a{min-height:44px}.sidebar-bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;padding-top:12px;display:flex}.sidebar-bottom .text-button{min-height:44px}.workspace-main{padding:24px 16px}.page-title h1{font-size:2rem;line-height:1.15}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.campaign-layout{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:32px;display:grid}.campaign-preview{min-width:0;padding:24px;position:sticky;top:24px}.campaign-preview>p{color:var(--muted);font-size:.85rem}.banner-mock{border:1px solid var(--line);overflow-wrap:anywhere;background:#fff;border-radius:16px;flex-wrap:wrap;align-items:center;gap:16px;padding:20px;display:flex}.banner-mock>small{width:100%;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:.65rem}.banner-mock img{object-fit:contain;width:72px;height:72px}.banner-mock.full_image img{object-fit:contain;width:100%;height:auto;max-height:220px}.artwork-placeholder{background:var(--sky);color:var(--teal);border-radius:12px;padding:20px 12px;font-size:.75rem}.banner-mock>div{flex:1;min-width:120px}.banner-mock strong{font-size:1.1rem}.banner-mock p{font-size:.85rem}.banner-mock>div>span{color:var(--teal);font-size:.8rem}.campaign-results{color:var(--muted);gap:24px;margin:20px 0;font-size:.8rem;display:flex}.campaign-results strong{color:var(--navy);font-size:1.7rem;display:block}@media (width<=700px){.campaign-layout{grid-template-columns:1fr;gap:12px}.campaign-preview{padding:12px 0;position:static}.workspace-heading{padding-top:0}}.provider-page{max-width:1100px}.provider-start{max-width:650px;margin-top:32px}.provider-application{max-width:760px;margin-top:32px}.provider-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.service-page .provider-fields label{gap:8px;margin:0;display:grid}.service-page .provider-fields input,.service-page .provider-fields select{margin:0}.provider-page .consent-row{align-items:flex-start;gap:12px;margin:20px 0;font-weight:400;display:flex}.provider-page .consent-row input{width:20px;min-height:20px;margin:3px 0 0}.provider-page .consent-row a{text-decoration:underline}.listing-plans{margin-top:48px}.listing-plans li{color:var(--muted);margin-bottom:12px}.application-status{max-width:760px;margin-top:32px}.provider-photo{object-fit:cover;border-radius:12px;width:100%;height:180px;margin:12px 0;display:block}.directory-search{margin-top:32px}.market-links{color:var(--teal-deep);flex-wrap:wrap;gap:12px 24px;display:flex}.plan-grid{align-items:stretch}.plan-card{flex-direction:column;padding:26px;display:flex}.plan-card.featured{border-color:#07848b;box-shadow:0 12px 32px #087f8318}.plan-card h3{margin:4px 0;font-size:1.4rem}.plan-price{color:var(--muted);margin:8px 0;font-size:.95rem}.plan-price strong{letter-spacing:-.04em;color:var(--navy);font-size:2rem}.plan-savings{color:var(--teal-deep);background:#e2f3ee;border-radius:8px;padding:9px 12px;font-size:.86rem;font-weight:700}.plan-card ul{padding-left:20px}.plan-card li{color:var(--muted);margin-bottom:12px}.plan-card .auth-help{margin-top:auto}.map-float nav:empty{display:none}@media (width<=600px){.provider-fields{grid-template-columns:1fr}.provider-application{padding:20px}.plan-card{padding:22px}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.public-raster-frame .leaflet-container{z-index:0;background:#dfe9e8;font-family:inherit}.public-raster-map .leaflet-bottom{bottom:var(--dock-offset,220px)}.public-raster-map .leaflet-control-attribution{background:#fffffff0;max-width:260px;font-size:10px}.public-raster-map .leaflet-control-zoom a{width:36px;height:36px;line-height:36px}.public-locate{z-index:1;bottom:calc(var(--dock-offset,220px) + 105px);min-width:38px;min-height:38px;color:var(--navy);cursor:pointer;background:#fff;border-radius:6px;font-size:24px;position:absolute;right:10px;box-shadow:0 2px 8px #0003}.public-vehicle-marker>span{border:3px solid #fff;border-radius:50%;place-items:center;width:34px;height:34px;display:grid;box-shadow:0 2px 6px #12343c66}.public-vehicle-marker svg{width:24px;height:24px;fill:var(--navy)}.public-vehicle-marker.selected>span{outline:4px solid #087f8380}.public-vehicle-marker.full>span{border-color:#b93037}.public-map-notice{z-index:1;max-width:330px;color:var(--navy);background:#fff;border-radius:10px;padding:12px;font-size:12px;position:absolute;top:180px;left:16px;right:16px}
