:root {
  --md-primary-fg-color: #455a64;
  --md-accent-fg-color: #ffb300;

  --table-border: rgba(69, 90, 100, 0.14);
  --table-header-bg: rgba(69, 90, 100, 0.06);
  --table-row-alt: rgba(69, 90, 100, 0.025);
  --table-row-hover: rgba(69, 90, 100, 0.045);
  --table-text: #24323a;
  --table-bg: #ffffff;
  --table-radius: 10px;
}

@media screen and (min-width: 76.25em) {
  .md-grid {
    max-width: 76rem;
  }
}

.md-typeset .lead {
  color: #32424a;
  font-size: 1.16rem;
  line-height: 1.75;
  max-width: 54rem;
}

.md-typeset h1,
.md-typeset h2 {
  letter-spacing: -0.02em;
}

.md-typeset h2 {
  margin-top: 2.4rem;
  padding-top: 0.2rem;
}

.md-typeset code {
  border-radius: 0.35rem;
}

.md-typeset img {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 1rem 0 0.6rem;
  border-radius: 10px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.08);
}

.md-typeset .subtle-note {
  color: #51656d;
  font-size: 0.94rem;
  margin-top: -0.2rem;
}

.md-typeset .caption {
  color: #51656d;
  font-size: 0.88rem;
  line-height: 1.55;
  margin: -0.1rem 0 1.4rem;
}

.md-typeset .casebook-table {
  width: min(100%, 36rem);
  margin: 1.15rem 0 1.6rem;
}

.md-typeset .casebook-table .md-typeset__table {
  display: block;
  width: 100%;
  max-width: none;
}

.md-typeset .casebook-table table:not([class]) {
  display: table !important;
  width: 100% !important;
  min-width: 0;
  max-width: none;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
  background: #ffffff;
  border: 1px solid var(--table-border);
  border-radius: 0;
}

.md-typeset .casebook-table table:not([class]) th,
.md-typeset .casebook-table table:not([class]) td {
  padding: 0.75rem 0.9rem;
  border: 0;
  vertical-align: middle;
}

.md-typeset .casebook-table table:not([class]) thead th {
  background: rgba(69, 90, 100, 0.05);
  color: var(--table-text);
  font-weight: 600;
  text-align: center !important;
  border-bottom: 1px solid var(--table-border);
}

.md-typeset .casebook-table table:not([class]) tbody td {
  text-align: center !important;
}

.md-typeset .casebook-table table:not([class]) tbody tr + tr td {
  border-top: 1px solid var(--table-border);
}

.md-typeset__table {
  margin: 1.35rem 0 1.6rem;
}

.md-typeset__scrollwrap {
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
  overflow-x: auto;
}

.md-typeset table {
  width: 100% !important;
  min-width: 420px;
  display: table;
  border-collapse: separate;
  border-spacing: 0;
  background: var(--table-bg);
  color: var(--table-text);
  font-size: 0.92rem;
  line-height: 1.45;
  font-variant-numeric: tabular-nums;
  border: 1px solid var(--table-border);
  border-radius: var(--table-radius);
  overflow: hidden;
}

.md-typeset table thead th {
  background: var(--table-header-bg);
  color: var(--table-text);
  font-weight: 700;
  letter-spacing: 0.01em;
  white-space: nowrap;
  text-align: left;
  padding: 0.8rem 0.95rem;
  border-bottom: 1px solid var(--table-border);
}

.md-typeset table th,
.md-typeset table td {
  padding: 0.8rem 0.95rem;
  vertical-align: middle;
  border: 0;
}

.md-typeset table tbody tr + tr td {
  border-top: 1px solid var(--table-border);
}

.md-typeset table tbody tr:nth-child(even) {
  background: var(--table-row-alt);
}

.md-typeset table tbody tr:hover {
  background: var(--table-row-hover);
}

.md-typeset table thead th:first-child {
  border-top-left-radius: var(--table-radius);
}

.md-typeset table thead th:last-child {
  border-top-right-radius: var(--table-radius);
}

.md-typeset table tbody tr:last-child td:first-child {
  border-bottom-left-radius: var(--table-radius);
}

.md-typeset table tbody tr:last-child td:last-child {
  border-bottom-right-radius: var(--table-radius);
}

.md-typeset table td code,
.md-typeset table th code {
  font-size: 0.82rem;
}

.md-typeset .casebook-table--numeric th,
.md-typeset .casebook-table--numeric td {
  text-align: center !important;
}
