/* BUYAMTO Pulse: compact bottom-corner notifications. Teal / burnt orange / neutral; soft rounded corners. */
.bpulse { --bp-accent: #0E7C86; --bp-accent2: #C94F0A; --bp-radius: 18px; --bp-x: 20px; --bp-y: 20px; --bp-bg: #fff; --bp-text: #1A1815; --bp-img: 56px; --bp-fs: 14px; --bp-font: 'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; position: fixed; z-index: 99980; bottom: var(--bp-y); left: var(--bp-x); max-width: min(360px, calc(100vw - 2 * var(--bp-x))); font: var(--bp-fs)/1.4 var(--bp-font); color: var(--bp-text); opacity: 0; transform: translateY(14px); pointer-events: none; }
.bpulse--bottom-right { left: auto; right: var(--bp-x); }
.bpulse.is-in { opacity: 1; transform: none; pointer-events: auto; }
.bpulse.is-out { opacity: 0; transform: translateY(8px); pointer-events: none; }
.bpulse--anim-slide { transition: opacity .3s ease, transform .35s cubic-bezier(.2, .8, .2, 1); }
.bpulse--anim-fade { transform: none; transition: opacity .3s ease; }
.bpulse--anim-none { transition: none; transform: none; }
.bpulse *, .bpulse *::before, .bpulse *::after { box-sizing: border-box; }

.bpulse__card { display: flex; align-items: center; gap: 12px; padding: 10px 38px 10px 10px; background: var(--bp-bg); border: 1px solid #E7E1D4; border-left: 4px solid var(--bp-accent); border-radius: var(--bp-radius); box-shadow: 0 10px 30px rgba(26, 24, 21, .16), 0 2px 6px rgba(26, 24, 21, .08); color: inherit; text-decoration: none; }
.bpulse[data-type="real"] .bpulse__card { border-left-color: var(--bp-accent); }
.bpulse[data-type="highlight"] .bpulse__card { border-left-color: var(--bp-accent2); }
.bpulse[data-type="custom"] .bpulse__card { border-left-color: #6B655B; }
.bpulse[data-type="virtual"] .bpulse__card { border-left-color: var(--bp-accent2); }
a.bpulse__card:hover { box-shadow: 0 14px 34px rgba(26, 24, 21, .2), 0 2px 6px rgba(26, 24, 21, .08); }
a.bpulse__card:focus-visible, .bpulse__x:focus-visible { outline: 3px solid #F2A672; outline-offset: 2px; }
.bpulse__img { width: var(--bp-img); height: var(--bp-img); flex: none; border-radius: calc(var(--bp-radius) - 6px); object-fit: cover; background: #EFEDE8; display: block; }
.bpulse__body { display: flex; flex-direction: column; min-width: 0; gap: 1px; }
.bpulse__title { font-weight: 700; font-size: .95em; letter-spacing: -.01em; }
.bpulse__text { font-size: .95em; overflow-wrap: anywhere; }
.bpulse__meta { font-size: .8em; color: #6B655B; }
.bpulse__x { position: absolute; top: 6px; right: 6px; width: 26px; height: 26px; padding: 0; margin: 0; border: 0; border-radius: 50%; background: transparent; color: #8A8478; font-size: 18px; line-height: 26px; text-align: center; cursor: pointer; min-height: 0; box-shadow: none; }
.bpulse__x:hover { background: #F1EDE2; color: #1A1815; }

.bpulse--compact .bpulse__card { padding: 7px 34px 7px 8px; gap: 9px; }
.bpulse--compact .bpulse__img { width: calc(var(--bp-img) * .72); height: calc(var(--bp-img) * .72); }
.bpulse--compact { font-size: calc(var(--bp-fs) - 1px); }

/* Keep clear of the Add to Cart bar on phones/tablets, and of the chat button if it sits in the same corner. */
@media (max-width: 849px) { .bpulse--product { bottom: calc(var(--bp-y) + 70px); } }
.bpulse--above-chat { bottom: calc(var(--bp-y) + 76px); }
@media (max-width: 849px) { .bpulse--product.bpulse--above-chat { bottom: calc(var(--bp-y) + 146px); } }

@media (max-width: 600px) {
	.bpulse--m-bar { left: 10px; right: 10px; max-width: none; bottom: calc(10px + env(safe-area-inset-bottom)); }
	.bpulse--m-bar.bpulse--product { bottom: calc(80px + env(safe-area-inset-bottom)); }
	.bpulse--m-bar .bpulse__card { width: 100%; }
	.bpulse--m-hidden { display: none; }
}
@media (prefers-reduced-motion: reduce) { .bpulse { transition: opacity .01s !important; transform: none !important; } }
