.video-dialog { width: min(1000px, calc(100vw - 2rem)); max-width: none; max-height: calc(100dvh - 2rem); padding: 0; border: 1px solid #ffffff24; background: #101010; color: #fff; box-shadow: 0 24px 100px #0009; overflow: auto; }
.video-dialog::backdrop { background: #0009; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
.video-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .75rem 1.25rem; }
.video-toolbar h2 { font-size: .875rem; line-height: 1.5; font-weight: 400; margin: 0; }
.video-close { display: flex; align-items: center; gap: .75rem; min-height: 44px; background: none; border: 0; color: #fff; font-size: .875rem; cursor: pointer; }
.video-close span { font-size: 1.8rem; }
.video-close:hover, .video-external:hover { color: #b75b2a; }
.video-frame { aspect-ratio: 16/9; min-height: 200px; background: #000; }
.video-frame iframe { display: block; width: 100%; height: 100%; min-height: 200px; border: 0; }
.video-external { display: inline-block; margin: .85rem 1.25rem; font-size: .875rem; color: #bbb; }
.video-dialog :focus-visible { outline: 2px solid #b75b2a; outline-offset: 3px; }
.video-open { overflow: hidden; }
.video-dialog-portrait { width: min(440px, calc(100vw - 2rem), calc((100dvh - 9rem) * .5625)); }
.video-dialog-portrait .video-frame { aspect-ratio: 9 / 16; min-height: 0; height: auto; }
.video-dialog-portrait .video-frame iframe { min-height: 0; }
.episode .episode-art.video-thumbnail img { aspect-ratio: 16/9; width: 100%; height: auto; object-fit: contain; filter: none; }
.video-thumbnail .play-mark { top: auto; left: auto; right: 1rem; bottom: 1rem; transform: none; width: 48px; height: 48px; background: #000b; }
.episode.episode-video-layout { min-height: 0; grid-template-columns: 1fr 1.25fr; gap: clamp(2rem,6vw,7rem); padding: 4rem var(--gutter) 6rem; }
.episode-video-layout::after { display: none; }
.episode.episode-video-layout h2 { font-size: clamp(3rem,6vw,7rem); }
@media (max-width: 760px) { .episode.episode-video-layout { grid-template-columns: 1fr; padding-top: 2rem; padding-bottom: 3.5rem; } .video-toolbar { padding: .5rem .75rem; } }
@media (orientation: landscape) and (max-height: 600px) { .video-dialog { width: min(800px, 75vw); } .video-frame { aspect-ratio: auto; height: 60dvh; } }
