.demo-story-image:has(.video-post-badge),.card-image:has(.video-post-badge){position:relative}
.video-post-badge{position:absolute;left:12px;bottom:12px;display:inline-flex;align-items:center;gap:7px;padding:7px 12px;background:#111e;color:#fff;font-size:13px;font-weight:700;border:1px solid #fff5;border-radius:4px;line-height:1.3;pointer-events:none}
[data-video-popup]:focus-visible{outline:3px solid #efc75d;outline-offset:3px}
.video-popup{box-sizing:border-box;width:min(960px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 24px);padding:0;border:1px solid #756236;border-radius:10px;background:#111;color:#fff;overflow:auto;box-shadow:0 20px 90px #000a}
.video-popup::backdrop{background:#000d}
.video-popup-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px}
.video-popup-bar h2{margin:0;font:600 16px/1.5 "Prompt",sans-serif;overflow-wrap:anywhere}
.video-popup-close{flex:none;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #fff5;border-radius:50%;background:#242424;color:#fff;font:32px/1 sans-serif;cursor:pointer}
.video-popup-close:focus-visible{outline:3px solid #efc75d;outline-offset:2px}
.video-popup-player{width:100%;height:min(54vw,calc(100dvh - 130px),540px);min-height:120px;background:#000}
.video-popup-player iframe{display:block;width:100%;height:100%;border:0}
.video-popup.is-reel{width:min(460px,calc(100vw - 24px))}
.video-popup.is-reel .video-popup-player{height:min(160vw,calc(100dvh - 130px),760px)}
.article-video-play{text-align:center;margin:28px 0}
.article-video-play .button{margin:0}
@media(max-width:600px){.video-popup-bar{padding:8px 12px}.video-popup-bar h2{font-size:14px}}

/* Short Clips use still covers; players are created only inside the dialog. */
.short-clip-poster{display:block;position:relative;width:100%;height:100%;background:#171717;overflow:hidden;color:#fff}
.short-clip-poster img{display:block;width:100%;height:100%;object-fit:cover}
.short-clip-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:64px;height:64px;border:2px solid #fff;border-radius:50%;background:#0008;font:28px/1 sans-serif;padding-left:4px;pointer-events:none}
.short-clip-poster:hover .short-clip-play{background:#000c;color:#efc75d}
