/* Livestream: wide theatre layout, native XenForo colours, no technical panels. */
.dlcpPage.dlcpLivePage { max-width:none; width:100%; margin:0; }
/* One native page H1; only a compact stream-status row is added. */
/* Native XenForo page heading: title and description left, LIVE state right. */
.dlcpLivePage .dlcpStreamTheater { border:1px solid #e5e5e5; background:transparent; border-radius:5px; overflow:hidden; }
.dlcpLivePage .dlcpPlayer { position:relative; aspect-ratio:16/9; width:100%; background:#0b0e13; overflow:hidden; }
.dlcpLivePage .dlcpPlayer video { display:block; width:100%; height:100%; aspect-ratio:16/9; background:#0b0e13; object-fit:contain; }
.dlcpLivePage .dlcpPlayerCover { position:absolute; top:0; left:0; right:0; bottom:0; z-index:2; display:flex; align-items:center; justify-content:center; padding:20px; text-align:center; background:linear-gradient(140deg,#111827,#090d14 70%); color:#edf1f8; }
.dlcpLivePage .dlcpPlayerCover.dlcpCoverHidden { display:none; }
.dlcpLivePage .dlcpCoverInner { max-width:470px; }
.dlcpLivePage .dlcpCoverIcon { display:flex; align-items:center; justify-content:center; width:55px; height:55px; border:1px solid rgba(232,239,249,.35); border-radius:50%; margin:0 auto 18px; padding-left:3px; font-size:24px; color:#fff; }
.dlcpLivePage .dlcpCoverTitle { font-weight:bold; font-size:20px; margin-bottom:8px; }
.dlcpLivePage .dlcpPlayerCover p { margin:0 auto 17px; color:#c5cfdf; font-size:13px; line-height:1.6; }
.dlcpLivePage .dlcpStartButton { cursor:pointer; }
.dlcpLivePage .dlcpStreamFooter { display:flex; justify-content:space-between; align-items:center; gap:12px; min-height:46px; padding:10px 16px; border-top:1px solid #e5e5e5; color:#777; font-size:11px; }
.dlcpLivePage .dlcpStreamFooterBrand { display:inline-flex; align-items:center; gap:8px; white-space:nowrap; font-weight:bold; }
.dlcpLivePage .dlcpStreamFooterMark { display:block; width:6px; height:6px; background:#3d7ea6; border-radius:50%; }
.dlcpLivePage .dlcpStatusDetail { min-width:0; text-align:right; line-height:1.4; }
@media(max-width:650px) {
    .dlcpLivePage .dlcpStreamFooter { padding:10px 12px; align-items:flex-start; }
    .dlcpLivePage .dlcpStreamFooterBrand { margin-top:2px; }
    .dlcpLivePage .dlcpCoverIcon { width:40px; height:40px; margin-bottom:8px; font-size:18px; }
    .dlcpLivePage .dlcpCoverTitle { font-size:15px; }
    .dlcpLivePage .dlcpPlayerCover p { font-size:11px; margin-bottom:9px; }
}
@media(max-width:400px) {
    .dlcpLivePage .dlcpStreamFooterBrand { display:none; }
    .dlcpLivePage .dlcpStatusDetail { text-align:left; }
}

/* MSE/LL-HLS: quiet controls without the constantly shifting native seekbar.
   Native Safari keeps the browser's own controls. */
.dlcpLivePage .dlcpPlayerControls { display:none; position:absolute; left:0; right:0; bottom:0; z-index:3; align-items:center; justify-content:space-between; gap:12px; min-height:48px; padding:8px 15px; color:#fff; background:linear-gradient(0deg,rgba(0,0,0,.88),rgba(0,0,0,.48)); }
.dlcpLivePage .dlcpPlayer.dlcpUseCustomControls.dlcpPlayerActive .dlcpPlayerControls { display:flex; opacity:0; pointer-events:none; transform:translateY(5px); transition:opacity .22s ease, transform .22s ease; }
.dlcpLivePage .dlcpPlayer.dlcpUseCustomControls.dlcpPlayerActive.dlcpControlsVisible .dlcpPlayerControls { opacity:1; pointer-events:auto; transform:translateY(0); }
.dlcpLivePage .dlcpPlayerLiveIndicator { display:inline-flex; align-items:center; gap:7px; font-size:11px; font-weight:bold; letter-spacing:.6px; color:#fff; }
.dlcpLivePage .dlcpPlayerLiveDot { display:inline-block; width:7px; height:7px; background:#ef3d49; border-radius:50%; }
.dlcpLivePage .dlcpPlayerControlActions { display:flex; align-items:center; gap:9px; }
.dlcpLivePage .dlcpPlayerControlButton { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:31px; padding:5px 11px; background:rgba(255,255,255,.10); border:1px solid rgba(255,255,255,.22); border-radius:4px; color:#fff; font-family:inherit; font-size:12px; cursor:pointer; }
.dlcpLivePage .dlcpPlayerControlButton:hover, .dlcpLivePage .dlcpPlayerControlButton:focus { background:rgba(255,255,255,.22); border-color:rgba(255,255,255,.45); color:#fff; }
.dlcpLivePage .dlcpPlayerControlButton:focus-visible { outline:2px solid #fff; outline-offset:2px; }
.dlcpLivePage .dlcpPlayerControlButton .fa { font-size:14px; }
.dlcpLivePage .dlcpPlayerVolumeGroup { display:flex; align-items:center; gap:8px; min-width:0; }
.dlcpLivePage .dlcpVolumeLabel { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.dlcpLivePage .dlcpVolumeSlider { display:block; width:105px; height:20px; margin:0; padding:0; background:transparent; accent-color:#e8eff9; cursor:pointer; }
.dlcpLivePage .dlcpVolumeValue { min-width:35px; text-align:right; color:#e8eff9; font-size:11px; font-variant-numeric:tabular-nums; }
.dlcpLivePage .dlcpVolumeSlider:focus-visible { outline:2px solid #fff; outline-offset:3px; }
@media (prefers-reduced-motion: reduce) { .dlcpLivePage .dlcpPlayer.dlcpUseCustomControls.dlcpPlayerActive .dlcpPlayerControls { transition:none; } }
/* Fullscreen applies to the player container, keeping its controls on screen. */
.dlcpLivePage .dlcpPlayer:fullscreen, .dlcpLivePage .dlcpPlayer:-webkit-full-screen { width:100%; height:100%; aspect-ratio:auto; background:#000; }
.dlcpLivePage .dlcpPlayer:fullscreen video, .dlcpLivePage .dlcpPlayer:-webkit-full-screen video { width:100%; height:100%; object-fit:contain; }
@media (max-width:520px) {
    .dlcpLivePage .dlcpPlayerControls { padding:6px 10px; min-height:41px; }
    .dlcpLivePage .dlcpPlayerControlActions { gap:6px; }
    .dlcpLivePage .dlcpPlayerControlButton { min-width:34px; min-height:30px; padding:5px 8px; }
    .dlcpLivePage .dlcpPlayerControlButton span { display:none; }
    .dlcpLivePage .dlcpPlayerVolumeGroup { gap:5px; }
    .dlcpLivePage .dlcpVolumeSlider { width:65px; }
    .dlcpLivePage .dlcpVolumeValue { min-width:29px; font-size:10px; }
}

.dlsiPageHeader { display:flex; align-items:center; flex-wrap:wrap; gap:10px 15px; }
.dlsiPageHeader h1 { flex:1; margin:0; }
.dlsiPageHeader p { width:100%; margin:0; }
.dlcpStatus { display:inline-block; padding:5px 10px; border-radius:3px; color:#fff; background:#666; font-size:11px; font-weight:bold; }
.dlcpStatus-live { background:#c42f36; }
.dlcpStatus-loading { background:#86651d; }
.dlcpStatus-ready { background:#526677; }
.dlsiNavDot { display:inline-block; width:7px; height:7px; margin-inline-start:7px; border-radius:50%; background:#88929c; vertical-align:middle; }
[data-dlsi-link].dlsiOnline .dlsiNavDot { background:#e7353b; box-shadow:0 0 6px rgba(231,53,59,.6); }
[data-dlsi-link].dlsiOffline .dlsiNavDot { background:#88929c; }
[data-dlsi-link].dlsiUnknown .dlsiNavDot { background:#c58c35; }

/* Bound the theatre and keep the complete video inside its own frame. */
.dlcpLivePage .dlcpStreamTheater { width:100%; max-width:none; margin:0; }
.dlcpLivePage .dlcpPlayer video { position:absolute; inset:0; width:100%; height:100%; aspect-ratio:auto; object-fit:contain; }
[data-dlsi-link].dlsiOnline .dlsiNavDot { animation:dlsiLiveGlow 2s ease-in-out infinite; }
@keyframes dlsiLiveGlow {
    0%,100% { box-shadow:0 0 2px 1px rgba(231,53,59,.32),0 0 5px 2px rgba(231,53,59,.12); }
    50% { box-shadow:0 0 5px 2px rgba(231,53,59,.65),0 0 11px 4px rgba(231,53,59,.30); }
}
@media (prefers-reduced-motion:reduce) { [data-dlsi-link].dlsiOnline .dlsiNavDot { animation:none; } }
