/* Public legal document; shares the account layout and JAWA theme tokens. */
.terms-page { max-width: 800px; margin: 0 auto; overflow-wrap: anywhere; }
.terms-intro { margin-bottom: var(--space-8); }
.terms-eyebrow { margin: 0 0 var(--space-3); color: var(--color-brand); font-size: var(--type-label); font-weight: 600; }
.terms-intro h1 { margin-bottom: var(--space-4); }
.terms-lead { max-width: 62ch; margin: 0 0 var(--space-4); }
.terms-meta { color: var(--color-text-muted); font-size: var(--type-body); margin: 0; }
.terms-summary, .terms-draft { padding: var(--space-6); margin-bottom: var(--space-6); border: 1px solid var(--color-border); border-radius: var(--radius-card); }
.terms-summary { background: var(--color-surface); }
.terms-summary h2 { margin-top: 0; }
.terms-summary ul { padding-left: var(--space-6); }
.terms-summary li + li { margin-top: var(--space-2); }
.terms-summary p:last-child, .terms-draft p { margin-bottom: 0; }
.terms-summary p:last-child { color: var(--color-text-muted); font-size: var(--type-body); }
.terms-draft { background: var(--color-warning-bg); color: var(--color-warning); border-color: currentColor; }
.terms-draft p { margin-top: var(--space-2); }
.terms-contents { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-6); padding-bottom: var(--space-6); border-bottom: 1px solid var(--color-border); }
.terms-contents a, .terms-footer a { display: inline-flex; align-items: center; min-height: 48px; text-underline-offset: 0.2em; }
.terms-document { line-height: 1.65; }
.terms-document section { padding-top: var(--space-8); scroll-margin-top: var(--space-6); }
.terms-document h2 { margin: 0 0 var(--space-4); }
.terms-document h3 { margin: var(--space-6) 0 var(--space-3); font-size: var(--type-body-lg); font-weight: 600; }
.terms-document p { margin: 0 0 var(--space-4); }
.terms-document a { text-underline-offset: 0.2em; }
.terms-definitions { margin: var(--space-6) 0; }
.terms-definitions dt { font-weight: 600; margin-top: var(--space-4); }
.terms-definitions dd { margin: var(--space-1) 0 0; white-space: pre-line; }
.terms-footer { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-6); margin-top: var(--space-8); padding-top: var(--space-4); border-top: 1px solid var(--color-border); }
@media (max-width: 760px) {
  .terms-summary, .terms-draft { padding: var(--space-4); }
}
@media print {
  .adm-nav, .terms-contents, .terms-footer { display: none; }
  body.admin { background: #fff; color: #000; }
  main { max-width: none; padding: 0; }
  .terms-page { max-width: none; }
  .terms-document section { padding-top: var(--space-4); }
  .terms-document h2, .terms-document h3 { break-after: avoid; }
  .terms-summary, .terms-draft { break-inside: avoid; }
}
