/* Grundlegendes Styling für das Layout der Seite */
body {
    font-family: Arial, sans-serif;
    background-color: #fff;
    background-image: url('../img/background1.jpg'); /* Pfad zum Bild */
    background-size: cover; /* Deckt den gesamten Bildschirm ab */
    background-position: center; /* Zentriert das Bild */
    background-repeat: no-repeat; /* Verhindert das Wiederholen des Bildes */
    background-attachment: fixed; /* Bild bleibt beim Scrollen fest */
    margin: 0;
    padding: 0;
}

/* Header für die Navigation und das Logo */
.header-container {
    background-color: #AF161A;
    padding: 15px;
    margin: 0;
    width: 100%;
    box-sizing: border-box;
}

.header {
    margin: 0;
    font-size: 2rem;
    color: #fff;
    text-align: center;
}

.version {
    font-size: 0.9rem;
    color: #fff;
    text-align: center;
}

/* Das Logo mittig */
.logo {
    max-height: 100px;
    margin: 30px auto; /* Automatischer Abstand oben und unten */
    display: block; /* Um Blockelement zu nutzen */
}

/* Container für das Login-Formular */
.login-container {
    width: 100%;
    max-width: 400px;
    margin: 100px auto;
    padding: 20px;
    border: 1px solid #ddd;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    background-color: rgba(255, 255, 255, 0.9); /* Hintergrund transparent weiß */
    text-align: center;
}

/* Button-Stil */
button {
    background-color: #AF161A;
    color: #fff;
    border: none;
    padding: 10px 20px;
    cursor: pointer;
    border-radius: 4px;
    font-size: 14px;
    font-weight: bold;
    transition: background-color 0.3s;
}

button:hover {
    background-color: #870E12;
}

/* Styling für Fehlermeldungen */
.error-message {
    color: red;
    margin-top: 10px;
    font-size: 14px;
}

/* Zusätzliche Styles für das Formular */
.input-field {
    margin-bottom: 15px;
}

.input-field label {
    font-size: 14px;
}

h4 {
    text-align: center;
}

/* ---------- Mobile Optimierung --------- */
@media (max-width: 768px) {
    body {
        background-size: cover; /* Beibehaltung der vollen Abdeckung für kleine Bildschirme */
    }

    /* Container für das Login-Formular auf kleineren Bildschirmen */
    .login-container {
        margin: 50px auto; /* Weniger Abstand nach oben und unten */
        padding: 15px; /* Reduziertes Padding */
        width: 90%; /* Nimmt 90% der Bildschirmbreite ein */
        max-width: 100%; /* Keine Begrenzung der maximalen Breite */
        box-shadow: none; /* Schatten entfernen für ein flacheres Design auf mobilen Geräten */
        border-radius: 0; /* Rundungen an den Ecken entfernen */
    }

    /* Stil für die Schaltflächen auf kleineren Geräten */
    button {
        padding: 12px 18px; /* Leicht angepasste Polsterung für kleinere Bildschirme */
        font-size: 16px; /* Größere Schriftgröße für mobile Benutzer */
        width: 100%; /* Button füllt die volle Breite */
    }

    /* Stil für die Eingabefelder */
    .input-field {
        margin-bottom: 20px; /* Etwas mehr Abstand zwischen den Feldern */
    }

    .input-field input {
        font-size: 16px; /* Größere Schriftgröße für einfaches Tippen */
    }

    .input-field label {
        font-size: 16px; /* Größere Labels auf mobilen Geräten */
    }

    .header {
        font-size: 1.8rem; /* Kleinere Schriftgröße im Header */
    }

    .logo {
        max-height: 80px; /* Verkleinertes Logo für mobile Geräte */
        margin-top: 20px;
        margin-bottom: 20px;
    }

    .error-message {
        font-size: 16px; /* Fehlermeldungen etwas deutlicher */
    }

    /* Anpassung des Abstandes bei der Version */
    .version {
        font-size: 0.8rem; /* Leicht kleinere Schriftgröße für die Version auf mobilen Geräten */
    }
}

@media (max-width: 480px) {
    /* Noch kleinere Anpassungen für sehr kleine Bildschirme */
    .login-container {
        margin: 30px auto; /* Reduzierter Abstand nach oben und unten */
        padding: 10px; /* Noch kleineres Padding */
        width: 95%; /* Nimmt nahezu die gesamte Bildschirmbreite ein */
    }

    button {
        padding: 10px 15px; /* Noch kleinere Polsterung */
        font-size: 14px; /* Etwas kleinere Schriftgröße */
    }

    .input-field input {
        font-size: 14px; /* Kleinere Schriftgröße für kleinere Bildschirme */
    }

    .input-field label {
        font-size: 14px;
    }

    .header {
        font-size: 1.6rem; /* Noch kleinere Schriftgröße im Header */
    }

    .logo {
        max-height: 60px; /* Noch kleineres Logo */
    }

    .error-message {
        font-size: 14px; /* Fehlermeldungen kleiner auf sehr kleinen Geräten */
    }
}
