/* Auth-only layout; home page and financial templates are unaffected. */
.auth-shell{max-width:1440px;margin:auto;grid-template-columns:minmax(440px,1fr) minmax(340px,.85fr);padding:24px;gap:20px;align-items:stretch}
.auth-main{display:flex;flex-direction:column}.auth-topbar{padding:20px 26px}.auth-form{width:100%;max-width:430px;padding:22px 28px 32px;margin:auto}.auth-eyebrow{margin-bottom:24px;font-size:9px}.auth-context{font-size:12px}.auth-title{font-size:30px;letter-spacing:-.045em}.auth-sub{font-size:12px;line-height:1.7;margin-top:12px}.auth-fields{gap:16px}.auth-fields .input{min-height:42px;font-size:14px;border-radius:9px}.auth-fields .label{font-size:11px;margin-bottom:7px}.auth-cta{min-height:42px;border-radius:9px;font-size:13px}.auth-switch{margin-top:20px;padding-top:18px;font-size:12px}.auth-aside{padding:40px;gap:24px;border-radius:18px;background:radial-gradient(ellipse at 85% 12%,#3567a63d,transparent 60%),#101722}.auth-aside .lp-h2{font-size:clamp(38px,3.7vw,54px);margin-top:22px}.auth-aside .lp-body{margin-top:20px;font-size:12px;line-height:1.8}.auth-aside .trust-item{padding:14px 0}.auth-aside .trust-item b{font-size:12px}.auth-aside .trust-item span span{font-size:11px}.auth-password{position:relative}.auth-password .input{padding-right:86px;width:100%}.auth-reveal{position:absolute;right:6px;top:4px;bottom:4px;padding:0 8px;color:var(--fg-2);font-size:11px;border-radius:6px;background:transparent;cursor:pointer}.auth-reveal:hover{background:var(--bg-3)}.auth-reveal:focus-visible{outline:2px solid var(--fg-2);outline-offset:1px}.auth-alert{font-size:12px;line-height:1.6}.auth-check,.auth-link{font-size:12px}
@media(min-width:768px) and (max-height:820px){.auth-shell{padding:16px;gap:16px;min-height:100svh}.auth-form{padding:12px 26px 22px}.auth-eyebrow{margin-bottom:16px}.auth-sub{margin-top:8px}.auth-fields{gap:12px}.auth-title{font-size:27px}.auth-topbar{padding:16px 24px}.auth-aside{padding:30px}.auth-aside .lp-h2{font-size:42px}.auth-or{margin-block:16px}.auth-switch{margin-top:16px;padding-top:14px}}
@media(min-width:768px) and (max-width:1000px){.auth-shell{grid-template-columns:1fr;max-width:600px}.auth-aside{display:none}}
@media(max-width:767px){.auth-shell{display:block;padding:0;min-height:100svh}.auth-main{min-height:100svh}.auth-form{padding:24px 22px max(32px,env(safe-area-inset-bottom));max-width:460px}.auth-topbar{padding:20px}.auth-eyebrow{margin-bottom:24px}.auth-title{font-size:30px}.auth-fields{gap:18px}.auth-fields .input{min-height:46px;font-size:16px}.auth-cta{min-height:46px;font-size:14px}.auth-reveal{min-height:44px;top:1px;bottom:1px;font-size:12px}.auth-aside{display:none}.auth-link{display:inline-flex;align-items:center;min-height:44px}.auth-row{gap:8px}.auth-check{min-height:44px}.auth-sub{font-size:13px}}

/* Reset uses semantic states, not dynamic Tailwind classes or spacing aliases. */
#reset-form .password-meter{margin-top:12px}#reset-form .password-rules{margin-top:8px;gap:8px;font-size:12px;line-height:1.6}#reset-form .password-submit{margin-top:8px;min-height:46px}
#reset-form .rule-row{align-items:flex-start;color:var(--fg-2)}#reset-form .rule-row[data-ok=true]{color:var(--ok)}#reset-form .rule-dot{margin-top:5px;flex:none;width:12px;height:12px;display:grid;place-items:center;background:none;color:inherit!important}#reset-form .rule-dot:empty{width:6px;height:6px;margin:8px 3px 0;background:var(--line)}
#reset-form .meter-seg[data-active=true]{background:var(--fg-2)}#reset-form .meter-seg[data-complete=true]{background:var(--ok)}#reset-form #strength-label{color:var(--fg-2)}#reset-form #strength-label[data-complete=true]{color:var(--ok)}

.auth-email-entry{margin:20px 0;min-height:48px;text-align:center;white-space:normal;overflow-wrap:anywhere}
.email-otp{font-variant-numeric:tabular-nums;letter-spacing:.3em;font-size:24px!important;text-align:center;min-height:60px}

.auth-form .auth-legal a.auth-link{display:inline;min-height:0;padding:0;line-height:inherit}

/* Explicit method selection and clear delivery states. */
.auth-method-nav{display:flex;gap:4px;padding:4px;margin:22px 0;border:1px solid var(--line);border-radius:12px;background:var(--bg-2)}
.auth-method-nav a{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 10px;border-radius:8px;font-size:13px;color:var(--fg-2);text-decoration:none;transition:background .15s,color .15s}
.auth-method-nav a[aria-current=page]{color:var(--fg);background:var(--bg-3);box-shadow:0 1px 3px #0001}.auth-method-nav a:hover{color:var(--fg)}.auth-method-nav a:focus-visible{outline:2px solid var(--fg-2);outline-offset:2px}
.auth-email-method{padding:22px;border:1px solid var(--line);border-radius:16px;background:var(--bg-2)}.auth-method-icon{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:12px;margin-bottom:18px;color:var(--fg)}.auth-email-method h2{font-size:19px;letter-spacing:-.03em;margin:0 0 10px}.auth-email-method p{font-size:13px;line-height:1.8;color:var(--fg-2);margin:0}.auth-email-method .auth-email-entry{margin:20px 0 12px}.auth-email-method>.hint{display:block;font-size:11px;line-height:1.7}
.auth-form .auth-fields .input,.auth-form .auth-cta{min-height:46px}.auth-form .auth-fields .input{font-size:16px}.auth-form .auth-sub{overflow-wrap:anywhere}.auth-modes>[hidden]{display:none!important}
.auth-delivery-help{margin-top:22px;border:1px solid var(--line);border-radius:12px;padding:0 14px}.auth-delivery-help summary{display:flex;align-items:center;min-height:48px;font-size:13px;cursor:pointer;color:var(--fg);font-weight:500}.auth-delivery-help summary::after{content:'+';margin-left:auto;padding-left:10px}.auth-delivery-help[open] summary::after{content:'−'}.auth-delivery-help p{font-size:12px;line-height:1.8;overflow-wrap:anywhere;color:var(--fg-2);margin:0 0 14px}.auth-resend-status{font-variant-numeric:tabular-nums}
@media(max-width:767px){.auth-email-method{padding:18px}.auth-method-nav{margin:20px 0}.auth-form .email-otp{min-height:64px}}
@media(prefers-reduced-motion:reduce){.auth-method-nav a{transition:none}}

.auth-form .auth-fields .email-otp{min-height:64px;font-size:26px!important}.auth-resend-link{margin:16px 0 0;font-size:12px}
/* Pending is not an unavailable method: keep the status legible in both themes. */
.auth-form [data-auth-submit][aria-busy=true] .auth-cta:disabled{opacity:1!important;background:var(--brand)!important;color:#fff!important;cursor:progress;box-shadow:none}

/* ===== Вход 2026: чистый экран, один главный акцент ===== */
.auth-form:has(.login2){max-width:520px}
.login2{display:grid;gap:18px;animation:login-rise .45s cubic-bezier(.22,.8,.3,1) both}
@keyframes login-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.login2 .auth-context,.login2 .auth-title,.login2 .auth-sub{text-align:center}
.login2 .auth-title{margin-top:2px}
.login2-mark{display:grid;place-items:center}
.login2-mark img{width:54px;height:54px;filter:drop-shadow(0 10px 24px rgb(38 92 214/.35))}
.login2-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.login2-tg{display:grid;gap:8px}
.login2-tg-btn{display:flex!important;align-items:center;justify-content:center;gap:10px;min-height:52px!important;border-radius:14px!important;font-size:15px!important;font-weight:600}
.login2-tg .auth-fields{margin-top:0}
.login2-note{text-align:center;font-size:12px;color:var(--fg-2);margin:0;line-height:1.6}
.login2-divider{display:flex;align-items:center;gap:14px;color:var(--fg-2);font-size:12px}
.login2-divider::before,.login2-divider::after{content:'';flex:1;height:1px;background:var(--line)}
.login2-card{display:grid;gap:14px;padding:20px;border-radius:18px;background:var(--bg-2);animation:login-rise .5s cubic-bezier(.22,.8,.3,1) both}
.login2-card:nth-of-type(3){animation-delay:.07s}
.login2-card-head{display:flex;gap:12px;align-items:center}
.login2-card-head h2{font-size:16px;font-weight:650;margin:0;letter-spacing:-.01em}
.login2-card-head p{font-size:12px;color:var(--fg-2);margin:2px 0 0;line-height:1.55}
.login2-icon{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:12px;background:rgb(38 92 214/.14);color:#7aa5ff}
[data-theme="light"] .login2-icon{color:#2456c8;background:rgb(38 92 214/.12)}
.login2-card .auth-fields{margin-top:0;gap:12px}
.login2-card .input{min-height:48px;border-radius:12px}
.login2-card .auth-cta{min-height:48px;border-radius:12px}
.login2 .auth-switch{text-align:center}
@media(max-width:767px){.login2-card{padding:16px}.login2{gap:14px}}
@media(prefers-reduced-motion:reduce){.login2,.login2-card{animation:none}}

/* ===== Вход 2026-2: выбор способа, одна форма на экране ===== */
.auth-form:has(.login3){max-width:480px}
.login3{display:grid;gap:16px;animation:login-rise .45s cubic-bezier(.22,.8,.3,1) both}
.login3 .auth-context,.login3 .auth-title,.login3 .auth-sub{text-align:center}
.login3-choice{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:8px;padding:6px;border-radius:16px;background:var(--bg-2)}
.login3-choice button{display:grid;justify-items:center;gap:2px;padding:12px 6px 10px;border:0;border-radius:12px;background:transparent;color:var(--fg-2);cursor:pointer;font:inherit;min-height:64px;transition:background .18s ease,color .18s ease,transform .18s ease}
.login3-choice button svg{margin-bottom:2px}
.login3-choice button span{font-size:13.5px;font-weight:600;color:var(--fg)}
.login3-choice button small{font-size:11px;color:var(--fg-2)}
.login3-choice button:hover{transform:translateY(-1px)}
.login3-choice button.is-active{background:var(--bg-3);box-shadow:0 2px 10px rgb(0 0 0/.18)}
.login3-choice button:focus-visible{outline:2px solid var(--fg-2);outline-offset:2px}
.login3-panel{display:grid;gap:12px;padding:20px;border-radius:18px;background:var(--bg-2);animation:login-rise .35s cubic-bezier(.22,.8,.3,1) both}
.login3-panel[hidden]{display:none}
.login3-panel .auth-fields{margin-top:0;gap:12px}
.login3-panel .input{min-height:48px;border-radius:12px}
.login3-panel .auth-cta{min-height:48px;border-radius:12px}
.login3-hint{font-size:12.5px;line-height:1.65;color:var(--fg-2);margin:0}
.login3-tg{display:grid;gap:14px}
.login3-tg .auth-fields{margin-top:0}
.login3 .auth-switch{text-align:center}
@media(max-width:480px){.login3-choice button small{display:none}.login3-choice button{min-height:54px}.login3-panel{padding:16px}}
@media(prefers-reduced-motion:reduce){.login3,.login3-panel{animation:none}.login3-choice button{transition:none}}

/* ===== Вход 2026-3: по мотивам референса из логин.zip ===== */
.auth-form:has(.login4){max-width:440px}
.login4{display:grid;gap:16px;animation:login-rise .45s cubic-bezier(.22,.8,.3,1) both}
.login4 .auth-title,.login4 .auth-sub{text-align:center}
.login4 .auth-sub{margin-top:0}
.login4-form{margin-top:0;display:grid;gap:12px}
.login4-form .input{min-height:48px;border-radius:12px}
.login4-form .auth-cta{min-height:48px;border-radius:12px;font-size:15px}
.login4-alt .auth-tg-form{display:grid}
.login4-social{display:flex!important;align-items:center;justify-content:center;gap:10px;min-height:48px;border-radius:12px!important;background:transparent!important;border:1px solid var(--line)!important;color:var(--fg)!important;font-weight:550;transition:border-color .18s ease,background .18s ease,transform .18s ease}
.login4-social:hover{border-color:var(--fg-2)!important;background:var(--bg-2)!important;transform:translateY(-1px)}
.login4 .auth-switch{text-align:center}
@media(prefers-reduced-motion:reduce){.login4{animation:none}.login4-social{transition:none}}
