/* ═══════════════════════════════════════════════════════════════════════
   Banner de consentimiento — Papel y Tinta.
   Autocontenido: define sus propios colores (con modo oscuro) para no
   depender de las variables de cada página. Cero estilos en línea: la CSP
   estricta (style-src 'self') no permite <style> inyectado ni style=.
   consent.js solo alterna clases; el aspecto vive aquí.
   ═══════════════════════════════════════════════════════════════════════ */
.nvcc{
  --cc-papel:#FBF9F2; --cc-tinta:#1D1F1C; --cc-gris:#63665D;
  --cc-botella:#35553F; --cc-linea:rgba(29,31,28,.14); --cc-arena:#EDE6D4;
  position:fixed; left:0; right:0; bottom:0; z-index:9999;
  display:flex; justify-content:center; padding:16px;
  font-family:"IBM Plex Sans",system-ui,sans-serif;
  animation:nvcc-in .32s ease both;
}
@media(prefers-color-scheme:dark){
  .nvcc{--cc-papel:#1B201B; --cc-tinta:#EDE8D9; --cc-gris:#A8AB9B;
    --cc-botella:#8CA08D; --cc-linea:rgba(237,232,217,.16); --cc-arena:#20261F;}
}
@keyframes nvcc-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.nvcc{animation:none}}

.nvcc__card{
  background:var(--cc-papel); color:var(--cc-tinta);
  border:1px solid var(--cc-linea); border-radius:14px;
  box-shadow:0 10px 40px rgba(29,31,28,.18);
  max-width:760px; width:100%;
  display:flex; gap:20px; align-items:center; padding:18px 22px; flex-wrap:wrap;
}
.nvcc__txt{flex:1; min-width:240px; font-size:14px; line-height:1.55}
.nvcc__txt b{font-family:"Fraunces",serif; font-weight:600}
/* El subrayado no es adorno: dentro de un párrafo el enlace solo se distingue
   por color y da 1.99:1 contra la tinta que lo rodea, cuando el mínimo es 3:1.
   El offset ya estaba puesto; el reset global de `a` se había comido la línea. */
.nvcc__txt a{color:var(--cc-botella); text-decoration:underline; text-underline-offset:2px}
.nvcc__btns{display:flex; gap:10px; flex-wrap:wrap}
.nvcc__b{
  font-family:"IBM Plex Mono",monospace; font-size:12.5px; letter-spacing:.03em;
  padding:10px 18px; border-radius:999px; cursor:pointer; border:1px solid var(--cc-linea);
  background:none; color:var(--cc-gris); transition:all .15s;
}
.nvcc__b:hover{border-color:var(--cc-botella); color:var(--cc-botella)}
.nvcc__b--si{background:var(--cc-botella); border-color:var(--cc-botella); color:var(--cc-papel)}
.nvcc__b--si:hover{color:var(--cc-papel); filter:brightness(1.08)}
.nvcc__b:focus-visible{outline:2px solid var(--cc-botella); outline-offset:2px}

@media(max-width:560px){
  .nvcc__card{padding:16px}
  .nvcc__btns{width:100%}
  .nvcc__b{flex:1; text-align:center}
}

/* Botón para reabrir preferencias (en la página de privacidad) */
.nvcc-manage{
  font-family:"IBM Plex Mono",monospace; font-size:13px; cursor:pointer;
  background:none; border:0; padding:0; text-decoration:underline; text-underline-offset:2px;
  /* Este botón vive en el CUERPO de la página, no en la tarjeta del banner:
     tiene que seguir el color de la página, no el esquema del sistema.
     /privacidad/ se queda en papel claro aunque el sistema esté en oscuro,
     así que el override por prefers-color-scheme pintaba #8CA08D sobre
     #F4F0E6 — 2.45:1. Se pide el acento de texto que nombre cada hoja. */
  color:var(--acc-txt, var(--acc, var(--botella, #35553F)));
}
