/* A focused viewing surface, scoped to the IPTV player page. */
body { background: #100d15; }
#section-20-15 { display: none; }
#section-2-536 { background: #100d15; }
#section-2-536 > .ct-section-inner-wrap { width: 100%; max-width: none; padding: 0 0 40px; }
#inner_content-3-536 { width: 100%; color: #eee8f4; }
#player-status { max-width: none; margin: 0; padding: 9px 24px; background: #19131f; color: #d4c9dd; font-size: 13px; }
#player-status.error { color: #ffb1b1; }
#watch-player { width: 100%; max-width: none; min-height: min(720px, calc(100vh - 150px)); margin: 0; display: grid; grid-template-columns: minmax(260px, 340px) minmax(0, 1fr); gap: 0; border-radius: 0; background: #08070b; overflow: hidden; }
.channel-sidebar { padding: 0 14px 16px; background: #15111b; color: #fff; min-width: 0; }
.watch-sidebar-title { margin: 0 -14px 12px; padding: 12px 16px; color: #eee8f4; background: #241b2b; font-size: 13px; font-weight: 700; letter-spacing: .03em; }
.channel-sidebar input[type=search], .channel-sidebar select { background: #29212f; color: #fff; border: 1px solid #51445b; border-radius: 5px; min-height: 42px; }
.channel-sidebar input[type=search]::placeholder { color: #d0c4d8; }
.channel-sidebar .control-with-icon > .hero-icon { stroke: #d0c4d8; }
.favorite-filter { color: #eee8f4; }
#channel-count { color: #cbbfd4; }
#channel-list { max-height: calc(100vh - 350px); min-height: 250px; scrollbar-color: #796385 #211b27; }
.channel-row { border-color: #332b3a; }
.channel-row.active, .channel-row button:hover { background: #34243e; }
.channel-play { padding: 12px 6px; }
.channel-sidebar .hilltop-banner { width: 100%; max-width: 300px; margin: 18px auto 0; text-align: center; overflow: hidden; }
.channel-sidebar .hilltop-banner p { margin: 0 0 4px; color: #d0c4d8; font-size: 12px; }
.channel-sidebar .hilltop-banner a { display: inline-block; margin-bottom: 8px; color: #d9b6f1; }
.watch-ad { display: flex; flex-direction: column; align-items: center; gap: 5px; color: #d0c4d8; font-size: 12px; }
.watch-ad-frame { display: block; width: 300px; height: 250px; max-width: 100%; border: 0; background: #100d15; }
.watch-ad-top { padding: 10px; background: #19131f; }
.watch-stage { display: grid; grid-template-columns: 300px minmax(0,1fr) 300px; align-items: start; min-width: 0; background: #08070b; }
.watch-ad-left, .watch-ad-right { padding-top: 24px; }
.watch-stage .video-pane { width: 100%; padding-left: 16px; padding-right: 16px; }
.watch-ad-break { position: fixed; inset: 0; width: 100%; max-width: none; height: 100%; max-height: none; margin: 0; padding: 24px; border: 0; background: rgba(8,7,11,.97); color: #fff; }
.watch-ad-break::backdrop { background: rgba(0,0,0,.85); }
.watch-ad-break[open] { display: grid; place-items: center; }
.watch-ad-break-content { position: relative; display: flex; flex-direction: column; align-items: center; gap: 12px; width: min(100%, 420px); }
.watch-ad-break-content p { margin: 0; color: #d0c4d8; font-size: 13px; }
.watch-ad-close { align-self: flex-end; min-height: 44px; padding: 10px 16px; border: 1px solid #a889b8; border-radius: 6px; background: #35223f; color: #fff; font: inherit; cursor: pointer; }
.watch-ad-close:focus-visible { outline: 2px solid #e2c4ff; outline-offset: 3px; }
@media (max-width: 1500px) { .watch-stage { grid-template-columns: minmax(0,1fr); } .watch-ad-left, .watch-ad-right { display: none; } }
.video-pane { display: flex; flex-direction: column; justify-content: center; padding: 24px clamp(20px, 4vw, 64px); background: #08070b; }
#iptv-video { width: 100%; max-height: calc(100vh - 230px); min-height: 280px; object-fit: contain; background: #000; }
.video-caption { color: #fff; }
.channel-source-line { margin: 8px 0 0; }
#stream-status { color: #d7ccde; }
.playlist-setup { max-width: 1200px; width: calc(100% - 48px); margin: 24px auto; color: #f5eef9; }
.playlist-setup-heading { display: flex; flex-wrap: wrap; cursor: pointer; gap: 10px; padding: 16px 18px; min-height: 0; border: 1px solid #51445b; border-radius: 6px; background: #211928; list-style: none; }
.playlist-setup-heading::-webkit-details-marker { display: none; }
.playlist-setup-heading::after { content: '+'; margin-left: auto; font-size: 22px; line-height: 1; }
.playlist-setup[open] .playlist-setup-heading::after { content: '−'; }
.playlist-setup-heading span { color: #d3c4dc; font-size: 13px; font-weight: 400; }
.playlist-setup-grid { padding: 24px 18px; color: #f5eef9; }
.playlist-source-tools { margin-bottom: 0; }
@media (max-width: 700px) {
 #_header_row-37-15 { display: none; }
 #_header_row-3-15 { padding-top: 8px; padding-bottom: 8px; }
 #link-33-15 { display: none; }
 #section-2-536 > .ct-section-inner-wrap { padding: 0 0 24px; }
 #player-status { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
 #player-status.error { position: static; width: auto; height: auto; padding: 10px 16px; margin: 0; overflow: visible; clip-path: none; white-space: normal; }
 #watch-player { display: flex; flex-direction: column; width: calc(100% + 32px); margin-left: -16px; min-height: 0; background: #100d15; }
 .watch-stage { display: contents; }
 .watch-stage .video-pane { order: 0; padding: 0 0 16px; }
 .watch-stage .plasma-video-frame { border-radius: 0; }
 #iptv-video { width: 100%; min-height: 0; max-height: none; border-radius: 0; }
 .video-caption { flex-wrap: wrap; padding: 12px 16px 0; gap: 12px; }
 #current-channel { width: 100%; font-size: 18px; font-weight: 700; line-height: 1.35; }
 .playback-actions button { min-height: 40px; }
 .channel-source-line, #stream-status { margin: 8px 16px 0; }
 .watch-ad-top { order: -1; width: 100%; padding: 14px 0; }
 .channel-sidebar { order: 2; display: flex; flex-direction: column; width: 100%; padding: 0 16px 20px; background: #100d15; }
 .watch-sidebar-title { margin: 0; padding: 18px 0 10px; background: transparent; font-size: 18px; letter-spacing: 0; }
 .channel-sidebar input[type=search], .channel-sidebar select { border-radius: 8px; }
 .favorite-filter { min-height: 40px; }
 #channel-list { display: contents; }
 .channel-row { order: 3; gap: 8px; padding: 6px 0; border-bottom: 1px solid #332b3a; }
 .channel-row:nth-child(-n+4) { order: 1; }
 #load-more-channels { order: 4; }
 .channel-sidebar .hilltop-banner { order: 5; }
 .channel-play { gap: 14px; min-height: 68px; padding: 8px 4px; }
 .channel-play img { width: 72px; height: 48px; flex: 0 0 72px; object-fit: contain; border-radius: 6px; background: #211928; }
 .channel-play span { font-size: 15px; font-weight: 600; line-height: 1.35; }
 .channel-favorite { min-width: 44px; min-height: 44px; }
 .playlist-setup { width: calc(100% - 24px); }
 .playlist-setup-heading span { width: 100%; order: 3; }
}




