*{margin:0;padding:0;box-sizing:border-box}:root{--bg:#0a0a0a;--bg2:#141414;--bg3:#1d1d1d;--upload-fill:#0e0e0e;--border:#2a2a2a;--border-subtle:#1f1f1f;--text:#f0f0f0;--text2:#999;--text3:#777;--text4:#666;--text5:#555;--accent:#22c55e;--accent2:#16a34a;--accent-ink:#0a0a0a;--accent-dim:#199a45;--chip-done-bg:#1d1d1d;--disabled-bg:#161616;--disabled-text:#555;--danger:#ef4444;--blue:#3b82f6;--r-card:14px;--r-zone:18px;--r-pill:99px;--home-in-ms:250ms;--home-in-ease:ease-out;--home-out-ms:180ms;--home-out-ease:ease-in;--cockpit-map-h-full:380px;--cockpit-map-h-focus:336px;--cockpit-strip-h:58px;--cockpit-scroll-gap:12px;scroll-padding-top:calc(env(safe-area-inset-top, 0px) + var(--cockpit-map-h-full) + var(--cockpit-strip-h) + var(--cockpit-scroll-gap))}html:has(.container.cockpit-focused){scroll-padding-top:calc(env(safe-area-inset-top, 0px) + var(--cockpit-map-h-focus) + var(--cockpit-strip-h) + var(--cockpit-scroll-gap))}html:has(.container.cockpit-off){scroll-padding-top:0}html.scroll-locked{overflow:hidden;overscroll-behavior:none}body{font-family:var(--font-inter-tight),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--text);display:flex;justify-content:center;min-height:100dvh;-webkit-font-smoothing:antialiased}button{cursor:pointer;border:none;background:none;color:inherit;font-family:inherit}.container{--cockpit-map-h:var(--cockpit-map-h-full);width:100%;max-width:480px;background:var(--bg);padding:20px 16px calc(28px + env(safe-area-inset-bottom));min-height:100dvh;position:relative;overflow-x:hidden;overflow-x:clip;border:none!important;box-shadow:none!important;outline:none!important}@media (min-width:481px){.container{border-left:1px solid #111!important;border-right:1px solid #111!important}}.container.with-bottom-bar{padding-bottom:calc(160px + env(safe-area-inset-bottom))}.container.cockpit-focused{--cockpit-map-h:var(--cockpit-map-h-focus)}.container.cockpit-focused .map-toggle{display:none}.container.cockpit-off .route-map-wrap{margin:16px 0 4px;padding-top:0;background:none;position:relative;top:auto}.container.cockpit-off .stops-header{margin:22px 0 12px;padding:0;position:static;top:auto;background:none;box-shadow:none}.topbar{padding:2px 0 18px}.brand,.topbar{display:flex;align-items:center;gap:10px}.logo-ring{width:32px;height:32px;flex-shrink:0;display:flex}.logo-ring img{width:100%;height:100%;border-radius:7px;display:block}.brand-name{font-size:16px;font-weight:600;letter-spacing:-.02em;color:var(--text)}.screen-label{margin-left:auto;font-size:12px;font-weight:500;letter-spacing:.08em;color:var(--text4);text-transform:uppercase}.page-title{font-size:26px;font-weight:700;letter-spacing:-.03em;margin-bottom:6px}.page-subtitle{font-size:15px;line-height:1.45;color:var(--text2);margin-bottom:20px}.upload-zone{position:relative;border:2px dashed var(--border);border-radius:var(--r-zone);background:var(--upload-fill);padding:34px 20px;display:flex;flex-direction:column;align-items:center;gap:14px;cursor:pointer;transition:border-color .18s,background .18s}.upload-zone:active,.upload-zone:hover{border-color:var(--accent);background:#101510}.upload-zone input{display:none}.upload-icon{width:56px;height:56px;border-radius:16px;background:var(--accent);color:var(--accent-ink);display:flex;align-items:center;justify-content:center}.upload-zone-text{text-align:center}.upload-zone-title{font-size:16px;font-weight:600;color:var(--text)}.upload-zone-hint{font-size:13px;color:var(--text3);margin-top:3px}.howto{margin-top:14px}.howto-trigger{width:100%;display:flex;align-items:center;gap:8px;padding:12px 14px;background:var(--bg2);border:none;border-radius:var(--r-card);color:var(--text2);font-size:14px;font-family:inherit;cursor:pointer;transition:background .18s}.howto-trigger:active,.howto-trigger:hover{background:var(--bg3)}.howto-info{flex:none;color:var(--text3)}.howto-label{flex:1 1;text-align:left}.howto-chevron{flex:none;color:var(--text3);transition:transform .18s}.howto-chevron.open{transform:rotate(180deg)}.howto-panel{padding:12px 14px 4px}.howto-text{font-size:14px;line-height:1.5;color:var(--text2)}.howto-img{display:block;width:100%;max-width:320px;height:auto;margin:14px auto 0;border-radius:var(--r-card)}.files{margin-top:20px}.files-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.files-count{font-size:13px;font-weight:500;color:var(--text2)}.link-btn{font-size:13px;font-weight:600;color:var(--accent);padding:4px;margin:-4px}.link-btn:active{opacity:.6}.thumb-strip{display:flex;gap:12px;overflow-x:auto;padding-bottom:4px}.thumb{position:relative;flex:none;width:84px;height:132px;border-radius:12px;overflow:hidden;background:var(--bg2);border:1px solid var(--border-subtle);animation:fadeUp .25s ease both}.thumb img{width:100%;height:100%;object-fit:cover;display:block}.thumb-tag{bottom:6px;left:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;color:#e6e6e6;background:hsla(0,0%,4%,.6);padding:2px 4px;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.thumb-remove,.thumb-tag{position:absolute;right:6px}.thumb-remove{top:6px;width:22px;height:22px;border-radius:50%;background:hsla(0,0%,4%,.85);color:var(--danger);font-size:15px;line-height:1;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.thumb-remove:active{background:hsla(0,0%,4%,.95)}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.error-text{color:var(--danger)}.error-text,.notice-text{font-size:14px;text-align:center;margin-top:16px}.notice-text{color:#f59e0b}.bottom-bar{position:fixed;left:0;right:0;bottom:0;padding:16px 16px calc(16px + env(safe-area-inset-bottom));background:linear-gradient(to top,var(--bg) 65%,hsla(0,0%,4%,0))}.bottom-bar-inner{max-width:480px;margin:0 auto}.disclaimer{color:#555}.app-footer,.disclaimer{font-size:11px;text-align:center;padding:16px 20px}.app-footer{color:#333}.btn-primary{width:100%;padding:17px;border-radius:var(--r-card);font-size:16px;font-weight:600;background:var(--accent);color:var(--accent-ink);transition:transform .1s,opacity .2s,background .2s}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{background:var(--disabled-bg);color:var(--disabled-text);cursor:default}.btn-secondary{width:100%;padding:15px;border-radius:var(--r-card);font-size:15px;font-weight:500;background:var(--bg2);color:var(--text2);border:1px solid var(--border-subtle);margin-top:24px}.btn-secondary:active{background:var(--bg3)}.processing{min-height:64vh;flex-direction:column;gap:20px;padding:24px 10px}.proc-icon,.proc-steps,.processing{display:flex;align-items:center;justify-content:center}.proc-icon{position:relative;width:32px;height:32px;border-radius:8px;background:#141414;color:#555;transition:background .25s,color .25s,opacity .25s}.proc-icon.active{background:rgba(34,197,94,.12);color:#22c55e}.proc-icon.done{background:#141414;color:#22c55e;opacity:.5}.proc-ring{position:absolute;inset:-4px;border-radius:11px;border:2px solid #22c55e;pointer-events:none;animation:procPulse 1.5s ease-out infinite}@keyframes procPulse{0%{transform:scale(.92);opacity:.7}70%,to{transform:scale(1.3);opacity:0}}.proc-line{width:24px;height:2px;background:#1d1d1d;transition:background .25s,opacity .25s}.proc-line.active,.proc-line.done{background:#22c55e}.proc-line.done{opacity:.3}.proc-text{display:flex;flex-direction:column;align-items:center;gap:6px}.proc-status{font-size:15px;font-weight:500;color:#aaa;text-align:center;margin:0}.proc-sub-wrap{min-height:18px}.proc-sub{font-size:13px;font-weight:400;color:#777;text-align:center;margin:0}.proc-sub:not(.proc-sub-static){animation:procSubCycle 2.5s ease-in-out both}@keyframes procSubCycle{0%{opacity:0;transform:translateY(3px)}14%,82%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.proc-ring{opacity:.4}.proc-ring,.proc-sub:not(.proc-sub-static){animation:none}}.modal-overlay{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;padding:24px;animation:modalFade .15s ease}.modal-card{width:100%;max-width:340px;background:#141414;border:none;border-radius:14px;padding:24px;animation:modalPop .18s cubic-bezier(.2,.8,.2,1)}.modal-title{font-size:18px;font-weight:600;letter-spacing:-.01em;color:var(--text)}.modal-text{margin-top:6px;font-size:14px;line-height:1.45;color:var(--text2)}.modal-actions{display:flex;gap:10px;margin-top:20px}.modal-btn{flex:1 1;padding:13px;border-radius:12px;font-size:15px;font-weight:600}.modal-btn.cancel{background:var(--bg3);color:var(--text2)}.modal-btn.confirm{background:var(--accent);color:var(--accent-ink)}@keyframes modalFade{0%{opacity:0}to{opacity:1}}@keyframes modalPop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}.celebrate{min-height:64vh;display:flex;align-items:center;justify-content:center;padding:24px 10px;position:relative}.celebrate-steps{position:absolute;top:50%;left:50%;animation:stepFadeUp .3s ease forwards}@keyframes stepFadeUp{0%{opacity:1;transform:translate(-50%,-50%)}to{opacity:0;transform:translate(-50%,calc(-50% - 8px))}}.celebrate-savings{display:flex;flex-direction:column;align-items:center;text-align:center}.celebrate-pct{font-size:36px;font-weight:700;color:#22c55e;letter-spacing:-.02em;opacity:0;animation:celebratePop .5s cubic-bezier(.175,.885,.32,1.275) .2s forwards}@keyframes celebratePop{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.celebrate-miles{margin-top:8px;font-size:13px;color:#666;opacity:0;animation:celebrateFade .4s ease .5s forwards}@keyframes celebrateFade{0%{opacity:0}to{opacity:1}}.completion{min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px 20px;gap:10px}.completion-label{font-size:14px;color:#666;text-transform:uppercase;letter-spacing:.05em;animation:completionFade .4s ease .1s both}.completion-big{font-size:42px;font-weight:700;color:#22c55e;letter-spacing:-.02em;animation:completionSpring .5s cubic-bezier(.175,.885,.32,1.275) .3s both}.completion-sub{font-size:15px;color:#aaa;animation:completionFade .4s ease .7s both}.completion-time{font-size:13px;color:#555;animation:completionFade .4s ease 1s both}.completion-share{margin-top:14px;font-size:14px;color:#aaa;background:transparent;border:1px solid #333;border-radius:12px;padding:12px 24px;animation:completionFade .4s ease 1.2s both}.completion-share:active{background:hsla(0,0%,100%,.04)}.completion-newroute{margin-top:4px;font-weight:500;padding:10px 16px;animation:completionFade .4s ease 1.35s both}.completion-back,.completion-newroute{font-size:13px;color:#555;background:transparent}.completion-back{border:none;padding:6px 16px;animation:completionFade .4s ease 1.45s both}@keyframes completionFade{0%{opacity:0}to{opacity:1}}@keyframes completionSpring{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.spinner{width:64px;height:64px;border-radius:50%;border:3px solid #1a1a1a;border-top:3px solid var(--accent);animation:spin .9s linear infinite}.progress-wrap{width:100%;max-width:300px}.progress-bar{height:8px;background:var(--disabled-bg);border-radius:var(--r-pill);overflow:hidden}.progress-fill{height:100%;background:var(--accent);border-radius:var(--r-pill);background-image:linear-gradient(90deg,hsla(0,0%,100%,.18) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.18) 0,hsla(0,0%,100%,.18) 75%,transparent 0);background-size:20px 20px;animation:barShimmer .6s linear infinite;transition:width .35s ease}.progress-meta{display:flex;justify-content:space-between;margin-top:12px}.progress-status{font-size:15px;font-weight:500;color:var(--text)}.progress-pct{font-size:15px;font-weight:600;color:var(--accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@keyframes spin{to{transform:rotate(1turn)}}@keyframes barShimmer{0%{background-position:0 0}to{background-position:20px 0}}.stats-grid{display:flex;gap:10px;margin:8px 0 4px}.stat-card{flex:1 1;min-width:0;background:transparent;border:none;border-radius:var(--r-card);padding:14px 12px;text-align:center}.stat-label{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--text2);margin-bottom:8px}.stat-value{font-size:22px;font-weight:700;letter-spacing:-.02em}.stat-value .unit{font-size:13px;font-weight:500;color:#199a45}.stat-value.green{color:var(--accent)}.stat-value.green .unit{color:var(--accent-dim)}.time-saved{color:var(--text3);margin-top:10px}.share-cta,.time-saved{font-size:13px;text-align:center}.share-cta{color:#666;margin:12px 0 4px}.home-prompt{margin:6px 0 14px;font-size:13px;color:#666}.home-line{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.home-sep{color:#444}.home-link{font-size:13px;font-weight:600;color:#22c55e;background:transparent;padding:2px 0}.home-link:active{opacity:.7}.home-current{flex:1 1 auto;min-width:0;color:var(--text2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-overlay-scrim{position:fixed;inset:0;z-index:60;background:rgba(0,0,0,.72);touch-action:none;opacity:0;transition:opacity var(--home-out-ms) var(--home-out-ease)}.home-overlay-scrim.is-open{opacity:1;transition:opacity var(--home-in-ms) var(--home-in-ease)}.home-overlay{position:fixed;top:0;left:0;right:0;z-index:61;background:var(--bg2);border-bottom:1px solid var(--border-subtle);border-radius:0 0 16px 16px;padding:max(env(safe-area-inset-top,0px),12px) 16px 16px;box-shadow:0 10px 30px rgba(0,0,0,.55);--home-y:-12px;transform:translateY(calc(var(--home-vv, 0px) + var(--home-y)));opacity:0;transition:transform var(--home-out-ms) var(--home-out-ease),opacity var(--home-out-ms) var(--home-out-ease)}.home-overlay.is-open{--home-y:0px;opacity:1;transition:transform var(--home-in-ms) var(--home-in-ease),opacity var(--home-in-ms) var(--home-in-ease)}.home-overlay-inner{width:100%;max-width:480px;margin:0 auto;display:flex;flex-direction:column;gap:10px}.home-overlay-input{width:100%;padding:13px 14px;border-radius:12px;background:var(--bg);border:1px solid var(--border);color:var(--text);font-size:16px;line-height:1.3;font-family:inherit}.home-overlay-input::placeholder{color:var(--text5)}.home-overlay-input:focus{outline:none;border-color:var(--accent)}@media (prefers-reduced-motion:reduce){.home-overlay,.home-overlay.is-open{--home-y:0px;transition:opacity 90ms linear}.home-overlay-scrim,.home-overlay-scrim.is-open{transition:opacity 90ms linear}}.home-overlay-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;grid-gap:8px;gap:8px;margin-top:14px}.home-overlay-title{font-size:15px;font-weight:600;color:var(--text);text-align:center;white-space:nowrap;cursor:default}.home-overlay-cancel,.home-overlay-save{background:transparent;border:0;font-family:inherit;font-size:15px;padding:6px 2px;min-height:32px}.home-overlay-cancel{justify-self:start;font-weight:400;color:var(--text2)}.home-overlay-save{justify-self:end;font-weight:600;color:var(--accent)}.home-overlay-cancel:active,.home-overlay-save:active{opacity:.6}.home-overlay-save:disabled{color:var(--text5);font-weight:600}.home-overlay-was{font-size:13px;color:var(--text3);text-decoration:line-through;word-break:break-word}.home-clear{align-self:flex-start;font-size:13px;color:var(--danger);background:transparent;padding:8px 4px;margin-left:-4px}.home-clear:active{opacity:.7}.home-error{font-size:12px;color:var(--danger)}.route-map-wrap{margin:0 0 4px;padding-top:16px;background:var(--bg);position:-webkit-sticky;position:sticky;top:env(safe-area-inset-top,0);z-index:24;will-change:transform}.map-watermark{position:absolute;bottom:4px;left:8px;z-index:1000;font-size:11px;font-weight:600;color:hsla(0,0%,100%,.3);pointer-events:none}.map-toggle{display:flex;gap:6px;margin-bottom:8px}.map-toggle-btn{flex:1 1;padding:9px;border-radius:10px;font-size:13px;font-weight:600;background:var(--bg2);border:1px solid var(--border-subtle);color:var(--text2);transition:background .15s,border-color .15s,color .15s}.map-toggle-btn.active{background:var(--bg3);border-color:#444;color:var(--text)}.map-toggle-btn.red.active{background:rgba(239,68,68,.2);border-color:var(--danger);color:#fca5a5}.map-toggle-btn.green.active{background:rgba(34,197,94,.2);border-color:var(--accent);color:#86efac}.route-map{width:100%;border-radius:var(--r-card);overflow:hidden;z-index:0}.route-map,.route-map-loading{height:320px;border:1px solid var(--border-subtle);background:var(--bg2)}.route-map-loading{display:flex;align-items:center;justify-content:center;color:var(--text2);font-size:13px;border-radius:var(--r-card);margin:16px 0 4px}.leaflet-container{background:var(--bg2);font-family:inherit}.leaflet-div-icon{background:transparent;border:none}.leaflet-control-attribution{background:transparent!important;color:hsla(0,0%,100%,.3)!important;font-size:10px!important;margin-bottom:4px!important}.leaflet-control-attribution a{color:hsla(0,0%,100%,.3)!important;text-decoration:none!important}.route-pin{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:700;border:2px solid hsla(0,0%,100%,.92);box-shadow:0 2px 6px rgba(0,0,0,.6),0 0 0 1px rgba(0,0,0,.35)}.route-pin.pickup{width:26px;height:26px;background:var(--blue);border-radius:7px}.route-pin.home{width:28px;height:28px;background:#3b82f6;border:3px solid #fff;border-radius:50%}.route-pin.remaining{background:var(--accent)}.route-pin.done{background:#555;color:hsla(0,0%,100%,.7);border-color:hsla(0,0%,100%,.35);opacity:.6}.route-pin.next{background:var(--accent);border-color:#fff;animation:pin-pulse 1.4s ease-out infinite}.route-pin.blind{width:14px;height:14px;background:var(--accent);border-width:2px;box-shadow:0 1px 4px rgba(0,0,0,.6),0 0 0 1px rgba(0,0,0,.35);font-size:0;cursor:default}@keyframes pin-pulse{0%{box-shadow:0 0 0 0 rgba(34,197,94,.7)}70%{box-shadow:0 0 0 12px rgba(34,197,94,0)}to{box-shadow:0 0 0 0 rgba(34,197,94,0)}}.pickup-banner{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:14px;margin-bottom:12px;background:rgba(59,130,246,.12);border-radius:var(--r-card);color:var(--text);border:none!important;box-shadow:none!important}.pickup-banner:active{background:var(--bg3)}.pickup-pin{flex-shrink:0;width:28px;height:28px;border-radius:8px;background:var(--blue);color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center}.pickup-text{display:flex;flex-direction:column;min-width:0}.pickup-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text2)}.pickup-address{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stops-header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0;padding:18px 0;position:-webkit-sticky;position:sticky;top:calc(env(safe-area-inset-top, 0px) + var(--cockpit-map-h));z-index:23;background:var(--bg);box-shadow:0 4px 12px rgba(0,0,0,.5)}.stops-remaining{font-size:17px;font-weight:600;letter-spacing:-.02em;color:var(--text)}.stops-hint{font-size:12px;font-weight:500;color:var(--text4)}.stop-list{display:flex;flex-direction:column;gap:6px}.gate-card{background:var(--bg2);border-radius:var(--r-card);padding:20px 18px;text-align:center}.gate-headline{font-size:19px;font-weight:700;letter-spacing:-.02em;color:var(--text);line-height:1.25}.gate-sub{margin-top:8px;font-size:14px;color:var(--text2);line-height:1.4}.gate-unlock{width:100%;margin-top:16px;padding:17px;border-radius:var(--r-card);font-size:16px;font-weight:600;font-family:inherit;border:none;background:var(--accent);color:var(--accent-ink);cursor:pointer;transition:transform .1s,opacity .2s,background .2s}.gate-unlock:active{transform:scale(.98)}.gate-unlock:disabled{opacity:.6;cursor:default}.gate-unlock:disabled:active{transform:none}.gate-notice{margin-top:12px;font-size:13px;line-height:1.4;color:#f59e0b}.gate-proof{margin-top:14px;font-size:12px;color:var(--text4);letter-spacing:.01em}.gate-proof+.gate-unlock{margin-top:8px}.gate-fineprint{margin-top:10px;font-size:12px;color:var(--text4)}.gate-restore-link{display:block;width:100%;margin-top:14px;padding:6px 0 0;background:none;border:none;font-family:inherit;font-size:12px;color:var(--text4);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.gate-restore{margin-top:14px;padding-top:14px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:10px;text-align:left}.gate-restore-input{width:100%;padding:13px 14px;border-radius:12px;background:var(--bg);border:1px solid var(--border);color:var(--text);font-size:16px;line-height:1.3;font-family:inherit}.gate-restore-input::placeholder{color:var(--text5)}.gate-restore-input:focus{outline:none;border-color:var(--accent)}.gate-restore-input:disabled{opacity:.6}.gate-restore-actions{display:flex;gap:10px}.gate-restore-cancel,.gate-restore-submit{flex:1 1;padding:12px;border-radius:12px;font-size:15px;font-weight:600;font-family:inherit;border:none;cursor:pointer;transition:transform .1s,opacity .2s}.gate-restore-cancel{background:var(--bg);color:var(--text2);border:1px solid var(--border)}.gate-restore-submit{background:var(--accent);color:var(--accent-ink)}.gate-restore-cancel:active,.gate-restore-submit:active{transform:scale(.98)}.gate-restore-cancel:disabled,.gate-restore-submit:disabled{opacity:.5;cursor:default;transform:none}.gate-restore-notice{font-size:13px;line-height:1.4;color:var(--text2)}.stop-row{position:relative;overflow:hidden;border-radius:var(--r-card)}.stop-swipe-bg{position:absolute;inset:0;background:var(--accent);color:var(--accent-ink);display:flex;align-items:center;justify-content:flex-end;padding-right:24px;transition:opacity .2s ease}.stop-item{flex-direction:column;align-items:stretch;gap:0;padding:14px;background:var(--bg2);color:var(--text);border:none!important;box-shadow:none!important;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;touch-action:pan-y;will-change:transform;transition:opacity .2s,background .18s}.stop-item,.stop-main{position:relative;display:flex}.stop-main{z-index:1;align-items:center;gap:14px}.stop-item.snapping{transition:transform .25s cubic-bezier(.2,.8,.2,1)}.stop-item.pressing,.stop-press-fill{transition:transform .14s ease-out}.stop-press-fill{position:absolute;inset:0;z-index:0;background:var(--accent);opacity:.14;transform:scaleX(0);transform-origin:left center;pointer-events:none}.stop-press-fill.on{transform:scaleX(1);transition:transform .5s linear}.stop-edit-pill{position:absolute;left:6px;top:12px;bottom:12px;width:3px;border-radius:2px;background:var(--accent);pointer-events:none;z-index:1}.stop-edited-tag{color:var(--accent);font-weight:600}.stop-undo{flex:0 0 auto;margin-left:4px;padding:5px 11px;border-radius:var(--r-pill);border:1px solid var(--accent);background:transparent;font-weight:700;font-family:inherit;line-height:1;cursor:pointer}.stop-notice,.stop-undo{color:var(--accent);font-size:12px}.stop-notice{margin-top:8px;padding-left:48px;line-height:1.3}.stop-edit,.stop-notice{position:relative;z-index:1}.stop-edit{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:8px;-moz-user-select:text;user-select:text;-webkit-user-select:text}.stop-edit-restore{align-self:flex-start;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:7px 12px;border-radius:var(--r-pill);border:1px solid var(--accent);background:transparent;color:var(--accent);font-size:12px;font-weight:600;font-family:inherit;line-height:1.2;cursor:pointer}.stop-edit-was{font-size:13px;color:var(--text3);text-decoration:line-through;word-break:break-word}.stop-edit-input{width:100%;box-sizing:border-box;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:15px;font-family:inherit}.stop-edit-input:focus{outline:none;border-color:var(--accent)}.stop-edit-actions{display:flex;gap:8px}.stop-edit-verify{padding:8px 16px;border-radius:10px;border:none;background:var(--accent);color:var(--accent-ink);font-size:13px;font-weight:700;font-family:inherit;cursor:pointer}.stop-edit-verify:disabled{background:var(--disabled-bg);color:var(--disabled-text);cursor:default}.stop-edit-cancel{padding:8px 16px;border-radius:10px;border:1px solid var(--border);background:transparent;color:var(--text2);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer}.stop-edit-error{font-size:13px;line-height:1.4;color:var(--danger)}.verify-stage{display:flex;justify-content:center;padding:10px 0}.verify-check,.verify-ring-arc,.verify-ring-track{fill:none;stroke-width:3;stroke-linecap:round}.verify-ring-track{stroke:hsla(0,0%,100%,.1)}.verify-ring-arc{stroke:var(--text2);stroke-dasharray:30 119.38;transform-origin:22px 22px}.verify-ring.verifying .verify-ring-arc{animation:verify-spin .9s linear infinite}.verify-ring.passed .verify-ring-arc{stroke:var(--accent);stroke-dasharray:119.38;animation:verify-close .3s ease-out forwards}.verify-ring.passed .verify-check{stroke:var(--accent);stroke-linejoin:round;stroke-dasharray:26;stroke-dashoffset:26;animation:verify-draw .35s ease-out .28s forwards}.verify-ring.error .verify-ring-arc,.verify-ring.failing .verify-ring-arc{stroke:var(--danger);stroke-dasharray:119.38;animation:none}@keyframes verify-spin{to{transform:rotate(1turn)}}@keyframes verify-close{0%{stroke-dashoffset:119.38}to{stroke-dashoffset:0}}@keyframes verify-draw{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.verify-ring.verifying .verify-ring-arc{animation-duration:2.4s}.verify-ring.passed .verify-check,.verify-ring.passed .verify-ring-arc{animation-duration:.01s;animation-delay:0s}.stop-press-fill,.stop-press-fill.on{transition:none}}.stop-item.next,.stop-item:active{background:var(--bg3)}.stop-item.next{box-shadow:inset 3px 0 0 var(--accent)}.stop-item.completed{opacity:.38;background:var(--bg2);box-shadow:none}.stop-item.completed .stop-num{background:var(--chip-done-bg);color:var(--accent)}.stop-item.completed .stop-street{text-decoration:line-through}.stop-num{width:34px;height:34px;border-radius:50%;background:var(--accent);color:var(--accent-ink);font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .18s,color .18s}.stop-address{flex:1 1;min-width:0}.stop-street{font-size:15px;font-weight:600;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stop-city{font-size:13px;color:var(--text3);margin-top:2px}.stop-nav{flex:none;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--text5)}.landing-cta{display:block;width:100%;text-align:center;background:#22c55e;color:#0a0a0a;font-size:17px;font-weight:600;padding:18px;border-radius:14px;transition:transform .1s,background .15s}.landing-cta:hover{background:#2dd368}.landing-cta:active{transform:scale(.985)}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c95a17d6aa1ccc69-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/84792440f5374347-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/10735954b8957dce-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/69c8297e91a203ed-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/32ec8d161d520037-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ceda3e828136e1b8-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/103fc5fac08dcb15-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c95a17d6aa1ccc69-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/84792440f5374347-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/10735954b8957dce-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/69c8297e91a203ed-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/32ec8d161d520037-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ceda3e828136e1b8-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/103fc5fac08dcb15-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c95a17d6aa1ccc69-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/84792440f5374347-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/10735954b8957dce-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/69c8297e91a203ed-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/32ec8d161d520037-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ceda3e828136e1b8-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/103fc5fac08dcb15-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/c95a17d6aa1ccc69-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/84792440f5374347-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/10735954b8957dce-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/69c8297e91a203ed-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/32ec8d161d520037-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/ceda3e828136e1b8-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_Tight_eb7c85;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/103fc5fac08dcb15-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_Tight_Fallback_eb7c85;src:local("Arial");ascent-override:100.51%;descent-override:25.03%;line-gap-override:0.00%;size-adjust:96.39%}.__className_eb7c85{font-family:__Inter_Tight_eb7c85,__Inter_Tight_Fallback_eb7c85;font-style:normal}.__variable_eb7c85{--font-inter-tight:"__Inter_Tight_eb7c85","__Inter_Tight_Fallback_eb7c85"}