/* Analytics consent banner (see consent.js). A small card pinned to the
   bottom corner on wide screens, full-width at the bottom on phones. Both
   choices carry equal weight. Colors follow the site palette in styles.css. */
.consent {
  position: fixed; z-index: 200;
  right: max(20px, env(safe-area-inset-right, 0px)); bottom: calc(20px + env(safe-area-inset-bottom, 0px)); left: auto;
  max-width: 400px;
  padding: 18px 20px 20px;
  background: #1a1615; color: var(--paper, #f2ece2);
  border: 1px solid rgba(242, 236, 226, 0.14); border-radius: 16px;
  box-shadow: 0 18px 40px -12px rgba(0, 0, 0, 0.7);
  font-family: var(--sans, system-ui, sans-serif);
  font-size: 15px; line-height: 1.45;
}
.consent[hidden] { display: none; }
.consent p { margin: 0; color: #c9c1b6; }
.consent a { color: var(--red-bright, #e44c4c); white-space: nowrap; text-decoration: underline; text-underline-offset: 3px; }
.consent a:hover { color: var(--paper, #f2ece2); }
.consent-actions { display: flex; gap: 10px; margin-top: 14px; }
.consent button {
  flex: 1 1 0; min-height: 44px; padding: 0 16px;
  font: inherit; font-weight: 600;
  color: var(--paper, #f2ece2); background: rgba(242, 236, 226, 0.06);
  border: 1px solid rgba(242, 236, 226, 0.2); border-radius: 10px;
  cursor: pointer;
}
.consent button:hover { background: rgba(242, 236, 226, 0.12); }
.consent button:focus-visible, .consent a:focus-visible { outline: 2px solid var(--red-bright, #e44c4c); outline-offset: 3px; }
@media (max-width: 599px) {
  .consent { right: max(12px, env(safe-area-inset-right, 0px)); left: max(12px, env(safe-area-inset-left, 0px)); bottom: calc(12px + env(safe-area-inset-bottom, 0px)); max-width: none; }
}

/* Footer link that reopens the banner; styled to match the footer's links. */
.consent-open {
  padding: 0;
  font: inherit; color: inherit; background: none; border: 0; cursor: pointer;
}
.consent-open:hover { color: var(--paper, #f2ece2); }
.consent-open:focus-visible { outline: 2px solid var(--red-bright, #e44c4c); outline-offset: 4px; border-radius: 4px; }
