html[data-theme="light"] {
  --pst-color-primary: #7E4DC5;
  --pst-color-secondary: #C79400;
  --pst-color-accent: #009ACF;
  --pst-color-table: #FFFFFF;
  --pst-color-table-row-hover-bg: #9A6FE0;
  --pst-color-table-inner-border: #E5E7EA;
  --pst-color-background: #f6f8fa;
  --pst-color-background-inset: #fff;
}

html[data-theme="dark"] {
  --pst-color-primary: #9A6FE0;
  --pst-color-secondary: #FFC857;
  --pst-color-accent: #00BCFF;
  --pst-color-table: #212830;
  --pst-color-table-row-hover-bg: #7E4DC5;
  --pst-color-table-inner-border: #364150;
  --pst-color-background: #151b23;
  --pst-color-background-inset: #212830;
}

html {
  --pst-color-table-outer-border: var(--pst-color-surface);
  --pst-color-table-heading-bg: var(--pst-color-surface);
  --pst-color-table-row-zebra-high-bg: var(--pst-color-on-background);
  --pst-color-table-row-zebra-low-bg: var(--pst-color-surface);
}

.bd-header {
  position: sticky !important;
}

.bd-article {
  background-color: var(--pst-color-background-inset);
}

/* Table Styles */
table,
.table {
  color: var(--pst-color-table);
  border: 1px solid var(--pst-color-table-outer-border);
  display: table;
  overflow: auto;
  margin-left: auto;
  margin-right: auto;
  --bs-table-bg: transparent;
  --bs-table-color: var(--pst-color-text-base);
}

table th ~ th,
table th ~ td,
table td ~ th,
table td ~ td,
.table th ~ th,
.table th ~ td,
.table td ~ th,
.table td ~ td {
  border-left: 1px solid var(--pst-color-table-inner-border);
}

table thead tr,
.table thead tr {
  background-color: var(--pst-color-table-heading-bg);
  border-bottom: 2px solid var(--pst-color-primary);
}

table tbody tr:nth-child(odd),
.table tbody tr:nth-child(odd) {
  background-color: var(--pst-color-table-row-zebra-low-bg);
}

table tbody tr:nth-child(even),
.table tbody tr:nth-child(even) {
  background-color: var(--pst-color-table-row-zebra-high-bg);
}

table tbody tr:hover,
.table tbody tr:hover {
  background-color: var(--pst-color-table-row-hover-bg);
}

table.table-right {
  margin-right: 0;
}

table.table-left {
  margin-left: 0;
}

/* Table Caption */
table caption {
  text-align: center;
  caption-side: top;
  color: var(--pst-color-text-muted);
}

/* Text Alignment */
th.text-align\:left,
td.text-align\:left {
  text-align: left;
}

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

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

/* Scrollable Table Container */
.pst-scrollable-table-container {
  overflow-x: auto;
}

.img-rounded {
  border-radius: 8px;
}

/* Remove side bar spacing that's causing issues with unnecessary scrollbar display,
 see https://github.com/executablebooks/sphinx-book-theme/issues/732 */
.bd-sidebar-primary div#rtd-footer-container {
  bottom:-1rem;
  margin:-1rem;
  position:fixed;
}

/* Links that open on new tabs */
a[target="_blank"] {
  text-decoration: none;
}
a[target="_blank"]:hover {
  text-decoration: underline;
}
a[target="_blank"]::after {
  font: var(--fa-font-solid);
  content: var(--pst-icon-external-link);
  font-size: 0.75em;
  margin-left: 0.3em;
}
