:root[data-vorlage="8"]:has(.auth-frame) {
  --av-seite: #e8eff7;
  --av-karte: #ffffff;
  --av-text: #131c28;
  --av-titel: #242f3f;
  --av-gedaempft: #696e76;
  --av-label: #1f2732;
  --av-feld-rand: #d6d9de;
  --av-linie: #dfe3e8;
  --av-hilfe-bg: #f2f5f9;
  --av-link: #475463;
  --av-link-deko: none;
  --av-sek-rand: var(--av-akzent);
  --av-sek-text: #26354a;
  --av-h1: 37.5px;
  --av-unter: 17px;
  --av-unter-abstand: 7.5px;
  --av-form-abstand: 29.5px;
  --av-label-groesse: 17px;
  --av-label-gewicht: 500;
  --av-label-abstand: 7.5px;
  --av-feld-hoehe: 46px;
  --av-radius: 5px;
  --av-feld-schrift: 16.5px;
  --av-feld-innen: 19px;
  --av-feld-luecke: 27px;
  --av-forgot-oben: 22px;
  --av-knopf-oben: 28px;
  --av-knopf-hoehe: 49px;
  --av-knopf-schrift: 19px;
  --av-knopf-gewicht: 700;
  --av-sek-schrift: 17px;
  --av-sek-gewicht: 700;
  --av-link-groesse: 15.5px;
  --av-oder-schrift: 15px;
  --av-oder-oben: 20px;
  --av-oder-unten: 18px;
  --av-text-groesse: 15px;
  --av-zeichen: 35px;
  --av-marke-groesse: 27px;
  --av-marke-gewicht: 500;
  --av-marke-farbe: #27313f;
  --av-firma-farbe: #5b6576;
  --av-firma-groesse: 12px;
  --av-marke-luecke: 17px;
  --av-zeichen-hinten: var(--av-akzent);
  --av-zeichen-blatt: #ffffff;
  --av-zeichen-vorne: var(--av-akzent);
  --av-zeichen-strich: var(--av-akzent);
  --av-schleier: linear-gradient(rgba(232, 239, 247, .3), rgba(232, 239, 247, .3));
}

:root[data-vorlage="8"] .auth-frame {
  display: block;
  background:
    var(--av-foto-schleier, none) center / cover no-repeat, var(--av-foto, none) center / cover no-repeat,
    linear-gradient(rgba(64,110,170,.07), rgba(64,110,170,.07)) no-repeat 0 149.8px / 163.4px 442.2px,
    linear-gradient(rgba(64,110,170,.12), rgba(64,110,170,.12)) no-repeat 65.4px 388.6px / 296px 512px,
    linear-gradient(rgba(64,110,170,.10), rgba(64,110,170,.10)) no-repeat right 0 top 72.6px / 194.3px 343.2px,
    linear-gradient(rgba(64,110,170,.10), rgba(64,110,170,.10)) no-repeat right 0 top 297.8px / 73.5px 460.3px,
    linear-gradient(rgba(64,110,170,.07), rgba(64,110,170,.07)) no-repeat right 0 top 623.8px / 356.8px 277px;
  background-color: #e8eff7;
}

:root[data-vorlage="8"] .auth-panel {
  min-height: 71.5px;
  background: #ffffff;
  border-bottom: 1px solid #dfe5ec;
  padding: 6px 52.5px;
  display: flex;
  flex-direction: row;
  align-items: center;
}

:root[data-vorlage="8"] .auth-main {
  padding: 97px 16px 48px;
}

:root[data-vorlage="8"] .auth-content {
  max-width: 512px;
  margin: 0 auto;
  background: #ffffff;
  border: 1px solid #dfe4ea;
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(30,60,100,.06);
  padding: 49px 46px 46px;
}

@media (max-width: 700px) {
  :root[data-vorlage="8"]:has(.auth-frame) {
    --av-zeichen: 30px;
    --av-marke-groesse: 22px;
    --av-firma-groesse: 11px;
    --av-marke-luecke: 12px;
    --av-h1: 30px;
    --av-unter: 16px;
    --av-form-abstand: 24px;
    --av-label-groesse: 16px;
    --av-feld-hoehe: 48px;
    --av-feld-schrift: 17px;
    --av-feld-innen: 14px;
    --av-feld-luecke: 16px;
    --av-forgot-oben: 12px;
    --av-knopf-oben: 18px;
    --av-knopf-hoehe: 50px;
    --av-knopf-schrift: 17px;
    --av-sek-schrift: 16px;
    --av-link-groesse: 15.5px;
    --av-oder-schrift: 15px;
    --av-oder-oben: 18px;
    --av-oder-unten: 16px;
    --av-text-groesse: 14.5px;
  }

  :root[data-vorlage="8"] .auth-frame {
    background: var(--av-foto-schleier, none) center / cover no-repeat, var(--av-foto, none) center / cover no-repeat, #e8eff7;
  }

  :root[data-vorlage="8"] .auth-panel {
    min-height: 60px;
    padding: 6px 16px;
  }

  :root[data-vorlage="8"] .auth-main {
    padding: 20px 12px 28px;
  }

  :root[data-vorlage="8"] .auth-content {
    max-width: none;
    padding: 28px 20px 24px;
  }
}

@media (min-width: 1000px) and (max-height: 840px) {
  :root[data-vorlage="8"] .auth-main {
    padding-top: 80px;
  }
}

@media (min-width: 1000px) and (max-height: 760px) {
  :root[data-vorlage="8"] .auth-main {
    padding-top: 32px;
    padding-bottom: 24px;
  }

  :root[data-vorlage="8"] .auth-content {
    padding: 28px 46px 26px;
  }
}
