

/* =================================================================
 * General Styles
   ================================================================= */

#main:has(#portal-login-page) {
    padding: 0!important;

    .fusion-row {
        margin: 0!important;
        max-width: unset!important;
    }

}


/* Layout für die komplette Login-Seite */
.portal-login-page {
    min-height: 80vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 16px;
    background: #00A2D2;
}

/* Wrapper für die Login-Karte */
.portal-login-wrapper {
    width: 100%;
    max-width: fit-content;
    background: #ffffff;
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.12);
    padding: 32px 28px;
    box-sizing: border-box;
}

/* Überschrift */
.portal-login-title {
    margin: 0 0 20px 0;
    font-size: 24px;
    font-weight: 600;
    text-align: center;
    color: #111827;
}

/* Standard-Login-Formular (wp_login_form) */
#portal-login-form {
    margin: 0;
}

/* Wrapper der einzelnen Felder (p-Tags von wp_login_form) */
#portal-login-form p {
    margin: 0 0 16px 0;
}

/* Labels */
#portal-login-form label {
    display: block;
    margin-bottom: 4px;
    font-size: 14px;
    font-weight: 500;
    color: #374151;
}

/* Text- und Passwortfelder */
#portal-login-form input[type="text"],
#portal-login-form input[type="password"] {
    display: block;
    width: 100%;
    border: 1px solid #d1d5db;
    border-radius: 4px;
    padding: 8px 10px;
    font-size: 14px;
    box-sizing: border-box;
    background-color: #ffffff;
}

/* Fokuszustand */
#portal-login-form input[type="text"]:focus,
#portal-login-form input[type="password"]:focus {
    outline: none;
    border-color: #2563eb;
    box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.15);
}

/* „Angemeldet bleiben“ Checkbox + Label */
#portal-login-form #rememberme {
    margin-right: 6px;
}

/* Submit-Button */
#portal-login-form input[type="submit"] {
    display: block;
    width: 100%;
    margin-top: 8px;
    border: none;
    border-radius: 4px;
    padding: 10px 12px;
    font-size: 15px;
    font-weight: 600;
    background-color: #9ebc38;
    color: #ffffff;
    cursor: pointer;
    transition: all 0.3s ease;
}

/* Hover-State Button */
#portal-login-form input[type="submit"]:hover {
    scale: 1.04;
}

/* Fehlermeldungen (z. B. von dir gerendert als .portal-login-error) */
.portal-login-error {
    margin-bottom: 16px;
    padding: 10px 12px;
    border-radius: 4px;
    border: 1px solid #fecaca;
    background-color: #fef2f2;
    color: #b91c1c;
    font-size: 14px;
}

/* Passwort-vergessen-Link unter dem Formular */
.portal-login-lost {
    margin-top: 12px;
    text-align: right;
    font-size: 13px;
}

.portal-login-lost a {
    color: #2563eb;
    text-decoration: none;
}

.portal-login-lost a:hover {
    text-decoration: underline;
}

/* Mobile Tweak */
@media (max-width: 480px) {
    .portal-login-wrapper {
        padding: 24px 18px;
    }

    .portal-login-title {
        font-size: 20px;
    }
}