/*
 * LSE Kundenbereich – Rahmen von lebert.ai (ab 0.6.8): Ergänzungen zu rahmen/site.css und rahmen/ohne-leiste.css.
 * body.lse-kb-rahmen       Anmeldeseiten und Seiten des Kundenbereichs
 * body.lse-kb-anmeldeseite nur die Anmeldeseiten (wp-login.php). WordPress lädt dort sein eigenes Stylesheet (login.css,
 *                          buttons.css, forms.css) – die Regeln unten passen Formular, Knöpfe und Meldungen an lebert.ai an.
 */

/* Menüpunkt „Kundenbereich“ am Handy (eigener Knopf neben „Menü“) wie der aktuelle Menüpunkt */
.lse-kb-rahmen .nav-kunde[aria-current="page"] {
	background: var(--nav-dark);
}

/* Untermenü „Kundenbereich“ für Angemeldete (ab 0.6.11): Knopf dunkel wie der aktuelle Menüpunkt (site.css hinterlegt
   nur Links), Pfeil in normaler Größe (site.css vergrößert jedes svg in .lock), Liste rechtsbündig */
.lse-kb-rahmen .nav-links > li.current > button.lock {
	background: var(--nav-dark);
}

.lse-kb-rahmen .nav-links .lock .chev {
	width: 10px;
	height: 10px;
}

.lse-kb-rahmen .drop-rechts {
	right: 0;
	left: auto;
}

/* ---------------------------------------------------------------------------
 * Karte
 * ------------------------------------------------------------------------- */

.lse-kb-karte .lse-kb-sprachen {
	display: none;	/* die Sprache wählt man oben rechts */
}

.lse-kb-karte .lse-kb-hinweis {
	margin-bottom: 1.2em;
}

/* Leiste des Kundenbereichs (Übersicht, Tutorials, Präsentationen …, Abmelden) unter der Überschrift */
.lse-kb-bereichsnav {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 2px 24px;
	margin: 0 0 30px;
	padding-bottom: 8px;
	border-bottom: 1px solid var(--line);
	font-size: .9rem;
	font-weight: 600;
}

.lse-kb-bereichsnav a {
	padding: 6px 0;
	border-bottom: 2px solid transparent;
	color: var(--text);
}

.lse-kb-bereichsnav a:hover {
	border-bottom-color: var(--line);
	color: var(--blue);
	text-decoration: none;
}

.lse-kb-bereichsnav a[aria-current="page"] {
	border-bottom-color: var(--nav);
	color: var(--blue);
}

.lse-kb-bereichsnav .lse-kb-abmelden {
	color: var(--muted);
	font-weight: 400;
}

/* Ohne Überschrift (Elementor-Seiten mit eigener Überschrift) */
.lse-kb-karte .crumbs + .lse-kb-bereichsnav {
	margin-top: -8px;
}

/* Text eines Kundeninhalts und Begrüßungstexte: site.css setzt Abstände nur gezielt (p{margin:0}). :where hält die
   Regeln schwach, damit kundenbereich.css (Listen, Knöpfe) gewinnt. */
:where(.lse-kb-inhalt) p,
:where(.lse-kb-inhalt) ul,
:where(.lse-kb-inhalt) ol,
:where(.lse-kb-inhalt) table,
:where(.lse-kb-inhalt) figure,
:where(.lse-kb-inhalt) blockquote {
	margin: 0 0 1em;
}

:where(.lse-kb-inhalt) ul,
:where(.lse-kb-inhalt) ol {
	padding-left: 1.4em;
}

:where(.lse-kb-inhalt) h2,
:where(.lse-kb-inhalt) h3,
:where(.lse-kb-inhalt) h4 {
	margin: 1.4em 0 .6em;
}

:where(.lse-kb-inhalt) img {
	max-width: 100%;
	height: auto;
}

/* ---------------------------------------------------------------------------
 * Anmeldeseiten
 * ------------------------------------------------------------------------- */

/* login.css: html, body mit fester Höhe – hier wächst die Seite mit dem Inhalt */
html:has(body.lse-kb-anmeldeseite),
body.lse-kb-anmeldeseite {
	height: auto;
}

/* Mehr Abstand zwischen Brotkrumen und Überschrift (ab 0.6.11, User 2026-10-17: „Es wäre schön, wenn der Abstand
   zwischen Brotkrumen und Überschrift größer wäre! Nur für die Anmeldung, Registrierung und Abmeldung.“) – 50 px wie die
   Fehlerseite von lebert.ai (.nf-kopf), am Handy 36 px; die Seiten des Kundenbereichs behalten 24 px.
   Ebenso zwischen dem Satz und dem ersten Feld („Auch der Abstand zwischen dem Text und der ersten Feldbeschreibung
   sollte vergrößert werden.“): #login unten mit 30 px statt 10 px, am Handy 24 px – sichtbar 31 statt 13 px, weil der
   Abstand unter dem Satz (12 px) mit diesem zusammenfällt. */
body.lse-kb-anmeldeseite .lse-kb-karte .crumbs {
	margin-bottom: 50px;
}

@media (max-width: 640px) {
	body.lse-kb-anmeldeseite .lse-kb-karte .crumbs {
		margin-bottom: 36px;
	}
}

body.lse-kb-anmeldeseite .lse-kb-karte > h1.screen-reader-text,
body.lse-kb-anmeldeseite .wp-login-logo,
body.lse-kb-anmeldeseite #backtoblog {
	display: none;	/* die Überschrift steht in der Karte, das Logo im Kopf */
}

