.bz-bottok-tv-page .bz-page.bz-page--wide { max-width: none; padding: 18px 28px 24px; }
.bz-bottok-tv-page .bz-topbar { display: none; }
.bz-bottok-tv-page .bz-masthead__inner { max-width: none; min-height: 72px; padding-inline: 28px; }
.bz-tv { --bt-stage-height: 65vh; color: var(--bz-text); }
.bz-tv [hidden] { display: none !important; }
.bz-tv button { font-family: var(--bz-font-ui); cursor: pointer; }
.bz-tv button:disabled { opacity: .4; cursor: default; }
.bz-tv button:focus-visible, .bz-tv a:focus-visible, .bz-tv input:focus-visible, .bz-tv__stage:focus-visible { outline: 2px solid var(--bz-focus); outline-offset: 3px; }
.bz-tv__header, .bz-tv__brand, .bz-tv__preferences, .bz-tv__filters, .bz-tv__buttons, .bz-tv__actions { display: flex; align-items: center; }
.bz-tv__header { justify-content: space-between; gap: 20px; margin-bottom: 18px; }
.bz-tv__brand { gap: 18px; flex-shrink: 0; }
.bz-tv__brand > a { display: none; }
.bz-tv__brand h1 { margin: 0; font: 400 clamp(24px, 2vw, 32px)/1.2 var(--bz-font-hero); }
.bz-tv__brand > span { color: var(--bz-text-muted); font: 700 10px var(--bz-font-ui); letter-spacing: .14em; }
.bz-tv__preferences { gap: 18px; flex-shrink: 0; margin-left: auto; }
.bz-tv__lean-back { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; flex-shrink: 0; padding: 9px 18px; background: var(--bz-accent); color: var(--bz-bg); border: 0; clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 0 100%); text-align: left; font-size: 15px; font-weight: 800; }
.bz-tv__lean-back:hover { background: var(--bz-accent-strong); }
.bz-tv__lean-back small { display: block; font-size: 10px; font-weight: 500; margin-top: 2px; }
.bz-tv__lean-back .bz-icon { width: 20px; height: 20px; }
.bz-tv__modes { display: flex; padding: 3px; background: var(--bz-surface-1); border: 1px solid var(--bz-border); }
.bz-tv__modes button, .bz-tv__filters button { border: 1px solid transparent; color: var(--bz-text-dim); background: transparent; padding: 0 16px; min-height: 40px; font-size: 13px; font-weight: 700; }
.bz-tv__modes button[aria-pressed="true"], .bz-tv__filters button[aria-pressed="true"] { color: var(--bz-text); background: var(--bz-accent-bg); box-shadow: inset 3px 0 var(--bz-accent); clip-path: polygon(0 0, calc(100% - 7px) 0, 100% 7px, 100% 100%, 0 100%); }
.bz-tv__autoplay { display: flex; align-items: center; gap: 7px; border: 0; color: var(--bz-text-dim); background: transparent; min-height: 44px; font-size: 13px; }
.bz-tv__switch { width: 30px; height: 16px; padding: 3px; background: var(--bz-surface-3); border: 1px solid var(--bz-border-strong); }
.bz-tv__switch::after { content: ''; display: block; width: 8px; height: 8px; background: var(--bz-text-muted); transition: transform 120ms; }
.bz-tv__autoplay[aria-pressed="true"] .bz-tv__switch { background: var(--bz-accent-bg); border-color: var(--bz-accent); }
.bz-tv__autoplay[aria-pressed="true"] .bz-tv__switch::after { transform: translateX(14px); background: var(--bz-accent); }
.bz-tv__filters { gap: 4px; margin: 0; overflow-x: auto; min-width: 0; }
.bz-tv__filters button { white-space: nowrap; min-height: 36px; padding-inline: 14px; font-size: 12px; }
.bz-tv__filters button[data-w="3"] { border-bottom-color: var(--bz-w3); }
.bz-tv__filters button[data-w="12"] { border-bottom-color: var(--bz-w12); }
.bz-tv__filters button[data-w="30"] { border-bottom-color: var(--bz-w30); }
.bz-tv__filters button[data-w="fs"] { border-bottom-color: var(--bz-w-fs); }
.bz-tv__hint { margin-left: auto; color: var(--bz-text-muted); font-size: 13px; white-space: nowrap; }
.bz-tv__layout { display: grid; grid-template-columns: minmax(0, 1fr) 290px; gap: 24px; align-items: start; }
.bz-tv__watch { min-width: 0; }
.bz-tv__stage { position: relative; height: var(--bt-stage-height); min-height: 220px; overflow: hidden; background: var(--bz-bg); border: 1px solid var(--bz-border); border-top: 2px solid var(--bz-border-strong); }
.bz-tv__picture { position: absolute; inset: 0; display: grid; place-items: center; overflow: hidden; }
.bz-tv__picture video { position: absolute; inset: 0; margin: auto; min-height: 0; width: 100%; height: 100%; object-fit: contain; display: block; }
.bz-tv__picture video[data-padded="true"] { width: min(100%, calc(var(--bt-stage-height) * .5625)); object-fit: cover; }
.bz-tv__tap { position: absolute; inset: 0; width: 100%; height: 100%; background: none; border: 0; color: var(--bz-text); display: grid; place-items: center; }
.bz-tv__tap span { background: color-mix(in srgb, var(--bz-surface-1) 94%, transparent); border: 1px solid var(--bz-border-strong); padding: 14px 24px; font-size: 15px; font-weight: 700; }
.bz-tv__stage[data-state="playing"] .bz-tv__tap span { display: none; }
.bz-tv__status { position: absolute; top: 18px; left: 18px; right: 18px; width: fit-content; max-width: calc(100% - 36px); background: color-mix(in srgb, var(--bz-surface-1) 92%, transparent); padding: 8px 12px; font-size: 13px; pointer-events: none; }
.bz-tv__status:empty { display: none; }
.bz-tv__transport { position: absolute; bottom: 0; inset-inline: 0; padding: 26px 16px 10px; background: linear-gradient(transparent, color-mix(in srgb, var(--bz-bg) 92%, transparent)); transition: opacity 220ms; }
.bz-tv__transport input { display: block; width: 100%; accent-color: var(--bz-accent); height: 16px; margin: 0 0 3px; cursor: pointer; }
.bz-tv__buttons { gap: 6px; }
.bz-tv__buttons button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-width: 44px; min-height: 44px; color: var(--bz-text); background: transparent; border: 0; font-size: 12px; }
.bz-tv__buttons button:hover { background: var(--bz-surface-2); }
.bz-tv__buttons .bz-icon { width: 19px; height: 19px; }
.bz-tv__time { font: 11px var(--bz-font-mono); color: var(--bz-text-dim); white-space: nowrap; }
.bz-tv__playing-mode { margin-left: auto; font: 700 10px var(--bz-font-ui); letter-spacing: .1em; color: var(--bz-text-dim); }
.bz-tv__screen-title { display: none; position: absolute; top: 22px; left: 24px; right: 24px; pointer-events: none; text-shadow: 0 2px 5px var(--bz-bg); }
.bz-tv__screen-title strong { display: block; font: italic 800 28px var(--bz-font-display); text-transform: uppercase; }
.bz-tv__upcoming { position: absolute; inset-inline: max(24px, env(safe-area-inset-left)) max(24px, env(safe-area-inset-right)); bottom: max(100px, env(safe-area-inset-bottom)); max-width: 1440px; margin-inline: auto; pointer-events: none; background: color-mix(in srgb, var(--bz-surface-1) 92%, transparent); border-left: 4px solid var(--bz-accent); padding: 14px 20px 18px; clip-path: polygon(0 0, calc(100% - 14px) 0, 100% 14px, 100% 100%, 0 100%); }
.bz-tv__upcoming-heading { display: flex; gap: 12px; align-items: baseline; margin-bottom: 12px; color: var(--bz-text); font: 700 12px var(--bz-font-ui); letter-spacing: .14em; }
.bz-tv__upcoming-heading > span { color: var(--bz-text-muted); font-size: 10px; }
.bz-tv__upcoming ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; list-style: none; padding: 0; margin: 0; }
.bz-tv__upcoming li { min-width: 0; padding-left: 20px; border-left: 1px solid var(--bz-border-strong); }
.bz-tv__upcoming li:first-child { padding-left: 0; border: 0; }
.bz-tv__upcoming-order { display: block; color: var(--bz-text-dim); font: 700 10px var(--bz-font-ui); letter-spacing: .1em; margin-bottom: 6px; }
.bz-tv__upcoming-order b { color: var(--bz-accent-strong); font: 12px var(--bz-font-mono); margin-right: 5px; }
.bz-tv__upcoming strong { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; font: italic 800 clamp(16px, 1.8vw, 25px)/1.1 var(--bz-font-display); }
.bz-tv__upcoming small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--bz-text-dim); margin-top: 7px; font: 11px var(--bz-font-ui); }
.bz-tv__upcoming { opacity: 0; transform: translateY(28px); transition: opacity 300ms ease, transform 300ms cubic-bezier(.4, 0, 1, 1); }
.bz-tv__upcoming.is-visible { opacity: 1; transform: translateY(0); transition: opacity 420ms ease, transform 520ms cubic-bezier(.16, 1, .3, 1); }
.bz-tv__upcoming.is-visible .bz-tv__upcoming-heading { animation: bt-upcoming-reveal 460ms 60ms both; }
.bz-tv__upcoming.is-visible li { animation: bt-upcoming-reveal 520ms cubic-bezier(.16, 1, .3, 1) both; }
.bz-tv__upcoming.is-visible li:nth-child(1) { animation-delay: 100ms; }
.bz-tv__upcoming.is-visible li:nth-child(2) { animation-delay: 180ms; }
.bz-tv__upcoming.is-visible li:nth-child(3) { animation-delay: 260ms; }
@keyframes bt-upcoming-reveal { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 600px) {
  .bz-tv__upcoming { inset-inline: max(12px, env(safe-area-inset-left)) max(12px, env(safe-area-inset-right)); padding: 12px; }
  .bz-tv__upcoming ol { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .bz-tv__upcoming li { padding-left: 12px; } .bz-tv__upcoming li:nth-child(n+3) { display: none; }
}
.bz-tv__now { display: flex; justify-content: space-between; gap: 18px; padding-top: 16px; }
.bz-tv__now > div:first-child { min-width: 0; }
.bz-tv__metadata { color: var(--bz-accent-strong); font: 700 10px var(--bz-font-ui); letter-spacing: .12em; text-transform: uppercase; }
.bz-tv__now h2 { font: italic 800 clamp(21px, 2vw, 30px)/1.12 var(--bz-font-display); margin: 6px 0; text-transform: uppercase; overflow-wrap: anywhere; }
.bz-tv__now p { font-size: 13px; color: var(--bz-text-muted); margin: 0; }
.bz-tv__actions { align-self: start; flex-shrink: 0; gap: 6px; }
.bz-tv__actions button, .bz-tv__actions a { display: inline-flex; justify-content: center; align-items: center; gap: 7px; padding: 0 12px; min-height: 44px; border: 1px solid var(--bz-border); background: var(--bz-surface-1); color: var(--bz-text-dim); font-size: 12px; }
.bz-tv__actions .is-liked { color: var(--bz-accent-strong); }
.bz-tv__queue { border-top: 2px solid var(--bz-accent); padding-top: 16px; }
.bz-tv__queue-heading { display: flex; justify-content: space-between; align-items: center; }
.bz-tv__queue-heading h2 { margin: 0; font: 800 17px var(--bz-font-display); letter-spacing: .04em; }
.bz-tv__queue-heading > span { font: 10px var(--bz-font-mono); color: var(--bz-text-muted); }
.bz-tv__queue-copy { color: var(--bz-text-dim); font-size: 13px; line-height: 1.4; margin: 10px 0 18px; }
.bz-tv__queue-item { display: grid; grid-template-columns: 92px minmax(0,1fr); align-items: center; gap: 12px; text-align: left; padding: 10px 0; width: 100%; border: 0; background: transparent; color: var(--bz-text); }
.bz-tv__queue-item:hover { background: var(--bz-surface-1); }
.bz-tv__queue-copy { margin-bottom: 8px; }
.bz-tv__queue-help { margin: 0 0 10px; color: var(--bz-text-muted); font-size: 12px; line-height: 1.4; }
.bz-tv__queue-row { position: relative; border-bottom: 1px solid var(--bz-border); padding-bottom: 4px; }
.bz-tv__queue-controls { display: flex; justify-content: flex-end; gap: 2px; }
.bz-tv__queue-controls button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-width: 44px; min-height: 44px; padding: 0 10px; color: var(--bz-text-muted); background: transparent; border: 0; font-size: 12px; }
.bz-tv__queue-controls .bz-icon { width: 15px; height: 15px; }
.bz-tv__queue-controls button:hover:not(:disabled), .bz-tv__queue-controls button:focus-visible { color: var(--bz-text); background: var(--bz-surface-2); }
.bz-tv__queue-controls [data-queue-action="drag"] { margin-right: auto; cursor: grab; }
.bz-tv__queue-controls [data-queue-action="drag"]:active { cursor: grabbing; }
.bz-tv__queue-row.is-dragging { opacity: .45; }
.bz-tv__queue-row.drop-before::before, .bz-tv__queue-row.drop-after::after { content: ''; position: absolute; height: 3px; inset-inline: 0; background: var(--bz-accent); pointer-events: none; }
.bz-tv__queue-row.drop-before::before { top: 0; }
.bz-tv__queue-row.drop-after::after { bottom: 0; }
.bz-tv__thumb { height: 62px; display: grid; place-items: center; position: relative; background: var(--bz-surface-2) url('../brand/sparky-white.svg') center / 24px no-repeat; overflow: hidden; }
.bz-tv__thumb video { display: block; width: 100%; height: 100%; object-fit: cover; background: var(--bz-surface-2); }
.bz-tv__thumb > span { position: absolute; bottom: 3px; right: 3px; background: var(--bz-bg); padding: 2px 4px; font: 9px var(--bz-font-mono); }
.bz-tv__queue-item strong { font: 800 14px/1.15 var(--bz-font-display); text-transform: uppercase; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.bz-tv__queue-item small { display: block; color: var(--bz-text-muted); margin-top: 5px; font: 10px var(--bz-font-ui); }
.bz-tv__keys { display: flex; gap: 12px; flex-wrap: wrap; color: var(--bz-text-muted); font: 9px var(--bz-font-mono); margin-top: 20px; }
.bz-tv__feed-status { font-size: 13px; line-height: 1.4; color: var(--bz-text-dim); margin: 12px 0; }
.bz-tv__notice { position: fixed; bottom: 24px; left: 50%; transform: translateX(-50%); max-width: 90vw; padding: 14px 20px; background: var(--bz-surface-2); border: 1px solid var(--bz-border-strong); z-index: 1001; }
.bz-tv__stage:is(:fullscreen, :-webkit-full-screen, .is-expanded) { --bt-stage-height: 100dvh !important; width: 100%; height: 100dvh; border: 0; }
.bz-tv__stage.is-expanded { position: fixed; inset: 0; z-index: 1000; }
.bz-tv__stage:is(:fullscreen, :-webkit-full-screen, .is-expanded) .bz-tv__screen-title { display: block; }
.bz-tv__stage:is(:fullscreen, :-webkit-full-screen, .is-expanded) .bz-tv__status { top: 90px; }
.bz-tv__stage.is-idle[data-state="playing"] .bz-tv__transport, .bz-tv__stage.is-idle[data-state="playing"] .bz-tv__screen-title { opacity: 0; pointer-events: none; }
.bz-tv__stage:focus-within .bz-tv__transport { opacity: 1 !important; pointer-events: auto !important; }
.bz-tv__buttons .bz-tv__fullscreen-control, #bt-close-queue, .bz-tv__queue-keyboard { display: none; }
.bz-tv__stage:is(:fullscreen, :-webkit-full-screen, .is-expanded) .bz-tv__fullscreen-control { display: inline-flex; }
.bz-tv__buttons kbd { margin-left: 4px; color: var(--bz-text-muted); font: 10px var(--bz-font-mono); }
.bz-tv__queue.is-overlay, .bz-tv__shortcuts { position: absolute; z-index: 4; top: max(20px, env(safe-area-inset-top)); right: max(20px, env(safe-area-inset-right)); bottom: 105px; width: min(390px, calc(100% - 40px)); padding: 16px 20px; overflow-y: auto; overscroll-behavior: contain; background: color-mix(in srgb, var(--bz-surface-1) 97%, transparent); border: 1px solid var(--bz-border-strong); border-top: 3px solid var(--bz-accent); box-shadow: 0 8px 30px color-mix(in srgb, var(--bz-bg) 70%, transparent); animation: bt-queue-reveal 220ms cubic-bezier(.16, 1, .3, 1) both; }
.bz-tv__queue.is-overlay .bz-tv__queue-heading { gap: 12px; }
.bz-tv__queue.is-overlay .bz-tv__queue-heading > span { margin-left: auto; }
.bz-tv__queue.is-overlay #bt-close-queue { display: inline-flex; }
.bz-tv__queue.is-overlay .bz-tv__queue-keyboard { display: block; color: var(--bz-text-dim); font: 11px/1.7 var(--bz-font-mono); margin: 8px 0 14px; }
.bz-tv__queue.is-overlay .bz-tv__queue-help, .bz-tv__queue.is-overlay .bz-tv__keys { display: none; }
.bz-tv__queue.is-overlay .bz-tv__queue-row:focus-within { background: var(--bz-accent-bg); box-shadow: inset 3px 0 var(--bz-accent); }
.bz-tv__queue.is-overlay .bz-tv__queue-item { padding-inline: 8px; }
.bz-tv__panel-heading { display: flex; align-items: center; gap: 12px; justify-content: space-between; }
.bz-tv__panel-heading h2 { margin: 0; font: 800 17px var(--bz-font-display); }
.bz-tv__panel-heading button, #bt-close-queue { align-items: center; justify-content: center; min-width: 44px; min-height: 44px; background: transparent; border: 0; color: var(--bz-text); }
.bz-tv__panel-heading button:hover, #bt-close-queue:hover { background: var(--bz-surface-3); }
.bz-tv__shortcuts dl { margin: 12px 0; }
.bz-tv__shortcuts dl > div { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 12px; padding: 9px 0; border-bottom: 1px solid var(--bz-border); font-size: 13px; }
.bz-tv__shortcuts dt { color: var(--bz-text-dim); font: 11px var(--bz-font-mono); }
.bz-tv__shortcuts dd { margin: 0; }
.bz-tv__shortcuts kbd { font: inherit; }
.bz-tv__shortcuts p { color: var(--bz-text-muted); font-size: 13px; line-height: 1.4; }
.bz-tv__stage > .bz-tv__notice { position: absolute; top: 90px; left: 24px; bottom: auto; transform: none; max-width: min(420px, calc(100% - 48px)); z-index: 5; }
@keyframes bt-queue-reveal { from { opacity: 0; transform: translateX(16px); } to { opacity: 1; transform: translateX(0); } }
@media (max-width: 1199px) { .bz-tv__layout { grid-template-columns: minmax(0,1fr) 250px; gap: 18px; } .bz-tv__brand > span, .bz-tv__hint { display: none; } .bz-tv__now { flex-wrap: wrap; } }
@media (max-width: 1099px) { .bz-bottok-tv-page .bz-page.bz-page--wide { padding: max(12px, env(safe-area-inset-top)) 18px calc(var(--bz-tabbar-pad, 70px) + 16px); } .bz-tv__brand > a { display: inline-flex; align-items: center; min-height: 44px; } }
@media (min-width: 761px) and (max-width: 1199px) { .bz-tv__header { gap: 12px; flex-wrap: wrap; } .bz-tv__filters { order: 2; width: 100%; } .bz-tv__preferences { margin-left: auto; } }
@media (max-width: 760px) {
  .bz-bottok-tv-page .bz-page.bz-page--wide { padding-inline: 12px; }
  .bz-tv__header { flex-wrap: wrap; gap: 8px; margin-bottom: 12px; } .bz-tv__brand { gap: 12px; } .bz-tv__brand h1 { font-size: 24px; }
  .bz-tv__lean-back { margin-left: auto; min-height: 44px; padding: 8px 12px; font-size: 13px; gap: 7px; }
  .bz-tv__preferences { order: 1; width: 100%; justify-content: space-between; gap: 10px; } .bz-tv__modes button { min-height: 38px; }
  .bz-tv__filters { order: 2; width: 100%; margin: 0; gap: 0; } .bz-tv__filters button { padding-inline: 12px; min-height: 44px; }
  .bz-tv__layout { grid-template-columns: minmax(0,1fr); gap: 24px; }
  .bz-tv__stage { min-height: 210px; } .bz-tv__transport { padding-inline: 8px; }
  .bz-tv__time { font-size: 10px; } .bz-tv__buttons { gap: 0; } .bz-tv__playing-mode { font-size: 9px; visibility: hidden; width: 0; overflow: hidden; }
  #bt-fullscreen span { display: none; } .bz-tv__now { padding-top: 12px; gap: 12px; }
  #bt-open-queue span, .bz-tv__stage .bz-tv__buttons #bt-open-shortcuts { display: none; }
  .bz-tv__queue.is-overlay, .bz-tv__shortcuts { top: 12px; right: 12px; width: calc(100% - 24px); padding: 12px; }
  .bz-tv__shortcuts dl > div { grid-template-columns: 140px minmax(0, 1fr); }
  .bz-tv__queue-item { grid-template-columns: 112px minmax(0,1fr); } .bz-tv__thumb { height: 68px; }
  .bz-tv__keys { display: none; } .bz-tv__screen-title strong { font-size: 20px; }
  .bz-tv__notice { bottom: calc(var(--bz-tabbar-pad, 70px) + 12px); }
}
@media (prefers-reduced-motion: reduce) { .bz-tv * { transition: none !important; animation: none !important; } }
