/* Grundlegende Einstellungen */
html {
    font-size: 16px; /* Hauptschriftgröße */
    font-family: Arial, sans-serif; /* Standard-Schriftart */
}

body {
    margin: 0;
    padding: 0;
    background-color: #BDFF01; /* Grünlicher Hintergrund */
}

/* Wrapper-Stil */
.wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
}

/* Container-Stil */
.container {
    max-width: 900px; /* Schmalere maximale Breite */
    width: 100%;
    padding: 20px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    background-color: #fff;
    border-radius: 8px;
}

/* Formular-Stile */
#benefitForm {
    text-align: center;
    margin-bottom: 20px;
}

#benefitForm input[type="checkbox"] {
    display: none; /* Verstecke die Standard-Checkbox */
}

#benefitForm label {
    display: inline-block;
    background-color: #f0f0f0;
    padding: 10px 20px;
    border: 2px solid #ddd;
    border-radius: 4px;
    position: relative;
    cursor: pointer;
    margin-right: 10px;
    margin-bottom: 10px;
    transition: background-color 0.3s, border-color 0.3s;
}

/* Stil, wenn Checkbox ausgewählt ist */
#benefitForm input[type="checkbox"]:checked + label {
    background-color: #007bff;
    color: white;
    border-color: #007bff;
}

/* Hover-Effekt auf Label */
#benefitForm label:hover {
    background-color: #e7e7e7;
    border-color: #ccc;
}

/* Button-Stile */
button {
    display: block; /* Zentrieren des Buttons */
    margin: 20px auto; /* Ober- und Unterabstand */
    padding: 12px 30px;
    background-color: #28a745; /* Unterscheidbare Farbe */
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1rem;
    transition: background-color 0.3s;
}

button:hover {
    background-color: #0056b3;
    border-color: #004494;
}

button:active {
    background-color: #003975;
    border-color: #002d5b;
}

button:focus {
    outline: none;
    box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.5);
}

/* Ladeanimation (Spinner) */
.spinner {
    display: none;
    border: 4px solid #f3f3f3;
    border-top: 4px solid #333;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    animation: spin 1s linear infinite;
    margin: 20px auto;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Ergebnis-Stil */
#scoreResult {
    text-align: center;
    margin-top: 20px;
}

.scoreValue {
    font-size: 3rem; /* Größere Darstellung der Score-Zahl */
    color: #28a745; /* Farbe für den Score-Wert */
}

.scoreMessage {
    font-size: 1.5rem; /* Kleinere Schriftgröße für die Erklärung */
    margin-top: 10px;
}

/* Stil für den Neustart-Button */
.restartButton {
    display: none; /* Anfangs versteckt */
    padding: 10px 20px;
    margin: 20px auto;
    background-color: #007bff;
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1rem;
    transition: background-color 0.3s;
}

.restartButton:hover {
    background-color: #0056b3;
}

/* Responsives Design */
@media (max-width: 768px) {
    .container {
        padding: 10px;
    }

    #benefitForm label {
        display: block; /* Jedes Benefit in einer neuen Zeile auf kleinen Bildschirmen */
        margin-bottom: 10px;
    }
}