/* forms.css von WordPress kennt auch .card: höchstens 520 px breit, mit Rahmen und Schatten */
body.lse-kb-anmeldeseite .card.lse-kb-karte {
	min-width: 0;
	max-width: none;
	margin-top: 0;
	border: 0;
	box-shadow: none;
}

body.lse-kb-anmeldeseite #login {
	width: auto;
	max-width: 400px;
	margin: 30px auto 0;
	padding: 0;
}

@media (max-width: 640px) {
	body.lse-kb-anmeldeseite #login {
		margin-top: 24px;
	}
}

/* flow-root: Der Knopf (rechts) und „Angemeldet bleiben“ (links) bleiben im Formular, die Links folgen darunter */
body.lse-kb-anmeldeseite.login form {
	display: flow-root;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	box-shadow: none;
	overflow: visible;
}

body.lse-kb-anmeldeseite.login label {
	margin-bottom: 4px;
	color: var(--text);
	font-size: .9rem;
	font-weight: 600;
}

body.lse-kb-anmeldeseite.login form .input,
body.lse-kb-anmeldeseite.login input[type="text"],
body.lse-kb-anmeldeseite.login input[type="email"],
body.lse-kb-anmeldeseite.login input[type="password"] {
	min-height: 46px;
	margin: 0 0 18px;
	padding: 8px 12px;
	border: 1px solid #c8cdd6;
	border-radius: 4px;
	background: #fff;
	box-shadow: none;
	color: var(--text);
	font-family: inherit;
	font-size: 1rem;
	line-height: 1.4;
}

body.lse-kb-anmeldeseite.login form .input:focus,
body.lse-kb-anmeldeseite.login input[type="text"]:focus,
body.lse-kb-anmeldeseite.login input[type="email"]:focus,
body.lse-kb-anmeldeseite.login input[type="password"]:focus {
	border-color: var(--nav);
	box-shadow: 0 0 0 1px var(--nav);
	outline: 2px solid transparent;
}

/* Knopf „Passwort anzeigen“ im Passwortfeld: so hoch wie das Feld */
body.lse-kb-anmeldeseite.login .button.wp-hide-pw {
	height: 46px;
	min-height: 46px;
	color: var(--nav);
}

body.lse-kb-anmeldeseite.login .forgetmenot label {
	font-weight: 400;
}

/* Knöpfe wie .btn-blue auf lebert.ai */
body.lse-kb-anmeldeseite.wp-core-ui .button.button-primary,
body.lse-kb-anmeldeseite.wp-core-ui .button.button-primary.button-large {
	min-height: 46px;
	padding: 0 22px;
	border: 2px solid var(--blue);
	border-radius: 4px;
	background: var(--blue);
	box-shadow: none;
	color: #fff;
	font-family: inherit;
	font-size: .95rem;
	font-weight: 600;
	line-height: 42px;
	text-shadow: none;
}

body.lse-kb-anmeldeseite.wp-core-ui .button.button-primary:hover,
body.lse-kb-anmeldeseite.wp-core-ui .button.button-primary:focus {
	border-color: var(--blue);
	background: var(--blue);
	color: #fff;
	filter: brightness(1.08);
}

body.lse-kb-anmeldeseite.wp-core-ui .button.button-primary:focus {
	box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--blue);
}

body.lse-kb-anmeldeseite.wp-core-ui .button.button-secondary:not(.wp-hide-pw) {
	min-height: 46px;
	border-color: var(--blue);
	border-radius: 4px;
	color: var(--blue);
	font-family: inherit;
}

/* Meldungen (abgemeldet, E-Mail verschickt, Freischaltung) und Fehler */
body.lse-kb-anmeldeseite.login .message,
body.lse-kb-anmeldeseite.login .notice,
body.lse-kb-anmeldeseite.login .success,
body.lse-kb-anmeldeseite.login #login_error {
	margin: 0 0 22px;
	padding: 12px 16px;
	border-left: 4px solid var(--nav);
	background: var(--soft);
	box-shadow: none;
	font-size: .92rem;
	line-height: 1.55;
}

body.lse-kb-anmeldeseite.login #login_error,
body.lse-kb-anmeldeseite.login .notice-error {
	border-left-color: #d23b3b;
	background: #fdf3f3;
}

body.lse-kb-anmeldeseite.login .notice p,
body.lse-kb-anmeldeseite.login .message p {
	margin: 0;
	font-size: inherit;
	line-height: inherit;
}

/* Links unter dem Formular (WordPress: p#nav im #login – das Menü von lebert.ai heißt hier #lse-nav) */
body.lse-kb-anmeldeseite.login #login #nav {
	clear: both;
	margin: 26px 0 0;
	padding: 0;
	font-size: .9rem;
	text-align: center;
}

body.lse-kb-anmeldeseite.login #login #nav a,
body.lse-kb-anmeldeseite .privacy-policy-page-link a {
	color: var(--link);
}

body.lse-kb-anmeldeseite .privacy-policy-page-link {
	margin: 12px 0 0;
	font-size: .85rem;
	text-align: center;
}

/* Fehlerseite 404 im Rahmen (ab 0.6.15): zwei Knöpfe nebeneinander, am Handy untereinander */
.lse-kb-rahmen .lse-kb-knoepfe {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 20px;
}

.lse-kb-rahmen .lse-kb-knoepfe .btn {
	text-decoration: none;
}

