/* Charte AudienceLab — squelette (polices DM Sans/DM Mono à auto-héberger : la CSP interdit les CDN). */
:root{--accent:#6c5ce7;--teal:#00b894;--coral:#ff7675;--bg:#f7f7fb;--text:#1a1a2e;--card:#fff}
*{box-sizing:border-box}body{margin:0;font-family:'DM Sans',system-ui,sans-serif;background:var(--bg);color:var(--text)}
.topbar{display:flex;gap:24px;align-items:center;padding:12px 24px;background:var(--card);border-bottom:1px solid #e5e5ef}
.topbar nav{display:flex;gap:16px;flex:1}.topbar a{color:var(--text);text-decoration:none}
.inline{display:flex;gap:12px;align-items:center}.container{max-width:1100px;margin:24px auto;padding:0 24px}
.btn{font:inherit;border:1px solid #d0d0e0;background:#fff;border-radius:8px;padding:10px 16px;cursor:pointer}
.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-sm{padding:6px 10px}
form label{display:block;margin:12px 0}input{font:inherit;padding:8px;border:1px solid #d0d0e0;border-radius:8px;width:100%;max-width:340px}
.alert{background:#ffecec;border:1px solid var(--coral);padding:10px;border-radius:8px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.card{background:var(--card);border-radius:12px;padding:16px}.card h2{font-size:14px;margin:0;color:#666}
.kpi{font:600 28px 'DM Mono',monospace;margin:8px 0 0}.muted{color:#777}
.table{width:100%;border-collapse:collapse;background:var(--card);border-radius:12px;margin:12px 0 24px}
.table th,.table td{padding:10px 12px;text-align:left;border-bottom:1px solid #eee;font-size:14px;vertical-align:middle}
.alert.ok{background:#e8fbf4;border-color:var(--teal)}textarea,select{font:inherit;padding:8px;border:1px solid #d0d0e0;border-radius:8px;width:100%;max-width:480px}
input[type=checkbox]{width:auto}h2{margin-top:32px}
