/* Estilos premium de barra de navegación - Estilo StreamTube */
#header.main {
    background: #0b0f19 !important; /* Fondo ultra oscuro moderno (StreamTube) */
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.5) !important;
    height: 75px !important;
    transition: all 0.3s ease !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
}

/* Soporte para barra de administración de WordPress */
body.admin-bar #header.main {
    top: 32px !important;
}
@media screen and (max-width: 782px) {
    body.admin-bar #header.main {
        top: 46px !important;
    }
}

#header.main .hbox {
    /* Mantiene el ancho centrado original de la web */
    height: 75px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}

#header.main .fix-hidden {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    justify-content: space-between !important;
    overflow: visible !important; /* IMPORTANTE: Permite que los submenús y dropdowns floten sin recortarse */
    height: 75px !important;
}

#header.main .hbox .logo {
    padding: 0 !important;
    height: auto !important;
    display: flex !important;
    align-items: center !important;
    background: transparent !important;
}

#header.main .hbox .logo img {
    height: 46px !important;
    width: auto !important;
}

/* Menú de Navegación */
.head-main-nav {
    margin-left: 40px !important;
    margin-right: auto !important;
}

.head-main-nav ul.main-header {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
}

.head-main-nav ul.main-header li {
    position: relative !important;
}

.head-main-nav ul.main-header li a {
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #94a3b8 !important;
    padding: 10px 18px !important;
    border-radius: 8px !important;
    transition: all 0.2s ease-in-out !important;
    line-height: normal !important;
    float: none !important;
    display: flex !important;
    align-items: center !important;
}

.head-main-nav ul.main-header li a:hover,
.head-main-nav ul.main-header li.current-menu-item a {
    color: #fff !important;
    background: rgba(255, 255, 255, 0.06) !important;
}

/* Submenús */
.head-main-nav ul.main-header li ul.sub-menu {
    top: 55px !important;
    background: #0d121d !important; /* Fondo oscuro de alta calidad */
    border: 1px solid #1e293b !important;
    border-radius: 12px !important;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.6) !important;
    padding: 10px 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(10px) !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    display: block !important;
    z-index: 99999 !important; /* Garantizar que estén al frente */
    width: 220px !important; /* Ancho elegante para submenús de una columna */
}

.head-main-nav ul.main-header li:hover ul.sub-menu {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
}

.head-main-nav ul.main-header li ul.sub-menu li {
    width: 100% !important;
    float: none !important;
    display: block !important;
    padding: 0 10px !important; /* Margen para no tocar bordes */
}

.head-main-nav ul.main-header li ul.sub-menu li a {
    padding: 10px 15px !important;
    font-size: 14px !important;
    color: #e2e8f0 !important; /* Texto claro de alta legibilidad */
    background: rgba(255, 255, 255, 0.03) !important; /* Fondo de tarjeta sutil */
    border-radius: 8px !important; /* Bordes redondeados como el de género */
    font-weight: 600 !important;
    text-transform: none !important;
    transition: all 0.2s ease !important;
    display: block !important;
    margin: 4px 0 !important; /* Espaciado vertical entre tarjetas */
    float: none !important;
}

.head-main-nav ul.main-header li ul.sub-menu li a:hover {
    color: #00bcff !important;
    background: rgba(0, 188, 255, 0.08) !important;
}

.head-main-nav ul.main-header li ul.sub-menu li a:before {
    display: none !important; /* Quitar flecha fea predeterminada */
}

/* Estilo para dropdown de Géneros y listados grandes (Multicolumna) */
.head-main-nav ul.main-header li.genres ul.sub-menu {
    max-width: 550px !important;
    width: 500px !important;
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 4px !important;
    padding: 15px !important;
}

.head-main-nav ul.main-header li.genres ul.sub-menu li {
    padding: 0 !important; /* Restablecer padding en grilla */
}

.head-main-nav ul.main-header li.genres ul.sub-menu li a {
    border-radius: 6px !important;
    padding: 10px 15px !important;
    display: block !important;
    float: none !important;
    margin: 0 !important; /* Usar el gap de la grilla */
}

/* Buscador y Elementos de Cabecera */
.headitems {
    display: flex !important;
    align-items: center !important;
    gap: 20px !important;
    float: none !important;
}

.headitems .search {
    float: none !important;
    padding: 0 !important;
    width: auto !important;
}

.headitems .search form {
    background: rgba(30, 41, 59, 0.6) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 30px !important;
    overflow: hidden !important;
    transition: all 0.25s ease !important;
    display: flex !important;
    align-items: center !important;
    padding-right: 5px !important;
}

.headitems .search form:hover,
.headitems .search form:focus-within {
    background: rgba(30, 41, 59, 0.9) !important;
    border-color: #00bcff !important;
    box-shadow: 0 0 0 3px rgba(0, 188, 255, 0.15) !important;
}

.headitems .search form input[type=text] {
    height: 38px !important;
    width: 220px !important;
    padding: 0 15px 0 20px !important;
    font-size: 14px !important;
    background: transparent !important;
    border: 0 !important;
    color: #fff !important;
    font-weight: 500 !important;
}

.headitems .search form input[type=text]::placeholder {
    color: #64748b !important;
}

.headitems .search form button[type=submit] {
    position: relative !important;
    right: 0 !important;
    top: 0 !important;
    padding: 0 15px !important;
    height: 38px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    color: #94a3b8 !important;
    border: 0 !important;
    cursor: pointer !important;
    transition: color 0.2s !important;
}

.headitems .search form button[type=submit]:hover {
    color: #00bcff !important;
}

.headitems.register_active>.search {
    width: auto !important;
}

/* Dropdown de Usuario Premium */
.st-user-dropdown {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
}

.st-user-trigger {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 6px 14px 6px 6px !important;
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 30px !important;
    transition: all 0.2s ease !important;
    cursor: pointer !important;
}

.st-user-trigger:hover {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 255, 255, 0.15) !important;
}

.gravatar-img-wrapper {
    position: relative !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    overflow: visible !important;
}

.gravatar-img-wrapper img {
    width: 100% !important;
    height: 100% !important;
    border-radius: 50% !important;
    border: 1.5px solid #00bcff !important;
    object-fit: cover !important;
}

.admin-badge {
    position: absolute !important;
    top: -5px !important;
    right: -5px !important;
    background: #ef4444 !important;
    color: #fff !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    padding: 1px 5px !important;
    border-radius: 10px !important;
    line-height: normal !important;
    border: 1px solid #0f172a !important;
}

