.registration .login-form{max-height:100vh;overflow-y:auto;padding-top:38px;padding-bottom:38px}.registration .login-form h1{margin-top:22px}.registration form{gap:14px}.signup-link{margin-top:22px}.signup-link button{background:none;border:0;cursor:pointer;font:inherit}.location-field{position:relative;display:grid;gap:8px}.location-field>label{margin:0}.location-field small{color:var(--muted);font-size:12px}#location-suggestions{max-height:220px;overflow-y:auto;border:1px solid var(--border,#dce3ef);border-radius:10px;background:var(--card,#fff);padding:5px}#location-suggestions[hidden]{display:none}#location-suggestions button{display:block;text-align:left;width:100%;padding:12px;border:0;border-radius:6px;background:transparent;color:inherit;cursor:pointer;font:inherit;font-size:13px}#location-suggestions button:hover,#location-suggestions button:focus{background:rgba(24,84,232,.12);outline:2px solid #1854e8;outline-offset:-2px}.registration input[name=referralCode]{text-transform:uppercase}.registration .login-art{position:sticky;top:0;max-height:100vh}html[data-theme=dark] #location-suggestions{background:#151f33}@media(max-width:800px){.registration .login-form{max-height:none}.registration .login-art{position:static}}
/* Registration follows the viewport, with a compact two-column form on wider screens. */
.login.registration{grid-template-columns:minmax(280px, .8fr) minmax(0, 1.2fr);min-height:100vh;min-height:100dvh;align-items:start}
.registration .login-art{height:100vh;height:100dvh;padding:clamp(28px,4vw,60px);min-width:0}
.registration .login-art h1{font-size:clamp(32px,3.5vw,54px);overflow-wrap:break-word}
.registration .login-form{max-width:760px;width:100%;min-width:0;max-height:none;overflow:visible;align-content:start;padding:clamp(20px,3vw,44px);margin:auto}
.registration .login-appearance{margin-bottom:4px}
.registration .login-form>h1{margin:16px 0 10px;font-size:clamp(25px,2.5vw,32px)}
.registration .login-form>p{margin:0 0 18px}
.registration form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;align-items:start}
.registration form>label,.registration .password-field,.registration .location-field{margin:0;min-width:0}
.registration form>.help,.registration form>.error,.registration form>button,.registration form>label:has(input[name=referralCode]){grid-column:1/-1}
.registration form>.help{margin:0;line-height:1.5}
.registration form>.error{min-height:0;margin:0}
.registration form>.error:empty{display:none}
.registration form>button{min-height:44px;width:100%}
.registration .login-form>button{justify-self:start;background:transparent;border:0;padding:4px 0;cursor:pointer;font:inherit;font-size:13px}
.registration .login-form>p:last-child{margin:14px 0 0}
.registration input{font-size:16px;max-width:100%}
.registration .location-field small{line-height:1.5}
#location-suggestions{max-height:min(220px,35dvh);overflow-wrap:anywhere}
@media(max-width:820px){.login.registration{grid-template-columns:minmax(0,1fr)}.registration .login-art{display:none}.registration .login-form{max-width:720px;padding:24px clamp(18px,4vw,32px)}}
@media(max-width:540px){.registration form{grid-template-columns:minmax(0,1fr);gap:16px}.registration form>*{grid-column:1}.registration .login-form{padding:20px 18px 28px}.registration .login-form>h1{margin-top:18px}}
@media(max-height:700px) and (min-width:821px){.registration .login-form{padding-top:18px;padding-bottom:18px}.registration .login-art{padding-top:28px;padding-bottom:28px}.registration form{gap:12px 16px}}
.registration form>.registration-agreement{grid-column:1/-1;margin:0;align-items:flex-start;line-height:1.6}.registration-agreement input{flex:0 0 18px;margin-top:2px}.registration-agreement .textlink{font-size:inherit;text-decoration:underline}.registration-agreement small{color:#7888a6}.terms-page{max-width:800px;margin:0 auto;padding:32px 22px 60px;line-height:1.75}.terms-page .brand{color:#1854e8}.terms-page .brand-logo{width:42px;height:42px;object-fit:contain}.terms-page h1{margin-top:32px}.terms-page h2{font-size:19px;margin-top:28px}.terms-page .banner{display:block;padding:18px}.terms-page a.textlink{font-size:14px}
.forgot-link{display:flex;justify-content:flex-end;margin:4px 0 12px}.forgot-link button,.auth-back{border:0;background:transparent;cursor:pointer;padding:4px 0}.auth-back{justify-self:start}.login-form:has(#password-help){max-width:520px}#password-help-result{font-size:13px;line-height:1.7}#password-help-result:empty{display:none}
/* Focused account creation layout */
.login.registration{grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);align-items:stretch}
.registration .login-art{padding:clamp(32px,4vw,64px)}
.registration .login-art h1{font-weight:600;letter-spacing:-1.5px;line-height:1.14;max-width:440px}
.registration .login-form{max-width:536px;padding:28px 40px 36px;align-self:center;position:relative}
.registration .login-appearance{margin:0 0 4px;min-height:34px}
.registration .login-form>h1{font-size:30px;letter-spacing:-.8px;margin:18px 0 10px;line-height:1.2}
.registration .login-form>p.muted{font-size:14px;line-height:1.6;margin-bottom:26px}
.registration #registration{grid-template-columns:minmax(0,1fr);gap:17px}
.registration #registration>*{grid-column:1/-1;min-width:0}
.registration #registration label{font-size:13px;font-weight:500;gap:8px}
.registration #registration input:not([type=checkbox]){height:48px;padding:12px 14px;border-radius:9px;font-size:14px;transition:border-color .15s,box-shadow .15s}
.registration #registration input:focus-visible{outline:none;border-color:#1854e8;box-shadow:0 0 0 3px #1854e81a}
.registration #registration input[name=referralCode]{letter-spacing:1.3px}
.registration #registration input[name=referralCode]::placeholder{text-transform:none;letter-spacing:0}
.registration #registration .password-control input{padding-right:90px}
.registration #registration>.help{margin-top:-10px;font-size:12px;line-height:1.5}
.registration #registration>.registration-agreement{padding:2px 0;border:0;border-radius:0;font-size:12px;font-weight:400;gap:10px;line-height:1.65;margin:3px 0}
.registration-agreement input{width:17px;height:17px;margin-top:2px}
.registration-agreement .terms-new-tab{display:block;font-size:11px}
.registration #registration>.btn.primary{height:48px;border-radius:9px;font-size:14px;font-weight:600;gap:10px;box-shadow:0 4px 10px #1854e81a}
.registration .login-form>p:last-child{font-size:11px;text-align:center;margin-top:16px}
.registration-mobile-brand{display:none}
html[data-theme=dark] .registration .registration-agreement{border:0;background:transparent}
@media(max-width:820px){.login.registration{grid-template-columns:minmax(0,1fr)}.registration .login-form{max-width:520px;padding:28px 28px 40px;align-self:start}.registration-mobile-brand{display:flex;align-items:center;gap:10px;font-size:23px;color:inherit;margin:4px 0 18px}.registration-mobile-brand .brand-logo{width:38px;height:38px}.registration .login-appearance{position:absolute;right:28px;top:32px}.registration .login-form>h1{margin-top:24px}}
@media(max-width:420px){.registration .login-form{padding:22px 22px 32px}.registration .login-appearance{right:22px;top:26px}.registration .login-form>h1{font-size:28px}.registration #registration{gap:16px}}
@media(prefers-reduced-motion:reduce){.registration #registration input{transition:none}}
@media(min-width:821px) and (max-height:780px){.registration .login-form{padding-top:18px;padding-bottom:20px}.registration .login-appearance{min-height:30px}.registration .login-form>h1{margin-top:12px;font-size:28px}.registration .login-form>p.muted{margin-bottom:18px;font-size:13px}.registration #registration{gap:12px}.registration #registration input:not([type=checkbox]){height:44px}.registration #registration>.help{margin-top:-7px}.registration #registration>.btn.primary{height:44px}.registration .login-form>p:last-child{margin-top:12px}.registration-agreement .terms-new-tab{display:inline}}
