.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.btn--block{width:100%}.btn .spinner{display:none;width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.4);border-top-color:var(--white);animation:spin .7s linear infinite}.btn.is-loading{pointer-events:none;opacity:.88}.btn.is-loading .spinner{display:block}.btn.is-loading .icon{display:none}@keyframes spin{to{transform:rotate(360deg)}}.auth{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}.auth__main{display:flex;flex-direction:column;padding:24px clamp(20px,5vw,64px)}.auth__top{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px}.back-link{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 12px;margin-right:-12px;border-radius:11px;color:var(--text-strong);font-size:15px;font-weight:500;text-decoration:none;transition:color .15s ease,background-color .15s ease}.back-link:hover{color:var(--blue);background:#f1f5ff}.auth__center{flex:1;display:flex;align-items:center;justify-content:center;padding-block:clamp(40px,8vh,88px)}.auth__foot{display:flex;flex-wrap:wrap;gap:6px 20px;font-size:13.5px;color:var(--muted)}.auth__foot a{color:var(--muted);text-decoration:none}.auth__foot a:hover{color:var(--ink)}.login{width:100%;max-width:420px;display:flex;flex-direction:column;gap:28px}.login__head{display:flex;flex-direction:column;gap:10px}.login__title{font-family:var(--font-display);font-weight:700;font-size:clamp(32px,3vw,40px);line-height:1.1;letter-spacing:-.03em;color:var(--ink)}.login__sub{font-size:16.5px;line-height:1.6;color:var(--text)}.field__top{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.field__link{font-size:14px;font-weight:500;text-decoration:none}.field__link:hover{text-decoration:underline}.input-wrap{position:relative}.auth .input{height:52px}.input[aria-invalid=true]{border-color:var(--danger-border)}.input[aria-invalid=true]:focus{box-shadow:0 0 0 4px #dc26261f}.input--with-action{padding-right:56px}.input-action{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:44px;height:44px;padding:0;border:0;border-radius:9px;background:transparent;color:var(--muted);display:grid;place-items:center;cursor:pointer;transition:color .15s ease,background-color .15s ease}.input-action:hover{color:var(--ink);background:#f1f5f9}.input-action .icon-hide,.input-action[aria-pressed=true] .icon-show{display:none}.input-action[aria-pressed=true] .icon-hide{display:block}.field__error{display:flex;align-items:center;gap:6px;font-size:13.5px;line-height:1.4;color:var(--danger)}.alert{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:11px;background:#fef2f2;border:1px solid #fecaca;color:#991b1b;font-size:14.5px;line-height:1.5}.alert .icon{margin-top:1px}.login__help{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px 8px;padding-top:22px;border-top:1px solid #eef1f5;font-size:14px;line-height:1.5;color:var(--muted);text-align:center}.login__help a{display:inline-flex;align-items:center;gap:6px;color:var(--ink);font-weight:500;text-decoration:none}.login__help a .icon,.login__help a:hover{color:var(--blue)}.auth__aside{position:relative;overflow:hidden;margin:12px;border-radius:28px;background:var(--blue-700);color:var(--white);padding:clamp(40px,4vw,56px);display:flex;flex-direction:column;justify-content:space-between;gap:28px}.aside__dots{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.14) 1px,transparent 1px);background-size:24px 24px;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 70% 60%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse 80% 70% at 70% 60%,#000 20%,transparent 75%);pointer-events:none}.aside__deco{position:absolute;right:-180px;top:-140px;color:#ffffff12;stroke-width:.6;pointer-events:none}.aside__head,.aside__proof,.aside-visual{position:relative}.aside__head{display:flex;flex-direction:column;gap:14px;max-width:460px}.aside__eyebrow{font-family:var(--font-mono);font-size:12.5px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--blue-on-dark)}.aside__title{font-family:var(--font-display);font-weight:600;font-size:clamp(30px,2.8vw,42px);line-height:1.1;letter-spacing:-.03em;color:var(--white)}.aside__title span{display:block}.aside__lead{font-size:17px;line-height:1.6;color:var(--blue-on-dark)}.aside__proof{display:flex;flex-wrap:wrap;gap:10px 24px;font-size:14.5px;color:var(--blue-on-dark)}.aside__proof li{display:flex;align-items:center;gap:8px}.aside__proof strong{color:var(--white);font-weight:600}.aside-visual{flex:1;min-height:470px}.aside-visual__stage{position:absolute;left:50%;top:50%;width:480px;height:580px;transform:translate(-50%,-50%) scale(.8);transform-origin:center}.aside-visual__glow{position:absolute;left:40px;top:70px;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle,#ffffff24,#fff0 66%)}.auth__aside .ring{border-color:#fff9}@media(max-height:860px){.aside-visual{min-height:390px}.aside-visual__stage{transform:translate(-50%,-50%) scale(.66)}}@media(max-width:960px){.auth{grid-template-columns:1fr}.auth__aside{display:none}}@media(max-width:420px){.back-link__label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.back-link{width:44px;padding:0;justify-content:center}}@media(prefers-reduced-motion:reduce){.btn .spinner{animation-duration:1.6s}}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}
