/* The list and destination share one sheet, with the map always underneath. */
body.detail-layout{overflow:hidden}
body.detail-layout #app{height:100dvh;min-height:0;overflow:hidden}
body.detail-layout #app>header{display:none}
.sheet-detail-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 16px 12px;flex-shrink:0;min-height:52px}
.sheet-detail-nav>strong{font-size:18px;font-weight:650;letter-spacing:-.3px;line-height:1.4}
.sheet-back,.sheet-record{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;padding:0;background:rgba(255,255,255,.72);border-radius:50%;color:#1c1c1e}
.sheet-back .icon,.sheet-record .icon{height:20px;width:20px}
.discovery-sheet.is-detail .sheet-scroll{padding:0;scroll-padding-top:64px;touch-action:pan-y;overscroll-behavior-y:contain}
.discovery-sheet.is-detail #destination{position:relative;padding:0;min-height:0}
.discovery-sheet.is-detail .city-summary{margin:0 16px 20px;padding:14px;border-radius:var(--radius-card);background:var(--surface-card)}
.discovery-sheet.is-detail .city-summary .city-cover{grid-template-columns:76px minmax(0,1fr);gap:14px;min-height:92px}
.discovery-sheet.is-detail .city-summary .city-cover>img{width:76px;height:96px;object-fit:cover;border-radius:var(--radius-image)}
.discovery-sheet.is-detail .city-summary .cover-copy h1{font-size:26px;line-height:1.25;margin:4px 0 6px}
.discovery-sheet.is-detail .city-summary .cover-copy p{font-size:13px;line-height:1.6}
.discovery-sheet.is-detail .detail-body{padding:0 16px 20px}
.discovery-sheet.is-detail .detail-body #stageTabs{top:0;margin-bottom:20px;z-index:4;box-shadow:none}
.discovery-sheet.is-detail #detailActions{position:relative;left:auto;right:auto;bottom:auto;transform:none;width:100%;max-width:none;flex:0 0 auto;z-index:6;margin:0;padding:10px 16px max(16px,env(safe-area-inset-bottom));border:0;background:var(--surface-base);gap:8px}
#detailActions #selectionHint{font-size:12px;color:#6c727a}
.discovery-sheet.is-detail .bottom-controls{gap:12px}
.discovery-sheet.is-detail .bottom-controls .primary{font-size:14px;min-height:50px}
.discovery-sheet.is-detail .map-entry{width:50px;height:50px;flex-basis:50px;background:var(--surface-card)}
.discovery-sheet.is-detail.collapsed .sheet-scroll,.discovery-sheet.is-detail.collapsed #detailActions{display:none}
.discovery-sheet.is-detail.collapsed .sheet-detail-nav{padding-bottom:8px}
.activity-row.map-highlighted{background:rgba(220,231,240,.72)}
.activity-row.map-highlighted.picked{background:var(--surface-selected)}
.place-pin,.place-pin.active{width:44px!important;height:44px!important;display:grid;place-items:center;background:transparent!important;border:0;box-shadow:none!important;overflow:visible}
.place-pin img{width:26px;height:26px;object-fit:contain;filter:drop-shadow(0 1px 2px #00000012)}
.place-pin.active img{transform:translateY(-1px) scale(1.16)}
.place-pin .map-city-name{top:39px;font-size:11px;line-height:1.45;font-weight:500;color:#526572;white-space:nowrap;text-shadow:0 0 4px #fff,0 1px 2px #fff}
.place-pin.active .map-city-name{font-weight:650;color:#1c1c1e}
.map-layout.detail-layout #mapStage>#mapTools{top:18px}
.map-layout.detail-layout .mapTools .icon-button{width:38px;height:38px;min-width:38px;background:rgba(255,255,255,.85)}
.map-layout.detail-layout .mapTools .icon{width:18px;height:18px}
@media(max-width:365px){.sheet-detail-nav{padding-left:14px;padding-right:14px}.discovery-sheet.is-detail .city-summary{padding:13px}.discovery-sheet.is-detail .city-summary .city-cover{grid-template-columns:66px minmax(0,1fr);gap:12px}.discovery-sheet.is-detail .city-summary .city-cover>img{width:66px;height:96px}.discovery-sheet.is-detail .city-summary .cover-copy h1{font-size:24px}}

/* Expanded reading height: leave a small strip of the map above the sheet. */
.discovery-sheet.expanded{height:92%}

/* One press response on local POIs; keep Microsoft origin animations unchanged. */
.place-pin img{transform-origin:50% 70%}
.place-pin img.poi-pop{animation:poiPop 400ms cubic-bezier(.22,1,.36,1) both}
@keyframes poiPop{
 0%{transform:translateY(0) scale(1)}
 40%{transform:translateY(-6px) scale(1.25)}
 72%{transform:translateY(0) scale(1.1)}
 100%{transform:translateY(-1px) scale(1.16)}
}
@media(prefers-reduced-motion:reduce){.place-pin img.poi-pop{animation:none}.place-pin.active img{transform:scale(1.12)}}
