/* ===================================================================== */
/*        Estilos Inspirados en la "Smart Scorekeeper App"               */
/* ===================================================================== */

/* Variables de Color para fácil personalización */
:root {
    --bg-outer: #69ffc3; /* Verde menta/aqua brillante del fondo */
    --bg-app-start: #0a191e; /* Azul petróleo muy oscuro */
    --bg-app-end: #1e3a45;   /* Teal oscuro */
    --card-bg: #1c2a3a;      /* Fondo de las tarjetas de jugador */
    --accent-teal: #40f5b5;  /* Teal neón para los números y texto */
    --accent-orange: #ff8c42; /* Naranja para el gradiente del botón */
    --accent-red: #ff5f6d;    /* Rojo/Rosa para el gradiente del botón */
    --text-primary: #e0e5ec; /* Blanco ligeramente apagado */
    --text-secondary: rgba(224, 229, 236, 0.6);
    --glow-plus: #4dffaf;    /* Verde brillante para el '+' */
    --glow-minus: #ff5a5a;   /* Rojo brillante para el '-' */
}


/* General Body Styles */
body {
    font-family: 'Montserrat', 'Poppins', sans-serif; /* Una fuente más audaz y redondeada */
    overflow-x: hidden;
    background-color: var(--bg-outer);
    color: var(--text-primary);
}

/* Font Imports */
h1, h2, h3, .font-orbitron {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700; /* Fuente más gruesa como en la app */
}

/* Background Animations - Para el contenedor principal de la app */
@keyframes gradient-shift {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

.animate-gradient-shift {
    background: linear-gradient(-45deg, var(--bg-app-start), var(--bg-app-end));
    background-size: 400% 400%;
    animation: gradient-shift 20s ease infinite;
}

/* Blob animado para un brillo de fondo sutil */
@keyframes blob {
    0% { transform: translate(0, 0) scale(1); }
    30% { transform: translate(30px, -50px) scale(1.1); }
    60% { transform: translate(-20px, 20px) scale(0.9); }
    100% { transform: translate(0, 0) scale(1); }
}

.animate-blob {
    animation: blob 12s infinite cubic-bezier(0.68, -0.55, 0.27, 1.55);
    background: rgba(64, 245, 181, 0.1); /* Brillo de teal muy tenue */
}

/* Pulse Glow - Perfecto para el brillo exterior del contenedor de la app */
@keyframes pulse-glow {
    0% { box-shadow: 0 0 30px rgba(105, 255, 195, 0.4); }
    50% { box-shadow: 0 0 80px 20px rgba(105, 255, 195, 0.7); }
    100% { box-shadow: 0 0 30px rgba(105, 255, 195, 0.4); }
}

.animate-pulse-glow {
    animation: pulse-glow 6s infinite alternate;
}

/* Text Animations (sin cambios) */
@keyframes fade-in-up { 0% { opacity: 0; transform: translateY(20px); } 100% { opacity: 1; transform: translateY(0); } }
.animate-fade-in-up { animation: fade-in-up 1s ease-out forwards; }


/* Card Styles - Neumorfismo suave para las tarjetas de jugador */
.feature-card {
    background: var(--card-bg);
    border-radius: 30px; /* Esquinas muy redondeadas */
    transition: all 0.3s ease;
    /* Sombra interior para dar efecto de profundidad */
    box-shadow: inset 0 2px 5px rgba(0, 0, 0, 0.4), 
                0 1px 2px rgba(0, 0, 0, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.05);
}

.feature-card:hover {
    transform: scale(1.03);
    background: #233447;
}

/* Glassmorphism no aplica aquí, se unifica con el estilo de tarjeta */
.glass-effect {
    /* Mismo estilo que .feature-card */
    background: var(--card-bg);
    border-radius: 30px;
    box-shadow: inset 0 2px 5px rgba(0, 0, 0, 0.4);
}

/* Text Style - Para los números de puntuación con brillo */
.text-score {
    color: var(--accent-teal);
    font-weight: 800; /* Extra bold */
    font-size: 3rem;
    text-shadow: 0 0 12px rgba(64, 245, 181, 0.6);
}

/* Button Styles */
/* Botón principal naranja/rojo "Finish Game" */
.btn-primary {
    border-radius: 9999px;
    padding: 0.8rem 1.8rem;
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--text-primary);
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    background-image: linear-gradient(to right, var(--accent-orange), var(--accent-red));
    box-shadow: 0 4px 15px rgba(255, 140, 66, 0.3);
}

.btn-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(255, 100, 100, 0.4);
}

/* Botón secundario teal "SMART" */
.btn-secondary {
    border-radius: 30px;
    padding: 1rem 3rem;
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--bg-app-start); /* Texto oscuro */
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    background-image: linear-gradient(to right, #63f2b4, #40f5b5);
    box-shadow: 0 5px 20px rgba(105, 255, 195, 0.5);
}

.btn-secondary:hover {
    transform: scale(1.05);
    box-shadow: 0 10px 30px rgba(105, 255, 195, 0.7);
}

/* Estilos para los botones +/- con brillo */
.score-control {
    background-color: rgba(0,0,0,0.2);
    border-radius: 9999px;
    overflow: hidden;
}
.btn-plus, .btn-minus {
    background: transparent;
    border: none;
    color: white;
    padding: 0.5rem 1rem;
    font-size: 1.5rem;
    cursor: pointer;
    transition: background-color 0.2s ease;
}
.btn-plus:hover, .btn-minus:hover {
    background-color: rgba(255,255,255,0.1);
}
.btn-plus span {
    color: var(--glow-plus);
    text-shadow: 0 0 8px var(--glow-plus);
}
.btn-minus span {
    color: var(--glow-minus);
    text-shadow: 0 0 8px var(--glow-minus);
}