/* Sign-in only: the workspace layout and brand remain unchanged. */
.login{overflow-y:auto;overscroll-behavior:contain;align-items:start;padding:32px 16px;box-sizing:border-box}
.login-inner{width:min(100%,440px);margin:auto;box-sizing:border-box;min-height:0}
.login-card{padding:32px;text-align:left}
.login-brand{margin-bottom:28px}
.login-heading{font-size:23px;line-height:1.4;letter-spacing:-.03em;margin:0 0 8px;color:var(--ink)}
.login-lead{font-size:14px;line-height:1.75;color:var(--sub);margin:0 0 24px}
#login .btn,#login summary,#login input{min-height:48px;box-sizing:border-box}
#login .google-btn{width:100%;border:1px solid #d7d7df;border-radius:12px;box-shadow:0 2px 5px #16162006;font-size:15px;font-weight:650;background:#fff;color:#23232b;justify-content:center;gap:12px;text-decoration:none}
#login .google-btn:hover{border-color:#f5709c;background:#fff8fb}
#login .google-btn[aria-disabled="true"]{background:#f8f8fa;color:#666674;cursor:progress}
#login .google-btn .google-g{width:21px;height:21px;flex:0 0 21px;stroke:none;fill:none}
#login button:active,#login .google-btn:active{transform:translateY(1px)}
#login :is(button,a,summary,input):focus-visible{outline:3px solid #9e3458;outline-offset:3px}
#login :is(button,a,summary){-webkit-tap-highlight-color:transparent}
#login button:disabled{opacity:.65;cursor:progress}
.login-feedback{background:#f5f8f6;border:1px solid #dce9e1;border-radius:10px;padding:12px 14px;margin:0 0 18px;font-size:13px;line-height:1.65;overflow-wrap:anywhere}
.login-feedback[data-kind="error"]{background:#fff6f8;border-color:#f0ced9;color:#8b2447}
.login-feedback p{margin:0}.login-feedback p:empty{display:none}
.login-feedback .btn{margin-top:10px;background:white}
#login [hidden]{display:none!important}
#individual-login .login-method{border-top:1px solid var(--line,#e8e8ec);margin-top:18px}
#individual-login .login-method summary{font-size:14px;color:#4c4c58;font-weight:600;display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;padding:10px 2px;gap:12px}
#individual-login .login-method summary::-webkit-details-marker{display:none}
#individual-login .login-method summary::after{content:'＋';font-size:20px;font-weight:400;color:#777785}
#individual-login .login-method[open] summary::after{content:'−'}
#individual-login .login-method form{padding:6px 0 2px}
#individual-login .login-owner{margin-top:8px}
#individual-login .login-owner summary{font-size:12px;font-weight:500;color:#686876}
#individual-login-note,.login-owner-note{font-size:12px;line-height:1.75;color:var(--sub);margin:0 0 12px}
#login-form{display:grid;gap:12px}
#login .login-password-field{position:relative;display:block}
#login .login-password-field input{padding-right:68px}
#login .login-password-toggle{position:absolute;inset:0 0 0 auto;min-width:60px;min-height:48px;padding:0 12px;border:0;background:transparent;border-radius:8px;color:#666674;font:inherit;font-size:12px;cursor:pointer}
#login .login-password-toggle:hover{color:#8b2447;background:#f5709c0c}
#login .login-err,#login [role="alert"]{font-size:13px;line-height:1.65;color:#92274c;margin:0;overflow-wrap:anywhere}
#login .login-err:empty,#login form>[role="alert"]:empty{display:none}
.login-native-cancel{display:flex;justify-content:center;margin-top:8px;font-size:13px}
.login-inner>.login-tagline{font-size:11px;text-align:center;margin-top:20px;color:#878791;letter-spacing:.04em}
.login-inner>p:has(.bloom-install-link){text-align:center;margin-top:18px}
@media(max-width:480px){.login{padding:20px 14px}.login-inner{padding:0}.login-card{padding:26px 22px}.login-heading{font-size:22px}}
@media(max-height:640px){.login{padding:18px 14px}.login-card{padding:24px}.login-brand{margin-bottom:18px}.login-lead{margin-bottom:18px}}
@media(prefers-reduced-motion:reduce){#login *,#login *::before,#login *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
