/* Single-column sign-in, aligned with the public site's soft actions. */
.login-screen:not([hidden]){display:flex;flex-direction:column;align-items:center;justify-content:center;grid-template-columns:none;position:relative;min-height:100vh;min-height:100dvh;padding:80px 24px;background:#08090b}
.login-screen .login-back{position:absolute;top:24px;left:clamp(20px,4vw,48px);display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 4px;color:#a0a6b4;font:13px/1.4 var(--sans, -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif);text-decoration:none;transition:color .16s}
.login-screen .login-back svg{width:17px;height:17px;flex:none}
.login-screen .login-back:hover{color:#d0cdff}
.login-screen .login-access{display:block;width:min(100%,360px);min-height:0;margin:auto;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.login-screen .login-form{width:100%;margin:0;padding:0;border:0;background:none;box-shadow:none;text-align:left}
.login-screen .login-logo{display:block;width:184px;height:auto;max-width:100%;margin:0 0 36px;mix-blend-mode:normal}
.login-screen .login-form h1{font:500 32px/1.15 var(--sans, -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif);letter-spacing:-.035em;color:#eef0f5;margin:0;text-transform:none}
.login-screen .login-form>p{margin:12px 0 32px;color:#a2a7b5;font:14px/1.5 var(--sans, -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif)}
.login-screen .login-form label{display:grid;gap:9px;margin:0 0 20px;color:#b5bac8;font:13px/1.4 var(--sans, -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif);letter-spacing:0;text-transform:none}
.login-screen .login-form input{display:block;width:100%;min-height:50px;margin:0;padding:14px 16px;border:1px solid #ffffff1f;border-radius:12px;background:#111216;color:#eef0f5;box-shadow:none;font:14px/1.4 var(--sans, -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif);letter-spacing:0;transition:border-color .16s,background-color .16s}
.login-screen .login-form input::placeholder{color:#777e8f;opacity:1}
.login-screen .login-form input:hover{border-color:#ffffff34}
.login-screen .login-form input:focus-visible{outline:2px solid #aaa5f3;outline-offset:3px;border-color:#aaa5f3;background:#14151c}
.login-screen .login-form input:-webkit-autofill,.login-screen .login-form input:-webkit-autofill:hover,.login-screen .login-form input:-webkit-autofill:focus{-webkit-text-fill-color:#eef0f5;caret-color:#eef0f5;box-shadow:0 0 0 1000px #111216 inset}
.login-screen .login-form .action-button{display:inline-flex;align-items:center;justify-content:center;gap:0;width:100%;min-height:50px;margin:8px 0 0;padding:14px 24px;border:0;border-radius:999px;background:#aaa5f3;color:#141228;box-shadow:none;font:500 14px/1.4 var(--sans, -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif);letter-spacing:0;text-transform:none;transition:background-color .16s,transform .16s}
.login-screen .login-form .action-button:before,.login-screen .login-form .action-button:after{display:none}
.login-screen .login-form .action-button:hover{background:#b9b4ff;box-shadow:none;transform:translateY(-1px)}
.login-screen .login-form .action-button:active{transform:translateY(0)}
.login-screen .login-form .action-button:disabled{opacity:.65;transform:none;cursor:wait}
.login-screen .login-back:focus-visible,.login-screen .login-form .action-button:focus-visible{outline:2px solid #aaa5f3;outline-offset:4px}
.login-screen .login-form .form-error{min-height:0;margin-top:16px;padding:12px 14px;border:1px solid #ee8f962e;border-radius:10px;background:#ee8f960a;color:#ffb3b7;font:13px/1.5 var(--sans, -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif)}
.login-screen .login-form .form-error:empty{display:none}
@media(max-width:600px){.login-screen:not([hidden]){padding:88px 24px 56px}.login-screen .login-back{left:20px;top:16px}.login-screen .login-logo{margin-bottom:30px}.login-screen .login-form h1{font-size:30px}.login-screen .login-form input{font-size:16px}.login-screen .login-form>p{margin-bottom:28px}}
@media(max-height:560px) and (min-width:601px){.login-screen:not([hidden]){padding-top:80px;padding-bottom:32px}}
@media(prefers-reduced-motion:reduce){.login-screen .login-back,.login-screen .login-form input,.login-screen .login-form .action-button{transition:none}.login-screen .login-form .action-button:hover,.login-screen .login-form .action-button:active{transform:none}}

.login-screen .login-form .login-a11y-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* Show an explicit wait state until the first dashboard has rendered. */
.studio-loading:not([hidden]){position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;gap:12px;background:#08090b;color:#b5bac8;font:14px/1.5 var(--sans,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif)}
.studio-loading>span{width:18px;height:18px;border:1.5px solid #aaa5f32e;border-top-color:#aaa5f3;border-radius:50%;animation:studio-loading-spin .8s linear infinite}
@keyframes studio-loading-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.studio-loading>span{animation:none}}