.st-user-name {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #e2e8f0 !important;
    max-width: 120px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.caret-icon {
    font-size: 11px !important;
    color: #64748b !important;
    transition: transform 0.2s !important;
}

.st-user-dropdown:hover .caret-icon {
    transform: rotate(180deg) !important;
    color: #00bcff !important;
}

/* Panel Desplegable */
.st-dropdown-menu {
    position: absolute !important;
    top: 50px !important;
    right: 0 !important;
    width: 260px !important;
    background: #0d121d !important;
    border: 1px solid #1e293b !important;
    border-radius: 16px !important;
    box-shadow: 0 15px 35px -5px rgba(0, 0, 0, 0.6) !important;
    padding: 16px 0 !important;
    z-index: 99999 !important; /* IMPORTANTE: Asegura que flote sobre todo */
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(10px) !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.st-user-dropdown:hover .st-dropdown-menu {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
}

.st-dropdown-header {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 0 20px 14px 20px !important;
}

.user-avatar-large img {
    width: 44px !important;
    height: 44px !important;
    border-radius: 50% !important;
    border: 2px solid #00bcff !important;
    object-fit: cover !important;
}

.user-meta-details {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
}

.user-display-name {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #fff !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.user-email-address {
    font-size: 11px !important;
    color: #64748b !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    margin-top: 1px !important;
}

.st-dropdown-divider {
    height: 1px !important;
    background: #1e293b !important;
    margin: 8px 0 !important;
}

.st-dropdown-item {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 10px 20px !important;
    color: #94a3b8 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.st-dropdown-item:hover {
    color: #fff !important;
    background: rgba(255, 255, 255, 0.05) !important;
}

.st-dropdown-item i {
    font-size: 15px !important;
    color: #64748b !important;
    width: 18px !important;
    text-align: center !important;
    transition: color 0.2s !important;
}

.st-dropdown-item:hover i {
    color: #00bcff !important;
}

.st-dropdown-item.logout-item:hover {
    background: rgba(239, 68, 68, 0.08) !important;
    color: #ef4444 !important;
}

.st-dropdown-item.logout-item:hover i {
    color: #ef4444 !important;
}

/* Botón Iniciar Sesión para invitados */
.st-login-btn {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 18px !important;
    background: linear-gradient(135deg, #00bcff, #408bea) !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    border-radius: 10px !important;
    text-decoration: none !important;
    box-shadow: 0 4px 10px rgba(0, 188, 255, 0.3) !important;
    transition: all 0.25s ease !important;
}

.st-login-btn:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 15px rgba(0, 188, 255, 0.45) !important;
}

/* CSS Grid para Galería de Capturas (StreamTube) */
.galeria {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)) !important;
    gap: 12px !important;
    width: 100% !important;
    margin-top: 15px !important;
    padding: 0 !important;
}

.galeria .g-item {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important; /* Anula el padding del tema */
    padding-top: 2px !important; /* Anula el padding-top porcentual de aspecto del tema */
    float: none !important;
    display: block !important;
    position: static !important;
    height: auto !important;
}

.galeria .g-item a {
    display: block !important;
    width: 100% !important;
    position: relative !important;
    overflow: hidden !important;
    border-radius: 8px !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    aspect-ratio: 16 / 9 !important;
    background: #0f172a !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
    transition: all 0.25s ease !important;
}

.galeria .g-item a img {
    position: relative !important; /* Anula absolute del tema */
    margin-top: 0 !important; /* Anula el margen negativo del tema */
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    transition: all 0.3s ease !important;
}

.galeria .g-item a:hover {
    border-color: #00bcff !important;
    box-shadow: 0 0 15px rgba(0, 188, 255, 0.4) !important;
    transform: translateY(-2px) !important;
}

.galeria .g-item a:hover img {
    transform: scale(1.05) !important;
}

/* --- ACORDEÓN DE COMENTARIOS (StreamTube) --- */
.st-comments-accordion {
    margin: 32px 0 24px 0 !important;
    width: 100% !important;
    clear: both !important;
    float: left !important;
}

.st-comments-toggle {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    padding: 16px 20px !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    border-radius: 12px !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    outline: none !important;
    color: #e2e8f0 !important;
    box-sizing: border-box !important;
}

.st-comments-toggle:hover {
    background: rgba(255, 255, 255, 0.05) !important;
    border-color: rgba(255, 255, 255, 0.12) !important;
    color: #ffffff !important;
}

.st-comments-toggle.active {
    border-radius: 12px 12px 0 0 !important;
    border-bottom-color: rgba(255, 255, 255, 0.04) !important;
    background: rgba(255, 255, 255, 0.04) !important;
}

.st-comments-toggle .st-comments-toggle__left {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

.st-comments-toggle .toggle-title {
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
}

.st-comments-toggle .comments-icon {
    color: #94a3b8 !important;
}

.st-comments-toggle .chevron-icon {
    color: #94a3b8 !important;
    transition: transform 0.25s ease !important;
}

.st-comments-toggle.active .chevron-icon {
    transform: rotate(180deg) !important;
    color: #00bcff !important;
}

.st-comments-content {
    padding: 24px 20px !important;
    background: none;
    border: none;
    border-top: none !important;
    border-bottom-left-radius: 12px !important;
    border-bottom-right-radius: 12px !important;
    margin-top: 0 !important;
    box-sizing: border-box !important;
}

/* --- ESTILOS DE COMENTARIOS PREMIUM (StreamTube) --- */
#comments-content-wrapper #comments {
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
}

#respond {
    background: rgba(255,255,255,0.02) !important;
    border: 1px solid rgba(255,255,255,0.05) !important;
    border-radius: 10px !important;
    padding: 20px !important;
    margin-bottom: 24px !important;
}

#respond h3#reply-title {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    margin: 0 0 16px 0 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

#respond form input[type="text"],
#respond form input[type="email"],
#respond form textarea {
    width: 100% !important;
    background: rgba(30, 41, 59, 0.4) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    padding: 10px 14px !important;
    font-size: 14px !important;
    outline: none !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
}

#respond form input[type="text"]:focus,
#respond form input[type="email"]:focus,
#respond form textarea:focus {
    border-color: #00bcff !important;
    background: rgba(30, 41, 59, 0.7) !important;
}

#respond form textarea {
    min-height: 100px !important;
    resize: vertical !important;
}

#respond form input[type="submit"] {
    background: rgba(0, 188, 255, 0.04) !important;
    color: #00bcff !important;
    border: 1.5px solid #00bcff !important;
    border-radius: 8px !important;
    padding: 10px 24px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    box-shadow: none !important;
}

#respond form input[type="submit"]:hover {
    background: #00bcff !important;
    color: #101524 !important; /* Contraste con el fondo oscuro */
    box-shadow: 0 0 15px rgba(0, 188, 255, 0.4) !important;
    transform: translateY(-1px) !important;
}

ul.comment-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

ul.comment-list li.comment {
    background: transparent !important;
    border: none !important;
    margin: 0 0 16px 0 !important;
    padding: 0 !important;
}

ul.comment-list li.comment .comment-body {
    background: rgba(255,255,255,0.015) !important;
    border: 1px solid rgba(255,255,255,0.04) !important;
    border-radius: 12px !important;
    padding: 16px !important;
    display: flex !important;
    gap: 16px !important;
}

ul.comment-list li.comment .comment-body .avatar {
    width: 44px !important;
    height: 44px !important;
    border-radius: 50% !important;
    border: 2px solid rgba(255,255,255,0.08) !important;
    flex-shrink: 0 !important;
}

ul.comment-list li.comment .comment-body .comment-text {
    flex-grow: 1 !important;
    min-width: 0 !important;
}

ul.comment-list li.comment .comment-meta {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 6px !important;
}

ul.comment-list li.comment .comment-author cite.fn {
    font-style: normal !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
}

ul.comment-list li.comment .comment-author cite.fn a {
    color: #ffffff !important;
    text-decoration: none !important;
}

ul.comment-list li.comment .comment-meta a {
    font-size: 11px !important;
    color: #64748b !important;
    text-decoration: none !important;
}

ul.comment-list li.comment .comment-content p {
    font-size: 13.5px !important;
    line-height: 1.6 !important;
    color: #cbd5e1 !important;
    margin: 0 0 8px 0 !important;
}

ul.comment-list li.comment .reply a {
    display: inline-flex !important;
    align-items: center !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #00bcff !important;
    text-decoration: none !important;
    gap: 4px !important;
}

ul.comment-list ul.children {
    list-style: none !important;
    padding-left: 40px !important;
    margin-top: 12px !important;
}

