/* Deimos Cinema — smart TV / 10-foot */
html[data-tv="1"] {
  --tv-safe-x: max(28px, env(safe-area-inset-left, 0px), env(safe-area-inset-right, 0px), 3.2vw);
  --tv-safe-y: max(24px, env(safe-area-inset-top, 0px), env(safe-area-inset-bottom, 0px), 3.2vh);
}
html[data-tv="1"] body { cursor: default; }
html[data-tv="1"] .tv-home {
  --orb: clamp(110px, 14vmin, 176px);
  --gap: clamp(18px, 2.8vmin, 42px);
}
html[data-tv="1"] .tv-home .tv-stage {
  padding: var(--tv-safe-y) var(--tv-safe-x);
}
html[data-tv="1"] .tv-home .tv-btn .icon {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html[data-tv="1"] .tv-home .tv-btn .icon::before { animation: none; opacity: .45; }
html[data-tv="1"] .tv-home .tv-led,
html[data-tv="1"] .tv-home .tv-rail,
html[data-tv="1"] .tv-home .tv-hair { animation: none; }
html[data-tv="1"] .tv-home .tv-btn:focus,
html[data-tv="1"] .tv-home .tv-btn:focus-visible {
  transform: translateY(-10px) scale(1.08);
  outline: none;
}
html[data-tv="1"] .tv-home .tv-btn:focus .icon,
html[data-tv="1"] .tv-home .tv-btn:focus-visible .icon {
  box-shadow:
    0 0 0 4px #050308,
    0 0 0 10px #7cffd4,
    0 16px 28px #000c,
    0 0 32px #2ee6a6;
  border-color: #fff;
}
html[data-tv="1"] .tv-remote-hint { display: block; }
.tv-remote-hint {
  display: none;
  margin: 13px 0 0;
  font-size: clamp(13px, 1.6vmin, 18px);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #9aa3ad;
  text-shadow: 0 2px 8px #000;
}
html[data-tv="1"] .unmute-pop,
html[data-tv="1"] #unmute {
  font-size: 28px;
  padding: 18px 36px;
  min-height: 56px;
}
html[data-tv="1"] .cinema-ui { padding: 4.5vh 5.5vw; }
html[data-tv="1"] .cinema-ui .tv-btn,
html[data-tv="1"] .btn,
html[data-tv="1"] .chip {
  min-height: 48px;
  font-size: 18px;
  padding: 14px 22px;
}
html[data-tv="1"] .cinema-ui .tv-btn:focus,
html[data-tv="1"] .btn:focus,
html[data-tv="1"] .chip:focus,
html[data-tv="1"] .card:focus,
html[data-tv="1"] .iptv-rail-item:focus,
html[data-tv="1"] .poster:focus,
html[data-tv="1"] .hero:focus {
  outline: 4px solid #7cffd4;
  outline-offset: 4px;
}
html[data-tv="1"] .player-page,
html[data-tv="1"] .main { padding-left: var(--tv-safe-x); padding-right: var(--tv-safe-x); }
html[data-tv="1"] .iptv-grid { gap: 22px; }
html[data-tv="1"] .tv-home .tv-btn .label { font-size: clamp(14px, 1.8vmin, 20px); }
html[data-tv="1"] .header {
  height: clamp(64px, 8.4vmin, 104px);
  padding: 0 clamp(56px, 8vmin, 108px);
}
html[data-tv="1"] .nav-toggle {
  width: clamp(44px, 6vmin, 72px);
  height: clamp(44px, 6vmin, 72px);
  font-size: clamp(22px, 3.2vmin, 38px);
}
html[data-tv="1"] .sidebar {
  width: clamp(280px, 32vmin, 460px);
  top: clamp(64px, 8.4vmin, 104px);
}
html[data-tv="1"] .nav-item {
  font-size: clamp(16px, 2.3vmin, 28px);
  min-height: clamp(40px, 5.4vmin, 62px);
  padding: clamp(10px, 1.4vmin, 18px) clamp(12px, 1.6vmin, 22px);
}
html[data-tv="1"] .nav-label { font-size: clamp(12px, 1.5vmin, 18px); }
html[data-tv="1"] .nav-hide { font-size: clamp(15px, 2.1vmin, 24px); }
html[data-tv="1"] .brand { font-size: clamp(16px, 2.4vmin, 28px); }
html[data-tv="1"] .logo { width: clamp(36px, 5vmin, 64px); height: clamp(36px, 5vmin, 64px); }
html[data-tv="1"] .search input { font-size: clamp(14px, 2vmin, 22px); padding: clamp(8px, 1.2vmin, 16px) 12px; }
html[data-tv="1"] video::-webkit-media-controls { display: none !important; }
