:root {
	/* Colors */
	--amarillo: #faba14;
	--azul: #144183;
	--gris: #5D5D5D;
	--gris2: #5D5D5D;

	/* Shadows */
	--shadow-1: 0 1px 3px 1px rgb(66 66 66 / 20%),
		0 2px 8px 4px rgb(66 66 66 / 10%);
}

@font-face {
	font-family: "BentonSans-Light";
	src: url("/src/fonts/bentonSans/BentonSans-Light.woff2") format("woff2"),
		url("/src/fonts/bentonSans/BentonSans-Light.woff") format("woff");
}

@font-face {
	font-family: "BentonSans-Medium";
	src: url("/src/fonts/bentonSans/BentonSans-Medium.woff2") format("woff2"),
		url("/src/fonts/bentonSans/BentonSans-Medium.woff") format("woff");
}

@font-face {
	font-family: "BentonSans-Bold";
	src: url("/src/fonts/bentonSans/BentonSans-Bold.woff2") format("woff2"),
		url("/src/fonts/bentonSans/BentonSans-Bold.woff") format("woff");
}

/*-- END THEME COLORS --*/

/*-- BASE --*/
* {
	margin: 0px;
	padding: 0px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-family: "BentonSans-Medium";
}

body {
	background-color: #ffffff;
	margin: 0px;
}

::-webkit-scrollbar {
	width: 6px;
	height: 5px;
}

::-webkit-scrollbar-thumb {
	background-color: #d3d3d3;
}

a {
	text-decoration: none;
}

button {
	cursor: pointer;
}

input,
textarea,
select {
	outline: none;
}

header {
    background-color: #164284;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 20px;
    position: absolute;
    z-index: 1;
    clip-path: ellipse(100% 95% at 50% 0%);
    height: 90px;
    left: 0px;
    top: 0px;
    width: 100%;
}

#content-go-back {  
    width: 35px;
    display: flex;
    justify-content: center;
    align-items: center;
}

#content-go-back a img{
    width: 100%;
    border-radius: 50%;
}

#content-monedas-header {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2px;
}

#content-monedas-header >div{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

#modedas-h {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    padding-left: 30px;
    padding: 4px 10px;
    border-radius: 30px;
    border: 1px solid #fff;
}

#modedas-h img {
    width: 30px;
    left: -10px;
    position: absolute;
}

#modedas-h span {
    padding-left: 20px;
    font-size: 14px;
    color: #fff;
}

#content-monedas-header>div >img {
    width: 30px;
}

#content-logo-h-img-user {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 10px;
    gap: 10px;
}

#content-logo-h-img-user img:first-child{
    margin-bottom: 5px;
}

#content-logo-h-img-user img{
    height: 35px;
}

#content-logo-h-img-user img:last-child{
    height: 60px;
}

#c-time {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}

#c-time svg{
    width: 25px;
    fill: #fff;
}

#c-time span{
    font-size: 16px;
    color: #fff
}

header > img{
    height: 35px;
}

footer {
    width: 100%;
    height: 70px;
    background-color: #164284;
    position: unset;
    bottom: 0px;
    left: 0px;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
}
.hide{
    display: none;
}
#p-content-cas {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    height: 100dvh;
}

#principal-content-casino {
    width: 100%;
    height: calc(100dvh - 160px);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    overflow-y: auto;
    margin-top: 90px;
    padding: 20px;
}

.titulo {
    width: 100%;
    text-align: center;
    color: var(--azul);
	font-family: "BentonSans-Bold";
    font-size: 20px;
}

.texto {
    width: 100%;
    text-align: center;
    color: var(--gris2);
	font-family: "BentonSans-Bold";
    font-size: 16px;
}

.btn {
    font-size: 16px;
    padding: 4px 20px;
    border-radius: 20px;
    border: none;
    box-shadow: var(--shadow-1);
}

.btn.amarillo {
    background-color: #164284;
    color: #fff;
}

