/* ── 3D model badge on product card ────────────────────────── */
.card-3d-badge {
  position: absolute;
  top: 8px;
  left: 8px;
  background: var(--accent-primary, rgba(26,26,26,.75));
  color: var(--accent-inverted-text, #fff);
  font-size: .68rem;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 20px;
  letter-spacing: .5px;
  pointer-events: none;
  z-index: 2;
}

/* Admin locked buttons */
body.is-admin .btn-cart,
body.is-admin .btn-wish,
body.is-admin .qv-qty-btn,
body.is-admin .qv-cart-action,
body.is-admin .qv-wish-action,
body.is-admin .cart-qty-btn,
body.is-admin .co-checkout-btn,
body.is-admin .panel-move-btn {
    background-color: #4a4a4a !important;
    color: #999 !important;
    border-color: #4a4a4a !important;
    cursor: not-allowed !important;
    opacity: 0.6 !important;
}

#admin-tooltip {
    position: fixed;
    background: #c62828;
    color: #fff;
    padding: 8px 12px;
    border-radius: 4px;
    font-size: 13px;
    font-weight: bold;
    pointer-events: none;
    z-index: 10000;
    box-shadow: 0 4px 6px rgba(0,0,0,0.3);
    animation: fadeOut 2s forwards;
    transform: translate(-50%, -100%);
    margin-top: -10px;
}
@keyframes fadeOut {
    0% { opacity: 1; }
    80% { opacity: 1; }
    100% { opacity: 0; }
}