#single .content .sbox.lock-box-premium,
#single .content .lock-box-premium,
.lock-box-premium {
    background: linear-gradient(135deg, #12141c 0%, #0a0b0f 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    border-radius: 14px !important;
    padding: 40px 30px !important;
    text-align: center !important;
    box-shadow: 0 16px 48px rgba(0,0,0,0.5) !important;
    margin-bottom: 24px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 280px !important;
    float: none !important;
    width: 100% !important;
    clear: both !important;
    box-sizing: border-box !important;
}

.lock-box-content {
    max-width: 500px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 16px !important;
}

.lock-box-icon {
    color: #ff0040 !important;
    background: rgba(255, 0, 64, 0.1) !important;
    width: 80px !important;
    height: 80px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(255, 0, 64, 0.2) !important;
    margin-bottom: 8px !important;
    animation: lock-pulse 2s infinite ease-in-out !important;
}

@keyframes lock-pulse {
    0% { transform: scale(1); box-shadow: 0 0 0 0 rgba(255, 0, 64, 0.4); }
    70% { transform: scale(1.05); box-shadow: 0 0 0 15px rgba(255, 0, 64, 0); }
    100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(255, 0, 64, 0); }
}

.lock-box-content h3 {
    color: #ffffff !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    letter-spacing: 1.5px !important;
    margin: 0 !important;
    text-transform: uppercase !important;
}

.lock-box-content p {
    color: #8a8e9d !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

.lock-box-actions {
    margin-top: 8px !important;
}

/* Botón llamativo para el login */
#single .content .lock-box-actions .action-btn--primary,
.lock-box-actions .action-btn--primary {
    background: linear-gradient(135deg, #ff0040 0%, #ff3366 100%) !important;
    color: #ffffff !important;
    border: none !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    padding: 14px 28px !important;
    height: auto !important;
    border-radius: 50px !important;
    box-shadow: 0 6px 20px rgba(255, 0, 64, 0.3) !important;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    text-decoration: none !important;
    cursor: pointer !important;
}

#single .content .lock-box-actions .action-btn--primary:hover,
.lock-box-actions .action-btn--primary:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 24px rgba(255, 0, 64, 0.45) !important;
    filter: brightness(1.1) !important;
    background: linear-gradient(135deg, #ff0040 0%, #ff3366 100%) !important;
    color: #ffffff !important;
}

/* ─── CUSTOM FAKE PLAYER PREMIUM ───────────────────────────────── */
.custom-fakeplayer {
    position: relative !important;
    width: 100% !important;
    aspect-ratio: 16 / 9 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.5) !important;
    background: #000000 !important;
}

.custom-fakeplayer.hidden {
    display: none !important;
}

.custom-fakeplayer__bg {
    position: absolute !important;
    top: 0 !important; left: 0 !important;
    width: 100% !important; height: 100% !important;
    background-size: cover !important;
    background-position: center !important;
    filter: blur(2px) brightness(0.6) !important;
    transition: all 0.4s ease !important;
    z-index: 1 !important;
}

.custom-fakeplayer:hover .custom-fakeplayer__bg {
    transform: scale(1.03) !important;
    filter: blur(1px) brightness(0.7) !important;
}

.custom-fakeplayer__overlay {
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(180deg, rgba(10,11,15,0.2) 0%, rgba(10,11,15,0.8) 100%) !important;
    z-index: 2 !important;
}

.custom-fakeplayer__content {
    position: relative !important;
    z-index: 3 !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Botón de reproducción */
.btn-play-custom {
    background: rgba(18,20,29,0.75) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
    border-radius: 50px !important;
    padding: 12px 28px !important;
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.3) !important;
}

.btn-play-custom:hover {
    background: #ff0040 !important;
    border-color: #ff3366 !important;
    box-shadow: 0 10px 28px rgba(255,0,64,0.4) !important;
    transform: translateY(-2px) !important;
}

.btn-play-custom__icon-wrapper {
    width: 28px !important;
    height: 28px !important;
    background: rgba(255,255,255,0.1) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.3s ease !important;
}

.btn-play-custom:hover .btn-play-custom__icon-wrapper {
    background: rgba(255,255,255,0.2) !important;
}

.btn-play-custom__icon {
    width: 0 !important;
    height: 0 !important;
    border-top: 6px solid transparent !important;
    border-bottom: 6px solid transparent !important;
    border-left: 9px solid #ffffff !important;
    margin-left: 2px !important;
}

.btn-play-custom__text {
    text-transform: uppercase !important;
}

/* --- ESTILOS PREMIUM PARA EL MODAL DE REPORTAR ERROR (StreamTube Style) --- */
.report_modal {
    background: rgba(10, 11, 15, 0.82) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    z-index: 999999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Si tiene la clase hidde, lo ocultamos */
.report_modal.hidde {
    display: none !important;
}

.report_modal .box {
    background: #13171f !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 20px !important;
    box-shadow: 0 24px 60px rgba(0,0,0,0.7) !important;
    max-width: 500px !important;
    width: 90% !important;
    padding: 0 !important;
    overflow: hidden !important;
    position: relative !important;
}

.report_modal .box .form {
    padding: 30px !important;
    background: transparent !important;
    border: none !important;
}

.report_modal h3#report-title {
    color: #ffffff !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    margin: 0 0 24px 0 !important;
    padding: 0 0 15px 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.report_modal h3#report-title span {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.report_modal h3#report-title .close-modal-report {
    background: rgba(255,255,255,0.06) !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    color: rgba(255,255,255,0.6) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.25s ease !important;
    cursor: pointer !important;
    font-size: 14px !important;
}

.report_modal h3#report-title .close-modal-report:hover {
    background: rgba(255, 0, 64, 0.15) !important;
    color: #ff0040 !important;
}

.report_modal fieldset {
    border: none !important;
    padding: 0 !important;
    margin: 0 0 20px 0 !important;
}

/* Estilo para las opciones de reporte como tarjetas interactivas */
.report_modal .box .form form fieldset label {
    display: block !important;
    position: relative !important;
    padding: 12px 16px 12px 48px !important;
    margin-bottom: 10px !important;
    background: rgba(255, 255, 255, 0.02) !important;
    border: 1px solid rgba(255, 255, 255, 0.05) !important;
    border-radius: 10px !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    float: none !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.report_modal .box .form form fieldset label:hover {
    background: rgba(255, 255, 255, 0.04) !important;
    border-color: rgba(255, 255, 255, 0.12) !important;
}

/* Soporte para resaltar la tarjeta activa al marcar el checkbox */
.report_modal .box .form form fieldset label:has(input[type="checkbox"]:checked) {
    background: rgba(7, 197, 224, 0.08) !important;
    border-color: rgba(7, 197, 224, 0.3) !important;
}

.report_modal .box .form form fieldset label input[type="checkbox"] {
    position: absolute !important;
    left: 16px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 18px !important;
    height: 18px !important;
    accent-color: #07c5e0 !important;
    cursor: pointer !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Anulación de float y width heredados en los spans */
.report_modal .box .form form fieldset label span {
    width: auto !important;
    float: none !important;
    display: block !important;
}

.report_modal .box .form form fieldset label span.title {
    display: block !important;
    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    margin-bottom: 2px !important;
    text-transform: none !important;
}

.report_modal .box .form form fieldset label span.text {
    display: block !important;
    color: #8a8e9d !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
    text-transform: none !important;
}

/* Área de descripción */
.report_modal .box .form form fieldset textarea {
    width: 100% !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 10px !important;
    color: #ffffff !important;
    padding: 12px 16px !important;
    font-size: 13px !important;
    outline: none !important;
    transition: all 0.25s ease !important;
    box-sizing: border-box !important;
    resize: vertical !important;
    min-height: 80px !important;
    font-family: inherit !important;
}

.report_modal .box .form form fieldset textarea:focus {
    border-color: #07c5e0 !important;
    background: rgba(255, 255, 255, 0.05) !important;
    box-shadow: 0 0 10px rgba(7, 197, 224, 0.2) !important;
}

/* Campo de correo electrónico */
.report_modal .box .form form fieldset input[type="email"] {
    width: 100% !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 10px !important;
    color: #ffffff !important;
    padding: 12px 16px !important;
    font-size: 13px !important;
    outline: none !important;
    transition: all 0.25s ease !important;
    box-sizing: border-box !important;
}

.report_modal .box .form form fieldset input[type="email"]:focus {
    border-color: #07c5e0 !important;
    background: rgba(255, 255, 255, 0.05) !important;
    box-shadow: 0 0 10px rgba(7, 197, 224, 0.2) !important;
}

/* Botón de Enviar Reporte */
.report_modal .box .form form fieldset input[type="submit"] {
    background: rgba(0, 188, 255, 0.04) !important;
    color: #00bcff !important;
    border: 1.5px solid #00bcff !important;
    border-radius: 8px !important;
    padding: 12px 20px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    width: 100% !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    box-shadow: none !important;
}

.report_modal .box .form form fieldset input[type="submit"]:hover {
    background: #00bcff !important;
    color: #13171f !important; /* Contraste con el fondo oscuro del modal */
    box-shadow: 0 0 15px rgba(0, 188, 255, 0.4) !important;
    transform: translateY(-1px) !important;
}

/* Respuesta AJAX */
.report_modal #report-response-message {
    margin-bottom: 15px !important;
}

.report_modal #report-response-message .sms {
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 10px !important;
    padding: 12px 16px !important;
}

