*{box-sizing:border-box}body{margin:0;background:#f4f6ef;color:#203c2e;font:16px/1.5 -apple-system,BlinkMacSystemFont,sans-serif}main{max-width:420px;margin:12vh auto;padding:24px max(24px,env(safe-area-inset-left))}h1{font-size:30px}label{display:block;margin:20px 0}input,button{width:100%;font:inherit;min-height:48px;border-radius:8px;padding:12px}input{display:block;margin-top:8px;border:1px solid #cbd7c8;background:white}button{border:0;background:#357258;color:white;font-weight:600}button:disabled{opacity:.6}#login-message{color:#8e4535}

/* Unified field design, matching the message composer. */
:root{--field-radius:14px;--field-border:#d3dfd5;--field-focus:#558b6a;--field-ring:#dcecdf}
html body :is(textarea,select,input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="hidden"])):not(.clipboard-buffer){
 border:1px solid var(--field-border);border-radius:var(--field-radius)!important;
 background-color:#fff;color:#233e32;padding:11px 14px;min-height:48px;
 min-width:0;max-width:100%;font-family:inherit;font-size:16px;line-height:1.5;box-sizing:border-box;
}
html body :is(textarea,select,input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="hidden"])):not(.clipboard-buffer):focus{
 border-color:var(--field-focus);outline:2px solid var(--field-ring);outline-offset:1px;
 box-shadow:inset 0 0 0 1px var(--field-focus);
}
html body :is(textarea,input)::placeholder{color:#7c8d80;opacity:1}
html body select{padding-right:30px}
input[type="file"]::file-selector-button{border:1px solid var(--field-border);border-radius:10px;background:#eaf2eb;color:#305c40;padding:7px 10px;margin-right:10px;font:inherit}
@media(max-width:800px){main{margin:0 auto;padding-top:max(24px,env(safe-area-inset-top))}body:has(input:focus)::after{content:"";display:block;height:50dvh}input{scroll-margin-block:24px}}
[hidden]{display:none!important}#passkey-login,#mfa-back{margin-top:14px;background:#edf4e8;color:#264e35;border:1px solid #cbdbc6}#passkey-help{font-size:13px;color:#667866;line-height:1.5}button:disabled{opacity:.6;cursor:not-allowed}#login-message,#mfa-message{color:#a2352c;line-height:1.5}

/* Welcome back / Face ID unlock */
#welcome-back{text-align:center;padding-top:4vh}
.face-mark{width:84px;height:84px;margin:0 auto 18px;border-radius:26px;background:#e3eee0 center/46px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f6b45' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M4 8V6a2 2 0 0 1 2-2h2M16 4h2a2 2 0 0 1 2 2v2M20 16v2a2 2 0 0 1-2 2h-2M8 20H6a2 2 0 0 1-2-2v-2'/%3E%3Cpath d='M9 9v1.5M15 9v1.5M12 9v4h-1M9.5 15.5a3.5 3.5 0 0 0 5 0'/%3E%3C/svg%3E")}
#welcome-back h1{font-size:28px;margin:0 0 6px}
#welcome-note{color:#5c6f60;margin:0 0 26px}
#unlock-passkey{min-height:54px;border-radius:14px;font-size:17px}
#unlock-message{color:#a2352c;min-height:1.5em;margin:10px 0 4px}
.link-button{display:block;width:auto;min-height:44px;margin:4px auto 0;background:none!important;color:#2f6b45!important;border:0!important;font-weight:600;text-decoration:underline;text-underline-offset:3px;padding:8px 12px}
#welcome-back~#team-login{margin-top:6px}
.link-button[hidden],#welcome-back [hidden]{display:none!important}
#unlock-message:empty{min-height:0;margin:6px 0 0}
