/* cookie-banner.css — bandeau d'information (chargé en CSS externe : la CSP interdit les styles injectés par JS) */
    #mika-cb {
      position: fixed; bottom: 0; left: 0; right: 0; z-index: 9999;
      background: var(--surface, #0f1520);
      border-top: 1px solid var(--border, #1e3050);
      box-shadow: 0 -6px 32px rgba(0,0,0,0.35);
      font-family: 'Syne', system-ui, sans-serif;
      transform: translateY(0);
      transition: transform 0.4s cubic-bezier(0.16,1,0.3,1);
    }
    #mika-cb.cb-hidden { transform: translateY(110%); pointer-events: none; }
    #mika-cb .cb-main {
      display: flex; align-items: flex-start; gap: 14px; flex-wrap: wrap;
      padding: 16px clamp(1rem,5vw,3rem);
      max-width: 1200px; margin: 0 auto;
    }
    #mika-cb .cb-icon { font-size: 22px; flex-shrink: 0; padding-top: 3px; }
    #mika-cb .cb-text { flex: 1; min-width: 220px; }
    #mika-cb .cb-title {
      display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
      font-size: 14px; font-weight: 700; color: var(--text, #e8f4f8); margin-bottom: 5px;
    }
    #mika-cb .cb-badge {
      display: inline-flex; align-items: center; gap: 4px;
      background: rgba(0,180,100,0.15); color: #4ade80;
      font-size: 11px; font-weight: 700; padding: 2px 9px;
      border-radius: 100px; border: 1px solid rgba(74,222,128,0.3);
      letter-spacing: 0.04em;
    }
    #mika-cb .cb-text p { font-size: 12px; color: var(--muted, #BFC7D9); line-height: 1.6; margin: 0; }
    #mika-cb a { color: var(--accent, #00d4ff); text-decoration: none; border-bottom: 1px solid currentColor; }
    #mika-cb .cb-actions {
      display: flex; gap: 8px; align-items: center;
      flex-shrink: 0; flex-wrap: wrap; padding-top: 2px;
    }
    #mika-cb button {
      font-family: inherit; font-size: 12px; cursor: pointer; white-space: nowrap;
      border-radius: 8px; padding: 8px 14px;
      color: var(--muted, #BFC7D9); background: transparent;
      border: 1px solid var(--border, #1e3050);
      transition: color 0.2s, border-color 0.2s;
    }
    #mika-cb button:hover { color: var(--text, #fff); border-color: var(--accent, #00d4ff); }
    #mika-cb button:focus-visible, #mika-cb a:focus-visible { outline: 2px solid var(--accent, #00d4ff); outline-offset: 2px; }
    #mika-cb .btn-cb-ok {
      font-size: 13px; font-weight: 700; color: #080c10; border: none;
      background: var(--accent, #00d4ff); padding: 9px 20px;
    }
    #mika-cb .btn-cb-ok:hover { opacity: 0.88; color: #080c10; }
    #mika-cb-detail {
      display: none; background: var(--bg, #080c10);
      border-top: 1px solid var(--border, #1e3050);
      padding: 14px clamp(1rem,5vw,3rem);
    }
    #mika-cb-detail.cb-open { display: block; }
    #mika-cb-detail p { font-size: 12px; color: var(--muted, #BFC7D9); line-height: 1.65; margin: 0 auto 6px; max-width: 1200px; }
    #mika-cb-detail p:last-child { margin-bottom: 0; }
    #mika-cb-detail strong { color: var(--text, #e8f4f8); }
    @media (max-width: 480px) {
      #mika-cb .cb-main { padding: 12px 1rem; gap: 10px; }
      #mika-cb .cb-actions { width: 100%; justify-content: flex-end; }
      #mika-cb-detail { padding: 12px 1rem; }
    }
    @media (prefers-reduced-motion: reduce) { #mika-cb { transition: none; } }
  