/* Map-specific polish. The original Watch hero, library and bottom rail remain intact. */
.ctw-map-stage{isolation:isolate;height:clamp(680px,84svh,900px);min-height:680px;--ctw-dock:112px}
.ctw-map-stage [hidden]{display:none!important}
.ctw-map-stage .ctw-map{background:#071527;transition:none}
.ctw-map-stage .ctw-map-shade{pointer-events:none;opacity:.32}
.ctw-map-stage .ctw-map-heading{z-index:410;max-width:390px;top:30px;left:30px}
.ctw-map-stage .ctw-map-heading h2{font-size:clamp(32px,3vw,52px)}
.ctw-map-stage .ctw-map-tools{top:24px!important;left:auto;right:24px;max-width:calc(100% - 460px);display:grid!important;grid-template-columns:minmax(150px,1fr) minmax(140px,170px) auto auto 44px;gap:7px;opacity:1!important;pointer-events:auto!important;z-index:460}
.ctw-map-stage .ctw-map-tools>*{min-width:0}
.ctw-map-stage .ctw-map-tools input,.ctw-map-stage .ctw-map-tools select,.ctw-map-stage .ctw-map-tools button{height:44px;min-height:44px;border:1px solid #365370;border-radius:6px;background:#071c37;color:#fff;font:inherit;font-size:13px;padding:0 10px;display:block;cursor:pointer}
.ctw-map-stage .ctw-map-tools input{cursor:text;width:100%}.ctw-map-stage .ctw-map-tools select option{background:#071c37;color:#fff}
.ctw-map-stage .ctw-advanced-filters{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#071c37;padding:12px;border:1px solid #365370;border-radius:8px}
.ctw-map-stage .ctw-advanced-filters select{width:100%}.ctw-map-stage .ctw-map-fullscreen{display:block!important}
.ctw-map-stage .ctw-coverage-legend{position:absolute;z-index:430;right:22px;bottom:calc(var(--ctw-dock) + 24px);width:min(340px,40%);background:rgba(3,17,39,.93);border:1px solid #284560;padding:12px 14px;border-radius:8px;pointer-events:none;font-size:11px;line-height:1.5;color:#d4e9fa}
.ctw-map-stage .ctw-coverage-legend strong{font-size:10px;letter-spacing:.12em;color:#fff;display:block;margin-bottom:5px}
.ctw-map-stage .ctw-coverage-legend small{display:block;font-size:11px}.ctw-map-stage .ctw-legend-empty{color:#aec2d5;margin-top:6px}
.ctw-map-stage .ctw-legend-scale{display:flex;gap:8px;margin-bottom:6px}.ctw-map-stage .ctw-legend-scale span{border-top:5px solid;flex:1;padding-top:4px;font-size:10px}
.ctw-map-stage .ctw-map-status{position:absolute;z-index:410;bottom:calc(var(--ctw-dock) + 28px);left:68px;max-width:36%;padding:8px 12px;border-radius:6px;background:#071c37;color:#c7def0;font-size:12px;pointer-events:none;margin:0}
.ctw-map-stage .leaflet-control-zoom{margin-bottom:calc(var(--ctw-dock) + 28px);margin-left:16px}.ctw-map-stage .leaflet-control-zoom a{width:44px;height:44px;line-height:44px;background:#091f3c;color:white;border-color:#365370}
.ctw-map-stage .leaflet-control-attribution{font-size:10px;background:#081a31;color:#c2d7e9;max-width:90%}.ctw-map-stage .leaflet-control-attribution a{color:#b3ddff}
.ctw-map-stage .ctw-osm-tiles{filter:invert(1) hue-rotate(175deg) saturate(.6) brightness(.72)}
.ctw-map-stage .ctw-marker-core{width:9px;height:9px;left:8px;top:8px;animation:none;box-shadow:0 0 12px #16bbff;border:1px solid #b9f4ff}
.ctw-map-stage .ctw-marker-core:before,.ctw-map-stage .ctw-marker-core:after{display:none}.ctw-map-stage .ctw-station-marker .ctw-marker-core{border-radius:2px;background:#c4f6ff}
.ctw-map-stage .ctw-network-dot{box-shadow:0 0 9px #22b8ff}.ctw-map-stage .ctw-network-dock{height:var(--ctw-dock);z-index:470;bottom:18px;padding:12px 16px;background:rgba(4,20,41,.97)}
.ctw-map-stage .ctw-network-list{overflow-x:auto;scrollbar-width:thin;overscroll-behavior-x:contain}.ctw-map-stage .ctw-network-card{min-height:62px;flex-shrink:0}
.ctw-map-stage .ctw-network-panel{top:0;bottom:calc(var(--ctw-dock) + 18px);padding:38px 24px 24px;width:clamp(300px,29vw,410px);overscroll-behavior:contain;overflow:auto;z-index:465}
.ctw-map-stage.ctw-panel-open .ctw-map,.ctw-map-stage.ctw-panel-open .ctw-map-shade{left:clamp(300px,29vw,410px)!important}
.ctw-map-stage .ctw-network-panel-close{width:44px;height:44px;top:8px;right:10px}.ctw-map-stage .ctw-network-panel h3{font-size:clamp(26px,2.3vw,38px);margin-right:28px;overflow-wrap:anywhere}
.ctw-map-stage .ctw-network-details strong,.ctw-map-stage .ctw-network-details p{overflow-wrap:anywhere;white-space:normal}.ctw-map-stage .ctw-network-details small{display:block;color:#b8cee5;font-size:12px;line-height:1.5}
.ctw-map-stage .ctw-coverage-detail{padding:12px 0;border-bottom:1px solid #274666}.ctw-map-stage .ctw-coverage-detail a{color:#82dcff;display:inline-block;padding:12px 0;text-decoration:underline}.ctw-map-stage .ctw-coverage-detail p{font-size:13px}
.ctw-map-stage .ctw-station-select{display:block;width:100%;text-align:left;min-height:44px;margin:6px 0;background:#153758;color:#fff;border:1px solid #3f6385;border-radius:6px;padding:10px}
.ctw-map-stage .ctw-network-links a{min-height:44px;display:inline-flex;align-items:center}
.ctw-map-stage .ctw-availability{display:grid;gap:8px;color:#132f4d}.ctw-map-stage .ctw-availability button{min-height:44px;border:1px solid #456789;background:#edf7ff;color:#123455;border-radius:4px;text-align:left;padding:8px}.ctw-map-stage .ctw-availability small{line-height:1.4}
.ctw-map-stage .ctw-map-hints{display:none}.ctw-map-stage .ctw-map-heading-toggle{top:90px;left:24px}
.ctw-map-stage :is(button,a,input,select):focus-visible{outline:3px solid #9aeaff!important;outline-offset:3px}.ctw-map-stage .leaflet-interactive:focus{outline:2px solid #9aeaff}
.ctw-map-stage:fullscreen,.ctw-map-stage.ctw-fullscreen-fallback{height:100dvh!important;min-height:0!important;width:100%!important}.ctw-map-stage.ctw-fullscreen-fallback{position:fixed;inset:0;z-index:100000}
@media(max-width:1200px){.ctw-map-stage .ctw-map-tools{max-width:calc(100% - 48px);grid-template-columns:minmax(150px,1fr) minmax(140px,170px) auto auto 44px}.ctw-map-stage .ctw-map-heading{top:95px;max-width:360px}.ctw-map-stage .ctw-map-heading-toggle{top:90px}.ctw-map-stage.ctw-panel-open .ctw-map-tools{max-width:calc(100% - 365px);grid-template-columns:minmax(120px,1fr) minmax(125px,1fr) 44px}.ctw-map-stage.ctw-panel-open .ctw-filter-toggle{grid-row:2}.ctw-map-stage.ctw-panel-open .ctw-map-wheel-toggle{grid-row:2;grid-column:2/4}}
@media(max-width:820px){
 .ctw-map-stage{height:clamp(560px,90svh,830px);min-height:560px;--ctw-dock:106px}
 .ctw-map-stage .ctw-map-tools,.ctw-map-stage.ctw-panel-open .ctw-map-tools{display:grid!important;left:12px;right:12px;top:12px!important;max-width:none;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px;gap:6px;opacity:1!important;pointer-events:auto!important}
 .ctw-map-stage .ctw-map-search{grid-column:1/3;grid-row:1}.ctw-map-stage .ctw-map-fullscreen{grid-column:3;grid-row:1}.ctw-map-stage .ctw-map-mode{grid-column:1;grid-row:2}.ctw-map-stage .ctw-filter-toggle,.ctw-map-stage.ctw-panel-open .ctw-filter-toggle{grid-column:3;grid-row:2;font-size:10px;padding:0 2px}.ctw-map-stage .ctw-map-wheel-toggle,.ctw-map-stage.ctw-panel-open .ctw-map-wheel-toggle{grid-column:2;grid-row:2;font-size:12px;padding:0 4px}
 .ctw-map-stage .ctw-map-heading{top:124px;left:18px;right:18px;max-width:360px;width:auto}.ctw-map-stage .ctw-map-heading h2{font-size:32px;max-width:280px}.ctw-map-stage .ctw-map-heading p{font-size:12px}.ctw-map-stage .ctw-map-heading-toggle{display:none!important}
 .ctw-map-stage .ctw-coverage-legend{right:12px;bottom:calc(var(--ctw-dock) + 28px);width:calc(100% - 84px);max-width:340px;font-size:10px;padding:8px 10px}.ctw-map-stage .ctw-coverage-legend small{font-size:10px}.ctw-map-stage .ctw-map-status{left:14px;right:14px;max-width:none;bottom:calc(var(--ctw-dock) + 145px);font-size:10px}
 .ctw-map-stage .ctw-network-panel{left:0!important;right:0!important;top:auto!important;bottom:calc(var(--ctw-dock) + 18px)!important;width:100%!important;height:42%;max-height:42%!important;padding:42px 18px calc(18px + env(safe-area-inset-bottom))!important;transform:translateY(110%)!important;border-radius:12px 12px 0 0!important}
 .ctw-map-stage .ctw-network-panel.ctw-open{transform:none!important}.ctw-map-stage .ctw-network-panel[data-size=expanded]{height:calc(100% - 245px);max-height:calc(100% - 245px)!important}.ctw-map-stage .ctw-network-panel[data-size=collapsed]{height:112px;max-height:112px!important;overflow:hidden}
 .ctw-map-stage .ctw-network-panel-handle{display:block;top:0;left:50%;height:40px;width:132px;background:transparent;border:0;color:#afd7ef;border-radius:0;transform:translateX(-50%);font-size:11px;touch-action:none}.ctw-map-stage .ctw-network-panel-handle:before{content:'';display:block;width:42px;height:3px;background:#668fac;border-radius:4px;margin:5px auto}
 .ctw-map-stage.ctw-panel-open .ctw-map,.ctw-map-stage.ctw-panel-open .ctw-map-shade{left:0!important}.ctw-map-stage.ctw-panel-open .ctw-coverage-legend,.ctw-map-stage.ctw-panel-open .ctw-map-status{display:none}
 .ctw-map-stage .ctw-network-panel h3{font-size:26px}.ctw-map-stage .ctw-network-panel-close{top:4px}.ctw-map-stage .ctw-network-dock{padding:10px 12px}.ctw-map-stage .ctw-network-card{min-width:190px;max-width:235px}
 .ctw-map-stage .ctw-map:not(.ctw-wheel-enabled .ctw-map){touch-action:pan-y}.ctw-map-stage.ctw-wheel-enabled .ctw-map{touch-action:none}
}
@media(max-height:550px) and (orientation:landscape){.ctw-map-stage{height:clamp(460px,100svh,600px);min-height:460px}.ctw-map-stage:fullscreen .ctw-network-panel,.ctw-map-stage.ctw-fullscreen-fallback .ctw-network-panel{height:calc(100% - 225px)!important;max-height:calc(100% - 225px)!important}.ctw-map-stage:fullscreen .ctw-map-heading,.ctw-map-stage.ctw-fullscreen-fallback .ctw-map-heading{display:none}.ctw-map-stage:fullscreen .ctw-coverage-legend{max-width:290px;right:12px}}
@media(prefers-reduced-motion:reduce){.ctw-map-stage *,.ctw-map-stage *:before,.ctw-map-stage *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.ctw-map-stage .ctw-footprint{filter:drop-shadow(0 0 3px rgba(17,164,225,.35));transition:fill-opacity .18s,stroke-opacity .18s}
.ctw-map-stage.ctw-wheel-enabled .ctw-map-wheel-toggle{background:#126eab;border-color:#8ddfff}
.ctw-map-stage:fullscreen .ctw-map-tools,.ctw-map-stage.ctw-fullscreen-fallback .ctw-map-tools{padding-top:env(safe-area-inset-top);padding-right:env(safe-area-inset-right);padding-left:env(safe-area-inset-left)}

.ctw-map-stage .ctw-network-dot{animation:none}.ctw-map-stage .ctw-network-details span{color:#a6c7e2;font-size:11px}.ctw-map-stage .ctw-network-card small{color:#b8cddd}.ctw-map-stage .ctw-network-dock-label{color:#a8c3dc}.ctw-map-stage .ctw-map-wheel-toggle{text-transform:none;letter-spacing:0;font-weight:600;padding:0 5px!important}

@media(max-width:820px){.ctw-map-stage .ctw-footprint{filter:none}.ctw-map-stage .ctw-map-tools input{font-size:16px}.ctw-map-stage .ctw-network-links{position:static;background:none;margin:12px 0 0;padding:0}}

/* Full YouTube frames: captions sit below, never over the thumbnail. */
.ctw-page .ctw-hero-media{min-height:0;align-items:start;padding-bottom:48px}
.ctw-page .ctw-hero-feature,.ctw-page .ctw-hero-mini{min-height:0;height:auto;display:block;align-self:start;background:#071a30}
.ctw-page .ctw-hero-feature img,.ctw-page .ctw-hero-mini img{position:static;display:block;width:100%!important;height:auto!important;aspect-ratio:16/9;object-fit:contain!important;transform:none!important}
.ctw-page .ctw-hero-feature:after,.ctw-page .ctw-hero-mini:after{display:none}
.ctw-page .ctw-hero-feature-copy,.ctw-page .ctw-hero-mini>span{position:static;display:block;padding:12px 14px;background:#071a30}
.ctw-page .ctw-hero-stack{display:grid;grid-template-rows:auto auto;align-content:start;gap:12px}
.ctw-page .ctw-hero-play{display:none}
@media(max-width:720px){.ctw-page .ctw-hero-stack{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}}
@media(max-width:470px){.ctw-page .ctw-hero-stack{display:grid}}
