/* =========================================================
   Aviso de cookies — compartido por todas las páginas
   ========================================================= */
.cookie {
  position: fixed; z-index: 120; left: clamp(12px, 3vw, 32px); bottom: clamp(12px, 3vw, 32px);
  width: min(440px, calc(100vw - 24px)); max-height: calc(100svh - 24px); overflow: auto;
  padding: 24px; border-radius: 10px; border: 1px solid rgba(200, 204, 208, .16);
  background: rgba(18, 19, 21, .96); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
  color: #f4f0e8; box-shadow: 0 30px 70px -20px rgba(0, 0, 0, .6);
  font-family: "Montserrat", system-ui, -apple-system, sans-serif;
  opacity: 0; transform: translateY(16px); transition: opacity .5s cubic-bezier(.22, 1, .36, 1), transform .5s cubic-bezier(.22, 1, .36, 1);
}
.cookie.is-open { opacity: 1; transform: none; }
.cookie[hidden] { display: none; }
.cookie__title { margin: 0; font-family: "Codec Pro", "Manrope", system-ui, sans-serif; font-size: 11px; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; color: #e2c88f; }
.cookie__text { margin: 10px 0 0; font-size: 14px; line-height: 1.55; color: #c9ccd0; }
.cookie__text a { color: #e2c88f; text-decoration: underline; text-underline-offset: 3px; }
.cookie__panel { margin-top: 16px; display: grid; gap: 10px; }
.cookie__panel[hidden] { display: none; }
.cookie__opt { display: grid; grid-template-columns: 20px 1fr; gap: 12px; align-items: start; padding: 12px; border: 1px solid rgba(200, 204, 208, .14); border-radius: 6px; font-size: 13px; line-height: 1.5; color: #a9acb0; cursor: pointer; }
.cookie__opt input { width: 18px; height: 18px; margin: 2px 0 0; accent-color: #c4a058; }
.cookie__opt strong { display: block; margin-bottom: 2px; font-size: 14px; font-weight: 600; color: #f4f0e8; }
.cookie__id { margin: 2px 0 0; font-size: 12px; color: #8b8e91; word-break: break-all; }
.cookie__actions { margin-top: 18px; display: flex; flex-wrap: wrap; gap: 8px; }
.cookie__btn {
  flex: 1 1 auto; min-height: 44px; padding: 0 18px; border-radius: 999px; cursor: pointer;
  border: 1px solid rgba(244, 240, 232, .28); background: transparent; color: #f4f0e8;
  font-family: "Codec Pro", "Manrope", system-ui, sans-serif; font-size: 14px; font-weight: 600;
  transition: background .3s, border-color .3s, color .3s;
}
.cookie__btn:hover { border-color: #c4a058; color: #e2c88f; }
.cookie__btn--primary { border-color: transparent; background: linear-gradient(115deg, #94763a 0%, #c4a058 28%, #ecd6a1 48%, #c4a058 66%, #8f7034 100%); color: #17130b; }
.cookie__btn--primary:hover { color: #17130b; filter: brightness(1.06); }
.cookie__btn:focus-visible, .cookie__opt input:focus-visible { outline: 2px solid #c4a058; outline-offset: 2px; }
.cookie__btn[hidden] { display: none; }
@media (prefers-reduced-motion: reduce) { .cookie { transition: none; } }
