.veranda-consent {
  position: fixed;
  z-index: 100;
  left: 50%;
  bottom: calc(16px + env(safe-area-inset-bottom));
  transform: translateX(-50%);
  box-sizing: border-box;
  width: min(640px, calc(100% - 24px));
  max-height: calc(100dvh - 32px - env(safe-area-inset-bottom));
  overflow-y: auto;
  padding: 18px 20px;
  border: 1px solid rgba(234, 220, 197, .55);
  border-radius: 20px;
  background: rgba(35, 34, 29, .74);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  box-shadow: 0 8px 28px rgba(0, 0, 0, .2), inset 0 1px 0 rgba(255, 245, 218, .14);
  color: #eadcc5;
  font: 400 14px/1.5 Manrope, sans-serif;
}

.veranda-consent[hidden] { display: none; }
.veranda-consent p { margin: 0 0 12px; color: inherit; font: inherit; }
.veranda-consent__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.veranda-consent button {
  box-sizing: border-box;
  min-height: 44px;
  padding: 9px 16px;
  border: 1px solid rgba(234, 220, 197, .65);
  border-radius: 12px;
  background: rgba(234, 220, 197, .07);
  color: #eadcc5;
  font: 500 14px/1.4 Manrope, sans-serif;
  cursor: pointer;
}
.veranda-consent .veranda-consent__accept {
  background: rgba(214, 178, 110, .22);
  border-color: rgba(237, 204, 146, .85);
}
.veranda-consent a { padding: 10px 2px; color: inherit; font: inherit; text-decoration: underline; text-underline-offset: 3px; }
.veranda-consent button:hover { background: rgba(234, 220, 197, .18); }
.veranda-consent button:focus-visible,
.veranda-consent a:focus-visible { outline: 2px solid #eadcc5; outline-offset: 3px; }

/* Reserve only this panel's space beside the existing cart jar; do not move the jar. */
body.veranda-menu-background .veranda-consent {
  left: 12px;
  transform: none;
  width: min(640px, calc(100% - var(--menu-cart-jar-size) - 36px));
}

@media (max-width: 599px) {
  .veranda-consent { padding: 16px; }
  body.veranda-menu-background .veranda-consent {
    left: 50%;
    transform: translateX(-50%);
    width: calc(100% - 24px);
    bottom: calc(var(--menu-cart-jar-size) + 24px + env(safe-area-inset-bottom));
    max-height: calc(100dvh - var(--menu-cart-jar-size) - 48px - env(safe-area-inset-bottom));
  }
}

@media (min-width: 900px) {
  .veranda-consent {
    width: max-content;
    max-width: min(640px, calc(100% - 24px));
  }
  body.veranda-menu-background .veranda-consent {
    width: max-content;
    max-width: min(640px, calc(100% - var(--menu-cart-jar-size) - 36px));
  }
}
