/* EuroRAG site-specific styles, loaded in addition to styles.css.
   This file holds the .legal typography that was originally inlined in
   privacy/index.html and terms/index.html. Factored out
   so layouts/legal.html and layouts/doc.html share one source of truth.

   The original css/styles.css is intentionally untouched (it must stay
   byte-identical to the pre-migration version). */

/* Layout container */
.legal { max-width: 720px; margin: 0 auto; padding: 2rem 1.5rem 4rem; }

/* Headings */
.legal h1 { font-size: 1.8rem; margin-bottom: 0.5rem; }
.legal h2 { font-size: 1.2rem; margin-top: 2.5rem; margin-bottom: 0.75rem; border-bottom: 1px solid var(--border, #e5e5e5); padding-bottom: 0.5rem; }
.legal h3 { font-size: 1rem; margin-top: 1.5rem; }
.legal h4 { font-size: 0.9rem; margin-top: 1.2rem; }

/* Body text and lists */
.legal p, .legal li { font-size: 0.9rem; line-height: 1.7; color: var(--text, #333); }
.legal ul, .legal ol { margin: 0.5rem 0 1rem; padding-left: 1.5rem; }
.legal ul ul, .legal ol ol, .legal ul ol, .legal ol ul { margin: 0.25rem 0; }

/* Links inside legal body — keep site-wide link color */
.legal a { color: var(--primary); }

/* Tables (markdown-rendered and hand-written) */
.legal table { width: 100%; border-collapse: collapse; margin: 1rem 0; font-size: 0.82rem; }
.legal th, .legal td { text-align: left; padding: 8px 10px; border: 1px solid var(--border, #e5e5e5); }
.legal th { background: var(--bg-alt, #f8f8f8); font-weight: 600; }

/* "Last updated" and similar metadata lines */
.legal .updated { font-size: 0.82rem; color: var(--text-light, #888); margin-bottom: 2rem; }

/* Code blocks and inline code (used by [VERIFY] markers in <pre><code>) */
.legal code { background: var(--code-bg, #e2e8f0); padding: 0.1rem 0.35rem; border-radius: 3px; font-size: 0.82rem; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.legal pre { background: var(--code-bg, #e2e8f0); padding: 0.75rem 1rem; border-radius: var(--radius, 8px); overflow-x: auto; margin: 1rem 0; }
.legal pre code { background: none; padding: 0; font-size: 0.82rem; }

/* Horizontal rules between sections */
.legal hr { border: none; border-top: 1px solid var(--border, #e5e5e5); margin: 2rem 0; }

/* Blockquotes (if used in markdown) */
.legal blockquote { border-left: 3px solid var(--border, #e5e5e5); padding-left: 1rem; color: var(--text-light, #666); margin: 1rem 0; font-style: italic; }

/* Annex I(B) model withdrawal form (Directive 2011/83/EU), styled to match
   the legal layout. Note: --border is theme-aware (light/dark) per styles.css.
   --muted is not defined in styles.css, so --text-light (the closest semantic
   match: #64748b light / #94a3b8 dark) is used instead, keeping the form
   readable in dark mode. */
.withdrawal-form {
  border: 1px solid var(--border, #ddd);
  border-radius: 8px;
  padding: 1.5rem;
  margin: 1.5rem 0;
}
.withdrawal-form-instruction { margin-top: 0; }
.withdrawal-rule {
  border: 0;
  border-top: 1px solid var(--border, #ddd);
  margin: 1rem 0;
}
.withdrawal-field {
  min-height: 1.5rem;
  border-bottom: 1px dotted var(--text-light, #999);
  padding-bottom: 0.25rem;
}
.withdrawal-footnote { font-size: 0.85em; color: var(--text-light, #666); }
