@charset "UTF-8";
/* Importa la fuente desde Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Quicksand:wght@400;700&display=swap');

/* Reset básico y fuente principal */
* {
    margin: 0;
    padding: 0;
    font-family: 'Quicksand', sans-serif;
}

/* Estilos generales de la página */
html, body {
    background-image: url('../../../images/BG_01.jpg');
    background-size: cover;
    background-repeat: no-repeat;
    height: 100%;
    width: 100%;
    overflow-x: hidden;
    overflow-y: auto;
}

#game-container {
    height: calc(978px * (min(1, 100vw / 550)));
    width: calc(550px * (min(1, 100vw / 550)));
    max-width: 550px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    background-image: url('../../../images/game_gtv_game_bg.jpg');
    background-size: contain;
    background-repeat: repeat;
    background-position: center;
}

#logo-container, #quote-container, #timer-container, #answer-container, #next-button-container {
    width: 100%;
    max-width: 550px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
}

#logo-container {
	position: relative;
    height: 90px;
    max-height: 15%;
    background-image: url('../../../images/game_gtv_logo.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
		
.close-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(150px, -10px); /* Ajusta los valores para mover el botón desde el centro */
    width: 40px;
    height: 40px;
    border: none;
    border-radius: 50%;
    background-color: #ef8506;
    color: white;
    font-size: 1.3em;
	font-weight: bold;
    cursor: pointer;
}

.close-button:hover {
    background-color: #bc0000;
}


#quote-container {
    height: 187.2px;
    max-height: 23.55%;
    background-image: url('../../../images/game_gtv_question_bg.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    align-items: center;
    justify-content: center;
    position: relative;
}
		
#timer-container {
    height: 88.2px;
    max-height: 9.5%;
    background-image: url('../images/bg_timer_02.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    align-items: center;
    justify-content: center;
    font-size: 2em;
    font-weight: 600;
    color: #330000;
}

#answer-container {
    height: auto;
    align-items: center;
    justify-content: center;
    position: relative;
}

#next-button-container {
    height: 12.95%;
    align-items: center;
    justify-content: center;
    display: flex;
}
		
#quote-text {
    color: white;
    font-size: 1.4em;
    font-weight: 600;
    text-align: center;
    max-width: 335px;
    margin: 0 auto;
}

#language-title {
    color: white;
    font-size: 1.6em;
    font-weight: 800;
    text-align: center;
    margin-bottom: 80px;
    z-index: 1;
}

#language-dropdown {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -90%);
    width: 300px;
    height: 50px;
    font-size: 1.2em;
    font-weight: 700;
}
		
#question-select-title {
    color: white;
    font-size: 1.6em;
    font-weight: 800;
    text-align: center;
    margin-bottom: 30px;
    z-index: 1;
}

#question-amount-dropdown {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, 130%);
    width: 300px;
    height: 50px;
    font-size: 1.2em;
    font-weight: 700;
}

.answer-button {
    width: 80%;
    padding: 12px;
    margin: 5px 0;
    background-color: #a90e1b;
    border: none;
    border-radius: 30px;
    color: white;
    font-size: 1.2em;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.1s;
    display: none;
}

.answer-button:hover:enabled {
    background-color: #78020c;
}

.answer-button:disabled {
    cursor: not-allowed;
    opacity: 0.5;
    pointer-events: none;
}

.next-button {
    width: 80%;
    padding: 20px;
    margin: 15px 10px 20px 10px;
    background-color: #3b2910;
    border: none;
    border-radius: 45px;
    color: white;
    font-size: 1.5em;
    font-weight: 600;
    cursor: not-allowed;
    display: none;
}

.next-button:hover:enabled {
    background-color: #000000;
}

.game-results-button, .play-again-button, .save-score-button, .submit-score-button, .start-button {
    width: 80%;
    padding: 20px;
    margin: 15px 10px;
    background-color: #3b2910;
    border: none;
    border-radius: 45px;
    color: white;
    font-size: 1.5em;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.3s;
    display: block;
    opacity: 1;
}

.game-results-button:hover, .save-score-button:hover, .submit-score-button:hover {
    background-color: #000000;
}
		
