/* Neo Player Pro - NeoPlay Ultra-Lightweight & High-Performance Theme */

:root {
  /* NeoPlay.site Signature Palette */
  --accent-1: #0066ff;
  --accent-cyan: #00e5ff;
  --accent-teal: #2cb67d;
  --bg-dark: #0a0e17;
  --bg-card: #121824;
  --bg-card-hover: #192234;
  --text-primary: #ffffff;
  --text-secondary: #94a3b8;
  --gradient-neoplay: linear-gradient(135deg, #0066ff 0%, #00e5ff 100%);
  --radius-lg: 14px;
  --radius-md: 10px;
  --radius-pill: 9999px;
}

/* Base typography sem recálculo pesado */
body, html, #root, * {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

/* Fundo ultra-leve (cor sólida + aceleração via hardware, zero lag) */
body, html {
  background-color: var(--bg-dark) !important;
  color: var(--text-primary) !important;
  overflow: hidden;
}

/* Desativa blur, filtros pesados, sombras e renderização redundante para TV */
*, *::before, *::after {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  filter: none !important;
  -webkit-filter: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

/* Background leve sem orbes radiais que drenam GPU/CPU */
._background_1jmz7_25,
div[class*="_background_"] {
  background: #0a0e17 !important;
  background-image: none !important;
  transform: translateZ(0); /* Força camada de hardware */
}

div[class*="_background_"]::before,
div[class*="_background_"]::after {
  display: none !important;
}

/* Oculta logos antigas do IBO */
._logo_n47nb_136,
._logo_8dcyo_68,
img[alt*="IBO" i],
img[src*="logo-ibo" i],
img[src*="logo-400" i],
img[src*="data:image" i] {
  display: none !important;
}

/* Logotipo textual leve com gradiente otimizado */
._logoContainer_n47nb_136,
div[class*="_logoContainer_"] {
  margin-bottom: 20px !important;
  display: flex !important;
  align-items: center !important;
}

._logoContainer_n47nb_136::before,
div[class*="_logoContainer_"]::before {
  content: "▶ NeoPlay" !important;
  font-weight: 800 !important;
  font-size: 34px !important;
  letter-spacing: -0.5px !important;
  color: #00e5ff !important;
  background: var(--gradient-neoplay) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  display: inline-block !important;
}

/* Títulos */
h1._welcomeTitle_n47nb_155,
._welcomeTitle_n47nb_155,
[class*="welcomeTitle"] {
  font-weight: 800 !important;
  color: #ffffff !important;
  background: var(--gradient-neoplay) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  margin-bottom: 6px !important;
}

/* Botões e cards ultra rápidos sem atraso de transição */
[class*="_methodCard_"],
[class*="_button_"],
button {
  border-radius: var(--radius-md) !important;
  transition: transform 0.1s ease, border-color 0.1s ease !important;
  will-change: transform;
}

/* Focus rápido sem box-shadows borrados */
*:focus, .focused, [data-focused="true"] {
  outline: none !important;
  border-color: #00e5ff !important;
  box-shadow: 0 0 0 2px #00e5ff !important;
  transform: scale(1.02) !important;
}

/* Botão primário ativo */
button[class*="_primary_"],
.btn-primary {
  background: var(--gradient-neoplay) !important;
  color: #fff !important;
  border: none !important;
}

/* Cards sem filtros que causam travamento */
._macCard_n47nb_574,
._qrCard_n47nb_608,
div[class*="_macCard_"],
div[class*="_qrCard_"] {
  background: #121824 !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: var(--radius-lg) !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4) !important;
}

/* QR highlight */
._qrHighlight_n47nb_632 {
  color: var(--accent-cyan) !important;
  font-weight: 700 !important;
}

/* Marca textual */
.brand-logo-text {
  font-weight: 800;
  font-size: 22px;
  color: #00e5ff;
}

/* ==============================================================
   HIGH-PERFORMANCE CATALOG, MOVIES & SERIES BROWSING (ZERO LAG)
   ============================================================== */

/* 1. Elimina animações pesadas de background que consomem GPU/CPU */
[class*="_driftUp_"],
[class*="_driftDown_"],
[class*="_blobA_"],
[class*="_blobB_"],
[class*="_aurora_"],
[class*="_wall_"],
[class*="_halo_"],
[class*="_shine_"],
[class*="_breathe_"],
[class*="_sweep_"] {
  animation: none !important;
  display: none !important;
}

/* 2. Remove todos os filtros de blur em ambient poster e backdrops de filmes */
[class*="_ambient_"],
[class*="_backdropImageBlurred_"],
[class*="_heavyBlur_"],
[class*="_ambientGlow_"] {
  filter: none !important;
  -webkit-filter: none !important;
  display: none !important;
}

/* 3. Desativa efeito marquee/rolagem contínua de texto em cards (evita repaints constantes) */
[class*="_marquee_"],
[class*="_title_"][class*="_marquee_"] {
  animation: none !important;
  text-overflow: ellipsis !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}

/* 4. Otimização extrema de Cards de Filmes e Séries (GPU Containment & Fast Focus) */
[class*="_card_60qrh_"],
[class*="_poster_1199p_"],
[class*="_card_14e1d_"],
[class*="_tile_r6q1p_"],
[class*="_topRankedCard_"],
[class*="_previewCard_"],
[class*="_gridItem_"] {
  contain: layout paint !important;
  transform: translateZ(0) !important;
  transition: transform 0.08s ease-out, border-color 0.08s ease-out !important;
  box-shadow: none !important;
  will-change: transform !important;
}

/* Imagens dos posters: renderização nativa rápida sem reflow */
[class*="_card_60qrh_"] img,
[class*="_poster_1199p_"] img,
[class*="_card_14e1d_"] img,
[class*="_topRankedCard_"] img,
[class*="_previewCard_"] img,
img[class*="_poster_"],
img[class*="_cover_"] {
  image-rendering: auto !important;
  backface-visibility: hidden !important;
  transform: translateZ(0) !important;
}

/* Focus rápido com borda sólida neon (elimina sombras borradas dinâmicas) */
[class*="_card_60qrh_"][data-focused="true"],
[class*="_card_60qrh_"].focused,
[class*="_posterFocused_"],
[class*="_card_14e1d_"]._focused_14e1d_43,
[class*="_card_14e1d_"][data-focused="true"],
[class*="_topRankedCard_"][data-focused="true"],
[class*="_tile_r6q1p_"][data-focused="true"],
[class*="_previewCard_"][data-focused="true"] {
  transform: scale(1.05) translateZ(0) !important;
  border: 2px solid #00e5ff !important;
  box-shadow: 0 0 12px rgba(0, 229, 255, 0.4) !important;
  z-index: 10 !important;
}

/* 5. Trilhos de rolagem de carrossel e listas de episódios/categorias */
[class*="_carouselTrack_"],
[class*="_grid_1199p_"],
[class*="_list_amgqi_"],
[class*="_episodeTrack_"],
[class*="_cardsContainer_"],
[class*="_rowList_"] {
  -webkit-overflow-scrolling: touch !important;
  contain: content !important;
  transform: translateZ(0) !important;
}

/* Detalhes do filme/série: acelera renderização da sinopse e backdrop */
[class*="_detailsModal_"],
[class*="_mediaDetails_"],
[class*="_backdrop_"] {
  contain: layout !important;
}

/* ==============================================================
   TV HARDWARE ULTRA-PERFORMANCE PROFILE (TIZEN / WEBOS / FIRETV)
   ============================================================== */

/* Remove qualquer keyframe animation não essencial na TV */
*, *::before, *::after {
  animation-duration: 0s !important;
  animation-iteration-count: 1 !important;
}

/* Preserva apenas spinners de carregamento explícitos */
[class*="spinner"], [class*="ring"] {
  animation-duration: 1s !important;
  animation-iteration-count: infinite !important;
}

/* Transições ultra-leves (ou instantâneas) para foco de controle remoto */
button, a, [role="button"], [data-focused="true"], .focused, *:focus {
  transition: transform 0.05s ease-out, border-color 0.05s ease-out !important;
}

/* Elemento com foco na TV com destaque limpo e leve */
*:focus, .focused, [data-focused="true"] {
  outline: none !important;
  border-color: #00e5ff !important;
  box-shadow: 0 0 0 2px #00e5ff !important;
}

/* Botao Atualizar embaixo do QR-Code */
.btn-refresh-qr {
  transition: transform 0.12s ease, box-shadow 0.12s ease, border-color 0.12s ease !important;
  user-select: none !important;
  -webkit-user-select: none !important;
}
.btn-refresh-qr:hover,
.btn-refresh-qr:focus,
.btn-refresh-qr.focused,
.btn-refresh-qr[data-focused="true"] {
  transform: scale(1.08) !important;
  outline: 2px solid #ffffff !important;
  border-color: #ffffff !important;
  box-shadow: 0 0 22px rgba(0, 229, 255, 0.95), 0 0 8px #ffffff !important;
}


/* ==============================================================
   MOBILE & TOUCH OPTIMIZATION (COMPATIBILIDADE PURA)
   ============================================================== */

/* Permite rolagem natural na tela quando visualizado em smartphone */
@media screen and (max-width: 1024px) {
  html, body {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    position: relative !important;
    height: auto !important;
    min-height: 100% !important;
  }

  #root {
    min-height: 100vh !important;
    height: auto !important;
    overflow: visible !important;
    display: block !important;
  }

  /* Ajuste no container de login para não estourar a tela em smartphones */
  div[class*="_container_n47nb_"],
  div[class*="login_container"] {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: auto !important;
    padding: 24px 16px 40px 16px !important;
    box-sizing: border-box !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
  }

  div[class*="_container_n47nb_"] > * + * {
    margin-left: 0 !important;
    margin-top: 24px !important;
  }

  div[class*="_formSide_n47nb_"] {
    width: 100% !important;
    max-width: 520px !important;
    padding-right: 0 !important;
  }

  div[class*="_qrSide_n47nb_"] {
    width: 100% !important;
    max-width: 420px !important;
  }

  /* Garante que botões e links respondam imediatamente ao toque */
  button, input, [role="button"], a {
    touch-action: manipulation !important;
    cursor: pointer !important;
    -webkit-tap-highlight-color: rgba(0, 229, 255, 0.2) !important;
  }
}
