.live-panel .panel-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.live-badge { display: inline-flex; align-items: center; gap: 6px; padding: 4px 12px; border-radius: 999px; font-weight: 700; font-size: .85rem; border: 1px solid var(--line); color: var(--muted); }
.live-badge .dot { width: 9px; height: 9px; border-radius: 50%; background: currentColor; }
.live-badge.is-live { background: #e5484d; border-color: #e5484d; color: #fff; }
.live-badge.is-live .dot { background: #fff; animation: livepulse 1.8s infinite; }
.live-badge.is-off { color: var(--warn); border-color: var(--warn); }
.player { position: relative; width: 100%; aspect-ratio: 16 / 9; background: #06101c; border-radius: 12px; overflow: hidden; border: 1px solid var(--line); }
.player video { width: 100%; height: 100%; display: block; background: #06101c; }
.unmute { position: absolute; inset-block-end: 64px; inset-inline-end: 12px; z-index: 3; min-height: 44px; padding: 8px 16px; border-radius: 999px; border: 0; background: rgba(6,16,28,.82); color: #fff; font: inherit; font-weight: 700; cursor: pointer; box-shadow: 0 2px 10px rgba(0,0,0,.35); }
.unmute:hover, .unmute:focus-visible { background: #e5484d; outline: 2px solid #fff; outline-offset: 2px; }
.offline { position: absolute; inset: 0; z-index: 2; display: grid; place-content: center; gap: 8px; padding: 20px; text-align: center; background: rgba(6,16,28,.9); color: #e8eef5; line-height: 1.9; }
.offline strong { font-size: 1.15rem; }
.offline a { color: #7cc4ff; }
.live-disc { margin-top: 12px; }
.live-list { margin: 0; padding-inline-start: 1.2em; line-height: 2; }
