.login-layout{justify-content:center;align-items:center;min-height:100vh;padding:2rem 1rem;background:var(--color-muted-surface)}.login-card,.login-layout{display:flex;box-sizing:border-box}.login-card{flex-direction:column;width:100%;max-width:30rem;padding:2.5rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.login-head{text-align:center;margin-bottom:2rem}.login-logo{display:block;height:3rem;width:auto;margin:0 auto}.login-logo-sub{font-weight:700;font-size:var(--text-h3);color:var(--color-ink);margin:.25rem 0 0}.login-title{font-size:var(--text-display);font-weight:700;margin:1.5rem 0 .75rem}.login-subtext{color:var(--color-text-secondary);margin:0}.login-form{gap:.75rem}.login-field,.login-form{display:flex;flex-direction:column}.login-field{gap:.5rem;font-size:var(--text-label);font-weight:600;color:var(--color-ink)}.login-input{position:relative;display:flex;align-items:center}.login-input>svg{position:absolute;left:.9rem;color:var(--color-text-secondary);pointer-events:none}.login-input input{flex:1;width:100%;padding:.85rem 1rem .85rem 2.75rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);font:inherit;font-weight:400;box-sizing:border-box}.login-input input::-moz-placeholder{color:var(--color-text-subtle)}.login-input input::placeholder{color:var(--color-text-subtle)}.login-input input:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.login-password-wrap input{padding-right:2.75rem}.login-password-toggle{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--color-text-secondary);padding:.5rem;cursor:pointer}.login-password-toggle:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px;border-radius:var(--radius-sm)}.login-forgot{align-self:flex-start;font-size:var(--text-label);font-weight:600;color:var(--color-primary);text-decoration:none;margin:.25rem 0 .5rem}.login-forgot:hover{color:var(--color-primary-hover)}.login-forgot:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.login-submit{justify-content:center;padding:.85rem;font-size:var(--text-body);font-weight:600}.login-footer{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:2rem;font-size:var(--text-label)}.login-footer,.login-footer a{color:var(--color-text-secondary)}.login-footer a{text-decoration:none}.login-footer a:hover{color:var(--color-ink)}