.loading-surface{position:relative;isolation:isolate;padding:1rem;text-align:center}.loading-surface__wash{position:absolute;z-index:-1;left:50%;top:55%;width:max(80rem,250%);height:max(62rem,230%);transform:translate(-50%,-50%);pointer-events:none}.loading-surface__wash:after,.loading-surface__wash:before{content:"";position:absolute;inset:0}.loading-surface__wash:before{background:radial-gradient(ellipse closest-side,rgb(213 219 229/.9) 0,rgb(213 219 229/.9) 42%,rgb(213 219 229/.8) 56%,rgb(213 219 229/.32) 76%,rgb(213 219 229/0) 100%)}.loading-surface__wash:after{background:radial-gradient(ellipse closest-side,rgb(213 219 229/.12) 30%,rgb(213 219 229/.18) 60%,rgb(213 219 229/0) 100%);animation:loading-wash-enter .24s ease-out both}.loading-surface__content{position:relative}.loading-surface__link{color:#1f2933;text-decoration:underline;text-underline-offset:4px}.loading-surface__link:hover{color:#0c225b}.loading-surface__link:focus-visible{outline:2px solid #0c225b;outline-offset:4px;border-radius:2px}.loading-page,.loading-transition{overflow:clip}.loading-transition{position:relative}.loading-transition[data-loading-phase=ready],.loading-transition[data-loading-phase=ready]>.loading-transition__ready{display:contents}.loading-transition:not([data-loading-phase=ready])>.loading-transition__ready{position:absolute;inset:0;visibility:hidden}.loading-transition[data-loading-phase=clearing]>.loading-transition__pending .loading-surface__content{opacity:0;transition:opacity .12s ease-out}.loading-transition[data-loading-phase=dissolving]>.loading-transition__pending .loading-surface__content{visibility:hidden}.loading-transition[data-loading-phase=dissolving]>.loading-transition__pending .loading-surface__wash{opacity:0;transition:opacity .18s ease-in}@keyframes loading-wash-enter{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@media (max-width:639px){.loading-surface__wash{width:max(48rem,230%);height:max(46rem,185%)}}@media (prefers-reduced-motion:reduce){.loading-surface__wash:after{animation:none}.loading-transition .loading-surface__content,.loading-transition .loading-surface__wash{transition:none!important}}@media (forced-colors:active){.loading-surface__wash{display:none}.loading-surface__content{background:Canvas;color:CanvasText}.loading-surface__link{color:LinkText}.loading-surface__link:focus-visible{outline-color:Highlight}}.ride-route-sidebar{display:flex;min-height:0;flex-direction:column;overflow:hidden}.ride-route-stop-viewport{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;overflow:hidden}.ride-route-stop-list{position:relative;display:grid;width:100%;max-width:100%;min-height:0;flex:1 1 auto;grid-auto-rows:minmax(72px,1fr);gap:12px;margin:0;overflow-x:hidden;overflow-y:auto;padding:0 4px 0 0;scrollbar-gutter:stable}.ride-route-stop-list:focus-visible{border-radius:8px;outline:3px solid rgba(53,107,244,.42);outline-offset:2px}.ride-route-stop-card{width:100%;max-width:100%;min-width:0;min-height:72px;padding:14px 16px}.route-builder-workspace{--route-builder-height:100dvh;height:var(--route-builder-height);min-height:480px}@media (min-width:1024px){.route-builder-workspace{--route-builder-height:100%;height:100%;min-height:0}}.mapboxgl-ctrl-group,.mapboxgl-popup-content{border-radius:8px}.mapboxgl-ctrl-group{overflow:hidden;border:1px solid rgba(16,42,67,.14);box-shadow:0 10px 24px rgba(16,42,67,.16)}.map-status-chip{position:absolute;left:12px;bottom:40px;max-width:calc(100% - 24px);border:1px solid rgba(180,83,9,.26);border-radius:999px;background:rgba(255,251,235,.96);box-shadow:0 8px 20px rgba(16,42,67,.14);color:#78350f;font-size:12px;font-weight:700;line-height:1.2;padding:8px 12px;pointer-events:none}.drag-handle{display:flex;width:34px;height:34px;align-items:center;justify-content:center;cursor:grab;border:0;border-radius:999px;background:transparent;padding:0}.drag-handle:active{cursor:grabbing}.drag-handle-inner{display:flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:999px;border:3px solid var(--route-stop-stroke,#356bf4);background:var(--route-stop-fill,#eaf0ff);box-shadow:none;opacity:0;transition:background-color .16s ease,border-color .16s ease,opacity .16s ease}.drag-handle-index{color:var(--route-stop-text,#0f172a);font-size:13px;font-weight:800;line-height:1}.drag-handle[data-active=true]{z-index:5}.drag-handle[data-preview-pulse=true]{position:relative;z-index:6}.drag-handle[data-preview-pulse=true]:before{position:absolute;inset:-10px;border:3px solid color-mix(in srgb,var(--route-stop-active-stroke,#356bf4) 72%,transparent);border-radius:999px;content:"";opacity:0;transform:scale(.65);animation:route-stop-sound-ring .9s ease-out}.drag-handle[data-preview-pulse=true] .drag-handle-inner{animation:route-stop-sound-pop .76s cubic-bezier(.2,.92,.2,1)}.drag-handle[data-active=true] .drag-handle-inner{border-color:var(--route-stop-active-stroke,#356BF4);background:var(--route-stop-active-fill,#b9ccff);opacity:0}@keyframes route-stop-sound-ring{8%{opacity:.9}to{opacity:0;transform:scale(2.2)}}@keyframes route-stop-sound-pop{0%{filter:saturate(1);transform:scale(1)}24%{filter:saturate(1.28) brightness(1.05);transform:scale(1.72);box-shadow:0 0 0 5px rgba(255,255,255,.98),0 0 0 12px color-mix(in srgb,var(--route-stop-active-stroke,#356BF4) 34%,transparent),0 12px 28px rgba(15,23,42,.34)}to{filter:saturate(1);transform:scale(1)}}.user-location-marker{display:flex;width:34px;height:38px;align-items:center;justify-content:center;background:transparent;filter:drop-shadow(0 5px 5px rgba(15,23,42,.32));font-size:30px;line-height:1}.focus-location-marker{border:2px solid rgba(255,255,255,.95);border-radius:999px;background:rgba(255,255,255,.9);box-shadow:0 0 0 4px rgba(15,23,42,.12),0 8px 22px rgba(15,23,42,.34);font-size:22px;line-height:1;text-shadow:0 1px 2px rgba(255,255,255,.95),0 2px 5px rgba(15,23,42,.4)}.focus-location-marker,.traffic-control-marker{display:flex;width:34px;height:34px;align-items:center;justify-content:center}.traffic-control-marker{border:0;border-radius:999px;background:transparent;padding:0}.traffic-control-marker-inner{display:flex;width:34px;height:34px;align-items:center;justify-content:center;border:2px solid transparent;border-radius:999px;background:transparent;box-shadow:none;font-size:21px;line-height:1;scale:var(--route-preview-marker-depth-scale,1);transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,filter .16s ease,transform .16s ease}.traffic-control-marker[data-control-type=route_stop_sign] .traffic-control-marker-inner{border:0}.traffic-control-marker-icon{display:block;width:34px;height:34px;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 5px 5px rgba(15,23,42,.32))}.traffic-control-marker[data-active=true]{z-index:5}.traffic-control-marker[data-active=true] .traffic-control-marker-inner{border-color:rgba(255,255,255,.96);background:#ffffff;filter:saturate(1.18);transform:translateY(-5px) scale(1.55);box-shadow:0 0 0 6px rgba(255,255,255,.96),0 0 0 13px rgba(217,119,6,.5),0 0 28px rgba(217,119,6,.7),0 16px 34px rgba(15,23,42,.4);animation:traffic-control-pop .85s ease-in-out infinite alternate}.traffic-control-marker[data-preview-pulse=true]{z-index:6}.traffic-control-marker[data-preview-pulse=true]:before{position:absolute;inset:-10px;border:3px solid color-mix(in srgb,var(--traffic-control-pulse-color,#356bf4) 72%,transparent);border-radius:999px;content:"";opacity:0;transform:scale(.65);animation:traffic-control-sound-ring .9s ease-out}.traffic-control-marker[data-preview-pulse=true] .traffic-control-marker-inner{animation:traffic-control-sound-pop .76s cubic-bezier(.2,.92,.2,1)}.safety-hotspot-marker{border:0;border-radius:999px;background:transparent;padding:0}.safety-hotspot-marker,.safety-hotspot-marker-inner{display:flex;width:34px;height:34px;align-items:center;justify-content:center}.safety-hotspot-marker-inner{border:2px solid rgba(255,255,255,.96);border-radius:999px;background:#ffffff;box-shadow:0 0 0 4px rgba(245,158,11,.2),0 8px 20px rgba(15,23,42,.28);font-size:21px;line-height:1;transition:box-shadow .16s ease,filter .16s ease,transform .16s ease}.safety-hotspot-marker[data-severity=high] .safety-hotspot-marker-inner{box-shadow:0 0 0 4px rgba(239,68,68,.22),0 8px 20px rgba(15,23,42,.3)}.safety-hotspot-marker[data-severity=low] .safety-hotspot-marker-inner{box-shadow:0 0 0 4px rgba(250,204,21,.22),0 8px 20px rgba(15,23,42,.24)}.safety-hotspot-marker[data-source=bikemaps] .safety-hotspot-marker-inner{background:#fffbeb;color:#78350f;box-shadow:0 0 0 4px rgba(180,83,9,.25),0 8px 20px rgba(15,23,42,.28);font-size:11px;font-weight:800;letter-spacing:0}.safety-hotspot-marker[data-active=true]{z-index:7}.safety-hotspot-marker[data-active=true] .safety-hotspot-marker-inner{filter:saturate(1.18);transform:translateY(-4px) scale(1.35);box-shadow:0 0 0 6px rgba(255,255,255,.96),0 0 0 13px rgba(244,63,94,.38),0 16px 34px rgba(15,23,42,.38)}.safety-evidence-marker{border:0;border-radius:999px;background:transparent;padding:0}.safety-evidence-marker,.safety-evidence-marker-inner{display:flex;width:34px;height:34px;align-items:center;justify-content:center}.safety-evidence-marker-inner{border:2px solid rgba(255,255,255,.96);border-radius:999px;background:#ffffff;box-shadow:0 0 0 4px rgba(100,116,139,.18),0 8px 20px rgba(15,23,42,.26);font-size:21px;line-height:1;transition:box-shadow .16s ease,filter .16s ease,opacity .16s ease,transform .16s ease}.safety-evidence-marker[data-severity=positive] .safety-evidence-marker-inner{box-shadow:0 0 0 4px rgba(21,128,61,.2),0 8px 20px rgba(15,23,42,.24)}.safety-evidence-marker[data-severity=caution] .safety-evidence-marker-inner{box-shadow:0 0 0 4px rgba(245,158,11,.24),0 8px 20px rgba(15,23,42,.28)}.safety-evidence-marker[data-severity=severe] .safety-evidence-marker-inner{box-shadow:0 0 0 4px rgba(225,29,72,.26),0 8px 20px rgba(15,23,42,.32)}.safety-evidence-marker[data-source-type=bikemaps_report] .safety-evidence-marker-inner{background:#fffbeb;color:#78350f;box-shadow:0 0 0 4px rgba(180,83,9,.24),0 8px 20px rgba(15,23,42,.28);font-size:11px;font-weight:800;letter-spacing:0}.safety-evidence-marker[data-dimmed=true] .safety-evidence-marker-inner{opacity:.38;transform:scale(.9)}.safety-evidence-marker[data-active=true]{z-index:8}.safety-evidence-marker[data-active=true] .safety-evidence-marker-inner{filter:saturate(1.18);transform:translateY(-4px) scale(1.32);box-shadow:0 0 0 6px rgba(255,255,255,.96),0 0 0 13px rgba(53,107,244,.3),0 16px 34px rgba(15,23,42,.36)}.safety-evidence-marker[data-active=true][data-severity=caution] .safety-evidence-marker-inner{box-shadow:0 0 0 6px rgba(255,255,255,.96),0 0 0 13px rgba(245,158,11,.42),0 16px 34px rgba(15,23,42,.36)}.safety-evidence-marker[data-active=true][data-severity=severe] .safety-evidence-marker-inner{box-shadow:0 0 0 6px rgba(255,255,255,.96),0 0 0 13px rgba(225,29,72,.44),0 16px 34px rgba(15,23,42,.38)}.safety-evidence-marker[data-active=true][data-source-type=bikemaps_report] .safety-evidence-marker-inner,.safety-hotspot-marker[data-active=true][data-source=bikemaps] .safety-hotspot-marker-inner{box-shadow:0 0 0 6px rgba(255,255,255,.96),0 0 0 13px rgba(180,83,9,.38),0 16px 34px rgba(15,23,42,.38)}@keyframes traffic-control-sound-pop{0%{filter:saturate(1);transform:scale(1)}24%{filter:saturate(1.28) brightness(1.05);transform:scale(1.72);box-shadow:0 0 0 5px rgba(255,255,255,.98),0 0 0 12px color-mix(in srgb,var(--traffic-control-pulse-color,#356BF4) 34%,transparent),0 12px 28px rgba(15,23,42,.34)}to{filter:saturate(1);transform:scale(1)}}@keyframes traffic-control-sound-ring{8%{opacity:.9}to{opacity:0;transform:scale(2.2)}}@keyframes traffic-control-pop{0%{box-shadow:0 0 0 6px rgba(255,255,255,.96),0 0 0 13px rgba(217,119,6,.42),0 0 22px rgba(217,119,6,.58),0 16px 34px rgba(15,23,42,.36)}to{box-shadow:0 0 0 7px rgba(255,255,255,.98),0 0 0 17px rgba(217,119,6,.24),0 0 36px rgba(217,119,6,.72),0 18px 38px rgba(15,23,42,.42)}}.route-preview-confetti{position:fixed;inset:0;z-index:45;pointer-events:none}.route-fit-map-control-button{display:flex!important;align-items:center;justify-content:center}.route-fit-map-control-button svg{display:block;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.route-fit-map-control-button:disabled{cursor:not-allowed;opacity:.45}.mobile-settings-sheet{opacity:0;transform:translateY(calc(100% + 1rem));transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .18s ease,visibility 0s linear .28s;visibility:hidden;will-change:transform,opacity}.mobile-settings-sheet-open{opacity:1;transform:translateY(0);transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .18s ease,visibility 0s linear 0s;visibility:visible}@media (min-width:1024px){.mobile-settings-sheet{opacity:1;transform:none;transition:none;visibility:visible;will-change:auto}}@media (prefers-reduced-motion:reduce){.mobile-settings-sheet,.mobile-settings-sheet-open{transition:none}.live-finish-modal,.live-finish-scrim{animation:none}.live-ride-shell.ended .live-sidebar{transition:none}}@media (max-width:767px),(orientation:portrait) and (max-width:1024px){.drag-handle,.drag-handle-inner{width:44px;height:44px}.drag-handle-index{font-size:15px}}.live-ride-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(336px,388px);background:#eaf0ff}.live-ride-shell,.live-sidebar{min-height:100vh;overflow:hidden}.live-sidebar{z-index:10;display:flex;max-height:100vh;flex-direction:column;gap:16px;border-left:1px solid rgba(215,223,231,.95);background:rgba(255,255,255,.96);padding:20px;box-shadow:-12px 0 34px rgba(31,41,51,.1)}.live-map-stage{--live-map-edge-inset:16px;position:relative;min-height:100vh;overflow:hidden;background:#eaf0ff}.live-mapbox-container,.live-mapbox-missing{position:absolute;inset:0}.live-mapbox-missing{display:grid;place-items:center;padding:24px;text-align:center;color:#586270}.mapbox-live-broadcaster{position:absolute;display:grid;width:var(--marker-dot-size,32px);height:var(--marker-dot-size,32px);place-items:center;pointer-events:none}.mapbox-live-fuzzy{position:absolute;top:50%;left:50%;width:var(--fuzzy-size);height:var(--fuzzy-size);border-radius:999px;background:var(--marker-color);opacity:.18;translate:-50% -50%;animation:liveFuzzyPulse 2.4s ease-in-out infinite}.mapbox-live-dot{position:relative;z-index:1;display:grid;width:32px;height:32px;place-items:center;border:4px solid #ffffff;border-radius:999px;background:var(--marker-color);color:#ffffff;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Inter,ui-sans-serif,system-ui,sans-serif;font-size:18px;font-weight:900;line-height:1;box-shadow:0 8px 18px rgba(15,23,42,.24)}.mapbox-live-broadcaster.organizer .mapbox-live-dot{width:40px;height:40px;border-color:#063348;color:#1f2933;font-size:21px}.live-reaction-burst-layer{position:absolute;right:0;bottom:18%;left:0;z-index:8;height:34%;overflow:visible;pointer-events:none}.live-reaction-burst{position:absolute;bottom:0;left:var(--reaction-x);display:grid;width:54px;height:54px;place-items:center;opacity:0;transform:translateX(-50%);animation:liveReactionFloatPop 2.5s cubic-bezier(.2,.75,.25,1) forwards;will-change:transform,opacity}.live-reaction-balloon{position:relative;z-index:1;display:grid;width:48px;height:48px;place-items:center;border:3px solid rgba(255,212,0,.92);border-radius:999px;background:rgba(255,255,255,.96);font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif;font-size:26px;line-height:1;box-shadow:0 12px 28px rgba(15,23,42,.24)}.live-reaction-pop{position:absolute;inset:2px;border:3px solid #ffd400;border-radius:999px;opacity:0;animation:liveReactionPopRing 2.5s ease-out forwards}.live-floating-header{left:var(--live-map-edge-inset);max-width:min(360px,calc(100% - 32px));align-items:center;border:1px solid rgba(215,223,231,.95);border-radius:8px;background:rgba(255,255,255,.96);padding:8px;box-shadow:0 12px 32px rgba(31,41,51,.14);backdrop-filter:blur(14px)}.live-floating-header,.live-map-top-right-stack{position:absolute;top:var(--live-map-edge-inset);z-index:10;display:flex;gap:10px}.live-map-top-right-stack{right:var(--live-map-edge-inset);width:clamp(320px,34vw,440px);flex-direction:column;align-items:flex-end}.live-ride-shell.ended .live-action-cluster,.live-ride-shell.ended .live-broadcaster-legend,.live-ride-shell.ended .live-camera-toggle{display:none}.live-header-copy{display:flex;min-width:0;align-items:center;gap:8px}.live-header-copy h1{font-size:16px;font-weight:850;line-height:1.15}.live-header-copy h1,.live-header-subtitle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-header-subtitle{max-width:260px;max-height:20px;color:#586270;font-size:12px;line-height:1.35;opacity:1;animation:liveSubtitleHide 5.6s ease forwards}.live-waiting-banner{display:flex;width:100%;flex-direction:column;gap:4px;border:1px solid rgba(255,212,0,.55);border-radius:8px;background:rgba(31,41,51,.94);padding:12px 14px;color:#ffffff;box-shadow:0 12px 32px rgba(31,41,51,.18);backdrop-filter:blur(14px)}.live-waiting-banner strong{display:flex;align-items:baseline;justify-content:space-between;gap:16px;text-transform:uppercase}.live-waiting-banner strong,.live-waiting-banner strong span{color:#ffd400;font-size:13px;font-weight:850}.live-waiting-banner time{color:#ffd400;font-size:32px;font-variant-numeric:tabular-nums;font-weight:950;letter-spacing:-.04em;line-height:1}.live-waiting-banner.is-late{border-color:rgba(251,191,36,.55)}.live-waiting-banner.is-late strong{justify-content:flex-start;gap:8px;text-transform:none}.live-waiting-banner.is-late strong span,.live-waiting-banner.is-late time{color:#fbbf24;font-size:28px;font-weight:850;line-height:1.15;letter-spacing:-.02em}.live-waiting-banner time{text-transform:none}.live-waiting-banner span{font-size:13px;line-height:1.45}.live-waiting-banner .live-connection-notice{border-left:1px solid rgba(215,223,231,.95);padding-left:12px;color:#d7dfe7;font-size:12px;font-weight:450}.live-broadcasting-status{border-color:rgba(215,223,231,.95);background:rgba(255,255,255,.96);color:#1f2933}.live-broadcasting-status time{color:inherit;font-size:inherit;font-weight:600;letter-spacing:normal;line-height:inherit}.live-status-dot{width:9px;height:9px;flex:0 0 auto;border-radius:999px;background:#356BF4;box-shadow:0 0 0 4px rgba(53,107,244,.14)}.live-icon-button,.live-reaction-button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:8px;border-radius:8px;border:1px solid #d7dfe7;background:rgba(255,255,255,.95);color:#1f2933;font-weight:800}.live-icon-button{width:42px;flex:0 0 auto}.live-schedule-panel{display:flex;flex:1 1 auto;min-height:0;flex-direction:column;overflow:hidden;padding-right:2px}.live-panel-heading{display:flex;min-height:48px;width:100%;align-items:center;justify-content:space-between;gap:12px;border-radius:8px;padding:0;color:#1f2933;font-weight:800}.live-schedule-heading,.live-schedule-toggle-meta{display:inline-flex;align-items:center;gap:9px}.live-schedule-toggle-meta{color:#586270;font-size:13px}.live-schedule-body{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;gap:12px;padding-top:8px}.live-stop-sequence{display:grid;width:36px;height:36px;flex:0 0 auto;place-items:center;border:2px solid #d7dfe7;border-radius:999px;background:transparent;color:#586270;font-size:14px;font-weight:900}.live-stop-sequence.current{border-color:#356BF4;background:#eaf0ff;color:#356BF4}.live-stop-sequence.start{width:56px;padding-inline:10px}.live-stop-sequence.passed{border-color:#d7dfe7;background:#f3f6f8;color:#586270}.live-stops-meta-row{display:flex;justify-content:space-between;gap:10px;color:#586270;font-size:12px;font-weight:800}.live-stops-list{position:relative;display:grid;width:100%;max-width:100%;min-height:0;flex:1 1 auto;grid-auto-rows:minmax(76px,1fr);gap:12px;overflow-x:hidden;overflow-y:auto;padding:6px 2px 2px;scrollbar-gutter:stable;scroll-padding-block:6px}.live-stops-list:focus-visible{border-radius:8px;outline:3px solid rgba(53,107,244,.42);outline-offset:2px}.live-stop-list-row{display:flex;width:100%;max-width:100%;min-width:0;min-height:76px;align-items:center;gap:12px;border:1px solid #d7dfe7;border-radius:8px;background:#ffffff;color:#1f2933;padding:14px 12px}.live-stop-list-row.passed{color:#586270;opacity:.72}.live-stop-list-row.next{border-color:#356BF4;background:#eaf0ff;box-shadow:inset 3px 0 0 #356BF4}.live-stop-list-name{color:inherit;font-size:14px;font-weight:850}.live-stop-list-detail,.live-stop-list-name{display:block;overflow:hidden;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.live-stop-list-detail{margin-top:3px;color:#586270;font-size:12px;font-weight:650}.live-stop-status{display:inline-flex;min-width:64px;min-height:30px;align-items:center;justify-content:center;flex:0 0 auto;border-radius:999px;background:#f3f6f8;color:#586270;font-size:12px;font-weight:800;padding:0 8px;white-space:nowrap}.live-stop-status.next{background:#d9e4ff;color:#356BF4}.live-stop-status.on-time,.live-stop-status.passed{background:#eef2f5;color:#586270}.live-stop-status.late{background:#fff5d6;color:#8a5c00}.live-reaction-button{flex:0 0 auto;min-width:0;padding:0 12px}.live-toast{position:relative;max-width:min(360px,calc(100vw - 40px));border:1px solid rgba(53,107,244,.25);border-radius:8px;background:#f7f9ff;padding:12px 14px;color:#356BF4;font-size:14px;font-weight:700}.live-toast.error{border-color:rgba(190,18,60,.24);background:#fff5f7;color:#9f1239;cursor:help}.live-toast.error:focus{outline:none;box-shadow:0 0 0 4px rgba(255,212,0,.45)}.live-toast-summary{display:inline-flex;align-items:center;gap:8px}.live-toast-context{right:0;bottom:calc(100% + 10px);z-index:1;display:grid;width:min(320px,calc(100vw - 40px));gap:5px;border:1px solid rgba(215,223,231,.95);border-radius:8px;padding:12px;color:#1f2933;font-size:13px;font-weight:650;line-height:1.35;box-shadow:0 14px 34px rgba(31,41,51,.18);opacity:0;pointer-events:none;transform:translateY(6px);transition:opacity .15s ease,transform .15s ease,visibility .15s ease;visibility:hidden}.live-toast-context,.live-toast-context:after{position:absolute;background:rgba(255,255,255,.98)}.live-toast-context:after{right:24px;bottom:-6px;width:12px;height:12px;border-right:1px solid rgba(215,223,231,.95);border-bottom:1px solid rgba(215,223,231,.95);content:"";rotate:45deg}.live-toast-context span,.live-toast-context strong{display:block}.live-toast-context strong{color:#9f1239;font-size:12px;font-weight:850;text-transform:uppercase}.live-toast.error:focus .live-toast-context,.live-toast.error:focus-within .live-toast-context,.live-toast.error:hover .live-toast-context{opacity:1;transform:translateY(0);visibility:visible}.live-broadcaster-legend{position:absolute;bottom:var(--live-map-edge-inset);left:var(--live-map-edge-inset);z-index:10;width:min(348px,calc(100% - 40px));border:1px solid rgba(215,223,231,.95);border-radius:8px;background:rgba(255,255,255,.96);box-shadow:0 12px 32px rgba(31,41,51,.14);backdrop-filter:blur(14px)}.live-broadcaster-legend.collapsed{width:auto}.live-broadcaster-legend-toggle{display:flex;min-height:44px;width:100%;align-items:center;justify-content:space-between;gap:12px;border-radius:8px;padding:0 14px;color:#1f2933;font-weight:800}.live-riders-summary{display:inline-flex;align-items:center;gap:9px;white-space:nowrap}.live-broadcaster-legend-toggle:focus{outline:none;box-shadow:0 0 0 4px rgba(255,212,0,.45)}.live-broadcaster-legend-body{border-top:1px solid #edf1f5;padding:12px 14px 14px}.live-broadcaster-legend-row{display:flex;align-items:center;gap:12px;border-radius:8px;background:#f8fafc;padding:10px;font-size:14px}.live-action-cluster{position:absolute;right:var(--live-map-edge-inset);bottom:var(--live-map-edge-inset);z-index:10;display:flex;flex-direction:column;align-items:flex-end;gap:12px}.live-reaction-actions{display:grid;grid-template-columns:48px;gap:8px;justify-items:end}.live-action-button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:8px;border-radius:8px;padding:0 16px;font-weight:800;box-shadow:0 12px 28px rgba(31,41,51,.14)}.live-action-button:disabled{cursor:not-allowed;opacity:.58}.live-action-button.secondary{border:1px solid rgba(215,223,231,.95);background:rgba(255,255,255,.96);color:#1f2933;backdrop-filter:blur(14px)}.live-action-button:focus{outline:none;box-shadow:0 0 0 4px rgba(255,212,0,.45),0 12px 28px rgba(53,107,244,.24)}.live-reaction-button{position:relative;display:grid;width:48px;min-width:48px;height:48px;min-height:48px;place-items:center;border:1px solid rgba(215,223,231,.95);border-radius:999px;background:rgba(255,255,255,.96);color:#1f2933;box-shadow:0 10px 24px rgba(31,41,51,.16);transform:scale(1);transform-origin:right center;transition:transform .16s ease-out,box-shadow .16s ease-out;will-change:transform}.live-reaction-button span{font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif;font-size:25px;line-height:1}.live-reaction-button:disabled{cursor:not-allowed;filter:grayscale(.2);opacity:.58}.live-reaction-button:focus-visible{outline:none;box-shadow:0 0 0 4px rgba(255,212,0,.55),0 10px 24px rgba(31,41,51,.16)}.live-reaction-actions[data-keyboard-active=true] .live-reaction-button{transform:scale(var(--live-reaction-scale,1))}@media (hover:hover) and (pointer:fine){.live-reaction-actions[data-pointer-active=true] .live-reaction-button{transform:scale(var(--live-reaction-scale,1))}}.live-camera-toggle{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:8px;border-radius:8px;border:1px solid rgba(215,223,231,.95);background:rgba(255,255,255,.96);padding:0 14px;color:#1f2933;font-weight:800;box-shadow:0 12px 32px rgba(31,41,51,.14);backdrop-filter:blur(14px)}.live-camera-toggle.active{border-color:#356BF4;background:#356BF4;color:#ffffff;width:44px;padding:0}.live-camera-toggle.active .live-camera-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.live-camera-toggle:focus{outline:none;box-shadow:0 0 0 4px rgba(255,212,0,.45),0 12px 32px rgba(31,41,51,.14)}.live-finish-scrim{position:fixed;inset:0;z-index:30;background:rgba(15,23,42,.58);backdrop-filter:saturate(.88) brightness(.82);animation:liveFinishFadeIn .26s ease both}.live-finish-confetti{position:fixed;inset:0;z-index:31;overflow:hidden;pointer-events:none}.live-finish-confetti .route-preview-confetti{z-index:1}.live-finish-modal{position:fixed;top:50%;left:50%;z-index:32;display:grid;width:min(460px,calc(100% - 32px));gap:12px;transform:translate(-50%,-50%);border:1px solid rgba(255,212,0,.48);border-radius:8px;background:#ffffff;padding:24px;text-align:center;box-shadow:0 26px 70px rgba(15,23,42,.34);animation:liveFinishModalIn .36s ease both}.live-finish-icon{display:grid;width:58px;height:58px;place-items:center;justify-self:center;border-radius:999px;background:#eaf0ff;color:#356BF4}.live-finish-kicker{color:#356BF4;font-size:13px;font-weight:900;text-transform:uppercase}.live-finish-modal h2{color:#1f2933;font-size:clamp(24px,4vw,38px);font-weight:900;line-height:1.05}.live-finish-thanks{color:#586270;font-size:16px;font-weight:750}.live-finish-cta{display:inline-flex;min-height:50px;align-items:center;justify-content:center;gap:10px;justify-self:center;border-radius:8px;background:#356BF4;padding:0 18px;color:#ffffff;font-weight:850;box-shadow:0 14px 30px rgba(53,107,244,.26)}.live-finish-cta:focus{outline:none;box-shadow:0 0 0 4px rgba(255,212,0,.45),0 14px 30px rgba(53,107,244,.26)}@keyframes liveSubtitleHide{0%,62%{max-height:20px;max-width:260px;opacity:1}to{max-height:0;max-width:0;opacity:0}}@keyframes liveFuzzyPulse{50%{opacity:.27;scale:1.18}}@keyframes liveReactionFloatPop{0%{opacity:0;transform:translate(-50%,12px) rotate(0deg) scale(.78)}12%,78%{opacity:1}55%{transform:translate(calc(-50% + var(--reaction-mid-drift)),var(--reaction-mid-rise)) rotate(var(--reaction-mid-tilt)) scale(1.04)}82%{opacity:1;transform:translate(calc(-50% + var(--reaction-drift)),var(--reaction-rise)) rotate(var(--reaction-tilt)) scale(1.12,.9)}to{opacity:0;transform:translate(calc(-50% + var(--reaction-drift)),var(--reaction-rise)) rotate(var(--reaction-tilt)) scale(.15)}}@keyframes liveReactionPopRing{0%,80%{opacity:0;scale:.7}84%{opacity:.9}to{opacity:0;scale:1.8}}@keyframes liveReactionReduced{0%{opacity:0}18%,72%{opacity:1}to{opacity:0}}@keyframes liveFinishFadeIn{0%{opacity:0}}@keyframes liveFinishModalIn{0%{opacity:0;transform:translate(-50%,calc(-50% + 14px)) scale(.98)}}@media (max-width:1199px){.live-map-top-right-stack{top:88px;right:var(--live-map-edge-inset);left:var(--live-map-edge-inset);width:auto}}@media (max-width:900px){.live-ride-shell{grid-template-columns:1fr;grid-template-rows:minmax(72dvh,auto) auto;overflow:auto}.live-sidebar{min-height:auto;max-height:none;border-left:0;border-top:1px solid rgba(215,223,231,.95);padding:12px;box-shadow:0 -12px 28px rgba(31,41,51,.08)}.live-map-stage{--live-map-edge-inset:12px;min-height:72dvh}.live-floating-header{top:var(--live-map-edge-inset);left:var(--live-map-edge-inset);gap:10px;max-width:calc(100% - (2 * var(--live-map-edge-inset)));padding:8px}.live-header-copy h1{font-size:17px;line-height:1.2}.live-header-subtitle{max-width:min(240px,calc(100vw - 112px))}.live-map-top-right-stack{top:88px}.live-waiting-banner{min-width:0}.live-floating-header .live-icon-button{min-height:40px;width:40px}.live-broadcaster-legend{bottom:var(--live-map-edge-inset);left:var(--live-map-edge-inset)}.live-broadcaster-legend,.live-broadcaster-legend.collapsed{width:min(210px,calc(100% - 180px))}.live-action-cluster{right:var(--live-map-edge-inset);bottom:var(--live-map-edge-inset);left:auto;align-items:flex-end}.live-action-button{padding:0 12px}.live-reaction-actions{grid-template-columns:repeat(2,48px)}.live-toast{align-self:flex-end}.live-toast-context{right:auto;left:0;width:min(320px,calc(100vw - 32px))}.live-toast-context:after{right:auto;left:24px}.live-camera-toggle{min-height:40px;padding:0 12px}.live-schedule-panel{height:min(360px,48dvh);max-height:none;flex:0 0 auto}.live-stops-list{grid-auto-rows:minmax(72px,1fr)}}@media (max-width:900px) and (max-height:520px) and (orientation:landscape){.live-floating-header{max-width:calc(50% - 20px)}.live-map-top-right-stack{top:var(--live-map-edge-inset);right:var(--live-map-edge-inset);left:auto;width:min(320px,calc(50% - 20px))}.live-action-cluster{flex-direction:row;align-items:flex-end}.live-reaction-actions{grid-template-columns:repeat(6,40px)}.live-reaction-button{width:40px;min-width:40px;height:40px;min-height:40px}.live-action-button{min-height:40px}}@media (max-width:720px) and (max-height:520px) and (orientation:landscape){.live-reaction-actions{grid-template-columns:repeat(3,40px)}}@media (prefers-reduced-motion:reduce){.mapbox-live-fuzzy{animation:none}.live-reaction-burst{animation:liveReactionReduced 1.2s ease-out forwards;transform:translateX(-50%)}.live-reaction-pop{display:none}.mapbox-live-broadcaster{transition:none}.live-reaction-actions[data-keyboard-active=true] .live-reaction-button,.live-reaction-actions[data-pointer-active=true] .live-reaction-button,.live-reaction-button{transform:none;transition:none}}