.auth-page{background:#f7fafc;min-height:100vh}.auth-brand{max-width:1100px;margin:auto;padding:38px 32px;display:flex;gap:24px;justify-content:space-between;align-items:center}.auth-brand span{color:var(--muted);font-size:12px}.auth-card{width:calc(100% - 40px);max-width:480px;margin:36px auto 64px;padding:38px;background:white;border:1px solid var(--line);border-radius:16px}.auth-card h1{font-size:34px}.auth-form{display:grid;gap:22px;margin-top:28px}.auth-form label{display:grid;gap:9px;font-size:14px}.auth-form button{width:100%}#auth-status{font-size:14px;line-height:1.6;color:#9b3434;overflow-wrap:anywhere}.auth-fixtures{border-top:1px solid var(--line);margin-top:28px;padding-top:22px}.auth-fixtures summary{font-size:13px;cursor:pointer}.auth-fixtures button{display:block;width:100%;text-align:left;padding:10px 0;background:white;overflow-wrap:anywhere}.auth-check{display:flex!important;align-items:start;gap:12px!important;font-size:14px;line-height:1.6;margin:20px 0}.auth-check input{width:18px;min-width:18px;min-height:18px;margin-top:3px}.auth-check a{text-decoration:underline}.auth-check small{display:block;color:var(--muted)}#mfa-qr{background:white;padding:12px;width:max-content;max-width:100%;margin:20px auto}#mfa-qr img,#mfa-qr canvas{max-width:100%}#mfa-secret{font-size:13px}#recovery-codes{width:100%;border:1px solid var(--line);padding:16px;resize:vertical;font:14px/1.7 monospace;color:var(--ink)}.auth-notice{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:14px 24px;border-bottom:1px solid #cbdeed;background:#edf5fb;font-size:13px}.auth-notice p{margin:0;line-height:1.6}.auth-notice button{white-space:nowrap}.auth-dialog{width:min(560px,calc(100% - 24px));height:min(850px,calc(100% - 30px));max-height:95vh;padding:10px;border:1px solid var(--line);border-radius:14px;overflow:hidden}.auth-dialog::backdrop{background:#0b234a66}.auth-dialog iframe{width:100%;height:calc(100% - 45px);border:0}.auth-dialog>button{display:block;margin-left:auto;padding:10px;background:white}.auth-embedded .auth-brand,.auth-embedded #auth-home,.auth-embedded .auth-fixtures{display:none}.auth-embedded .auth-card{margin:0 auto;border:0;padding:24px;width:100%;background:transparent}.auth-signout{margin:8px;background:transparent;border:1px solid #cbdeed;border-radius:6px;padding:8px 12px;color:inherit}.auth-identity{font-size:12px;overflow-wrap:anywhere}.auth-forbidden{max-width:660px;margin:50px auto;padding:24px;line-height:1.7}@media(max-width:550px){.auth-brand{padding:26px 20px;align-items:start;flex-direction:column;gap:14px}.auth-card{margin-top:12px;padding:26px}.auth-card h1{font-size:30px}.auth-notice{padding:14px 20px}} 
.onboarding-links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:18px;margin-top:22px;font-size:13px}.compact{margin:0}.onboarding-card{max-width:540px}.onboarding-card .auth-form details>label{margin-top:18px}#onboarding-status{font-size:14px;line-height:1.7;color:#9b3434;overflow-wrap:anywhere}#onboarding-status.success{color:#215c77}.invitation-facts{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:24px;background:var(--pale);border-radius:10px;margin:26px 0}.invitation-facts dt{font-size:12px;color:var(--muted);margin-bottom:8px}.invitation-facts dd{margin:0;line-height:1.5;overflow-wrap:anywhere}.invitation-documents{padding:20px 0;border-block:1px solid var(--line);font-size:14px;line-height:1.8}.invitation-documents a{text-decoration:underline}.invitation-documents small{display:block;color:var(--muted)}.invitation-documents h2{font-size:18px}#invite-rules{white-space:pre-wrap}.local-mail{border-top:1px solid var(--line);margin-top:24px;padding-top:24px}.local-mail h2{font-size:19px;line-height:1.4;overflow-wrap:anywhere}.local-mail details{margin-top:20px;font-size:13px}.mail-body{white-space:pre-wrap;line-height:1.7;overflow-wrap:anywhere}.sample-invitations{border-top:1px solid var(--line);margin-top:16px;padding-top:12px}#register-form .auth-check{margin:0}@media(max-width:420px){.invitation-facts{grid-template-columns:1fr;padding:20px}}

/* Keep the access recovery action visible while the workspace is scrolled. */
.auth-access-notice[data-access-pending="true"]:not([hidden]){position:sticky;top:0;z-index:1000;box-shadow:0 3px 12px #0b3c7814;flex-wrap:wrap}
.auth-access-notice[data-access-pending="true"] p{flex:1 1 25rem;line-height:1.45}
.auth-access-notice[data-access-pending="true"] button{flex:0 0 auto;min-height:40px;padding:8px 14px}
@media(max-width:550px){.auth-access-notice[data-access-pending="true"]{gap:8px;padding:12px 16px}.auth-access-notice[data-access-pending="true"] p{flex-basis:100%}}
