.legal-account{padding:24px;margin-top:24px;border:1px solid var(--workspace-line,#e5eaf2);border-radius:18px;background:var(--workspace-surface,#fff);color:var(--workspace-ink,#172554)}
.legal-account h2{margin:0 0 12px;font-size:20px}.legal-account p{line-height:1.55}.legal-account details{margin:12px 0}.legal-account summary{cursor:pointer;font-weight:600}.legal-account-content{max-height:320px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.55;padding:16px;border:1px solid var(--workspace-line,#e5eaf2);border-radius:10px}.legal-account-check{display:flex;align-items:flex-start;gap:8px;margin:12px 0}.legal-account-check input{margin-top:5px}.legal-account-notice{margin:12px 0}.legal-account-notice[hidden]{display:none}
.legal-gate{width:min(620px,calc(100% - 32px));max-height:90dvh;overflow:auto;border:1px solid #e5eaf2;border-radius:18px;padding:24px;color:#172554;background:#fff;font:inherit}.legal-gate::backdrop{background:rgba(16,24,39,.65)}.legal-gate h2{font-size:24px;margin:0 0 12px}.legal-gate details{margin:12px 0}.legal-gate summary{cursor:pointer;font-weight:600}.legal-gate-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}.legal-gate-actions button{min-height:44px;padding:10px 20px;border:1px solid #315bdf;border-radius:999px;background:#fff;color:#315bdf;font:inherit;font-weight:600;cursor:pointer}.legal-gate-actions button[type=submit]{background:#315bdf;color:#fff}.legal-gate button:focus-visible,.legal-gate summary:focus-visible,.legal-gate input:focus-visible{outline:3px solid #82a1ff;outline-offset:2px}
.legal-intro{font-size:14px;line-height:1.5;margin:12px 0;color:inherit}.legal-intro a{color:inherit;text-decoration:underline;text-underline-offset:2px}.legal-intro a:focus-visible{outline:2px solid #315bdf;outline-offset:3px}

.legal-intro-details{font-size:13px;line-height:1.5;margin:-4px 0 12px;color:inherit}.legal-intro-details summary{cursor:pointer;text-decoration:underline;text-underline-offset:2px}.legal-intro-details summary:focus-visible{outline:2px solid #315bdf;outline-offset:3px}.legal-intro-details p{margin:8px 0}.legal-intro-details a{color:inherit;text-decoration:underline}

/* Legal confirmation follows the account dialog and form-action pattern. */
.legal-gate{box-sizing:border-box;width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;overflow:hidden;border:1px solid var(--workspace-line,#dce3f2);border-radius:24px 8px;background:var(--workspace-surface,#fff);color:var(--workspace-ink,#172554);font:15px/1.5 system-ui,-apple-system,sans-serif;box-shadow:0 24px 80px #17255433}
.legal-gate[open] form{display:flex;flex-direction:column;max-height:calc(100dvh - 34px);margin:0}
.legal-gate::backdrop{background:rgb(23 37 84 / .53)}
.legal-gate .legal-gate-header{display:block;flex:none;padding:26px 26px 0;margin:0;border:0;background:transparent;color:inherit}
.legal-gate .legal-gate-header h2{margin:0 0 8px;font-size:22px;line-height:1.25;letter-spacing:-.02em}
.legal-gate .legal-gate-header p{margin:0;color:var(--workspace-muted,#596c88);font-size:14px;line-height:1.5}
.legal-gate-body{min-height:0;overflow:auto;padding:20px 26px 24px}
.legal-gate .legal-gate-documents{border-top:1px solid var(--workspace-line,#dce3f2)}
.legal-gate .legal-gate-documents details{margin:0;border-bottom:1px solid var(--workspace-line,#dce3f2)}
.legal-gate .legal-gate-documents summary{padding:14px 2px;font-size:14px;line-height:1.4;font-weight:650;cursor:pointer}
.legal-gate .legal-account-content{max-height:240px;margin:0 0 14px;font-size:14px}
.legal-gate-checks{display:grid;gap:12px;margin-top:20px}
.legal-gate .legal-account-check,.legal-account .legal-account-check{display:flex;align-items:flex-start;justify-content:flex-start;gap:10px;width:auto;margin:0;color:inherit;font-size:14px;font-weight:500;line-height:1.45;text-align:left}
.legal-gate .legal-account-check input[type=checkbox],.legal-account .legal-account-check input[type=checkbox]{appearance:auto;-webkit-appearance:checkbox;flex:0 0 18px;display:block;width:18px;min-width:18px;max-width:18px;height:18px;min-height:18px;max-height:18px;margin:1px 0 0;padding:0;accent-color:var(--workspace-accent,#315bdf);box-shadow:none}
.legal-gate .legal-account-check span{flex:1;min-width:0}
.legal-gate .legal-gate-message{margin:12px 0 0;font-size:13px;color:var(--workspace-danger,#a12842)}.legal-gate .legal-gate-message:empty{display:none}
.legal-gate .legal-gate-actions.hm-form-actions{flex:none;gap:12px;padding:16px 26px 22px;border-top:1px solid var(--workspace-line,#dce3f2);background:var(--workspace-surface,#fff)}
.legal-gate .legal-gate-actions button{min-height:48px;font-size:14px;line-height:1.4}
.legal-gate .legal-gate-actions button[data-form-action=secondary]{border-color:var(--workspace-line,#dce3f2);background:var(--workspace-surface,#fff);color:var(--workspace-ink,#172554)}
.legal-gate .legal-gate-actions button[data-form-action=primary]{border-color:var(--workspace-accent,#315bdf);background:var(--workspace-accent,#315bdf);color:var(--workspace-on-accent,#fff)}
.legal-gate .legal-gate-actions button:disabled{opacity:.55;cursor:wait}
@media(max-width:650px){.legal-gate{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:20px 8px}.legal-gate[open] form{max-height:calc(100dvh - 26px)}.legal-gate .legal-gate-header{padding:22px 20px 0}.legal-gate .legal-gate-header h2{font-size:20px}.legal-gate-body{padding:18px 20px 22px}.legal-gate .legal-gate-actions.hm-form-actions{padding:16px 20px 20px}}

/* Keep document access available without a permanent full-size panel. */
.legal-account.card{box-sizing:border-box;padding:0;margin-top:24px;overflow:hidden;box-shadow:none}
.legal-account .legal-account-shell{margin:0}
.legal-account .legal-account-shell>summary{padding:18px 22px;color:inherit;font-size:15px;line-height:1.45;font-weight:650;cursor:pointer}
.legal-account .legal-account-shell>summary:focus-visible{outline:3px solid var(--workspace-accent,#315bdf);outline-offset:-4px}
.legal-account .legal-account-body{padding:0 22px 20px;border-top:1px solid var(--workspace-line,#e5eaf2)}
.legal-account .legal-account-body>p:first-child{margin-top:16px}
.legal-account .legal-account-body details{margin:14px 0}
.legal-account .legal-account-body summary{font-size:14px;line-height:1.4}
.legal-account .legal-account-body form{display:grid;gap:12px}
.legal-account .legal-account-body form>p{margin:0}
.legal-account .legal-account-body form>button{width:auto;justify-self:start}

.legal-update-notice:not([hidden]){display:flex;align-items:center;justify-content:space-between;gap:16px 24px;margin:20px 0;padding:16px 20px;border:1px solid var(--workspace-line,#cbd8fa);border-radius:12px;background:var(--workspace-surface,#eff3ff);color:var(--workspace-ink,#172554)}
.legal-update-notice strong{display:block;font-size:15px;line-height:1.4}.legal-update-notice p{margin:4px 0 0;font-size:14px;line-height:1.45;color:var(--workspace-muted,#465b79)}
.legal-update-notice .legal-update-action{flex:none;width:auto;min-height:44px;padding:10px 18px;border:1px solid var(--workspace-accent,#315bdf);border-radius:999px;background:var(--workspace-accent,#315bdf);color:var(--workspace-on-accent,#fff);font:inherit;font-weight:650;cursor:pointer}.legal-update-action:focus-visible{outline:3px solid #86a0f1;outline-offset:3px}.legal-update-action:disabled{opacity:.55;cursor:wait}.ca-legal-reminder-message:empty{display:none}
@media(max-width:650px){.legal-update-notice:not([hidden]){align-items:flex-start;flex-direction:column}.legal-update-notice .legal-update-action{width:auto}}

/* Pending legal decisions use the same warning palette as account alerts. */
.legal-update-notice:not([hidden]){background:var(--workspace-pending-bg,#fff2d8);border-color:color-mix(in srgb,var(--workspace-pending-ink,#876722) 35%,transparent);color:#533c11}
.legal-update-notice .legal-update-copy{display:flex;align-items:flex-start;gap:12px;min-width:0}
.legal-update-notice .legal-update-icon{display:inline-flex;flex:none;width:20px;height:20px;margin-top:1px;color:#876722}
.legal-update-notice .legal-update-icon:empty{display:none}.legal-update-notice .legal-update-icon svg{width:20px;height:20px}
.legal-update-notice .legal-update-copy p{color:#604c28}
:root[data-workspace-theme="dark"] .legal-update-notice:not([hidden]){color:#f1cf86}
:root[data-workspace-theme="dark"] .legal-update-notice .legal-update-copy p,:root[data-workspace-theme="dark"] .legal-update-notice .legal-update-icon{color:#f1cf86}
/* Masonry measures card boxes; dashboard cards must not add external margins. */
.account-settings .legal-account.card{margin:0}

.signup-consent{display:grid;gap:10px;margin:18px 0;color:#172554}
.signup-consent[hidden]{display:none}
.signup-consent label{display:flex!important;align-items:flex-start!important;gap:10px!important;margin:0!important;font-size:14px!important;font-weight:500!important;line-height:1.45!important;cursor:pointer}
.signup-consent input[type=checkbox]{appearance:auto!important;-webkit-appearance:checkbox!important;flex:0 0 18px!important;width:18px!important;height:18px!important;min-height:18px!important;max-height:18px!important;margin:2px 0 0!important;padding:0!important;accent-color:#315bdf}
.signup-consent a{color:#315bdf;text-decoration:underline;text-underline-offset:2px}
.signup-consent-status{margin:0;font-size:13px;color:#637590}.signup-consent-status:empty{display:none}
.social-signup-consent{text-align:left;margin:24px auto;max-width:420px}.social-signup-consent button{min-height:48px;border:0;border-radius:999px;background:#315bdf;color:#fff;font:inherit;font-weight:700;cursor:pointer}.social-signup-consent button:disabled{opacity:.5;cursor:not-allowed}.social-signup-consent>a{text-align:center;font-size:14px}

#signupConsent label{align-items:center!important;font-size:15px!important;line-height:1.45!important;gap:10px!important;min-height:28px}
#signupConsent input[type=checkbox]{appearance:none!important;-webkit-appearance:none!important;flex:0 0 20px!important;width:20px!important;height:20px!important;margin:0!important;border:1.5px solid #8190a7!important;border-radius:6px!important;background:#fff!important;cursor:pointer}
#signupConsent input[type=checkbox]:checked{border-color:#315bdf!important;background:#315bdf url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m4 10 4 4 8-8' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat!important}
#signupConsent input[type=checkbox]:focus-visible{outline:3px solid #9bb2ff;outline-offset:2px}
#signupConsent input[type=checkbox][aria-invalid=true]{border-color:#b42e46!important}

.ca-auth .signup-consent .signup-privacy{margin:0 0 4px;color:#637590;font-size:14px;line-height:1.5}

.social-access .social-privacy{grid-column:1/-1;margin:0 0 4px;color:#637590;font-size:13px;line-height:1.5;text-align:center}.social-access .social-privacy a{color:#315bdf;text-decoration:underline;text-underline-offset:2px}.ca-auth .ca-field-error{display:block;color:#aa293b;font-size:13px;line-height:1.4}.ca-auth input[aria-invalid="true"]{border-color:#aa293b}

@media(prefers-reduced-motion:no-preference){.social-access .social-privacy{animation:privacy-notice-enter 500ms cubic-bezier(.2,0,0,1) 110ms both}@keyframes privacy-notice-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}

.ca-auth .ca-existing{margin:20px 0 0;padding:18px;border:1px solid #dce3f2;border-radius:14px;background:#f3f6fc;color:#192450}.ca-auth .ca-existing[hidden]{display:none}.ca-auth .ca-existing strong{display:block;font-size:16px;line-height:1.4}.ca-auth .ca-existing p{margin:6px 0 14px;color:#536783;font-size:14px;line-height:1.5}.ca-auth .ca-existing .ca-button{min-height:44px}.ca-auth .hm-form-actions[hidden]{display:none}

.ca-existing-dialog{width:min(480px,calc(100vw - 32px));margin:auto}.ca-existing-dialog .ca-dialog-close{display:grid;place-items:center;padding:0}.ca-existing-dialog .ca-dialog-body p{margin:0;color:#536783;line-height:1.55}@media(max-width:650px){.ca-existing-dialog{width:calc(100vw - 24px)}}

.ca-existing-dialog>header{border:0;background:transparent}.ca-existing-dialog .ca-dialog-body{padding-top:12px}.ca-existing-dialog>footer.hm-form-actions>[data-form-action="secondary"]{max-inline-size:40%;white-space:nowrap}

.ca-existing-dialog .ca-dialog-body .ca-existing-recovery{margin:14px 0 0;font-size:14px}.ca-existing-recovery a{color:#315bdf;text-decoration:underline;text-underline-offset:3px}
