/**
 * livehd7 shared stream fix — base 3.8.33
 * One sheet for all skins (classic · midnight · stadium · v30).
 *
 * Bugs:
 *  1) `.sl-stream-wrap { height:0; padding-top:%; box-sizing:border-box }` collapses
 *     the box → absolute iframe gets no real height.
 *  2) Collapsed player leaves only the تكبير / fullscreen button visible
 *     (“zoom replaces player”).
 *
 * Fix: real 16:9 via aspect-ratio; iframe fills the wrap; zoom btn stays a
 * sibling below the player (never absolute over / instead of the iframe).
 *
 * Enqueue AFTER skin CSS (see inc/shared-stream-enqueue.php).
 */

/* ── Shared box: classic/v30 .sl-stream-wrap · midnight .md-stream · stadium #sv-ajax-server
     Also: #video-wrapper (theme id) · #player (legacy / embed alias, not in 3.8.33 PHP) */
.sl-stream-wrap,
.md-stream,
#sv-ajax-server,
#video-wrapper,
#player {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 220px !important;
  aspect-ratio: 16 / 9 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-inline: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  isolation: isolate;
  transform: none !important;
  zoom: 1 !important;
}

/* iframe fills the 16:9 box — do not rely on height:0 padding hack */
.sl-stream-wrap iframe,
.md-stream iframe,
#sv-ajax-server iframe,
#video-wrapper iframe,
#player iframe,
iframe.sl-stream-iframe,
iframe.cf,
#video-iframe {
  position: absolute !important;
  inset: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  box-sizing: border-box !important;
  background: #000;
  transform: none !important;
  zoom: 1 !important;
  object-fit: unset !important;
}

/* Bare iframe fallback (no wrap) — still get a real 16:9 height */
.blogpost > iframe.sl-stream-iframe,
#postsacs > iframe.sl-stream-iframe,
.blogpost > iframe.cf,
#postsacs > iframe.cf {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 220px !important;
  aspect-ratio: 16 / 9 !important;
}

/* ── Zoom / fullscreen buttons — siblings of the wrap, never replace the player */
.sl-fullscreen-btn,
#custom-fullscreen-btn,
.sv-fs-btn,
.md-fs-btn {
  position: relative !important;
  inset: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 350px !important;
  height: auto !important;
  min-height: 42px !important;
  margin: 8px auto 16px !important;
  z-index: 1 !important;
  cursor: pointer;
  box-sizing: border-box !important;
  /* never stretch over / hide the iframe */
  transform: none !important;
}

/* Stadium / wrap fullscreen: drop aspect lock so native FS fills the screen */
.sl-stream-wrap:fullscreen,
.sl-stream-wrap:-webkit-full-screen,
.md-stream:fullscreen,
.md-stream:-webkit-full-screen,
#sv-ajax-server:fullscreen,
#sv-ajax-server:-webkit-full-screen,
#video-wrapper:fullscreen,
#video-wrapper:-webkit-full-screen,
#player:fullscreen,
#player:-webkit-full-screen,
#video-iframe:fullscreen,
#video-iframe:-webkit-full-screen {
  aspect-ratio: auto !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: none !important;
  border-radius: 0 !important;
  background: #000 !important;
}

@media (max-width: 768px) {
  .sl-stream-wrap,
  .md-stream,
  #sv-ajax-server,
  #video-wrapper,
  #player {
    min-height: 180px !important;
    padding-top: 0 !important;
  }
}
