.auth-page{background:var(--paper);min-height:100vh}.auth-panel{place-items:center;min-height:100vh;padding:92px 24px 48px;display:grid;position:relative}.auth-mobile-logo{display:block;position:absolute;top:28px;left:32px}.auth-card{background:#fff;border:1px solid #30273512;border-radius:28px;width:min(100%,470px);padding:34px;box-shadow:0 20px 60px #30273514}.auth-progress{grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:12px;display:grid}.auth-progress span{background:#ece8ee;border-radius:2px;height:3px;transition:background-color .36s,transform .42s cubic-bezier(.2,.8,.2,1),box-shadow .36s}.auth-progress span.done{background:var(--ink)}.auth-progress span.current{transform:scaleY(1.8);box-shadow:0 2px 9px #3027352e}.auth-back-row{align-items:flex-start;height:33px;display:flex}.auth-back{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:.78rem;animation:.24s ease-out both back-control-in;display:flex}.auth-back:disabled,.resend:disabled{cursor:default;opacity:.45}.auth-welcome{padding-block:14px 4px}.auth-welcome-spark,.auth-icon{background:var(--mint);width:52px;height:52px;color:var(--ink);border-radius:17px;place-items:center;margin-bottom:22px;font-size:1.25rem;font-weight:800;display:grid}.auth-icon{background:var(--lilac-light);border-radius:14px;width:44px;height:44px;font-size:1rem}.auth-card h1{letter-spacing:-.04em;margin:8px 0 0;font-size:clamp(2.35rem,5vw,3.35rem);font-weight:560;line-height:1}.auth-lead{color:var(--ink-soft);margin:17px 0 24px;font-size:.9rem;line-height:1.65}.auth-lead b{color:var(--ink)}.auth-welcome .auth-lead{margin-bottom:4px}.auth-welcome-note{color:var(--ink-soft);text-align:center;margin:12px 0 0;font-size:.72rem}.auth-card .legal-consents{gap:0;margin:15px 0 0}.auth-card .legal-check-combined{background:var(--lilac-light);border-radius:13px;margin:0;padding:12px;font-size:.72rem;line-height:1.5}.auth-submit{width:100%;margin-top:20px}.resend,.skip{color:var(--ink-soft);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin:14px auto 0;font-size:.76rem;text-decoration:underline;display:block}.code-input{text-align:center;letter-spacing:.35em;font-size:1.7rem;font-weight:750}.username-input{border:1px solid var(--line);border-radius:13px;align-items:center;padding-left:14px;display:flex;overflow:hidden}.username-input:focus-within{border-color:var(--lilac);box-shadow:0 0 0 4px var(--lilac-light)}.username-input small{color:var(--ink-soft)}.username-input input{background:0 0;border:0;outline:0;flex:1;min-width:0;padding:13px 4px}.password-input{position:relative}.password-input .input{width:100%;padding-right:48px}.password-input button{width:36px;height:36px;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;display:grid;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.password-input button:hover{background:var(--lilac-light);color:var(--ink)}.password-input button:focus-visible{outline-offset:1px;outline:3px solid #c7b5e894}.forgot-password{width:max-content;color:var(--ink-soft);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin:12px 0 0 auto;padding:2px;font-size:.73rem;font-weight:750;text-decoration:underline;display:block}.forgot-password:disabled{cursor:default;opacity:.5}.password-rule{color:var(--ink-soft);margin:9px 0 0;font-size:.67rem;line-height:1.45}.field-hint{color:var(--ink-soft);align-items:center;gap:5px;margin:8px 0 0;font-size:.67rem;display:flex}.form-error{color:#8a3835;background:#fff0ef;border-radius:10px;padding:11px 13px;font-size:.76rem}.spin{animation:1s linear infinite spin}.auth-fields{grid-template-columns:1fr 1fr;gap:15px;display:grid}.auth-fields .auth-avatar,.auth-fields .auth-full{grid-column:1/-1}.auth-avatar .input{padding:9px}.auth-avatar input::file-selector-button{background:var(--lilac-light);color:var(--ink);border:0;border-radius:8px;margin-right:10px;padding:7px 10px;font-weight:700}.auth-step-stage{margin:-6px;padding:6px;transition:height .52s cubic-bezier(.22,.78,.2,1);overflow:clip}.auth-step{transform-origin:50% 20%;will-change:transform, opacity, filter;position:relative}.auth-step-exiting.auth-step-forward{animation:.22s cubic-bezier(.45,0,.8,.35) both fabric-forward-out}.auth-step-entering.auth-step-forward{animation:.42s cubic-bezier(.18,.78,.22,1) both fabric-forward-in}.auth-step-exiting.auth-step-back{animation:.22s cubic-bezier(.45,0,.8,.35) both fabric-back-out}.auth-step-entering.auth-step-back{animation:.42s cubic-bezier(.18,.78,.22,1) both fabric-back-in}@keyframes spin{to{transform:rotate(360deg)}}@keyframes back-control-in{0%{opacity:0;transform:translate(5px)}to{opacity:1;transform:none}}@keyframes fabric-forward-out{0%{opacity:1;filter:blur();transform:none}38%{opacity:.82;transform:translate(-8px,-1px)skew(1.2deg)rotate(.18deg)}to{opacity:0;filter:blur(4px);transform:translate(-48px,2px)skew(-4deg)rotate(-.55deg)scale(.985)}}@keyframes fabric-forward-in{0%{opacity:0;filter:blur(4px);transform:translate(48px,-2px)skew(4deg)rotate(.55deg)scale(.985)}48%{opacity:.9;filter:blur(.5px);transform:translate(-5px,1px)skew(-1.4deg)rotate(-.18deg)}76%{opacity:1;filter:blur();transform:translate(2px)skew(.45deg)}to{opacity:1;filter:blur();transform:none}}@keyframes fabric-back-out{0%{opacity:1;filter:blur();transform:none}38%{opacity:.82;transform:translate(8px,-1px)skew(-1.2deg)rotate(-.18deg)}to{opacity:0;filter:blur(4px);transform:translate(48px,2px)skew(4deg)rotate(.55deg)scale(.985)}}@keyframes fabric-back-in{0%{opacity:0;filter:blur(4px);transform:translate(-48px,-2px)skew(-4deg)rotate(-.55deg)scale(.985)}48%{opacity:.9;filter:blur(.5px);transform:translate(5px,1px)skew(1.4deg)rotate(.18deg)}76%{opacity:1;filter:blur();transform:translate(-2px)skew(-.45deg)}to{opacity:1;filter:blur();transform:none}}@media (max-width:600px){.auth-panel{align-items:start;padding:82px 14px 26px}.auth-mobile-logo{top:20px;left:20px}.auth-card{border-radius:22px;padding:23px 20px}.auth-card h1{font-size:2.35rem}.auth-welcome{padding-top:4px}.auth-fields{grid-template-columns:1fr}.auth-fields .auth-avatar,.auth-fields .auth-full{grid-column:auto}}@media (prefers-reduced-motion:reduce){.auth-step-stage{transition:none}.auth-step{filter:none!important;opacity:1!important;animation:none!important;transform:none!important}.auth-progress span{transition:none}.auth-back{animation:none}}.auth-topbar{justify-content:space-between;align-items:center;gap:16px;min-height:44px;display:flex;position:absolute;top:20px;left:24px;right:24px}.auth-topbar .auth-back{min-height:44px;font-size:.9rem}@media (max-width:600px){.auth-topbar{left:20px;right:20px}}
