/* Buyer Product drag. Own styles keep the gesture usable without Site custom code. */
.rm-product-drag-ghost,
.rm-product-drag-spotlight,
.rm-product-drag-ack {
    position: fixed;
    box-sizing: border-box;
    pointer-events: none;
    font-family: inherit;
}
.rm-product-drag-ghost { top: 0; left: 0; z-index: 1022; will-change: transform; max-width: min(280px, 80vw); }
.rm-product-drag-chip {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 8px 16px 8px 8px;
    min-height: 56px;
    border-radius: 15px;
    background: var(--rm-drag-paper, var(--paper, #fff));
    color: var(--rm-drag-ink, var(--black, #171717));
    border: 1px solid rgba(0, 0, 0, .05);
    box-shadow: 0 28px 54px -18px #0009, 0 4px 12px #0003;
    transform: translate(-50%, -50%) rotate(-3deg);
    font-size: .86rem;
    font-weight: 700;
}
.rm-product-drag-chip img { width: 48px; height: 48px; object-fit: cover; border-radius: 11px; flex: none; }
.rm-product-drag-chip span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 190px; }
.rm-product-drag-source { opacity: .35 !important; scale: .96 !important; }
body.menu.rm-product-dragging { cursor: grabbing; user-select: none; -webkit-user-select: none; }
.rm-product-drag-spotlight {
    z-index: 1020;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px dashed rgba(120, 120, 120, .55);
    border-radius: 24px;
    background: rgba(245, 245, 245, .66);
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
    box-shadow: 0 0 0 9999px rgba(0, 0, 0, .5);
    transition: border-color .15s, background-color .15s;
}
.rm-product-drag-spotlight.rm-product-drag-over { border-style: solid; border-color: rgba(110, 110, 110, .6); }
.rm-product-drag-spotlight::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    animation: rm-product-drag-glow 1.6s ease infinite;
}
@keyframes rm-product-drag-glow {
    0%, 100% { box-shadow: 0 0 0 0 #fff, 0 0 46px 12px #fffa; }
    60% { box-shadow: 0 0 0 24px #fff0, 0 0 46px 12px #fff0; }
}
.rm-product-drag-label {
    position: relative;
    padding: 8px;
    color: var(--rm-drag-ink, var(--black, #171717));
    font-size: 1rem;
    font-weight: 800;
    text-align: center;
    max-width: calc(100% - 16px);
}
.rm-product-drag-ack {
    z-index: 1021;
    background: var(--rm-drag-ack, #222);
    color: #fff;
    border-radius: 12px;
    padding: 8px 12px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.35;
    text-align: center;
    max-width: calc(100% - 16px);
}
.rm-product-drag-ack { transform: translateX(-50%); max-width: 270px; }
@media (prefers-reduced-motion: reduce) {
    .rm-product-drag-spotlight { transition: none; }
    .rm-product-drag-spotlight::before { animation: none; }
    .rm-product-drag-chip { transform: translate(-50%, -50%); }
}
