/* Place panel media gallery: videos first, then photos, above the place text.
   Reuses the location-feed card, toolbar and gold controls; fixed stage height, no layout shift. */
.story-panel .place-media-gallery{margin:10px 0 16px;border:1px solid #3c3520;border-radius:14px;overflow:hidden;background:#101010;clear:both}
.story-panel .place-media-gallery .video-feed-toolbar{padding:6px 8px 6px 12px;min-height:0}
.story-panel .place-media-gallery .video-feed-controls[hidden],.story-panel .place-media-gallery [data-feed-position][hidden]{display:none}
.story-panel .place-media-gallery .video-feed-scroll{display:flex;flex-direction:row;gap:0;height:clamp(340px,58dvh,520px);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;touch-action:pan-x pan-y pinch-zoom;scrollbar-width:none}
.story-panel .place-media-gallery .video-feed-scroll::-webkit-scrollbar{display:none}
.story-panel .place-media-gallery .video-feed-scroll:focus-visible{outline:2px solid var(--gold,#ffd700);outline-offset:-2px}
.story-panel .place-media-slide{flex:0 0 100%;width:100%;min-width:0;height:100%;box-sizing:border-box;margin:0;padding:8px 10px 10px;display:flex;flex-direction:column;gap:6px;overflow:hidden;scroll-snap-align:start;scroll-snap-stop:always;border:0}
.story-panel .place-media-frame{flex:1 1 auto;min-height:0;min-width:0;display:flex;align-items:center;justify-content:center;border-radius:10px;overflow:hidden;background:#000;container-type:size}
.story-panel .place-media-photo img{display:block;width:100%;height:100%;object-fit:contain;cursor:zoom-in}
.story-panel .place-media-photo img:focus-visible{outline:3px solid var(--gold,#ffd700);outline-offset:-3px}
.story-panel .place-media-slide>figcaption{flex:none;margin:0;font-size:12px;line-height:1.4;color:#b8c0cc;overflow-wrap:anywhere;max-height:4.2em;overflow-y:auto}
.story-panel .place-media-slide>figcaption a{color:inherit;text-decoration:underline}
.story-panel .place-media-video .video-feed-byline{flex:none;margin:0}
.story-panel .place-media-video .video-feed-byline .badge{margin-left:auto}
.story-panel .place-media-video [data-player]{width:100%;height:100%;min-height:0;container-type:size;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
.story-panel .place-media-video .video-card{width:min(100cqw,calc((100cqh - 52px)*16/9));height:min(calc(100cqh - 52px),calc(100cqw*9/16));aspect-ratio:auto;max-width:100%;flex:none;margin:0}
.story-panel .place-media-video .video-card.portrait-video{width:min(100cqw,calc((100cqh - 52px)*9/16));height:min(calc(100cqh - 52px),calc(100cqw*16/9))}
.story-panel .place-media-video .video-card>button,.story-panel .place-media-video .video-card>iframe{width:100%;height:100%;min-height:0}
.story-panel .place-media-video .player-layout-toggle{flex:none;margin:0;min-height:44px;font-size:14px}
.story-panel .place-story .place-media-video .video-story-copy{flex:none;max-height:5.4em;overflow-y:auto}
.story-panel .place-story .place-media-video .video-feed-caption{font-size:15px;line-height:1.5;margin:0}
.story-panel .place-media-video>[data-action="save-video"]{flex:none;align-self:flex-start}
/* The existing rights-checked landmark hero becomes one slide; its credit and badge stay. */
.story-panel .place-media-hero .landmark-photo-region{display:contents}
.story-panel .landmark-story .place-media-hero .landmark-photo{float:none;display:flex;flex-direction:column;gap:6px;width:100%;max-width:100%;height:100%;margin:0;border:0;border-radius:0;background:transparent;overflow:hidden}
.story-panel .landmark-story .place-media-hero .landmark-photo-frame{flex:1 1 auto;min-height:0;height:auto;display:flex;align-items:center;justify-content:center;border-radius:10px;overflow:hidden;background:#000}
.story-panel .landmark-story .place-media-hero .landmark-photo-frame picture{display:contents}
.story-panel .landmark-story .place-media-hero img.landmark-hero-photo{width:100%;height:100%;max-width:100%;object-fit:contain;border:0;border-radius:0;background:transparent}
.story-panel .landmark-story .place-media-hero .landmark-photo figcaption{flex:none;margin:0;padding:0;background:transparent;font-size:12px;line-height:1.4;color:#b8c0cc;overflow-wrap:anywhere}
.story-panel .landmark-story .place-media-hero .landmark-photo-placeholder{width:100%!important;height:100%;aspect-ratio:auto!important;background:#000;border-radius:10px}
.story-panel .place-media-hero:has(>.landmark-photo-region[hidden]){display:none}
/* Photo-only galleries use a shorter stage; heights are fixed per gallery type, never by content. */
.story-panel .place-media-gallery:not([data-has-video]) .video-feed-scroll{height:clamp(240px,40dvh,360px)}
@media(max-width:1023px){.story-panel .place-media-gallery .video-feed-scroll{height:clamp(300px,54dvh,480px)}.story-panel .place-media-gallery:not([data-has-video]) .video-feed-scroll{height:clamp(220px,36dvh,320px)}}
@media(prefers-reduced-motion:reduce){.story-panel .place-media-gallery .video-feed-scroll{scroll-behavior:auto}}
