/* ============================================================
   EWD · Cookie Consent — estilos
   Paleta consistente con el sitio: --bg:#050505 --lima:#D7FF00
   --magenta:#FF2ACF --violet:#7A3CFF --text:#FFF --muted:#A7A7A7
   No modifica ningún estilo existente del sitio (namespace ewd-cc-)
   ============================================================ */

.ewd-cc-hidden{display:none !important;}

#ewdCookieBanner{
  position:fixed; left:0; right:0; bottom:0; z-index:99998;
  display:flex; justify-content:center;
  padding:18px 16px calc(18px + env(safe-area-inset-bottom));
  font-family:'Outfit',system-ui,sans-serif;
  animation:ewdCcSlideUp .5s ease both;
}
@keyframes ewdCcSlideUp{from{transform:translateY(30px);opacity:0;}to{transform:translateY(0);opacity:1;}}

#ewdCookieBanner .ewd-cc-box{
  width:100%; max-width:920px;
  background:rgba(14,14,14,.92);
  -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px);
  border:1px solid rgba(255,255,255,.10);
  border-radius:18px;
  padding:22px 24px;
  display:flex; align-items:center; gap:22px; flex-wrap:wrap;
  box-shadow:0 20px 60px rgba(0,0,0,.55);
}
#ewdCookieBanner .ewd-cc-icon{
  flex:0 0 auto; width:44px; height:44px; border-radius:12px;
  background:rgba(215,255,0,.12); color:#D7FF00;
  display:flex; align-items:center; justify-content:center; font-size:22px;
}
#ewdCookieBanner .ewd-cc-text{flex:1 1 320px; min-width:220px;}
#ewdCookieBanner .ewd-cc-text p{
  margin:0; font-size:13.5px; line-height:1.6; color:#c9c9c9;
}
#ewdCookieBanner .ewd-cc-text a{color:#D7FF00; text-decoration:underline; text-underline-offset:2px;}
#ewdCookieBanner .ewd-cc-actions{display:flex; gap:10px; flex-wrap:wrap; flex:0 0 auto;}

.ewd-cc-btn{
  border:none; cursor:pointer; font-family:inherit;
  font-size:13px; font-weight:700; letter-spacing:.3px;
  padding:11px 18px; border-radius:10px; transition:.2s ease; white-space:nowrap;
}
.ewd-cc-btn.ewd-cc-accept{background:#D7FF00; color:#050505;}
.ewd-cc-btn.ewd-cc-accept:hover{background:#c2e600; transform:translateY(-1px);}
.ewd-cc-btn.ewd-cc-reject{background:transparent; color:#e5e5e5; border:1px solid rgba(255,255,255,.18);}
.ewd-cc-btn.ewd-cc-reject:hover{border-color:rgba(255,255,255,.4);}
.ewd-cc-btn.ewd-cc-config{background:transparent; color:#D7FF00; border:1px solid rgba(215,255,0,.35);}
.ewd-cc-btn.ewd-cc-config:hover{background:rgba(215,255,0,.08);}

/* ── Modal de preferencias ── */
#ewdCookieModalOverlay{
  position:fixed; inset:0; z-index:99999;
  background:rgba(0,0,0,.68);
  display:flex; align-items:center; justify-content:center;
  padding:20px; font-family:'Outfit',system-ui,sans-serif;
}
#ewdCookieModal{
  width:100%; max-width:560px; max-height:86vh; overflow-y:auto;
  background:#0E0E0E; border:1px solid rgba(255,255,255,.10);
  border-radius:20px; padding:28px 26px 24px;
  box-shadow:0 30px 80px rgba(0,0,0,.6);
}
#ewdCookieModal h3{
  font-family:'Bebas Neue',sans-serif; font-size:26px; letter-spacing:.5px;
  color:#fff; margin:0 0 6px;
}
#ewdCookieModal .ewd-cc-sub{font-size:13px; color:#a7a7a7; margin:0 0 20px; line-height:1.6;}
.ewd-cc-cat{
  display:flex; justify-content:space-between; align-items:flex-start; gap:16px;
  padding:16px 0; border-top:1px solid rgba(255,255,255,.08);
}
.ewd-cc-cat:first-of-type{border-top:none;}
.ewd-cc-cat-info strong{display:block; font-size:14px; color:#fff; margin-bottom:4px;}
.ewd-cc-cat-info span{display:block; font-size:12.5px; color:#a7a7a7; line-height:1.6;}

/* Switch toggle */
.ewd-cc-switch{position:relative; flex:0 0 auto; width:44px; height:26px;}
.ewd-cc-switch input{opacity:0; width:0; height:0; position:absolute;}
.ewd-cc-slider{
  position:absolute; inset:0; background:rgba(255,255,255,.15);
  border-radius:999px; cursor:pointer; transition:.2s;
}
.ewd-cc-slider::before{
  content:''; position:absolute; width:20px; height:20px; left:3px; top:3px;
  background:#fff; border-radius:50%; transition:.2s;
}
.ewd-cc-switch input:checked + .ewd-cc-slider{background:#D7FF00;}
.ewd-cc-switch input:checked + .ewd-cc-slider::before{transform:translateX(18px); background:#050505;}
.ewd-cc-switch input:disabled + .ewd-cc-slider{opacity:.5; cursor:not-allowed;}

.ewd-cc-modal-actions{
  display:flex; justify-content:flex-end; gap:10px; margin-top:22px; flex-wrap:wrap;
}

@media(max-width:640px){
  #ewdCookieBanner .ewd-cc-box{flex-direction:column; align-items:flex-start; text-align:left;}
  #ewdCookieBanner .ewd-cc-actions{width:100%;}
  #ewdCookieBanner .ewd-cc-actions .ewd-cc-btn{flex:1 1 auto;}
}

/* Botón flotante para reabrir preferencias (footer / esquina) */
#ewdCookieReopen{
  position:fixed; left:18px; bottom:18px; z-index:9997;
  width:42px; height:42px; border-radius:50%;
  background:rgba(14,14,14,.9); border:1px solid rgba(255,255,255,.12);
  color:#D7FF00; display:flex; align-items:center; justify-content:center;
  cursor:pointer; font-size:19px; box-shadow:0 8px 24px rgba(0,0,0,.4);
}
