html.tv-mode { color-scheme: dark; scroll-behavior: auto !important; --tv-focus: #9fd2ea; }
html.tv-mode body { background: #05070b; color: #f4f7f8; font-size: 22px; }
.tv-mode *, .tv-mode *::before, .tv-mode *::after { animation-duration: .001ms !important; animation-delay: 0ms !important; transition-duration: .001ms !important; scroll-behavior: auto !important; }
.tv-mode :is(a, button, input, select, textarea, summary, [tabindex]):focus { outline: 4px solid var(--tv-focus) !important; outline-offset: 5px !important; box-shadow: 0 0 0 9px rgba(159,210,234,.12) !important; }
.tv-mode :is(button, input, select, .btn, .filter, .text-link) { min-height: 56px; font-size: 20px; }
.tv-mode :is(button, a) { scroll-margin: 120px; }
.tv-mode :is(canvas.background, .background-stars, .home-scroll-cue) { display: none !important; }
.tv-mode .masthead { top: 20px !important; }
.tv-mode .masthead-inner { width: 90% !important; margin-inline: 5% !important; min-height: 70px; }
.tv-mode .menu-btn { width: 64px; height: 64px; }
.tv-mode .header-tools .nav-links :is(a,button) { font-size: 20px; min-height: 56px; }
.tv-mode .brand img { height: 32px; }
.tv-mode .section { padding-top: 120px; }
.tv-mode .wrap, .tv-mode .wrap--wide { width: 90%; max-width: 1800px; }
.tv-mode body.inner main .wrap, .tv-mode body.inner main .wrap.wrap--wide,
.tv-mode body.homepage .content > .section .wrap { width: 90%; max-width: 1800px; margin-inline: auto; }
.tv-mode body.inner :is(button, input, select, .btn, .filter, .text-link, .interior-support) { min-height: 56px; font-size: 20px; }
.tv-mode .tv-nav { display: flex; flex-wrap: wrap; gap: 18px; align-items: center; width: 90%; max-width: 1800px; margin: 0 auto 36px; padding: 10px 0; }
.tv-mode .tv-nav :is(a,button) { color: #f4f7f8; background: transparent; border: 1px solid #45515f; border-radius: 10px; padding: 14px 20px; font: inherit; text-decoration: none; }
.tv-mode .tv-nav span { display: block; flex-basis: 100%; color: #b4c2cc; font-size: 18px; }
.tv-mode h1 { font-size: clamp(38px,4vw,64px); line-height: 1.2; }
.tv-mode :is(.sub, .meta, .card-body .meta, .watch-desc) { font-size: 20px; line-height: 1.65; }
.tv-mode .kicker, .tv-mode #count { font-size: 19px; }
.tv-mode .library-view { font-size: 22px; margin-block: 28px; }
.tv-mode #grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 38px 28px; }
.tv-mode .lib-group { grid-column: 1 / -1; }
.tv-mode .lib-group .grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 38px 28px; }
.tv-mode .cal-group { font-size: 28px; }
.tv-mode .card { border-radius: 10px; }
.tv-mode .card:hover { translate: none; }
.tv-mode .card-body { padding: 20px 8px 12px; }
.tv-mode .card-body h3 { font-size: 24px; line-height: 1.4; }
.tv-mode .library-series-link { min-width: 56px; min-height: 56px; }
.tv-mode .continue-section .viewing-list { gap: 24px; }
.tv-mode .overlay-nav { overflow-y: auto; padding: 110px 7% 60px; }
.tv-mode .overlay-nav__list { max-width: 1100px; margin: auto; }
.tv-mode .overlay-nav :is(a,.overlay-link) { font-size: 27px; min-height: 64px; }
.tv-mode .watch-grid { display: block; }
.tv-mode .watch-side { display: none; }
.tv-mode .stage { overflow: visible; margin-bottom: 105px; }
.tv-mode .stage:is(:fullscreen,:-webkit-full-screen) { overflow: hidden; margin: 0; }
.tv-mode .tv-controls { position: absolute; top: calc(100% + 20px); inset-inline: 0; display: flex; flex-wrap: wrap; gap: 18px; justify-content: center; z-index: 20; }
.tv-mode .tv-controls button { background: #141c27; color: #f4f7f8; border: 1px solid #45515f; border-radius: 10px; padding: 14px 22px; font: inherit; }
.tv-mode .tv-controls button:disabled { opacity: .4; }
.tv-mode .stage:is(:fullscreen,:-webkit-full-screen) .tv-controls { top: auto; bottom: 6%; padding: 16px; background: rgba(5,7,11,.88); }
.tv-mode .stage.is-chrome-off .tv-controls:not(:focus-within) { opacity: 0; pointer-events: none; }
.tv-mode .stage:not(:fullscreen):not(:-webkit-full-screen) .tv-controls { opacity: 1; pointer-events: auto; }
.tv-mode .stage.is-chrome-off:focus-within .tv-controls { opacity: 1; pointer-events: auto; }
.tv-mode :is(#danmaku-form, #comment-form, #comment-log, #comment-hint, .comment-section, .watch-comments, .comment-form, .watch-info-secondary) { display: none; }
.tv-mode .gate-bar { padding: 26px; }
.tv-mode .gate-copy { font-size: 24px; }
.tv-mode .gate-actions { gap: 20px; }
.tv-mode .pc { font-size: 20px; }
.tv-mode .pc button { min-width: 56px; }
.tv-mode .tv-purchase { position: fixed; inset: 0; z-index: 10000; display: grid; place-items: center; background: rgba(0,0,0,.9); padding: 5vw; }
.tv-mode .tv-purchase > div { max-width: 900px; padding: 46px; border: 1px solid #45515f; border-radius: 20px; background: #0d141f; }
.tv-mode .tv-purchase { overflow-y: auto; }
.tv-mode .tv-purchase-layout { display: grid; grid-template-columns: 260px minmax(0,1fr); gap: 36px; align-items: center; }
.tv-mode .tv-purchase-layout:has(.tv-purchase-qr[hidden]) { grid-template-columns: 1fr; }
.tv-mode .tv-purchase-qr svg { display: block; width: 100%; height: auto; border-radius: 6px; }
.tv-mode .tv-purchase-actions { display: flex; flex-wrap: wrap; gap: 20px; margin-top: 24px; }
.tv-mode .tv-purchase [data-tv-purchase-refresh] { background: #9fd2ea; color: #05070b; }
.tv-mode .tv-purchase h2 { font-size: 38px; }
.tv-mode .tv-phone-url { color: #9fd2ea; font-size: 28px; overflow-wrap: anywhere; }
.tv-mode .tv-purchase button { padding: 14px 24px; background: #141c27; color: #f4f7f8; border: 1px solid #45515f; border-radius: 10px; font: inherit; }
@media (max-width: 1000px) {
  .tv-mode .tv-purchase-layout { grid-template-columns: 200px minmax(0,1fr); gap: 24px; }
  .tv-mode #grid, .tv-mode .lib-group .grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .tv-mode .header-tools .nav-links { display: none; }
  .tv-mode .tv-nav :is(a,button) { font-size: 18px; padding: 10px 14px; }
}
@media (max-width: 640px) {
  .tv-mode .tv-purchase > div { padding: 24px; }
  .tv-mode .tv-purchase-layout { grid-template-columns: 1fr; }
  .tv-mode .tv-purchase-qr { width: 200px; margin-inline: auto; }
}
