.custom-description {
  ol, ul {
    all: revert; /* Remove all inherited styles */
    padding-left: 20px !important;
    margin: 1em 0 !important;
  }

  li {
    margin-bottom: 0.5em;
    padding-left: 5px;
  }
}

/* ===== ORDERED LISTS (OL) ===== */
.custom-description ol {
  list-style-type: none !important; /* First reset default */
  padding-left: 20px !important;
  counter-reset: item !important;
  margin-bottom: 1em !important;
}

.custom-description ol li {
  display: list-item !important;
  counter-increment: item !important;
  position: relative !important;
  padding-left: 25px !important;
  margin-bottom: 0.5em !important;
}

/* Default Decimal (1, 2, 3) */
.custom-description ol li:before {
  content: counter(item) ". " !important;
  position: absolute !important;
  left: 0 !important;
}

/* Upper Alpha (A, B, C) */
.custom-description ol.upper-alpha li:before,
.custom-description ol[style*="upper-alpha"] li:before {
  content: counter(item, upper-alpha) ". " !important;
}

/* Lower Alpha (a, b, c) */
.custom-description ol.lower-alpha li:before,
.custom-description ol[style*="lower-alpha"] li:before {
  content: counter(item, lower-alpha) ". " !important;
}

/* Upper Roman (I, II, III) */
.custom-description ol.upper-roman li:before,
.custom-description ol[style*="upper-roman"] li:before {
  content: counter(item, upper-roman) ". " !important;
}

/* Lower Roman (i, ii, iii) */
.custom-description ol.lower-roman li:before,
.custom-description ol[style*="lower-roman"] li:before {
  content: counter(item, lower-roman) ". " !important;
}

/* ===== UNORDERED LISTS (UL) ===== */
.custom-description ul {
  list-style-type: none !important;
  padding-left: 20px !important;
  margin-bottom: 1em !important;
}

.custom-description ul li {
  position: relative !important;
  padding-left: 25px !important;
  margin-bottom: 0.5em !important;
}

/* Disc (default bullet •) */
.custom-description ul li:before,
.custom-description ul[style*="disc"] li:before {
  content: "•" !important;
  position: absolute !important;
  left: 0 !important;
}

/* Square (▪) */
.custom-description ul.square li:before,
.custom-description ul[style*="square"] li:before {
  content: "▪" !important;
}

/* Circle (○) */
.custom-description ul.circle li:before,
.custom-description ul[style*="circle"] li:before {
  content: "○" !important;
}


