/* /Pages/AdminVentaCorporativa.cshtml.rz.scp.css */
/* /Pages/Control.cshtml.rz.scp.css */
:root[b-16p9gn7qyi] {
    --morado-principal: #4A148C;
    --morado-oscuro: #320B61;
    --negro-puro: #111111;
    --exito: #2E7D32;
    --error: #C62828;
    --blanco: #FFFFFF;
    --gris-claro: #F5F5F5;
}
html[b-16p9gn7qyi], body[b-16p9gn7qyi], .bingo-dashboard[b-16p9gn7qyi] {
    /* 1. Ruta de tu imagen institucional (puedes guardarla en wwwroot/images/fondo-bcp.jpg) */
    background-image: url("../image/tableroBingoPNSR2026.png") !important;
    /* 2. SOLUCIÓN CRÍTICA: Fuerza a la imagen a encajar de forma exacta al 100% 
          del ancho y alto de la pantalla, eliminando cualquier tipo de recorte */
    background-size: 100% 100% !important;
    background-position: top center !important;
    background-repeat: no-repeat !important;
    /* 3. Forzar el contenedor a ser rígido con el tamaño de la pantalla */
    height: 100vh !important;
    width: 100vw !important;
    max-height: 100vh !important;
    max-width: 100vw !important;
    margin: 0 !important;
    padding: 10px !important; /* Margen interno mínimo de seguridad */
    position: relative;
    overflow: hidden !important; /* Evita barras de desplazamiento accidentales */
}
/* --- REJILLA (GRID) DEL TABLERO DE BINGO --- */
.bingo-grid-container[b-16p9gn7qyi] {
    overflow: auto;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.bingo-row[b-16p9gn7qyi] {
    display: grid;
    grid-template-columns: 1.0fr repeat(15, 1.0fr); /* La letra es el doble de grande que los números */
    gap: 5px;
    width: 100%;
}

.bingo-title[b-16p9gn7qyi] {
    font-size: 3.5rem !important;
    font-weight: bold !important;
    color: #FB7424;
    border: dashed 2px #FB7424;
    padding: 5px 10px;
    /*color: #E040FB !important;*/ /* Un morado claro brillante para que resalte en el fondo negro */
}
.bingo-letter[b-16p9gn7qyi] {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.5rem;
    font-weight: 800;
    border-radius: 10px;
    color: #fff;
    text-shadow: 0 0 10px rgba(255,255,255,0.8);
}

.letter-b[b-16p9gn7qyi] {
    /*background: linear-gradient(135deg, rgba(255, 90, 15, 0.8), rgba(255, 90, 15, 0.8));*/
    /*background: linear-gradient(135deg, rgba(255, 90, 15, 0.8), rgba(255, 90, 15, 0.8));*/
    background-image: linear-gradient(135deg, rgba(56, 86, 86, 0.9), rgba(56, 86, 86, 0.9));
    box-shadow: 0 0 15px rgba(56, 86, 86,0.4);
}
/* Celdas de números inactivas */
.bingo-number[b-16p9gn7qyi] {
    background-color: white !important;
    color: #011e90;
    border: 3px, solid, #011e90;
    border-radius: 20px;
    font-size: 1.5rem !important;
    font-weight: 800;
    aspect-ratio: 1 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    box-shadow: 0 0 15px rgba(56, 86, 86,0.4);
}
    /* ESTADO CRÍTICO: Bolilla marcada/cantada en el tablero (Brillo Neón Absoluto) */
    .bingo-number.bolillaOk[b-16p9gn7qyi] {
        /*background: linear-gradient(135deg, #ff0055, #ff00aa) !important;*/
        background: linear-gradient(135deg, #FB7424, #E56D00) !important;
        /* Al activarse, el número pasa a blanco sólido ultra brillante */
        color: #ffffff !important;
        /*border-color: #ff00ff !important;*/
        border-color: #FB7424 !important;
        text-shadow: 0 0 10px #ffffff, 0 0 20px #ff0055;
        box-shadow: 0 0 20px #E56D00, inset 0 0 8px rgba(255,255,255,0.6) !important;
        animation: neonPulse-b-16p9gn7qyi 2s infinite alternate;
    }
/* Animación de pulso continuo para los números ya cantados */
@keyframes neonPulse-b-16p9gn7qyi {
    0% {
        /*box-shadow: 0 0 12px #ff0055, inset 0 0 6px rgba(255,255,255,0.4);*/
        box-shadow: 0 0 12px #ff0055, inset 0 0 6px rgba(255,255,255,0.4);
    }

    100% {
        /*box-shadow: 0 0 22px #ff00aa, inset 0 0 12px rgba(255,255,255,0.7);*/
        box-shadow: 0 0 22px #ff00aa, inset 0 0 12px rgba(255,255,255,0.7);
    }
}
/* Animación sutil de espera en íconos */
.shadow-pulse[b-16p9gn7qyi] {
    animation: iconFloat 3s ease-in-out infinite alternate;
}
/* /Pages/Shared/_Layout.cshtml.rz.scp.css */
/* Please see documentation at https://learn.microsoft.com/aspnet/core/client-side/bundling-and-minification
for details on configuring this project to bundle and minify static web assets. */

a.navbar-brand[b-c8gp9j2xo4] {
  white-space: normal;
  text-align: center;
  word-break: break-all;
}

a[b-c8gp9j2xo4] {
  color: #0077cc;
}

.btn-primary[b-c8gp9j2xo4] {
  color: #fff;
  background-color: #1b6ec2;
  border-color: #1861ac;
}

.nav-pills .nav-link.active[b-c8gp9j2xo4], .nav-pills .show > .nav-link[b-c8gp9j2xo4] {
  color: #fff;
  background-color: #1b6ec2;
  border-color: #1861ac;
}

.border-top[b-c8gp9j2xo4] {
  border-top: 1px solid #e5e5e5;
}
.border-bottom[b-c8gp9j2xo4] {
  border-bottom: 1px solid #e5e5e5;
}

.box-shadow[b-c8gp9j2xo4] {
  box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
}

button.accept-policy[b-c8gp9j2xo4] {
  font-size: 1rem;
  line-height: inherit;
}

.footer[b-c8gp9j2xo4] {
  position: absolute;
  bottom: 0;
  width: 100%;
  white-space: nowrap;
  line-height: 60px;
}
/* /Pages/Sorteos.cshtml.rz.scp.css */
:root[b-8ru7owwyvg] {
    --bg-dark-core: #0a0c14;
    --neon-green: #39ff14;
    --glass-bg: rgba(16, 20, 36, 0.65);
    --border-glass: rgba(255, 255, 255, 0.08);
}

html[b-8ru7owwyvg], body[b-8ru7owwyvg], .bingo-dashboard[b-8ru7owwyvg] {
    /* 1. Ruta de tu imagen institucional (puedes guardarla en wwwroot/images/fondo-bcp.jpg) */
    background-image: url("../image/tableroBingoPNSR2026.png") !important;
    /* 2. SOLUCIÓN CRÍTICA: Fuerza a la imagen a encajar de forma exacta al 100% 
          del ancho y alto de la pantalla, eliminando cualquier tipo de recorte */
    background-size: 100% 100% !important;
    background-position: top center !important;
    background-repeat: no-repeat !important;
    /* 3. Forzar el contenedor a ser rígido con el tamaño de la pantalla */
    height: 100vh !important;
    width: 100vw !important;
    max-height: 100vh !important;
    max-width: 100vw !important;
    margin: 0 !important;
    padding: 10px !important; /* Margen interno mínimo de seguridad */
    position: relative;
    overflow: hidden !important; /* Evita barras de desplazamiento accidentales */
}
/* Tipografías de tamaño masivo para lectura a gran distancia */
.font-giant[b-8ru7owwyvg] {
    font-size: 1.6rem !important;
    font-weight: 700;
}
.rotulo_sorteo[b-8ru7owwyvg] {
    height: 60px;
    /*background-color: rgb(237, 212, 177);*/
    background-color: rgba(255, 90, 15, 0.7);
    /*background-color: rgb(37, 48, 109);*/
    /*color: rgb(56, 86, 86);*/
    color: rgba(255,255,255, 1);
    /*background-color: rgba(255,255,255,0.5);*/
    border-radius: 35px;
    /*color: rgb(235, 167, 0);*/
    /*align-items: center;*/
    font-size: 35px;
    font-weight: bold;
}


.cajaSorteo[b-8ru7owwyvg] {
    box-shadow: inset 0 0 15px rgba(135, 135, 135, .1), 0 0 18px 3px rgba(0, 0, 0, .3);
    align-items: center;
    width: 100%;
    height: 100%;
    font-size: 160px;
    font-weight: bold;
    background-color: rgba(255, 90, 15, 0.9);
    /*background-color: rgb(37, 48, 109);*/
    color: white;
    animation: flicker-b-8ru7owwyvg 1.5s infinite alternate;
}


/* 1. BOTÓN PLAY: Estilo Ultra Neón Firme y Dinámico */
#btnPlay[b-8ru7owwyvg] {
    background: linear-gradient(135deg, #11ff00, #00aa50) !important;
    color: #000000 !important; /* Texto oscuro para máximo contraste sobre fondo brillante */
    border: none !important;
    font-weight: 900 !important;
    letter-spacing: 2px;
    text-transform: uppercase;
    box-shadow: 0 0 15px rgba(57, 255, 20, 0.6), 0 0 30px rgba(57, 255, 20, 0.3) !important;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    position: relative;
    overflow: hidden;
}

    #_btn_play:hover[b-8ru7owwyvg] {
        transform: scale(1.05);
        box-shadow: 0 0 25px rgba(57, 255, 20, 0.9), 0 0 50px rgba(57, 255, 20, 0.5) !important;
    }

.btn-neon-green[b-8ru7owwyvg] {
    background: transparent;
    color: var(--neon-green);
    border: 2px solid var(--neon-green);
    font-weight: bold;
    transition: all 0.3s;
}

    .btn-neon-green:hover[b-8ru7owwyvg] {
        background: var(--neon-green);
        color: #000;
        box-shadow: 0 0 20px var(--neon-green);
    }

/* Flickering animation */
@keyframes flicker-b-8ru7owwyvg {

    0%, 18%, 22%, 25%, 53%, 57%, 100% {
        text-shadow: 0 0 4px #fff, 0 0 11px #fff, 0 0 19px #fff, 0 0 40px #0fa, 0 0 80px #0fa, 0 0 90px #0fa, 0 0 100px #0fa, 0 0 150px #0fa;
    }

    20%, 24%, 25% {
        text-shadow: none;
    }
}



/* /Pages/TableroBingo.cshtml.rz.scp.css */
/* ================= CONFIGURACIÓN DE FONDO CORPORATIVO CON IMAGEN ================= */

html[b-u66htpmkyx], body[b-u66htpmkyx], .bingo-dashboard[b-u66htpmkyx] {
    /* 1. Ruta de tu imagen institucional (puedes guardarla en wwwroot/images/fondo-bcp.jpg) */
    background-image: url("../image/tableroBingoPNSR2026.png") !important;
    /* 2. SOLUCIÓN CRÍTICA: Fuerza a la imagen a encajar de forma exacta al 100% 
          del ancho y alto de la pantalla, eliminando cualquier tipo de recorte */
    background-size: 100% 100% !important;
    background-position: top center !important;
    background-repeat: no-repeat !important;
    /* 3. Forzar el contenedor a ser rígido con el tamaño de la pantalla */
    height: 100vh !important;
    width: 100vw !important;
    max-height: 100vh !important;
    max-width: 100vw !important;
    margin: 0 !important;
    padding: 10px !important; /* Margen interno mínimo de seguridad */
    position: relative;
    overflow: hidden !important; /* Evita barras de desplazamiento accidentales */
}
/* Tipografías de tamaño masivo para lectura a gran distancia */
.font-giant[b-u66htpmkyx] {
    font-size: 1.6rem !important;
    font-weight: 700;
}
.border-neon-cyan[b-u66htpmkyx] {
    border: 2px solid var(--neon-cyan) !important;
    box-shadow: 0 0 10px rgba(0, 240, 255, 0.2);
}

/* Ajuste de prioridad para que los componentes queden por encima del fondo */
.header-branding-container[b-u66htpmkyx],
.body-game-container[b-u66htpmkyx] {
    position: relative;
    z-index: 1;
}
/* --- REJILLA (GRID) DEL TABLERO DE BINGO --- */
.bingo-grid-container[b-u66htpmkyx] {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.bingo-row[b-u66htpmkyx] {
    display: grid;
    grid-template-columns: 1.0fr repeat(15, 1fr); /* La letra es el doble de grande que los números */
    gap:5px;
    width: 95%;
}
/* Estilos de las Letras Iniciales (B-I-N-G-O) */
.bingo-letter[b-u66htpmkyx] {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 4.5rem;
    font-weight: 1000;
    border-radius: 12px;
    color: #fff;
    text-shadow: 0 0 10px rgba(255,255,255,0.8);
}

.letter-b[b-u66htpmkyx] {
    /*background: linear-gradient(135deg, rgb(56, 86, 86), rgb(56, 86, 86));*/
    /*background: linear-gradient(135deg, rgba(56, 86, 86, 0.4), rgba(56, 86, 86, 0.4));*/
    background-image: linear-gradient(135deg, rgba(56, 86, 86, 0.8), rgba(56, 86, 86, 0.6));
    box-shadow: 0 0 15px rgba(56, 86, 86,0.4);
}
/* Celdas de números inactivas */
.bingo-number[b-u66htpmkyx] {
    background-color: white !important;
    /*background-color: rgba(255, 255, 255, 0.05) !important;*/
    /* letra azul Borde naranja */
    /*color: rgb(56, 32, 128);
    border: 5px, solid, rgb(235, 167, 0);*/
    /* letra y borde verde pizarra */
    /*color: rgb(56, 86, 86);*/
    color: #011e90;
    border: 5px, solid, #011e90;
    /*border: 5px, solid, rgb(56, 86, 86);*/
    /*color: rgba(255, 255, 255, 0.45) !important;
    border: 1px solid rgba(255, 255, 255, 0.45) !important;*/
    border-radius: 20px;
    font-size: 3.2rem !important;
    font-weight: 800;
    aspect-ratio: 1 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    box-shadow: 0 0 15px rgba(56, 86, 86,0.4);
}
/* Secuenciador inferior (Historial) */
.sequence-container .seq-box[b-u66htpmkyx] {
    width: 65px;
    height: 65px;
    border-radius: 50%;
    background: #1a1f36;
    border: 2px solid rgba(255,255,255,0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    font-weight: 700;
    color: #fff;
}

.sequence-container .seq-latest[b-u66htpmkyx] {
    background: linear-gradient(135deg, var(--neon-purple), #da70d6);
    border-color: #fff;
    box-shadow: 0 0 15px var(--neon-purple);
    transform: scale(1.1);
}

/* Animación sutil de espera en íconos */
.shadow-pulse[b-u66htpmkyx] {
    animation: iconFloat-b-u66htpmkyx 3s ease-in-out infinite alternate;
}
/* 1. BOTÓN PLAY: Estilo Ultra Neón Firme y Dinámico */
#btn_play[b-u66htpmkyx] {
    background: linear-gradient(135deg, #11ff00, #00aa50) !important;
    color: #000000 !important; /* Texto oscuro para máximo contraste sobre fondo brillante */
    border: none !important;
    font-weight: 900 !important;
    letter-spacing: 2px;
    text-transform: uppercase;
    box-shadow: 0 0 15px rgba(57, 255, 20, 0.6), 0 0 30px rgba(57, 255, 20, 0.3) !important;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    position: relative;
    overflow: hidden;
}
    #btn_play:hover[b-u66htpmkyx] {
        transform: scale(1.05);
        box-shadow: 0 0 25px rgba(57, 255, 20, 0.9), 0 0 50px rgba(57, 255, 20, 0.5) !important;
    }
/* Display de Bolilla Actual (Círculo Superior Grande) */
.bolilla-display[b-u66htpmkyx] {
    width: 140px !important; /* Ajustamos el tamaño para que sea el gran centro de atención */
    height: 70px !important; /* Formato rectangular estilizado moderno para pantallas LED */
    background: linear-gradient(135deg, #E56D00, #FB7424) !important;
    /*Fusión perfecta de los neones del tablero*/
    border: 3.2px solid #ffffff !important;
    border-radius: 12px !important;
    font-size: 3rem !important; /* Tamaño masivo */
    font-weight: 900 !important;
    color: #ffffff !important; /* Texto blanco sólido ultra brillante */
    display: flex;
    align-items: center;
    justify-content: center;
    letter-spacing: 1px;
    /* Efecto multicapa de sombras neón púrpura/rosa */
    box-shadow: 0 0 20px #b026ff, 0 0 40px rgba(255, 0, 85, 0.6), inset 0 0 15px rgba(255, 255, 255, 0.5) !important;
    /* ANIMACIÓN AUTOMÁTICA: Hace el efecto de resaltado ("hover automático") cada 2 segundos */
    animation: pulsoNeonResaltado 2s infinite ease-in-out;
    transition: all 0.3s ease;
}
/* ESTADO CRÍTICO: Bolilla marcada/cantada en el tablero (Brillo Neón Absoluto) */
.bingo-number.bolillaOk[b-u66htpmkyx] {
    /*background: linear-gradient(135deg, #ff0055, #ff00aa) !important;*/
    background: linear-gradient(135deg, #FB7424, #E56D00) !important;
    /* Al activarse, el número pasa a blanco sólido ultra brillante */
    color: #ffffff !important;
    /*border-color: #ff00ff !important;*/
    border-color: #FB7424 !important;
    text-shadow: 0 0 10px #ffffff, 0 0 20px #ff0055;
    box-shadow: 0 0 20px #E56D00, inset 0 0 8px rgba(255,255,255,0.6) !important;
    animation: neonPulse-b-u66htpmkyx 2s infinite alternate;
}
/* Animación de pulso continuo para los números ya cantados */
@keyframes neonPulse-b-u66htpmkyx {
    0% {
        /*box-shadow: 0 0 12px #ff0055, inset 0 0 6px rgba(255,255,255,0.4);*/
        box-shadow: 0 0 12px #ff0055, inset 0 0 6px rgba(255,255,255,0.4);
    }

    100% {
        /*box-shadow: 0 0 22px #ff00aa, inset 0 0 12px rgba(255,255,255,0.7);*/
        box-shadow: 0 0 22px #ff00aa, inset 0 0 12px rgba(255,255,255,0.7);
    }
}
/* Animación sutil de espera en íconos */
.shadow-pulse[b-u66htpmkyx] {
    animation: iconFloat-b-u66htpmkyx 3s ease-in-out infinite alternate;
}

@keyframes iconFloat-b-u66htpmkyx {
    0% {
        transform: translateY(0px);
        filter: drop-shadow(0 0 5px var(--neon-pink));
    }

    100% {
        transform: translateY(-8px);
        filter: drop-shadow(0 0 15px var(--neon-pink));
    }
}