.btn.rojo {
    background-color: #DB0933;
    color: #fff;
}

.item-footer {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 4px;
    border: none;
    background-color: transparent;
}

.item-footer img{
    height: 40px;
    border-radius: 50%;
}

.item-footer span{
    font-size: 8px;
    color: #fff;
}

#content-user-flotante {
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    left: 5px;
    top: 74px;
    gap: 3px;
}

#content-user-flotante img{
    width: 50px;
}

#content-user-flotante span{
    font-size: 8px;
    color: #000;
    background-color: var(--amarillo);
    border-radius: 20px;
    padding: 2px 8px;
}

#content-apuesta {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
}

#content-apuesta span {
    font-size: 24px;
    color: var(--azul);
	font-family: "BentonSans-Bold";
}

#content-btns-mas-menos {
    width: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}
#content-btns-mas-menos input{
    width: 100%;
    padding: 4px 20px;
    border-radius: 20px;
    background-color: var(--azul);
    border: none;
    text-align: center;
	font-family: "BentonSans-Bold";
    font-size: 25px;
    color: #fff;
}

#content-btns-mas-menos button {
    width: 55px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    border: none;
    position: absolute;
}

#content-btns-mas-menos button img {
    width: 100%;
}

#btn-menos-fichas {
    left: -7px;
}

#btn-mas-fichas {
    right: -7px;
}


/* Overlay */
.popup-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.5);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 1000;
}

.popup-overlay.active {
    display: flex;
}

/* Popup box */
.popup-quiz {
    position: relative;
    width: 400px;
    max-width: 90%;
    background: #fff;
    border-radius: 16px;
    padding: 20px;
    text-align: center;
    font-family: "BentonSans-Bold", sans-serif;
    max-height: 90dvh;
    overflow: auto;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
}



/* Close button */
.popup-close-m,
.popup-close {
    position: absolute;
    top: 10px;
    right: 10px;
    border: none;
    background: transparent;
    font-size: 24px;
    cursor: pointer;
}

/* Avatar + Timer */
.popup-avatar {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 15px;
}

.popup-avatar img {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    margin-bottom: 8px;
}

.popup-timer {
    background: #164284;
    color: #fff;
    font-weight: bold;
    padding: 4px 12px;
    border-radius: 12px;
    font-size: 16px;
}

/* Question */
.popup-question {
    font-size: 14px;
    color: #333;
    margin-bottom: 15px;
}

/* Options */
.popup-options {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 15px;
}

.popup-option {
    background: #F0F0F0;
    padding: 10px 12px;
    border-radius: 8px;
    cursor: pointer;
    text-align: left;
    font-size: 12px;
}

.popup-option.selected,
.popup-option.active {
    background: #ffd700a3;
}

/* Actions 50/50 + explanation */
.popup-actions {
    display: flex;
    justify-content: center;
    gap: 15px;
    margin-bottom: 15px;
}

.popup-actions button img{
    width: 50px;
}
.popup-actions button {
    border: none;
    border-radius: 50%;
    cursor: pointer;
    font-weight: bold;
}

.foot-modal {
    border-top: 1px #e3e3e3 solid;
    margin: 33px 0 0 0;
    padding: 13px 0 0px 0;
}
.popup-content {
    width: 100%;
}


/* Resultado específico */
.popup-result-icon {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.popup-result-icon img {
    width: 60px;
    margin-bottom: 10px;

}

.popup-result-text-2,
.popup-result-text {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 15px;
}

#content-popup-tragamonedas-2 {
    margin-bottom: 10px;
}


.popup-number {
    font-size: 32px;
    font-weight: bold;
    padding: 15px 25px;
    border-radius: 12px;
    display: flex; 
    justify-content: center;
    align-items: center;
    margin: 10px auto; 
    color: #fff;
    aspect-ratio: 1/1;
}

.popup-number.red {
    background: #FE0200;
}

