/* Aviso de cookies (js/cookie-notice.js), home e subpáginas.
   Cores fixas aqui (não depende dos tokens de cada página). */
.cookie-notice {
  position: fixed;
  z-index: 2100; /* acima da nav flutuante (2002) */
  left: 20px;
  bottom: 20px;
  display: flex;
  align-items: center;
  gap: 14px;
  max-width: 460px;
  padding: 14px 14px 14px 18px;
  border-radius: 24px;
  background: #FFFFFF;
  box-shadow: 0 18px 44px rgba(6, 30, 89, .22), inset 0 0 0 1px rgba(11, 84, 191, .1);
  color: #212121;
  font-family: 'Resist Sans', system-ui, sans-serif;
  translate: 0 140%;
  opacity: 0;
  transition: translate .6s cubic-bezier(.34, 1.4, .64, 1), opacity .3s ease;
}
.cookie-notice.is-shown { translate: 0 0; opacity: 1; }
.cookie-notice p { margin: 0; font-size: 0.85rem; line-height: 1.45; }
.cookie-notice a { color: #0C69C8; font-weight: 700; }
.cookie-heart {
  flex: none;
  width: 30px;
  height: 30px;
  background: #38A9EF;
  -webkit-mask: url(../assets/icons/heart-plain.svg) center / contain no-repeat;
  mask: url(../assets/icons/heart-plain.svg) center / contain no-repeat;
}
.cookie-notice button {
  flex: none;
  padding: 11px 20px 9px;
  border: 0;
  border-radius: 999px;
  background: #0B54BF;
  color: #FFFFFF;
  font: inherit;
  font-weight: 700;
  font-size: 0.9rem;
  cursor: pointer;
  transition: background-color .3s ease, translate .3s cubic-bezier(.34, 1.56, .64, 1);
}
.cookie-notice button:hover { background: #0C69C8; translate: 0 -2px; }
.cookie-notice button:focus-visible { outline: 3px solid #38A9EF; outline-offset: 3px; }

@media (max-width: 640px) {
  .cookie-notice { left: 12px; right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); max-width: none; gap: 12px; padding: 12px 12px 12px 14px; }
  .cookie-heart { display: none; }
  .cookie-notice p { font-size: 0.8rem; }
}
@media (prefers-reduced-motion: reduce) {
  .cookie-notice, .cookie-notice button { transition: none; }
}
