.yipin-consent-banner {
  position: fixed;
  right: auto;
  left: 16px;
  bottom: 22px;
  z-index: 120;
  width: min(380px, calc(100vw - 32px));
  padding: 22px;
  border: 1px solid rgba(190, 156, 91, .5);
  border-radius: 16px;
  background: rgba(35, 13, 18, .98);
  color: #fffaf1;
  box-shadow: 0 18px 55px rgba(15, 4, 7, .36);
  font-family: inherit;
  pointer-events: none !important;
  transition: opacity .2s ease, transform .2s ease;
}

.yipin-consent-copy strong { display: block; margin-bottom: 7px; font-size: 1.05rem; }
.yipin-consent-copy p { margin: 0; color: rgba(255, 250, 241, .82); font-size: .91rem; line-height: 1.65; }
.yipin-consent-copy a { display: inline-block; margin-top: 8px; color: #e8c98b; font-size: .86rem; }
.yipin-consent-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 18px; }
.yipin-consent-actions button { min-height: 42px; padding: 9px 16px; border-radius: 999px; font: inherit; font-weight: 700; cursor: pointer; }
.yipin-consent-copy a,
.yipin-consent-actions button { pointer-events: auto; }
.yipin-consent-secondary { border: 1px solid rgba(255, 255, 255, .35); background: transparent; color: #fffaf1; }
.yipin-consent-primary { border: 1px solid #c8a45c; background: #c8a45c; color: #251016; }
.yipin-privacy-link { display: inline-block; margin-top: 10px; color: inherit; font-size: .82rem; opacity: .78; }
.yipin-cookie-settings { margin: 10px 0 0 12px; padding: 0; border: 0; background: transparent; color: inherit; font: inherit; font-size: .82rem; text-decoration: underline; opacity: .78; cursor: pointer; }

.cart-open .yipin-consent-banner,
.checkout-open .yipin-consent-banner,
.product-open .yipin-consent-banner {
  display: none !important;
}

@media (max-width: 640px) {
  .yipin-consent-banner { left: 16px; bottom: 16px; padding: 18px; }
  .yipin-consent-actions { flex-direction: column-reverse; }
  .yipin-consent-actions button { width: 100%; }
}
