/* ===== GDPR: discreet cookie notice bar + checkout consent =====
   Built on the existing pill/toggle idiom and design tokens, so it is correct in
   both light and dark themes automatically. position:fixed => zero layout shift. */

/* ---- Cookie notice bar ---- */
.aurea-cookie-bar {
  position: fixed;
  left: 50%;
  bottom: max(0.75rem, env(safe-area-inset-bottom));
  transform: translateX(-50%);
  z-index: 1100; /* above content, below the booking modal (9999) and mobile nav (1001 is top-anchored) */
  display: flex;
  align-items: center;
  gap: 0.75rem;
  max-width: min(680px, calc(100vw - 1.5rem));
  width: max-content;
  padding: 0.5rem 0.6rem 0.5rem 1.1rem;
  background: var(--color-bg-card);
  border: 1px solid var(--color-border);
  border-radius: 999px;
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.12);
  font-family: var(--font-body);
}

.aurea-cookie-dismissed .aurea-cookie-bar {
  display: none;
}

.aurea-cookie-text {
  margin: 0;
  font-size: 0.85rem;
  line-height: 1.4;
  color: var(--color-text-muted);
}

.aurea-cookie-link {
  color: var(--color-gold);
  text-decoration: underline;
  text-underline-offset: 2px;
  white-space: nowrap;
}

.aurea-cookie-link:hover {
  color: var(--color-gold-light);
}

.aurea-cookie-ok {
  flex-shrink: 0;
  border: 1px solid var(--color-border);
  border-radius: 999px;
  background: transparent;
  color: var(--color-text-muted);
  font-family: var(--font-body);
  font-size: 0.85rem;
  font-weight: 600;
  letter-spacing: 0.5px;
  padding: 0.35rem 1.1rem;
  cursor: pointer;
  transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease;
}

.aurea-cookie-ok:hover {
  border-color: var(--color-gold);
  background: rgba(201, 168, 76, 0.1);
  color: var(--color-gold);
}

.aurea-cookie-ok:focus-visible {
  outline: 2px solid var(--color-gold);
  outline-offset: 2px;
}

@media (max-width: 480px) {
  .aurea-cookie-bar {
    left: 0.5rem;
    right: 0.5rem;
    transform: none;
    max-width: none;
    width: auto;
    border-radius: var(--radius, 12px);
    padding: 0.6rem 0.75rem;
  }
  .aurea-cookie-text { font-size: 0.8rem; }
}

/* ---- Checkout consent ---- */
.aurea-consent {
  margin: 1rem 0 1.25rem;
  font-family: var(--font-body);
}

.aurea-consent-label {
  display: flex;
  align-items: flex-start;
  gap: 0.6rem;
  cursor: pointer;
  line-height: 1.45;
}

.aurea-consent-input {
  margin-top: 0.2rem;
  flex-shrink: 0;
  accent-color: var(--color-gold);
  width: 1.05rem;
  height: 1.05rem;
}

.aurea-consent-text {
  font-size: 0.9rem;
  color: var(--color-text);
}

.aurea-consent-text .required {
  color: var(--color-error-border, #c0392b);
  border: 0;
}

.aurea-consent-policy {
  color: var(--color-gold);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.aurea-consent-policy:hover {
  color: var(--color-gold-light);
}

/* ---- Footer privacy link ---- */
.sh-footer-privacy {
  color: var(--color-text-muted);
  text-decoration: none;
  transition: color 0.2s ease;
}

.sh-footer-privacy:hover {
  color: var(--color-gold);
}
