/* ==========================================================================
   MNHUT CINEMA 4K VIPP - MULTI-PLATFORM DEDICATED THEMES & LAYOUTS
   Each platform target has an independent color personality, layout, and ergonomics:
   - 🌐 Web Cinema: Luxury Gold & Obsidian (#f5b738 / #030509)
   - 📱 Mobile App (iOS / Android): Cyberpunk Neon Aurora (#00f2fe Cyan & #ff007f Pink)
   - 💻 Windows Desktop PC: Sapphire Titanium Studio (#38bdf8 & #2563eb) + Windows Titlebar + Sidebar Rail
   - 📺 Smart TV / Android TV: Emerald Matrix & PS5 Cobalt (#10b981 & #0070d1) + 10-foot Big Picture UI + Remote HUD
   ========================================================================== */

/* ====================================================
   1. 🌐 WEB BROWSER: LUXURY GOLD & OBSIDIAN CINEMA
   ==================================================== */
html.platform-web body,
body[data-app="web"] {
  --bg-deep: #030509;
  --bg-surface: #080b13;
  --bg-card: rgba(15, 20, 32, 0.75);
  --accent-gold: #f5b738;
  --accent-gold-glow: rgba(245, 183, 56, 0.45);
  --accent-secondary: #e09f1f;
  --border-subtle: rgba(245, 183, 56, 0.18);
  --border-glow: rgba(245, 183, 56, 0.45);
  --card-radius: 14px;
}