.popup-number.black {
    background: #333;
}

.popup-result-msg {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    margin-top: 20px;
    margin-bottom: 20px;
}

.popup-result-msg span{
    color: #000;
	font-family: "BentonSans-Bold";
    font-size: 16px;
}

.popup-result-msg p{
    color: var(--azul);
    font-size: 12px;
}

.bnn {
    width: 50px;
    height: 50px;
    cursor: pointer;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: calc(50% - 0px);
    border-radius: 50%;
    z-index: 1;
}

.bnn-relative {
    position: relative !important;
    top: unset !important;
    left: unset !important;
    right: unset !important;
}

.bnn svg{
    fill: #606060;
    width: 100%;
}

#bnn-der-paq {
    right: 9px;
}

#bnn-izq-paq {
    left: 9px;
}

#content-flechas {
    width: 100%;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
}

#content-barra-apuesta {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 30px;
}

#btn-apostar {
    font-size: 22px;
}

#content-img-text-modal {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

#content-img-text-modal img {
    width: 90%;
}

#content-img-text-modal span {
    font-size: 16px;
    color: #000;
    font-family: "BentonSans-Light";
    text-align: center;
}

.qr-container {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
    padding: 20px;
    text-align: center;
}

.qr-container svg{
    width: 50%;
    fill: #164284;
}

.qr-container h1 {
    font-size: 25px;
    width: 80%;
    text-align: center;
	font-family: "BentonSans-Light";
    margin-bottom: 20px;
    line-height: 32px;
    color: #164284;
}

.qr-container input {
    padding: 10px;
    border-radius: 5px;
    border: none;
    margin-bottom: 20px;
    width: 100%;
    text-align: center;
    font-size: 1.5rem;
    text-transform: uppercase;
}

.qr-container button {
    padding: 10px 40px;
    border-radius: 50px;
    font-size: 25px;
}

.qr-container .error {
    color: #f56565;
    margin-top: 15px;
}

#qr-reader-container {
    width: 100%;
    justify-content: center;
    align-items: center;
    position: absolute;
    flex-direction: column;
    height: 100%;
    background-color: rgba(0,0,0,0.5);
}

#qr-reader {
    width: 100%;
}


#content-qr-pop {
    width: 90%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 1;
    position: relative;
    background-color: #fff;
    border-radius: 10px;
    padding: 10px;
}

#qr-message {
    font-size: 20px;
    color: #000;
    padding: 15px 0px;
}

#content-qr-pop a {
    margin: 20px 0px;
    font-size: 22px ;
}

.logo-flotante {
    position: absolute;
    top: 10px;
    right: 10px;
    height: 80px;   
}

#ayuda-cincuenta:disabled, #ayuda-cambio:disabled, button:disabled{
  cursor: not-allowed;
  opacity: 0.3;
}

.content-recuerda {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 10px;
    background-color: var(--azul);
    border-radius: 4px;
    gap: 7px;
}

.content-recuerda h3 {
    font-size: 18px;
    color: #fff;
	font-family: "BentonSans-Medium";
}

.content-recuerda p {
    font-size: 15px;
    color: #fff;
	font-family: "BentonSans-Light";
    text-align: start;
}

.content-instrucciones {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

.content-instrucciones h3 {
    font-size: 20px;
    color: var(--azul);
}

.content-instrucciones ol {
    font-size: 16px;
    color: var(--gris);
    padding: 20px;
    text-align: start;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 16px;
    line-height: 19px;
}

.content-instrucciones ol ul{
    font-size: 16px;
    color: var(--gris);
    text-align: start;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 16px;
    line-height: 19px;
}

@media screen and (min-width: 1024px) {
    body {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100dvh;
        width: 100%;
    }

    #p-content-cas {
        width: 500px;
        height: 95dvh;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        position: relative;
        border-radius: 10px;
        box-shadow: var(--shadow-1);        
        overflow: hidden;
    }
}