/* Only the sign-up page links this (public/sign-up.html), so the other pages' first paint does not carry it.
   The terms and the privacy policy themselves, read to the end before the tick opens (Eyal 13/10/2026). */
.legal-box {
  max-height: 260px;
  overflow-y: auto;
  overscroll-behavior: contain;
  margin: 0 0 8px;
  padding: 4px 16px 12px;
  border: 1px solid var(--line);
  border-radius: var(--r-md);
  background: var(--surface);
  font-size: 14px;
  line-height: 1.6;
}
.legal-box:focus-visible { outline: 3px solid var(--accent); outline-offset: 2px; }
.legal-box h1 { font-size: 18px; margin: 14px 0 8px; }
.legal-box h2 { font-size: 16px; margin: 16px 0 6px; }
.legal-box h3, .legal-box h4 { font-size: 15px; margin: 12px 0 4px; }
.legal-box p { margin: 0 0 10px; }
.legal-box ul, .legal-box ol { margin: 0 0 10px; padding-inline-start: 20px; }
.legal-box li { margin: 0 0 4px; }
.legal-box blockquote { margin: 0 0 10px; padding-inline-start: 10px; border-inline-start: 2px solid var(--accent); }
.legal-box table { width: 100%; border-collapse: collapse; margin: 0 0 10px; font-size: 13px; }
.legal-box th, .legal-box td { border: 1px solid var(--line); padding: 4px 6px; text-align: start; vertical-align: top; overflow-wrap: anywhere; }
.legal-box pre, .legal-box code { white-space: pre-wrap; overflow-wrap: anywhere; }
.legal-box hr { border: 0; border-top: 1px solid var(--line); margin: 14px 0; }
.legal-box .sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.legal-doc + .legal-doc { border-top: 1px solid var(--line); margin-top: 16px; }
.legal-end { margin: 12px 0 0; font-weight: 500; }
.legal-hint { margin: 0 0 12px; }
.legal-hint[data-nudge='true'] { color: var(--error-ink); font-weight: 500; }
.check[data-locked='true'] > input, .check[data-locked='true'] > label { cursor: not-allowed; }
.check[data-locked='true'] > input { opacity: 0.5; }