.save-score-button {
	transform: translate(0%, -20%);
}

.start-button, .play-again-button {
	font-weight: 800;
	background-color: green;
	margin: 0;
	transform: translate(0%, -20%);
}
		
.play-again-button:hover, .start-button:hover {
	background-color: #339900;
}
		
.submit-score-button {
    margin: 8px;
	width: 40%;
	transform: translate(0%, -10%);
}
	
.save-score-button:disabled, .save-score-button:disabled:hover {
    cursor: not-allowed;
    opacity: 0.5;
    background-color: #3b2910; /* Mantener el color de fondo original sin cambiar */
}
		
.result-box {
    width: 80%;
    padding: 12px;
    margin: 5px 0;
    border-radius: 10px;
    opacity: 0.5;
}

.result-box.correct {
    border: 2px solid green;
    background-color: green;
}

.result-box.incorrect {
    border: 2px solid red;
    background-color: red;
}

.result-title {
    margin-bottom: 5px;
    color: white;
    font-size: 1.5em;
    font-weight: 900;
	font-style: italic;
}
.result-quote {
    margin-bottom: 5px;
    color: white;
    font-size: 1.2em;
	font-weight: 600;
}
.result-context {
    margin-bottom: 5px;
    color: white;
    font-size: 1.2em;
}
.name-input {
    width: 70%;
	height: 40px;
    padding: 10px;
    margin: 5px 10px;
	transform: translate(0%, -20%);
    font-size: 1.2em;
    border-radius: 5px;
    border: 2px solid #3b2910;
    text-align: center;
}

.final-score {
    color: white;
    font-size: 2.5em; 
    font-weight: bold;
    text-align: center;
}

/* Estilos para la tabla de puntaje */
.scoreboard-table {
    width: 80%;
    margin: 10px auto;
    border-collapse: collapse;
    background-color: #8a5730; /* Fondo marrón para el cuerpo de la tabla */
    color: white;
	text-align: center;
    border-radius: 10px;
    overflow: hidden; /* Asegura que los bordes redondeados se vean correctamente */
}

.scoreboard-header {
	color: #d0ad91;
    background-color: #8a5730; /* Marrón más oscuro para la fila de encabezado */
}

.scoreboard-header th {
    padding: 10px;
    text-align: center;
    border-bottom: 2px solid white;
}

.scoreboard-header th:first-child {
    border-top-left-radius: 10px;
}

.scoreboard-header th:last-child {
    border-top-right-radius: 10px;
}

.scoreboard-table tr td {
    padding: 15px;
    height: 40px; /* Ajusta la altura aquí */
    text-align: center;
    border-bottom: 1px solid white;
}
			
/* Nuevo estilo para el título de los mejores puntajes */
    .scoreboard-title {
     text-align: center;
     font-size: 1.5em;
     font-weight: 800;
     color: #ffffff; /* Color del Titulo de la tabla */
     background-color: #251004; /* Fondo marrón oscuro para coincidir con el encabezado */
     padding: 10px;
     width: 100%;
    }

.game-summary-title-container {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 60px; /* Ajusta esto según sea necesario para acomodar el tamaño de fuente */
    width: 80%; /* O el ancho que prefieras */
    margin: 30px 0; /* Ajusta según sea necesario */
    padding: 0; /* Asegúrate de que no hay padding adicional */
	transform: translate(0%, -50%);
    border-radius: 45px;
    border: 2px solid #3b2910;
    background-color: transparent;
    box-sizing: border-box; /* Esto asegura que el padding y border se incluyan en el ancho y la altura */
}

.game-summary-title {
    margin: 0; /* Elimina cualquier margen predeterminado */
    padding: 0; /* Asegúrate de que no hay padding que empuje el texto */
    font-size: 24px; /* O el tamaño que prefieras */
    font-weight: bold; /* Para negrita */
    line-height: 60px; /* Esto puede ayudar a centrar verticalmente el texto */
    text-align: center; /* Centra el texto horizontalmente */
}

				
@media (max-width: 450px) {
    #logo-container,
    #quote-container,
    #timer-container {
        background-size: 450px auto;
    }
}
