.auth{background:var(--surface);height:100svh;display:flex;overflow:hidden}.auth__art{background:linear-gradient(#007aff 0%,#004999 100%);flex:1.18 1 0;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.scene{aspect-ratio:780/1080;--ripple-dur:7;--shake-amp:1.4;width:min(100%,72.22svh);animation:1s both scene-in;position:relative}.scene__glow{aspect-ratio:1;background:radial-gradient(circle,#ffffff38,#0000 62%);width:70%;animation:6s ease-in-out infinite glow-pulse;position:absolute;top:47%;left:50%;transform:translate(-50%,-50%)}.ring{left:calc(var(--x) * 1%);top:calc(var(--y) * 1%);width:calc(var(--w) * 1%);aspect-ratio:1;transform-origin:50%;animation:ring-in .9s ease calc(var(--delay) * 1s) both;border:1px solid #ffffff38;border-radius:50%;position:absolute}.ripple{width:calc(var(--ripple-max) * 1%);aspect-ratio:1;opacity:0;animation:ripple-out calc(var(--ripple-dur) * 1s) linear calc(var(--i) / var(--n) * var(--ripple-dur) * -1s) infinite;border:1px solid #ffffff73;border-radius:50%;position:absolute;top:47.55%;left:50.45%;transform:translate(-50%,-50%)scale(0)}.coin{left:calc(var(--x) * 1%);top:calc(var(--y) * 1%);width:calc(var(--w) * 1%);aspect-ratio:1;animation:coin-in .8s cubic-bezier(.22, 1, .36, 1) calc(var(--delay) * 1s) both;position:absolute}.coin__tile{width:100%;height:100%;animation:float calc(var(--dur) * 1s) ease-in-out calc((var(--delay) + .8) * 1s) infinite;border-radius:12px;justify-content:center;align-items:center;display:flex}.coin__tile--glass{-webkit-backdrop-filter:blur(2px);background-image:linear-gradient(134deg,#ffffff29 2%,#ffffff4a 98%);border:.5px solid #ffffff8f;box-shadow:0 10px 30px -12px #00235073}.coin__tile--solid{background:#fff;box-shadow:0 14px 34px -14px #0023508c}.coin__icon{object-fit:contain;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;width:56%;height:56%;animation:coin-hit calc(var(--ripple-dur) / var(--ripple-count) * 1s) ease-in-out calc(var(--hit) * var(--ripple-dur) * 1s) infinite}.coin__tile--solid .coin__icon{width:62%;height:62%}.auth__panel{flex:1 1 0;justify-content:center;align-items:center;padding:clamp(12px,2.5svh,32px);display:flex;overflow:hidden}.card{background:var(--card);border-radius:16px;flex-direction:column;width:100%;max-width:568px;padding:clamp(16px,2.8svh,48px) clamp(24px,5vw,32px);animation:.8s cubic-bezier(.22,1,.36,1) .15s both card-in;display:flex;box-shadow:0 30px 70px -30px #00499940}.card>*{animation:.55s both item-in}.card>:first-child{animation-delay:.3s}.card>:nth-child(2){animation-delay:.38s}.card>:nth-child(3){animation-delay:.46s}.card>:nth-child(4){animation-delay:.54s}.card>:nth-child(5){animation-delay:.62s}.card>:nth-child(6){animation-delay:.7s}.card>:nth-child(7){animation-delay:.78s}.card>:nth-child(8){animation-delay:.86s}.card>:nth-child(9){animation-delay:.94s}.card>:nth-child(10){animation-delay:1.02s}.card>:nth-child(11){animation-delay:1.1s}.card__logo{align-self:center;width:clamp(36px,5.5svh,64px);height:auto;margin-bottom:clamp(8px,1.5svh,16px);animation:5s ease-in-out infinite float}.card__title{text-align:center;color:var(--ink);margin:0 0 clamp(12px,2svh,28px);font-size:20px;font-weight:600}.card--login .card__logo,.card--login .card__title{animation:none}.card__subtitle{text-align:center;color:var(--muted);margin:clamp(-14px,-2svh,-20px) 0 clamp(12px,2svh,28px);font-size:15px;line-height:1.5}.field{margin-bottom:clamp(8px,1.5svh,18px);display:block}.field__label{color:var(--ink);margin-bottom:clamp(4px,.7svh,8px);font-size:clamp(14px,2svh,16px);font-weight:500;display:block}.field__control{align-items:center;display:flex;position:relative}.field__input{width:100%;height:clamp(40px,5.5svh,56px);color:var(--ink);background:var(--surface);border:1.5px solid #0000;border-radius:12px;outline:none;padding:0 20px;font-family:inherit;font-size:clamp(14px,2svh,16px);transition:border-color .2s,background-color .2s,box-shadow .2s}.field__input--toggle{padding-right:52px}.field__input::placeholder{color:var(--muted)}.field__input:focus{background:var(--card);border-color:var(--blue);box-shadow:0 0 0 4px #007aff1f}.field__toggle{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;padding:6px;transition:color .2s;display:inline-flex;position:absolute;right:14px}.field__toggle:hover{color:var(--blue)}.forgot{color:var(--blue);align-self:flex-end;margin:-2px 0 clamp(10px,1.8svh,22px);font-size:16px;text-decoration:none;transition:opacity .2s}.forgot:hover{text-decoration:underline}.btn-submit{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;height:clamp(40px,5.5svh,56px);margin-bottom:clamp(12px,2svh,28px);font-family:inherit;font-size:clamp(16px,2.5svh,20px);font-weight:500;text-decoration:none;transition:background-color .2s,transform .12s,box-shadow .2s;display:inline-flex;position:relative;overflow:hidden}.btn-submit:after{content:"";background:linear-gradient(120deg,#0000 30%,#ffffff59 50%,#0000 70%);transition:transform .6s;position:absolute;inset:0;transform:translate(-120%)}.btn-submit:hover{background:var(--blue-hover);transform:translateY(-1px);box-shadow:0 12px 24px -10px #007affb3}.btn-submit:hover:after{transform:translate(120%)}.btn-submit:active{transform:translateY(0)}.btn-submit__spinner{opacity:0;border:2.5px solid #fff6;border-top-color:#fff;border-radius:50%;width:22px;height:22px;margin:-11px 0 0 -11px;animation:.7s linear infinite spin;position:absolute;top:50%;left:50%}.btn-submit:disabled:not(.is-loading){background:var(--faint,#b0b8c9);color:#ffffffb3;cursor:not-allowed;box-shadow:none}.btn-submit:disabled:hover{box-shadow:none;transform:none}.btn-submit:disabled:hover:after{transform:translate(-120%)}.btn-submit.is-loading{cursor:progress}.btn-submit.is-loading .btn-submit__label{opacity:0}.btn-submit.is-loading .btn-submit__spinner{opacity:1}.divider{align-items:center;gap:16px;margin-bottom:clamp(10px,1.8svh,24px);display:flex}.divider__line{background:var(--faint);opacity:.35;flex:1;height:1px}.divider__text{color:var(--faint);white-space:nowrap;font-size:16px;font-weight:500}.socials{justify-content:center;gap:24px;display:flex}.social{background:var(--surface);width:clamp(44px,6.5svh,64px);height:clamp(44px,6.5svh,64px);color:var(--ink);cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;transition:transform .18s,box-shadow .18s,border-color .18s,background-color .18s,color .18s;display:inline-flex}.social:hover{background:var(--card);border-color:var(--faint);transform:translateY(-3px);box-shadow:0 12px 24px -12px #00499959}.social:active{transform:translateY(-1px)}.card__footer{text-align:center;color:var(--muted);margin:clamp(10px,1.8svh,24px) 0 0;font-size:15px}.card__link{color:var(--blue);font-weight:500;text-decoration:none}.card__link:hover{text-decoration:underline}.sent__badge{background:#007aff1f;border-radius:50%;justify-content:center;align-self:center;align-items:center;width:clamp(52px,8svh,72px);height:clamp(52px,8svh,72px);margin-bottom:clamp(12px,2svh,20px);animation:.5s cubic-bezier(.22,1,.36,1) both badge-pop;display:flex}.sent__check{stroke:var(--blue)}.sent__check path{stroke-dasharray:30;stroke-dashoffset:30px;animation:.5s .25s forwards check-draw}.sent__text{text-align:center;color:var(--muted);margin:0 0 clamp(14px,2.5svh,28px);font-size:15px;line-height:1.5}.sent__email{color:var(--ink);font-weight:600}@keyframes scene-in{0%{opacity:0}to{opacity:1}}@keyframes glow-pulse{0%,to{opacity:.5;transform:translate(-50%,-50%)scale(.92)}50%{opacity:.9;transform:translate(-50%,-50%)scale(1.06)}}@keyframes ring-in{0%{opacity:0;transform:scale(.55)}to{opacity:1;transform:scale(1)}}@keyframes coin-in{0%{opacity:0;transform:translateY(18px)scale(.5)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(calc(var(--float,12) * -1px)) rotate(.6deg)}}@keyframes ripple-out{0%{opacity:0;transform:translate(-50%,-50%)scale(0)}8%{opacity:.5}to{opacity:0;transform:translate(-50%,-50%)scale(1)}}@keyframes coin-hit{0%{transform:translate(0)rotate(0)}2%{transform:translate(calc(var(--shake-amp) * 1px), calc(var(--shake-amp) * -.6px)) rotate(-2.2deg)}4%{transform:translate(calc(var(--shake-amp) * -.9px), calc(var(--shake-amp) * .7px)) rotate(1.8deg)}6%{transform:translate(calc(var(--shake-amp) * .7px), calc(var(--shake-amp) * .5px)) rotate(-1.3deg)}8%{transform:translate(calc(var(--shake-amp) * -.4px), calc(var(--shake-amp) * -.3px)) rotate(.7deg)}10%,to{transform:translate(0)rotate(0)}}@keyframes card-in{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes item-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes badge-pop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes check-draw{to{stroke-dashoffset:0}}.auth__panel-inner{width:100%;max-width:568px;position:relative}.auth-theme-btn{z-index:10;background:var(--card);width:44px;height:44px;color:var(--muted);cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;transition:background-color .2s,color .2s,transform .15s,box-shadow .15s;animation:.55s .3s both item-in;display:flex;position:absolute;top:16px;right:16px;box-shadow:0 2px 12px #0023501a}.auth-theme-btn svg{width:20px;height:20px}.auth-theme-btn:hover{color:var(--blue);transform:translateY(-1px);box-shadow:0 8px 20px -8px #007aff59}.auth-theme-btn.is-on{color:var(--blue)}html.dark .auth-theme-btn{background:#1a1d27;box-shadow:0 2px 12px #0000004d}@media (width<=900px){.auth__art{display:none}.auth__panel{flex:1}}@media (prefers-reduced-motion:reduce){.scene,.scene__glow,.ring,.ripple,.coin,.coin__tile,.coin__icon,.card,.card>*,.card__logo,.auth-theme-btn,.sent__badge,.btn-submit__spinner{animation:none!important}.sent__check path{stroke-dashoffset:0!important;animation:none!important}.ripple{display:none}}.auth-error{color:#f04747;text-align:center;margin:-4px 0 0;font-size:.8125rem}.field__input--error{border-color:#f04747;box-shadow:0 0 0 4px #f047471f}.field__input--error:focus{border-color:#f04747;box-shadow:0 0 0 4px #f047472e}.field__hint{color:#f04747;margin-top:5px;font-size:12px;line-height:1.4;display:block}
