.login-panel input{flex:1 1;min-width:180px;background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--fluid-radius-md);color:var(--text);padding:var(--fluid-field-pad-y) var(--fluid-field-pad-x);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.login-panel input:focus{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.login-panel label{display:grid;grid-gap:6px;gap:6px;font-size:.88rem;font-weight:600;color:var(--muted)}body:has(.login-page),html:has(.login-page){height:100%;max-height:100dvh;overflow:hidden}.login-page{height:100dvh;max-height:100dvh;width:100%;display:grid;place-items:center;padding:clamp(12px,2vh,24px) 16px;box-sizing:border-box;overflow:hidden}.login-shell{width:min(920px,100%);display:grid;grid-template-columns:1.05fr .95fr;grid-gap:0;gap:0;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:color-mix(in srgb,var(--bg-elevated) 92%,transparent);box-shadow:var(--shadow);animation:rise-in .55s var(--ease) both;max-height:calc(100dvh - 2 * clamp(12px, 2vh, 24px))}.login-shell-compact{width:min(880px,100%)}.login-aside{padding:clamp(20px,3.5vh,36px) clamp(20px,3vw,32px);background:linear-gradient(160deg,color-mix(in srgb,var(--accent-soft) 80%,transparent),transparent 70%),var(--bg-soft);display:flex;flex-direction:column;justify-content:center;gap:clamp(8px,1.2vh,12px);min-height:0;box-sizing:border-box}.login-aside h2{margin:0;font-family:var(--font-display);font-size:clamp(1.45rem,2.6vw,2.15rem);letter-spacing:-.03em;line-height:1.15}.login-aside p{margin:0;color:var(--muted);max-width:34ch;font-size:clamp(.9rem,1.5vh,1rem);line-height:1.45}.login-panel{padding:clamp(16px,3vh,32px) clamp(18px,3vw,32px);display:grid;align-content:center;grid-gap:6px;gap:6px;overflow:hidden;min-height:0;box-sizing:border-box}.login-panel .cf-turnstile,.login-panel .login-captcha,.login-panel [data-turnstile]{min-height:65px;display:flex;align-items:center;justify-content:flex-start}.login-brand{margin:0 0 6px;line-height:0}.login-brand-logo{display:block;height:clamp(32px,4.5vh,40px);width:auto;max-width:min(200px,100%);object-fit:contain;object-position:left center}.login-panel h1{margin:0 0 4px;font-family:var(--font-display);font-size:clamp(1.25rem,2.4vh,1.45rem);letter-spacing:-.02em}.login-panel .muted{margin:0;font-size:.92rem;line-height:1.4}.login-panel .stack{margin-top:10px;gap:10px}.login-panel .stack .field-label,.login-panel .stack label{gap:4px}.login-forgot-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:6px;margin:2px 0 0;padding:0;border:0;background:transparent;color:var(--muted);font:inherit;font-size:.86rem;font-weight:600;text-decoration:none;cursor:pointer;width:-moz-fit-content;width:fit-content;transition:color .15s ease}.login-forgot-link:hover{color:var(--accent-strong,var(--accent))}.login-forgot-link svg{flex-shrink:0}.mfa-setup-page .login-shell{align-items:stretch}.mfa-setup-aside{justify-content:center}.mfa-setup-panel{align-content:start}.mfa-qr-wrap{display:flex;justify-content:center;align-items:center;margin:8px 0 2px;padding:clamp(10px,1.8vh,16px);border-radius:16px;background:color-mix(in srgb,var(--bg-soft) 88%,transparent);border:1px solid var(--line)}.mfa-qr{display:block;width:min(200px,42vw);height:auto;border-radius:8px;background:#fff}.mfa-secret-box{display:grid;grid-gap:6px;gap:6px;margin:6px 0 2px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:color-mix(in srgb,var(--bg-soft) 70%,transparent)}.mfa-secret-label{font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.mfa-secret-value{display:block;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88rem;line-height:1.4;word-break:break-all;color:var(--text)}.mfa-secret-copy{justify-self:start;padding:4px 10px;font-size:.85rem}.mfa-recovery-shell{width:min(900px,100%)}.mfa-recovery-card{display:grid;grid-gap:12px;gap:12px;margin:10px 0 4px;padding:14px;border-radius:16px;border:1px solid var(--line);background:color-mix(in srgb,var(--bg-soft) 72%,transparent)}.mfa-recovery-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.mfa-recovery-list code{display:block;padding:10px 12px;border-radius:10px;border:1px solid var(--line);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9rem;letter-spacing:.02em;text-align:center;background:color-mix(in srgb,var(--bg-elevated) 88%,transparent)}.mfa-recovery-ack{display:flex;align-items:flex-start;gap:.65rem;margin:.75rem 0 0;font-size:.92rem;line-height:1.35;cursor:pointer}.mfa-recovery-ack input{margin-top:.2rem;flex-shrink:0}.mfa-recovery-copy{justify-self:start}.settings-mfa-recovery{margin-top:12px}@media (max-height:760px){.login-aside{padding:clamp(14px,2.4vh,24px) clamp(16px,2.5vw,24px);gap:8px}.login-aside h2{font-size:clamp(1.25rem,2.2vw,1.7rem)}.login-aside p{font-size:.88rem;line-height:1.35}.login-panel{padding:clamp(12px,2vh,22px) clamp(16px,2.5vw,24px);gap:4px}.login-panel .stack{margin-top:8px;gap:8px}.mfa-qr{width:min(160px,36vw)}}@media (max-width:640px){.mfa-recovery-list{grid-template-columns:1fr}}@media (max-width:860px){.login-page{overflow:hidden;align-content:center}.login-shell{grid-template-columns:1fr;max-height:calc(100dvh - 2 * clamp(12px, 2vh, 24px));overflow:hidden}.login-aside{min-height:auto;padding:18px 18px 14px}.login-aside h2{font-size:clamp(1.25rem,4.5vw,1.6rem)}.login-aside p{font-size:.88rem}.login-panel{align-content:start;padding:14px 18px 16px;overflow:hidden}}