.report_modal #report-response-message .sms.exito {
    border-color: rgba(16, 185, 129, 0.3) !important;
    background: rgba(16, 185, 129, 0.1) !important;
    color: #10b981 !important;
}

.report_modal #report-response-message .sms.error {
    border-color: rgba(239, 68, 68, 0.3) !important;
    background: rgba(239, 68, 68, 0.1) !important;
    color: #ef4444 !important;
}

/* --- OVERLAY DE INFORMACIÓN Y HOVER EN EPISODIOS (StreamTube) --- */
.item.episodes .poster_ep {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 8px !important;
    background: #0f172a !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
    transition: all 0.3s ease !important;
    aspect-ratio: 16 / 9 !important;
    height: auto !important;
}

.item.episodes .poster_ep img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    transition: all 0.3s ease !important;
    position: static !important; /* Anula posicionamientos absolutos del tema */
    margin: 0 !important;
}

/* Hover en la tarjeta */
.item.episodes:hover .poster_ep {
    border-color: #00bcff !important;
    box-shadow: 0 0 15px rgba(0, 188, 255, 0.4) !important;
    transform: translateY(-2px) !important;
}

.item.episodes:hover .poster_ep img {
    transform: scale(1.05) !important;
    filter: brightness(0.55) !important;
}

/* Play Icon flotante (ver online) */
.item.episodes .poster_ep a .see {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-position: 50% 50% !important;
    background-repeat: no-repeat !important;
    background-size: 45px 45px !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    z-index: 10 !important;
    transform: scale(0.7) !important;
}

/* Hover de play icon */
.item.episodes:hover .poster_ep a .see {
    opacity: 1 !important;
    visibility: visible !important;
    transform: scale(1) !important;
}

/* Capa de metadatos overlay inferior */
.item.episodes .poster_ep .data_overlay {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    padding: 15px 12px 10px 12px !important;
    background: linear-gradient(to top, rgba(11, 15, 25, 0.95) 0%, rgba(11, 15, 25, 0.6) 60%, transparent 100%) !important;
    z-index: 5 !important;
    pointer-events: none !important; /* Permite clics al enlace principal */
    transition: all 0.25s ease !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
    text-align: left !important;
}

/* Título de episodio en overlay */
.item.episodes .poster_ep .data_overlay h3 {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    line-height: normal !important;
}

.item.episodes .poster_ep .data_overlay h3 a {
    color: #ffffff !important;
    text-decoration: none !important;
}

/* Temporada / Episodio / Fecha en overlay */
.item.episodes .poster_ep .data_overlay span {
    font-size: 10.5px !important;
    font-weight: 600 !important;
    color: #94a3b8 !important;
    display: block !important;
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    line-height: normal !important;
}

/* Nombre de la Serie en overlay */
.item.episodes .poster_ep .data_overlay span.serie {
    font-size: 10px !important;
    font-weight: 700 !important;
    color: #00bcff !important; /* Azul celeste */
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    margin-top: 1px !important;
}

/* Calidad en Episodios con diseño premium y color naranja */
.item.episodes .poster_ep span.quality {
    position: absolute !important;
    top: 10px !important;
    right: 10px !important;
    left: auto !important;
    bottom: auto !important;
    margin: 0 !important;
    background: rgba(15, 23, 42, 0.8) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    color: #ff9f00 !important; /* Naranja/Ámbar premium */
    padding: 4px 8px !important;
    border-radius: 6px !important;
    font-size: 10.5px !important;
    font-weight: 700 !important;
    z-index: 6 !important;
    display: block !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2) !important;
    text-transform: uppercase !important;
    line-height: normal !important;
}

/* Ocultar cualquier .data redundante */
.item.episodes .data {
    display: none !important;
}

/* --- OVERLAY DE INFORMACIÓN Y HOVER EN TEMPORADAS (StreamTube) --- */
.item.seasons .poster {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 8px !important;
    background: #0f172a !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
    transition: all 0.3s ease !important;
}

.item.seasons .poster img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    transition: all 0.3s ease !important;
}

/* Hover en la tarjeta de temporada */
.item.seasons:hover .poster {
    border-color: #00bcff !important;
    box-shadow: 0 0 15px rgba(0, 188, 255, 0.4) !important;
    transform: translateY(-2px) !important;
}

.item.seasons:hover .poster img {
    transform: scale(1.05) !important;
    filter: brightness(0.55) !important;
}

/* Play Icon flotante en temporadas */
.item.seasons .poster a .see {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-position: 50% 50% !important;
    background-repeat: no-repeat !important;
    background-size: 45px 45px !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    z-index: 10 !important;
    transform: scale(0.7) !important;
}

/* Hover de play icon en temporadas */
.item.seasons:hover .poster a .see {
    opacity: 1 !important;
    visibility: visible !important;
    transform: scale(1) !important;
}

/* Capa de metadatos overlay inferior en temporadas */
.item.seasons .poster .data_overlay {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    padding: 20px 12px 10px 12px !important;
    background: linear-gradient(to top, rgba(11, 15, 25, 0.95) 0%, rgba(11, 15, 25, 0.6) 60%, transparent 100%) !important;
    z-index: 5 !important;
    pointer-events: none !important;
    transition: all 0.25s ease !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
    text-align: left !important;
}

/* Título de temporada en overlay */
.item.seasons .poster .data_overlay h3 {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    line-height: normal !important;
}

.item.seasons .poster .data_overlay h3 a {
    color: #ffffff !important;
    text-decoration: none !important;
}

/* Fecha de estreno en temporadas */
.item.seasons .poster .data_overlay span {
    font-size: 10.5px !important;
    font-weight: 600 !important;
    color: #94a3b8 !important;
    display: block !important;
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    line-height: normal !important;
}

/* Nombre de la Serie en overlay de temporadas */
.item.seasons .poster .data_overlay span.serie {
    font-size: 10px !important;
    font-weight: 700 !important;
    color: #00bcff !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    margin-top: 1px !important;
}

/* --- OVERLAY DE INFORMACIÓN Y HOVER EN PELÍCULAS Y SERIES (StreamTube) --- */
.item.movies .poster,
.item.tvshows .poster {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 8px !important;
    background: #0f172a !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
    transition: all 0.3s ease !important;
}

.item.movies .poster img,
.item.tvshows .poster img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    transition: all 0.3s ease !important;
}

/* Hover en la tarjeta */
.item.movies:hover .poster,
.item.tvshows:hover .poster {
    border-color: #00bcff !important;
    box-shadow: 0 0 15px rgba(0, 188, 255, 0.4) !important;
    transform: translateY(-2px) !important;
}

