/* legal.css · pages légales statiques, lisibles sans JavaScript. */
.legal-header { border-bottom: 1px solid var(--border); padding: var(--sp-4) 0; }
.legal-header-in { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-4); }
.legal-main { padding: clamp(28px, 5vw, 56px) 0 var(--sp-8); }
.legal-main .wrap { max-width: 780px; }
.legal-main h1 { font-size: clamp(1.7rem, 1.3rem + 1.6vw, 2.3rem); margin-bottom: var(--sp-2); }
.legal-updated { color: var(--muted); font-size: .85rem; margin-bottom: var(--sp-6); }
.legal-main h2 { font-size: 1.2rem; margin-top: var(--sp-6); margin-bottom: var(--sp-3); }
.legal-main h3 { font-size: 1rem; margin-top: var(--sp-4); margin-bottom: var(--sp-2); }
.legal-main p, .legal-main li { color: var(--text-2); margin-bottom: var(--sp-3); }
.legal-main ul, .legal-main ol { padding-left: 1.3em; margin-bottom: var(--sp-3); }
.legal-main li { margin-bottom: var(--sp-2); }
.legal-main strong { color: var(--text); }
.legal-toc { background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-md); padding: var(--sp-4) var(--sp-5); margin-bottom: var(--sp-6); }
.legal-toc ol { margin: 0; }
.legal-note { background: var(--warn-soft); border: 1px solid color-mix(in srgb, var(--warn) 38%, transparent); border-radius: var(--r-md); padding: var(--sp-4); margin: var(--sp-5) 0; }
.legal-note p:last-child { margin-bottom: 0; }
.todo { background: var(--danger-soft); border-radius: var(--r-xs); padding: 1px 6px; font-weight: 700; color: var(--danger); font-size: .9em; }
.legal-footer { border-top: 1px solid var(--border); padding: var(--sp-5) 0; font-size: .85rem; color: var(--muted); }
.legal-footer a { margin-right: var(--sp-3); }
