/* Gemeinsamer Seitenrahmen und Formulare. Seitenspezifisches steht in index.css, register.css usw. */
.auth-layout.auth-layout--full{display:flex;flex-direction:column;min-height:calc(100svh - 88px);background:var(--surface-soft)}
.layout--full .account-panel{flex:1;min-height:0;padding-top:0;background:transparent}
.layout--full .account-content{padding:48px 28px 60px;align-items:flex-start}
.layout--full .auth-card:not(.register-card){max-width:760px;padding:42px 48px;background:#fff;border:1px solid var(--border);border-radius:20px}
@media(max-width:600px){.layout--full .account-content{padding:26px 16px 36px}.layout--full .auth-card:not(.register-card){padding:25px 22px;border-radius:15px}.layout--full .site-header{padding:0 20px}}
.auth-layout{display:grid;grid-template-columns:var(--hero-width) 1fr;grid-template-rows:1fr auto;min-height:100svh}
.community-hero{grid-column:1;grid-row:1 / span 2;position:relative;isolation:isolate;display:flex;align-items:center;overflow:hidden;padding:145px clamp(32px,4.1vw,72px) 116px;color:#fff;background:#32312a url('../assets/images/community.jpg') center center/cover no-repeat}
.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(13,20,19,.83),rgba(18,24,23,.30)),linear-gradient(0deg,rgba(13,18,17,.61),rgba(13,18,17,.10) 80%)}
.hero-content{width:100%;max-width:540px;margin:auto 0}
.hero-eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:23px;font-size:10px;letter-spacing:2.1px;font-weight:600;color:rgba(255,255,255,.83)}
.eyebrow-line{width:23px;height:1px;background:#e4c08d}
.hero-title{margin-bottom:21px;font-size:clamp(40px,4.1vw,67px);line-height:1.1;font-weight:730;letter-spacing:-2.8px}
.hero-title span{color:#f0d2a0}
.hero-description{color:rgba(255,255,255,.79);font-size:14px;line-height:1.8;margin-bottom:38px;font-weight:400}
.hero-features{display:flex;flex-direction:column;gap:24px;padding:0;margin:0;list-style:none}
.hero-features li{display:flex;align-items:flex-start;gap:16px}
.feature-icon{display:flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:44px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.10);border-radius:12px;backdrop-filter:blur(6px)}
.feature-icon .icon{width:21px;height:21px;stroke-width:1.6}
.hero-features h3{font-size:13px;font-weight:650;margin:0 0 4px;color:rgba(255,255,255,.98);letter-spacing:.03px}
.hero-features p{font-size:12px;line-height:1.7;color:rgba(255,255,255,.72);margin:0}
.hero-signoff{display:flex;align-items:center;gap:12px;margin-top:37px}
.signoff-symbol{display:flex;align-items:center;justify-content:center;width:37px;height:37px;border:1px solid rgba(239,211,163,.55);border-radius:50%;color:#f0d2a0}
.signoff-symbol .icon{width:17px;height:17px}
.hero-signoff p{font-size:11px;color:rgba(255,255,255,.74);margin:0;line-height:1.6}
.hero-signoff strong{font-weight:600;color:#f0d2a0}
.hero-bottom{position:absolute;bottom:36px;left:clamp(32px,4.1vw,72px);right:clamp(32px,4.1vw,72px);display:flex;align-items:center;gap:19px;color:rgba(255,255,255,.58);font-size:9px;letter-spacing:1.25px}
.hero-bottom span:last-child{font-size:10px;letter-spacing:.1px}
.hero-bottom-line{flex:1;height:1px;background:rgba(255,255,255,.24)}
.account-panel{display:flex;flex-direction:column;padding-top:104px;min-width:0;background:#fff}
.account-content{display:flex;align-items:center;justify-content:center;flex:1;width:100%;padding:44px clamp(28px,5vw,94px) 56px}
.auth-card{width:100%;max-width:410px;min-width:0;margin:0 auto}
.form-kicker{display:flex;align-items:center;gap:7px;margin-bottom:17px;color:var(--primary);font-size:9px;letter-spacing:1.4px;font-weight:700;line-height:1.7}
.form-kicker .icon{width:15px;height:15px;stroke-width:1.6}
.auth-card h1{font-size:clamp(28px,2.65vw,39px);line-height:1.18;letter-spacing:-1.4px;font-weight:730;margin:0 0 15px;overflow-wrap:anywhere}
.title-dot{color:var(--primary)}
.intro{font-size:13px;color:var(--muted);line-height:1.8;margin-bottom:32px}
.field{margin-bottom:19px}
.field label{display:block;font-size:12px;font-weight:600;margin-bottom:8px;color:#464156}
.input-wrap{position:relative;display:flex;align-items:center}
.input-wrap input{height:53px;width:100%;min-width:0;border:1px solid var(--border);border-radius:var(--radius);background:#fff;color:var(--ink);padding:0 43px 0 43px;font-size:12px;outline:none;transition:border .18s,box-shadow .18s,background .18s}
.input-wrap input::placeholder{color:#aaa5b8;opacity:1}
.input-wrap input:hover{border-color:#c6bed7}
.input-wrap input:focus{border-color:#9b7aeb;box-shadow:0 0 0 3px #f2edfc}
.input-wrap input[aria-invalid=true]{border-color:#cf778a;background:#fffafb}
.input-icon{position:absolute;left:15px;width:17px;height:17px;pointer-events:none;color:#a39aae;z-index:1}
.password-toggle{position:absolute;right:4px;top:4px;width:44px;height:45px;display:flex;align-items:center;justify-content:center;border:0;background:transparent;color:#8a829b;border-radius:8px}
.password-toggle:hover{background:var(--surface-soft);color:var(--primary)}
.password-toggle .icon{width:18px;height:18px}
.password-toggle .eye-hide{display:none}
.password-toggle[aria-pressed=true] .eye-show{display:none}
.password-toggle[aria-pressed=true] .eye-hide{display:block}
.field-hint,.field-error,.caps-lock-note{display:block;font-size:10px;margin-top:6px;line-height:1.6}
.field-hint{color:#938a9f}
.field-error,.caps-lock-note{color:var(--error)}
.form-options{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;margin:0 0 25px}
.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:11px;color:#797287;line-height:1.65}
.checkbox-label input{appearance:none;-webkit-appearance:none;flex:0 0 17px;width:17px;height:17px;border:1px solid #d0c9dd;border-radius:5px;margin:0;display:grid;place-content:center;cursor:pointer;transition:background .15s,border .15s}
.checkbox-label input:checked{background:var(--primary);border-color:var(--primary)}
.checkbox-label input:checked::after{content:'';width:8px;height:4px;transform:rotate(-45deg) translateY(-1px);border-left:1.8px solid #fff;border-bottom:1.8px solid #fff}
.auth-switch{text-align:center;font-size:12px;color:var(--muted);margin:25px 0 0}
.back-link{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;margin-bottom:33px}
.back-link:hover{color:var(--primary)}
.back-link .icon{width:17px;height:17px}
.form-symbol{display:grid;place-items:center;width:57px;height:57px;color:var(--primary);background:var(--primary-light);border-radius:17px;margin-bottom:24px}
.form-symbol .icon{width:26px;height:26px}
.help-note{display:flex;gap:10px;align-items:flex-start;background:var(--surface-soft);padding:16px;border-radius:10px;margin-top:23px;color:var(--muted)}
.help-note .icon{width:16px;height:16px;margin-top:2px}
.help-note p{font-size:11px;line-height:1.7;margin:0}
.password-strength{display:flex;align-items:center;gap:9px;margin-top:8px;color:var(--muted);font-size:10px;line-height:1.6}
.strength-track{width:92px;height:4px;flex-shrink:0;border-radius:4px;background:var(--border);overflow:hidden}
.strength-track span{display:block;height:100%;width:0;background:#b95b6e;transition:width .2s,background .2s}
.password-strength[data-level="2"] .strength-track span{background:#b88432}
.password-strength[data-level="3"] .strength-track span{background:#378471}
.password-strength[data-level="4"] .strength-track span{background:#2c7759}
@media(min-width:1650px){.auth-card{max-width:440px}.hero-content{max-width:590px}.hero-title{font-size:72px}.hero-description{font-size:16px}.hero-features h3{font-size:15px}.hero-features p{font-size:14px}.hero-features{gap:27px}.hero-eyebrow{font-size:11px}.hero-signoff p{font-size:13px}.auth-card h1{font-size:41px}.intro{font-size:15px}.input-wrap input,.button{font-size:14px}.field label{font-size:13px}.form-options,.checkbox-label{font-size:12px}}
@media(max-width:1100px) and (min-width:801px){.community-hero{padding-left:32px;padding-right:30px}.hero-title{font-size:43px;letter-spacing:-2px}.hero-eyebrow{letter-spacing:1.5px;font-size:9px}.hero-description{font-size:13px}.hero-features{gap:22px}.hero-features li{gap:13px}.hero-features h3{font-size:12px}.hero-features p{font-size:11px}.account-content{padding-left:30px;padding-right:30px}.auth-card h1{font-size:31px}.hero-bottom{left:32px;right:30px;gap:12px;font-size:8px}.hero-signoff{margin-top:28px}}
@media(max-width:800px){.auth-layout{display:flex;flex-direction:column;min-height:calc(100svh - 80px)}.community-hero{order:2;padding:57px 30px 80px;background-position:center 58%;min-height:510px}.hero-shade{background:linear-gradient(90deg,rgba(13,20,19,.86),rgba(18,24,23,.42)),linear-gradient(0deg,rgba(13,18,17,.6),transparent)}.hero-content{max-width:440px;margin:0 auto}.hero-eyebrow{font-size:9px;margin-bottom:19px}.hero-title{font-size:46px;letter-spacing:-2px}.hero-description{font-size:13px;margin-bottom:29px}.hero-features{gap:21px}.hero-features p{font-size:12px}.hero-bottom{bottom:25px;left:30px;right:30px}.hero-signoff{margin-top:28px}.account-panel{padding-top:0;order:1;min-height:calc(100svh - 80px)}.account-content{padding:47px 26px 42px;align-items:center}.auth-card{max-width:420px}.auth-card h1{font-size:36px;letter-spacing:-1.5px}.form-kicker{font-size:9px}.intro{font-size:13px}.input-wrap input{font-size:14px}.field label{font-size:12px}.form-options,.checkbox-label{font-size:12px}.form-options{gap:10px}.button{font-size:14px;min-height:54px}.field-hint{font-size:11px}.field-error,.caps-lock-note{font-size:11px}.form-note{font-size:10px}.auth-switch{font-size:12px}.back-link{margin-bottom:25px}}
@media(max-width:380px){.account-content{padding-left:20px;padding-right:20px}.auth-card h1{font-size:32px}.form-kicker{letter-spacing:1px;font-size:8px}.form-options{font-size:11px}.checkbox-label{font-size:11px}.community-hero{padding-left:24px;padding-right:24px}.hero-title{font-size:41px}.hero-features h3{font-size:12px}.hero-features p{font-size:11px}.hero-description{font-size:12px}.desktop-break{display:none}}
