/* BunkerVision v2.0.91 · lineares TV-Modul */
.tv-page{min-width:0;overflow-x:hidden}
.tv-app-shell{padding-bottom:24px}
.tv-device-frame{min-height:100vh}
.tv-content{display:grid;gap:16px;padding:18px}
.tv-page .module-btn{display:flex;align-items:center;justify-content:center;text-decoration:none}
.tv-page .header-profile-popover a{display:flex;align-items:center;min-height:38px;padding:8px 11px;border:1px solid transparent;border-radius:8px;color:#e8f4ce;text-decoration:none;font-size:.76rem;font-weight:800;letter-spacing:.055em;text-transform:uppercase}
.tv-page .header-profile-popover a:hover,.tv-page .header-profile-popover a:focus-visible{border-color:rgba(214,236,166,.25);background:rgba(214,236,166,.09)}
.tv-menu-logout{order:99;margin-top:7px;border-top-color:rgba(245,121,96,.3)!important;color:#ffd0c8!important}
.tv-login-popover{min-width:min(320px,calc(100vw - 24px))!important}
.tv-login-popover .account-form{display:grid;gap:9px;padding:5px}
.tv-login-popover label{display:grid;gap:4px;color:#bdca9d;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em}
.tv-login-popover input{width:100%;min-width:0}
.tv-broadcast-head,.tv-section-head,.tv-card-head,.tv-dialog-head,.tv-admin-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.tv-broadcast-head{padding:2px 3px}
.tv-broadcast-head h1,.tv-section-head h1,.tv-admin-head h1{margin:3px 0 0;color:#eaf7ce;font-size:clamp(1.7rem,4vw,3rem);line-height:.95;letter-spacing:.06em;text-transform:uppercase}
.tv-kicker{display:block;color:#aeca7b;font-size:.67rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.tv-section-head{padding:20px;border-radius:18px}.tv-section-head p{margin:7px 0 0;color:#bdc9a2}
.tv-player-bezel{position:relative;padding:clamp(8px,1.6vw,16px);border:1px solid rgba(222,242,173,.25);border-radius:24px;background:linear-gradient(145deg,#39442f,#12170f 22%,#080b07 72%,#30392a);box-shadow:0 22px 65px rgba(0,0,0,.52),inset 0 1px rgba(255,255,255,.15),inset 0 0 0 4px rgba(0,0,0,.3)}
.tv-player-stage{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border:1px solid #050704;border-radius:14px;background:#020302;box-shadow:inset 0 0 60px #000,0 0 28px rgba(142,188,91,.16)}
.tv-local-player{position:absolute;z-index:1;inset:0;width:100%;height:100%;object-fit:contain;background:#000}
.tv-channel-logo{position:absolute;z-index:10;top:3%;left:2.5%;width:12%;max-height:26%;object-fit:contain;object-position:left top;pointer-events:none;filter:drop-shadow(0 2px 5px rgba(0,0,0,.85));opacity:.92}.tv-channel-logo[data-position="top-right"]{left:auto;right:2.5%;object-position:right top}.tv-channel-logo[data-position="bottom-left"]{top:auto;bottom:3%;object-position:left bottom}.tv-channel-logo[data-position="bottom-right"]{top:auto;left:auto;right:2.5%;bottom:3%;object-position:right bottom}
#tvYoutubePlayer,#tvYoutubePlayer iframe{position:absolute;inset:0;width:100%!important;height:100%!important;border:0}
.tv-player-glass{position:absolute;z-index:4;inset:0;pointer-events:auto;background:linear-gradient(115deg,rgba(255,255,255,.035),transparent 32%,rgba(255,255,255,.02) 68%,transparent);box-shadow:inset 0 0 70px rgba(0,0,0,.65)}
.tv-noise-overlay{position:absolute;z-index:8;inset:0;display:grid;place-items:center;opacity:0;pointer-events:none;background:#000;transition:opacity .05s ease-out}
.tv-noise-overlay.is-active{opacity:.97}.tv-noise-overlay canvas{width:100%;height:100%;display:block;image-rendering:pixelated}
.tv-offair-card{position:absolute;z-index:6;inset:0;display:none;place-content:center;text-align:center;padding:24px;background:radial-gradient(circle,#28381f,#050704 70%);color:#dcebbd}
.tv-offair-card.is-visible{display:grid}.tv-offair-card strong{font-size:clamp(2rem,8vw,6rem);letter-spacing:.12em;text-shadow:0 0 18px rgba(182,228,111,.26)}.tv-offair-card span{margin-top:8px;color:#aebd90;font-size:clamp(.78rem,2vw,1.1rem);letter-spacing:.08em;text-transform:uppercase}
.tv-player-stage.is-player-hidden #tvYoutubePlayer,.tv-player-stage.is-player-hidden .tv-local-player,.tv-player-stage.is-player-hidden .bv-prepared-media{visibility:hidden}
.tv-standby-program-board{position:absolute;z-index:9;display:grid;align-content:center;gap:.6em;padding:0;overflow:hidden;color:#eef7db;font-size:calc(1.8cqw * var(--tv-board-text-scale,1));line-height:1.15;text-shadow:0 .08em .25em #000,0 0 .45em #000;opacity:0;transform:translateY(.7em);transition:opacity .48s ease,transform .48s ease;pointer-events:none}.tv-standby-program-board.is-visible{opacity:1;transform:none}.tv-standby-program-board[hidden]{display:none}.tv-standby-program-list{display:grid;gap:.7em}.tv-standby-program-item{display:grid;grid-template-columns:2.15em minmax(0,1fr);grid-template-areas:"time time" "avatar title" "avatar author";align-items:center;gap:.08em .55em;padding:.35em 0}.tv-standby-program-time{grid-area:time;color:#cfe79e;font-size:.67em;font-weight:950;letter-spacing:.065em;text-transform:uppercase}.tv-standby-program-title{grid-area:title;overflow:hidden;color:#fff;font-size:1em;font-weight:1000;letter-spacing:.025em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.tv-standby-program-avatar{grid-area:avatar;display:grid;place-items:center;width:2.15em;height:2.15em;border:1px solid rgba(225,241,190,.42);border-radius:50%;background:#2d3d22;color:#f5ffe4;font-size:.8em;font-weight:1000;object-fit:cover}.tv-standby-program-author{grid-area:author;overflow:hidden;color:#d5dfc4;font-size:.66em;font-weight:850;text-overflow:ellipsis;white-space:nowrap}
.tv-power-button{position:absolute;z-index:11;left:50%;bottom:clamp(12px,3%,24px);top:auto;transform:translateX(-50%);width:auto;min-width:0;max-width:calc(100% - 24px);padding:9px 15px;border-radius:999px;white-space:nowrap;background:rgba(24,34,18,.94);box-shadow:0 3px 14px rgba(0,0,0,.48);backdrop-filter:blur(4px)}.tv-power-button:active{transform:translateX(-50%) translateY(2px)}.tv-power-button[hidden]{display:none}
.tv-loading{position:absolute;z-index:7;inset:0;display:grid;place-content:center;justify-items:center;gap:10px;background:rgba(3,5,2,.88);color:#dbe9bd;text-transform:uppercase;letter-spacing:.09em;text-align:center}.tv-loading.is-hidden{display:none}.tv-loading span{width:32px;height:32px;border:3px solid rgba(215,237,168,.2);border-top-color:#d7eda3;border-radius:50%;animation:tv-spin .8s linear infinite}@keyframes tv-spin{to{transform:rotate(360deg)}}
.tv-now-card{display:grid;gap:12px;padding:18px;border-radius:18px}.tv-live-line{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#d6edaa;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}.tv-live-line strong{color:#ff7866;text-shadow:0 0 12px rgba(255,82,59,.45)}.tv-now-card h2{margin:0;font-size:clamp(1.25rem,3.2vw,2.15rem);line-height:1.05;text-transform:uppercase;overflow-wrap:anywhere}.tv-attribution{min-height:24px;color:#b8c89a}.tv-attribution .tv-submitter{display:inline-flex;align-items:center;gap:7px}.tv-attribution img{width:26px;height:26px;border-radius:50%;object-fit:cover;background:#2c3823}.tv-video-actions{display:flex;flex-wrap:wrap;gap:8px}.tv-action-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 14px;border:1px solid rgba(222,242,173,.25);border-radius:11px;background:linear-gradient(#40522d,#1d2716);color:#f2ffda;text-decoration:none;font:inherit;font-size:.78rem;font-weight:900;letter-spacing:.055em;text-transform:uppercase;cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.12)}.tv-action-button:hover:not(:disabled),.tv-action-button:focus-visible{border-color:#cde99a;filter:brightness(1.12)}.tv-action-button:disabled{opacity:.58;cursor:not-allowed}.tv-action-button.is-active{border-color:#d6eea7;background:linear-gradient(#718d48,#293b1e);box-shadow:0 0 16px rgba(184,225,112,.25)}.tv-vote-button span{font-size:1.05rem}.tv-bookmark-button span{font-size:1.45rem;line-height:.6}.tv-youtube-button{background:linear-gradient(#8a3b31,#3f1713)}.tv-guest-hint{margin:0;color:#9eac85;font-size:.72rem}
.tv-lower-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:16px}.tv-chat-card,.tv-submit-card{min-width:0;padding:17px;border-radius:18px}.tv-card-head h2,.tv-dialog-head h2{margin:3px 0 0;text-transform:uppercase}.tv-chat-connection{display:inline-flex;align-items:center;gap:6px;color:#aebe91;font-size:.68rem;text-transform:uppercase;letter-spacing:.07em}.tv-chat-connection::before{content:"";width:7px;height:7px;border-radius:50%;background:#a7c86e;box-shadow:0 0 8px #8db553}.tv-chat-connection.is-fallback::before{background:#e8ba62}.tv-chat-feed{height:min(52vh,520px);min-height:300px;margin-top:13px;padding:6px;overflow-y:auto;overscroll-behavior:contain;border:1px solid rgba(222,242,173,.13);border-radius:13px;background:rgba(2,5,2,.32);scrollbar-color:#667b49 transparent}.tv-chat-message{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:9px;align-items:start;padding:9px;border-bottom:1px solid rgba(222,242,173,.09)}.tv-chat-message:last-child{border-bottom:0}.tv-chat-avatar{width:38px;height:38px;border-radius:11px;object-fit:cover;background:#2b3822;display:grid;place-items:center;color:#dbeaaf;font-weight:900}.tv-chat-avatar-link{display:block;width:38px;height:38px;border-radius:11px;color:inherit;text-decoration:none}.tv-chat-avatar-link:hover .tv-chat-avatar,.tv-chat-avatar-link:focus-visible .tv-chat-avatar{outline:2px solid #cfe7a0;outline-offset:2px}.tv-chat-body{min-width:0}.tv-chat-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:7px}.tv-chat-meta strong{color:#ddecbb;font-size:.8rem}.tv-chat-meta time,.tv-chat-meta em{color:#879875;font-size:.62rem;font-style:normal}.tv-chat-text{margin:3px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.42}.tv-chat-text.is-deleted{color:#89957b;font-style:italic}.tv-chat-actions{display:flex;gap:4px}.tv-chat-actions button{width:28px;height:28px;padding:0;border:1px solid rgba(222,242,173,.18);border-radius:7px;background:#1b2515;color:#d9e7bc;cursor:pointer}.tv-chat-form{display:grid;gap:8px;margin-top:10px}.tv-chat-form textarea,.tv-submit-form input,.tv-submit-form select{width:100%;min-width:0}.tv-chat-tools{display:flex;align-items:center;justify-content:space-between;gap:8px}.tv-emoji-picker{display:flex;flex-wrap:wrap;gap:4px}.tv-emoji-picker button{display:grid;place-items:center;width:31px;height:31px;padding:0;border:1px solid rgba(222,242,173,.17);border-radius:8px;background:#1a2315;cursor:pointer}.tv-chat-login,.tv-guest-note{display:grid;gap:12px;place-items:center;padding:24px;text-align:center;color:#c9d6ac}.tv-submit-form{display:grid;gap:11px;margin-top:13px}.tv-submit-form label{display:grid;gap:5px}.tv-submit-form label>span{color:#b8c699;font-size:.67rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.tv-empty{padding:18px;color:#96a681;text-align:center}
.tv-cinema-layout{display:contents}
.tv-page.is-cinema-mode{overflow:hidden}
.tv-page.is-cinema-mode .tv-cinema-layout{position:fixed;z-index:10000;inset:0;display:grid;grid-template-columns:minmax(0,var(--tv-cinema-player-width,min(68vw,calc(177.78dvh - 300px)))) minmax(280px,1fr);grid-template-rows:minmax(0,1fr) auto;gap:clamp(8px,1.2vw,16px);width:100vw;height:var(--tv-cinema-height,100dvh);padding:clamp(8px,1.2vw,16px);overflow:hidden;background:radial-gradient(circle at 32% 12%,#202b18,#050704 72%)}
.tv-page.is-cinema-mode .tv-cinema-layout::backdrop{background:#000}
.tv-page.is-cinema-mode .tv-player-bezel{grid-column:1;grid-row:1;align-self:center;justify-self:center;width:100%;max-height:100%;min-width:0;min-height:0;box-sizing:border-box;padding:clamp(6px,.9vw,12px);border-radius:18px}
.tv-page.is-cinema-mode .tv-player-stage{width:100%;height:auto;aspect-ratio:16/9;border-radius:10px}
.tv-page.is-cinema-mode .tv-now-card{grid-column:1;grid-row:2;gap:7px;padding:10px 12px;border-radius:13px}
.tv-page.is-cinema-mode .tv-now-card .tv-live-line,.tv-page.is-cinema-mode .tv-now-card .tv-attribution,.tv-page.is-cinema-mode .tv-now-card .tv-guest-hint,.tv-page.is-cinema-mode .tv-youtube-button{display:none}
.tv-page.is-cinema-mode .tv-now-card h2{font-size:clamp(.95rem,2.2vw,1.65rem);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tv-page.is-cinema-mode .tv-video-actions{display:grid;grid-template-columns:minmax(52px,.42fr) minmax(52px,.42fr) repeat(4,minmax(0,1fr));gap:7px}
.tv-page.is-cinema-mode .tv-action-button{min-width:0;min-height:38px;padding:6px 9px;white-space:nowrap}.tv-page.is-cinema-mode .tv-action-button b{min-width:0;overflow:hidden;text-overflow:ellipsis}.tv-page.is-cinema-mode .tv-vote-button{padding-inline:5px}
.tv-page.is-cinema-mode .tv-lower-grid{display:contents}
.tv-page.is-cinema-mode .tv-submit-card{display:none}
.tv-page.is-cinema-mode .tv-chat-card{grid-column:2;grid-row:1/3;display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;padding:11px;border-radius:14px;overflow:hidden}
.tv-page.is-cinema-mode .tv-chat-card .tv-card-head{gap:7px}
.tv-page.is-cinema-mode .tv-chat-feed{height:auto;min-height:0;margin-top:8px}
.tv-page.is-cinema-mode .tv-chat-form{min-height:0}
.tv-chat-name{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px}.tv-chat-name>span{color:#b8c699;font-size:.67rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.tv-chat-name input{width:100%;min-width:0;min-height:40px;border:1px solid rgba(222,242,173,.2);border-radius:8px;background:#090d09;color:#edf4df;padding:8px 10px}.tv-chat-guest{display:inline-flex;align-items:center;padding:2px 5px;border:1px solid #73825f;border-radius:3px;color:#becd9f!important;font-size:.55rem!important;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.tv-share-button span{font-size:1rem}
.tv-page.is-cinema-mode .tv-emoji-picker{display:flex;max-height:72px;overflow:auto}
.tv-page.is-cinema-mode .tv-chat-tools{justify-content:flex-end}
.tv-page.is-cinema-mode .tv-chat-tools .metal-button{width:auto}
.tv-dialog{width:min(980px,calc(100vw - 22px));max-height:min(90vh,900px);padding:0;border:1px solid rgba(222,242,173,.28);border-radius:20px;background:linear-gradient(145deg,#202a19,#0c1109);color:#edf6d2;box-shadow:0 30px 100px #000;overflow:hidden}.tv-dialog::backdrop{background:rgba(0,0,0,.78);backdrop-filter:blur(3px)}.tv-dialog-head{padding:16px 18px;border-bottom:1px solid rgba(222,242,173,.15)}.tv-dialog-close{width:42px;min-width:42px;height:42px;padding:0;font-size:1.4rem}.tv-program-content,.tv-help-content{max-height:calc(90vh - 82px);padding:16px;overflow:auto}.tv-program-days{display:grid;gap:13px}.tv-program-day{display:grid;gap:8px}.tv-program-day h3{margin:0;color:#b9ce91;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}.tv-program-item{display:grid;grid-template-columns:minmax(220px,auto) minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid rgba(222,242,173,.13);border-radius:12px;background:rgba(255,255,255,.035)}.tv-program-item.is-live{border-color:#d05a48;background:linear-gradient(90deg,rgba(189,59,43,.2),rgba(255,255,255,.035))}.tv-program-time{font-weight:900;color:#dcecb8}.tv-program-copy{display:grid;gap:3px}.tv-program-copy strong{font-size:.9rem;text-transform:uppercase}.tv-program-copy small{color:#96a681}.tv-subscribe-button{min-width:140px}.tv-help-content{line-height:1.55;color:#c8d4ad}
.tv-program-owner{display:flex;align-items:center;gap:8px;width:max-content;max-width:100%;color:#cfe4a8;text-decoration:none}.tv-program-owner img,.tv-program-owner-fallback{width:34px;height:34px;border-radius:50%;object-fit:cover;background:#2c3823;border:1px solid rgba(222,242,173,.28);display:grid;place-items:center;font-weight:900}.tv-program-planned{display:grid;gap:5px;margin:5px 0 1px;padding:8px 10px;border-left:3px solid #8eaa60;background:rgba(142,170,96,.08)}.tv-program-planned strong{font-size:.72rem!important}.tv-program-planned span{font-size:.76rem;color:#dcecb8}.tv-attribution a{color:inherit;text-decoration:none}.tv-attribution a:hover{text-decoration:underline}
.tv-local-media-list{display:grid;gap:7px;max-height:520px;overflow:auto}.tv-local-media-item{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:9px;align-items:center;padding:7px;border:1px solid rgba(222,242,173,.14);border-radius:9px;background:rgba(0,0,0,.16)}.tv-local-media-item img{width:58px;aspect-ratio:16/9;object-fit:cover;border-radius:5px;background:#050704}.tv-local-media-copy{display:grid;gap:2px;min-width:0}.tv-local-media-copy strong,.tv-local-media-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tv-local-media-copy small{color:#9eae84;font-size:.68rem}.tv-local-media-item.is-missing{border-color:#a74f42}.tv-local-media-item .metal-button{padding:7px 9px;min-height:34px}
.tv-program-planned ol{margin:0;padding-left:20px}.tv-program-planned li{font-size:.76rem;color:#dcecb8}
.bv-full-program-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;white-space:nowrap}
.bv-program-share-link{display:grid;place-items:center;width:42px;min-width:42px;height:42px;padding:7px}.bv-program-share-link img{display:block;width:25px;height:25px;object-fit:contain}.bv-program-share-link.is-copied{border-color:#cfe99c;background:#365125}.bv-program-share-link.is-copied img{display:none}.bv-program-share-link.is-copied::after{content:'✓';color:#efffd2;font-size:1.1rem;font-weight:900}
@media(max-width:900px){.bv-full-program-link{display:none!important}}
.tv-watchlist-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:14px}.tv-watchlist-card{display:grid;grid-template-rows:auto 1fr auto;overflow:hidden;border:1px solid rgba(222,242,173,.2);border-radius:16px;background:rgba(16,24,12,.78)}.tv-watchlist-card img{width:100%;aspect-ratio:16/9;object-fit:cover;background:#050704}.tv-watchlist-card-body{display:grid;align-content:start;gap:6px;padding:13px}.tv-watchlist-card h2{margin:0;font-size:1rem;line-height:1.15}.tv-watchlist-card p{margin:0;color:#9fad87;font-size:.72rem}.tv-watchlist-actions{display:flex;gap:7px;padding:0 13px 13px}.tv-watchlist-actions>*{flex:1}

/* TV administration */
.tv-admin-grid.tv-playlist-admin-grid{grid-template-columns:minmax(0,1fr)}.tv-playlist-admin-grid>.tv-admin-pane-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.tv-admin-table .tv-row-missing-duration{background:linear-gradient(90deg,rgba(171,34,24,.48),rgba(113,24,18,.25))}.tv-admin-table .tv-row-missing-duration td{border-bottom-color:rgba(255,117,91,.36)}.tv-admin-table .tv-row-missing-duration td:first-child{box-shadow:inset 6px 0 #ff5e48}.tv-admin-table .tv-row-missing-duration input[type="number"]{border-color:#ff6b55;background:#3d1712;color:#ffe4dc;box-shadow:0 0 0 2px rgba(255,85,60,.16)}.tv-admin-table .tv-row-missing-duration td:nth-child(8) small{color:#ff9a86;font-weight:900}
@media(max-width:720px){.tv-playlist-admin-grid>.tv-admin-pane-stack{grid-template-columns:minmax(0,1fr)}}
.tv-admin-content{display:grid;gap:15px;padding:18px}.tv-admin-head{padding:19px;border-radius:18px}.tv-admin-tabs{display:flex;flex-wrap:wrap;gap:7px}.tv-admin-tabs button{min-height:42px;padding:8px 14px;border:1px solid rgba(222,242,173,.2);border-radius:10px;background:#1a2315;color:#dce9bf;font:inherit;font-size:.72rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase;cursor:pointer}.tv-admin-tabs button.is-active{background:linear-gradient(#688343,#293b1e);border-color:#cfe99c}.tv-admin-pane{display:none;min-width:0}.tv-admin-pane.is-active{display:grid;gap:14px}.tv-admin-grid{display:grid;grid-template-columns:minmax(300px,.38fr) minmax(0,.62fr);gap:14px}.tv-admin-card{min-width:0;padding:17px;border-radius:17px}.tv-admin-card h2,.tv-admin-card h3{margin:0 0 12px;text-transform:uppercase}.tv-admin-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tv-admin-form label{display:grid;gap:5px;min-width:0}.tv-admin-form label>span,.tv-admin-label{color:#aebe91;font-size:.65rem;font-weight:900;letter-spacing:.075em;text-transform:uppercase}.tv-admin-form input,.tv-admin-form select,.tv-admin-form textarea{width:100%;min-width:0}.tv-admin-form .wide{grid-column:1/-1}.tv-admin-form-actions{display:flex;flex-wrap:wrap;gap:7px;grid-column:1/-1}.tv-timeline{display:grid;grid-template-columns:repeat(var(--tv-cycle-days,1),minmax(170px,1fr));gap:9px;min-width:0}.tv-timeline-day{position:relative;min-height:620px;padding:43px 7px 7px;border:1px solid rgba(222,242,173,.15);border-radius:13px;background:repeating-linear-gradient(to bottom,rgba(222,242,173,.06) 0,rgba(222,242,173,.06) 1px,transparent 1px,transparent calc(100% / 24))}.tv-timeline-day>h3{position:absolute;top:11px;left:10px;margin:0;font-size:.7rem}.tv-show-block{position:absolute;z-index:2;left:7px;right:7px;top:calc(43px + (var(--start) / 1440) * (100% - 50px));height:max(38px,calc((var(--duration) / 1440) * (100% - 50px)));padding:6px;border:1px solid rgba(210,236,160,.3);border-radius:8px;background:linear-gradient(135deg,rgba(96,125,61,.95),rgba(32,45,24,.97));color:#f0f8df;overflow:hidden;cursor:pointer;text-align:left}.tv-show-block strong,.tv-show-block small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tv-show-block strong{font-size:.68rem}.tv-show-block small{font-size:.58rem;color:#c3d5a4}.tv-playlist-list{display:grid;gap:7px;max-height:600px;overflow:auto}.tv-playlist-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px;border:1px solid rgba(222,242,173,.13);border-radius:11px;background:rgba(255,255,255,.03);cursor:pointer}.tv-playlist-row.is-active{border-color:#bddf82;background:rgba(154,195,91,.12)}.tv-playlist-row strong,.tv-playlist-row small{display:block}.tv-playlist-row small{color:#94a27f;font-size:.66rem}.tv-playlist-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.tv-badge{padding:3px 6px;border-radius:999px;background:#2d3b23;color:#cfe1af;font-size:.58rem;text-transform:uppercase}.tv-admin-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:9px}.tv-admin-toolbar label{display:grid;gap:4px;min-width:160px;flex:1}.tv-admin-table-wrap{max-width:100%;overflow:auto;border:1px solid rgba(222,242,173,.12);border-radius:12px}.tv-admin-table{width:100%;min-width:860px;border-collapse:collapse}.tv-admin-table th,.tv-admin-table td{padding:8px;border-bottom:1px solid rgba(222,242,173,.1);text-align:left;vertical-align:middle}.tv-admin-table th{position:sticky;top:0;z-index:2;background:#182012;color:#afc28d;font-size:.62rem;letter-spacing:.06em;text-transform:uppercase}.tv-admin-table td{font-size:.7rem}.tv-admin-thumb{width:96px;aspect-ratio:16/9;object-fit:cover;border-radius:7px;background:#050704}.tv-admin-table input[type="text"],.tv-admin-table input[type="url"],.tv-admin-table input[type="number"]{min-width:110px;width:100%}.tv-row-actions{display:flex;flex-wrap:wrap;gap:4px}.tv-row-actions button,.tv-row-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:5px 7px;border:1px solid rgba(222,242,173,.18);border-radius:7px;background:#202b18;color:#e5f0ce;text-decoration:none;font:inherit;font-size:.62rem;cursor:pointer}.tv-row-error{background:rgba(134,35,28,.15)}.tv-row-error td:first-child{box-shadow:inset 4px 0 #c65343}.tv-system-status{display:grid;gap:6px;padding:11px;border:1px solid rgba(222,242,173,.13);border-radius:11px;background:rgba(0,0,0,.18)}.tv-cron-url{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.tv-cron-url input{min-width:0;width:100%}
.tv-collapsible-card>.tv-card-head{margin-bottom:14px}.tv-collapsible-card>.tv-card-head h2{margin-bottom:0}.tv-card-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.tv-collapse-button{width:44px;min-width:44px;padding-inline:0;font-size:1.15rem;line-height:1}.tv-collapsible-card.is-collapsed>.tv-card-head{margin-bottom:0}.tv-collapsible-card.is-collapsed>.tv-playlist-overview-toolbar{display:none}.tv-collapsible-card [hidden]{display:none!important}.tv-playlist-overview-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,.65fr);gap:8px;margin-bottom:10px}.tv-playlist-overview-toolbar label{display:grid;gap:4px;min-width:0}.tv-playlist-overview-toolbar label>span{color:#aebe91;font-size:.65rem;font-weight:900;letter-spacing:.075em;text-transform:uppercase}.tv-playlist-overview-toolbar input,.tv-playlist-overview-toolbar select{width:100%;min-width:0}
@media(max-width:720px){.tv-playlist-overview-toolbar{grid-template-columns:minmax(0,1fr)}}
.tv-order-cell{position:relative;min-width:66px;padding-left:42px!important}.tv-order-number{font-weight:900}.tv-playlist-drag-handle{position:absolute;left:5px;top:50%;width:30px;height:42px;min-height:0;padding:0;transform:translateY(-50%);border:1px solid rgba(215,238,173,.28);border-radius:7px;background:linear-gradient(180deg,#344728,#1b2715);color:#dcebbd;font:900 1.25rem/1 monospace;cursor:grab;touch-action:none;box-shadow:inset 0 1px rgba(255,255,255,.08)}.tv-playlist-drag-handle:hover,.tv-playlist-drag-handle:focus-visible{border-color:#cfe99c;background:linear-gradient(180deg,#4d6738,#26391d);color:#fff;outline:none}.tv-playlist-drag-handle:active{cursor:grabbing}.tv-admin-table tbody tr.is-dragging{opacity:.34}.tv-admin-table tbody tr.is-drop-before>td{border-top:3px solid #d7f29f}.tv-admin-table tbody tr.is-drop-after>td{border-bottom:3px solid #d7f29f}.tv-admin-table tbody tr.is-drop-before,.tv-admin-table tbody tr.is-drop-after{background:rgba(161,204,99,.14)}
@media(max-width:980px){.tv-lower-grid,.tv-admin-grid{grid-template-columns:1fr}.tv-timeline{grid-template-columns:repeat(min(var(--tv-cycle-days,1),2),minmax(0,1fr))}.tv-chat-feed{height:430px}}
@media(max-width:720px){.tv-content,.tv-admin-content{padding:10px}.tv-broadcast-head,.tv-section-head,.tv-admin-head{align-items:flex-start;flex-direction:column}.tv-program-button,.tv-section-head .metal-button,.tv-admin-head .metal-button{width:100%}.tv-live-line{align-items:flex-start;flex-direction:column;gap:4px}.tv-video-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.tv-action-button{width:100%;padding-inline:8px}.tv-program-item{grid-template-columns:1fr}.tv-subscribe-button{grid-column:1/-1;width:100%}.tv-chat-feed{height:390px;min-height:260px}.tv-chat-message{grid-template-columns:34px minmax(0,1fr)}.tv-chat-avatar{width:34px;height:34px}.tv-chat-actions{grid-column:2}.tv-chat-tools{align-items:stretch;flex-direction:column}.tv-chat-tools .metal-button{width:100%}.tv-emoji-picker{justify-content:center}.tv-admin-form{grid-template-columns:1fr}.tv-admin-form .wide,.tv-admin-form-actions{grid-column:auto}.tv-timeline{display:grid;grid-template-columns:1fr}.tv-timeline-day{min-height:auto;padding:12px}.tv-timeline-day>h3{position:static;margin:0 0 8px}.tv-show-block{position:static;width:100%;height:auto!important;margin-top:6px}.tv-admin-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.tv-admin-tabs button:last-child{grid-column:1/-1}.tv-cron-url{grid-template-columns:1fr}.tv-player-bezel{border-radius:16px}.tv-player-stage{border-radius:9px}}
@media(max-width:480px){.tv-video-actions{grid-template-columns:1fr}.tv-program-item{grid-template-columns:1fr}.tv-program-time{font-size:.72rem}.tv-page .status-bank{gap:4px}.tv-page .lamp{min-width:54px}.tv-page .lamp em{font-size:.52rem}.tv-admin-tabs{grid-template-columns:1fr}.tv-admin-tabs button:last-child{grid-column:auto}}
@media(max-width:1100px){.tv-page.is-cinema-mode .tv-cinema-layout{grid-template-columns:minmax(0,var(--tv-cinema-player-width,1fr)) clamp(240px,30vw,330px)}}
@media(max-width:820px),(max-height:560px) and (pointer:coarse){.tv-page.is-cinema-mode .tv-cinema-layout{grid-template-columns:minmax(0,var(--tv-cinema-player-width,1fr)) clamp(210px,32vw,290px);padding:7px;gap:7px}.tv-page.is-cinema-mode .tv-now-card{padding:7px}.tv-page.is-cinema-mode .tv-action-button{min-height:34px;font-size:.65rem}.tv-page.is-cinema-mode .tv-action-button:not(.tv-vote-button) span{display:none}.tv-page.is-cinema-mode .tv-chat-card{padding:6px}.tv-page.is-cinema-mode .tv-chat-feed{margin-top:4px;padding:3px}.tv-page.is-cinema-mode .tv-chat-message{grid-template-columns:24px minmax(0,1fr);gap:5px;padding:4px}.tv-page.is-cinema-mode .tv-chat-avatar{width:24px;height:24px;border-radius:7px;font-size:.68rem}.tv-page.is-cinema-mode .tv-chat-meta{gap:4px}.tv-page.is-cinema-mode .tv-chat-meta strong{font-size:.68rem}.tv-page.is-cinema-mode .tv-chat-meta time,.tv-page.is-cinema-mode .tv-chat-meta em{font-size:.52rem}.tv-page.is-cinema-mode .tv-chat-text{margin-top:1px;font-size:.72rem;line-height:1.24}.tv-page.is-cinema-mode .tv-chat-actions{grid-column:2}.tv-page.is-cinema-mode .tv-chat-actions button{width:24px;height:24px}.tv-page.is-cinema-mode .tv-chat-card .tv-kicker,.tv-page.is-cinema-mode .tv-chat-connection{display:none}.tv-page.is-cinema-mode .tv-chat-card h2{font-size:.78rem}.tv-page.is-cinema-mode .tv-chat-form{gap:3px;margin-top:4px}.tv-page.is-cinema-mode .tv-chat-form textarea{height:34px!important;min-height:34px!important;max-height:34px;padding:6px 8px;font-size:.72rem;line-height:1.2;resize:none}}

/* v2.0.91 · volle Textbreite und Zeichenzähler im Livechat */
.tv-chat-message>.tv-chat-avatar,.tv-chat-message>.tv-chat-avatar-link{grid-column:1;grid-row:1}
.tv-chat-message>.tv-chat-body{display:contents}
.tv-chat-message>.tv-chat-body>.tv-chat-meta{grid-column:2;grid-row:1;align-self:center;min-width:0}
.tv-chat-message>.tv-chat-body>.tv-chat-text{grid-column:1/-1;grid-row:2;margin:0;padding-top:2px;min-width:0}
.tv-chat-message>.tv-chat-actions{grid-column:3;grid-row:1}
.tv-chat-counter{justify-self:end;margin-top:-5px;color:#8f9e7d;font-size:.63rem;line-height:1}
.tv-page.is-cinema-mode .tv-chat-message{grid-template-columns:30px minmax(0,1fr) auto}
.tv-page.is-cinema-mode .tv-chat-message>.tv-chat-avatar-link{width:24px;height:24px}
.tv-page.is-cinema-mode .tv-chat-message>.tv-chat-actions{grid-column:3;grid-row:1}
.tv-page.is-cinema-mode .tv-chat-message>.tv-chat-body>.tv-chat-text{margin:0;padding-top:1px}
.tv-page.is-cinema-mode .tv-chat-counter{font-size:.55rem}
@media(max-width:720px){.tv-chat-message{grid-template-columns:34px minmax(0,1fr) auto}.tv-chat-message>.tv-chat-actions{grid-column:3;grid-row:1}.tv-page.is-cinema-mode .tv-chat-message{grid-template-columns:30px minmax(0,1fr) auto}}

/* TV 1.14 control additions */
.tv-tool-launcher{display:flex;align-items:center;justify-content:space-between;gap:14px}.tv-tool-launcher h2{margin:3px 0 8px}.tv-parking-lot{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:9px}.tv-parked-show{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 10px;padding:11px;border:1px dashed rgba(222,242,173,.3);border-radius:11px;background:rgba(0,0,0,.2);color:#e7f2ce;text-align:left}.tv-parked-show strong,.tv-parked-show small{grid-column:1}.tv-parked-show small{color:#9cac83}.tv-parked-show .metal-button{grid-column:2;grid-row:1/3}.tv-timeline-day.is-drop-target{outline:2px solid #cde99a;background-color:rgba(154,195,91,.12)}.tv-show-block.is-dragging{opacity:.45}.tv-transfer-select{max-width:180px;min-height:30px;font-size:.62rem}.tv-video-status{display:block}.tv-video-status.is-ready{color:#cceaa0}.tv-video-status.is-untested{color:#ffd28a}.tv-video-status.is-error{color:#ff9682}.tv-auto-test-controls{display:grid;grid-template-columns:auto minmax(60px,1fr) auto auto;align-items:center;gap:8px;padding:12px 16px 16px}.tv-auto-test-controls strong{text-align:center}.tv-admin-test-stage{margin:14px 16px;border:1px solid rgba(222,242,173,.2);border-radius:12px;overflow:hidden}.tv-dialog>.tone-hint{margin:0;padding:0 16px 10px}.tv-mute-button.is-active{border-color:#e5b96b;background:linear-gradient(#70552d,#302213)}
@media(max-width:720px){.tv-tool-launcher{align-items:stretch;flex-direction:column}.tv-auto-test-controls{grid-template-columns:1fr 1fr}.tv-auto-test-controls strong{grid-column:1/-1;grid-row:1}.tv-page.is-cinema-mode .tv-video-actions{grid-template-columns:42px 42px repeat(4,minmax(0,1fr));gap:4px}.tv-page.is-cinema-mode .tv-vote-button{gap:3px;padding-inline:2px}}
.tv-row-duplicate{background:rgba(211,168,40,.2)}.tv-row-duplicate td:first-child{box-shadow:inset 4px 0 #e5b839}.tv-duplicate-note{color:#ffe183;font-weight:900}

/* TV 2.0.91 · Zuschauer, Sendungsarchiv und Intro-/Outro-Prüfung */
.tv-broadcast-actions{display:flex;align-items:center;gap:10px}.tv-viewer-counter{display:grid;justify-items:end;min-width:126px;padding:8px 11px;border:1px solid rgba(222,242,173,.18);border-radius:10px;background:rgba(7,11,5,.42);font-size:.72rem;text-transform:uppercase;letter-spacing:.055em}.tv-viewer-counter strong{color:#e4f2c5}.tv-viewer-counter small{color:#9faf87;font-size:.62rem}.tv-admin-head>.as-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;line-height:1.15;white-space:normal}.tv-show-video-test{margin-top:6px;width:100%}.tv-parking-lot.is-drop-target{outline:2px solid #e3c36f;outline-offset:5px;border-radius:12px;background:rgba(207,166,60,.12)}
@media(max-width:720px){.tv-broadcast-actions{width:100%;display:grid;grid-template-columns:1fr}.tv-viewer-counter{justify-items:center;width:100%}}

/* TV 2.0.91 · vollständig eingepasster Sieben-Tage-Plan */
.tv-timeline{grid-template-columns:repeat(var(--tv-cycle-days,1),minmax(0,1fr));width:100%;overflow:hidden}
.tv-timeline-day{min-width:0}
.tv-timeline[data-days="7"]{gap:6px}
.tv-timeline[data-days="7"] .tv-timeline-day{padding-inline:4px;border-radius:10px}
.tv-timeline[data-days="7"] .tv-show-block{left:4px;right:4px;padding:4px}
.tv-timeline[data-days="7"] .tv-show-block strong{font-size:.62rem}
.tv-timeline[data-days="7"] .tv-show-block small{font-size:.52rem}
@media(max-width:980px){.tv-timeline{grid-template-columns:repeat(min(var(--tv-cycle-days,1),2),minmax(0,1fr));overflow:visible}}
@media(max-width:720px){.tv-timeline{grid-template-columns:1fr}}
@media(max-width:720px){.tv-emoji-picker{display:none!important}}
@media(max-width:480px){.tv-video-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(hover:none) and (pointer:coarse){.tv-emoji-picker,.tv-chat-tools>.metal-button{display:none!important}}
.tv-show-resize-handle{position:absolute;z-index:5;left:0;right:0;height:10px;cursor:ns-resize;touch-action:none}.tv-show-resize-handle.is-top{top:0}.tv-show-resize-handle.is-bottom{bottom:0}.tv-show-resize-handle::after{content:"";position:absolute;left:35%;right:35%;height:2px;border-radius:2px;background:rgba(238,250,211,.75)}.tv-show-resize-handle.is-top::after{top:2px}.tv-show-resize-handle.is-bottom::after{bottom:2px}.tv-show-block.is-resizing{z-index:7;cursor:ns-resize;box-shadow:0 0 0 2px #d9efab}.tv-youtube-mini-link{background:#b4231f!important;color:#fff!important;border-color:#f36b63!important;font-weight:900!important}.tv-dialog-head-actions{display:flex;align-items:center;gap:8px}.tv-dialog-head-actions .tv-youtube-mini-link{min-height:36px;padding:6px 10px;font-size:.68rem}
.tv-quick-add-form{display:grid;gap:5px;margin:0 0 12px;padding:12px;border:1px solid rgba(222,242,173,.2);border-radius:12px;background:rgba(117,151,67,.1)}.tv-quick-add-form label{display:grid;gap:5px}.tv-quick-add-form label>span{color:#dbeabf;font-size:.68rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.tv-quick-add-form input{width:100%;min-width:0}.tv-quick-add-form .account-status{min-height:1.1em;margin:0;color:#b9ca9c}.tv-quick-add-form .account-status.error{color:#ff9b89}
.tv-playlist-total-duration{padding:10px 14px;font-size:clamp(1rem,2.1vw,1.5rem);font-weight:900;line-height:1.2;letter-spacing:.025em;text-transform:none;font-variant-numeric:tabular-nums}

/* TV 2.0.91 · dauerhafte Sendungen, getrennte Sendeplätze und LIVE-Anzeige */
.tv-timeline-day{background:repeating-linear-gradient(to bottom,rgba(222,242,173,.09) 0,rgba(222,242,173,.09) 1px,transparent 1px,transparent calc((100% - 50px)/24))}
.tv-hour-scale{position:absolute;z-index:1;inset:43px 0 7px;pointer-events:none}.tv-hour-mark{position:absolute;top:calc((var(--hour)/24)*100%);left:4px;right:4px;transform:translateY(-.45em);color:rgba(211,229,176,.58);font-size:.48rem;font-weight:900;line-height:1}.tv-hour-mark::after{content:"";position:absolute;top:.48em;left:28px;right:0;border-top:1px solid rgba(222,242,173,.08)}
.tv-show-block{left:34px;display:block;font:inherit}.tv-show-block.is-live{border-color:#ff7464;background:linear-gradient(135deg,rgba(158,30,22,.98),rgba(67,11,9,.98));box-shadow:0 0 14px rgba(255,45,32,.5)}.tv-slot-remove{position:absolute;z-index:8;top:2px;right:2px;width:22px;height:22px;padding:0;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:rgba(10,12,8,.68);color:#fff;font-size:1rem;line-height:1;cursor:pointer}.tv-slot-live{display:inline-flex;align-items:center;gap:4px;margin:0 26px 3px 0;color:#fff;font-size:.53rem;font-weight:1000;letter-spacing:.12em}.tv-slot-live::before{content:"";width:7px;height:7px;border-radius:50%;background:#ff3024;box-shadow:0 0 8px #ff3024;animation:tv-live-pulse 1.05s ease-in-out infinite}.tv-plan-state{min-width:94px}.tv-plan-state:not(:disabled){opacity:1}.tv-plan-state.is-live{border-color:#ff695b;background:linear-gradient(#b82f25,#59120e);color:#fff;box-shadow:0 0 12px rgba(255,48,36,.55);animation:tv-live-pulse 1.05s ease-in-out infinite}.tv-parked-show.is-live{border-color:#ff6a5d;box-shadow:inset 4px 0 #e63a2d}
@keyframes tv-live-pulse{0%,100%{filter:brightness(.82);opacity:.76}50%{filter:brightness(1.35);opacity:1}}
@media(max-width:720px){.tv-hour-scale{display:none}.tv-show-block{left:auto}.tv-slot-remove{position:static;float:right;margin-left:8px}.tv-slot-live{margin-right:5px}}

/* TV 2.0.91 · klare Drop-Vorschau und sauber gesetzte Sendungstitel */
.tv-timeline-day.is-drop-target{outline:2px solid #e2f6b4;outline-offset:2px;background-color:rgba(173,216,105,.18);box-shadow:inset 0 0 28px rgba(189,231,120,.16)}
.tv-drop-preview{position:absolute;z-index:6;left:34px;right:7px;top:calc(43px + (var(--start)/1440)*(100% - 50px));height:max(38px,calc((var(--duration)/1440)*(100% - 50px)));display:flex;align-items:center;padding:5px 30px 5px 8px;border:2px solid #e7ffb4;border-radius:8px;background:linear-gradient(135deg,rgba(159,204,91,.72),rgba(43,66,28,.82));color:#fff;font-size:.62rem;font-weight:1000;line-height:1.1;overflow:hidden;box-shadow:0 0 18px rgba(202,244,133,.58);pointer-events:none}
.tv-show-block>strong{position:absolute;z-index:3;top:50%;left:9px;right:31px;transform:translateY(-50%);font-size:.72rem;line-height:1.05;text-shadow:0 1px 2px rgba(0,0,0,.8)}.tv-show-block.is-live>strong{left:65px}.tv-show-block>small{position:absolute;z-index:3;left:9px;right:31px;bottom:3px;font-size:.5rem;opacity:.78}.tv-slot-live{position:absolute;z-index:4;top:50%;left:9px;transform:translateY(-50%);margin:0}.tv-show-resize-handle::after{left:44%;right:44%}
.tv-show-block.is-continuation{border-style:dashed;border-top-color:#dff5ac;background:linear-gradient(135deg,rgba(74,104,47,.95),rgba(25,38,19,.97))}
.tv-show-block.is-repeat-linked{border-left:5px solid hsl(var(--repeat-hue) 78% 62%);box-shadow:inset 4px 0 0 hsl(var(--repeat-hue) 70% 38% / .42)}.tv-show-block.is-live.is-repeat-linked{box-shadow:0 0 14px rgba(255,45,32,.5),inset 4px 0 0 hsl(var(--repeat-hue) 70% 52% / .65)}.tv-show-block.is-repeat{background:linear-gradient(135deg,hsl(var(--repeat-hue) 32% 24% / .96),rgba(20,28,16,.98))}.tv-show-block.is-live.is-repeat{background:linear-gradient(135deg,rgba(158,30,22,.98),rgba(67,11,9,.98))}.tv-repeat-badge{position:absolute;z-index:4;top:4px;left:8px;padding:2px 5px;border:1px solid hsl(var(--repeat-hue) 70% 62% / .7);border-radius:999px;background:rgba(5,8,4,.72);color:hsl(var(--repeat-hue) 80% 76%);font-size:.43rem;font-weight:1000;letter-spacing:.07em}.tv-show-block.is-repeat-linked>strong{top:53%}.tv-program-item.is-repeat{border-left:5px solid #d5b660;background:linear-gradient(90deg,rgba(176,139,47,.13),rgba(255,255,255,.035))}
.footer-install-button{min-height:28px;padding:4px 8px;border:1px solid rgba(222,242,173,.2);border-radius:8px;background:rgba(27,37,21,.75);color:#dce9bf;font:inherit;font-size:.62rem;font-weight:900;cursor:pointer}.footer-install-button:hover{border-color:rgba(224,241,190,.48);background:rgba(130,156,91,.18);color:#f2f8dc}
@media(max-width:720px){.tv-drop-preview{display:none}.tv-show-block>strong,.tv-show-block.is-live>strong,.tv-show-block>small,.tv-slot-live,.tv-repeat-badge{position:static;transform:none}.tv-show-block>strong{display:block;margin:2px 30px 1px 0}.tv-show-block>small{display:block}.tv-slot-live,.tv-repeat-badge{display:inline-flex;margin-right:7px}.footer-install-button{min-height:38px;width:100%;font-size:.66rem}}
.tv-import-progress{display:grid;gap:7px;margin-top:8px;padding:10px 12px;border:1px solid rgba(145,169,110,.38);border-radius:10px;background:rgba(14,20,12,.58)}
.tv-import-progress[hidden]{display:none}.tv-import-progress progress{width:100%;height:14px;accent-color:#a9cf6f}.tv-import-progress span{font-size:.78rem;color:#dcecc5}
.tv-tool-launcher>.as-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;min-height:46px;padding:10px 16px;line-height:1.15;white-space:normal}
.tv-error-batch-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:12px 0;padding:10px;border:1px solid rgba(222,242,173,.18);border-radius:11px;background:rgba(5,9,4,.38)}.tv-error-selection,.tv-error-batch-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.tv-error-selection strong{min-width:82px;color:#ddecbe;font-size:.72rem;text-align:center}.tv-error-check-column{width:34px}.tv-error-row-check{width:14px;height:14px;accent-color:#a9cf6f}.tv-row-error.is-selected{background:rgba(159,204,91,.1)}
@media(max-width:720px){.tv-tool-launcher>.as-link{width:100%;min-height:48px}.tv-error-batch-toolbar,.tv-error-selection,.tv-error-batch-actions{align-items:stretch}.tv-error-selection,.tv-error-batch-actions{width:100%}.tv-error-selection .metal-button,.tv-error-batch-actions .metal-button{flex:1 1 130px}.tv-error-selection strong{display:flex;align-items:center;justify-content:center;flex:1 1 100%}}
/* Echte Zeitgeometrie: keine künstliche Mindesthöhe und damit keine Kartenüberlagerung. */
@media(min-width:721px){.tv-timeline-day{min-height:1900px}.tv-show-block{height:calc((var(--duration) / 1440) * (100% - 50px));min-height:0}}

.tv-program-day-nav{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;position:sticky;top:-16px;z-index:4;padding:12px 0;background:linear-gradient(#182114 78%,transparent)}.tv-program-day-nav h3{margin:0;text-align:center;color:#d8eab2;font-size:.82rem;letter-spacing:.07em;text-transform:uppercase}.tv-program-nav-button{min-width:145px}.tv-program-description{margin:3px 0;color:#d2ddbb;font-size:.76rem;line-height:1.4;white-space:pre-wrap}.tv-program-empty{margin:0;padding:28px 14px;border:1px dashed rgba(222,242,173,.18);border-radius:12px;text-align:center}
.tv-parked-show .tv-show-description{grid-column:1;white-space:normal;line-height:1.35}
.tv-playlist-export{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:4px 0}.tv-playlist-export h3{margin:0 0 5px}.tv-playlist-export .tone-hint{margin:0}.tv-playlist-export .tv-admin-form-actions{flex:0 0 auto}.tv-playlist-export-separator{margin-top:20px}@media(max-width:720px){.tv-playlist-export{align-items:stretch;flex-direction:column}.tv-playlist-export .tv-admin-form-actions{display:grid;grid-template-columns:1fr}.tv-playlist-export .metal-button{width:100%}}
@media(max-width:720px){.tv-program-day-nav{grid-template-columns:1fr 1fr;top:-16px}.tv-program-day-nav h3{grid-column:1/-1;grid-row:1}.tv-program-nav-button{min-width:0}.tv-program-day-nav .tv-program-nav-button:first-child{grid-column:1}.tv-program-day-nav .tv-program-nav-button:last-child{grid-column:2}}
.tv-subscribe-button{display:inline-grid;place-items:center;width:44px;min-width:44px;height:44px;padding:0;font-size:1rem}@media(max-width:720px){.tv-subscribe-button{grid-column:1/-1;justify-self:end;width:44px}}
.tv-page.is-cinema-mode .tv-cinema-layout{width:auto;max-width:none;box-sizing:border-box}
.tv-page.is-cinema-mode .tv-video-actions{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.tv-page.is-cinema-mode .tv-action-button b{display:none}.tv-page.is-cinema-mode .tv-action-button span{display:inline}
@media(max-width:1100px){.tv-page.is-cinema-mode .tv-cinema-layout{grid-template-columns:minmax(0,var(--tv-cinema-player-width,1fr)) minmax(240px,1fr)}}
@media(max-width:820px),(max-height:560px) and (pointer:coarse){.tv-page.is-cinema-mode .tv-cinema-layout{grid-template-columns:minmax(0,var(--tv-cinema-player-width,1fr)) minmax(210px,1fr)}.tv-page.is-cinema-mode .tv-now-card{gap:4px;padding:5px 7px}.tv-page.is-cinema-mode .tv-now-card h2{font-size:.82rem}.tv-page.is-cinema-mode .tv-video-actions{display:grid!important;grid-template-columns:repeat(7,32px)!important;justify-content:center;gap:4px}.tv-page.is-cinema-mode .tv-video-actions .tv-action-button{grid-column:auto!important;width:32px!important;min-width:32px!important;height:30px;min-height:30px;padding:0!important;gap:0;border-radius:8px;font-size:.7rem}.tv-page.is-cinema-mode .tv-video-actions .tv-action-button b{display:none!important}.tv-page.is-cinema-mode .tv-video-actions .tv-action-button:not(.tv-youtube-button) span{display:inline!important;font-size:.78rem;line-height:1}}
@media(max-width:820px),(pointer:coarse) and (max-height:560px){.tv-mini-button{display:none!important}.tv-page.is-cinema-mode .tv-video-actions{grid-template-columns:repeat(6,32px)!important}}
@media(max-width:720px){.tv-chat-avatar-link{width:34px;height:34px}}
@media(max-width:820px),(max-height:560px) and (pointer:coarse){.tv-page.is-cinema-mode .tv-chat-avatar-link{width:24px;height:24px;border-radius:7px}}
@media(orientation:portrait) and (max-width:820px){.tv-page.is-cinema-mode.is-cinema-portrait .tv-cinema-layout{display:flex!important;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:7px;width:100vw;height:var(--tv-cinema-height,100dvh);padding:max(7px,env(safe-area-inset-top)) 7px max(7px,env(safe-area-inset-bottom));overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.tv-page.is-cinema-mode.is-cinema-portrait .tv-player-bezel{flex:0 0 auto;grid-column:auto;grid-row:auto;align-self:stretch;justify-self:stretch;width:100%;max-height:none;padding:5px}.tv-page.is-cinema-mode.is-cinema-portrait .tv-player-stage{width:100%;height:auto;aspect-ratio:16/9}.tv-page.is-cinema-mode.is-cinema-portrait .tv-now-card{flex:0 0 auto;grid-column:auto;grid-row:auto;width:100%;padding:7px}.tv-page.is-cinema-mode.is-cinema-portrait .tv-chat-card{flex:1 0 min(44dvh,420px);grid-column:auto;grid-row:auto;width:100%;min-height:280px;max-height:none;padding:7px;overflow:hidden}.tv-page.is-cinema-mode.is-cinema-portrait .tv-chat-feed{height:100%;min-height:170px;overflow-y:auto}}

/* TV 2.0.91 · getrennte Ansichten und Bildsymbole */
.tv-action-button>span{display:inline-grid;place-items:center;flex:0 0 24px;width:24px;height:24px;line-height:1}.tv-action-button>span>img{display:block;width:100%;height:100%;object-fit:contain}.tv-bookmark-button span,.tv-vote-button span,.tv-share-button span{font-size:inherit}.tv-page.is-cinema-mode .tv-video-actions{grid-template-columns:repeat(8,minmax(0,1fr))}
.tv-page.is-player-fullscreen{overflow:hidden}.tv-page.is-player-fullscreen .tv-cinema-layout{position:fixed;z-index:10000;inset:0;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;gap:8px;width:100vw;height:100dvh;padding:clamp(7px,1.2vw,14px);overflow:hidden;background:#000}.tv-page.is-player-fullscreen .tv-cinema-layout::backdrop{background:#000}.tv-page.is-player-fullscreen .tv-player-bezel{grid-column:1;grid-row:1;align-self:center;justify-self:center;width:min(100%,calc((100dvh - 92px) * 16 / 9));max-height:100%;padding:clamp(5px,.8vw,10px);border-radius:14px}.tv-page.is-player-fullscreen .tv-player-stage{width:100%;height:auto;aspect-ratio:16/9;border-radius:8px}.tv-page.is-player-fullscreen .tv-now-card{grid-column:1;grid-row:2;justify-self:center;width:min(100%,980px);padding:6px 8px;background:#080b07}.tv-page.is-player-fullscreen .tv-now-card .tv-live-line,.tv-page.is-player-fullscreen .tv-now-card h2,.tv-page.is-player-fullscreen .tv-now-card .tv-attribution,.tv-page.is-player-fullscreen .tv-now-card .tv-guest-hint{display:none}.tv-page.is-player-fullscreen .tv-video-actions{display:grid;grid-template-columns:repeat(5,minmax(48px,110px));justify-content:center;gap:6px}.tv-page.is-player-fullscreen .tv-video-actions .tv-mini-button,.tv-page.is-player-fullscreen .tv-video-actions .tv-chatmode-button,.tv-page.is-player-fullscreen .tv-video-actions .tv-share-button,.tv-page.is-player-fullscreen .tv-video-actions .tv-youtube-button{display:none}.tv-page.is-player-fullscreen .tv-action-button{min-width:0;min-height:38px;padding:5px 8px}.tv-page.is-player-fullscreen .tv-action-button b{display:none}.tv-page.is-player-fullscreen .tv-lower-grid{display:none!important}.tv-page.is-player-fullscreen .tv-side-column{display:contents!important}
@media(max-width:820px),(max-height:560px) and (pointer:coarse){.tv-page.is-cinema-mode .tv-video-actions{grid-template-columns:repeat(8,32px)!important}}@media(max-width:820px),(pointer:coarse) and (max-height:560px){.tv-page.is-cinema-mode .tv-video-actions{grid-template-columns:repeat(7,32px)!important}}
.tv-page.is-player-fullscreen .tv-video-actions .tv-action-button{grid-column:auto!important}
/* Schmale Infospalte: Beschriftungen ausblenden, bevor sie in Nachbarknöpfe ragen. */
.tv-now-card{container-type:inline-size}
@container (max-width:560px){
  .tv-video-actions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
  .tv-video-actions .tv-action-button{width:100%;min-width:0;padding:7px 4px;gap:3px}
  .tv-video-actions .tv-action-button:not(.tv-vote-button)>b{display:none}
  .tv-video-actions .tv-action-button>span{flex:0 0 24px}
}
@container (max-width:340px){.tv-video-actions .tv-vote-button>b{display:none}}
.tv-page.is-cinema-mode .tv-video-actions{grid-template-columns:repeat(9,minmax(0,1fr))}@media(max-width:820px),(max-height:560px) and (pointer:coarse){.tv-page.is-cinema-mode .tv-video-actions{grid-template-columns:repeat(9,32px)!important}}@media(max-width:820px),(pointer:coarse) and (max-height:560px){.tv-page.is-cinema-mode .tv-video-actions{grid-template-columns:repeat(8,32px)!important}}
.tv-video-actions>.tv-youtube-button{padding-inline:10px}.tv-video-actions>.tv-youtube-button b{display:none!important}.tv-watchlist-actions .tv-watchlist-icon-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:8px;border-color:rgba(222,242,173,.25);background:linear-gradient(#40522d,#1d2716)}.tv-watchlist-actions .tv-watchlist-icon-button img{display:block;width:34px;height:34px;aspect-ratio:auto;object-fit:contain;background:transparent}
.tv-admin-table tr.tv-row-hidden{opacity:.58;background:rgba(80,88,72,.2)}
.tv-admin-table tr.tv-row-hidden img{filter:grayscale(1)}
.tv-video-status.is-hidden{color:#c6c9bd}
.tv-admin-tabs a.tv-admin-tab-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 14px;border:1px solid rgba(222,242,173,.2);border-radius:10px;background:#1a2315;color:#dce9bf;text-decoration:none;font-size:.72rem;font-weight:900;letter-spacing:.07em;text-align:center;text-transform:uppercase}
.tv-show-save-feedback{display:inline-flex;align-items:center;min-height:38px;padding:0 .65rem;border-radius:.45rem;color:#aeb99d;font-size:.74rem;font-weight:900;letter-spacing:.04em}.tv-show-save-feedback:empty{display:none}.tv-show-save-feedback.is-success{border:1px solid rgba(169,220,93,.34);background:rgba(94,135,47,.2);color:#cdef98}.tv-show-save-feedback.is-error{border:1px solid rgba(231,91,73,.4);background:rgba(128,37,28,.22);color:#ffb2a4}.tv-admin-form .tv-outro-random-toggle{display:grid;gap:5px;padding:11px 13px;border:1px solid rgba(205,230,159,.2);border-radius:10px;background:rgba(255,255,255,.025);cursor:pointer}.tv-admin-form .tv-outro-random-choice{display:flex;align-items:center;gap:10px;margin:0;color:#dbe9bf}.tv-admin-form .tv-outro-random-choice input{width:18px;min-width:14px;height:14px;margin:0;padding:0;accent-color:#b9d77e}.tv-admin-form .tv-outro-random-choice strong{font-size:.68rem;letter-spacing:.075em;text-transform:uppercase}.tv-admin-form .tv-outro-random-toggle small{padding-left:28px;color:#94a27f;line-height:1.4}
.tv-admin-table-wrap:has(.tv-playlist-video-table){border:0;border-radius:0;background:transparent}.tv-playlist-video-table{min-width:1362px;table-layout:fixed;border-collapse:separate;border-spacing:0 8px}.tv-playlist-video-table th{position:sticky;top:0;z-index:3;padding:9px 11px;border:0;background:#151e11}.tv-playlist-video-table th:nth-child(1){width:42px}.tv-playlist-video-table th:nth-child(2){width:76px}.tv-playlist-video-table th:nth-child(3){width:130px}.tv-playlist-video-table th:nth-child(4){width:350px}.tv-playlist-video-table th:nth-child(5){width:105px}.tv-playlist-video-table th:nth-child(6){width:145px}.tv-playlist-video-table th:nth-child(7){width:72px}.tv-playlist-video-table th:nth-child(8){width:135px}.tv-playlist-video-table tbody tr{background:linear-gradient(110deg,rgba(39,57,29,.9),rgba(18,29,15,.95));filter:drop-shadow(0 5px 9px rgba(0,0,0,.16))}.tv-playlist-video-table tbody td{height:100%;padding:12px 10px;border-top:1px solid rgba(190,220,136,.17);border-bottom:1px solid rgba(190,220,136,.17);background:transparent;vertical-align:top}.tv-playlist-video-table tbody td:first-child{border-left:1px solid rgba(190,220,136,.17);border-radius:12px 0 0 12px}.tv-playlist-video-table tbody td:last-child{border-right:1px solid rgba(190,220,136,.17);border-radius:0 12px 12px 0}.tv-playlist-video-table .tv-order-cell{min-width:0;padding:12px 8px 12px 48px!important}.tv-playlist-video-table .tv-playlist-drag-handle{top:12px;transform:none}.tv-playlist-video-table .tv-order-number{display:inline-flex;align-items:center;min-height:42px}.tv-playlist-video-table .tv-admin-thumb{width:110px;border:1px solid rgba(205,230,159,.22);border-radius:9px;box-shadow:0 4px 9px rgba(0,0,0,.28)}.tv-playlist-video-table td:nth-child(4)>input,.tv-playlist-video-table td:nth-child(5)>input{min-width:0;min-height:38px;border:1px solid rgba(190,221,132,.28);border-radius:8px;background:linear-gradient(135deg,#34452a,#1d2a18);color:#edf4df;box-shadow:inset 0 1px rgba(255,255,255,.045)}.tv-playlist-video-table td:nth-child(4)>a{display:block;margin-top:.3rem;color:#bcd78a;font-size:.66rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tv-playlist-video-table td:nth-child(5)>small,.tv-playlist-video-table td:nth-child(8)>small{display:block;margin-top:.36rem;color:#9fb486;line-height:1.35}.tv-playlist-video-table td:nth-child(6),.tv-playlist-video-table td:nth-child(7),.tv-playlist-video-table td:nth-child(8){padding-top:18px;color:#dfeaca;font-weight:750}.tv-playlist-video-table .tv-row-actions{display:grid;gap:7px;min-width:0}.tv-row-actions-primary,.tv-row-actions-secondary{display:flex;align-items:center;gap:5px;min-width:0}.tv-playlist-video-table .tv-row-actions button,.tv-playlist-video-table .tv-row-actions a{min-height:34px;padding:6px 9px;border-color:rgba(190,221,132,.25);background:linear-gradient(#34462a,#1b2817);font-size:.62rem;font-weight:800;white-space:nowrap}.tv-playlist-video-table .tv-row-actions button:hover,.tv-playlist-video-table .tv-row-actions a:hover{border-color:#badb7e;background:linear-gradient(#455d35,#263920)}.tv-playlist-video-table .tv-row-actions .tv-youtube-mini-link{width:35px;padding:0;background-color:#7f261f;background-repeat:no-repeat;background-position:center;background-size:19px 19px;color:transparent}.tv-playlist-video-table .tv-transfer-select{flex:1;max-width:none;min-width:150px;height:34px;border-color:rgba(190,221,132,.25);border-radius:7px;background:#d2dec0}.tv-playlist-video-table tr.tv-row-hidden{background:linear-gradient(110deg,rgba(49,55,43,.82),rgba(24,29,22,.94))}.tv-playlist-video-table tr.tv-row-hidden td{background:transparent}
.tv-playlist-video-table .tv-row-actions .tv-youtube-mini-link{background:#7f261f url('../assets/tv-controls/youtube.png') center/19px no-repeat!important;color:transparent!important}
.tv-entry-moderation-toggle{display:inline-flex;align-items:center;gap:.3rem;margin-left:auto;color:#cfe3a9;font-size:.62rem;font-weight:850;cursor:pointer;white-space:nowrap}.tv-entry-moderation-toggle input{width:.95rem;height:.95rem;margin:0;accent-color:#9bc45c;cursor:pointer}.tv-entry-moderation.is-disabled{border-color:rgba(156,171,132,.18);background:linear-gradient(135deg,rgba(43,49,37,.62),rgba(21,26,19,.78));box-shadow:none}.tv-entry-moderation.is-disabled .tv-entry-moderation-media,.tv-entry-moderation.is-disabled .tv-entry-moderation-actions{opacity:.48}.tv-entry-moderation.is-disabled .tv-entry-moderation-label:before{background:#758064;box-shadow:none}.tv-entry-moderation.is-disabled .tv-entry-moderation-duration{opacity:.6}
body.tv-page[data-tv-section="live"]:not(.is-cinema-mode):not(.is-player-fullscreen) .tv-chat-card{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:clamp(320px,calc(100dvh - 180px),620px);min-height:0;max-height:620px;overflow:hidden}body.tv-page[data-tv-section="live"]:not(.is-cinema-mode):not(.is-player-fullscreen) .tv-chat-feed{height:auto;min-height:0;max-height:none;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.tv-page.is-cinema-mode .tv-chat-card{height:100%!important;min-height:0!important;max-height:100%!important;overflow:hidden!important}.tv-page.is-cinema-mode .tv-chat-feed{height:auto!important;min-height:0!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important;scrollbar-gutter:stable}.tv-page.is-cinema-mode .tv-chat-form{position:relative;z-index:1;align-self:end;min-height:0;max-height:100%;overflow:visible;background:inherit}
.tv-moderation-toggle span{display:flex;align-items:center;gap:.65rem}.tv-moderation-toggle input{width:1.15rem;height:1.15rem;margin:0}.tv-moderation-toggle:has(input:disabled){opacity:.55}.tv-entry-moderation{display:grid;gap:.42rem;min-width:0;margin-top:.6rem;padding:.55rem;border:1px solid rgba(172,211,107,.28);border-radius:.65rem;background:linear-gradient(135deg,rgba(51,74,35,.72),rgba(20,31,17,.86));box-shadow:inset 0 1px rgba(255,255,255,.045),0 4px 12px rgba(0,0,0,.16)}.tv-entry-moderation.is-empty{padding:0;border:0;background:transparent;box-shadow:none}.tv-entry-moderation-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.tv-entry-moderation-label{display:inline-flex;align-items:center;gap:.35rem;color:#cbe799;font-size:.67rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.tv-entry-moderation-label:before{content:"";width:.42rem;height:.42rem;border-radius:50%;background:#a8d063;box-shadow:0 0 7px rgba(168,208,99,.7)}.tv-entry-moderation-duration{flex:none;padding:.16rem .42rem;border:1px solid rgba(205,230,159,.2);border-radius:999px;background:rgba(8,15,7,.38);color:#dbe8c4;font-size:.66rem;font-weight:800}.tv-entry-moderation-media{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:.5rem;min-width:0}.tv-entry-moderation-thumb{display:block;width:58px;height:34px;object-fit:cover;border:1px solid rgba(220,239,184,.16);border-radius:.35rem;background:#080c07}.tv-entry-moderation-copy{display:grid;gap:.08rem;min-width:0}.tv-entry-moderation-title{overflow:hidden;color:#edf4df;font-size:.73rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.tv-entry-moderation-copy small{overflow:hidden;color:#9daf84;font-size:.62rem;text-overflow:ellipsis;white-space:nowrap}.tv-entry-moderation-actions{display:grid;grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr) 32px;gap:.3rem}.tv-entry-moderation-action,.tv-entry-moderation-add{display:inline-flex;align-items:center;justify-content:center;min-height:30px!important;padding:.28rem .45rem!important;border:1px solid rgba(190,221,132,.24)!important;border-radius:.4rem!important;background:linear-gradient(#34462a,#1b2817)!important;color:#e8f0d7!important;font-size:.66rem!important;font-weight:850!important;line-height:1!important;text-decoration:none!important;box-shadow:0 2px 5px rgba(0,0,0,.2)!important}.tv-entry-moderation-action:hover,.tv-entry-moderation-add:hover{border-color:#b9d87e!important;background:linear-gradient(#455d35,#263920)!important}.tv-entry-moderation-youtube,.tv-entry-moderation-remove{padding:0!important;background-repeat:no-repeat!important;background-position:center!important;background-size:18px 18px!important}.tv-entry-moderation-youtube{border-color:rgba(225,74,62,.5)!important;background-color:#7f261f!important;background-image:url('../assets/tv-controls/youtube.png')!important}.tv-entry-moderation-remove{border-color:rgba(225,74,62,.34)!important;background-color:#43201b!important;background-image:url('../assets/tv-controls/x_button_red.png')!important}.tv-entry-moderation-add{width:100%;border-style:dashed!important;background:rgba(35,51,27,.45)!important;color:#c9dda3!important}
/* Echtes Player-Vollbild: Video füllt die native Vollbildfläche, Bedienelemente liegen zeitweise darüber. */
.tv-page.is-player-fullscreen .tv-cinema-layout{position:fixed;z-index:10000;inset:0;display:block;width:100vw;height:100dvh;padding:0;overflow:hidden;background:#000}
.tv-page.is-player-fullscreen .tv-player-bezel{position:absolute;inset:0;width:100%;height:100%;max-height:none;padding:0;border:0;border-radius:0;background:#000;box-shadow:none}
.tv-page.is-player-fullscreen .tv-player-stage{width:100%;height:100%;aspect-ratio:auto;border-radius:0;background:#000}
.tv-page.is-player-fullscreen .tv-player-stage>iframe,.tv-page.is-player-fullscreen .tv-player-stage>#tvYoutubePlayer,.tv-page.is-player-fullscreen .tv-player-stage>#tvYoutubePlayer>iframe,.tv-page.is-player-fullscreen .tv-local-player{width:100%!important;height:100%!important}
.tv-page.is-player-fullscreen .tv-local-player{object-fit:contain}
.tv-page.is-player-fullscreen .tv-now-card{position:absolute;z-index:12;right:0;bottom:0;left:0;width:100%;max-width:none;padding:max(10px,1.2vw) max(12px,2vw) max(10px,env(safe-area-inset-bottom));border:0;border-radius:0;background:linear-gradient(transparent,rgba(0,0,0,.9) 42%,#000);opacity:0;transform:translateY(105%);pointer-events:none;transition:opacity .2s ease,transform .24s ease}
.tv-page.is-player-fullscreen .tv-cinema-layout.fullscreen-controls-visible .tv-now-card{opacity:1;transform:translateY(0);pointer-events:auto}

/* BunkerVision v2.0.91 · große optionale Sendungsdetails */
.tv-current-show-title{display:grid;gap:3px;width:100%;padding:0;border:0;color:#eff8d7;background:none;text-align:left;cursor:pointer}.tv-current-show-title[hidden]{display:none}.tv-current-show-title span{color:#9fb581;font-size:.58rem;font-weight:900;letter-spacing:.16em}.tv-current-show-title strong{font-size:clamp(1.18rem,2.4vw,1.75rem);line-height:1.08;text-transform:uppercase;text-decoration:underline;text-decoration-color:rgba(211,238,165,.28);text-underline-offset:5px}.tv-current-show-title:hover strong,.tv-current-show-title:focus-visible strong{color:#d8f0aa;text-decoration-color:#d8f0aa}.tv-program-item{cursor:pointer}.tv-program-item:focus-visible{outline:2px solid #cfe99c;outline-offset:2px}
.tv-program-item{transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.tv-program-item:hover{border-color:rgba(190,231,137,.5);background:rgba(132,171,82,.09);box-shadow:inset 3px 0 0 rgba(180,225,119,.5)}.tv-program-item:hover>.tv-program-copy>strong{color:#efffd4}.tv-program-owner[href]{padding:4px 7px 4px 4px;border:1px solid transparent;border-radius:999px;transition:border-color .16s ease,color .16s ease,background-color .16s ease,box-shadow .16s ease}.tv-program-owner[href]:hover,.tv-program-owner[href]:focus-visible{border-color:#bce77e;color:#f2ffdb;background:rgba(101,158,55,.28);box-shadow:0 0 0 2px rgba(145,211,83,.12);outline:none}.tv-program-owner[href]:hover span:last-child,.tv-program-owner[href]:focus-visible span:last-child{text-decoration:underline;text-underline-offset:3px}
.tv-program-special{display:grid;gap:2px;margin-top:5px;padding:6px 8px;border-left:3px solid #d8a847;background:rgba(177,124,35,.12);color:#ead9aa;font-size:.72rem;line-height:1.35}.tv-program-special strong{color:#f1c76b;font-size:.61rem;letter-spacing:.1em}.tv-program-special span{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.tv-program-loading[hidden]{display:none}.tv-program-loading{position:fixed;inset:0;z-index:20;display:grid;place-items:center;background:rgba(7,11,6,.42);pointer-events:none}.tv-program-spinner{width:54px;height:54px;border:5px solid rgba(225,245,188,.28);border-top-color:#d9f5a4;border-radius:50%;animation:tv-program-spin .8s linear infinite;box-shadow:0 0 24px rgba(151,202,89,.2)}@keyframes tv-program-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.tv-program-spinner{animation-duration:2s}}
.tv-show-dialog{position:relative;width:min(1080px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 24px);padding:0;overflow:hidden;border:1px solid rgba(220,240,172,.36);border-radius:22px;color:#f0f7df;background:#10150e;box-shadow:0 28px 100px #000}.tv-show-dialog::backdrop{background:rgba(0,0,0,.82);backdrop-filter:blur(4px)}.tv-show-dialog-background{position:absolute;inset:0;background-position:center;background-size:cover;filter:saturate(.78);opacity:.58}.tv-show-dialog-background::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,10,6,.97) 0%,rgba(7,10,6,.84) 48%,rgba(7,10,6,.68) 100%),linear-gradient(0deg,rgba(7,10,6,.96),transparent 44%)}.tv-show-dialog-content{position:relative;z-index:2;max-height:calc(100dvh - 24px);overflow:auto}.tv-show-dialog-close{position:absolute;z-index:5;top:13px;right:13px;display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid rgba(230,246,196,.38);border-radius:50%;color:#fff;background:rgba(11,16,9,.84);font-size:1.5rem;cursor:pointer}.tv-show-dialog-close:hover{border-color:#e7f6c4;background:#26351d}.tv-show-rich-card{min-height:min(720px,calc(100dvh - 24px));display:grid;grid-template-columns:minmax(250px,.38fr) minmax(0,.62fr);align-items:stretch}.tv-show-rich-hero{display:flex;flex-direction:column;justify-content:flex-end;gap:24px;padding:clamp(28px,5vw,70px);border-right:1px solid rgba(225,242,186,.15);background:linear-gradient(180deg,rgba(5,8,4,.12),rgba(5,8,4,.72))}.tv-show-rich-logo{display:block;width:min(100%,360px);max-height:280px;object-fit:contain;object-position:left center;filter:drop-shadow(0 9px 28px rgba(0,0,0,.78))}.tv-show-rich-hero h2{margin:8px 0 0;font-size:clamp(2rem,4.5vw,4.5rem);line-height:.94;text-transform:uppercase;text-shadow:0 3px 18px #000;overflow-wrap:anywhere}.tv-show-rich-body{align-self:end;display:grid;gap:22px;padding:clamp(52px,6vw,86px) clamp(24px,5vw,66px) clamp(28px,4vw,54px);background:linear-gradient(90deg,rgba(8,11,6,.64),rgba(8,11,6,.35))}.tv-show-rich-description{max-width:760px;margin:0;color:#e7efd7;font-size:clamp(1rem,1.45vw,1.22rem);line-height:1.62;white-space:pre-wrap}.tv-show-airtimes{display:grid;gap:8px}.tv-show-airtimes h3{margin:0;color:#bcd68b;font-size:.7rem;letter-spacing:.13em;text-transform:uppercase}.tv-show-airtimes ul{display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none}.tv-show-airtimes li{padding:7px 10px;border:1px solid rgba(219,239,175,.2);border-radius:999px;background:rgba(21,31,16,.78);font-size:.72rem;font-weight:800}.tv-show-maker{display:inline-grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:12px;width:max-content;max-width:100%;color:#eff8d7;text-decoration:none}.tv-show-maker img,.tv-show-maker-fallback{display:grid;place-items:center;width:52px;height:52px;border:1px solid rgba(225,241,191,.36);border-radius:50%;object-fit:cover;background:#304023;font-weight:900}.tv-show-maker>span:last-child{display:grid;gap:2px;min-width:0}.tv-show-maker small{color:#94aa76;font-size:.57rem;font-weight:900;letter-spacing:.12em}.tv-show-maker strong{overflow:hidden;text-overflow:ellipsis;font-size:.9rem;white-space:nowrap}.tv-show-maker[href]:hover strong{text-decoration:underline}.tv-show-rich-actions{display:flex;flex-wrap:wrap;gap:9px}.tv-show-rich-actions .metal-button{display:inline-flex;align-items:center;gap:8px;min-height:44px}.tv-show-share img{width:24px;height:24px;object-fit:contain}.tv-show-thumbnail-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(100px,1fr);gap:7px;max-width:100%;padding-top:5px;overflow-x:auto;scrollbar-width:thin}.tv-show-thumbnail-strip figure{width:100%;margin:0;aspect-ratio:16/9;overflow:hidden;border:1px solid rgba(225,241,191,.17);border-radius:8px;background:#050704}.tv-show-thumbnail-strip img{display:block;width:100%;height:100%;object-fit:cover;opacity:.78;transition:opacity .15s ease}.tv-show-thumbnail-strip img:hover{opacity:1}.tv-show-legacy-card{display:grid;gap:14px;padding:clamp(26px,5vw,60px);background:linear-gradient(145deg,#202a19,#0c1109)}.tv-show-legacy-card h2{margin:0;font-size:clamp(1.5rem,4vw,2.5rem);text-transform:uppercase}.tv-show-legacy-card p{margin:0;line-height:1.6;white-space:pre-wrap}.tv-show-dialog.is-legacy{width:min(680px,calc(100vw - 24px))}.tv-show-dialog.is-legacy .tv-show-dialog-background{display:none}.tv-show-dialog.is-legacy .tv-show-dialog-content{max-height:calc(100dvh - 24px)}
.tv-show-media-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tv-show-media-field{display:grid;gap:6px}.tv-show-media-preview{display:grid;place-items:center;min-height:120px;overflow:hidden;border:1px dashed rgba(222,242,173,.24);border-radius:10px;background:#0a0e08}.tv-show-media-preview img{display:block;width:100%;height:140px;object-fit:contain}.tv-show-media-preview img[hidden],.tv-show-media-preview em[hidden]{display:none}.tv-show-media-preview em{color:#7f8f6d;font-size:.68rem;font-style:normal}.tv-show-media-field:nth-child(2) .tv-show-media-preview img{object-fit:cover}
/* BunkerVision v2.0.91 · Logo und Titel bilden eine klare Kopfzeile. */
.tv-show-rich-card{min-height:min(700px,calc(100dvh - 24px));grid-template-columns:1fr;grid-template-rows:auto 1fr}
.tv-show-rich-hero{display:grid;grid-template-columns:minmax(250px,38%) minmax(0,1fr);align-items:center;gap:clamp(24px,4vw,58px);padding:clamp(54px,6vw,78px) clamp(28px,6vw,72px) clamp(26px,3vw,40px);border-right:0;border-bottom:1px solid rgba(225,242,186,.15);background:linear-gradient(180deg,rgba(5,8,4,.62),rgba(5,8,4,.78))}
.tv-show-rich-logo{width:100%;max-width:420px;height:auto;max-height:236px;object-position:left center}
.tv-show-rich-heading{min-width:0}.tv-show-rich-heading h2{margin:9px 0 0;font-size:clamp(2.35rem,5.6vw,5.25rem);line-height:.91}
.tv-show-rich-body{align-self:stretch;gap:20px;padding:clamp(24px,3.5vw,42px) clamp(28px,6vw,72px) clamp(28px,4vw,48px);background:linear-gradient(180deg,rgba(7,10,5,.88),rgba(7,10,5,.72))}
.tv-show-rich-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,34%);align-items:center;gap:clamp(24px,4vw,52px);padding:clamp(18px,2.4vw,30px);border:1px solid rgba(225,241,191,.17);border-radius:16px;background:rgba(8,12,6,.82);box-shadow:0 14px 40px rgba(0,0,0,.22)}
.tv-show-rich-overview .tv-show-rich-description{max-width:none}.tv-show-rich-overview .tv-show-maker{grid-template-columns:76px minmax(0,1fr);gap:16px;width:100%;padding:14px 16px;border:1px solid rgba(225,241,191,.2);border-radius:13px;background:rgba(34,48,25,.78)}
.tv-show-rich-overview .tv-show-maker img,.tv-show-rich-overview .tv-show-maker-fallback{width:76px;height:76px}.tv-show-rich-overview .tv-show-maker small{font-size:.64rem}.tv-show-rich-overview .tv-show-maker strong{font-size:1.2rem}.tv-show-rich-overview .tv-show-maker[href]:hover{border-color:#d8f0aa;background:rgba(48,68,35,.9)}
.tv-page.is-cinema-mode .tv-current-show-title,.tv-page.is-player-fullscreen .tv-current-show-title{display:none}
@media(max-width:760px){.tv-show-dialog{width:calc(100vw - 12px);max-height:calc(100dvh - 12px);border-radius:15px}.tv-show-dialog-content{max-height:calc(100dvh - 12px)}.tv-show-rich-card{min-height:calc(100dvh - 12px);grid-template-columns:1fr;grid-template-rows:auto 1fr}.tv-show-rich-hero{min-height:36dvh;justify-content:flex-end;gap:14px;padding:54px 20px 22px;border-right:0;border-bottom:1px solid rgba(225,242,186,.15)}.tv-show-rich-logo{width:min(72vw,300px);max-height:170px}.tv-show-rich-hero h2{font-size:clamp(1.8rem,9vw,3.2rem)}.tv-show-rich-body{align-self:stretch;gap:17px;padding:22px 18px 26px;background:rgba(6,9,5,.76)}.tv-show-rich-actions{display:grid;grid-template-columns:1fr 1fr}.tv-show-rich-actions .metal-button{justify-content:center;min-width:0}.tv-show-thumbnail-strip{grid-auto-columns:130px}.tv-show-media-fields{grid-template-columns:1fr}.tv-current-show-title strong{font-size:1.15rem}}
@media(max-width:760px){.tv-show-rich-hero{min-height:0;grid-template-columns:1fr;align-items:start;justify-content:start;gap:22px;padding:68px 18px 25px}.tv-show-rich-logo{width:100%;max-width:none;height:auto;max-height:none;object-fit:contain;object-position:center}.tv-show-rich-heading h2{font-size:clamp(1.9rem,9vw,3.2rem)}.tv-show-rich-body{gap:17px;padding:20px 18px 26px}.tv-show-rich-overview{grid-template-columns:1fr;gap:18px;padding:18px}.tv-show-rich-overview .tv-show-maker{grid-template-columns:64px minmax(0,1fr);padding:12px}.tv-show-rich-overview .tv-show-maker img,.tv-show-rich-overview .tv-show-maker-fallback{width:64px;height:64px}.tv-show-rich-overview .tv-show-maker strong{font-size:1.05rem}}
.tv-page.is-player-fullscreen .tv-video-actions{grid-template-columns:repeat(5,minmax(46px,96px))}
@media(max-width:620px){.tv-page.is-player-fullscreen .tv-now-card{padding:8px 8px max(8px,env(safe-area-inset-bottom))}.tv-page.is-player-fullscreen .tv-video-actions{grid-template-columns:repeat(5,minmax(42px,72px));gap:5px}.tv-page.is-player-fullscreen .tv-action-button{min-height:34px;padding:3px 6px}}

/* BunkerVision v2.0.91 · einheitliches Show-Popup mit sichtbarerem Motiv */
.tv-show-dialog-background{filter:saturate(1) contrast(1.01);opacity:.96}.tv-show-dialog-background::after{background:linear-gradient(90deg,rgba(7,10,6,.52) 0%,rgba(7,10,6,.4) 48%,rgba(7,10,6,.22) 100%),linear-gradient(0deg,rgba(7,10,6,.48),transparent 52%)}.tv-show-rich-hero{background:linear-gradient(180deg,rgba(5,8,4,.18),rgba(5,8,4,.34))}.tv-show-rich-body{background:linear-gradient(180deg,rgba(7,10,5,.44),rgba(7,10,5,.28))}.tv-show-rich-overview{background:rgba(8,12,6,.54)}

/* BunkerVision v2.0.91 · Hauptsendezeit, Wiederholungsraster und eindeutiger Abostatus */
.tv-show-airtimes{gap:12px}.tv-show-airtimes h4{margin:2px 0 0;color:#bcd68b;font-size:.63rem;letter-spacing:.11em;text-transform:uppercase}.tv-show-primary-airtime{position:relative;min-height:104px;padding:48px 22px 20px 58px;overflow:hidden;border:2px solid rgba(126,255,78,.95);border-radius:15px;background:linear-gradient(135deg,rgba(28,105,20,.94),rgba(25,48,19,.9));box-shadow:0 0 26px rgba(112,255,66,.32),0 10px 28px rgba(0,0,0,.3)}.tv-show-primary-airtime-banner{position:absolute;top:17px;left:-54px;width:205px;padding:7px 12px;transform:rotate(-45deg);color:#fff;background:#bc2f25;box-shadow:0 4px 12px rgba(0,0,0,.4);font-size:.65rem;font-weight:950;letter-spacing:.045em;text-align:center}.tv-show-primary-airtime-when{display:block;color:#f1ffe9;font-size:clamp(1rem,2.1vw,1.42rem);font-weight:950;text-transform:capitalize;text-shadow:0 0 12px rgba(132,255,86,.4)}.tv-show-repeat-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:7px!important}.tv-show-repeat-grid li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 9px;border-radius:10px!important}.tv-show-repeat-grid li span{text-transform:capitalize}.tv-show-repeat-grid li strong{white-space:nowrap}.tv-show-repeat-grid li small{grid-column:1/-1;color:#93a87a;font-size:.58rem}.tv-subscribe-button,.tv-show-subscribe{position:relative}.tv-subscription-bell{line-height:1}.tv-subscription-check{display:grid;place-items:center;min-width:14px;height:14px;border:2px solid #dfffc0;border-radius:50%;color:#fff;background:#3d8f32;font-size:.68rem;font-weight:950;line-height:1;box-shadow:0 0 0 2px rgba(61,143,50,.23)}.tv-subscribe-button.is-active,.tv-show-subscribe.is-active{border-color:#77bd61;background:#29451f}
.tv-subscribe-button,.tv-show-subscribe{display:inline-flex;align-items:center;justify-content:center;flex-direction:row;gap:7px;white-space:nowrap}.tv-subscribe-button.is-active{width:auto;min-width:70px;padding:0 10px}.tv-subscription-bell,.tv-subscription-check{position:static;flex:0 0 auto}
.tv-show-airtimes h3{font-size:.82rem}

/* BunkerVision v2.0.91 · einzelner Originaltermin als große obere rechte Eckschleife */
.tv-show-rich-card{position:relative;overflow:hidden}.tv-show-corner-banner{position:absolute;z-index:4;top:62px;right:-94px;width:340px;padding:13px 24px;transform:rotate(45deg);color:#fff;background:#bc2f25;box-shadow:0 5px 16px rgba(0,0,0,.48);font-size:.84rem;font-weight:950;letter-spacing:.045em;text-align:center;pointer-events:none}.tv-show-primary-airtime{min-height:82px;padding:22px}.tv-show-primary-airtime-banner{display:none}
@media(max-width:760px){.tv-show-corner-banner{top:58px;right:-92px;width:310px;padding:11px 18px;font-size:.72rem}}

/* Archivstatus bleibt oben rechts, unabhängig von der Textlänge. */
.tv-parked-show{align-items:start}.tv-parked-show .metal-button{grid-row:1;align-self:start}

/* BunkerVision · 90-Tage-Sendungsstatistik im Kontrollraum */
.tv-statistics-panel{display:grid;gap:18px}.tv-statistics-controls{display:flex;align-items:end;gap:8px}.tv-statistics-controls label{display:grid;gap:5px;color:#aebd91;font-size:.72rem;font-weight:800;text-transform:uppercase}.tv-statistics-controls select{min-width:120px}.tv-statistics-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:9px}.tv-statistics-kpi{display:grid;gap:6px;padding:14px;border:1px solid rgba(216,239,170,.2);border-radius:10px;background:linear-gradient(145deg,rgba(74,96,51,.3),rgba(21,30,16,.8))}.tv-statistics-kpi span{color:#9caf80;font-size:.67rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.tv-statistics-kpi strong{color:#eff9d9;font-size:1.55rem}.tv-statistics-chart-card{display:grid;gap:12px;padding:14px;border:1px solid rgba(216,239,170,.16);border-radius:11px;background:rgba(13,19,10,.55)}.tv-statistics-chart-card h3{margin:0}.tv-statistics-chart{min-height:190px;display:flex;align-items:stretch;gap:5px;overflow-x:auto;padding:8px 3px 0}.tv-statistics-day{flex:1 0 34px;min-width:34px;display:grid;grid-template-rows:145px auto auto;gap:4px;text-align:center}.tv-statistics-bars{display:flex;align-items:end;justify-content:center;gap:2px;border-bottom:1px solid rgba(216,239,170,.2)}.tv-statistics-bars i{display:block;width:9px;min-height:2px;border-radius:3px 3px 0 0}.tv-statistics-viewer-bar{background:#9bc967;box-shadow:0 0 9px rgba(155,201,103,.25)}.tv-statistics-peak-bar{background:#df6550}.tv-statistics-day strong{font-size:.57rem}.tv-statistics-day small{color:#8fa17b;font-size:.5rem;white-space:nowrap}.tv-statistics-table th,.tv-statistics-table td{white-space:nowrap}.tv-statistics-show-name{min-width:180px;white-space:normal!important;font-weight:800}.tv-statistics-detail{padding:12px;border:1px solid rgba(216,239,170,.16);border-radius:10px}.tv-statistics-detail summary{cursor:pointer;font-weight:900;text-transform:uppercase}.tv-statistics-hour-show{display:grid;gap:7px;padding:12px 0;border-bottom:1px solid rgba(216,239,170,.12)}.tv-statistics-hour-show:last-child{border-bottom:0}.tv-statistics-hour-show h4{margin:0;color:#ddecbd}.tv-statistics-hour-list{display:flex;flex-wrap:wrap;gap:6px}.tv-statistics-hour-list span{padding:5px 7px;border-radius:6px;color:#bdcda3;background:#182116;font-size:.62rem}@media(max-width:900px){.tv-statistics-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.tv-statistics-controls{align-items:stretch;flex-direction:column}.tv-statistics-day{flex-basis:42px}}

/* Ruhige, gleichmäßig ausgerichtete Playlistübersicht. */
.tv-playlist-list{gap:8px}.tv-playlist-row{grid-template-columns:minmax(0,1fr) minmax(138px,auto);min-height:58px;padding:10px 12px;text-align:left;background:rgba(23,32,18,.72);border-color:rgba(222,242,173,.14);box-shadow:none}.tv-playlist-row:hover{background:rgba(42,56,32,.8);border-color:rgba(205,229,160,.28)}.tv-playlist-copy{display:grid;min-width:0;gap:3px}.tv-playlist-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;line-height:1.15}.tv-playlist-meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.2}.tv-playlist-badges{display:grid;grid-auto-flow:column;grid-auto-columns:max-content;align-items:center;justify-content:end;min-width:138px}.tv-playlist-badges .tv-badge{display:inline-flex;align-items:center;justify-content:center;min-height:24px;white-space:nowrap}

.tv-statistics-country-card{display:grid;gap:12px;padding:14px;border:1px solid rgba(216,239,170,.16);border-radius:11px;background:rgba(13,19,10,.55)}.tv-statistics-country-card h3{margin:0}.tv-country-block-form{display:flex;align-items:end;gap:7px}.tv-country-block-form label{display:grid;gap:4px;color:#aebd91;font-size:.65rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.tv-country-block-form input{width:92px;text-transform:uppercase}.tv-statistics-country-list{display:grid;gap:6px}.tv-statistics-country{display:grid;grid-template-columns:minmax(0,1fr) 70px minmax(125px,auto);align-items:center;gap:10px;padding:9px 10px;border:1px solid rgba(216,239,170,.12);border-radius:9px;background:#182116}.tv-statistics-country.is-blocked{border-color:rgba(223,101,80,.48);background:rgba(76,29,24,.35)}.tv-statistics-country-name{display:grid;gap:2px}.tv-statistics-country-name small{color:#91a27c}.tv-statistics-country-count{text-align:right;font-size:1.1rem}.tv-statistics-country .metal-button{min-width:125px}@media(max-width:650px){.tv-playlist-row{grid-template-columns:1fr}.tv-playlist-badges{justify-content:start;min-width:0}.tv-statistics-country{grid-template-columns:minmax(0,1fr) auto}.tv-statistics-country .metal-button{grid-column:1/-1;width:100%}.tv-country-block-form{width:100%}.tv-country-block-form label{flex:1}.tv-country-block-form input{width:100%}}

/* TV 2.0.91 · kompaktes Sendungsarchiv mit festen Faktenpositionen */
.tv-parking-lot{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));align-items:start}.tv-parked-show{display:block;padding:10px}.tv-parked-show-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;min-height:48px}.tv-parked-show-title{min-width:0;line-height:1.3}.tv-parked-show .tv-plan-state{grid-column:auto;grid-row:auto;align-self:start;min-width:86px;padding:8px 10px}.tv-show-facts{display:grid;gap:0;margin:7px 0 0;border-top:1px solid rgba(222,242,173,.14)}.tv-show-fact{display:grid;grid-template-columns:88px minmax(0,1fr);gap:8px;padding:5px 0;border-bottom:1px solid rgba(222,242,173,.09)}.tv-show-fact dt{color:#778665;font-size:.56rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.tv-show-fact dd{min-width:0;margin:0;color:#b8c99a;font-size:.66rem;font-weight:750;line-height:1.25;overflow-wrap:anywhere}@media(max-width:720px){.tv-parking-lot{grid-template-columns:1fr}.tv-parked-show-head{min-height:0}.tv-show-fact{grid-template-columns:82px minmax(0,1fr)}}
/* TV 2.0.91 · eindeutiges Verschieben-Symbol für Sendungen */
.tv-parked-show[draggable="true"],.tv-show-block[draggable="true"]{cursor:grab}.tv-parked-show.is-dragging,.tv-show-block.is-dragging{cursor:grabbing}.tv-schedule-drag-image{position:fixed;z-index:99999;top:-1000px;left:-1000px;display:flex;align-items:center;gap:10px;max-width:300px;padding:8px 13px 8px 8px;border:2px solid #dcf6aa;border-radius:12px;background:linear-gradient(135deg,#526f36,#182511);color:#f2ffda;box-shadow:0 8px 24px rgba(0,0,0,.48);pointer-events:none}.tv-schedule-drag-image>strong{overflow:hidden;font-size:.72rem;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.tv-schedule-drag-arrows{position:relative;display:block;flex:0 0 62px;width:62px;height:62px;border:1px solid rgba(228,251,185,.28);border-radius:50%;background:rgba(7,13,5,.42);color:#e9ffc4}.tv-schedule-drag-arrows i{position:absolute;inset:0;display:grid;place-items:center;font-size:45px;font-style:normal;font-weight:900;line-height:1;text-shadow:0 0 12px rgba(196,240,126,.55)}.tv-schedule-drag-arrows .is-vertical{font-size:43px}.is-schedule-dragging .tv-timeline-day{cursor:copy}.is-schedule-dragging .tv-timeline-day.is-drop-target{cursor:copy}
/* Sendungsoptionen wie die bestehende Outro-Checkbox ausrichten. */
.tv-admin-form .tv-show-option-toggle{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;min-height:58px;padding:11px 13px!important;border:1px solid rgba(205,230,159,.2);border-radius:10px;background:rgba(255,255,255,.025);cursor:pointer}.tv-admin-form .tv-show-option-toggle:hover{border-color:rgba(205,230,159,.38);background:rgba(169,210,99,.06)}.tv-admin-form .tv-show-option-toggle:focus-within{border-color:#b9d77e;box-shadow:0 0 0 2px rgba(185,215,126,.12)}.tv-admin-form .tv-show-option-toggle input{flex:0 0 18px;width:18px!important;min-width:18px!important;max-width:18px!important;height:18px;margin:0!important;padding:0!important;accent-color:#b9d77e;cursor:pointer}.tv-admin-form .tv-show-option-toggle>span{flex:0 1 auto;margin:0!important;color:#dbe9bf;font-size:.68rem;font-weight:900;line-height:1.35;letter-spacing:.075em;text-transform:uppercase}
:is(.tv-video-title-input,.tv-video-duration-input).is-saving{border-color:#d8c56e;box-shadow:0 0 0 2px rgba(216,197,110,.14)}:is(.tv-video-title-input,.tv-video-duration-input).is-saved{border-color:#9fca72}:is(.tv-video-title-input,.tv-video-duration-input).is-error{border-color:#d87366;box-shadow:0 0 0 2px rgba(216,115,102,.16)}
.tv-trim-trigger{display:block;width:100%;margin-top:7px;padding:6px 8px;border:1px solid #8eaf64;border-radius:7px;background:#263a1c;color:#e3f6c7;font:inherit;font-size:.68rem;font-weight:800;cursor:pointer}.tv-trim-trigger:hover,.tv-trim-trigger:focus-visible{background:#415b2c;border-color:#d4f399}.tv-trim-trigger:disabled{opacity:.5;cursor:not-allowed}.tv-trim-hint{display:block;margin-top:5px;color:#bad68d;font-size:.62rem;line-height:1.35}
.tv-trim-dialog{width:min(760px,calc(100vw - 24px));max-height:min(94vh,900px);overflow-y:auto;padding:20px;border:1px solid #9bbd6a;border-radius:16px;background:linear-gradient(145deg,#222d1c,#111a11);color:#e5f3d0;box-shadow:0 25px 80px #000b}.tv-trim-dialog::backdrop{background:#030803d9}.tv-trim-dialog .tv-dialog-head{margin-bottom:14px}.tv-trim-dialog h2{overflow-wrap:anywhere}.tv-trim-stage{aspect-ratio:16/9;background:#000;border-radius:10px;overflow:hidden}.tv-trim-stage>div,.tv-trim-stage>video{width:100%;height:100%;object-fit:contain}.tv-trim-stage [hidden]{display:none}.tv-trim-intro{margin:13px 0;color:#bed1a5;font-size:.78rem;line-height:1.45}.tv-trim-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tv-trim-row{min-width:0;padding:13px;border:1px solid #516c3e;border-radius:11px;background:#182318}.tv-trim-row-head{display:flex;justify-content:space-between;gap:10px;align-items:center;font-weight:800}.tv-trim-row-head strong{color:#d4f4a3}.tv-trim-row input[type=range]{width:100%;margin:17px 0 12px;accent-color:#bcdf82;cursor:pointer}.tv-trim-fine{display:grid;grid-template-columns:auto minmax(55px,1fr) auto;gap:6px}.tv-trim-fine input{min-width:0;width:100%;box-sizing:border-box;text-align:center}.tv-trim-fine button{padding:7px 9px;border:1px solid #739753;border-radius:7px;background:#2b4023;color:#e8f6d4;cursor:pointer}.tv-trim-fine button:hover,.tv-trim-fine button:focus-visible{background:#496333}.tv-trim-fine button:last-child{grid-column:1/-1}.tv-trim-summary{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:14px;padding:12px 14px;border:1px solid #6e8d4d;border-radius:9px;background:#27391f}.tv-trim-summary strong{color:#def6b4}.tv-trim-status{min-height:1.3em;margin:10px 0;color:#ffd59a;font-size:.74rem}.tv-trim-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.tv-trim-actions #tvTrimSave{border-color:#b1d77a;background:#48672f;color:#fff}.tv-trim-actions #tvTrimSave:disabled{opacity:.5;cursor:wait}@media(max-width:650px){.tv-trim-dialog{padding:13px}.tv-trim-controls{grid-template-columns:1fr}.tv-trim-row{padding:10px}.tv-trim-intro{font-size:.72rem}}
.tv-trim-live{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px;padding:10px 12px;border:1px solid #809f5d;border-radius:10px;background:#27391f}.tv-trim-live>span{color:#bdd3a3;font-size:.72rem}.tv-trim-live strong{display:block;color:#efffd6;font-size:1.15rem;font-variant-numeric:tabular-nums}.tv-trim-live>div{display:flex;gap:7px;flex-wrap:wrap}.tv-trim-live button{padding:8px 11px;border:1px solid #add078;border-radius:7px;background:#405a2e;color:#f3ffe3;font:inherit;font-size:.72rem;font-weight:850;cursor:pointer}.tv-trim-live button:hover,.tv-trim-live button:focus-visible{background:#608345}.tv-trim-live button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:650px){.tv-trim-live>div,.tv-trim-live button{width:100%}}
.tv-video-save-status:not(:empty){display:block;margin-top:4px;color:#b7d38b;font-size:.64rem}.tv-video-title-input.is-error~.tv-video-save-status{color:#ffae9e;cursor:pointer}

/* v2.0.91 · lange Titel der Endlosschleifen-Programmtafel dürfen zweizeilig werden */
.tv-standby-program-title{display:-webkit-box;max-height:2.2em;overflow:hidden;line-height:1.1;overflow-wrap:anywhere;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}

/* Interactive schedule board on the main player only. */
.tv-standby-program-board.is-visible{pointer-events:auto}
.tv-standby-program-profile{display:contents;color:inherit;text-decoration:none}
.tv-standby-program-title{text-decoration:none}
.tv-standby-program-profile:hover .tv-standby-program-author,.tv-standby-program-title:hover{text-decoration:underline}

/* BunkerVision viewer guide */
.tv-help-dialog{width:min(1050px,calc(100vw - 24px));max-height:min(92dvh,960px);border-color:rgba(204,235,151,.35);background:#10170e}
.tv-help-dialog .bv-help-head{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px clamp(20px,3vw,34px);background:#172213}
.tv-help-head h2{margin:4px 0 0;color:#f1f8df;font-size:clamp(1.15rem,2.5vw,1.65rem);line-height:1.15}
.tv-help-dialog .bv-help-content{max-height:calc(92dvh - 80px);padding:0;overflow-y:auto;overscroll-behavior:contain;color:#d5e2c5;line-height:1.55;scroll-behavior:smooth}
.bv-help-content a{color:#ddf8a7;text-underline-offset:3px}
.bv-help-content a:focus-visible,.bv-help-faq summary:focus-visible{outline:2px solid #e8ffb4;outline-offset:3px;border-radius:4px}
.bv-help-hero{position:relative;display:grid;gap:15px;padding:clamp(26px,4vw,46px) clamp(22px,4vw,45px);overflow:hidden;background:radial-gradient(circle at 95% 5%,rgba(190,227,120,.21),transparent 45%),linear-gradient(135deg,#35492a,#172313 70%);border-bottom:1px solid rgba(223,242,175,.18)}
.bv-help-hero:before{content:'BV';position:absolute;right:3%;bottom:-.35em;color:rgba(218,249,157,.055);font-size:clamp(7rem,20vw,15rem);font-weight:1000;line-height:1;pointer-events:none}
.bv-help-hero>*{position:relative;z-index:1}.bv-help-eyebrow{color:#d5eea8;font-size:.68rem;font-weight:950;letter-spacing:.16em}
.bv-help-hero p{max-width:680px;margin:0;color:#f4f8ea;font-size:clamp(1.05rem,2vw,1.35rem);font-weight:650;line-height:1.47}
.bv-help-hero-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.bv-help-link{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:42px;padding:10px 15px;border:1px solid #cceaa0;border-radius:9px;background:#cceaa0;color:#1a2715!important;font-size:.78rem;font-weight:900;text-decoration:none}.bv-help-link:hover{background:#e6ffbb}.bv-help-link-outline{background:rgba(9,17,7,.4);color:#e9f8ce!important}.bv-help-link-outline:hover{background:rgba(210,241,158,.17)}
.bv-help-nav{display:flex;gap:8px;padding:15px clamp(18px,3vw,34px);overflow-x:auto;scrollbar-width:thin;border-bottom:1px solid rgba(220,240,177,.14);background:#131d10}.bv-help-nav a{flex:0 0 auto;padding:8px 12px;border:1px solid rgba(207,235,165,.19);border-radius:999px;color:#d9e8bd;font-size:.72rem;font-weight:800;text-decoration:none;white-space:nowrap}.bv-help-nav a:hover{border-color:#d8f4ab;background:#293b20}
.bv-help-section{display:grid;gap:17px;padding:clamp(24px,3.8vw,42px) clamp(20px,4vw,45px);border-bottom:1px solid rgba(212,235,166,.14);scroll-margin-top:12px}.bv-help-section:nth-of-type(even){background:#141e11}.bv-help-section-head{display:flex;align-items:center;gap:15px}.bv-help-section-head>span{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border:1px solid rgba(207,240,159,.45);border-radius:12px;color:#daefb6;background:#304428;font-size:.75rem;font-weight:950}.bv-help-section-head small{color:#aabe91;font-size:.63rem;font-weight:950;letter-spacing:.13em}.bv-help-section-head h3{margin:1px 0 0;color:#f2f8e7;font-size:clamp(1.18rem,2.5vw,1.65rem);line-height:1.18}.bv-help-section p{margin:0}.bv-help-section h4{margin:0 0 5px;color:#f1f8e1;font-size:.91rem}
.bv-help-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.bv-help-steps>div{display:flex;gap:11px;padding:17px;border:1px solid rgba(211,235,174,.2);border-radius:12px;background:#202c1b}.bv-help-steps b{display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;border-radius:50%;background:#b7d989;color:#162215;font-size:.73rem}.bv-help-steps p,.bv-help-card p{color:#c1d0b4;font-size:.83rem;line-height:1.55}
.bv-help-note{padding:13px 16px;border-left:3px solid #cceca2;border-radius:0 9px 9px 0;background:#22331d}.bv-help-note strong{display:block;margin-bottom:3px;color:#e2f5c5;font-size:.8rem}.bv-help-note p{font-size:.82rem}
.bv-help-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.bv-help-card{padding:17px;border:1px solid rgba(209,237,163,.17);border-radius:12px;background:rgba(41,57,33,.53)}.bv-help-card-icon{display:grid;place-items:center;width:32px;height:32px;margin-bottom:11px;border:1px solid rgba(204,237,160,.28);border-radius:9px;color:#ddf3ad;background:#354b28;font-size:1rem;font-weight:950}.bv-help-footnote{color:#afc198;font-size:.78rem}
.bv-help-tv{background:linear-gradient(145deg,#293e22,#111a0f)!important}.bv-help-url{margin:2px 0!important}.bv-help-url a{display:inline-block;max-width:100%;padding:13px 18px;border:1px solid #bde48a;border-radius:10px;background:#d1edac;color:#1b2a14;font-size:clamp(1.04rem,2.7vw,1.55rem);font-weight:950;letter-spacing:.005em;text-decoration:none;overflow-wrap:anywhere}.bv-help-url a:hover{background:#ecffca}.bv-help-tv>p:not(.bv-help-url){max-width:780px}
.bv-help-faq{display:grid;gap:8px}.bv-help-faq details{border:1px solid rgba(211,235,174,.2);border-radius:10px;background:#202b1b}.bv-help-faq summary{padding:13px 17px;color:#ecf5de;font-size:.85rem;font-weight:850;cursor:pointer}.bv-help-faq details[open] summary{color:#e1f4bb}.bv-help-faq details p{padding:0 17px 16px;color:#c1d0b4;font-size:.82rem}.bv-help-contact{padding:17px;border-radius:11px;background:#2b3b23}.bv-help-contact strong{display:block;margin-bottom:4px;color:#f4fce6}.bv-help-contact p{font-size:.84rem}
@media(max-width:760px){.bv-help-steps{grid-template-columns:1fr}.bv-help-steps>div{padding:14px}.bv-help-hero-links{display:grid;grid-template-columns:1fr}.bv-help-link{width:100%}}
@media(max-width:600px){.tv-help-dialog{width:calc(100vw - 12px);max-height:calc(100dvh - 12px);border-radius:13px}.tv-help-dialog .bv-help-head{padding:14px 17px}.tv-help-dialog .bv-help-content{max-height:calc(100dvh - 88px)}.bv-help-grid{grid-template-columns:1fr}.bv-help-nav{padding:12px 16px}.bv-help-section-head{gap:10px}.bv-help-section-head>span{flex-basis:37px;width:37px;height:37px}.bv-help-url a{display:block;text-align:center}}
@media(prefers-reduced-motion:reduce){.tv-help-dialog .bv-help-content{scroll-behavior:auto}}

/* Desktop volume: smartphone and TV-mode players keep their device volume. */
.tv-volume-control{display:flex;align-items:center;gap:11px;width:min(320px,100%);min-height:40px;padding:7px 12px;border:1px solid rgba(222,242,173,.23);border-radius:10px;background:#1f2b19;color:#e8f3d3;font-size:.72rem;font-weight:850}
.tv-volume-control[hidden]{display:none!important}.tv-volume-control input{flex:1;min-width:70px;accent-color:#b7db83;cursor:pointer}.tv-volume-control output{min-width:38px;text-align:right;font-variant-numeric:tabular-nums}
@media(pointer:coarse){.tv-volume-control{display:none!important}}

.tv-attribution-fallback{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#35462a;color:#edf7dc;font-size:.73rem;font-weight:900}

/* v2.0.91 · Lautstärke im Standardplayer breit, im Chatmode rechts neben den Aktionen. */
.tv-now-card>.tv-volume-control{width:100%;box-sizing:border-box}
.tv-page.is-cinema-mode .tv-now-card{grid-template-columns:minmax(0,1fr) minmax(175px,25%)}
.tv-page.is-cinema-mode .tv-now-card h2{grid-column:1/-1;grid-row:1}
.tv-page.is-cinema-mode .tv-video-actions{grid-column:1;grid-row:2;grid-template-columns:repeat(6,minmax(0,1fr))}
.tv-page.is-cinema-mode .tv-video-actions .tv-mini-button,.tv-page.is-cinema-mode .tv-video-actions .tv-fullscreen-button{display:none!important}
.tv-page.is-cinema-mode .tv-now-card>.tv-volume-control{grid-column:2;grid-row:2;min-width:0}
.tv-page.is-cinema-mode .tv-volume-control>span{display:none}
@media(max-width:820px),(max-height:560px) and (pointer:coarse){.tv-page.is-cinema-mode .tv-video-actions{grid-template-columns:repeat(6,32px)!important}}
@media(pointer:coarse){.tv-page.is-cinema-mode .tv-now-card{grid-template-columns:minmax(0,1fr)}}

/* Die Zuschauerzahl bleibt im Chatmode oben rechts am Livechat sichtbar. */
.tv-chat-head-status{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}
.tv-chat-viewer-counter{display:none}
[data-tv-audience]{font-family:inherit;color:inherit;cursor:pointer}
[data-tv-audience]:hover{border-color:#a3c676}
[data-tv-audience]:focus-visible{outline:2px solid #c8e79d;outline-offset:3px}
.tv-audience-dialog{box-sizing:border-box;width:min(380px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:16px;border:1px solid #7d9f57;border-radius:14px;background:linear-gradient(145deg,#222d1c,#111a11);color:#e5f3d0;box-shadow:0 20px 70px #000b;overflow:hidden}
.tv-audience-dialog::backdrop{background:#030803b8}
.tv-audience-dialog .tv-dialog-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.tv-audience-dialog h2{margin:0;font-size:1.05rem}
.tv-audience-dialog .tv-dialog-head button{min-width:36px;padding:5px 10px;font-size:1.2rem}
.tv-audience-content{max-height:min(360px,60vh);max-height:min(360px,60dvh);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#86a95f #152011}
.tv-audience-section+section{margin-top:16px}
.tv-audience-section h3{margin:0 0 8px;color:#a9bf8b;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em}
.tv-audience-person{display:flex;align-items:center;gap:10px;padding:7px 4px;border-radius:7px;color:#e5f3d0;text-decoration:none}
a.tv-audience-person:hover,a.tv-audience-person:focus-visible{background:#2d4022}
.tv-audience-avatar{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;overflow:hidden;border-radius:50%;background:#354b29;border:1px solid #6b8750;font-size:.9rem;font-weight:800}
.tv-audience-avatar img{width:100%;height:100%;object-fit:cover}
.tv-audience-name{display:grid;gap:2px;min-width:0;overflow-wrap:anywhere;font-size:.8rem}
.tv-audience-name small{color:#a9bf8b;font-size:.65rem}
.tv-audience-note,.tv-audience-empty{color:#a9bf8b;font-size:.7rem;line-height:1.5}
.tv-audience-note{margin-bottom:0}
.tv-audience-stream{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px;padding:10px;border:1px solid #516b3d;border-radius:8px;font-size:.73rem;background:#1b2917}
.tv-audience-stream strong{color:#def0bd;font-size:1rem}
.tv-statistics-bv-bar{background:#e3be62}
.tv-statistics-country-tools{display:grid;grid-template-columns:minmax(150px,1fr) minmax(150px,1fr);gap:12px}
.tv-statistics-country-tools label{display:grid;gap:6px;font-size:.72rem;font-weight:800;color:#bacb9f}
.tv-statistics-country-tools select,.tv-statistics-country-tools input{box-sizing:border-box;min-width:0;width:100%}
.tv-statistics-country-ranking{max-height:360px;overflow:auto;scrollbar-width:thin;scrollbar-color:#86a95f #152011}
.tv-statistics-country-show-table thead{position:sticky;top:0;background:#192515}
.tv-statistics-country-show-table th,.tv-statistics-country-show-table td{white-space:nowrap}
@media(max-width:650px){.tv-statistics-country-tools{grid-template-columns:1fr}}
.tv-page.is-cinema-mode .tv-chat-viewer-counter{display:grid;width:auto;min-width:110px;padding:6px 9px}
@media(max-width:650px){.tv-page.is-cinema-mode .tv-chat-card .tv-card-head{align-items:flex-start}.tv-page.is-cinema-mode .tv-chat-head-status{flex-direction:column-reverse;align-items:flex-end;gap:4px}.tv-page.is-cinema-mode .tv-chat-viewer-counter{width:auto;min-width:110px}}

/* Playlist-Übersicht füllt die Höhe der benachbarten Playlist-Daten aus. */
.tv-playlist-admin-grid>.tv-admin-pane-stack>.tv-collapsible-card:first-child:not(.is-collapsed){display:flex;flex-direction:column;min-height:0}
.tv-playlist-admin-grid>.tv-admin-pane-stack>.tv-collapsible-card:first-child:not(.is-collapsed)>.tv-playlist-list{flex:1 1 0;height:0;min-height:0;max-height:none;align-content:start;grid-auto-rows:max-content}
@media(max-width:720px){.tv-playlist-admin-grid>.tv-admin-pane-stack>.tv-collapsible-card:first-child:not(.is-collapsed)>.tv-playlist-list{flex:none;height:auto;max-height:600px}}

/* Ausgelesene Sendungsmoderation direkt neben ihrem Testbutton. */
.tv-playlist-cue-actions{display:flex;align-items:center;gap:10px;min-width:0}.tv-playlist-cue-duration{display:grid;place-items:center;flex:0 0 70px;min-height:38px;padding:4px 8px;border:1px solid rgba(205,230,159,.26);border-radius:8px;background:rgba(0,0,0,.22);color:#dcecc4;font-weight:900;font-size:.8rem;font-variant-numeric:tabular-nums}.tv-playlist-cue-actions>.metal-button{flex:1;min-width:0}@media(max-width:480px){.tv-playlist-cue-actions{gap:6px}.tv-playlist-cue-duration{flex-basis:58px;padding-inline:4px}.tv-playlist-cue-actions>.metal-button{font-size:.58rem}}

.tv-show-rich-heading h2{overflow-wrap:normal;word-break:normal;hyphens:none}

/* Sortierbare Sendungsstatistik und lesbarer 15-Minuten-Verlauf. */
.tv-statistics-table th[data-stat-sort] button{display:inline-flex;align-items:center;gap:5px;border:0;padding:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-align:left;text-transform:inherit;cursor:pointer;white-space:nowrap}
.tv-statistics-table th[data-stat-sort] button:hover,.tv-statistics-table th[data-stat-sort] button:focus-visible{color:#eff9d9;text-decoration:underline;text-underline-offset:3px}
.tv-statistics-table th[data-stat-sort] button:focus-visible{outline:2px solid #cdeca0;outline-offset:3px}
.tv-statistics-table th[aria-sort="descending"] button::after{content:'↓';color:#d3ed9d;font-size:.9rem}
.tv-statistics-table th[aria-sort="ascending"] button::after{content:'↑';color:#d3ed9d;font-size:.9rem}
.tv-statistics-hour-tools{display:grid;gap:5px;max-width:420px;margin:14px 0;color:#afc28d;font-size:.72rem;font-weight:800;text-transform:uppercase}
.tv-statistics-hour-tools input{width:100%;min-height:40px}
.tv-statistics-hour-show{padding:0;border:1px solid rgba(216,239,170,.15);border-radius:9px;margin-top:7px;background:rgba(13,19,10,.35)}
.tv-statistics-hour-show[hidden],#tvStatisticsShowSearchEmpty[hidden]{display:none!important}
.tv-statistics-hour-show summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;cursor:pointer;list-style-position:inside}
.tv-statistics-hour-show summary:hover{background:rgba(155,201,103,.1)}
.tv-statistics-hour-show summary strong{flex:1;font-size:.85rem;color:#e4f1cc}
.tv-statistics-hour-total{font-size:.7rem;color:#a5b98c;white-space:nowrap}
.tv-statistics-hour-day{padding:5px 12px 14px;overflow-x:auto}
.tv-statistics-hour-day h4{margin:8px 0 7px;font-size:.72rem;text-transform:capitalize;color:#ddecbd}
.tv-statistics-hour-table{width:100%;border-collapse:collapse;min-width:310px;text-align:left;font-size:.72rem}
.tv-statistics-hour-table th,.tv-statistics-hour-table td{padding:7px 9px;border-bottom:1px solid rgba(216,239,170,.1)}
.tv-statistics-hour-table th{color:#a9bf8e;background:rgba(41,55,28,.7);font-size:.65rem;text-transform:uppercase}
.tv-statistics-hour-table tbody tr:nth-child(even){background:rgba(216,239,170,.035)}

/* v2.0.91 · Durchgeplante Sendung im Playlist-Detail */
.tv-playlist-tabs{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0}.tv-playlist-tabs .is-active{border-color:#a0ce55;color:#d9ff9d;background:#283825}.tv-planned-controls{display:grid;gap:.8rem;padding:1rem;margin:0 0 1rem;background:#141e16;border:1px solid #47663c;border-radius:8px}.tv-planned-controls label{display:grid;gap:.35rem}.tv-planned-controls .checkbox-line{display:flex;align-items:center}.tv-planned-summary{display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;align-items:center}.tv-planned-summary strong{font-size:1.3rem;color:#dbffa2}.tv-planned-summary span{color:#b9c9b0}.tv-planned-controls[hidden],.tv-playlist-tabs[hidden]{display:none}

/* Der geplante Reiter bleibt auch weiter unten in der Videoliste erkennbar. */
#tvPlaylistDetailCard.is-planned{border-color:#a9814e;background:linear-gradient(135deg,#28261c,#1d231a)}
#tvPlaylistDetailCard.is-planned>.tv-card-head{border-bottom:1px solid rgba(218,171,105,.35)}
#tvPlaylistDetailCard.is-planned>.tv-card-head h2,#tvPlaylistDetailCard.is-planned>.tv-card-head .tv-kicker{color:#f1cd94}
#tvPlaylistDetailCard.is-planned .tv-playlist-total-duration{background:#4a3926;color:#f9d9a4}
#tvPlaylistDetailCard.is-planned #tvPlannedTab.is-active{border-color:#d6a568;background:#493622;color:#ffe0ae}
#tvPlaylistDetailCard.is-planned .tv-planned-controls{border-color:#a9814e;background:#29251c}
#tvPlaylistDetailCard.is-planned .tv-planned-summary strong{color:#ffe0ae}
#tvPlaylistDetailCard.is-planned .tv-quick-add-form{border-color:rgba(218,171,105,.5);background:rgba(149,105,49,.13)}
#tvPlaylistDetailCard.is-planned .tv-quick-add-form label>span{color:#f3d2a1}
#tvPlaylistDetailCard.is-planned .tv-playlist-video-table th{background:#30291d;color:#f0cca0}
#tvPlaylistDetailCard.is-planned .tv-playlist-video-table tbody tr:not(.tv-row-hidden):not(.tv-row-error){background:linear-gradient(110deg,#393223,#28271c)}
#tvPlaylistDetailCard.is-planned .tv-playlist-video-table tbody tr:not(.tv-row-hidden):not(.tv-row-error) td{border-color:rgba(218,171,105,.32)}

.tv-planned-timing{margin:0;padding:12px 14px;border:1px solid #769857;border-radius:8px;background:#1e2c1d;color:#e6f4d8;font-weight:800;line-height:1.5}
.tv-planned-timing.is-tight{border-color:#d8a64e;background:#3a2b17;color:#ffe1a3}
.tv-planned-timing.is-over{border-color:#d76c56;background:#3b201c;color:#ffd0c5}

.tv-playlist-video-table .tv-row-actions button.tv-planned-copy.is-copied,.tv-playlist-video-table .tv-row-actions button.tv-planned-copy.is-copied:hover{border-color:#d1a362;background:linear-gradient(#5a4329,#3b2e20);color:#ffe2ad;cursor:default}
.tv-planned-clear{justify-self:start}
.tv-planned-special-fields{display:grid;gap:.65rem;padding:.85rem;border:1px solid rgba(233,190,118,.42);border-radius:9px;background:rgba(55,43,29,.55)}
.tv-planned-special-fields textarea{width:100%;min-height:3.5rem;resize:vertical;line-height:1.5}
.tv-planned-special-save,.tv-planned-footer-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem}
.tv-planned-special-save small{color:#cbd8b6}
.tv-show-special-notice{display:grid;gap:9px;padding:clamp(18px,2.5vw,27px);border:1px solid #e6b56f;border-left:5px solid #f6c482;border-radius:13px;background:linear-gradient(125deg,rgba(96,63,26,.91),rgba(38,30,19,.95));box-shadow:0 10px 28px rgba(0,0,0,.22)}
.tv-show-special-notice strong{color:#ffe2a7;font-size:.75rem;letter-spacing:.13em}
.tv-show-special-notice p{margin:0;color:#fff3d8;font-size:clamp(1rem,1.5vw,1.25rem);font-weight:750;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
.tv-planned-help-button{justify-self:end}
.tv-planned-controls .tv-planned-random-toggle{justify-self:start;gap:9px;padding:10px 14px;border:1px solid #a9814e;border-radius:8px;background:#372b1d;color:#ffe0ae;cursor:pointer;font-weight:850}
.tv-planned-controls .tv-planned-random-toggle:has(input:checked){border-color:#e9be76;background:#614322;box-shadow:0 0 0 2px rgba(233,190,118,.18)}
.tv-planned-fill{margin:0;padding:9px 12px;border:1px solid rgba(218,171,105,.32);border-radius:8px;background:rgba(149,105,49,.1);color:#f0d1a5;line-height:1.5}
.tv-planned-help-dialog{width:min(850px,calc(100vw - 24px));max-height:90dvh;border-color:#a9814e;background:#211e17}
.tv-planned-help-dialog .tv-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:14px}
.tv-planned-help-dialog .tv-dialog-head h2{margin:4px 0 0;color:#ffe0ae}
.tv-planned-help-dialog .tv-planned-help-content{max-height:calc(90dvh - 88px);padding:10px 20px 22px;overflow-y:auto;color:#e5dfce}
.tv-planned-help-copy[hidden]{display:none}
.tv-planned-help-copy h3{margin:20px 0 6px;color:#f1c98b;font-size:.92rem}
.tv-planned-help-copy p{margin:0 0 10px;line-height:1.6}

/* v2.0.185 · Aktivierung zuerst, Zeitplanung und Sondernachrichten nebeneinander. */
.tv-planned-controls{gap:16px;padding:clamp(14px,1.5vw,22px)}
.tv-planned-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px}
.tv-planned-head>label{min-width:0}
.tv-planned-head select{width:100%;min-height:44px;font-size:.92rem}
.tv-planned-head .tv-planned-help-button{min-height:44px}
.tv-planned-activation{min-width:0;padding:18px 20px;border:1px solid #b39a66;border-left:5px solid #e4c68c;border-radius:11px;background:linear-gradient(115deg,#3c3425,#292b20);box-shadow:0 5px 16px rgba(0,0,0,.18)}
.tv-planned-controls .tv-planned-active-toggle{display:flex;align-items:center;justify-content:flex-start;gap:14px;min-height:34px;margin:0;cursor:pointer}
.tv-planned-controls .tv-planned-active-toggle input{flex:0 0 26px;width:26px!important;min-width:26px!important;max-width:26px!important;height:26px;min-height:26px;margin:0!important;padding:0!important;accent-color:#c6e597;cursor:pointer}
.tv-planned-controls .tv-planned-active-toggle>span{min-width:0;color:#fff1d3;font-size:clamp(1rem,1.4vw,1.18rem);font-weight:900;line-height:1.4;letter-spacing:.035em;text-transform:uppercase;overflow-wrap:anywhere}
.tv-planned-activation #tvPlannedStatus{margin:12px 0 0 40px;color:#dce6c8;font-size:.92rem;font-weight:700;line-height:1.5;overflow-wrap:anywhere}
.tv-planned-activation:hover{border-color:#ebc989}
.tv-planned-activation:focus-within{outline:2px solid #e5cc93;outline-offset:3px}
.tv-planned-activation:has(#tvPlannedActive:checked){border-color:#a9cb78;border-left-color:#c7ed98;background:linear-gradient(115deg,#36482b,#263320);box-shadow:0 0 0 1px rgba(183,221,139,.12),0 5px 16px rgba(0,0,0,.18)}
.tv-planned-activation:has(#tvPlannedActive:checked) .tv-planned-active-toggle>span{color:#edffdb}
.tv-planned-active-toggle input:disabled{cursor:wait;opacity:.65}
.tv-planned-workspace{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;min-width:0}
.tv-planned-runtime{display:grid;gap:12px;min-width:0;padding:16px;border:1px solid rgba(218,171,105,.3);border-radius:10px;background:rgba(8,12,7,.18)}
.tv-planned-runtime .tv-planned-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 12px;min-width:0;padding-bottom:12px;border-bottom:1px solid rgba(218,171,105,.25)}
.tv-planned-runtime #tvPlannedTotal{grid-column:1;grid-row:1;font-size:1.15rem;line-height:1.4}
.tv-planned-runtime #tvPlannedCount{grid-column:2;grid-row:1;align-self:center;padding:5px 9px;border:1px solid rgba(218,171,105,.35);border-radius:7px;color:#f2d8b2;white-space:nowrap;font-size:.76rem;font-weight:850}
.tv-planned-runtime #tvPlannedBreakdown{grid-column:1/-1;font-size:.83rem;line-height:1.55;overflow-wrap:anywhere}
.tv-planned-runtime .tv-planned-timing,.tv-planned-runtime .tv-planned-fill{font-size:.84rem;overflow-wrap:anywhere}
.tv-planned-runtime .tv-planned-random-toggle{justify-self:stretch;gap:12px;margin:0;line-height:1.5}
.tv-planned-runtime .tv-planned-random-toggle input{flex:0 0 20px;width:20px!important;min-width:20px!important;max-width:20px!important;height:20px;margin:0!important;padding:0!important;accent-color:#e9be76}
.tv-planned-runtime .tv-planned-random-toggle>span{min-width:0;font-size:.82rem;line-height:1.5;overflow-wrap:anywhere}
.tv-planned-workspace .tv-planned-special-fields{min-width:0;margin:0;padding:16px;gap:12px;border-radius:10px}
.tv-planned-workspace .tv-planned-special-fields label{min-width:0}
.tv-planned-workspace .tv-planned-special-fields textarea{min-height:86px;font-size:.88rem}
.tv-planned-controls>.tv-planned-footer-actions{padding-top:14px;border-top:1px solid rgba(218,171,105,.25)}
@media(max-width:900px){.tv-planned-workspace{grid-template-columns:minmax(0,1fr)}}
@media(max-width:520px){.tv-planned-head{gap:9px}.tv-planned-activation{padding:15px 13px}.tv-planned-active-toggle>span{letter-spacing:.015em}.tv-planned-runtime{padding:13px}.tv-planned-runtime .tv-planned-summary{grid-template-columns:minmax(0,1fr)}.tv-planned-runtime #tvPlannedCount{grid-column:1;grid-row:2;justify-self:start}.tv-planned-runtime #tvPlannedBreakdown{grid-row:3}}

.tv-archive-search-toolbar{grid-template-columns:minmax(0,1fr);max-width:640px}
.tv-last-broadcasts{margin-top:12px;border:1px solid rgba(218,171,105,.3);border-radius:7px;background:rgba(8,12,7,.18)}
.tv-last-broadcasts[hidden]{display:none}
.tv-last-broadcasts>summary{padding:9px 12px;color:#f2d8b2;font-size:.83rem;font-weight:800;cursor:pointer}
.tv-last-broadcasts>summary:focus-visible{outline:2px solid #e9be76;outline-offset:2px}
.tv-last-broadcast-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 10px 10px}
.tv-last-broadcast-edition{min-width:0;padding:9px 10px;border:1px solid rgba(218,171,105,.2);border-radius:5px;background:rgba(8,12,7,.2)}
.tv-last-broadcast-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px;margin-bottom:7px}
.tv-last-broadcast-head time{color:#fff1d3;font-size:.8rem;font-weight:800;white-space:nowrap}
.tv-last-broadcast-actions{display:flex;flex-wrap:wrap;gap:5px}
.tv-last-broadcast-head .tv-last-broadcast-copy{min-height:28px;padding:4px 8px;font-size:.7rem;letter-spacing:0;text-transform:none}
.tv-last-broadcast-songs{max-height:240px;overflow-y:auto;margin:0;padding:0 7px 0 25px;color:#d5d9cc;font-size:.8rem;line-height:1.45;overscroll-behavior:contain;scrollbar-width:thin}
.tv-last-broadcast-songs li{margin:0 0 3px;padding-left:2px;overflow-wrap:anywhere}
.tv-last-broadcast-empty{margin:0;color:#b9c9b0;font-size:.8rem;line-height:1.4}
.tv-last-broadcast-columns>.tv-last-broadcast-empty{grid-column:1/-1;padding:4px 2px}
@media(max-width:560px){.tv-last-broadcast-columns{grid-template-columns:minmax(0,1fr)}}
/* v2.0.91 · Scrollleisten der Sendungsdetails bleiben an der geraden rechten Kante sichtbar. */
.tv-show-dialog{border-radius:22px 0 0 22px}
.tv-show-dialog-content{scrollbar-color:#a9d668 #1b2818;scrollbar-width:thin}
.tv-show-dialog-content::-webkit-scrollbar{width:10px}
.tv-show-dialog-content::-webkit-scrollbar-track{background:#1b2818}
.tv-show-dialog-content::-webkit-scrollbar-thumb{border:2px solid #1b2818;border-radius:10px;background:#a9d668}
@media(max-width:760px){.tv-show-dialog{border-radius:15px 0 0 15px}}

.tv-show-rich-overview .tv-show-maker.tv-show-editorial-maker{grid-template-columns:1fr;place-items:center;min-height:104px}
.tv-show-rich-overview .tv-show-maker .tv-show-editorial-logo{display:block;width:min(100%,310px);height:auto;max-height:72px;border:0;border-radius:0;object-fit:contain;background:none;filter:drop-shadow(0 4px 10px rgba(0,0,0,.38))}
.tv-bulk-actions{display:grid;grid-template-columns:minmax(250px,.9fr) minmax(310px,1.05fr) minmax(310px,1.05fr);align-items:stretch;gap:11px;margin:14px 0;padding:11px;border:1px solid #596a49;border-radius:11px;background:#172119}
.tv-bulk-actions[hidden],.tv-bulk-actions [hidden]{display:none!important}
.tv-bulk-group{display:flex;align-items:end;gap:9px;min-width:0;padding:11px;border:1px solid rgba(205,230,159,.17);border-radius:9px;background:linear-gradient(145deg,rgba(48,65,36,.55),rgba(14,23,12,.6))}
.tv-bulk-select-group{display:grid;align-content:space-between}
.tv-bulk-select-line{display:flex;align-items:center;gap:9px;min-height:38px}
.tv-bulk-actions label{display:grid;gap:4px;min-width:0;color:#c5d7ac;font-weight:700}
.tv-bulk-target-group label{flex:1 1 auto}
.tv-bulk-actions .tv-bulk-all{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border:1px solid rgba(205,230,159,.25);border-radius:7px;background:#202e1a;cursor:pointer}
.tv-bulk-actions .tv-bulk-all:focus-within{outline:2px solid #b9d77e;outline-offset:2px}
.tv-bulk-actions input[type=checkbox],.tv-bulk-row-select input{width:19px;height:19px;min-height:19px;accent-color:#91b967;cursor:pointer}
.tv-bulk-actions select{width:100%;max-width:none;min-height:38px}
.tv-bulk-actions strong{color:#dceebd;white-space:nowrap}
.tv-bulk-select-group>.metal-button{justify-self:start}
.tv-bulk-order-actions{display:flex;flex-wrap:wrap;align-items:stretch;gap:9px;min-width:0}
.tv-bulk-order-actions>.metal-button{flex:1 1 100px;min-width:0;max-width:100%;padding:10px 7px;font-size:.72rem;line-height:1.35;letter-spacing:.025em;white-space:normal;overflow-wrap:normal}
.tv-bulk-transfer-actions{display:grid;gap:9px;flex:0 0 auto;min-width:0;max-width:100%}
.tv-bulk-transfer-actions>.metal-button{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.tv-bulk-select-line .tv-bulk-quiet{min-height:34px;margin-left:auto;padding:5px 9px;border-color:rgba(205,230,159,.19);background:#1c2918;font-size:.67rem}
.tv-bulk-target-group>.metal-button{flex:0 0 auto;min-height:38px}

/* Sendungseditor: zwei gleichwertige Spalten, Ablauf bis zur Restzeit. */
.tv-admin-grid>.tv-show-editor-card{grid-column:1/-1}
#tvShowForm.tv-show-editor-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;align-items:start}
#tvShowForm .tv-show-editor-column{display:grid;align-content:start;gap:14px;min-width:0}
#tvShowForm .tv-show-editor-section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:10px;min-width:0;padding:16px;border:1px solid rgba(205,230,159,.2);border-radius:12px;background:rgba(10,17,8,.28)}
#tvShowForm .tv-show-editor-section h3{grid-column:1/-1;display:flex;align-items:center;gap:9px;margin:0 0 2px;font-size:.85rem}
#tvShowForm .tv-show-editor-section h3 span{display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border:1px solid rgba(205,230,159,.35);border-radius:8px;background:#344a29;color:#edf8d8}
#tvShowForm .tv-show-editor-note{grid-column:1/-1;margin:0;color:#afc29b;font-size:.7rem;line-height:1.4}
#tvShowForm .tv-show-editor-section label[hidden],#tvShowForm .tv-show-editor-section small[hidden]{display:none!important}
#tvShowForm>.tv-admin-form-actions{grid-column:1/-1;padding-top:12px;border-top:1px solid rgba(205,230,159,.18)}
@media(max-width:980px){#tvShowForm.tv-show-editor-form{grid-template-columns:1fr}}
@media(max-width:600px){#tvShowForm .tv-show-editor-section{grid-template-columns:1fr;padding:12px}#tvShowForm .tv-show-editor-section .wide{grid-column:1}#tvShowForm .tv-show-media-fields{grid-template-columns:1fr}}
.tv-bulk-row-select{width:36px;text-align:center}
@media(max-width:1180px){.tv-bulk-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.tv-bulk-select-group{grid-column:1/-1}}
@media(max-width:700px){.tv-bulk-actions{grid-template-columns:minmax(0,1fr)}.tv-bulk-select-group{grid-column:auto}.tv-bulk-target-group{align-items:stretch;flex-direction:column}.tv-bulk-target-group>.metal-button{align-self:start}.tv-bulk-select-line{flex-wrap:wrap}.tv-bulk-select-line .tv-bulk-quiet{margin-left:0}}

.tv-playlist-video-table .tv-bulk-row-select{padding:18px 7px;text-align:center;vertical-align:top}.tv-playlist-video-table .tv-bulk-row-select input{display:block;margin:0 auto}

/* Die Planung nutzt weiterhin die ursprüngliche Tabelle ohne Auswahlspalte. */
#tvPlaylistDetailCard.is-planned .tv-playlist-video-table{min-width:1320px}
#tvPlaylistDetailCard.is-planned .tv-playlist-video-table th:first-child,
#tvPlaylistDetailCard.is-planned .tv-playlist-video-table td.tv-bulk-row-select{display:none!important}
#tvPlaylistDetailCard.is-planned .tv-playlist-video-table tbody td:nth-child(2){border-left:1px solid rgba(218,171,105,.32);border-radius:12px 0 0 12px}
#tvPlaylistDetailCard.is-planned .tv-playlist-video-table .tv-row-missing-duration td:nth-child(2){box-shadow:inset 6px 0 #ff5e48}
#tvPlaylistDetailCard.is-planned .tv-row-actions-primary{flex-wrap:wrap}
#tvPlaylistDetailCard.is-planned .tv-row-reorder{display:inline-flex;align-items:center;gap:5px;margin-left:3px;padding-left:8px;border-left:1px solid rgba(218,171,105,.3)}
#tvPlaylistDetailCard.is-planned .tv-row-reorder button{min-width:34px;padding:6px 7px}

/* v2.0.91: compact audit and review cards, also on phones. */
.bv-playlist-audit{display:block;font-size:.78rem;line-height:1.5;color:#bac6ad;white-space:normal;overflow-wrap:anywhere;margin-top:4px}
.bv-submission-head-actions{display:flex;flex-wrap:wrap;gap:8px}
.bv-submission-card{display:grid;grid-template-columns:112px minmax(0,1fr) minmax(300px,42%);align-items:center;gap:12px;border-bottom:1px solid #56614e;padding:10px 4px;overflow-wrap:anywhere}
.bv-submission-media{display:block;width:112px;aspect-ratio:16/9;overflow:hidden;border:1px solid rgba(205,230,159,.22);border-radius:8px;background:#080c07}
.bv-submission-thumb{display:block;width:100%;height:100%;object-fit:cover}
.bv-submission-copy{min-width:0}.bv-submission-title{display:block;overflow:hidden;color:#eff7df;font-size:.88rem;text-overflow:ellipsis;white-space:nowrap}
.bv-submission-meta{margin:3px 0;color:#b9c8a2;font-size:.72rem}.bv-submission-youtube{font-size:.7rem}
.bv-submission-card small{display:block;margin-top:3px;color:#89977b;font-size:.68rem}
.bv-submission-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;min-width:0;gap:7px;align-items:center}
.bv-submission-actions .metal-button{width:100%;min-height:36px;padding:7px 10px;border-radius:8px;font-size:.72rem;letter-spacing:.045em}
.bv-submission-state{grid-column:1/-1;justify-self:end;padding:3px 8px;border:1px solid rgba(205,180,112,.35);border-radius:6px;color:#dfca96;background:rgba(75,60,25,.2);font-size:.65rem;letter-spacing:.055em;text-transform:uppercase}
.bv-submission-actions[data-status="approved"] .bv-submission-state{border-color:rgba(141,180,94,.4);color:#c0d99e;background:rgba(66,91,36,.2)}
.bv-submission-actions[data-status="rejected"] .bv-submission-state{border-color:rgba(192,108,88,.4);color:#e1ac9d;background:rgba(100,42,29,.2)}
.bv-submission-actions>small{grid-column:1/-1;text-align:right}
.bv-submission-target{grid-column:1/-1;display:grid;gap:4px;min-width:0;margin:0 0 2px}
.bv-submission-target>span{color:#acbc97;font-size:.6rem;font-weight:800;letter-spacing:.045em;text-transform:uppercase}
.bv-submission-target select{width:100%;min-width:0;max-width:100%;min-height:36px;padding:7px 9px;font-size:.75rem;text-overflow:ellipsis}

@media(max-width:640px){.bv-submission-head-actions{width:100%}.bv-submission-head-actions .metal-button{flex:1}.bv-submission-card{grid-template-columns:96px minmax(0,1fr)}.bv-submission-media{width:96px}.bv-submission-actions{grid-column:1/-1;width:min(100%,280px);justify-self:start}.bv-submission-state{justify-self:start}.bv-submission-actions>small{text-align:left}.tv-submit-form{grid-template-columns:1fr}}

/* v2.0.91: BV title card, visible only with the existing fullscreen controls. */
.tv-fs-now{position:absolute;z-index:5;left:clamp(16px,3vw,54px);bottom:calc(max(24px,env(safe-area-inset-bottom)) + 92px);width:min(720px,calc(100vw - 32px));padding:14px 16px;overflow:hidden;border-left:3px solid #7f9b52;background:#10180c;pointer-events:none}
.tv-fs-now[hidden]{display:none}
.tv-fs-now-meta{display:flex;align-items:center;gap:12px;margin-bottom:17px;font-size:clamp(.68rem,1.2vw,.82rem);font-weight:900;letter-spacing:.075em;text-transform:uppercase}
.tv-fs-live-label{color:#ff786c}.tv-fs-show-time{color:#a7b98c}
.tv-fs-now-kicker{display:block;margin-bottom:6px;color:#a7b98c;font-size:clamp(.65rem,1.15vw,.78rem);font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.tv-fs-now h2{max-width:100%;margin:0;padding:0 0 7px;border-bottom:2px solid rgba(173,205,118,.42);overflow:hidden;color:#f0f9d8;font-size:clamp(1.2rem,3.1vw,2.15rem);font-weight:950;letter-spacing:.025em;line-height:1.05;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}
.tv-fs-video-title{display:block;margin-top:17px;overflow:hidden;color:#eef1e8;font-size:clamp(.82rem,1.65vw,1.15rem);font-weight:900;letter-spacing:.035em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}
.tv-fs-video-title[hidden],.tv-fs-owner[hidden]{display:none}
.tv-fs-owner{display:flex;align-items:center;gap:10px;margin-top:16px;color:#aebc96;font-size:clamp(.8rem,1.45vw,1.05rem);font-weight:800}
.tv-fs-owner-avatar,.tv-fs-owner-fallback{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid rgba(225,241,190,.38);border-radius:50%;background:#26311d;color:#f1f7e6;font-size:.86rem;object-fit:cover}
.tv-fs-owner-avatar[hidden],.tv-fs-owner-fallback[hidden]{display:none}
.tv-fs-now{display:none!important;box-sizing:border-box;z-index:13;bottom:calc(var(--tv-fs-controls-height,110px) + 12px);max-height:calc(100dvh - var(--tv-fs-controls-height,110px) - 24px)}
.tv-page.is-player-fullscreen .fullscreen-controls-visible .tv-fs-now:not([hidden]){display:block!important}
@media(max-width:620px),(max-height:520px){.tv-fs-now{left:12px;width:calc(100vw - 24px);padding:11px 13px}.tv-fs-now-meta{margin-bottom:9px}.tv-fs-video-title{margin-top:9px}.tv-fs-owner{margin-top:10px}}

/* v2.0.91: concrete content of a clicked progressive programme instance. */
.tv-show-progressive{display:grid;gap:11px;padding:18px 20px;border:1px solid rgba(225,241,191,.2);border-radius:14px;background:rgba(8,12,6,.72)}
.tv-show-progressive h3{margin:0;color:#bcd68b;font-size:.79rem;letter-spacing:.12em;text-transform:uppercase}
.tv-show-progressive ol{display:grid;gap:6px;margin:0;padding-left:22px;color:#eff8d7;line-height:1.45}
.tv-show-progressive li{overflow-wrap:anywhere}
.tv-show-legacy-card .tv-show-progressive{margin-top:3px;background:rgba(8,12,6,.48)}
@media(max-width:760px){.tv-show-progressive{padding:15px 16px}.tv-show-progressive ol{padding-left:19px}}

/* Viewer guide: keep the scroll area inside the actual dialog height on mobile. */
.tv-help-dialog{box-sizing:border-box;height:min(92dvh,960px)}
.tv-help-dialog[open]{display:flex;flex-direction:column}
.tv-help-dialog .bv-help-head{flex:none}
.tv-help-dialog .bv-help-content{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto;-webkit-overflow-scrolling:touch}
@media(max-width:600px){.tv-help-dialog{height:calc(100dvh - 12px);max-height:calc(100dvh - 12px)}}

/* Autor der Hauptplaylist in Sendefeldern ab einer Stunde. */
.tv-show-block.has-author>strong,.tv-show-block.is-repeat-linked.has-author>strong{top:43%}.tv-slot-author{position:absolute;z-index:3;top:61%;left:9px;right:31px;overflow:hidden;color:#d8edb9;font-size:.56rem;font-weight:800;line-height:1.15;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 2px #10190b}.tv-show-block.is-live>.tv-slot-author{left:65px}
@media(max-width:720px){.tv-show-block.has-author>strong,.tv-show-block.is-repeat-linked.has-author>strong,.tv-slot-author,.tv-show-block.is-live>.tv-slot-author{position:static;display:block;transform:none;margin:2px 30px 1px 0}}

/* Senderlogo during advertising; shared rule also covers the mini player. */
.tv-channel-logo[hidden],.tv-mini-logo[hidden]{display:none!important}
.tv-chat-actions .tv-chat-guest-block{color:#f39986}.tv-chat-actions .tv-chat-guest-block.is-blocked{color:#b9e06f}.tv-chat-guest-blocks{margin:8px 0;padding:8px;border:1px solid #718062;border-radius:9px;background:#171f16}.tv-chat-guest-blocks[hidden]{display:none}.tv-chat-guest-blocks summary{cursor:pointer;color:#e2dfc9}.tv-chat-guest-block-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.tv-chat-guest-block-row span{min-width:0;overflow-wrap:anywhere}.tv-chat-guest-block-row .metal-button{min-height:28px;padding:5px 8px}

/* Submission review and guest rules. */
.bv-submission-rules,.bv-submission-rules-accept{grid-column:1/-1;min-width:0}
.bv-submission-rules{padding:0;border:1px solid rgba(205,230,159,.24);border-radius:12px;background:linear-gradient(135deg,rgba(59,75,38,.24),rgba(9,15,7,.42));box-shadow:inset 0 1px rgba(255,255,255,.035);overflow:hidden}
.bv-submission-rules>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:52px;padding:13px 16px;list-style:none;cursor:pointer;color:#dbe9bf;font-size:.79rem;font-weight:900;line-height:1.4;letter-spacing:.065em;text-transform:uppercase}
.bv-submission-rules>summary::-webkit-details-marker{display:none}
.bv-submission-rules>summary::after{content:'+';display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;border:1px solid rgba(205,230,159,.22);border-radius:7px;background:rgba(0,0,0,.18);color:#b9d77e;font-size:1.15rem;line-height:1}
.bv-submission-rules[open]>summary{border-bottom:1px solid rgba(205,230,159,.16);background:rgba(169,210,99,.035)}
.bv-submission-rules[open]>summary::after{content:'\2212'}
.bv-submission-rules>summary:hover{background:rgba(169,210,99,.075)}
.bv-submission-rules>summary:focus-visible{outline:2px solid #b9d77e;outline-offset:-3px;border-radius:10px}
.bv-submission-rules>p{margin:10px 16px 16px;color:#c9d4b7;font-size:.9rem;font-weight:500;line-height:1.65;letter-spacing:.01em;overflow-wrap:anywhere}
.bv-submission-rules>h3,.bv-submission-rules>h4{margin:20px 16px 7px;color:#dbe9bf;font-size:.79rem;font-weight:900;line-height:1.4;letter-spacing:.055em}
.bv-submission-rules>h3{padding-top:15px;border-top:1px solid rgba(205,230,159,.15);color:#b9d77e}
.tv-submit-form .bv-submission-rules-accept{display:flex!important;align-items:center;justify-content:flex-start;gap:12px;min-height:60px;padding:12px 14px;border:1px solid rgba(205,230,159,.24);border-radius:10px;background:rgba(255,255,255,.025);cursor:pointer;white-space:normal;transition:border-color .15s,background .15s}
.tv-submit-form .bv-submission-rules-accept:hover{border-color:rgba(205,230,159,.4);background:rgba(169,210,99,.06)}
.tv-submit-form .bv-submission-rules-accept:focus-within{border-color:#b9d77e;box-shadow:0 0 0 2px rgba(185,215,126,.15)}
.tv-submit-form .bv-submission-rules-accept:has(input:checked){border-color:rgba(185,215,126,.55);background:rgba(169,210,99,.085)}
.tv-submit-form .bv-submission-rules-accept input[type="checkbox"]{flex:0 0 20px;width:20px;min-width:20px;max-width:20px;height:20px;min-height:20px;margin:0;padding:0;accent-color:#b9d77e;cursor:pointer}
.tv-submit-form .bv-submission-rules-accept>span{flex:1;min-width:0;margin:0;color:#dbe9bf;font-size:.76rem;font-weight:900;line-height:1.45;letter-spacing:.055em;text-align:left;overflow-wrap:anywhere}
@media(prefers-reduced-motion:reduce){.tv-submit-form .bv-submission-rules-accept{transition:none}}
.bv-submission-approve.metal-button{border-color:#bbec80;background:linear-gradient(180deg,#d3f8a7 0%,#9fd965 52%,#83bf4c 100%);color:#192a0c;text-shadow:none;box-shadow:inset 0 1px rgba(255,255,255,.55),0 3px 7px rgba(0,0,0,.35)}
.bv-submission-approve.metal-button:hover:not(:disabled){background:linear-gradient(180deg,#e4ffc4,#b5eb82 52%,#98d161);color:#122006}
.bv-submission-approve.metal-button:disabled{opacity:.5}
@media(min-width:641px) and (max-width:900px){.bv-submission-card{grid-template-columns:96px minmax(0,1fr)}.bv-submission-media{width:96px}.bv-submission-actions{grid-column:1/-1}.bv-submission-state{justify-self:start}.bv-submission-actions>small{text-align:left}}

/* Submission feedback stays visible across the complete form width. */
.tv-submit-form #tvSubmitStatus{grid-column:1/-1;margin:0;padding:10px 12px;border:1px solid #718e4c;border-radius:8px;background:#1c2a17;color:#e6f3d7;line-height:1.5;overflow-wrap:anywhere}
.tv-submit-form #tvSubmitStatus:empty{display:none}
.tv-submit-form #tvSubmitStatus.error{border-color:#ac6651;background:#34211b;color:#ffd1bd}

#tvYoutubeLink.is-disabled{opacity:.45;filter:grayscale(1);cursor:not-allowed}
#tvBookmark.is-disabled{opacity:.45;filter:grayscale(1);cursor:not-allowed}

.bv-submission-bulk-target{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin:16px 0;padding:12px;border:1px solid rgba(146,167,115,.25);border-radius:9px;background:rgba(17,25,12,.45)}
.bv-submission-bulk-target>label{display:grid;gap:5px;flex:1 1 260px;min-width:0;max-width:440px}
.bv-submission-bulk-target>label>span{color:#b6c6a1;font-size:.65rem;font-weight:800;letter-spacing:.045em;text-transform:uppercase}
.bv-submission-bulk-target select{width:100%;min-width:0}
@media(max-width:640px){.bv-submission-bulk-target>label{max-width:none}.bv-submission-bulk-target>.metal-button{width:100%}}

/* Editable community credit in place of per-video moderation. */
.tv-entry-submitter{display:grid;gap:4px;margin-top:10px;font-size:11px;color:var(--text-muted,#a8a8a8)}
.tv-entry-submitter-input{box-sizing:border-box;width:100%;min-width:0;font-size:12px;padding:7px 9px}
.tv-entry-submitter-input.is-saving{opacity:.7}
.tv-entry-submitter-input.is-error{border-color:#a74a42}

/* Playlist music-supply recommendation, directly beside the playlist text. */
.tv-playlist-supply-copy{display:flex;align-items:center;gap:6px;min-width:0}
.tv-playlist-supply-select{display:block;flex:0 1 auto;min-width:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}
.tv-playlist-supply-warning{display:inline-flex;flex:none;align-items:center;justify-content:center;box-sizing:border-box;width:14px;height:14px;min-height:0;padding:0;border:1px solid #e5bd70;border-radius:50%;background:rgba(229,189,112,.08);color:#e5bd70;font:inherit;font-size:10px;font-weight:900;line-height:1;cursor:pointer}
.tv-playlist-supply-warning:hover{background:rgba(229,189,112,.2)}
.tv-playlist-supply-warning:focus-visible,.tv-playlist-supply-select:focus-visible{outline:2px solid #f0f8df;outline-offset:3px}

/* Compact shared control-room notice, including the read-only VJ view. */
.bv-controlroom-notice[hidden],.bv-controlroom-notice [hidden]{display:none!important}
.bv-controlroom-notice{padding:12px 14px;border-radius:11px;border-left:3px solid #92aa6b;background:linear-gradient(110deg,rgba(41,54,29,.85),rgba(16,23,12,.88))}
.bv-controlroom-notice .tv-card-head{align-items:center;flex-wrap:wrap;gap:8px 14px}
.bv-controlroom-notice-heading{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 14px;min-width:0}
.bv-controlroom-notice .tv-card-head h2{margin:0;font-size:.82rem;letter-spacing:.055em;line-height:1.3}
.bv-controlroom-notice-updated{color:#9baa88;font-size:.64rem;font-weight:400;letter-spacing:0;line-height:1.4}
.bv-controlroom-notice .tv-card-head-actions{gap:6px}
.bv-controlroom-notice .metal-button{min-height:28px;padding:5px 9px;border-radius:7px;box-shadow:none;font-size:.64rem;line-height:1.25;letter-spacing:.02em;text-transform:none}
.bv-controlroom-notice .tv-card-head-actions .danger-button{background:rgba(109,46,35,.3);border-color:rgba(204,114,95,.3);color:#e9b5a9}
.bv-controlroom-notice-text{margin:8px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.78rem;font-weight:400;line-height:1.5}
.bv-controlroom-notice #bvControlroomNoticeEmpty{margin:8px 0 0;font-size:.72rem}
.bv-controlroom-notice-attachment{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:9px;min-width:0}
.bv-controlroom-notice-file-row{display:inline-flex;align-items:center;gap:2px;max-width:100%;min-width:0;border:1px solid rgba(202,224,171,.17);border-radius:7px;background:rgba(0,0,0,.17)}
.bv-controlroom-notice-download{display:flex;align-items:center;gap:8px;min-width:0;max-width:100%;min-height:30px;padding:4px 9px;box-sizing:border-box;color:#dce8c9;text-decoration:none;font-size:.72rem;font-weight:500;letter-spacing:0;text-transform:none}
.bv-controlroom-notice-download::before{content:'↓';flex:none;color:#a9c880;font-size:1rem;line-height:1}
.bv-controlroom-notice-file-name{min-width:0;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bv-controlroom-notice-file-size{flex:none;color:#9caa8a;font-size:.64rem;font-weight:400;font-variant-numeric:tabular-nums;white-space:nowrap}
.bv-controlroom-notice-download:hover{color:#f0f8df;background:rgba(166,199,114,.08);border-radius:6px}
.bv-controlroom-notice-file-delete{display:grid;place-items:center;flex:none;width:28px;height:28px;min-height:0;margin-right:2px;padding:0;border:0;border-radius:5px;background:transparent;color:#b99b91;font:inherit;font-size:1.05rem;line-height:1;cursor:pointer;box-shadow:none}
.bv-controlroom-notice-file-delete:hover{color:#f0c0b2;background:rgba(151,61,43,.25)}
.bv-controlroom-notice-file-delete:disabled{opacity:.45;cursor:default}
.bv-controlroom-notice-download:focus-visible,.bv-controlroom-notice-file-delete:focus-visible{outline:2px solid #cfe7a0;outline-offset:2px}
.bv-controlroom-notice-file-row.pending-removal .bv-controlroom-notice-file-name{opacity:.5;text-decoration:line-through}
.bv-controlroom-notice-file-row.pending-removal .bv-controlroom-notice-file-delete{color:#cce1a6}
.bv-controlroom-notice-form{display:grid;gap:10px;margin-top:12px;padding-top:10px;border-top:1px solid rgba(202,224,171,.13)}
.bv-controlroom-notice-form>label{display:grid;gap:5px;min-width:0}
.bv-controlroom-notice-form>label>span{font-size:.68rem;color:#b8c7a4}
.bv-controlroom-notice-form textarea{width:100%;min-width:0;resize:vertical;font-size:.78rem}
.bv-controlroom-notice-form input[type=file]{width:100%;min-width:0;font-size:.72rem}
.bv-controlroom-notice-form small{color:#99aa83;font-size:.66rem;line-height:1.4}
.bv-controlroom-notice #bvControlroomNoticeStatus{margin:7px 0 0;font-size:.66rem;font-weight:400;letter-spacing:0;line-height:1.4}
.bv-controlroom-notice #bvControlroomNoticeStatus:empty{display:none}
@media(max-width:560px){.bv-controlroom-notice{padding:10px 11px}.bv-controlroom-notice-heading{gap:4px 10px}.bv-controlroom-notice-attachment{align-items:stretch}.bv-controlroom-notice-file-row{width:100%}.bv-controlroom-notice-download{flex:1}.bv-controlroom-notice-file-name{flex:1;max-width:none}.bv-controlroom-notice .tv-card-head-actions{justify-content:flex-start}}
