@font-face{font-family:Onest;src:url('/fonts/onest-cyrillic.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Onest;src:url('/fonts/onest-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{font-family:Onest,system-ui,sans-serif;color:#15223b;background:#f5f7fb;font-synthesis:none}
*{box-sizing:border-box}
html,body{min-height:100%}
body{margin:0;font-size:16px;line-height:1.5}
a{color:inherit}
a:focus-visible{outline:3px solid #88a5ff;outline-offset:4px}
::selection{background:#bfd0ff;color:#15223b}
.entry{display:grid;grid-template-columns:minmax(0,1fr) minmax(440px,.85fr);min-height:100vh;min-height:100dvh}
.identity{display:flex;flex-direction:column;justify-content:space-between;padding:clamp(28px,5vw,72px);background:#173eb6;color:#fff;position:relative;overflow:hidden}
.identity::after{content:"";position:absolute;right:-14vw;bottom:-22vw;width:min(80vw,850px);aspect-ratio:1;border:1px solid rgba(255,255,255,.22);border-radius:50%;pointer-events:none}
.brand,.identity-copy,.identity-foot{position:relative;z-index:1}
.brand{display:flex;align-items:center;gap:13px;font-size:20px;font-weight:760;letter-spacing:-.025em}
.brand-mark{width:40px;height:40px;display:grid;place-items:center;background:#fff;border-radius:10px}
.brand-mark svg{width:31px;height:31px;fill:none;stroke:#2453e6;stroke-width:2;stroke-linejoin:round}
.identity-copy{max-width:580px;margin:50px 0 80px}
.product-name{font-size:20px;font-weight:700;letter-spacing:-.01em;margin:0 0 17px}
h1{font-size:clamp(3.25rem,6vw,6rem);line-height:1.02;letter-spacing:-.04em;font-weight:760;margin:0}
.lead{max-width:30ch;margin:24px 0 0;font-size:clamp(1.05rem,1.6vw,1.35rem);line-height:1.45;color:#dce6ff}
.identity-foot{font-size:13px;color:#dce6ff;margin:0}
.sign-in{display:grid;place-items:center;padding:40px clamp(28px,6vw,84px)}
.sign-in-inner{width:min(100%,440px)}
h2{font-size:clamp(1.65rem,2.6vw,2.15rem);line-height:1.18;letter-spacing:-.025em;margin:0 0 15px}
.sign-in-inner>p{max-width:36ch;margin:0;color:#5b6a82}
#login-form{margin-top:34px;display:grid;gap:10px}
#login-form label{font-size:14px;font-weight:680;color:#263753}
#login-form input{min-height:54px;width:100%;border:1px solid #cbd5e4;border-radius:10px;background:#fff;color:#15223b;padding:12px 15px;font:inherit;outline:none}
#login-form input:focus{border-color:#2854e8;box-shadow:0 0 0 3px #dbe5ff}
#login-form input::placeholder{color:#78869b}
#code-step{display:grid;gap:10px;margin-top:11px}
#code-step[hidden],.change-email[hidden]{display:none}
.code-hint{font-size:14px;color:#5b6a82;margin:0 0 3px}
.sign-in-button{margin-top:12px;min-height:56px;width:100%;display:flex;align-items:center;justify-content:center;gap:16px;padding:13px 18px;border:0;border-radius:10px;background:#2854e8;color:#fff;font:inherit;font-weight:700;cursor:pointer;transition:background-color .18s ease,transform .18s ease}
.sign-in-button:hover:not(:disabled){background:#2048ca;transform:translateY(-1px)}
.sign-in-button:disabled{cursor:wait;opacity:.65}
.sign-in-button .arrow{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.change-email{justify-self:start;border:0;background:transparent;color:#2854e8;font:inherit;font-weight:650;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:7px 0}
.login-feedback{min-height:22px;margin:0;font-size:14px;color:#af332d}
.login-feedback:empty{min-height:0}
.sign-in-inner .access-note{font-size:13px;margin-top:25px;color:#61718c}
@media(max-width:850px){.entry{grid-template-columns:1fr}.identity{min-height:37vh;min-height:37dvh;padding:28px}.identity::after{right:-110px;bottom:-170px;width:450px}.identity-copy{margin:50px 0 30px}.identity-foot{display:none}.sign-in{place-items:start center;padding:56px 28px 70px}}
@media(max-width:480px){.brand{font-size:17px}.brand-mark{width:36px;height:36px}.identity{min-height:320px}.identity-copy{margin:52px 0 12px}h1{font-size:3rem}.product-name{font-size:17px}.lead{font-size:16px;margin-top:17px}.sign-in{padding-top:42px}.sign-in-button{margin-top:28px}}
@media(prefers-reduced-motion:reduce){.sign-in-button{transition:none}.sign-in-button:hover{transform:none}}
