/* --- FIX CLS Y VISIBILIDAD --- */
#ny-drawer-global { 
    position: fixed; 
    top: 0; 
    left: 0; 
    width: 300px; 
    height: 100vh; 
    background: #fff; 
    z-index: 1000000 !important; 
    transform: translateX(-105%); 
    visibility: hidden; 
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.3s; 
    display: flex !important; 
    flex-direction: column;
}

/* Ajuste de Drawer para Admin Logueado */
.admin-bar #ny-drawer-global { top: 32px !important; height: calc(100vh - 32px) !important; }

#ny-drawer-global.is-open { 
    transform: translateX(0) !important; 
    visibility: visible; 
    box-shadow: 10px 0 30px rgba(0,0,0,0.2); 
}

/* --- ESTILOS BASE --- */
.ny-header-wrapper { 
    display: block !important; 
    width: 100%; 
    position: sticky; 
    top: 0; 
    z-index: 99999; 
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important; 
    background: #ffffff; 
    margin: 0 !important; 
}

/* Empuje para Admin Bar */
.admin-bar .ny-header-wrapper {
    top: 32px !important;
}

@media screen and (max-width: 782px) {
    .admin-bar .ny-header-wrapper { top: 46px !important; }
}

.ny-header-core { 
    width: 100%; 
    height: 80px;
    background: #ffffff; 
    box-shadow: 0 2px 10px rgba(0,0,0,0.1); 
    display: flex !important; 
    align-items: center; 
}

.ny-header-inner { 
    width: 100%; 
    max-width: 1200px; 
    display: flex; 
    align-items: center; 
    justify-content: space-between; 
    padding: 0 15px; 
    margin: 0 auto !important; 
    gap: 10px; 
}

/* --- BOTONES E ICONOS (RESTAURADOS Y VISIBLES) --- */
.ny-left-group, .ny-right-group { display: flex; align-items: center; gap: 8px; }

.ny-radio-trigger, .ny-search-btn-trigger { 
    width: 40px; 
    height: 40px; 
    border-radius: 50%; 
    border: none; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    cursor: pointer; 
    transition: transform 0.2s;
}

/* Botón Radio: Fondo Azul, Icono Blanco */
.ny-radio-trigger { 
    background: #083363 !important; 
    color: #ffffff !important; 
}

/* Botón Buscador: Fondo Azul, Icono Blanco (CORREGIDO) */
.ny-search-btn-trigger { 
    background: #083363 !important; 
    color: #ffffff !important; 
}

/* Forzar el color blanco en el SVG del buscador */
.ny-search-btn-trigger svg { 
    display: block !important; 
    stroke: #ffffff !important; 
    width: 18px;
    height: 18px;
}

/* Icono de menú Hamburguesa (Blanco) */
#ny-trigger-open {
    color: #ffffff !important;
}

#ny-trigger-open svg {
    stroke: #083363 !important; /* El trazo debe ser azul para verse sobre fondo blanco de la barra */
    display: block !important;
}

/* Ajuste del botón hamburguesa para que tenga un fondo si es necesario */
#ny-trigger-open {
    background: #083363 !important;
    border-radius: 4px;
    padding: 4px;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#ny-trigger-open svg {
    stroke: #ffffff !important; /* Ahora que tiene fondo azul, el icono debe ser blanco */
}

/* Animación Radio */
.ny-radio-trigger:not(.is-playing) { animation: ny-pulse-mini 2s infinite; animation-delay: 2s; }
.ny-radio-trigger.is-playing { background: #cc0000 !important; }

@keyframes ny-pulse-mini { 
    0% { box-shadow: 0 0 0 0 rgba(8, 51, 99, 0.4); } 
    70% { box-shadow: 0 0 0 8px rgba(8, 51, 99, 0); } 
    100% { box-shadow: 0 0 0 0 rgba(8, 51, 99, 0); } 
}

/* --- BRANDING --- */
.ny-brand-anchor { display: flex; align-items: center; gap: 12px; text-decoration: none !important; flex: 1; justify-content: center; }
.ny-brand-logo { width: 60px; height: 60px; object-fit: contain; }
.ny-brand-name { font-size: 20px; font-weight: 950; color: #083363; text-transform: uppercase; white-space: nowrap; }

.ny-btn-vivo { background: #cc0000; color: #fff !important; padding: 10px 16px; border-radius: 6px; font-size: 12px; font-weight: 800; text-decoration: none; }

.ny-drawer-link { padding: 16px 20px; border-bottom: 1px solid #f2f2f2; text-decoration: none !important; color: #111 !important; font-weight: 700; display: flex; align-items: center; gap: 12px; }

@media (max-width: 767px) { 
    .ny-header-core { height: 65px; } 
    .ny-brand-logo { width: 48px; height: 48px; } 
    .ny-brand-name { display: none; } 
}
