/* ═══════════════════════════════════════════════════
   CGU — SPÉCIFIQUE
   (variables propres + content-card + toc)
═══════════════════════════════════════════════════ */

/* Variables supplémentaires CGU */
:root {
    --glass-bg: rgba(255, 255, 255, 0.7);
    --glass-border: rgba(226, 232, 240, 0.5);
    --content-card-bg: rgba(255, 255, 255, 0.6);
    --content-card-border: rgba(226, 232, 240, 0.8);
    --bg-main: #ffffff;
    --text-primary: #1e293b;
}

body.dark-theme {
    --glass-bg: rgba(30, 41, 59, 0.7);
    --glass-border: rgba(51, 65, 85, 0.5);
    --content-card-bg: rgba(30, 41, 59, 0.6);
    --content-card-border: rgba(51, 65, 85, 0.8);
    --bg-main: #0f172a;
    --text-primary: #f1f5f9;
}

/* DARK MODE — CONTENT CARD */
body.dark-theme .bg-white { background-color: #1e293b !important; }
body.dark-theme .bg-slate-50,
body.dark-theme .bg-slate-100 { background-color: #334155 !important; }
body.dark-theme .border-slate-100,
body.dark-theme .border-slate-200 { border-color: #334155 !important; }
body.dark-theme .bg-indigo-50 { background-color: rgba(99, 102, 241, 0.15) !important; }

/* CONTENT CARD */
.content-card {
    background: var(--content-card-bg);
    border-radius: 1.5rem;
    border: 1px solid var(--content-card-border);
    padding: 2.5rem;
    margin-bottom: 1.5rem;
}

.content-card h2 {
    font-size: 1.25rem;
    font-weight: 800;
    color: var(--text-primary);
    margin-bottom: 1rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.content-card h2 .icon {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 0.75rem;
    background: #eef2ff;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #4f46e5;
    font-size: 0.875rem;
    flex-shrink: 0;
}

body.dark-theme .content-card h2 .icon {
    background: rgba(99, 102, 241, 0.15);
}

.content-card p,
.content-card li { color: var(--text-secondary); line-height: 1.8; font-size: 0.9375rem; }

.content-card ul { list-style: none; padding: 0; margin-top: 0.75rem; }

.content-card ul li { padding-left: 1.5rem; position: relative; margin-bottom: 0.5rem; }

.content-card ul li::before { content: '—'; position: absolute; left: 0; color: #4f46e5; font-weight: bold; }

.content-card p + p { margin-top: 0.75rem; }

.content-card strong { color: var(--text-primary); font-weight: 700; }

/* TOC LINK */
.toc-link {
    color: var(--text-secondary);
    text-decoration: none;
    font-size: 0.875rem;
    font-weight: 600;
    padding: 0.4rem 0;
    display: block;
    transition: color 0.2s;
}
.toc-link:hover { color: #4f46e5; }
