/* Cookie consent banner. Self-hosted, loaded on every page that includes
   analytics.js — kept separate so pages don't need to duplicate the rules. */
#cookie-banner {
  position: fixed;
  left: 20px;
  right: 20px;
  bottom: 20px;
  z-index: 1000;
  max-width: 640px;
  margin: 0 auto;
  background: var(--bg, #0d0000);
  border: 1px solid var(--border, rgba(255,255,255,0.12));
  border-radius: 10px;
  padding: 20px 22px;
  box-shadow: 0 10px 40px rgba(0,0,0,0.45);
  font-family: "Space Grotesk", -apple-system, "Segoe UI", Roboto, sans-serif;
  color: #fff;
  animation: cookieBannerIn .4s ease both;
}

@keyframes cookieBannerIn {
  from { opacity: 0; transform: translateY(12px); }
  to   { opacity: 1; transform: translateY(0); }
}

#cookie-banner p {
  font-size: 13px;
  line-height: 1.6;
  color: rgba(255,255,255,0.75);
  margin: 0 0 16px;
}

#cookie-banner a { color: #fff; text-decoration: underline; }

#cookie-banner .cookie-actions {
  display: flex;
  gap: 10px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

#cookie-banner button {
  font-family: inherit;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .5px;
  padding: 10px 18px;
  border-radius: 5px;
  cursor: pointer;
}

#cookie-banner .cookie-accept {
  background: #fff;
  color: var(--bg, #0d0000);
  border: none;
}
#cookie-banner .cookie-accept:hover { background: #ddd; }

#cookie-banner .cookie-decline {
  background: transparent;
  color: #fff;
  border: 1px solid var(--border, rgba(255,255,255,0.12));
}
#cookie-banner .cookie-decline:hover { background: rgba(255,255,255,0.08); }

@media (max-width: 480px) {
  #cookie-banner { left: 12px; right: 12px; bottom: 12px; padding: 16px 18px; }
  #cookie-banner .cookie-actions { justify-content: stretch; }
  #cookie-banner button { flex: 1; }
}
