/* ==========================================================
   PAGES LÉGALES & BANDEAUX D'INFORMATION
   ========================================================== */
.legal-page{max-width:800px;margin:0 auto}
.legal-page h1{font-size:30px;margin-bottom:8px}
.legal-updated{font-size:13px;color:var(--muted-dim);margin-bottom:32px}
.legal-page h2{font-size:18px;margin:36px 0 12px;padding-top:24px;border-top:1px solid var(--border-soft)}
.legal-page h2:first-of-type{margin-top:0;padding-top:0;border-top:none}
.legal-page p{color:var(--muted);margin:0 0 14px;font-size:15px;line-height:1.75}
.legal-page ul{color:var(--muted);font-size:15px;line-height:1.85;margin:0 0 14px;padding-left:22px}
.legal-page strong{color:var(--text);font-weight:600}
.legal-page a{color:var(--blue-2)}
.legal-page table{width:100%;border-collapse:separate;border-spacing:0;margin:0 0 20px;font-size:14px;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}
.legal-page table td,.legal-page table th{border-bottom:1px solid var(--border-soft);padding:11px 14px;text-align:left;color:var(--muted)}
.legal-page table tr:last-child td{border-bottom:none}
.legal-page table th{color:var(--text);background:var(--surface);font-weight:600}
.legal-toc{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px 22px;margin-bottom:32px}
.legal-toc p{margin:0 0 10px;font-size:12px;font-weight:600;color:var(--muted-dim);text-transform:uppercase;letter-spacing:.07em}
.legal-toc ul{margin:0;padding-left:18px;color:var(--muted-dim);font-size:14px;line-height:2}
.legal-toc a{color:var(--blue-2);text-decoration:none}
.legal-toc a:hover{color:var(--text)}
.placeholder{background:rgba(245,119,42,.08);border:1px dashed rgba(245,119,42,.4);color:var(--orange-2);padding:1px 6px;border-radius:5px;font-family:var(--font-mono);font-size:.9em}
.legal-notice{display:flex;gap:12px;align-items:flex-start;background:rgba(76,141,255,.07);border:1px solid rgba(76,141,255,.25);border-radius:var(--radius-sm);padding:14px 16px;margin-bottom:28px}
.legal-notice .icon{flex-shrink:0;color:var(--blue-2);display:inline-flex;margin-top:2px}
.legal-notice .icon .i{width:18px;height:18px;vertical-align:0}
.legal-notice p{margin:0;color:var(--text);font-size:14px;line-height:1.6}
