/* Kopfzeile im Website-Stil (Jens Berger IT Consulting): dunkelblau, weisse Navigation */
header, #header {
  background-color: #131739 !important;
  backdrop-filter: none !important;
}
header, header *:not(svg):not(path) { color: #FFFFFF !important; }
header .app-menu-entry__label, header .app-menu-entry__link { color: #FFFFFF !important; }
header .app-menu-icon__icon, header .app-menu-entry__icon img { filter: brightness(0) invert(1) !important; }
header svg, header svg path { fill: #FFFFFF !important; }
header .app-menu-entry--active .app-menu-entry__link { background-color: rgba(255,255,255,0.18) !important; border-radius: 8px !important; }
header .app-menu-entry__link:hover, header .header-end .button-vue:hover { background-color: rgba(255,255,255,0.12) !important; border-radius: 8px !important; }

/* ---- Login-Seite im Website-Stil ---- */
body#body-login {
  background-color: #131739 !important;
  background-image: none !important;
}
#body-login .guest-box, #body-login .login-box {
  background-color: #F0F1FD !important;
  border-radius: 14px !important;
}
#body-login .logo { filter: brightness(0) invert(1) !important; }
#body-login footer, #body-login footer a, #body-login footer p,
#body-login .info, #body-login #alternative-logins,
#body-login .login-form__footer a, #body-login .entity-name {
  color: rgba(255,255,255,0.92) !important;
}
#body-login .login-form__footer a:hover, #body-login footer a:hover { color: #FFFFFF !important; }

/* ---- Login-Fenster: Texte dunkel (Website-Typo) ---- */
#body-login .guest-box .login-form__headline,
#body-login .guest-box .input-field__label,
#body-login .guest-box label,
#body-login .guest-box legend,
#body-login .guest-box p,
#body-login .guest-box h1, #body-login .guest-box h2,
#body-login .guest-box h3, #body-login .guest-box h4,
#body-login .guest-box .checkbox-content__text,
#body-login .guest-box .checkbox-radio-switch__label {
  color: #05060F !important;
}
/* Primaerer Anmelde-Button bleibt weiss auf Akzentblau */
#body-login .guest-box .button-vue--vue-primary,
#body-login .guest-box .button-vue--vue-primary * { color: #FFFFFF !important; }

/* ---- Sekundaer-Buttons im Login-Fenster: hellblau, schwarze Schrift ---- */
#body-login .guest-box .button-vue:not(.button-vue--vue-primary):not(.input-field__trailing-button),
#body-login .guest-box .button-vue:not(.button-vue--vue-primary):not(.input-field__trailing-button) * {
  color: #05060F !important;
}
#body-login .guest-box .button-vue:not(.button-vue--vue-primary):not(.input-field__trailing-button) {
  background-color: #E4E7FD !important;
  border: 1px solid rgba(5, 6, 15, 0.10) !important;
  border-radius: 8px !important;
}
#body-login .guest-box .button-vue:not(.button-vue--vue-primary):not(.input-field__trailing-button):hover {
  background-color: #D6DAF9 !important;
}

/* ---- Login-Block tiefer positionieren ---- */
#body-login .guest-box.login-box { margin-top: 110px !important; }

/* ---- Fokus in den Eingabefeldern: Akzentblau statt schwarzem Ring ---- */
#body-login input:focus, #body-login .input-field__input:focus {
  box-shadow: 0 0 0 2px #2235DD, 0 0 0 5px rgba(34, 53, 221, 0.18) !important;
  outline: none !important;
}

/* ---- Eingabefelder: Hintergrund immer weiss ---- */
#body-login .input-field__main-wrapper,
#body-login .input-field input:not([type=checkbox]):not([type=submit]):not([type=button]),
#body-login input#user, #body-login input#password {
  background-color: #FFFFFF !important;
}
#body-login .input-field__main-wrapper:hover,
#body-login .input-field__main-wrapper:focus-within,
#body-login .input-field input:hover,
#body-login .input-field input:focus {
  background-color: #FFFFFF !important;
}

/* ---- Eingabefelder: ruhige Kanten, kein Labelkasten, Akzent-Cursor ---- */
#body-login .input-field__main-wrapper,
#body-login .input-field__input { box-shadow: none !important; }
#body-login .input-field__input:not(:focus) {
  box-shadow: 0 0 0 1px rgba(5, 6, 15, 0.14) !important;
}
#body-login .input-field__label,
#body-login .input-field label,
#body-login .input-field legend {
  background-color: transparent !important;
  color: #05060F !important;
}
#body-login input { caret-color: #2235DD !important; }

/* ---- Login-Label: Platzhalter im Feld (Klick/Inhalt -> weg, leer -> sichtbar) ---- */
#body-login .input-field__main-wrapper .input-field__label {
  inset-block-start: 6.5px !important;
  top: 6.5px !important;
  font-size: 15px !important;
  line-height: 1.4 !important;
  opacity: 1 !important;
  transition: opacity 0.08s linear !important;
  background-color: transparent !important;
  color: #05060F !important;
  pointer-events: none !important;
}
#body-login .input-field:hover:focus-within .input-field__main-wrapper .input-field__label { opacity: 0 !important; }
#body-login .input-field__input:not(:placeholder-shown) ~ .input-field__label { opacity: 0 !important; }
#body-login .input-field input { padding-top: 0 !important; }

