/* Shadow entry: frosted highlights, without animated or stacked blur filters. */
#login{--entry-ink:#f1f3fc;--entry-muted:#bdc8dd;--entry-line:#ffffff25;--entry-fill:#131c2bea;--entry-pane:#151e2e;--entry-field:#101827;--entry-accent:#b7a8ff}
html[data-theme="light"] #login{--entry-ink:#172238;--entry-muted:#46566e;--entry-line:#8492ac55;--entry-fill:#f4f6fbed;--entry-pane:#f4f6fb;--entry-field:#ffffff;--entry-accent:#6651ce}
html[data-theme][data-skin] #login{padding:32px 24px;gap:16px;isolation:isolate}
#login .entry-frame{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:min(1060px,100%);height:clamp(600px,calc(100svh - 160px),760px);overflow:hidden;border:1px solid var(--entry-line);border-radius:28px;background:linear-gradient(135deg,#ffffff0c,transparent 60%),var(--entry-fill);box-shadow:0 28px 70px #0005,inset 0 1px 0 #ffffff18;color:var(--entry-ink)}
html[data-theme][data-skin] #login .shadow-entry-intro{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;position:relative;min-width:0;min-height:0;max-width:none;padding:48px;text-align:left;color:var(--entry-ink);background:linear-gradient(145deg,#a692ff16,transparent 50%),linear-gradient(25deg,#5798ce12,transparent 70%),var(--entry-pane);z-index:1;transform:translate3d(0,0,0);transition:transform 320ms cubic-bezier(.4,0,.2,1);animation:none!important}
#login .shadow-entry-intro:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(125deg,#ffffff09 0 25%,transparent 25% 65%,#ffffff04 65%);clip-path:polygon(0 0,88% 0,100% 100%,0 100%);border-right:1px solid var(--entry-line)}
html[data-theme][data-skin] #login .shadow-entry-intro h2{font-size:clamp(30px,3.1vw,40px);line-height:1.18;letter-spacing:-.035em;text-shadow:none}
html[data-theme][data-skin] #login .shadow-entry-intro h2 em{color:var(--entry-accent)}
html[data-theme][data-skin] #login .shadow-entry-intro :is(.shadow-entry-kicker,.entry-subtitle){color:var(--entry-muted);text-shadow:none}
#login .shadow-entry-intro .shadow-entry-kicker{font-size:11px;line-height:1.8;letter-spacing:.14em}
#login .shadow-entry-intro>.entry-subtitle{margin:20px 0 0;font-size:16px;line-height:1.75;max-width:380px}
html[data-theme][data-skin] #login .login{display:block;position:relative;width:100%;height:100%;min-width:0;min-height:0;overflow-y:auto;scrollbar-gutter:stable;padding:28px;border:0;border-radius:0;background:linear-gradient(155deg,#ffffff09,transparent 45%);box-shadow:none;color:var(--entry-ink);-webkit-backdrop-filter:none!important;backdrop-filter:none!important;transform:translate3d(0,0,0);transition:transform 320ms cubic-bezier(.4,0,.2,1);animation:none!important}
/* Match the theme-scoped base rules so their zero transform cannot win. */
@media(min-width:781px){
 html[data-theme][data-skin] #login .entry-frame[data-entry-mode="owner"]>.shadow-entry-intro{transform:translate3d(100%,0,0)}
 html[data-theme][data-skin] #login .entry-frame[data-entry-mode="owner"]>.login{transform:translate3d(-100%,0,0)}
}
#login .entry-tools{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:22px}
#login .login .brand{flex:1;margin:0;padding:0;color:var(--entry-ink)}
#login .login .brand small{color:var(--entry-muted)}
#login .login .theme-toggle{position:static;min-width:44px;min-height:44px;color:var(--entry-ink);background:var(--entry-field);border-color:var(--entry-line)}
#login .login-lang{margin:0;color:var(--entry-ink)}
#login .login-lang select{font-size:14px;min-height:44px;border-color:var(--entry-line)}
#login .entry-service-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 24px;max-width:1060px}
#login .entry-service-links a{min-height:44px;display:inline-flex;align-items:center;font-size:14px;color:var(--entry-muted);text-decoration:none}
#login .entry-service-links a:hover{color:var(--entry-accent);text-decoration:underline}
#login .entry-account-help{margin-top:18px;color:var(--entry-muted)}
#login .entry-account-help summary{font-size:14px;min-height:44px;display:flex;align-items:center;cursor:pointer;gap:10px}
#login .entry-account-help summary:before{content:'+';color:var(--entry-accent)}
#login .entry-account-help[open] summary:before{content:'−'}
#login .login-heading h1{font-size:26px;color:var(--entry-ink)}
#login .login-heading :is(p,.login-overline){color:var(--entry-muted);font-size:15px;line-height:1.7}
#login .login-heading .login-overline{display:none}
#login .entry-methods{display:flex;gap:6px;padding:5px;margin:20px 0 8px;border:1px solid var(--entry-line);border-radius:14px;background:var(--entry-field)}
#login .entry-methods button{flex:1 1 auto;min-width:0;min-height:46px;padding:10px 8px;border:0;border-radius:10px;background:transparent;color:var(--entry-muted);font:inherit;font-size:15px;font-weight:650;white-space:nowrap;cursor:pointer}
#login .entry-methods button[aria-selected="true"]{color:var(--entry-ink);background:#9781ed24;box-shadow:inset 0 0 0 1px #b7a8ff35}
#login :is(.login-runtime,.login-account-choice){background:var(--entry-field);border-color:var(--entry-line);color:var(--entry-ink);box-shadow:none}
#login .login-account-choice:has(input:checked){border-color:var(--entry-accent);background:#9a84ec18}
#login .login-account-choice input{appearance:auto;width:18px;height:18px;flex:0 0 18px;accent-color:var(--entry-accent)}
#login .login-account-choice strong{font-size:16px;color:var(--entry-ink);overflow-wrap:anywhere}
#login .login-account-choice :is(small,.login-account-state){color:var(--entry-muted);font-size:13px}
#login :is(.account-picker-help,.login-footnote,.alt-note){color:var(--entry-muted);font-size:14px;line-height:1.7}
#login .alt-account-picker legend{font-size:16px;color:var(--entry-ink)}
#login .login-runtime span{font-size:14px;color:var(--entry-muted)}
#login .login-runtime small{font-size:10px;color:var(--entry-muted)}
#login :is(#token,#tgCode){width:100%;min-width:0;min-height:50px;padding:13px 15px;font:inherit;font-size:16px;color:var(--entry-ink);background:var(--entry-field);border:1px solid var(--entry-line);border-radius:12px}
#login label{font-size:15px;color:var(--entry-ink)}
#login input::placeholder{color:var(--entry-muted);opacity:1}
#login .primary{min-height:50px;font-size:16px;background:#b7a8ff;color:#17142a;border-radius:12px;box-shadow:none}
#login .alt-link{min-height:48px;padding:12px;font-size:15px;color:var(--entry-ink);border-color:var(--entry-line)}
#login .token-login{margin-top:24px;border-color:var(--entry-line)}
#login .token-login summary{font-size:16px;color:var(--entry-ink);min-height:44px;line-height:1.7;cursor:pointer}
#login .error{color:#ffb4bb;font-size:15px;line-height:1.6;overflow-wrap:anywhere}
html[data-theme="light"] #login .error{color:#9e1c3d}
#login :is(button,a,input,summary,select):focus-visible{outline:2px solid var(--entry-accent);outline-offset:3px}
#login [hidden]{display:none!important}
@media(max-width:780px){
 html[data-theme][data-skin] #login{padding:24px 16px;justify-content:flex-start}
 #login .entry-frame{grid-template-columns:minmax(0,1fr);height:auto;max-width:550px;border-radius:22px}
 html[data-theme][data-skin] #login .shadow-entry-intro{padding:28px;transform:none;transition:none;border-bottom:1px solid var(--entry-line)}
 html[data-theme][data-skin] #login .shadow-entry-intro h2{font-size:32px}
 #login .shadow-entry-intro>.entry-subtitle{font-size:15px;margin-top:14px}
 html[data-theme][data-skin] #login .login{padding:28px;height:auto;overflow:visible;scrollbar-gutter:auto;transform:none;transition:none}
 #login .entry-frame[data-entry-mode="owner"]>:is(.shadow-entry-intro,.login){transform:none}
 #login .login .theme-toggle{top:24px;right:24px}
}
@media(max-width:380px){html[data-theme][data-skin] #login{padding:16px 10px}html[data-theme][data-skin] #login :is(.shadow-entry-intro,.login){padding:22px 18px}#login .login .theme-toggle{top:18px;right:18px}#login .login-heading h1{font-size:24px}#login .login-account-choice{gap:8px;padding:12px}#login .login-account-state{max-width:64px;overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){#login .entry-frame>:is(.shadow-entry-intro,.login){transition:none!important}}
/* Code-entry reference: restrained glass cells and a short fan transition. */
#login .entry-code{position:relative;margin:14px 0 18px;isolation:isolate}
#login .entry-code #tgCode{position:absolute;inset:0 0 auto;height:62px;min-height:62px;z-index:2;margin:0;padding:0;border:0;background:transparent;color:transparent;caret-color:transparent;-webkit-text-fill-color:transparent;box-shadow:none;font-family:monospace;font-size:24px;letter-spacing:1em;cursor:text}
#login .entry-code #tgCode::placeholder{color:transparent;-webkit-text-fill-color:transparent}
#login .entry-code-cells{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;pointer-events:none;min-height:62px;padding:3px 0}
#login .entry-code-cell{display:flex;align-items:center;justify-content:center;min-width:0;height:56px;border:1px solid var(--entry-line);border-radius:11px;background:linear-gradient(145deg,#ffffff09,transparent),var(--entry-field);color:var(--entry-ink);font:600 25px/1 ui-monospace,monospace;box-shadow:inset 0 1px 0 #ffffff0b;transition:transform 220ms cubic-bezier(.2,.7,.3,1),border-color 160ms ease,background-color 160ms ease}
#login .entry-code-cell.is-filled{border-color:color-mix(in srgb,var(--entry-accent) 45%,var(--entry-line))}
#login .entry-code-cell.is-current{border-color:var(--entry-accent);box-shadow:inset 0 0 0 1px var(--entry-accent)}
#login .entry-code-cell.is-current:empty:after{content:'';width:2px;height:22px;background:var(--entry-accent)}
#login .entry-code[data-complete="true"][data-phase="checking"] .entry-code-cell{transform:translateY(-2px) rotate(calc(var(--tilt)*1deg));border-color:var(--entry-accent)}
#login .entry-code[data-phase="error"] .entry-code-cell{border-color:#df8b97}
#login .entry-code[data-phase="complete"] .entry-code-cell{border-color:#66c9b5}
#login .entry-code-state{min-height:24px;margin:12px 0 0;color:var(--entry-muted);font-size:14px;line-height:1.6}
#login .entry-code[data-phase="checking"] .entry-code-state{color:var(--entry-accent)}
@media(max-width:380px){#login .entry-code-cells{gap:5px}#login .entry-code-cell{height:54px;font-size:23px;border-radius:8px}}
@media(max-width:380px){#login .entry-methods button{font-size:14px}}
@media(prefers-reduced-motion:reduce){#login .entry-code-cell{transition:none!important;transform:none!important}}
html[data-motion="reduce"] #login .entry-code-cell{transition:none!important;transform:none!important}
