/* Entry screen uses the existing support-form fields, theme and accent tokens. */
html.test-login-pending body{overflow:hidden;}
html.test-login-pending body>:not(#testLoginScreen):not(script):not(audio):not(svg){visibility:hidden;pointer-events:none;}
#testLoginScreen{position:fixed;inset:0;bottom:auto;top:var(--test-login-top,0px);height:var(--test-login-height,100dvh);z-index:1000;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;padding:max(40px,env(safe-area-inset-top,0px)) max(24px,env(safe-area-inset-right,0px)) max(40px,env(safe-area-inset-bottom,0px)) max(24px,env(safe-area-inset-left,0px));background:radial-gradient(ellipse at 50% 20%,color-mix(in srgb,var(--accent,#00b6a1) 8%,transparent),transparent 65%),var(--bg);color:var(--ink);}
#testLoginScreen[hidden]{display:none!important;}
.test-login-content{width:100%;max-width:420px;margin:auto;flex:none;}
.test-login-brand{display:flex;flex-direction:column;align-items:center;gap:15px;--logo-accent:color-mix(in srgb,var(--accent,#00b6a1) 82%,#000);animation:test-login-logo .8s cubic-bezier(.2,.7,.2,1) both;}
.test-login-brand .logo-symbol-svg{display:block;width:140px;height:126px;overflow:visible;}
.test-login-brand .logo-wordmark-svg{display:block;width:230px;height:52px;overflow:visible;}
.test-login-brand [fill="var(--accent)"]{fill:var(--logo-accent);}
#testLoginForm{max-width:none;margin-top:36px;animation:test-login-form .65s .16s cubic-bezier(.2,.7,.2,1) both;}
#testLoginForm label{color:var(--ink);}
#testLoginForm input{min-height:48px;}
#testLoginForm input:focus-visible{outline:2px solid var(--accent);outline-offset:3px;}
.test-login-password{position:relative;}
#testLoginPassword{padding-right:72px;}
#testLoginReveal{position:absolute;right:7px;top:7px;bottom:7px;min-width:54px;border:0;border-radius:8px;background:transparent;color:var(--muted);font:600 12px Nunito,system-ui,sans-serif;}
#testLoginReveal:hover{color:var(--accent);}
#testLoginForm .primary{min-height:48px;align-self:stretch;color:#fff;margin-top:16px;}
#testLoginStatus{min-height:2.8em;margin:5px 0 0;color:var(--ink);font-size:13px;line-height:1.4;}
#testLoginForm input[aria-invalid=true]{border-color:var(--accent);}
.test-login-heading{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.test-sign-out{margin-top:24px;padding:12px 22px;min-height:44px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font:600 14px Nunito,system-ui,sans-serif;}
@keyframes test-login-logo{from{opacity:0;transform:translateY(18px) scale(.96);}to{opacity:1;transform:translateY(0) scale(1);}}
@keyframes test-login-form{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}
@media(max-width:600px){
 #testLoginScreen{padding-top:max(28px,env(safe-area-inset-top,0px));padding-bottom:max(24px,env(safe-area-inset-bottom,0px));}
 #testLoginForm{margin-top:30px;}
 .test-login-brand{gap:12px;}
 .test-login-brand .logo-symbol-svg{width:112px;height:101px;}
 .test-login-brand .logo-wordmark-svg{width:200px;height:45px;}
}
@media(prefers-reduced-motion:reduce){.test-login-brand,#testLoginForm{animation:none;}}

main[data-test-entry]:focus{outline:none;}
@media(max-width:1050px){#testLoginScreen{scrollbar-width:none;}#testLoginScreen::-webkit-scrollbar{display:none;}}
