/* Studio sign-in only. The authenticated workspace keeps its existing layout. */
.login{grid-template-columns:minmax(420px,1fr) minmax(0,1fr);background:#fff}
.login-main{max-width:640px;min-height:100svh;padding:40px clamp(32px,5vw,72px);margin:0 auto}
.login-main .sidebar-brand{height:36px;min-height:36px;margin:0}
.login-main .brand{display:flex;align-items:center;gap:12px;margin:0;padding:0}
.login-main .brand .wordmark{width:112px;height:auto;display:block}
.login-main .brand>span{margin:0;padding:0;align-self:center;font-size:22px;line-height:1;font-weight:500;letter-spacing:-.6px;color:#252525;transform:translateY(2px)}
.studio-workspace .login #content{min-height:0;width:100%;max-width:390px;margin:0;padding:clamp(48px,9vh,100px) 0 40px}
.login-copy{margin:0;padding:clamp(48px,9vh,100px) 0 40px;flex:1;max-width:390px;outline:none}
.login-copy h1{font-size:clamp(30px,3vw,40px);line-height:1.13;letter-spacing:-1.5px;font-weight:600}
.login-copy>p{margin:20px 0 28px;font-size:14px;line-height:1.65;color:#707070;max-width:340px}
.login-auth{width:100%;max-width:350px}
.login-methods{display:grid;gap:10px}
.login-auth .button{width:100%;min-height:44px;border-radius:14px;padding:10px 16px;font-size:13px;font-weight:500;line-height:22px;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:none}
.login-auth .button.primary{background:#111;color:#fff;border:0}
.login-auth .button.primary:hover{background:#292929}
.login-auth .button.login-provider{position:relative;background:#f4f4f4;border:0;color:#202020}
.login-auth .button.login-provider:hover{background:#ebebeb}
.login-provider-symbol{position:absolute;left:17px;display:inline-grid;place-items:center;width:20px;height:20px;line-height:1;font-size:18px;font-weight:600}
.login-auth button:disabled{opacity:.45;cursor:wait}
.login-panel{display:grid;grid-template-rows:0fr;opacity:0;transform:translateY(6px);transition:grid-template-rows .28s cubic-bezier(.22,.68,.1,1),opacity .2s,transform .28s}
.login-panel.is-open{grid-template-rows:1fr;opacity:1;transform:none}
.login-panel-inner{min-height:0;overflow:hidden}
.login-form{display:grid;gap:16px;padding-top:4px}
.login-field{display:grid;gap:8px;font-size:12px;font-weight:500;line-height:18px;color:#4a4a4a}
.studio-workspace .login #content .login-field input{width:100%;height:46px;padding:12px 14px;border-radius:13px;border:1px solid transparent;outline:0;background:#f3f3f3;box-shadow:inset 0 1px 2px #00000003;color:#181818;font-family:inherit;font-size:14px;font-weight:400;transition:background .15s,box-shadow .15s,border-color .15s}
.studio-workspace .login #content .login-field input:hover{background:#ededed}
.studio-workspace .login #content .login-field input:focus{background:#fff;border-color:#d0d0d0;box-shadow:0 0 0 3px #00000006}
.studio-workspace .login #content .login-field input[name=code]{font-variant-numeric:tabular-nums;letter-spacing:5px;font-size:19px}
.login-auth .login-back,.login-auth .login-forgot,.login-auth .login-register,.login-auth .login-resend{appearance:none;display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;padding:0;color:#737373;font-family:inherit;font-size:12px;line-height:20px;cursor:pointer;box-shadow:none}
.login-auth .login-back{margin:15px 0 20px}
.login-auth .login-back .icon{width:14px;height:14px}
.login-auth .login-forgot,.login-auth .login-resend{justify-self:center;padding:3px}
.login-auth .login-back:hover,.login-auth .login-forgot:hover{color:#111}
.login-auth .login-stage-title{font-size:18px;line-height:24px;letter-spacing:-.4px;font-weight:500;margin:0 0 20px}
.login-auth .login-stage-title:empty{display:none}
.login-copy .login-feedback{font-size:12px;line-height:1.6;margin:12px 0 0;min-height:0;color:#606060}
.login-copy .login-feedback:empty{margin:0}
.login-copy .login-feedback.is-error{color:#b53636}
.login-auth [hidden]{display:none!important}
.login-footer{margin-top:auto;flex-wrap:wrap;gap:12px 22px;color:#858585}
.login-art{position:sticky;top:0;height:100svh;isolation:isolate;align-items:center;padding:40px clamp(32px,6vw,80px);background:#121212;--ambient-rgb:220,220,220;color:#f9f9f9}
.login-art::before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse at calc(50% + var(--glow-offset-x,0px)) calc(32% + var(--glow-offset-y,0px)),rgba(var(--ambient-rgb),.27),transparent 62%),radial-gradient(ellipse at 20% 85%,rgba(var(--ambient-rgb),.065),transparent 60%)}
.login-art::after{content:'';position:absolute;inset:0;z-index:3;pointer-events:none;background:url('/studio/assets/glow-dither.png') repeat;background-size:256px 256px;opacity:.14;mix-blend-mode:overlay}
.login-ambient,.login-grid{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}
.login-ambient{opacity:0}
.login-art.has-smooth-glow .login-ambient{opacity:1}
.login-art.has-smooth-glow::before,.login-art.has-smooth-glow::after,.login-art.has-smooth-glow #ambientGlow{display:none}
.login-grid{z-index:1}
.login-art-inner{position:relative;z-index:2;max-width:400px;pointer-events:none}
.login-art-mark{width:min(360px,100%);aspect-ratio:1;margin:0 auto 30px}
.login-art .brand-loop{display:block;position:relative;isolation:isolate;overflow:hidden;width:100%;height:100%;aspect-ratio:1;mix-blend-mode:lighten;mask-image:radial-gradient(circle closest-side,#000 74%,transparent 100%);pointer-events:none}
.login-art #skin,.login-art #stage,.login-art #grade{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none}
.login-art #skin{visibility:hidden}
.login-art #grade{opacity:.22;background:radial-gradient(120% 90% at 50% 50%,transparent 55%,rgba(0,0,0,.35) 100%),url('/studio/assets/chameleon-grain.svg')}
.login-art .login-emblem{width:100%;height:100%;margin:0;filter:brightness(0) invert(1);opacity:1}
.login-art h2{font-size:clamp(28px,3vw,38px);line-height:1.16;font-weight:500;letter-spacing:-1.4px;color:#f9f9f9;margin:0 0 18px}
.login-art p{font-size:13px;line-height:1.75;color:#ffffff85}
@media(max-width:980px){.login-main{padding-inline:36px}.login-art{padding-inline:36px}.login-art-mark{margin-bottom:22px}.login-copy{padding-top:60px}}
@media(max-width:800px){.login{grid-template-columns:1fr}.login-main{padding:28px;max-width:480px;width:100%}.login-art{display:none}.studio-workspace .login #content{padding-block:54px 40px}.login-main .brand .wordmark{width:102px}.login-main .brand>span{font-size:20px}}
@media(prefers-reduced-motion:reduce){.login-panel{transition:none}}
@media(forced-colors:active){.login-art::before,.login-art::after,.login-ambient,.login-grid{display:none}.login-art{background:Canvas;color:CanvasText}.login-art h2,.login-art p{color:CanvasText}}

.login-auth .login-register{display:flex;margin:20px auto 0;justify-content:center;min-height:28px}

.login-auth .login-cancel{display:flex;margin:14px auto 0;padding:4px 10px;border:0;background:transparent;color:#737373;font:inherit;font-size:12px;cursor:pointer}
.login-auth .login-cancel:hover{color:#111}