.item.movies:hover .poster img,
.item.tvshows:hover .poster img {
    transform: scale(1.05) !important;
    filter: brightness(0.55) !important;
}

/* Play Icon flotante */
.item.movies .poster a .see,
.item.tvshows .poster a .see {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-position: 50% 50% !important;
    background-repeat: no-repeat !important;
    background-size: 45px 45px !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    z-index: 10 !important;
    transform: scale(0.7) !important;
}

/* Hover de play icon */
.item.movies:hover .poster a .see,
.item.tvshows:hover .poster a .see {
    opacity: 1 !important;
    visibility: visible !important;
    transform: scale(1) !important;
}

/* Capa de metadatos overlay inferior */
.item.movies .poster .data_overlay,
.item.tvshows .poster .data_overlay {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    padding: 20px 12px 10px 12px !important;
    background: linear-gradient(to top, rgba(11, 15, 25, 0.95) 0%, rgba(11, 15, 25, 0.6) 60%, transparent 100%) !important;
    z-index: 5 !important;
    pointer-events: none !important;
    transition: all 0.25s ease !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
    text-align: left !important;
}

/* Título en overlay */
.item.movies .poster .data_overlay h3,
.item.tvshows .poster .data_overlay h3 {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    line-height: normal !important;
}

.item.movies .poster .data_overlay h3 a,
.item.tvshows .poster .data_overlay h3 a {
    color: #ffffff !important;
    text-decoration: none !important;
}

/* Fecha de estreno */
.item.movies .poster .data_overlay span,
.item.tvshows .poster .data_overlay span {
    font-size: 10.5px !important;
    font-weight: 600 !important;
    color: #94a3b8 !important;
    display: block !important;
    float: none !important;
    width: auto !important;
}

/* Ocultar el bloque .data antiguo que pudiera renderizarse */
.item.movies .data,
.item.tvshows .data {
    display: none !important;
}

/* Posicionamiento de Rating y Calidad en Películas y Series (StreamTube) */
.item.movies .poster .rating,
.item.tvshows .poster .rating {
    position: absolute !important;
    top: 3px !important;
    left: 3px !important;
    bottom: auto !important;
    right: auto !important;
    margin: 0 !important;
    background: rgba(15, 23, 42, 0.8) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    color: #ffffff !important;
    padding: 4px 8px !important;
    border-radius: 6px !important;
    font-size: 10.5px !important;
    font-weight: 700 !important;
    z-index: 6 !important;
    display: flex !important;
    align-items: center !important;
    line-height: normal !important;
    opacity: 1 !important;
    visibility: visible !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2) !important;
}

.item.movies .poster .rating:before,
.item.tvshows .poster .rating:before {
    color: #eab308 !important;
    margin-right: 4px !important;
}

.item.movies .poster .mepo,
.item.tvshows .poster .mepo {
    position: absolute !important;
    top: 3px !important;
    right: 3px !important;
    left: auto !important;
    bottom: auto !important;
    margin: 0 !important;
    z-index: 6 !important;
    line-height: normal !important;
}

.item.movies .poster .mepo span.quality,
.item.tvshows .poster .mepo span.quality {
    background: rgba(15, 23, 42, 0.8) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    color: #00bcff !important;
    padding: 4px 8px !important;
    border-radius: 6px !important;
    font-size: 10.5px !important;
    font-weight: 700 !important;
    display: block !important;
    float: none !important;
    margin: 0 !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2) !important;
    text-transform: uppercase !important;
}

/* Estilo premium de la coletilla Estrenos (Featured) en StreamTube */
.item .poster .featu {
    position: absolute !important;
    top: 3px !important;
    right: 3px !important;
    left: auto !important;
    bottom: auto !important;
    margin: 0 !important;
    background: rgba(15, 23, 42, 0.8) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    color: #2dfb7e !important; /* Verde menta/neón premium brillante */
    padding: 4px 8px !important;
    border-radius: 6px !important;
    font-size: 10.5px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    z-index: 6 !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2) !important;
    line-height: normal !important;
}

/* Ocultar cualquier .data o .season_m redundante */
.item.seasons .data,
.item.seasons .season_m {
    display: none !important;
}

/* Mapeo universal de imágenes para iconos de reproducción seleccionados en Dooplay */
.see.play1 { background-image: url(img/play1.svg) !important; }
.see.play2 { background-image: url(img/play2.svg) !important; }
.see.play3 { background-image: url(img/play3.svg) !important; }
.see.play4 { background-image: url(img/play4.svg) !important; }
.see.play5 { background-image: url(img/play5.svg) !important; }
.see.play6 { background-image: url(img/play6.svg) !important; }
.see.play7 { background-image: url(img/play7.svg) !important; }
.see.play8 { background-image: url(img/play8.svg) !important; }
.see.play9 { background-image: url(img/play9.svg) !important; }
.see.play10 { background-image: url(img/play10.svg) !important; }
.see.play11 { background-image: url(img/play11.svg) !important; }

/* --- ESTILADO PREMIUM DE LOS MENÚS DEL FOOTER (Estilo StreamTube) --- */
.fmenu ul li a {
    font-weight: 600 !important;
    color: #94a3b8 !important;
    border-radius: 8px !important;
    transition: all 0.2s ease-in-out !important;
    line-height: normal !important;
    font-size: 15px !important;
    padding: 10px 18px !important; 
    min-width: 90px !important;
    box-sizing: border-box !important;
    display: inline-flex !important; 
    align-items: center !important;
    justify-content: center !important;
    vertical-align: middle !important;
    background: transparent !important;
	line-height: 1 !important;
    height: auto !important;
}

.fmenu ul li a:hover {
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.08) !important; 
    text-decoration: none !important;
}
footer.main .fbox .fmenu ul li a {
    font-weight: 600 !important;
    color: #94a3b8 !important;
    padding: 10px 18px !important; 
    min-width: 90px !important;
    box-sizing: border-box !important;
    border-radius: 8px !important;
    transition: all 0.2s ease-in-out !important;
    line-height: normal !important;
    float: none !important;
    font-size: 15px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    vertical-align: middle !important;
    background: transparent !important;
	line-height: 1 !important;
    height: auto !important;
}
footer.main .fbox .fmenu ul li a:hover {
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.08) !important;
    text-decoration: none !important;
}

/* --- DISEÑO DE CENTRO DE AYUDA Y FAQ (Estilo StreamTube) --- */
.st-faq-container {
    max-width: 900px !important;
    margin: 130px auto 60px auto !important;
    padding: 0 20px !important;
    text-align: center !important;
    font-family: 'Inter', sans-serif !important;
}

/* Badge superior */
.st-faq-badge-wrapper {
    margin-bottom: 24px !important;
    display: flex !important;
    justify-content: center !important;
}

.st-faq-badge {
    background: rgba(0, 188, 255, 0.08) !important;
    border: 1px solid rgba(0, 188, 255, 0.2) !important;
    color: #00bcff !important;
    padding: 6px 16px !important;
    border-radius: 30px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    letter-spacing: 0.5px !important;
}

/* Encabezado */
.st-faq-header {
    margin-bottom: 50px !important;
}

