/* Consent Banner — Centre Médical Paris-Levallois (Bottom Bar v2) */
#cm-consent-banner{position:fixed;bottom:0;left:0;right:0;z-index:99999;transform:translateY(100%);transition:transform .3s ease;font-family:system-ui,-apple-system,sans-serif}
#cm-consent-banner.cm-cb-visible{transform:translateY(0)}
#cm-consent-banner.cm-cb-hiding{transform:translateY(100%)}
.cm-cb-container{max-width:1200px;margin:0 auto}
.cm-cb-content{background:#fff;padding:14px 20px;box-shadow:0 -2px 16px rgba(0,0,0,.12);display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.cm-cb-header{flex:1;min-width:200px}
.cm-cb-header h3{font-size:14px;font-weight:700;color:#252525;margin:0 0 2px;display:inline}
.cm-cb-header p{font-size:12px;color:#666;margin:0;line-height:1.4;display:inline;margin-left:6px}
.cm-cb-options{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.cm-cb-opt{display:flex;align-items:center;gap:5px;cursor:pointer;padding:0;border-radius:0;transition:none;white-space:nowrap}
.cm-cb-opt:hover{background:transparent}
.cm-cb-opt input[type=checkbox]{width:15px;height:15px;accent-color:#00a7de;cursor:pointer;margin:0}
.cm-cb-opt span{display:flex;align-items:center;gap:4px;font-size:12px;color:#252525}
.cm-cb-opt strong{font-size:12px;font-weight:600}
.cm-cb-opt em{font-style:normal;color:#888;font-size:11px}
.cm-cb-actions{display:flex;gap:6px;align-items:center;flex-shrink:0}
.cm-cb-btn{padding:8px 14px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;border:none;transition:all .15s;text-align:center;white-space:nowrap}
.cm-cb-btn-primary{background:#00a7de;color:#fff}
.cm-cb-btn-primary:hover{background:#0090c0}
.cm-cb-btn-secondary{background:#f3f4f6;color:#252525;border:1px solid #e5e7eb;padding:8px 12px}
.cm-cb-btn-secondary:hover{background:#e5e7eb}
.cm-cb-btn-minimal{background:transparent;color:#888;font-weight:400;font-size:12px;padding:8px 6px}
.cm-cb-btn-minimal:hover{color:#252525}
.cm-cb-link{font-size:11px;color:#00a7de;text-decoration:none;white-space:nowrap;flex-shrink:0}
.cm-cb-link:hover{text-decoration:underline}
@media(max-width:768px){.cm-cb-content{flex-direction:column;align-items:stretch;padding:12px 16px;gap:10px}.cm-cb-options{justify-content:flex-start;gap:10px}.cm-cb-actions{justify-content:stretch}.cm-cb-btn{flex:1}}
