/* Fullscreen location map only. Ordinary modal and dialogue styles are unchanged. */
#game #overlay.map-overlay{left:50%;right:auto;width:100vw;height:100dvh;transform:translateX(-50%);container-type:size}
#game #overlay.map-overlay{padding:0;background:#cfb9e6}
#overlay .location-screen{display:flex;flex-direction:column;align-items:center;gap:14px;padding:max(20px,env(safe-area-inset-top)) 12px max(20px,env(safe-area-inset-bottom));overflow:auto}
#overlay .map-back{left:max(12px,env(safe-area-inset-left));top:max(12px,env(safe-area-inset-top));width:48px;height:48px}
#overlay .location-screen>header{position:static;width:auto;flex:none;min-height:56px;padding:0 52px;text-align:center}
#overlay .location-screen header span{font-size:11px;letter-spacing:2px}
#overlay .location-screen h2{font-size:26px;margin:5px 0}
#overlay .location-carousel{position:static;width:min(100%,600px);height:auto;flex:1;min-height:0;gap:10px;justify-content:center}
#overlay .carousel-arrow{width:44px;min-height:48px}
#overlay .carousel-arrow .ui-icon{height:40px;width:40px}
#overlay .location-card{flex:0 1 380px;padding:12px;transform:none}
#overlay .location-photo{width:100%;max-height:48dvh;aspect-ratio:1}
#overlay .location-photo>img{position:absolute;inset:0}
#overlay .location-card h3{font-size:21px;margin:10px 0}
#overlay .location-card p{font-size:14px;padding:10px;margin:0 0 8px}
#overlay .location-action{position:static;flex:none;width:min(240px,80%)}
#overlay .location-action .primary{font-size:16px;min-height:48px;width:100%}
#overlay .carousel-dots{position:static;flex:none;gap:9px;width:auto}
#overlay .carousel-dots span{width:8px;height:8px}
#overlay .carousel-dots .selected{width:24px}
@media(max-height:540px) and (orientation:landscape){
 #overlay .location-screen{gap:8px;padding-top:10px;padding-bottom:10px}
 #overlay .location-screen>header{min-height:48px}
 #overlay .location-screen h2{font-size:22px}
 #overlay .location-carousel{width:min(100%,740px)}
 #overlay .location-card{flex-basis:620px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 16px;align-items:center;padding:10px}
 #overlay .location-photo{grid-row:1/4;width:min(30vw,49dvh,260px);height:min(30vw,49dvh,260px);justify-self:center}
 #overlay .location-card h3,#overlay .location-card p{margin:0}
 #overlay .location-card progress{grid-column:2}
 #overlay .location-action{width:220px}
}
