.color-white { color: #fff; }
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: white; border-radius: 10px; }
::-webkit-scrollbar-thumb:hover { background: white; }

.bg-grid {
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  --grid-size: 40px;
  --grid-line-color: rgba(255, 255, 255, 0.08);
  background-image:
    linear-gradient(to right, var(--grid-line-color) 1px, transparent 1px),
    linear-gradient(to bottom, var(--grid-line-color) 1px, transparent 1px);
  background-size: var(--grid-size) var(--grid-size);
  background-position: 0 0;
}

.bg-grid.soft-edges {
  -webkit-mask-image: radial-gradient(ellipse at center, rgba(0,0,0,1) 30%, rgba(0,0,0,0) 75%);
  mask-image: radial-gradient(ellipse at center, rgba(0,0,0,1) 30%, rgba(0,0,0,0) 75%);
}

body.light .bg-grid,
.theme-light .bg-grid {
  --grid-line-color: rgba(0, 0, 0, 0.08);
}

.product-card.editing .product-cta { display: none !important; }

.cursor-pointer { cursor: pointer; }
.product-card.editing .product-status { cursor: pointer; }
.product-card.editing [data-role="image"] { cursor: pointer; }

.product-card [data-role="description"],
.product-card [data-role="reference"] {
  white-space: pre-line;
  word-break: break-word;
  overflow-wrap: anywhere;
}

#mobile-menu {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out, padding 0.3s ease-in-out;
  opacity: 0;
  padding-top: 0;
  padding-bottom: 0;
}

#mobile-menu.mobile-menu-open {
  max-height: 300px;
  opacity: 1;
}