.st-faq-header h1 {
    font-size: 38px !important;
    font-weight: 800 !important;
    background: linear-gradient(135deg, #00bcff 0%, #ffffff 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    color: #00bcff !important;
    margin: 0 0 16px 0 !important;
    letter-spacing: -0.5px !important;
    line-height: normal !important;
}

.st-faq-header p {
    font-size: 15px !important;
    color: #94a3b8 !important;
    max-width: 600px !important;
    margin: 0 auto !important;
    line-height: 1.6 !important;
}

/* Categorías */
.st-faq-content {
    text-align: left !important;
}

.st-faq-category {
    margin-bottom: 40px !important;
}

.st-faq-category-title {
    font-size: 19px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    padding-left: 14px !important;
    border-left: 4px solid #00bcff !important;
    margin: 0 0 24px 0 !important;
    line-height: 1.2 !important;
}

/* Acordeón */
.st-faq-accordion {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

.st-faq-item {
    background: #101524 !important;
    border: 1px solid rgba(255, 255, 255, 0.05) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    transition: all 0.25s ease !important;
}

.st-faq-item:hover {
    border-color: rgba(0, 188, 255, 0.2) !important;
    background: #121829 !important;
}

.st-faq-item.active {
    border-color: rgba(0, 188, 255, 0.3) !important;
    box-shadow: 0 4px 20px rgba(0, 188, 255, 0.05) !important;
}

/* Botón de Pregunta */
.st-faq-question {
    width: 100% !important;
    background: transparent !important;
    border: 0 !important;
    padding: 18px 24px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    text-align: left !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    cursor: pointer !important;
    transition: color 0.2s ease !important;
}

.st-faq-item:hover .st-faq-question {
    color: #00bcff !important;
}

.st-faq-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 30px !important;
    height: 30px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.03) !important;
    color: #94a3b8 !important;
    font-size: 12px !important;
    transition: all 0.25s ease !important;
}

.st-faq-item.active .st-faq-icon {
    transform: rotate(180deg) !important;
    background: rgba(0, 188, 255, 0.1) !important;
    color: #00bcff !important;
}

/* Respuesta */
.st-faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.st-faq-answer-inner {
    padding: 0 24px 20px 24px !important;
    font-size: 14.5px !important;
    color: #94a3b8 !important;
    line-height: 1.7 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.03) !important;
    padding-top: 16px !important;
}

.st-faq-answer-inner p {
    margin: 0 0 12px 0 !important;
}

.st-faq-answer-inner p:last-child {
    margin: 0 !important;
}

.st-faq-answer-inner a {
    color: #00bcff !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    transition: color 0.2s ease !important;
}

.st-faq-answer-inner a:hover {
    color: #ffffff !important;
    text-decoration: underline !important;
}

.st-faq-answer-inner ul, 
.st-faq-answer-inner ol {
    margin: 0 0 16px 0 !important;
    padding-left: 20px !important;
}

.st-faq-answer-inner li {
    margin-bottom: 8px !important;
}

.st-faq-answer-inner li:last-child {
    margin-bottom: 0 !important;
}

.st-faq-answer-inner strong {
    color: #ffffff !important;
}
html body footer.main div.fbox div.fmenu ul li a {
    padding: 10px 18px !important;
    min-width: 90px !important;
    box-sizing: border-box !important;
}
/* 1. Forzamos al contenedor del footer a alinear todos sus elementos al centro */
html body footer.main div.fbox {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important; /* Mantiene el menú a la izquierda y el botón a la derecha */
}

/* 2. Eliminamos cualquier margen rebelde de la lista que empuje el menú hacia abajo */
html body footer.main div.fbox div.fmenu ul {
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
}

/* 3. Aseguramos que el elemento de la lista tampoco tenga márgenes extraños */
html body footer.main div.fbox div.fmenu ul li {
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
}

/* --- ESTILO PREMIUM PARA RESULTADOS DE BÚSQUEDA (StreamTube) --- */

/* Anulación de maquetación en dos columnas nativa de Dooplay en el buscador */
.search-page {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    float: none !important;
    clear: both !important;
}

/* 1. Título del encabezado de búsqueda con barra azul celeste */
.csearch header h1 {
    font-size: 24px !important;
    color: #ffffff !important;
    font-weight: 800 !important;
    padding-left: 15px !important;
    border-left: 4px solid #00bcff !important; /* Barra azul celeste de StreamTube */
    margin-bottom: 30px !important;
    text-transform: none !important;
    line-height: 1.2 !important;
}

/* 2. Barra de búsqueda de la página de resultados */
.search_page_form {
    margin-bottom: 30px !important;
    width: 100% !important;
    max-width: 600px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
    clear: both !important;
}

#searchformpage {
    background: rgba(30, 41, 59, 0.4) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 30px !important;
    display: flex !important;
    align-items: center !important;
    padding: 4px 6px 4px 20px !important;
    transition: all 0.25s ease !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

#searchformpage:hover,
#searchformpage:focus-within {
    background: rgba(30, 41, 59, 0.7) !important;
    border-color: #00bcff !important;
    box-shadow: 0 0 15px rgba(0, 188, 255, 0.15) !important;
}

#searchformpage input[type="text"] {
    background: transparent !important;
    border: 0 !important;
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    height: 44px !important;
    outline: none !important;
    padding: 0 !important;
    width: 100% !important;
    box-shadow: none !important;
}

#searchformpage input[type="text"]::placeholder {
    color: #64748b !important;
}

#searchformpage button[type="submit"] {
    background: transparent !important;
    border: 0 !important;
    color: #94a3b8 !important;
    cursor: pointer !important;
    font-size: 16px !important;
    padding: 0 15px !important;
    height: 44px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: color 0.2s ease !important;
}

#searchformpage button[type="submit"]:hover {
    color: #00bcff !important;
}

/* 3. Tarjeta de No Hay Resultados */
.no-result-container {
    background: #101524 !important; /* Fondo oscuro unificado con el FAQ */
    border: 1px solid rgba(255, 255, 255, 0.05) !important;
    border-radius: 16px !important;
    padding: 60px 40px !important;
    text-align: center !important;
    width: 100% !important;
    max-width: 650px !important;
    margin: 20px auto !important;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.35) !important;
    font-family: 'Inter', sans-serif !important;
    box-sizing: border-box !important;
    float: none !important;
    clear: both !important;
}

.no-result-icon {
    width: 80px !important;
    height: 80px !important;
    background: rgba(0, 188, 255, 0.06) !important;
    border: 1px solid rgba(0, 188, 255, 0.15) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 auto 24px auto !important;
    color: #00bcff !important;
    font-size: 28px !important;
}

.no-result-container h2 {
    color: #ffffff !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    margin: 0 0 10px 0 !important;
    line-height: 1.3 !important;
    letter-spacing: -0.5px !important;
}

.no-result-container h2 span {
    color: #00bcff !important; /* Resalta el término buscado en azul StreamTube */
    font-weight: 800 !important;
}

.no-result-subtitle {
    color: #94a3b8 !important;
    font-size: 15px !important;
    margin: 0 0 35px 0 !important;
    line-height: 1.6 !important;
}

/* Bloque interno de sugerencias */
.no-result-suggestions {
    background: rgba(255, 255, 255, 0.015) !important;
    border: 1px solid rgba(255, 255, 255, 0.04) !important;
    border-radius: 12px !important;
    padding: 24px 30px !important;
    text-align: left !important;
    max-width: 480px !important;
    margin: 0 auto !important;
}

.no-result-suggestions h3 {
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.2px !important;
    margin: 0 0 16px 0 !important;
}

.no-result-suggestions ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}

.no-result-suggestions ul li {
    color: #94a3b8 !important;
    font-size: 14px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    line-height: 1.4 !important;
}

.no-result-suggestions ul li i {
    color: #00bcff !important; /* Iconos check en azul celeste */
    font-size: 14px !important;
    flex-shrink: 0 !important;
}

/* --- DISEÑO PREMIUM DE PÁGINA DE CONTACTO (Estilo StreamTube) --- */

/* 1. Contenedor de la página de contacto */
.contact {
    max-width: 800px !important;
    margin: 130px auto 60px auto !important; /* Despeja la cabecera fija */
    padding: 0 20px !important;
    font-family: 'Inter', sans-serif !important;
    box-sizing: border-box !important;
    float: none !important;
    clear: both !important;
}

.contact .wrapper {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
}

