
  #cookie-consent{
    all: initial;
    --cc-black: #1b1b1b;
    font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  }
  #cookie-consent *{ box-sizing: border-box; font-family: inherit; }

  /* Overlay + modal */
  #cookie-consent .cc-overlay{
    position: fixed; inset: 0; background: rgba(0,0,0,.45);
    opacity: 0; pointer-events: none; transition: opacity .2s ease; z-index: 99998;
  }
  #cookie-consent.cc-modal-open .cc-overlay{ opacity: 1; pointer-events: auto; }

  /* ===== Banner ===== */
  #cookie-consent .cc-banner{
    display:none; /* hidden by default to prevent flash */
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 99999;
    background: radial-gradient(120% 120% at 85% 10%, #eaf0ff 0%, #f7f8fb 45%, #f4f5f7 100%);
    border-top: 1px solid #eceef2;
  }
  #cookie-consent.cc-show .cc-banner{ display:block; }

  #cookie-consent .cc-wrap{
    max-width: 1200px; margin: 0 auto; padding: 18px 20px;
    display: grid; grid-template-columns: 1fr auto; gap: 16px; align-items: center;
  }
  #cookie-consent .cc-title{ margin:0; font-weight:700; font-size:16px; color: var(--cc-black); }
  #cookie-consent .cc-text{ margin:6px 0 0; font-size:14px; line-height:1.5; color:#374151 }
  #cookie-consent .cc-text a{ color: var(--cc-black); text-decoration: underline; }

  #cookie-consent .cc-actions{ display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end }
  #cookie-consent .cc-pill{
    appearance:none; border:0; background:#e5e7eb; color: var(--cc-black); cursor:pointer;
    padding:10px 16px; border-radius:999px; font-weight:700; font-size:14px;
  }
  #cookie-consent .cc-pill:hover{ filter:brightness(0.98) }
  #cookie-consent .cc-pill.cta{ background: var(--cc-black); color:#fff; }

  @media (max-width: 768px){
    #cookie-consent .cc-wrap{ grid-template-columns: 1fr; }
    #cookie-consent .cc-actions{ justify-content: stretch; }
    #cookie-consent .cc-pill{ width:100%; text-align:center; }
  }

  /* ===== Modal ===== */
  #cookie-consent .cc-modal{
    position: fixed; inset: 0; display: grid; place-items: center;
    pointer-events: none; opacity: 0; transition: opacity .2s ease; z-index: 99999;
  }
  #cookie-consent.cc-modal-open .cc-modal{ pointer-events: auto; opacity: 1; }
  #cookie-consent .cc-card{
    width:min(640px, 92vw); background:#fff; border:1px solid #eceef2; border-radius:16px;
    box-shadow: 0 30px 80px rgba(0,0,0,.18);
    display:flex; flex-direction:column; max-height: 86vh;
  }
  #cookie-consent .cc-hd{ padding:20px 22px; border-bottom:1px solid #f0f2f6; }
  #cookie-consent .cc-h1{ margin:0 0 6px; font-size:18px; font-weight:800; color: var(--cc-black); }
  #cookie-consent .cc-desc{ margin:0; font-size:13.5px; color:#374151; line-height:1.55 }
  #cookie-consent .cc-desc a{ color: var(--cc-black); text-decoration: underline; }

  #cookie-consent .cc-body{ padding: 10px 22px; overflow:auto; }
  #cookie-consent .cc-item{ display:grid; grid-template-columns: 22px 1fr; gap:12px; padding:12px 0; border-bottom:1px solid #f5f6f7 }
  #cookie-consent .cc-item:last-child{ border-bottom:0 }
  #cookie-consent .cc-name{ margin:0; font-weight:700; color: var(--cc-black); font-size:14px }
  #cookie-consent .cc-note{ margin:4px 0 0; font-size:12.5px; color:#6b7280 }

  #cookie-consent .cc-check{
    appearance:none; width:18px; height:18px; border:1.6px solid #d1d5db; border-radius:4px; margin-top:2px; cursor:pointer; background:#fff; position:relative;
  }
  #cookie-consent .cc-check:checked{ background: var(--cc-black); border-color: var(--cc-black); }
  #cookie-consent .cc-check:checked::after{
    content:""; position:absolute; width:6px; height:10px; left:5px; top:2px;
    border:2px solid #fff; border-top:0; border-left:0; transform: rotate(45deg);
  }
  #cookie-consent .cc-check:disabled{ opacity:.45; cursor:not-allowed }

  #cookie-consent .cc-ft{ display:flex; gap:10px; flex-wrap:wrap; align-items:center; justify-content:flex-end; padding:14px 22px 18px; border-top:1px solid #f0f2f6 }
  #cookie-consent .cc-link{ background:none; border:none; color:#6b7280; font-size:13px; padding:0 8px; cursor:pointer; text-decoration: underline; }
  #cookie-consent .cc-spacer{ flex:1 1 auto }
  #cookie-consent .cc-pill.primary{ background: var(--cc-black); color:#fff; }
