/* ==========================================================================
   cookies.css — aviso de cookies de Katahana System
   Rev. 1 · 3 de noviembre de 2026
   Usa las mismas variables del sitio (styles.css) para que el aviso se
   vea como parte de la misma plataforma y no como un parche pegado.
   ========================================================================== */

.cookie-banner {
  position: fixed;
  left: 20px;
  bottom: 20px;
  z-index: 200;
  width: min(430px, calc(100vw - 40px));
  padding: 22px 24px 20px;
  background: var(--ink, #ffffff);
  border: 1px solid var(--line, #e4e8ee);
  border-radius: var(--radius, 14px);
  box-shadow: 0 30px 70px -30px rgba(17, 24, 39, .35), 0 0 0 1px rgba(255, 255, 255, .6);
  font-family: var(--font-body, "Inter", system-ui, sans-serif);
  color: var(--ink-deep, #14171e);
  animation: cookie-banner-entra .45s var(--ease, cubic-bezier(.22, .61, .36, 1)) both;
}
.cookie-banner[hidden] { display: none; }

/* Al bajar la pagina el aviso se pliega para no tapar el contenido.
   Al volver a subir, aparece de nuevo. */
.cookie-banner--plegado {
  transform: translateY(calc(100% + 28px));
  opacity: 0;
  pointer-events: none;
  transition: transform .35s var(--ease, ease), opacity .25s var(--ease, ease);
}

@keyframes cookie-banner-entra {
  from { opacity: 0; transform: translateY(18px); }
  to   { opacity: 1; transform: none; }
}

.cookie-banner__titulo {
  margin: 0 0 8px;
  font-family: var(--font-display, "Sora", system-ui, sans-serif);
  font-size: 1.02rem;
  font-weight: 700;
  letter-spacing: -.01em;
  color: var(--ink-deep, #14171e);
}

.cookie-banner__texto {
  margin: 0 0 16px;
  font-size: .86rem;
  line-height: 1.62;
  color: #5a6472;
}
.cookie-banner__texto strong { color: #14171e; font-weight: 600; }
.cookie-banner__texto em { font-style: normal; font-weight: 600; color: #14171e; }
.cookie-banner__texto a {
  color: var(--brand-2, #0044A6);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.cookie-banner__texto a:hover { color: var(--brand, #3a8cf0); }

.cookie-banner__acciones {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.cookie-banner__btn {
  flex: 1 1 auto;
  min-width: 0;
  padding: 11px 18px;
  border-radius: 999px;
  border: 1px solid transparent;
  font-family: var(--font-body, "Inter", system-ui, sans-serif);
  font-size: .86rem;
  font-weight: 600;
  line-height: 1.2;
  cursor: pointer;
  transition: transform .18s var(--ease, ease), box-shadow .18s var(--ease, ease),
              background-color .18s var(--ease, ease), border-color .18s var(--ease, ease);
}
.cookie-banner__btn:focus-visible {
  outline: 2px solid #0044A6;
  outline-offset: 2px;
}
.cookie-banner__btn:active { transform: translateY(1px); }

/* Primario: el mismo azul de botón que usa todo el sitio */
.cookie-banner__btn--primario {
  background: #4a8cf0;
  color: #14161a;
  border-color: #4a8cf0;
  box-shadow: 0 10px 24px -12px rgba(74, 140, 240, .9);
}
.cookie-banner__btn--primario:hover { background: #3f7fe0; border-color: #3f7fe0; }

/* Secundario: contorno sobre fondo claro */
.cookie-banner__btn--secundario {
  background: #f7f8fa;
  color: #14171e;
  border-color: #d6dbe3;
}
.cookie-banner__btn--secundario:hover { background: #eef1f5; border-color: #c3cad4; }

/* ── botón "Preferencias de cookies" del pie ───────────────────────────── */
.cookie-prefs {
  display: inline;
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  font-size: inherit;
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.cookie-prefs:hover { color: #8ab6ff; }
.cookie-prefs:focus-visible { outline: 2px solid #8ab6ff; outline-offset: 2px; border-radius: 3px; }

/* ── móvil ─────────────────────────────────────────────────────────────── */
@media (max-width: 560px) {
  .cookie-banner {
    left: 12px;
    right: 12px;
    bottom: 12px;
    width: auto;
    padding: 18px 18px 16px;
  }
  .cookie-banner__acciones { flex-direction: column-reverse; }
  .cookie-banner__btn { width: 100%; flex: 0 0 auto; }
}

/* ── quien no quiere animaciones no las recibe ────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .cookie-banner { animation: none; }
  .cookie-banner__btn { transition: none; }
}
