/* Regular Web authentication; isolated from Quick and the landing page. */
.web-auth-header{max-width:1040px;margin:auto;padding:28px 24px}.web-auth-card{width:min(480px,calc(100% - 32px));margin:24px auto 64px;padding:32px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius)}.web-auth-card h1{font-size:clamp(2rem,7vw,3rem);margin-bottom:24px;overflow-wrap:anywhere}.web-auth-card p{margin:16px 0;overflow-wrap:anywhere}.web-auth-card form{display:grid;gap:12px;margin:24px 0}.web-auth-card label{font-weight:700}.web-auth-card input:not([type=hidden]){width:100%;min-height:48px;padding:12px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg);color:var(--color-text);font:inherit;font-size:16px}.web-auth-card input:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.web-auth-card button{border:0;cursor:pointer;min-height:48px;margin-top:12px}.web-auth-message{padding:14px;border-left:3px solid var(--color-accent);background:var(--color-bg)}.web-auth-link{display:inline-block;margin-top:16px;text-decoration:underline;text-underline-offset:4px}@media(max-width:430px){.web-auth-header{padding:20px 16px}.web-auth-card{padding:24px;margin-top:12px}}

/* Personal invite typography stays independent of the landing page headings. */
.web-invite-card h1{font-size:clamp(1.5rem,5vw,2rem);line-height:1.2;margin-bottom:24px}
.web-invite-card h2{font-size:clamp(1.35rem,4.5vw,1.75rem);line-height:1.35;letter-spacing:normal;margin:0 0 20px;overflow-wrap:anywhere}
.web-invite-card .web-invite-note{font-size:.9rem;line-height:1.55;opacity:.75}

.web-legal-links{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 20px;margin:0 auto 32px;padding:0 20px;font-size:.85rem}.web-legal-links a{text-decoration:underline;text-underline-offset:3px}
