/* Restore a visible media surface when a video has no uploaded poster. */
.media-grid { align-items:start; }
.media-grid .media-card { min-width:0; overflow:hidden; }
.media-grid .media-card video,
.media-grid .media-card img { display:block; width:100%; aspect-ratio:9/16; object-fit:cover; background:#233a30; }
.media-grid .media-card img { height:auto; }
.media-grid .media-card video:not([poster]) { background:#233a30; }
.media-grid .media-card.ht-ready { position:relative; }
.media-grid .ht-video-cover { position:absolute; inset:0 0 50px; z-index:2; pointer-events:none; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; color:#fff; text-align:center; padding:16px; background:linear-gradient(180deg,rgba(13,31,25,.15),rgba(13,31,25,.48)); }
.media-grid .ht-video-cover button { pointer-events:auto; border:1px solid rgba(255,255,255,.75); color:#fff; border-radius:100px; background:rgba(20,43,32,.85); width:62px; height:62px; font-size:28px; cursor:pointer; display:grid; place-items:center; padding:0; }
.media-grid .ht-video-cover button:focus-visible { outline:3px solid #d7b67a; outline-offset:4px; }
.media-grid .ht-video-cover small { font:500 12px/1.4 system-ui,sans-serif; text-shadow:0 1px 4px #152d24; }
.media-grid .ht-video-cover.ht-hidden { display:none; }
@media(max-width:600px){.media-grid .ht-video-cover{inset:0 0 46px}.media-grid .media-card video,.media-grid .media-card img{max-height: min(78vh, 690px);}}
/* Avoid contain-intrinsic-size / content-visibility hiding dynamically appended cards. */
.media-grid,.media-grid .media-card,.media-grid .media-card video,.media-grid .media-card img { content-visibility:visible!important; contain-intrinsic-size:none!important; }