html.platform-web .brand-avatar,
body[data-app="web"] .brand-avatar,
html.platform-web .brand-symbol,
body[data-app="web"] .brand-symbol {
  background: linear-gradient(135deg, #f5b738 0%, #e09f1f 100%) !important;
  color: #030509 !important;
  box-shadow: 0 0 20px rgba(245, 183, 56, 0.5) !important;
}

html.platform-web .logo-gradient,
body[data-app="web"] .logo-gradient {
  background: linear-gradient(135deg, #ffffff 30%, #f5b738 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

html.platform-web .btn-primary,
body[data-app="web"] .btn-primary,
html.platform-web .btn-primary-cinema,
body[data-app="web"] .btn-primary-cinema {
  background: linear-gradient(135deg, #f5b738 0%, #d99114 100%) !important;
  color: #030509 !important;
  font-weight: 800 !important;
  box-shadow: 0 6px 20px rgba(245, 183, 56, 0.35) !important;
}

html.platform-web .badge-noads,
body[data-app="web"] .badge-noads {
  background: rgba(245, 183, 56, 0.15) !important;
  color: #f5b738 !important;
  border: 1px solid rgba(245, 183, 56, 0.4) !important;
}

html.platform-web .movie-card:hover,
body[data-app="web"] .movie-card:hover {
  border-color: rgba(245, 183, 56, 0.5) !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.8), 0 0 25px rgba(245, 183, 56, 0.25) !important;
}


/* ====================================================
   2. 📱 MOBILE APP (IOS & ANDROID): CYBERPUNK NEON AURORA
   ==================================================== */
html.platform-ios body,
html.platform-android body,
body[data-app="mobile"] {
  --bg-deep: #05070f !important;
  --bg-surface: #090e1c !important;
  --bg-card: rgba(12, 18, 36, 0.88) !important;
  --accent-gold: #00f2fe !important; /* Switch main accent to Cyber Cyan */
  --accent-gold-glow: rgba(0, 242, 254, 0.55) !important;
  --accent-secondary: #ff007f !important; /* Hot Neon Pink */
  --border-subtle: rgba(0, 242, 254, 0.22) !important;
  --border-glow: rgba(255, 0, 127, 0.45) !important;
  background-color: #05070f !important;
  background-image: 
    linear-gradient(rgba(0, 242, 254, 0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0, 242, 254, 0.03) 1px, transparent 1px) !important;
  background-size: 24px 24px !important;
}

html.platform-ios .brand-avatar,
html.platform-android .brand-avatar,
body[data-app="mobile"] .brand-avatar,
html.platform-ios .brand-symbol,
html.platform-android .brand-symbol,
body[data-app="mobile"] .brand-symbol {
  background: linear-gradient(135deg, #00f2fe 0%, #ff007f 100%) !important;
  color: #fff !important;
  box-shadow: 0 0 25px rgba(0, 242, 254, 0.7) !important;
  clip-path: polygon(0 0, 100% 0, 85% 100%, 0 100%);
}

html.platform-ios .logo-gradient,
html.platform-android .logo-gradient,
body[data-app="mobile"] .logo-gradient {
  background: linear-gradient(135deg, #00f2fe 10%, #ffffff 50%, #ff007f 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  filter: drop-shadow(0 0 12px rgba(0, 242, 254, 0.4));
}

html.platform-ios .badge-noads,
html.platform-android .badge-noads,
body[data-app="mobile"] .badge-noads {
  background: rgba(255, 0, 127, 0.18) !important;
  color: #ff007f !important;
  border: 1px solid rgba(255, 0, 127, 0.5) !important;
  box-shadow: 0 0 12px rgba(255, 0, 127, 0.3);
}

html.platform-ios .btn-primary,
html.platform-android .btn-primary,
body[data-app="mobile"] .btn-primary,
html.platform-ios .btn-primary-cinema,
html.platform-android .btn-primary-cinema,
body[data-app="mobile"] .btn-primary-cinema {
  background: linear-gradient(135deg, #00f2fe 0%, #ff007f 100%) !important;
  color: #fff !important;
  border-radius: 10px !important;
  font-weight: 800 !important;
  box-shadow: 0 0 25px rgba(0, 242, 254, 0.5), 0 4px 15px rgba(255, 0, 127, 0.35) !important;
}

html.platform-ios .movie-card:hover,
html.platform-android .movie-card:hover,
body[data-app="mobile"] .movie-card:hover {
  border-color: #00f2fe !important;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.8), 0 0 22px rgba(0, 242, 254, 0.4) !important;
  transform: translateY(-4px) scale(1.02) !important;
}

html.platform-ios .bottom-tab-bar,
html.platform-android .bottom-tab-bar,
body[data-app="mobile"] .bottom-tab-bar {
  background: rgba(5, 7, 15, 0.94) !important;
  border-top: 1px solid rgba(0, 242, 254, 0.25) !important;
  box-shadow: 0 -4px 20px rgba(0, 242, 254, 0.15) !important;
}

html.platform-ios .tab-item.active,
html.platform-android .tab-item.active,
body[data-app="mobile"] .tab-item.active {
  color: #00f2fe !important;
  filter: drop-shadow(0 0 8px #00f2fe);
}


/* ====================================================
   3. 💻 WINDOWS DESKTOP APP: SAPPHIRE TITANIUM STUDIO
   ==================================================== */
html.platform-windows body,
body[data-app="desktop"] {
  --bg-deep: #080d1a !important;
  --bg-surface: #0e1629 !important;
  --bg-card: rgba(18, 27, 48, 0.8) !important;
  --accent-gold: #38bdf8 !important; /* Sapphire Ice Blue */
  --accent-gold-glow: rgba(56, 189, 248, 0.55) !important;
  --accent-secondary: #2563eb !important; /* Electric Cobalt */
  --border-subtle: rgba(56, 189, 248, 0.2) !important;
  --border-glow: rgba(37, 99, 235, 0.45) !important;
  padding-left: 72px !important;
  padding-top: 36px !important;
  box-sizing: border-box !important;
}

/* Windows Native Titlebar */
.desktop-titlebar {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 36px;
  background: #060913;
  border-bottom: 1px solid rgba(56, 189, 248, 0.2);
  z-index: 10001;
  align-items: center;
  justify-content: space-between;
  padding: 0 12px;
  user-select: none;
  -webkit-app-region: drag;
}

html.platform-windows .desktop-titlebar,
body[data-app="desktop"] .desktop-titlebar {
  display: flex !important;
}

.desktop-titlebar-left {
  display: flex;
  align-items: center;
  gap: 10px;
}
.desktop-app-icon {
  width: 20px;
  height: 20px;
  background: linear-gradient(135deg, #38bdf8 0%, #2563eb 100%);
  color: #fff;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 900;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 10px rgba(56, 189, 248, 0.6);
}
.desktop-app-name {
  font-size: 12px;
  font-weight: 700;
  color: #e2e8f0;
  letter-spacing: 0.05em;
}
.desktop-tech-chip {
  font-size: 10px;
  font-weight: 700;
  color: #38bdf8;
  background: rgba(56, 189, 248, 0.12);
  border: 1px solid rgba(56, 189, 248, 0.35);
  border-radius: 4px;
  padding: 1px 8px;
}
.desktop-window-controls {
  display: flex;
  align-items: center;
  -webkit-app-region: no-drag;
}
.win-ctrl-btn {
  width: 44px;
  height: 36px;
  border: none;
  background: transparent;
  color: #94a3b8;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
}
.win-ctrl-btn:hover {
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}
.win-ctrl-btn.win-close-btn:hover {
  background: #e11d48;
  color: #fff;
}

/* Left Sidebar Rail */
.desktop-sidebar-rail {
  display: none;
  position: fixed;
  top: 36px;
  left: 0;
  bottom: 0;
  width: 72px;
  background: rgba(8, 13, 26, 0.96);
  border-right: 1px solid rgba(56, 189, 248, 0.2);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  z-index: 9999;
  flex-direction: column;
  align-items: center;
  padding: 18px 0;
  gap: 14px;
}

html.platform-windows .desktop-sidebar-rail,
body[data-app="desktop"] .desktop-sidebar-rail {
  display: flex !important;
}

.sidebar-item {
  width: 52px;
  height: 52px;
  border-radius: 12px;
  border: 1px solid transparent;
  background: transparent;
  color: #94a3b8;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.sidebar-item svg {
  width: 20px;
  height: 20px;
}
.sidebar-item span {
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
}
.sidebar-item:hover {
  color: #38bdf8;
  background: rgba(56, 189, 248, 0.1);
  border-color: rgba(56, 189, 248, 0.3);
}
.sidebar-item.active {
  color: #fff;
  background: linear-gradient(135deg, rgba(56, 189, 248, 0.25) 0%, rgba(37, 99, 235, 0.35) 100%);
  border-color: #38bdf8;
  box-shadow: 0 0 15px rgba(56, 189, 248, 0.4);
}

html.platform-windows .brand-avatar,
body[data-app="desktop"] .brand-avatar,
html.platform-windows .brand-symbol,
body[data-app="desktop"] .brand-symbol {
  background: linear-gradient(135deg, #38bdf8 0%, #2563eb 100%) !important;
  color: #fff !important;
  box-shadow: 0 0 25px rgba(56, 189, 248, 0.6) !important;
  border-radius: 10px !important;
}

html.platform-windows .logo-gradient,
body[data-app="desktop"] .logo-gradient {
  background: linear-gradient(135deg, #ffffff 20%, #38bdf8 70%, #2563eb 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

html.platform-windows .btn-primary,
body[data-app="desktop"] .btn-primary,
html.platform-windows .btn-primary-cinema,
body[data-app="desktop"] .btn-primary-cinema {
  background: linear-gradient(135deg, #38bdf8 0%, #2563eb 100%) !important;
  color: #fff !important;
  font-weight: 800 !important;
  box-shadow: 0 0 25px rgba(56, 189, 248, 0.5) !important;
  border-radius: 10px !important;
}

html.platform-windows .movie-card:hover,
body[data-app="desktop"] .movie-card:hover {
  border-color: #38bdf8 !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.8), 0 0 25px rgba(56, 189, 248, 0.35) !important;
}


/* ====================================================
   4. 📺 SMART TV / ANDROID TV: EMERALD MATRIX & PS5 COBALT
   ==================================================== */
html.platform-android-tv body,
html.tv-mode body,
body[data-app="tv"] {
  --bg-deep: #010408 !important;
  --bg-surface: #030812 !important;
  --bg-card: rgba(3, 14, 28, 0.88) !important;
  --accent-gold: #10b981 !important; /* Matrix Emerald */
  --accent-gold-glow: rgba(16, 185, 129, 0.65) !important;
  --accent-secondary: #0070d1 !important; /* PS5 Cobalt */
  --border-subtle: rgba(16, 185, 129, 0.25) !important;
  --border-glow: rgba(0, 112, 209, 0.6) !important;
  font-size: 18px !important;
}

/* TV Remote HUD Guide */
.tv-remote-hud {
  display: none;
  position: fixed;
  bottom: 24px;
  right: 36px;
  z-index: 220;
  align-items: center;
  gap: 12px;
  padding: 8px 18px;
  background: rgba(3, 8, 18, 0.92);
  border: 1px solid rgba(16, 185, 129, 0.4);
  border-radius: 9999px;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  box-shadow: 0 10px 35px rgba(0, 0, 0, 0.85), 0 0 25px rgba(16, 185, 129, 0.25);
}

html.platform-android-tv .tv-remote-hud,
html.tv-mode .tv-remote-hud,
body[data-app="tv"] .tv-remote-hud {
  display: flex !important;
}

.tv-hud-badge {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  color: #fff;
}
.tv-hud-key {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 3px 8px;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 900;
}
.key-enter { background: #10b981; color: #000; }
.key-back { background: #f43f5e; color: #fff; }
.key-nav { background: rgba(255, 255, 255, 0.18); color: #00e5ff; }
.key-menu { background: #0070d1; color: #fff; }

html.platform-android-tv .brand-avatar,
html.tv-mode .brand-avatar,
body[data-app="tv"] .brand-avatar,
html.platform-android-tv .brand-symbol,
html.tv-mode .brand-symbol,
body[data-app="tv"] .brand-symbol {
  background: linear-gradient(135deg, #10b981 0%, #0070d1 100%) !important;
  color: #fff !important;
  box-shadow: 0 0 30px rgba(16, 185, 129, 0.8) !important;
  border-radius: 10px !important;
}

html.platform-android-tv .logo-gradient,
html.tv-mode .logo-gradient,
body[data-app="tv"] .logo-gradient {
  background: linear-gradient(135deg, #ffffff 20%, #10b981 70%, #0070d1 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

html.platform-android-tv .btn-primary,
html.tv-mode .btn-primary,
body[data-app="tv"] .btn-primary,
html.platform-android-tv .btn-primary-cinema,
html.tv-mode .btn-primary-cinema,
body[data-app="tv"] .btn-primary-cinema {
  background: linear-gradient(135deg, #10b981 0%, #0070d1 100%) !important;
  color: #fff !important;
  border-radius: 9999px !important;
  font-weight: 800 !important;
  box-shadow: 0 0 35px rgba(16, 185, 129, 0.6) !important;
}

/* TV Focus Glow on D-pad navigation */
html.platform-android-tv .movie-card:hover,
html.tv-mode .movie-card:hover,
body[data-app="tv"] .movie-card:hover,
html.platform-android-tv .movie-card:focus-visible,
html.tv-mode .movie-card:focus-visible,
body[data-app="tv"] .movie-card:focus-visible,
html.platform-android-tv :focus-visible,
html.tv-mode :focus-visible,
body[data-app="tv"] :focus-visible {
  outline: none !important;
  border-color: #10b981 !important;
  box-shadow: 0 0 40px rgba(16, 185, 129, 0.75), 0 0 15px rgba(0, 112, 209, 0.5) !important;
  transform: translateY(-8px) scale(1.06) !important;
  transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

/* ====================================================
   5. PLATFORM APP SELECTOR DOCK (FLOATING PREVIEW PILL)
   ==================================================== */
.platform-switcher-dock {
  position: fixed;
  top: 74px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 180;
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 5px 8px;
  background: rgba(8, 12, 24, 0.88);
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 9999px;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.75);
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
.platform-switcher-dock:hover {
  border-color: rgba(255, 255, 255, 0.35);
  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.85);
}
.switcher-label {
  font-size: 10px;
  font-weight: 800;
  color: #94a3b8;
  letter-spacing: 0.1em;
  padding: 0 6px 0 8px;
}
.platform-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 13px;
  border-radius: 9999px;
  background: transparent;
  border: 1px solid transparent;
  color: #cbd5e1;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  white-space: nowrap;
}
.platform-btn:hover {
  color: #fff;
  background: rgba(255, 255, 255, 0.08);
}
.platform-btn.active[data-target="web"] {
  color: #000;
  background: #f5b738;
  border-color: #f5b738;
  box-shadow: 0 0 18px rgba(245, 183, 56, 0.5);
  font-weight: 800;
}
.platform-btn.active[data-target="mobile"] {
  color: #fff;
  background: linear-gradient(135deg, #00f2fe 0%, #ff007f 100%);
  border-color: #00f2fe;
  box-shadow: 0 0 18px rgba(0, 242, 254, 0.5);
  font-weight: 800;
}
.platform-btn.active[data-target="desktop"] {
  color: #fff;
  background: linear-gradient(135deg, #38bdf8 0%, #2563eb 100%);
  border-color: #38bdf8;
  box-shadow: 0 0 18px rgba(56, 189, 248, 0.5);
  font-weight: 800;
}
.platform-btn.active[data-target="tv"] {
  color: #000;
  background: linear-gradient(135deg, #10b981 0%, #00e5ff 100%);
  border-color: #10b981;
  box-shadow: 0 0 18px rgba(16, 185, 129, 0.5);
  font-weight: 800;
}

@media (max-width: 768px) {
  .platform-switcher-dock {
    top: 64px;
    padding: 3px 6px;
    gap: 3px;
  }
  .switcher-label {
    display: none;
  }
  .platform-btn {
    padding: 5px 9px;
    font-size: 10px;
    gap: 3px;
  }
}