/* 2. Título de contacto con acento azul StreamTube */
.contact h1 {
    font-size: 30px !important;
    color: #ffffff !important;
    font-weight: 800 !important;
    padding-left: 15px !important;
    border-left: 4px solid #00bcff !important;
    margin: 0 0 10px 0 !important;
    line-height: 1.2 !important;
    text-transform: none !important;
}

.contact p.descrip {
    color: #94a3b8 !important;
    font-size: 15px !important;
    margin: 0 0 40px 0 !important;
    line-height: 1.6 !important;
}

/* 3. Tarjeta del Formulario con CSS Grid */
.contactame {
    background: #101524 !important; /* Fondo oscuro premium unificado con el FAQ y búsqueda */
    border: 1px solid rgba(255, 255, 255, 0.05) !important;
    border-radius: 16px !important;
    padding: 40px !important;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.35) !important;
    box-sizing: border-box !important;
    float: none !important;
    clear: both !important;
    
    /* Grid Moderno */
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 20px 24px !important;
}

/* Ocultar inputs hidden para que no afecten al flujo del Grid */
.contactame input[type="hidden"] {
    display: none !important;
}

/* Grid para Nombre y Email (en dos columnas de igual tamaño) */
.contactame fieldset.nine {
    grid-column: span 1 !important;
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

.contactame fieldset.nine.fix {
    grid-column: span 1 !important;
    float: none !important;
    margin: 0 !important;
}

/* Resto de fieldsets y recaptcha (ancho completo, ocupan las 2 columnas) */
.contactame fieldset,
#dooplay-reCAPTCHA-response {
    grid-column: span 2 !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    float: none !important;
    clear: both !important;
    box-sizing: border-box !important;
}

/* Etiquetas y descripciones de campos */
.contactame fieldset label {
    display: block !important;
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    margin-bottom: 6px !important;
    float: none !important;
    width: auto !important;
}

.contactame fieldset p {
    color: #64748b !important;
    font-size: 12.5px !important;
    margin: -2px 0 10px 0 !important;
    line-height: 1.4 !important;
}

/* Estilo de Inputs y Textarea */
.contactame fieldset input[type="text"],
.contactame fieldset input[type="email"],
.contactame fieldset textarea {
    width: 100% !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 10px !important;
    color: #ffffff !important;
    padding: 12px 16px !important;
    font-size: 14px !important;
    outline: none !important;
    transition: all 0.25s ease !important;
    box-sizing: border-box !important;
    font-family: inherit !important;
    box-shadow: none !important;
}

.contactame fieldset input[type="text"]:focus,
.contactame fieldset input[type="email"]:focus,
.contactame fieldset textarea:focus {
    border-color: #00bcff !important;
    background: rgba(255, 255, 255, 0.05) !important;
    box-shadow: 0 0 12px rgba(0, 188, 255, 0.15) !important;
}

.contactame fieldset textarea {
    resize: vertical !important;
    min-height: 140px !important;
}

/* 4. Botón de Enviar Mensaje Premium */
#contact-submit-button {
    background: rgba(0, 188, 255, 0.04) !important;
    color: #00bcff !important;
    border: 1.5px solid #00bcff !important;
    border-radius: 8px !important;
    padding: 12px 28px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    display: block !important;
    margin: 10px auto 0 auto !important; /* Centrado horizontal */
    width: auto !important;
    height: auto !important;
    float: none !important;
    box-shadow: none !important;
}

#contact-submit-button:hover {
    background: #00bcff !important;
    color: #101524 !important; /* Contraste oscuro en hover */
    box-shadow: 0 0 15px rgba(0, 188, 255, 0.4) !important;
    transform: translateY(-1px) !important;
}

/* 5. Mensajes de respuesta AJAX */
#contact-response-message div.notice {
    padding: 14px 20px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    margin: 10px 0 !important;
    box-sizing: border-box !important;
}

#contact-response-message div.notice.exito {
    background: rgba(16, 185, 129, 0.1) !important;
    border: 1px solid rgba(16, 185, 129, 0.25) !important;
    color: #10b981 !important;
}

#contact-response-message div.notice.error {
    background: rgba(239, 68, 68, 0.1) !important;
    border: 1px solid rgba(239, 68, 68, 0.25) !important;
    color: #ef4444 !important;
}

/* 6. Soporte responsivo para móviles */
@media only screen and (max-width: 768px) {
    .contact {
        margin-top: 100px auto 40px auto !important; /* Separación adaptada para móviles */
        padding: 0 15px !important;
    }
    .contact h1 {
        font-size: 24px !important;
    }
    .contactame {
        grid-template-columns: 1fr !important; /* Una sola columna en móviles */
        gap: 16px !important;
        padding: 24px 20px !important;
    }
    .contactame fieldset.nine,
    .contactame fieldset,
    #dooplay-reCAPTCHA-response {
        grid-column: span 1 !important;
        width: 100% !important;
        float: none !important;
        margin: 0 !important;
    }
}

/* --- SECCIÓN DE RELACIONADOS "TAMBIÉN TE PUEDE INTERESAR" (StreamTube) --- */
#single .content .sbox.srelacionados {
    border-top: none !important;
    background: transparent !important; /* Sin fondo de tarjeta */
    border: none !important; /* Sin bordes */
    border-radius: 0 !important;
    padding: 0 !important; /* Sin paddings para alinear con el título */
    box-shadow: none !important; /* Sin sombras */
    margin-top: 35px !important;
    margin-bottom: 35px !important;
    box-sizing: border-box !important;
    float: none !important;
    width: 100% !important;
}

#single .content .sbox.srelacionados h2 {
    font-size: 16px !important; /* Un poco más estilizado y compacto */
    color: #01b4e4 !important;
    font-weight: 800 !important;
    padding-left: 14px !important;
    border-left: 4px solid #00bcff !important; /* Barra de acento azul StreamTube */
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    margin: 0 0 25px 0 !important;
    line-height: 1 !important; /* Altura de línea compactada */
    padding-top: 2px !important; /* Padding para centrar verticalmente la barra de acento */
    padding-bottom: 2px !important;
    border-top: none !important;
}

/* Ajuste de espaciado y tamaño de portadas en relacionados */
#single_relacionados .owl-wrapper-outer {
    padding: 10px 0 !important; /* Da aire para el resplandor del hover */
}

#single_relacionados .item {
    margin: 0 !important; /* Eliminamos el margen lateral que reducía las portadas */
    padding: 0 5px !important; /* Separación horizontal interna para que mantengan el tamaño original */
    width: auto !important;
    float: none !important;
    box-sizing: border-box !important;
}

/* Forzar relación de aspecto vertical perfecta (2/3) y evitar franjas negras vacías */
#single_relacionados .item .poster {
    aspect-ratio: 2 / 3 !important;
    height: auto !important;
}

#single_relacionados .item .poster img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

/* Reducción de metadatos y fuentes para evitar solapamientos en las portadas de recomendados */
#single_relacionados .item .poster .data_overlay {
    padding: 8px 8px 3px 8px !important; /* Padding inferior mínimo para pegar al borde inferior */
    background: linear-gradient(to top, rgba(11, 15, 25, 0.95) 0%, rgba(11, 15, 25, 0.4) 75%, transparent 100%) !important;
}

#single_relacionados .item .poster .data_overlay h3 {
    font-size: 11px !important; /* Título compacto */
    white-space: nowrap !important;
    text-transform: capitalize !important; /* Convierte títulos en MAYÚSCULAS de la BD a formato Capitalizado */
    margin: 0 0 1px 0 !important; /* Margen inferior mínimo hacia la fecha */
    padding: 0 !important;
}

#single_relacionados .item .poster .data_overlay span {
    font-size: 9px !important; /* Año de estreno */
    margin: 0 !important;
    padding: 0 !important;
}

