/* ========================================================================== ESTILOS GENERALES Y FONDO ========================================================================== */ * { margin: 0; padding: 0; box-shadow: none; box-sizing: border-box; } body { font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif; background-color: #f0f4f8; color: #2c3e50; display: flex; justify-content: center; align-items: center; min-height: 100vh; padding: 20px; } /* Contenedor principal estilo tarjeta */ .contenedor { width: 100%; max-width: 900px; background: #ffffff; padding: 40px; border-radius: 16px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08); text-align: center; animation: fadeIn 0.5s ease-in-out; } h1 { font-size: 2.5rem; color: #1a365d; margin-bottom: 30px; } h2 { font-size: 1.6rem; color: #2b6cb0; margin-top: 30px; margin-bottom: 15px; text-align: left; border-bottom: 2px solid #e2e8f0; padding-bottom: 8px; } p { font-size: 1.1rem; color: #718096; margin-bottom: 30px; } /* ========================================================================== PANTALLA DE ESPERA Y ANIMACIÓN DE CARGA (LOADER) ========================================================================== */ #pantalla-espera { padding: 60px 20px; } .loader { width: 60px; height: 60px; border: 6px solid #e2e8f0; border-top: 6px solid #3182ce; border-radius: 50%; margin: 0 auto; animation: spin 1.2s linear infinite; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } /* ========================================================================== TABLAS DE CLASIFICACIÓN (RANKING) ========================================================================== */ .tabla-ranking { width: 100%; border-collapse: collapse; margin-bottom: 20px; font-size: 1.05rem; } .tabla-ranking th, .tabla-ranking td { padding: 16px 20px; text-align: left; } .tabla-ranking th { background-color: #2d3748; color: #ffffff; font-weight: 600; text-transform: uppercase; font-size: 0.9rem; letter-spacing: 0.5px; } /* Alinear los puntos y aciertos a la derecha para mejor lectura numérica */ .tabla-ranking th:last-child, .tabla-ranking td:last-child { text-align: right; } .tabla-ranking tr { border-bottom: 1px solid #e2e8f0; transition: background-color 0.2s; } .tabla-ranking tbody tr:hover { background-color: #f7fafc; } /* ========================================================================== RESALTADO DE GANADORES (1º PUESTO) ========================================================================== */ /* Fila del Equipo Ganador y Jugador Ganador */ .tabla-ranking tr.top-team, .tabla-ranking tr.top-player { background-color: #fefcbf !important; /* Amarillo suave */ font-weight: bold; } /* Cambiar el color del texto del puesto #1 a dorado/corona */ .tabla-ranking tr.top-team td:first-child, .tabla-ranking tr.top-player td:first-child { color: #b7791f; font-size: 1.2rem; } .tabla-ranking td strong { color: #2f855a; /* Verde para destacar los aciertos conseguidos */ font-size: 1.1rem; } /* ========================================================================== EFECTOS VISUALES SUAVES ========================================================================== */ @keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } } /* ========================================================================== ESTILOS DEL BOTÓN DE RETORNO A INICIO ========================================================================== */ .contenedor-boton { margin-top: 40px; padding-top: 20px; text-align: center; } .btn-inicio { display: inline-block; background-color: #3182ce; /* Azul corporativo */ color: #ffffff; padding: 14px 28px; font-size: 1.1rem; font-weight: 600; text-decoration: none; border-radius: 8px; box-shadow: 0 4px 6px rgba(49, 130, 206, 0.2); transition: background-color 0.2s, transform 0.2s, box-shadow 0.2s; } .btn-inicio:hover { background-color: #2b6cb0; /* Azul ligeramente más oscuro al pasar el cursor */ box-shadow: 0 6px 12px rgba(43, 108, 176, 0.3); transform: translateY(-2px); /* Pequeño salto hacia arriba */ } .btn-inicio:active { transform: translateY(0); /* Vuelve a su posición normal al pulsar */ box-shadow: 0 2px 4px rgba(43, 108, 176, 0.2); }