/* Wrapper controls alignment only */
.dmu-lucide-wrap {
  display: block !important;
}

/* Alignment */
.dmu-lucide-wrap.dmu-align-left { text-align: left !important; }
.dmu-lucide-wrap.dmu-align-center { text-align: center !important; }
.dmu-lucide-wrap.dmu-align-right { text-align: right !important; }

/* Painted box (reads the CSS vars you output inline) */
.dmu-lucide-box {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  background: var(--dmu-bg, transparent) !important;
  border: var(--dmu-border-width, 0px) solid var(--dmu-border-color, transparent) !important;
  border-radius: var(--dmu-radius, 0px) !important;
  padding: var(--dmu-padding, 0px) !important;

  line-height: 0 !important;
}

/* Link wrapper if link is enabled */
.dmu-lucide-link {
  display: inline-flex !important;
  line-height: 0 !important;
}

/* Lucide SVG */
svg.dmu-lucide-icon {
  display: inline-block !important;
  vertical-align: middle !important;

  /* Keep JS sizing authoritative */
  width: auto !important;
  height: auto !important;
}

/* Hover paint */
.dmu-lucide-box:hover {
  background: var(--dmu-bg-hover, var(--dmu-bg, transparent)) !important;
  border-color: var(--dmu-border-color-hover, var(--dmu-border-color, transparent)) !important;
}

/* Hover icon stroke override */
.dmu-lucide-box:hover svg.dmu-lucide-icon {
  stroke: var(--dmu-icon-color-hover, var(--dmu-icon-color, currentColor)) !important;
}