body:has(.auth-layout){background:#eef3e9;background-image:radial-gradient(ellipse at 8% 12%,#dce9db 0,transparent 35%),radial-gradient(ellipse at 95% 90%,#f7e9c8 0,transparent 38%)}
body:has(.auth-layout)>header,body:has(.auth-layout)>footer{display:none}
main.wrap:has(.auth-layout){min-height:100svh;padding:46px 24px 24px;display:grid;place-items:center;overflow:hidden}
.auth-layout{position:relative;width:min(940px,100%);display:grid;grid-template-columns:.95fr 1.05fr;border-radius:30px;border:1px solid rgba(255,255,255,.9);background:linear-gradient(145deg,#fffef9,#f0f5ec);box-shadow:0 10px 20px rgba(128,128,128,.25)}
.auth-layout:before,.auth-layout:after{content:'';position:absolute;border:1px solid #fff9;border-radius:50%;background:linear-gradient(135deg,#fff9,#dce9d7);box-shadow:0 10px 20px rgba(128,128,128,.15);pointer-events:none;z-index:-1}
.auth-layout:before{width:140px;height:140px;left:-180px;top:16px}.auth-layout:after{width:95px;height:95px;right:-135px;bottom:30px;background:linear-gradient(135deg,#fff9,#f4dfad)}
.auth-card{padding:24px 32px 20px;min-width:0;position:relative;z-index:1}
.auth-back{display:inline-block;font-size:14px;text-decoration:none;margin-bottom:14px;color:#51695e}
.auth-heading{display:flex;gap:13px;align-items:center;margin-bottom:15px}.auth-medallion{width:52px;height:52px;display:grid;place-items:center;flex-shrink:0;border-radius:18px;background:linear-gradient(145deg,#fff,#e4ebdf);border:1px solid #fff;box-shadow:0 5px 12px #80808026}
.auth-card h1{font-size:27px;line-height:1.2;margin:0 0 5px;letter-spacing:-.5px}.auth-intro{font-size:15px;line-height:1.4;color:#59695e;margin:0}
.auth-card .field{display:block;margin:8px 0;gap:0}.auth-field-label{display:block;font-size:14px;line-height:1.3;margin:0 0 5px;font-weight:500;color:#3d584b}
.auth-input-shell{position:relative;display:flex;align-items:center;background:linear-gradient(135deg,#eef3ec,#f9faf4);border:1px solid #ffffff;border-radius:14px;box-shadow:inset 2px 2px 5px #80808017,0 4px 9px #8080801c;min-width:0}
.auth-input-shell>svg{position:absolute;left:13px;width:20px;height:20px;stroke:#58776c;stroke-width:1.65;fill:none;pointer-events:none}
.auth-card .auth-input-shell input{border:0;background:transparent;box-shadow:none;width:100%;min-width:0;min-height:43px;border-radius:14px;padding:9px 44px 9px 42px;font-size:16px;line-height:1.4;outline-offset:2px;color:var(--ink)}
.auth-input-shell:focus-within{border-color:#17665a}.auth-card input::placeholder{color:#64746c}
.auth-card .show-password{position:absolute;right:5px;top:2px;border:0;background:transparent;box-shadow:none;width:38px;height:38px;min-height:38px;padding:9px;color:#58776c;border-radius:10px}.show-password svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.7;fill:none}.show-password[aria-pressed=true]{color:#17665a;background:#dfeade}
.auth-card .auth-submit{width:100%;min-height:46px;margin:12px 0 0;padding:8px 12px 8px 22px;border-radius:16px;justify-content:space-between;background:linear-gradient(125deg,#278f7e,#17665a);border:1px solid #ffffff60;box-shadow:0 6px 12px #80808030;font-size:17px;color:white}.auth-submit:hover{background:linear-gradient(125deg,#207e6e,#105247)}.auth-submit-arrow{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#ffffff22}.auth-submit svg{width:19px;height:19px;stroke:white;stroke-width:1.9;fill:none}
.auth-links{display:flex;justify-content:space-between;gap:8px;font-size:14px;margin:10px 0 0}.auth-links a{color:#32675c;text-decoration:none}
.auth-fineprint{font-size:14px;line-height:1.4;color:#5c6b62;margin:7px 0}.auth-divider{display:flex;align-items:center;gap:12px;font-size:14px;color:#657269;margin:13px 0 9px}.auth-divider:before,.auth-divider:after{content:'';height:1px;background:#cddbcc;flex:1}
.auth-social{display:grid;grid-template-columns:1fr 1fr;gap:12px}.auth-social button{gap:8px;min-height:42px;border:1px solid #fff;border-radius:13px;background:linear-gradient(145deg,#fffffff0,#e9efe3);box-shadow:0 4px 8px #80808020;font-size:15px;padding:7px 10px}.auth-social button:disabled{opacity:.7;cursor:not-allowed}.social-vk{font-size:19px;font-weight:700;color:#0077ff}.social-mail{font-size:24px;font-weight:700;color:#c18423;line-height:1}
.auth-provider-note{font-size:14px;line-height:1.3;color:#657269;text-align:center;margin:6px 0 0}.auth-switch{font-size:15px;line-height:1.4;text-align:center;margin:11px 0 8px}.auth-switch a{font-weight:600;color:#17665a}
.auth-legal-links{display:flex;gap:14px;justify-content:center;font-size:14px;color:#5c6b62}.auth-service-note{margin-top:9px;text-align:center}.auth-service-note summary{border:0;padding:0;background:none;box-shadow:none;display:inline-block;font-size:14px;font-weight:400;color:#657269}.auth-service-note summary:after{margin-left:5px}.auth-service-note p{font-size:14px;line-height:1.45;margin:8px 0}.auth-owner-return{display:block;margin:8px auto 0;border:0;background:transparent;box-shadow:none;min-height:25px;padding:2px 6px;font-size:14px;color:#5c6b62}
.auth-error{font-size:15px;line-height:1.45;margin:8px 0}.test-letter{margin:16px 0;border:1px solid #d7dfce;border-radius:16px;background:#fffaf0;padding:17px}.test-letter p{font-size:15px;line-height:1.5;margin:9px 0}.test-letter dl{display:grid;grid-template-columns:95px minmax(0,1fr);gap:6px;font-size:14px}.test-letter dd{margin:0;overflow-wrap:anywhere}.test-letter dt{color:#657269}.test-letter .button{font-size:15px;width:100%}.auth-success h2{font-size:23px}.auth-success p{font-size:16px}
.auth-mascot-layout{display:block;width:min(420px,100%);background:linear-gradient(150deg,#fff9ef,#f0eedf);border-radius:32px;border:1px solid #fff}
.auth-mascot-layout .auth-benefits,.auth-mascot-layout .auth-medallion{display:none}.auth-mascot-layout .auth-card{padding:18px 30px 18px}.auth-mascot-layout .auth-back{margin-bottom:0}.auth-mascot-layout .auth-heading{justify-content:center;text-align:center;margin-bottom:14px}.auth-mascot-layout h1{font-size:26px}.auth-mascot-layout .auth-intro{font-size:14px}
.auth-mascot{width:160px;height:151px;position:relative;z-index:2;margin:-2px auto -8px;transform:translate(var(--head-x,0px),var(--head-y,0px)) rotate(var(--head-tilt,0deg));transition:transform .15s ease-out;transform-origin:50% 90%;pointer-events:none}
.auth-mascot img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 6px 5px #80808025)}
.mascot-eye{position:absolute;width:7.2%;height:7.7%;border-radius:50%;background:radial-gradient(ellipse,#e3bc83 35%,#684628 72%,#362519 100%);overflow:hidden;transform:rotate(-8deg)}.mascot-eye-left{left:36.7%;top:37.8%}.mascot-eye-right{left:59.6%;top:41.2%}
.mascot-eye i{position:absolute;width:66%;height:72%;left:17%;top:14%;border-radius:50%;background:#101313;transform:translate(var(--gaze-x,0px),var(--gaze-y,0px));transition:transform .12s ease-out}.mascot-eye i:before{content:'';position:absolute;width:34%;height:28%;right:8%;top:5%;border-radius:50%;background:white}
.auth-mascot-layout.auth-register .auth-mascot{width:125px;height:118px;margin:-8px auto -5px}.auth-mascot-layout.auth-register .auth-card{padding-top:14px}.auth-mascot-layout.auth-register .auth-heading{margin-bottom:10px}
@media(max-width:760px){main.wrap:has(.auth-layout){padding:44px 16px 20px;align-items:start}.auth-soft-layout{grid-template-columns:1fr;width:min(450px,100%)}.auth-soft-layout .auth-benefits{display:none}.auth-card{padding:24px}.auth-layout:before{width:95px;height:95px;left:-55px;top:70px}.auth-layout:after{right:-45px;width:75px;height:75px}.auth-card h1{font-size:25px}.auth-mascot-layout .auth-card{padding:15px 23px}.auth-links{gap:14px;font-size:14px}}
@media(prefers-reduced-motion:reduce){.auth-mascot,.mascot-eye i{transition:none}}

/* Keep the essential form within a normal desktop viewport. */
.auth-card .auth-back{position:absolute;top:15px;left:22px;margin:0;font-size:14px}
.auth-card{padding-top:49px}
.auth-field-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.auth-card .auth-input-shell input{min-height:46px}
.auth-card .field{margin:10px 0}
.auth-divider{margin:9px 0 7px}.auth-switch{margin:9px 0 7px}
.auth-service-note[open]{padding-top:6px}
.auth-service-note .auth-owner-return{margin-top:6px}
.auth-mascot-layout .auth-card{padding-top:108px}
.auth-mascot{position:absolute;left:50%;top:-45px;margin:0;transform:translate(calc(-50% + var(--head-x,0px)),var(--head-y,0px)) rotate(var(--head-tilt,0deg))}
.mascot-eye-left{left:35.72%;top:37.8%}.mascot-eye-right{left:57.1%;top:41.01%}
.auth-mascot-layout.auth-register .auth-mascot{width:125px;height:118px;margin:0;top:-38px}
.auth-mascot-layout.auth-register .auth-card{padding-top:82px}
@media(max-width:760px){.auth-card{padding-top:49px}.auth-mascot-layout .auth-card{padding-top:110px}.auth-mascot{width:138px;height:130px;top:-23px}.auth-mascot-layout.auth-register .auth-mascot{width:115px;height:108px;top:-23px}.auth-mascot-layout.auth-register .auth-card{padding-top:90px}}

.auth-layout{isolation:isolate}
@media(prefers-reduced-motion:reduce),(hover:none),(pointer:coarse){.mascot-eye{display:none}}

.password-guidance{font-size:13px;line-height:1.45;margin:-4px 0 14px;color:var(--muted)}.password-guidance[data-valid="true"]{color:#17665a}

.auth-mfa{background:radial-gradient(ellipse at 50% 24%,#245b4260,transparent 65%),#11291f;color:#f2fff6;border-radius:24px;padding:28px 22px;text-align:center;margin-top:16px}.auth-mfa h2{color:#f2fff6;font-size:25px;margin:8px 0 14px}.auth-mfa>p:not(.mfa-eyebrow){color:#bed2c4;font-size:14px;line-height:1.6}.mfa-shield{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 14px;border:1px solid #65dc9580;border-radius:16px;background:#3e9c6730;color:#91f7b8;font-size:26px;box-shadow:0 0 26px #47cd7830}.mfa-eyebrow{color:#90bda0;font-size:10px;letter-spacing:2px;margin:0}.auth-mfa form>label{display:block;color:#d5e8dc;font-size:13px;margin:24px 0 12px}.mfa-code-boxes{position:relative;max-width:340px;margin:auto}.mfa-code-cells{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.mfa-code-cells span{display:grid;place-items:center;aspect-ratio:1;border:1px solid #406c52;border-radius:13px;background:#183a29;color:#d7ffe4;font:600 25px ui-monospace,monospace;transition:border-color .18s,box-shadow .18s}.mfa-code-cells span[data-filled="true"]{border-color:#65bf82;box-shadow:0 0 15px #43c57125}.mfa-code-cells span[data-active="true"]{border-color:#90efaa;box-shadow:0 0 0 2px #90efaa33,0 0 22px #58cf7b40}.auth-mfa .mfa-code-boxes input{position:absolute;inset:0;width:100%;height:100%;opacity:0;font-size:16px;cursor:text}.mfa-code-note{font-size:12px;color:#95bba1;margin:12px 0 20px}.auth-mfa .mfa-confirm{width:100%;background:#76d59a;color:#123120;border:1px solid #8ae2aa;border-radius:13px;font-weight:600;min-height:46px}.auth-mfa .mfa-confirm:disabled{opacity:.45;cursor:default}.auth-mfa .mfa-back{background:transparent;border:0;color:#b7d9c2;font-size:13px;margin-top:17px}.auth-mfa .error{color:#ffc4b8;line-height:1.5}.mfa-app-link{display:block;color:#9bf0b8;font-size:14px;margin:18px 0;text-decoration:underline}.mfa-manual-key{border:1px solid #3b634a;border-radius:12px;padding:12px;text-align:left;font-size:13px;color:#cde2d4}.mfa-manual-key summary{cursor:pointer}.mfa-manual-key p{line-height:1.5}.mfa-manual-key code{display:block;overflow-wrap:anywhere;color:#b4ffca;font-size:14px}@media(max-width:420px){.auth-mfa{padding:24px 15px}.mfa-code-cells{gap:5px}.mfa-code-cells span{font-size:21px;border-radius:10px}}@media(prefers-reduced-motion:reduce){.mfa-code-cells span{transition:none}}
