table.supertable,table.supertable td,table.supertable th {
  border: 1px solid #ddd;
  border-collapse: collapse;
}

table.supertable {
  margin: 1rem 0;
}

table.supertable td,
table.supertable th {
  padding: 0.25rem 0.75rem;
  vertical-align: top;
}

table.supertable td ul,
table.supertable td ol,
table.supertable th ul,
table.supertable th ol {
  margin: 0;
  padding-left: 1.25rem;
}

table.supertable td > ul,
table.supertable td > ol,
table.supertable th > ul,
table.supertable th > ol {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-left: 1.25rem;
}

table.supertable td > ul > li,
table.supertable td > ol > li,
table.supertable th > ul > li,
table.supertable th > ol > li {
  margin: 0;
}

table.supertable td ul,
table.supertable th ul {
  list-style: disc outside;
}

table.supertable td ol,
table.supertable th ol {
  list-style: decimal outside;
}

/* Keep list marker and content together for centered/right-aligned cells. */
table.supertable td.htCenter ul,
table.supertable td.htCenter ol,
table.supertable td.htRight ul,
table.supertable td.htRight ol,
table.supertable th.htCenter ul,
table.supertable th.htCenter ol,
table.supertable th.htRight ul,
table.supertable th.htRight ol {
  list-style-position: inside;
  padding-left: 0;
}

table.supertable td li,
table.supertable th li {
  display: list-item !important;
  position: static !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
}

table.supertable td ul li::before,
table.supertable td ol li::before,
table.supertable th ul li::before,
table.supertable th ol li::before {
  content: none !important;
  display: none !important;
}

table.supertable td ul > br,
table.supertable td ol > br,
table.supertable th ul > br,
table.supertable th ol > br {
  display: none;
}

td.hidden,
th.hidden {
  display: none;
}

td.red,
th.red {
  background-color: #fec5c7;
}

td.green,
th.green {
  background-color: #DBEFDE;
}

/* Legacy class support so older saved tables render with current green. */
td.bg-green-500,
th.bg-green-500,
td.bg-green-brand-light,
th.bg-green-brand-light,
td.bg-green-50,
th.bg-green-50 {
  background-color: #DBEFDE;
}

td.yellow,
th.yellow {
  background-color: #FFF1B0;
}

td.teal-light,
th.teal-light {
  background-color: #DFEFEF;
}

td.teal-medium,
th.teal-medium {
  background-color: #A3D5D6;
}

td.teal-dark,
th.teal-dark {
  background-color: #7C98A4;
}

td.grey,
th.grey {
  background-color: #E5E7EB;
}

td.grey-dark,
th.grey-dark {
  background-color: #9CA3AF;
}

td.htLeft,
th.htLeft {
  text-align: left;
}

td.htCenter,
th.htCenter {
  text-align: center;
}

td.htRight,
th.htRight {
  text-align: right;
}

td.htJustify,
th.htJustify {
  text-align: justify;
}

td.htTop,
th.htTop {
  vertical-align: top !important;
}

td.htMiddle,
th.htMiddle {
  vertical-align: middle !important;
}

td.htBottom,
th.htBottom {
  vertical-align: bottom !important;
}