/* Ajustes de badges superiores */
#single_relacionados .item .poster .rating {
    font-size: 9px !important;
    padding: 2px 5px !important;
    top: 6px !important;
    left: 6px !important;
    border-radius: 4px !important;
}

#single_relacionados .item .poster .mepo {
    top: 6px !important;
    right: 6px !important;
}

#single_relacionados .item .poster .mepo span.quality {
    font-size: 8.5px !important;
    padding: 2px 5px !important;
    border-radius: 4px !important;
}

/* En teléfonos y pantallas táctiles, ajustar los márgenes */
@media only screen and (max-width: 768px) {
    #single .content .sbox.srelacionados {
        padding: 24px 16px !important;
        margin-top: 25px !important;
        margin-bottom: 25px !important;
    }
    #single .content .sbox.srelacionados h2 {
        font-size: 15px !important;
        margin-bottom: 20px !important;
    }
}

/* ==========================================================================
   ─── ESTILOS PREMIUM SELECTOR DE SERVIDORES (StreamTube Style) ───────────
   ========================================================================== */
.sbox--player h2 {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    margin: 20px 0 12px 0 !important;
    border: none !important;
    padding: 0 !important;
    line-height: 1.4 !important;
}

/* Ocultar el link de reporte duplicado dentro de h2 */
.sbox--player h2 .report-video-error {
    display: none !important;
}

/* Contador de vistas en el h2 */
#playernotice {
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #b0b4c3 !important;
    background: rgba(255, 255, 255, 0.06) !important;
    padding: 3px 10px !important;
    border-radius: 20px !important;
    margin-left: 8px !important;
    vertical-align: middle !important;
    display: inline-block !important;
    border: 1px solid rgba(255, 255, 255, 0.04) !important;
}

/* Contenedor del listado de opciones de reproducción */
#playeroptions {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 8px 0 16px 0 !important;
    display: block !important;
}

#playeroptionsul {
    display: flex !important;
    flex-flow: row wrap !important;
    gap: 10px !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
}

/* Botón individual de servidor (dooplay_player_option) */
#playeroptionsul li.dooplay_player_option {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    flex: 0 1 auto !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.07) !important;
    border-radius: 8px !important;
    padding: 8px 18px !important;
    cursor: pointer !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    color: #a5aab8 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    user-select: none !important;
    gap: 8px !important;
}

/* Hover en la opción */
#playeroptionsul li.dooplay_player_option:hover {
    background: rgba(0, 188, 255, 0.07) !important;
    border-color: rgba(0, 188, 255, 0.3) !important;
    color: #00bcff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgba(0, 188, 255, 0.15) !important;
}

/* Opción activa/seleccionada (.on) */
#playeroptionsul li.dooplay_player_option.on {
    background: rgba(0, 188, 255, 0.08) !important;
    border-color: #00bcff !important;
    color: #00bcff !important;
    font-weight: 700 !important;
    box-shadow: 0 4px 16px rgba(0, 188, 255, 0.25) !important;
    transform: translateY(-1px) !important;
}

/* Iconos de Play en cada item */
#playeroptionsul li.dooplay_player_option i {
    font-size: 13px !important;
    color: currentColor !important;
}

/* Nombre del Servidor (texto principal) */
#playeroptionsul li.dooplay_player_option .title {
    text-align: center !important;
    text-transform: capitalize !important;
}

/* Dominio del Servidor (como tag dentro del botón) */
#playeroptionsul li.dooplay_player_option .server {
    font-size: 10px !important;
    font-weight: 600 !important;
    color: #717686 !important;
    background: rgba(255, 255, 255, 0.05) !important;
    padding: 2px 6px !important;
    border-radius: 4px !important;
    text-transform: lowercase !important;
    transition: all 0.25s ease !important;
}

/* Cambios en el tag del dominio cuando la opción está activa */
#playeroptionsul li.dooplay_player_option.on .server {
    color: #00bcff !important;
    background: rgba(0, 188, 255, 0.12) !important;
}

/* Bandera de idioma */
#playeroptionsul li.dooplay_player_option .flag {
    display: inline-flex !important;
    align-items: center !important;
}

#playeroptionsul li.dooplay_player_option .flag img {
    height: 12px !important;
    width: auto !important;
    border-radius: 2px !important;
    vertical-align: middle !important;
}

/* Loader animado en ajax */
#playeroptionsul li.dooplay_player_option .loader {
    width: 12px !important;
    height: 12px !important;
    border: 2px solid currentColor !important;
    border-top: 2px solid transparent !important;
    border-radius: 50% !important;
    display: none !important;
    animation: player_loader_spin 0.6s linear infinite !important;
}

/* Loader visible en carga ajax */
#playeroptionsul li.dooplay_player_option.loading .loader {
    display: inline-block !important;
}

#playeroptionsul li.dooplay_player_option.loading i {
    display: none !important;
}

@keyframes player_loader_spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* --- CUADRO DE BLOQUEO PREMIUM PARA COMENTARIOS (Lock Box) --- */
.comments-lock-box {
    background: rgba(255, 255, 255, 0.012) !important;
    border: 1px dashed rgba(255, 255, 255, 0.06) !important;
    border-radius: 12px !important;
    padding: 44px 28px !important;
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 24px 0 !important;
    position: relative !important;
    overflow: hidden !important;
}

/* Icono del Candado con círculo rosa translúcido */
.comments-lock-box__icon {
    width: 48px !important;
    height: 48px !important;
    border-radius: 50% !important;
    background: rgba(255, 0, 64, 0.08) !important;
    border: 1px solid rgba(255, 0, 64, 0.15) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ff4d6d !important;
    margin-bottom: 16px !important;
}

/* Título */
.comments-lock-box__title {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    margin: 0 0 8px 0 !important;
    letter-spacing: 0.2px !important;
}

/* Subtexto */
.comments-lock-box__subtext {
    font-size: 13px !important;
    color: #a5aab8 !important;
    max-width: 420px !important;
    margin: 0 0 24px 0 !important;
    line-height: 1.5 !important;
}

/* Botón Iniciar Sesión estilo contorno (StreamTube style) */
.comments-lock-box__btn {
    background: transparent !important;
    border: 1px solid rgba(0, 188, 255, 0.5) !important;
    border-radius: 8px !important;
    padding: 10px 24px !important;
    color: #00bcff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    cursor: pointer !important;
    transition: all 0.25s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
    outline: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Hover del botón */
.comments-lock-box__btn:hover {
    background: #00bcff !important;
    border-color: #00bcff !important;
    color: #07090e !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 16px rgba(0, 188, 255, 0.4) !important;
}

.comments-lock-box__btn:active {
    transform: translateY(0px) !important;
}

/* Ajustes premium de tamaño y estilo para las valoraciones en portadas (Ratings) */
.module .content .items .item .poster .rating {
    position: absolute !important;
    background: rgba(0, 0, 0, 0.75) !important;
    backdrop-filter: blur(6px) !important;
    -webkit-backdrop-filter: blur(6px) !important;
    color: #f5a623 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    padding: 3px 4px !important;
    border-radius: 6px !important;
    display: flex !important;
    align-items: center !important;
    gap: 3px !important;
    z-index: 2 !important;
}
.module .content .items .item .poster img {
  margin-top: -145% !important;
  position: absolute;
  object-fit: cover;
}
.module .content header h2 {
  border-left: solid 3px #079db6;
  color: #01b4e4 !important;
}
#single .content .sbox h2 {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #01b4e4 !important;
  margin: 24px 0 12px 0 !important;
  padding-bottom: 8px !important;
  border-bottom: 1px solid rgba(255,255,255,0.05) !important;
}
.logo-text {
  font-size: 40px !important;
  font-weight: 700;
  color: #ffffff;
  letter-spacing: -0.5px;
}