.auth-shell{position:relative;z-index:2;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:56px 20px}.auth-card{position:relative;width:100%;max-width:436px;padding:clamp(28px,4vw,42px);border-radius:26px;background:linear-gradient(180deg,hsla(0,0%,100%,.05),hsla(0,0%,100%,.014));border:1px solid var(--line);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 44px 100px -44px rgba(0,0,0,.85),inset 0 1px 0 hsla(0,0%,100%,.06)}.auth-card:before{content:"";position:absolute;left:50%;top:-30%;width:70%;height:60%;transform:translateX(-50%);background:radial-gradient(ellipse,var(--blue-soft),transparent 70%);filter:blur(50px);opacity:.6;pointer-events:none}.auth-brand{display:flex;align-items:center;justify-content:center;margin-bottom:24px}.auth-brand svg{height:26px;width:auto}.auth-h{font-size:clamp(1.55rem,3vw,1.95rem);font-weight:600;letter-spacing:-.03em;margin-bottom:9px}.auth-h,.auth-sub{position:relative;text-align:center}.auth-sub{color:var(--ink-2);font-size:14.5px;line-height:1.55;margin-bottom:28px}.auth-sub b{color:var(--ink);font-weight:600}.auth-form{position:relative;gap:15px}.auth-form,.fld{display:flex;flex-direction:column}.fld{gap:7px}.fld label{font-size:13px;font-weight:500;color:var(--ink-2)}.inp{width:100%;padding:13px 14px;border-radius:12px;font:500 14.5px/1.2 var(--sans);color:var(--ink);background:hsla(0,0%,100%,.03);border:1px solid var(--line);transition:border-color .25s,background .25s,box-shadow .25s}.inp::placeholder{color:var(--ink-4)}.inp:focus{outline:none;border-color:rgba(79,155,255,.6);background:rgba(79,155,255,.05);box-shadow:0 0 0 3px rgba(79,155,255,.16)}.fld.err .code-box,.fld.err .inp{border-color:hsla(0,100%,72%,.6)}.fld.err .inp:focus{box-shadow:0 0 0 3px hsla(0,100%,72%,.16)}.msg{font-size:12px;color:#ff8b8b}.fld-hint{font-size:12px;color:var(--ink-4)}.pw-wrap{position:relative}.pw-wrap .inp{padding-right:46px}.pw-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:32px;height:32px;display:grid;place-items:center;color:var(--ink-3);border-radius:9px;transition:color .2s,background .2s}.pw-toggle:hover{color:var(--ink);background:hsla(0,0%,100%,.05)}.pw-toggle svg{width:18px;height:18px}.pw-hints{display:flex;flex-wrap:wrap;gap:5px 14px;font-size:11.5px;color:var(--ink-4);margin-top:3px}.pw-hints span{display:inline-flex;align-items:center;gap:6px;transition:color .25s}.pw-hints span:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;transition:background .25s}.pw-hints span.ok{color:var(--blue-2)}.auth-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:-2px}.auth-link{font-size:13px;color:var(--blue-2);font-weight:500;transition:color .2s}.auth-link:hover{color:var(--blue-3)}.checkbox{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--ink-2);line-height:1.5;cursor:pointer}.checkbox input{margin-top:1px;width:16px;height:16px;flex:none;accent-color:var(--blue);cursor:pointer}.checkbox a{color:var(--blue-2)}.auth-submit{margin-top:6px;width:100%;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px;border-radius:13px;font:600 15px/1 var(--sans);color:#04122e;border:none;cursor:pointer;background:linear-gradient(180deg,var(--blue-2),var(--blue));box-shadow:inset 0 1px 0 hsla(0,0%,100%,.4),0 14px 40px -14px var(--blue-glow);transition:transform .5s var(--spring),box-shadow .4s,opacity .3s}.auth-submit:hover{transform:translateY(-1px);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.55),0 18px 52px -12px var(--blue-glow)}.auth-submit:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.divider{display:flex;align-items:center;gap:12px;margin:22px 0;color:var(--ink-4);font:500 12px/1 var(--mono)}.divider:after,.divider:before{content:"";flex:1 1;height:1px;background:var(--line)}.social-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px;border-radius:12px;font:600 14px/1 var(--sans);color:var(--ink);background:hsla(0,0%,100%,.04);border:1px solid var(--line);cursor:pointer;transition:background .25s,border-color .25s}.social-btn:hover{background:hsla(0,0%,100%,.08);border-color:hsla(0,0%,100%,.2)}.social-btn svg{width:18px;height:18px}.auth-alt{position:relative;margin-top:24px;text-align:center;font-size:14px;color:var(--ink-3)}.auth-alt a{color:var(--blue-2);font-weight:500}.auth-alt a:hover{color:var(--blue-3)}.auth-back{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-3);margin-bottom:18px;transition:color .2s}.auth-back:hover{color:var(--ink)}.auth-back svg{width:16px;height:16px}.code-row{display:flex;gap:10px;justify-content:center;margin:4px 0 2px}.code-box{width:46px;height:56px;text-align:center;font:600 22px/1 var(--sans);color:var(--ink);border-radius:13px;background:hsla(0,0%,100%,.03);border:1px solid var(--line);transition:border-color .2s,box-shadow .2s,background .2s}.code-box:focus{outline:none;border-color:rgba(79,155,255,.6);background:rgba(79,155,255,.05);box-shadow:0 0 0 3px rgba(79,155,255,.16)}.auth-success{position:relative;text-align:center;padding:8px 0}.auth-tick{width:62px;height:62px;margin:0 auto 20px;border-radius:50%;display:grid;place-items:center;color:var(--blue-2);background:var(--blue-soft);border:1px solid rgba(79,155,255,.32);box-shadow:0 0 32px -6px var(--blue-glow)}.auth-tick svg{width:30px;height:30px;stroke-width:2.4}.auth-note{position:relative;margin-top:18px;text-align:center;font-size:13px;color:var(--ink-3)}.auth-resend{background:none;border:none;color:var(--blue-2);font:500 13px/1 var(--sans);cursor:pointer;padding:0}.auth-resend:hover{color:var(--blue-3)}.auth-resend:disabled{color:var(--ink-4);cursor:not-allowed}@media (max-width:420px){.code-box{width:42px;height:52px;font-size:20px}.auth-shell{padding:40px 16px}}