/* General body styling */
body {
    font-family: 'Inter', sans-serif;
}

/* --- Main Menu Styles --- */
.game-card {
    @apply bg-white dark:bg-gray-800 rounded-xl shadow-lg transition-all duration-300 transform hover:scale-105 hover:shadow-2xl;
}

.stats-button {
    @apply inline-block bg-gray-200 dark:bg-gray-700 text-gray-800 dark:text-gray-200 px-6 py-3 rounded-lg font-semibold hover:bg-gray-300 dark:hover:bg-gray-600 transition-colors;
}

/* --- Shared Game Styles --- */
.back-button {
    position: fixed;
    top: 1rem;
    left: 1rem;
    background-color: #4f46e5;
    color: white;
    width: 4rem;
    height: 4rem;
    border-radius: 9999px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.875rem;
    font-weight: 700;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    transition: all 0.2s ease-in-out;
    z-index: 50;
}
.back-button:hover {
    background-color: #4338ca;
    transform: scale(1.05);
}

/* ... (other existing styles) ... */

/* --- Failure Screen Button Styles --- */
.fail-option-btn {
    @apply w-full text-white font-bold py-3 px-4 rounded-lg transition-transform transform hover:scale-105 disabled:opacity-50 disabled:cursor-not-allowed;
}

/* --- Difficulty Badge Style --- */
.difficulty-badge {
    @apply inline-block bg-gray-200 dark:bg-gray-700 px-3 py-1 rounded-full text-sm font-semibold text-gray-800 dark:text-gray-200 mb-4;
}

/* --- Score Display Style --- */
.score-display {
    @apply text-xl font-bold text-indigo-500 dark:text-indigo-400;
}

/* --- Consent Banner Styles --- */
.consent-banner {
    @apply max-w-4xl mx-auto mt-12 bg-white dark:bg-gray-800 p-4 rounded-lg shadow-2xl flex items-center justify-between gap-4;
}
.consent-btn {
    @apply px-6 py-2 text-white font-bold rounded-lg transition-colors;
}

/* --- Question Counter Style --- */
.question-counter {
    @apply inline-block bg-gray-200 dark:bg-gray-700 px-3 py-1 rounded-full text-sm font-semibold text-gray-800 dark:text-gray-200;
}

/* --- NEW Stats Page Styles --- */
.stat-card {
    @apply bg-gray-50 dark:bg-gray-700 p-6 rounded-xl text-left;
}
.stat-title {
    @apply text-2xl font-bold mb-4 text-indigo-500 dark:text-indigo-400;
}
.stat-list {
    @apply space-y-2 text-lg;
}
.stat-list li {
    @apply flex justify-between;
}

.solved-group.group-yellow {
    background-color: #f9df6d;
    color: #121212;
}
.solved-group.group-green {
    background-color: #a0c35a;
    color: #121212;
}
.solved-group.group-blue {
    background-color: #3b82f6;
    color: #ffffff;
}
.solved-group.group-purple {
    background-color: #9333ea;
    color: #ffffff;
}
