.day-route{background:#f2f6f5;border:1px solid #d8e4e2;border-radius:18px;padding:26px;margin:24px 0 30px;color:#17394a;text-align:left}.day-eyebrow{font-size:11px!important;font-weight:700;letter-spacing:1.8px;color:#47766f!important;margin:0 0 10px!important}.day-route h3{font-size:24px!important;line-height:1.4!important;margin:0 0 20px!important}.day-places{list-style:none!important;display:flex;flex-wrap:wrap;gap:10px 14px;padding:0!important;margin:0 0 24px!important}.day-places li{display:flex;align-items:center;gap:8px;font-size:13px;line-height:1.5}.day-number{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#235f69;color:white;width:25px;height:25px;flex-shrink:0;font-size:12px}.day-map-label{display:block;font-size:13px;font-weight:700}.day-leg,.day-mode{display:block;max-width:100%;width:100%;border:1px solid #b6cecb;background:white;color:#17394a;border-radius:8px;padding:12px;font:inherit;font-size:14px;min-height:46px;margin:9px 0}.day-mode{width:190px}.day-map{border:0;width:100%;height:300px;border-radius:10px;background:#e1e9e8;display:block}.day-nav{display:inline-block;padding:12px 16px;margin-top:14px;background:#194d59;color:#fff!important;border-radius:8px;font-size:14px;font-weight:700;text-decoration:none}.day-map-note{font-size:12px!important;line-height:1.8!important;color:#60747b!important;margin:14px 0 0!important}.day-timeline{display:block;text-align:left}.day-step{display:grid;grid-template-columns:100px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid #dce4e5}.day-step time{font-size:13px;line-height:1.7;color:#12667a;font-weight:700}.day-step h4{font-size:18px!important;margin:0 0 8px!important;line-height:1.5!important}.day-step p{font-size:15px!important;line-height:1.85!important;margin:0!important;color:#435d69!important}.explore-cols:has(.day-timeline){display:block}.explore-cols:has(.day-timeline)>.explore-block+ .explore-block{margin-top:20px}.explore-block:has(.day-timeline){background:transparent;padding:0}#exploreRoute:has(.day-timeline){margin:0}@media(max-width:600px){.day-route{padding:18px 16px;border-radius:14px;margin:20px 0 26px}.day-route h3{font-size:21px!important}.day-places{display:grid;gap:12px}.day-places li{position:relative;align-items:flex-start}.day-places li:not(:last-child):after{content:'';position:absolute;left:12px;top:25px;height:12px;border-left:1px solid #9ebbb6}.day-map{height:260px}.day-step{grid-template-columns:66px 1fr;gap:12px}.day-step h4{font-size:17px!important}.day-step p{font-size:14px!important}.day-step time{font-size:12px;overflow-wrap:anywhere}.day-leg{font-size:13px}.day-nav{min-height:44px}.day-map-note{font-size:12px!important}}

/* Local geographic basemaps: no remote frames or tile requests. */
.day-local-map{height:auto!important;aspect-ratio:3/2;min-height:0;overflow:hidden;box-shadow:0 1px 8px #17394a12}.day-map-credit{font-size:10px!important;line-height:1.4!important;color:#62767c!important;margin:6px 0!important}.day-map-legend{font-size:12px!important;line-height:1.7!important;color:#275b66!important;margin:10px 0!important}
/* One scroll container for every recommendation dialog. */
#routeModal,#exploreModal{box-sizing:border-box;height:100vh;height:100dvh;max-height:none;overflow-y:scroll!important;overflow-x:hidden;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;padding:24px 16px!important;touch-action:pan-y}
#routeModal.open,#routeModal.show,#exploreModal.open{display:block!important}
#routeModal .modal-card,#routeModal .modalbox,#exploreModal .explore-modal-card{box-sizing:border-box;max-height:none!important;height:auto;overflow:visible!important;margin:0 auto!important;min-height:0}
#routeModal .modal-card{width:min(1040px,100%)}
#routeModal .modalbox{width:min(1020px,100%)}
#exploreModal .explore-modal-card{width:min(920px,100%)}
#routeModal .modal-head{top:-24px;border-radius:24px 24px 0 0}
#exploreModal .explore-close{position:fixed;top:32px;right:max(28px,calc((100vw - 920px)/2 + 14px));z-index:170;width:44px;height:44px}
#routeModal>.close{position:fixed;top:32px;right:max(28px,calc((100vw - 1020px)/2 + 14px));z-index:110;width:44px;height:44px}
body:has(#exploreModal.open) .skyline-return,body:has(#exploreModal.open) .sticky-book,body:has(#routeModal.open) .skyline-return,body:has(#routeModal.show) .skyline-return,body:has(#routeModal.open) .sticky-book,body:has(#routeModal.show) .sticky-book{display:none!important}
#routeModal:focus,#exploreModal:focus{outline:none}
@media(max-width:767px){#routeModal,#exploreModal{padding:12px 8px!important}#routeModal .modal-head{top:-12px}#exploreModal .explore-close,#routeModal>.close{top:20px;right:20px}#routeModal .modalbox{border-radius:18px}}
#routeModal .modal-head button{width:44px;height:44px;min-width:44px;flex:0 0 44px}
