/* Terms and Privacy pages: readable long-form text inside the site's account shell */
.auth-minimal-shell:has(.legal){max-width:820px}
.auth-card:has(.legal){max-width:none;width:100%;padding:44px 48px}
.legal{text-align:left;color:#334155;font-size:15px;line-height:1.75}
.legal header{margin-bottom:26px}
.legal h1{margin:0;font-size:36px;line-height:1.15;font-weight:800;letter-spacing:-.025em;color:#0f172a}
.legal .legal-meta{margin:8px 0 14px;font-size:13px;font-weight:600;color:#64748b}
.legal h2{margin:34px 0 10px;padding-top:6px;font-size:20px;line-height:1.3;font-weight:800;color:#0f172a;scroll-margin-top:90px}
.legal h3{margin:18px 0 6px;font-size:15px;font-weight:800;color:#1e293b}
.legal p{margin:0 0 12px}
.legal ul,.legal ol{margin:0 0 12px;padding-left:22px}
.legal li{margin:0 0 8px}
.legal strong{color:#0f172a}
.legal a{color:#2563eb;font-weight:600;text-decoration:underline;text-underline-offset:2px}
.legal-toc{margin:0 0 8px;padding:18px 22px;border:1px solid #e6e9ef;border-radius:14px;background:#f8fafc;font-size:14px}
.legal-toc strong{display:block;margin-bottom:8px;font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:#64748b}
.legal-toc ol{columns:2;column-gap:32px;margin:0;padding-left:20px}
.legal-toc li{margin:0 0 4px;break-inside:avoid}
.legal-toc a{font-weight:500;text-decoration:none}.legal-toc a:hover{text-decoration:underline}
@media(max-width:700px){.auth-card:has(.legal){padding:26px 20px}.legal h1{font-size:28px}.legal-toc ol{columns:1}}
@media print{.legal-toc{display:none}.legal a{color:inherit;text-decoration:none}}

/* ---- v2: wide desktop reading layout: the contents list stays beside the text (landing-page width), one column on phones ---- */
.auth-minimal-shell:has(.legal){max-width:1180px!important;width:100%}
.auth-card:has(.legal){padding:48px clamp(28px,5vw,72px)!important}
@media(min-width:960px){
.legal{display:grid;grid-template-columns:260px minmax(0,1fr);column-gap:56px;align-items:start}
.legal>*{grid-column:2;min-width:0}
.legal>header{grid-column:1/-1;max-width:860px}
.legal>.legal-toc{grid-column:1;grid-row:2/span 60;position:sticky;top:96px;max-height:calc(100dvh - 130px);overflow:auto;margin:0;padding:16px 18px}
.legal>.legal-toc ol{columns:1;padding-left:18px}
.legal>section,.legal>div,.legal>p,.legal>h2,.legal>ul{max-width:820px}
.legal h1{font-size:clamp(34px,3.4vw,44px);letter-spacing:-1.2px}
.legal{font-size:15.5px}
}
