/* Pop-up video player (see /inc/video-popup.php) - matches the GLE-TV TechTime theater. */
.gv-modal { border: 0; padding: 0; background: transparent; width: min(1100px, 94vw); max-width: 94vw; color: #e6edf3; }
.gv-modal::backdrop { background: rgba(0,0,0,.85); }
.gv-box { position: relative; background: #0e1116; border-radius: 10px; overflow: hidden; box-shadow: 0 20px 60px rgba(0,0,0,.6); }
.gv-frame { position: relative; aspect-ratio: 16/9; background: #000; }
.gv-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.gv-body { padding: .9em 1.1em 1.1em; }
.gv-title { font-size: 1.15em; margin: 0 0 .5em; color: #e6edf3; }
.gv-meta { display: flex; gap: .8em; align-items: center; flex-wrap: wrap; font-size: .85em; }
.gv-meta a { color: #6ccff6; }
.gv-dur { color: #9aa4b2; font-variant-numeric: tabular-nums; }
.gv-close {
  position: absolute; right: 10px; top: 10px; z-index: 2;
  width: 38px; height: 38px; border-radius: 50%; border: 0; cursor: pointer;
  background: rgba(0,0,0,.65); color: #fff; font-size: 22px; line-height: 38px;
}
.gv-close:hover { background: #6ccff6; color: #04121a; }
/* thumbnail-with-play-button trigger, for pages that had an inline player */
.gv-tile { display: block; position: relative; max-width: 640px; margin: 0 auto; border: 0; padding: 0; background: #000; cursor: pointer; border-radius: 6px; overflow: hidden; }
.gv-tile img { display: block; width: 100%; height: auto; transition: opacity .2s; }
.gv-tile:hover img, .gv-tile:focus-visible img { opacity: .85; }
.gv-tile::after {
  content: ""; position: absolute; left: 50%; top: 50%; width: 64px; height: 64px; margin: -32px 0 0 -32px;
  border-radius: 50%; background: rgba(0,0,0,.65) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M8 5v14l11-7z'/%3E%3C/svg%3E") 55% 50%/30px no-repeat;
  border: 2px solid #fff;
}
@media (max-width: 760px) { .gv-modal { width: 100vw; max-width: 100vw; } .gv-box { border-radius: 0; } }