/* ---- Login: Eingabeschrift immer dunkel (auch bei Browser-Dark-Mode) ---- */
#body-login { color-scheme: light !important; }
#body-login input, #body-login input.input-field__input, #body-login #user, #body-login #password {
  color: #05060F !important;
  -webkit-text-fill-color: #05060F !important;
}
#body-login input::placeholder { color: rgba(5, 6, 15, 0.55) !important; }

/* (ersetzt) */
body#body-login footer,
body#body-login footer *,
body#body-login footer .info,
body#body-login footer .entity-name,
body#body-login footer a,
body#body-login footer .legal {
  color: #05060F !important;
}
body#body-login footer a { text-decoration: underline !important; text-underline-offset: 3px !important; }
body#body-login footer a:hover { color: #2235DD !important; }

/* ---- Work Sans wie die Website (lokale Schriftdatei der Website) ---- */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('https://berger.ddns.net/wp-content/astra-local-fonts/work-sans/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K0nXBi8Jpg.woff2') format('woff2');
}
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('https://berger.ddns.net/wp-content/astra-local-fonts/work-sans/QGY_z_wNahGAdqQ43RhVcIgYT2Xz5u32K0nXBiAJpp_c.woff2') format('woff2');
}
body#body-login,
body#body-login *:not([class*="icon"]):not(svg):not(path) {
  font-family: 'Work Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}
body#body-login input, body#body-login button, body#body-login .button-vue { font-family: 'Work Sans', sans-serif !important; }


/* ---- Login-Footer: Impressum links, Datenschutz rechts, Copyright mittig (Website-Stil) ---- */
body#body-login footer,
body#body-login footer.guest-box {
  position: fixed !important;
  left: 0 !important; right: 0 !important; bottom: 0 !important; top: auto !important;
  width: 100% !important; max-width: 100% !important; box-sizing: border-box !important;
  margin: 0 !important;
  background-color: #FFFFFF !important;
  border-radius: 0 !important;
  box-shadow: 0 -2px 12px rgba(0, 0, 0, 0.16) !important;
  padding: 16px 40px !important;
  color: #131739 !important;
}
body#body-login footer .info {
  display: flex !important; flex-wrap: wrap !important; align-items: center !important;
  width: 100% !important; max-width: 1200px !important; margin: 0 auto !important;
  gap: 6px 24px !important;
  font-size: 0 !important;
}
body#body-login footer .info > br { display: none !important; }
body#body-login footer .info > .footer__legal-links {
  display: flex !important; justify-content: space-between !important; align-items: center !important;
  flex-basis: 100% !important; width: 100% !important; font-size: 0 !important;
}
body#body-login footer .info::before {
  content: "Urheberrecht © 2026 Jens Berger IT Consulting";
  order: 3 !important; flex-basis: 100% !important;
  font-size: 16px !important; font-weight: 400 !important;
  color: #131739 !important; text-align: center !important;
  margin-top: 4px !important;
}
body#body-login footer .entity-name { display: none !important; }
body#body-login footer a.legal {
  display: inline-block !important;
  font-size: 0 !important; line-height: 1.5 !important; font-weight: 400 !important;
  color: #131739 !important; text-decoration: none !important;
}
body#body-login footer a.legal::after { font-size: 16px !important; line-height: 1.5 !important; font-weight: 400 !important; }
body#body-login footer a.legal[href*="impressum"]::after { content: "Impressum"; }
body#body-login footer a.legal[href*="datenschutz"]::after { content: "Datenschutz"; }


/* ---- Checkbox "An mich erinnern": hell, dunkle Schrift, kein dunkler Hover ---- */
body#body-login .checkbox-radio-switch,
body#body-login .checkbox-radio-switch__content,
body#body-login .checkbox-content {
  background-color: #FFFFFF !important;
  color: #05060F !important;
}
body#body-login .checkbox-radio-switch *,
body#body-login .checkbox-radio-switch__content *,
body#body-login .checkbox-content * {
  color: #05060F !important;
}
body#body-login .checkbox-radio-switch:hover,
body#body-login .checkbox-radio-switch__content:hover,
body#body-login .checkbox-content:hover,
body#body-login .checkbox-radio-switch:hover .checkbox-content,
body#body-login .checkbox-radio-switch:hover .checkbox-radio-switch__content,
body#body-login .checkbox-radio-switch:focus-within .checkbox-radio-switch__content,
body#body-login .checkbox-radio-switch:focus-within .checkbox-content {
  background-color: #E4E7FD !important;
  color: #05060F !important;
}

/* Login-Ueberschrift: nur "Anmelden" statt "Anmelden bei Jens Berger" / "Log in to Jens Berger" */
body#body-login .login-form__headline {
  font-size: 0 !important;
  line-height: normal !important;
}
body#body-login .login-form__headline::after {
  content: "Anmelden";
  font-size: 20px !important;
  font-weight: 700 !important;
}