/* saas-legal-consent: /legal/terms and /legal/privacy. Same tokens and header as the sign-in pages (onboarding.css). */
body.legal-page{margin:0;background:var(--color-canvas);color:var(--color-text);font-family:var(--font-sans);}
.legal-top{display:flex;align-items:center;justify-content:space-between;height:72px;padding:0 44px;background:var(--color-surface);border-bottom:1px solid var(--color-border-light);}
.legal-brand{display:inline-flex;align-items:center;gap:10px;color:var(--color-text);font-size:20px;font-weight:650;text-decoration:none;}
.legal-brand:hover{color:var(--color-text);text-decoration:none;}
.legal-mark{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:7px;background:var(--color-text);color:var(--color-surface);font-size:15px;font-weight:700;}
.legal-nav{display:flex;gap:20px;font-size:14px;}
.legal-nav a{color:var(--color-text-secondary);text-decoration:none;}
.legal-nav a[aria-current=page]{color:var(--color-text);font-weight:600;}
.legal-main{display:flex;justify-content:center;padding:48px 20px 64px;}
.legal-card{width:100%;max-width:820px;box-sizing:border-box;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-card);padding:40px 48px;font-size:14px;line-height:24px;}
.legal-kicker{display:inline-block;margin:0 0 12px;padding:2px 8px;border-radius:6px;background:var(--color-warning-soft);color:var(--color-warning);font-size:12px;font-weight:500;}
.legal-card h1{margin:0 0 8px;font-size:28px;line-height:38px;font-weight:700;}
.legal-meta{display:flex;flex-wrap:wrap;gap:6px 20px;margin:0 0 24px;font-size:13px;color:var(--color-text-secondary);}
.legal-toc{margin:0 0 32px;padding:16px 20px;border-radius:8px;background:var(--color-surface-muted);}
.legal-toc strong{display:block;margin-bottom:6px;font-size:13px;}
.legal-toc ol{margin:0;padding-left:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:4px 16px;}
.legal-toc a,.legal-card a{color:var(--color-link,var(--brand));}
.legal-card section{scroll-margin-top:16px;}
.legal-card h2{margin:32px 0 12px;font-size:18px;line-height:28px;font-weight:650;scroll-margin-top:16px;}
.legal-card h3{margin:20px 0 8px;font-size:15px;font-weight:600;}
.legal-card p,.legal-card ul{margin:0 0 12px;}
.legal-card ul{padding-left:20px;}
.legal-endpoint{font-size:12px;color:var(--color-text-tertiary);font-family:var(--font-mono);}
.legal-table{overflow-x:auto;margin:0 0 16px;border:1px solid var(--color-border-light);border-radius:8px;}
.legal-table table{width:100%;border-collapse:collapse;font-size:13px;}
.legal-table th,.legal-table td{padding:8px 12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--color-border-light);}
.legal-table th{background:var(--color-surface-muted);font-weight:600;color:var(--color-text-secondary);}
.legal-table tr:last-child td{border-bottom:0;}
.legal-table code{font-family:var(--font-mono);font-size:12px;white-space:nowrap;}
.legal-unset{padding:0 4px;border-radius:4px;background:var(--color-warning-soft);color:var(--color-warning);}
.legal-footer-links{display:flex;gap:20px;margin:40px 0 0;padding-top:20px;border-top:1px solid var(--color-border-light);font-size:13px;}
@media (max-width:640px){.legal-top{padding:0 16px;}.legal-card{padding:24px 16px;}.legal-main{padding:16px 8px 40px;}}
/* Consent gate and account deletion (onboarding.js). */
.legal-consent{display:grid;gap:12px;}
.legal-consent .onb-check a{color:var(--color-link,var(--brand));}
.legal-danger-zone{display:grid;gap:12px;margin-top:24px;padding:20px;border:1px solid var(--color-danger-soft);border-radius:var(--radius-card);background:var(--color-surface);}
.legal-danger-zone h3{margin:0;font-size:15px;color:var(--color-danger);}
.legal-danger-zone p{margin:0;font-size:13px;color:var(--color-text-secondary);}
.legal-delete-button{justify-self:start;width:auto;padding:0 16px;min-height:36px;border-radius:6px;border:1px solid var(--color-danger);background:var(--color-surface);color:var(--color-danger);font-size:14px;font-weight:600;cursor:pointer;}
.legal-delete-button:hover:not(:disabled){background:var(--color-danger-soft);color:var(--color-danger);border-color:var(--color-danger);}
.legal-delete-confirm{background:var(--color-danger);border:1px solid var(--color-danger);color:#fff;}
.legal-delete-confirm:disabled{background:var(--color-text-tertiary);border-color:var(--color-text-tertiary);cursor:not-allowed;}
.legal-delete-confirm:hover:not(:disabled){background:var(--color-danger);color:#fff;opacity:.9;}
