/* Legal reading layer; all colours, typography and shell come from Account. */
.account-legal { padding-block: 2rem 4rem; }
.legal-documents { display: flex; flex-wrap: wrap; gap: .75rem 1.5rem; padding-block-end: 1.5rem; border-block-end: 1px solid var(--a-rule); }
.account-legal a { color: var(--a-accent); text-underline-offset: .2em; }
.legal-documents [aria-current="page"] { color: var(--a-title); font-weight: 650; }
.legal-draft { padding: 1rem; border: 1px solid var(--a-rule); margin-block: 1.5rem; }
.legal-layout { display: grid; grid-template-columns: minmax(12rem, 1fr) minmax(0, 3fr); gap: 3rem; padding-block-start: 2rem; }
.legal-toc nav { display: grid; gap: .65rem; }
.legal-toc p { color: var(--a-muted); margin-block: 0 .5rem; }
.legal-toc-mobile { display: none; }
.legal-copy { min-width: 0; max-width: 74ch; line-height: 1.75; overflow-wrap: anywhere; }
.legal-copy h1 { font-family: var(--font-display); font-size: clamp(2rem, 4vw, 3rem); line-height: 1.15; color: var(--a-title); margin-block: 0 1.5rem; }
.legal-copy h2 { font-family: var(--font-ui); font-size: 1.25rem; line-height: 1.4; color: var(--a-title); border-inline-start: 3px solid var(--a-accent); padding-inline-start: .75rem; margin-block: 2.5rem 1rem; scroll-margin-block-start: 2rem; }
.legal-copy p, .legal-copy ul, .legal-copy ol { margin-block: 0 1.25rem; }
.legal-copy li { margin-block: .5rem; }
.legal-copy ul, .legal-copy ol { padding-inline-start: 1.5rem; }
.legal-revision { border-block-start: 1px solid var(--a-rule); padding-block-start: 1.5rem; margin-block-start: 3rem; color: var(--a-muted); font-size: .875rem; }
.legal-layout:not(:has(.legal-toc)) { grid-template-columns: 1fr; }
@media (max-width: 48rem) {
  .legal-layout { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  .legal-documents { gap: .75rem 1rem; }
  .account-legal { padding-block-start: 1rem; }
  .legal-toc { display: none; }
  .legal-toc-mobile { display: block; margin-block-end: 1.5rem; }
  .legal-toc-mobile summary { cursor: pointer; color: var(--a-accent); }
  .legal-toc-mobile nav { display: grid; gap: .65rem; padding-block-start: 1rem; }
}
