/* Styling for the first-party consent banner (Task 6).
 * This is new markup the live WordPress site never had, so it is kept in
 * its own stylesheet rather than touching the vendored style.css.
 */
.consent-banner {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.5rem;
  background: #1b1b1b;
  color: #f5f5f5;
  box-shadow: 0 -2px 12px rgba(0, 0, 0, 0.25);
  font-size: 0.95rem;
}

.consent-banner-text {
  margin: 0;
  max-width: 60ch;
}

.consent-banner-actions {
  display: flex;
  gap: 0.75rem;
  flex-shrink: 0;
}

.consent-banner-actions button {
  cursor: pointer;
  border: 1px solid #f5f5f5;
  border-radius: 4px;
  padding: 0.55rem 1.25rem;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.2;
  background: #f5f5f5;
  color: #1b1b1b;
}

/* Accept and Decline are deliberately styled identically: same size,
 * weight, border, fill, and contrast against the banner background.
 * Neither is filled-vs-outline or high-vs-low-contrast, so neither reads
 * as the primary/nudged choice. No dark patterns. */

/* Footer control that lets a visitor who already made a choice reopen the
 * banner and change it (GDPR withdrawal). Kept understated -- a footer
 * text-button, not a second banner -- since it is a secondary, always
 * available action rather than a decision being requested right now. */
.consent-manage {
  margin-top: 1rem;
}

.consent-manage-button {
  cursor: pointer;
  background: none;
  border: none;
  padding: 0;
  font: inherit;
  text-decoration: underline;
  color: inherit;
}
