/* Dedicated sign-in composition; the registration stylesheet stays isolated. */
@font-face{font-family:'Studio Login';src:url('/assets/fonts/dm-sans/DMSans-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Studio Login';src:url('/assets/fonts/dm-sans/DMSans-Medium.ttf') format('truetype');font-weight:500 600;font-style:normal;font-display:swap}
@font-face{font-family:'Studio Login';src:url('/assets/fonts/dm-sans/DMSans-Bold.ttf') format('truetype');font-weight:700 900;font-style:normal;font-display:swap}
.auth-page--login{--site-font-family:'Studio Login',system-ui,sans-serif;--auth-bg:#080c17;--auth-panel:#10192b;--auth-field:#0b1323;--auth-border:#26334e;--auth-text:#f1f5ff;--auth-muted:#a7b6d0;--auth-accent:#8eb8ff;position:relative;isolation:isolate;width:100%;min-height:100vh;min-height:100dvh;overflow:hidden;background:var(--auth-bg);color:var(--auth-text);font-family:'Studio Login',system-ui,sans-serif;color-scheme:dark}
.auth-page--login *,.auth-page--login *:before,.auth-page--login *:after{box-sizing:border-box}
.auth-page--login .auth-background{position:absolute;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(ellipse at 14% 32%,rgba(58,87,170,.17),transparent 43%),radial-gradient(ellipse at 95% 85%,rgba(43,119,164,.07),transparent 40%)}
.auth-page--login .auth-background:after{content:'';position:absolute;inset:0;background:linear-gradient(rgba(170,195,255,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(170,195,255,.022) 1px,transparent 1px);background-size:82px 82px;mask-image:linear-gradient(120deg,#000,transparent 66%);-webkit-mask-image:linear-gradient(120deg,#000,transparent 66%)}
.auth-page--login .auth-shell{display:flex;flex-direction:column;justify-content:center;width:100%;max-width:none;min-height:100vh;min-height:100dvh;margin:0;padding:40px 48px}
.auth-page--login .auth-card-top{display:flex;align-items:center;justify-content:space-between;gap:20px;width:min(100%,1200px);margin:0 auto 50px;padding:0 0 24px;border-bottom:1px solid rgba(142,184,255,.11)}
/* Preserve the original logo's dimensions, colors and lettering. */
.auth-page--login .auth-brand{display:inline-flex;align-items:center;min-width:0;gap:13px;color:var(--auth-text);text-decoration:none}
.auth-page--login .auth-brand-mark{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:11px;color:#06070a;background:#f8fafc;box-shadow:0 8px 22px rgba(0,0,0,.22)}
.auth-page--login .auth-brand-mark i{font-size:17px}
.auth-page--login .auth-brand-name{--site-font-family:'Poppins',system-ui,sans-serif;overflow:hidden;color:inherit;font-family:'Poppins',system-ui,sans-serif;font-size:18px;font-weight:600;letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap}
.auth-page--login .auth-card-tools{flex:none}
.auth-page--login .auth-theme-toggle{display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid var(--auth-border);border-radius:11px;color:var(--auth-muted);background:rgba(142,184,255,.035);cursor:pointer;transition:color .2s,border-color .2s}
.auth-page--login .auth-theme-toggle:hover{color:var(--auth-accent);border-color:#4c628a}
.auth-page--login .auth-theme-toggle span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.auth-page--login .auth-layout{display:grid;grid-template-columns:minmax(0,1fr) 440px;align-items:center;gap:90px;width:min(100%,1200px);margin:0 auto}
.auth-page--login .studio-login-intro{position:relative;min-width:0;padding:12px 0}
.auth-page--login .studio-login-kicker{display:flex;align-items:center;gap:10px;margin:0 0 26px;color:#a5b9df;font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase}
.auth-page--login .studio-login-kicker>span{width:7px;height:7px;border-radius:2px;background:#8eb8ff;box-shadow:0 0 18px rgba(142,184,255,.5)}
.auth-page--login .studio-login-intro h2{position:relative;z-index:1;margin:0;color:var(--auth-text);font-size:clamp(54px,5.7vw,80px);font-weight:500;letter-spacing:-.065em;line-height:1.06}
.auth-page--login .studio-login-intro h2 em{font-style:normal;color:#a9bfff;background:linear-gradient(100deg,#92b8ff 10%,#c1b4ff 65%,#91dce5);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.auth-page--login .studio-login-description{position:relative;z-index:1;max-width:440px;margin:24px 0 0;color:var(--auth-muted);font-size:16px;line-height:1.85}
.auth-page--login .studio-login-art{position:relative;isolation:isolate;width:100%;height:300px;margin:20px 0 24px;overflow:hidden}
.auth-page--login .studio-art-grid{position:absolute;z-index:-1;left:5%;right:5%;top:7%;bottom:0;border-radius:50%;background:radial-gradient(ellipse,rgba(80,113,206,.12),transparent 68%)}
.auth-page--login .studio-orbit{position:absolute;left:50%;top:45%;width:420px;height:175px;border:1px solid rgba(143,173,239,.2);border-radius:50%;transform:translate(-50%,-50%) rotate(-28deg)}
.auth-page--login .studio-orbit--two{width:470px;height:195px;border-color:rgba(143,173,239,.09);transform:translate(-50%,-50%) rotate(25deg)}
.auth-page--login .studio-disc{position:absolute;left:50%;top:46%;display:grid;place-items:center;width:238px;height:238px;transform:translate(-50%,-50%) rotate(-20deg);border:1px solid #465379;border-radius:50%;background:repeating-radial-gradient(circle at center,#10192b 0 2px,#1e2942 3px 4px);box-shadow:0 25px 50px rgba(0,0,0,.38),0 0 55px rgba(126,145,231,.09),inset 0 0 0 9px #0d1425}
.auth-page--login .studio-disc:before{content:'';position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 15deg,transparent 0deg,rgba(179,199,255,.21) 58deg,transparent 95deg,transparent 180deg,rgba(179,199,255,.15) 232deg,transparent 270deg);pointer-events:none}
.auth-page--login .studio-disc-label{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;width:91px;height:91px;border:1px solid #93aff1;border-radius:50%;background:linear-gradient(135deg,#b2c5ff,#789ee9 55%,#8574b8);color:#182b50;box-shadow:0 0 0 5px rgba(6,15,32,.65)}
.auth-page--login .studio-disc-label:after{content:'';width:7px;height:7px;border-radius:50%;background:#15233e;border:1px solid rgba(255,255,255,.4)}
.auth-page--login .studio-disc-label i{font-size:22px}
.auth-page--login .studio-disc-label span{font-size:7px;font-weight:700;letter-spacing:.12em}
.auth-page--login .studio-art-caption{position:absolute;bottom:6px;left:0;right:0;display:flex;align-items:center;gap:12px;color:#96a9cc;font-size:12px;letter-spacing:.025em}
.auth-page--login .studio-art-caption>i{margin-left:auto;font-size:12px}
.auth-page--login .studio-art-caption-line{width:34px;height:1px;background:#526c98}
.auth-page--login .studio-art-star{position:absolute;width:5px;height:5px;border-radius:50%;background:#afbbff;box-shadow:0 0 16px #7792ff;animation:studio-light 7s ease-in-out infinite alternate}
.auth-page--login .studio-art-star--one{top:27%;left:12%}
.auth-page--login .studio-art-star--two{bottom:26%;right:12%;width:3px;height:3px;animation-delay:-3s;background:#88dce8}
@keyframes studio-light{from{opacity:.25}to{opacity:.8}}
.auth-page--login .studio-login-platforms{display:flex;align-items:center;gap:27px;padding-top:21px;border-top:1px solid rgba(142,184,255,.12);color:#b2c2de;font-size:12px}
.auth-page--login .studio-login-platforms>span{display:inline-flex;align-items:center;gap:9px;white-space:nowrap}
.auth-page--login .studio-login-platforms i{font-size:17px;color:#8eb8ff}
.auth-page--login .studio-login-platforms>span:nth-child(2) i{color:#b7acff}
.auth-page--login .studio-login-platforms .studio-platform-note{margin-left:auto;color:#8193b3;font-size:12px}
.auth-page--login .auth-card{position:relative;width:100%;border:1px solid var(--auth-border);border-radius:24px;background:var(--auth-panel);box-shadow:0 24px 70px rgba(0,3,13,.22),inset 0 1px 0 rgba(187,210,255,.035);overflow:hidden}
.auth-page--login .auth-card:before{content:'';position:absolute;top:0;left:35px;right:35px;height:1px;background:linear-gradient(90deg,transparent,#6684b4,transparent)}
.auth-page--login .auth-card-body{padding:38px 36px 30px}
.auth-page--login .studio-form-kicker{display:flex;align-items:center;gap:8px;margin:0 0 15px;color:var(--auth-accent);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase}
.auth-page--login .studio-form-kicker:before{content:'';width:5px;height:5px;border-radius:50%;background:var(--auth-accent)}
.auth-page--login .auth-heading{margin:0;color:var(--auth-text);font-size:32px;line-height:1.2;font-weight:500;letter-spacing:-.045em}
.auth-page--login .auth-subtitle{margin:12px 0 31px;color:var(--auth-muted);font-size:14px;line-height:1.75}
.auth-page--login .auth-flash{margin-bottom:24px}
.auth-page--login .auth-fields{display:grid;gap:21px}
.auth-page--login .auth-field{min-width:0}
.auth-page--login .auth-field-label{display:block;margin-bottom:9px;color:var(--auth-text);font-size:12px;font-weight:500}
.auth-page--login .auth-input-wrap{position:relative;display:block}
.auth-page--login .auth-input{display:block;width:100%;height:50px;padding:12px 42px 12px 14px;border:1px solid var(--auth-border);border-radius:11px;outline:none;background:var(--auth-field);color:var(--auth-text);font:inherit;font-size:15px;transition:border-color .2s,box-shadow .2s}
.auth-page--login .auth-input::placeholder{color:#6c7f9f;opacity:1}
.auth-page--login .auth-input:hover{border-color:#425478}
.auth-page--login .auth-input:focus{border-color:var(--auth-accent);box-shadow:0 0 0 3px rgba(142,184,255,.09)}
.auth-page--login .auth-input--password{padding-right:80px}
.auth-page--login .auth-field-status{position:absolute;display:grid;place-items:center;top:50%;right:14px;width:18px;height:18px;transform:translateY(-50%);opacity:0;font-size:12px;pointer-events:none}
.auth-page--login .auth-field-status--before-toggle{right:47px}
.auth-page--login .auth-field.is-valid .auth-field-status{opacity:1;color:#84dfba}
.auth-page--login .auth-field.is-invalid .auth-field-status{opacity:1;color:#ee9ea8}
.auth-page--login .auth-field.is-invalid .auth-input{border-color:#a96779}
.auth-page--login .auth-password-toggle{position:absolute;display:grid;place-items:center;top:50%;right:8px;width:32px;height:32px;transform:translateY(-50%);padding:0;border:0;border-radius:8px;background:transparent;color:var(--auth-muted);font-size:15px;cursor:pointer}
.auth-page--login .auth-password-toggle:hover{background:rgba(142,184,255,.06);color:var(--auth-text)}
.auth-page--login .auth-remember{display:flex;align-items:center;gap:9px;margin-top:20px;color:var(--auth-muted);font-size:12px;cursor:pointer}
.auth-page--login .auth-remember input{width:15px;height:15px;margin:0;accent-color:var(--auth-accent)}
.auth-page--login .auth-submit{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:49px;margin-top:26px;padding:12px 17px;border:1px solid #a8c8ff;border-radius:11px;color:#142646;background:#8eb8ff;font-family:inherit;font-size:14px;font-weight:600;box-shadow:0 6px 21px rgba(57,104,197,.1);cursor:pointer;transition:background .2s,box-shadow .2s}
.auth-page--login .auth-submit:hover{background:#b1ceff;box-shadow:0 8px 25px rgba(79,132,224,.18)}
.auth-page--login .auth-submit i{font-size:12px}
.auth-page--login .auth-submit:disabled{opacity:.6;cursor:wait}
.auth-page--login .auth-submit.is-loading i{animation:studio-light 1s ease-in-out infinite alternate}
.auth-page--login .auth-divider{display:flex;align-items:center;gap:12px;margin:25px 0 20px;color:#7386a6;font-size:12px;letter-spacing:.08em}
.auth-page--login .auth-divider:before,.auth-page--login .auth-divider:after{content:'';flex:1;height:1px;background:var(--auth-border)}
.auth-page--login .auth-social-actions{display:grid;gap:10px}
.auth-page--login .auth-social-button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:11px 14px;border:1px solid var(--auth-border);border-radius:11px;background:transparent;color:var(--auth-text);font-size:12px;font-weight:500;text-decoration:none;transition:border-color .2s,background .2s}
.auth-page--login .auth-social-button i{font-size:15px}
.auth-page--login .auth-social-button--discord i{color:#b7acff}
.auth-page--login .auth-social-button:hover{color:var(--auth-text);background:rgba(142,184,255,.035);border-color:#425478}
.auth-page--login .auth-footnote{margin:26px 0 0;color:var(--auth-muted);font-size:12px;line-height:1.7;text-align:center}
.auth-page--login .auth-footnote-link{display:inline-flex;align-items:center;gap:6px;margin-left:4px;color:var(--auth-accent);font-weight:500;text-decoration:none}
.auth-page--login .auth-footnote-link i{font-size:12px}
.auth-page--login .auth-footnote-link:hover{text-decoration:underline;text-underline-offset:4px}
.auth-page--login :is(a,button,input):focus-visible{outline:2px solid var(--auth-accent);outline-offset:4px}
body[data-theme='pearl'] .auth-page--login,body[data-theme='ocean'] .auth-page--login{--auth-bg:#f0f3fa;--auth-panel:#fff;--auth-field:#f7f9fd;--auth-border:#d4def0;--auth-text:#1c2c49;--auth-muted:#647798;--auth-accent:#416eb9;color-scheme:light}
body[data-theme='pearl'] .auth-page--login .auth-brand-mark,body[data-theme='ocean'] .auth-page--login .auth-brand-mark{color:#fff;background:#111820}
body[data-theme='pearl'] .auth-page--login .studio-login-intro h2 em,body[data-theme='ocean'] .auth-page--login .studio-login-intro h2 em{background:linear-gradient(100deg,#406eba,#7366b3 70%,#417f99);background-clip:text;-webkit-background-clip:text}
body[data-theme='pearl'] .auth-page--login .studio-login-kicker,body[data-theme='ocean'] .auth-page--login .studio-login-kicker,body[data-theme='pearl'] .auth-page--login .studio-login-platforms,body[data-theme='ocean'] .auth-page--login .studio-login-platforms{color:#566d91}
body[data-theme='pearl'] .auth-page--login .auth-input,body[data-theme='ocean'] .auth-page--login .auth-input,body[data-theme='pearl'] .auth-page--login .auth-social-button,body[data-theme='ocean'] .auth-page--login .auth-social-button{border-color:var(--auth-border)}
body[data-theme='pearl'] .auth-page--login .auth-card,body[data-theme='ocean'] .auth-page--login .auth-card{box-shadow:0 20px 60px rgba(31,54,92,.09)}
body[data-theme='pearl'] .auth-page--login .auth-field.is-valid .auth-field-status,body[data-theme='ocean'] .auth-page--login .auth-field.is-valid .auth-field-status{color:#287053}
body[data-theme='pearl'] .auth-page--login .studio-orbit,body[data-theme='ocean'] .auth-page--login .studio-orbit{border-color:rgba(83,111,172,.22)}
@media(max-width:1199px){.auth-page--login .auth-shell{padding:35px 36px}.auth-page--login .auth-layout{grid-template-columns:minmax(0,1fr) 410px;gap:50px}.auth-page--login .studio-login-intro h2{font-size:62px}.auth-page--login .studio-login-platforms{gap:20px}.auth-page--login .studio-login-platforms .studio-platform-note{display:none}.auth-page--login .auth-card-body{padding:36px 30px 30px}.auth-page--login .studio-orbit{width:350px}.auth-page--login .studio-orbit--two{width:395px}}
@media(max-width:900px){.auth-page--login .auth-shell{padding:32px 26px}.auth-page--login .auth-card-top{width:min(100%,470px);margin-bottom:34px;padding-bottom:23px}.auth-page--login .auth-layout{display:block;max-width:470px}.auth-page--login .studio-login-intro{display:none}.auth-page--login .auth-card-body{padding:38px 36px 32px}.auth-page--login .auth-input{font-size:16px}}
@media(max-width:479px){.auth-page--login .auth-shell{justify-content:flex-start;padding:26px 16px}.auth-page--login .auth-card-top{margin-bottom:27px;padding:0 4px 22px;gap:12px}.auth-page--login .auth-brand-name{font-size:16px}.auth-page--login .auth-card{border-radius:21px}.auth-page--login .auth-card-body{padding:30px 25px 26px}.auth-page--login .auth-heading{font-size:29px}.auth-page--login .auth-subtitle{font-size:13px;margin-bottom:28px}.auth-page--login .auth-social-button{font-size:12px}.auth-page--login .auth-footnote{font-size:12px}.auth-page--login .auth-input{height:50px}}
@media(prefers-reduced-motion:reduce){.auth-page--login *,.auth-page--login *:before,.auth-page--login *:after{animation:none!important;transition:none!important}}
