.auth-dialog{padding:0;border:0;border-radius:24px;width:min(940px,94vw);max-height:92dvh;color:#17263a;background:#fff;box-shadow:0 32px 100px #061b4055}.auth-dialog::backdrop{background:#071c39b8;backdrop-filter:blur(7px)}.auth-layout{display:grid;grid-template-columns:44% 56%}.auth-art{position:relative;min-height:650px;background:#173e55;overflow:hidden}.auth-art img{position:absolute;width:100%;height:100%;object-fit:cover}.auth-art:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#07244415,#071d36e8)}.auth-art>div{position:absolute;z-index:1;bottom:48px;left:32px;right:24px;color:white}.auth-art span{font-size:12px;letter-spacing:2px;font-weight:800}.auth-art h2{font-size:38px;line-height:1.15;color:white;margin:24px 0}.auth-art p{line-height:1.7;color:#e2ecf6}.auth-content{padding:44px 40px;position:relative}.auth-close{position:absolute;right:16px;top:12px;width:34px;height:34px;border:0;border-radius:50%;font-size:26px;background:#f0f4f9;color:#30445e;cursor:pointer}.auth-eyebrow{font-size:10px;font-weight:800;letter-spacing:1.4px;color:#1473d2}.auth-content h2{font-size:32px;margin:14px 0 8px}.auth-intro{font-size:14px;color:#68768a;line-height:1.6}.auth-tabs{display:flex;background:#f1f5fa;border-radius:12px;padding:4px;margin:22px 0}.auth-tabs button{flex:1;padding:10px;border:0;border-radius:9px;background:transparent;cursor:pointer;color:#53647c;font-weight:700}.auth-tabs button.active{background:white;color:#0875e2;box-shadow:0 2px 8px #14365c12}.auth-content label{display:block;font-size:13px;font-weight:650;margin:14px 0 7px}.auth-content input:not([type=hidden]){width:100%;box-sizing:border-box;border:1px solid #d4deeb;background:#fafdff;border-radius:10px;padding:12px;color:#17263a;font:inherit}.auth-content input:focus{outline:2px solid #2188ef;outline-offset:2px}.auth-submit{display:flex;justify-content:space-between;width:100%;padding:14px 18px;margin-top:22px;background:#087ef7;border:0;border-radius:11px;color:white;font:inherit;font-weight:750;cursor:pointer}.auth-fine,.auth-resend{font-size:12px;color:#697b90;line-height:1.6;margin-top:18px}.auth-resend summary{cursor:pointer}.auth-message{background:#e8f8ee;border-radius:10px;padding:12px;font-size:13px}.auth-error{background:#fff0ef;color:#a03232}.auth-content [hidden]{display:none!important}body.auth-open{overflow:hidden}.user-dashboard{padding-top:55px;padding-bottom:65px}.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:28px 0}.dashboard-grid .card{padding:26px}.dashboard-grid a{display:block;margin-top:16px;color:#087ef7}.profile-data{line-height:2;overflow-wrap:anywhere}@media(max-width:650px){.auth-layout{grid-template-columns:1fr}.auth-art{min-height:150px}.auth-art>div{left:24px;bottom:20px}.auth-art h2{font-size:25px;margin:8px 0 0}.auth-art p{display:none}.auth-content{padding:28px 24px}.dashboard-grid{grid-template-columns:1fr}}

/* Beide Formulare folgen dem zentralen data-theme-Schalter. */
.auth-dialog {
  --auth-surface: #ffffff;
  --auth-field: #fafdff;
  --auth-soft: #f1f5fa;
  --auth-text: #17263a;
  --auth-muted: #53647c;
  --auth-border: #d4deeb;
  --auth-accent: #096ac3;
  --auth-focus: #2188ef;
  --auth-button: #0870dc;
  --auth-button-hover: #065fbd;
  --auth-success-bg: #e8f8ee;
  --auth-success-text: #20623c;
  --auth-error-bg: #fff0ef;
  --auth-error-text: #a03232;
  color-scheme: light;
  color: var(--auth-text);
  background: var(--auth-surface);
}
html[data-theme="dark"] .auth-dialog {
  --auth-surface: #181818;
  --auth-field: #101010;
  --auth-soft: #242424;
  --auth-text: #f5f5f5;
  --auth-muted: #ababaf;
  --auth-border: #363636;
  --auth-accent: #a0ff65;
  --auth-focus: #83ff36;
  --auth-button: #0870dc;
  --auth-button-hover: #0965c2;
  --auth-success-bg: #143526;
  --auth-success-text: #a2e5bc;
  --auth-error-bg: #412428;
  --auth-error-text: #ffb7b3;
  color-scheme: dark;
  border: 2px solid #83ff36;
  box-shadow: 0 0 0 1px #83ff3626, 0 0 24px #83ff362b, 0 32px 100px #000000b3;
  scrollbar-color: #505050 #181818;
}
html[data-theme="dark"] .auth-dialog::backdrop { background: #000000c9; }
html[data-theme="dark"] .auth-art { background: #101010; }
html[data-theme="dark"] .auth-art:after {
  background: linear-gradient(180deg, #00000020, #101010ed);
}
html[data-theme="dark"] .auth-tabs {
  border: 1px solid var(--auth-border);
  background: #101010;
}
html[data-theme="dark"] .auth-tabs button.active {
  background: #303030;
  box-shadow: 0 1px 5px #00000040;
}
.auth-content { background: var(--auth-surface); color: var(--auth-text); }
.auth-content h2, .auth-content label { color: var(--auth-text); }
.auth-content .auth-eyebrow { color: var(--auth-accent); }
.auth-intro, .auth-fine, .auth-resend { color: var(--auth-muted); }
.auth-close, .auth-tabs { background: var(--auth-soft); color: var(--auth-text); }
.auth-tabs button { color: var(--auth-muted); }
.auth-tabs button.active { background: var(--auth-surface); color: var(--auth-accent); }
.auth-dialog .auth-content input:not([type=hidden]) {
  background: var(--auth-field);
  color: var(--auth-text);
  border-color: var(--auth-border);
  caret-color: var(--auth-text);
}
.auth-dialog .auth-content input::placeholder { color: var(--auth-muted); }
.auth-dialog .auth-content input:autofill {
  box-shadow: inset 0 0 0 1000px var(--auth-field);
  -webkit-text-fill-color: var(--auth-text);
  caret-color: var(--auth-text);
}
.auth-dialog .auth-content input:-webkit-autofill {
  -webkit-box-shadow: inset 0 0 0 1000px var(--auth-field);
  -webkit-text-fill-color: var(--auth-text);
  caret-color: var(--auth-text);
}
.auth-submit { background: var(--auth-button); color: #fff; }
.auth-submit:hover { background: var(--auth-button-hover); }
.auth-close:hover { color: var(--auth-accent); }
.auth-message { background: var(--auth-success-bg); color: var(--auth-success-text); }
.auth-error { background: var(--auth-error-bg); color: var(--auth-error-text); }
.auth-dialog :is(input, button, summary):focus-visible {
  outline: 2px solid var(--auth-focus);
  outline-offset: 3px;
}

.auth-page{padding-top:38px;padding-bottom:60px}.auth-page-heading{max-width:940px;margin:0 auto 26px}.auth-page-heading h1{font-size:34px;margin:10px 0}.auth-page-heading p{color:#627187;line-height:1.6}.auth-inline{display:block;position:relative;margin:0 auto;max-height:none;overflow:hidden;width:min(940px,100%)}.auth-inline .auth-content{min-width:0}.auth-inline .auth-art{min-height:100%}.auth-inline .auth-fine{line-height:1.8}html[data-theme="dark"] .auth-page-heading h1{color:#f5f5f5}html[data-theme="dark"] .auth-page-heading p{color:#ababaf}@media(max-width:650px){.auth-page{padding-top:24px}.auth-inline .auth-art{min-height:170px}.auth-page-heading h1{font-size:28px}}