/* ============================================================================
   Login-Karte „Zentrierte Karte" auf /log-in/ (functions/login.php + login-card.js).
   Scope: body.inst-login-page. Ausserhalb .isb-page -> literale Marken-Farben.
   Navy #1e456c · Navy-deep #14233f · Cyan #36afd8 · Muted #56657a · Line #ccd6e2.
   ========================================================================== */
.inst-login-page #content{ background:#f5f8fb; }
.inst-login-page .ast-container{ padding-top:44px; padding-bottom:60px; }

/* Wortmarke ueber der Karte */
.inst-login-page .ilg-brand{ max-width:420px; margin:0 auto 22px; text-align:center; font-size:26px; font-weight:800; letter-spacing:-.01em; color:#1e456c; }
.inst-login-page .ilg-at{ color:#36afd8; }

/* WPPB-Login-Box = die Karte */
.inst-login-page .wppb-user-forms{ max-width:420px; margin:0 auto; background:#fff; border:1px solid #ccd6e2; border-radius:14px; box-shadow:0 1px 2px rgba(20,35,63,.05); padding:30px 28px 26px; }

/* Kopf */
.inst-login-page .ilg-head{ margin-bottom:20px; }
.inst-login-page .ilg-title{ font-size:21px; font-weight:700; margin:0 0 4px; color:#14233f; }
.inst-login-page .ilg-sub{ margin:0; font-size:14px; color:#56657a; }

/* Felder */
.inst-login-page .wppb-form-field{ margin:0 0 16px; }
.inst-login-page .wppb-user-forms label{ display:block; font-size:13px; font-weight:600; margin:0 0 6px; color:#1e456c; }
.inst-login-page .wppb-user-forms input[type=text],
.inst-login-page .wppb-user-forms input[type=email],
.inst-login-page .wppb-user-forms input[type=password]{
	width:100%; box-sizing:border-box; font:inherit; font-size:15px; color:#14233f; background:#fff;
	border:1px solid #ccd6e2; border-radius:10px; padding:11px 13px; box-shadow:none;
	transition:border-color .12s, box-shadow .12s;
}
.inst-login-page .wppb-user-forms input:focus{ outline:none; border-color:#36afd8; box-shadow:0 0 0 3px rgba(54,175,216,.22); }

/* Passwort-Auge */
.inst-login-page .ilg-control{ position:relative; display:block; }
.inst-login-page .ilg-control input{ padding-right:44px !important; }
.inst-login-page .ilg-eye{ position:absolute; top:0; right:0; height:100%; width:42px; display:flex; align-items:center; justify-content:center; background:none; border:0; border-radius:0 10px 10px 0; cursor:pointer; color:#56657a; padding:0; }
.inst-login-page .ilg-eye:hover{ color:#1e456c; }

/* „Angemeldet bleiben" + „Passwort vergessen?" in einer Zeile */
.inst-login-page .login-remember{ display:flex; align-items:center; gap:8px; margin:4px 0 20px !important; font-size:13.5px; }
.inst-login-page .login-remember label{ margin:0; font-weight:500; color:#56657a; display:inline-flex; align-items:center; gap:7px; }
.inst-login-page .login-remember input[type=checkbox]{ width:17px; height:17px; accent-color:#36afd8; margin:0; }
.inst-login-page .ilg-forgot{ margin-left:auto; font-weight:600; white-space:nowrap; color:#1e456c; text-decoration:none; }
.inst-login-page .ilg-forgot:hover{ text-decoration:underline; }

/* Login-Button */
.inst-login-page .wppb-user-forms input[type=submit]{
	width:100%; font:inherit; font-size:15px; font-weight:700; color:#fff !important; background:#1c7291 !important; /* AA */
	border:1px solid #36afd8 !important; border-radius:10px; padding:12px 16px; cursor:pointer; box-shadow:none;
	text-transform:none; letter-spacing:0; transition:background-color .12s;
}
.inst-login-page .wppb-user-forms input[type=submit]:hover{ background:#2b9cc2 !important; border-color:#2b9cc2 !important; }
.inst-login-page .login-submit{ margin:0; }

/* „Registrieren"-Zeile, die WPPB unter dem Formular rendert */
.inst-login-page .wppb-user-forms a{ color:#1e456c; }
.inst-login-page .login-register-lost-password{ text-align:center; margin:18px 0 0; font-size:14px; color:#56657a; }
.inst-login-page .login-register-lost-password a{ font-weight:700; color:#1e456c; }
.inst-login-page .ilg-regprefix{ color:#56657a; }

@media (max-width:440px){
	.inst-login-page .wppb-user-forms{ padding:24px 20px 22px; }
	.inst-login-page .ilg-brand{ font-size:23px; }
}
