.stop-depth-layer {position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:hidden;}
.stop-ground-shadow {fill:#09203366;filter:blur(2px);}
body.is-night .stop-ground-shadow {fill:#0009;}
.stop-ground-pointer {fill:var(--red);stroke:white;stroke-width:2;stroke-linejoin:round;}
body:is(.is-night,:not(.is-night)) .map-marker.has-stop-depth {box-shadow:none;}
.crawl-plan-header.has-fly-by-actions {display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:4px;align-items:start;}
.crawl-plan-header.has-fly-by-actions>.crawl-fly-by-actions {width:auto;}
.crawl-fly-by-actions {display:flex;flex-direction:column;gap:8px;margin:0;align-items:center;}
.crawl-fly-by-actions button {display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;padding:10px;}
.crawl-fly-by-actions svg {width:22px;height:22px;}
.crawl-fly-by-toolbar {position:fixed;z-index:3;bottom:calc(var(--closed-drawer-peek-height,54px) + env(safe-area-inset-bottom,0px) + 12px);left:50%;translate:-50% 0;width:min(420px,calc(100% - 24px));box-sizing:border-box;display:grid;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--cream);color:var(--ink);box-shadow:var(--pane-parent-shadow,0 4px 8px #09203344);}
.crawl-fly-by-playback {display:flex;gap:8px;justify-content:center;}
.crawl-fly-by-seek {display:grid;gap:2px;font-size:var(--text-min);line-height:1.2;color:var(--muted);}
.crawl-fly-by-seek input {display:block;width:100%;height:32px;margin:0;accent-color:var(--red);cursor:pointer;}
.crawl-fly-by-toolbar[hidden],.crawl-fly-by-toolbar [hidden],.crawl-fly-by-actions [hidden] {display:none;}
.crawl-fly-by-toolbar button {display:inline-flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:48px;padding:10px;}
.crawl-fly-by-toolbar button svg {width:26px;height:26px;}
.crawl-fly-by-heading {display:flex;align-items:center;gap:10px;}
.crawl-fly-by-heading svg {width:30px;height:30px;display:block;}
.crawl-fly-by-rate {margin-left:auto;font-variant-numeric:tabular-nums;}
.crawl-fly-by-offer {margin-block:18px 20px;}
.fly-by-drone {pointer-events:none;display:flex;flex-direction:column;align-items:center;color:var(--ink);filter:drop-shadow(0 1px 2px #0008);}
.fly-by-drone>svg {width:44px;height:44px;padding:5px;border-radius:50%;background:var(--cream);border:2px solid var(--ink);}
.fly-by-drone-stem {height:24px;border-left:2px dashed var(--ink);}
.fly-by-drone-stem:after {content:"";display:block;position:absolute;bottom:0;left:50%;width:12px;height:5px;border-radius:50%;background:var(--ink);translate:-50% 50%;opacity:.4;}
.fly-by-drone-view {position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:hidden;}
.fly-by-drone-cone {fill:#d7ac541a;stroke:#d7ac5466;stroke-width:.7;stroke-linejoin:round;}
.fly-by-drone-footprint {fill:#d7ac542e;stroke:#b58a32bb;stroke-width:1.3;stroke-linejoin:round;}
body.is-night .fly-by-drone-cone {fill:#ffe5a822;stroke:#ffe5a877;}
body.is-night .fly-by-drone-footprint {fill:#ffe5a833;stroke:#ffe5a8bb;}
.stop-card {transition:opacity .22s ease;}
body.is-crawl-fly-by #stop-card {opacity:0!important;pointer-events:none;}
@media(prefers-reduced-motion:reduce){.stop-card {transition:none;}}
.stop-depth-comparison {min-height:100vh;padding:16px;background:var(--cream);color:var(--ink);}
.stop-depth-comparison #comparison-map {height:70vh;min-height:360px;position:relative;margin-top:12px;}
.stop-depth-comparison label {display:inline-flex;gap:8px;align-items:center;margin:8px;}

.stop-ground-beam {stroke:#ffe8ab66;stroke-width:.7;stroke-linejoin:round;}
.stop-cluster-light {fill:#ffdf9140;filter:blur(3px);}
body.is-night .stop-cluster-light {fill:#ffe6aa66;}
#tilt-toggle .tilt-instrument {width:38px!important;height:38px!important;flex:0 0 38px!important;color:inherit;}

.loading-recovery {position:absolute;bottom:16px;left:16px;right:16px;text-align:center;background:var(--cream);color:var(--ink);border-radius:12px;padding:12px;}
.loading-recovery p {margin:0 0 10px;}

.crawl-fly-by-seek {position:relative;padding-bottom:9px;}
.crawl-fly-by-ticks {position:absolute;bottom:4px;left:0;right:0;height:7px;pointer-events:none;color:var(--ink);}
.crawl-fly-by-ticks span {position:absolute;width:2px;height:7px;background:currentColor;opacity:.65;translate:-50% 0;}
.fly-by-stop-tag-anchor {width:0;height:0;pointer-events:none;z-index:2;}
.fly-by-stop-tag {max-width:230px;overflow:hidden;text-overflow:ellipsis;}
body.is-crawl-fly-by #crawl-plan:is([data-latch="top"],[data-latch="middle"]) .crawl-fly-by-return {animation:fly-by-return-reminder 1.6s ease-in-out infinite;}
@keyframes fly-by-return-reminder {0%,100%{box-shadow:var(--button-surface-rest),inset 0 0 0 3px transparent;}50%{box-shadow:var(--button-surface-rest),inset 0 0 0 3px #d7ac54;}}
@media(prefers-reduced-motion:reduce){body.is-crawl-fly-by #crawl-plan:is([data-latch="top"],[data-latch="middle"]) .crawl-fly-by-return {animation:none;box-shadow:var(--button-surface-rest),inset 0 0 0 3px #d7ac54;}}

.crawl-fly-by-heading {font-size:1.08rem;font-weight:850;}
.crawl-fly-by-heading strong {font:inherit;}
.crawl-fly-by-rate {font-size:var(--text-min);}
.crawl-fly-by-controls-grid {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(4px,1.4vw,8px);align-items:center;}
.crawl-fly-by-playback,.crawl-fly-by-zoom {display:contents;}
.crawl-fly-by-toolbar button {width:100%;max-width:48px;height:auto;min-width:0;min-height:0;aspect-ratio:1;padding:clamp(6px,2vw,10px);justify-self:center;}
.crawl-fly-by-toolbar button svg {width:100%;max-width:26px;height:auto;aspect-ratio:1;}
.crawl-fly-by-actions>#event-details-control {display:flex;align-items:center;justify-content:center;}
body .crawl-fly-by-return.is-destructive,body.is-night .crawl-fly-by-return.is-destructive {background:var(--danger-action-base);border-color:var(--danger-action-base);color:#fff;}
.fly-by-drone.is-launching {animation:fly-by-drone-launch .9s ease-in-out both;}
@keyframes fly-by-drone-launch {0%,100%{opacity:0;}15%,65%{opacity:1;}}
