/* Scoped to Operator tables, including restored TablePress and product comparisons. */
:is(.dr-table-wrap, .dr-restored-table-wrap) {
  --dr-table-ink: #172f3d;
  --dr-table-teal: #0d6b69;
  --dr-table-line: #d4e3e7;
  --dr-table-soft: #eef6f6;
  width: 100%; max-width: 100%; min-width: 0; box-sizing: border-box;
  margin: 1.75rem 0; border: 1px solid var(--dr-table-line); border-top: 4px solid var(--dr-table-teal);
  border-radius: 12px; background: #fff; color: var(--dr-table-ink);
  box-shadow: 0 5px 20px rgba(23,47,61,.06); overflow-x: auto;
  font-family: system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
:is(.dr-table-wrap, .dr-restored-table-wrap).dr-table-enhanced { overflow: hidden; }
.dr-table-viewport { max-width: 100%; overflow: auto; overscroll-behavior-x: contain; scrollbar-color: #6a999b #eef6f6; scrollbar-width: thin; }
.dr-table--tall .dr-table-viewport { max-height: 36rem; }
:is(.dr-table-wrap, .dr-restored-table-wrap) table {
  width: 100%; min-width: var(--dr-table-min-width, 0px); max-width: none;
  table-layout: auto; border-collapse: separate; border-spacing: 0; margin: 0;
  font-size: .9rem; line-height: 1.5; color: var(--dr-table-ink);
}
.dr-table-enhanced table { table-layout: fixed; }
:is(.dr-table-wrap, .dr-restored-table-wrap) caption {
  text-align: left; caption-side: top; padding: 1.15rem 1.25rem;
  font-weight: 750; font-size: 1.05rem; line-height: 1.45; color: var(--dr-table-ink); background: #fff;
}
:is(.dr-table-wrap, .dr-restored-table-wrap) caption::before {
  content: "LONGEVITY RESEARCH REVIEW"; display: block; font-size: .64rem; letter-spacing: .13em;
  font-weight: 800; color: var(--dr-table-teal); margin-bottom: .35rem;
}
:is(.dr-table-wrap, .dr-restored-table-wrap) th,
:is(.dr-table-wrap, .dr-restored-table-wrap) td {
  box-sizing: border-box; min-width: 0; padding: .9rem 1rem; vertical-align: top; text-align: left;
  border: 0; border-top: 1px solid var(--dr-table-line); border-right: 1px solid #e7eef0;
  white-space: normal; overflow-wrap: anywhere; word-break: normal;
}
:is(.dr-table-wrap, .dr-restored-table-wrap) tr > :last-child { border-right: 0; }
:is(.dr-table-wrap, .dr-restored-table-wrap) thead th {
  background: var(--dr-table-soft); color: #164c53; font-weight: 700; font-size: .85rem; line-height: 1.5;
}
:is(.dr-table-wrap, .dr-restored-table-wrap) tbody tr:nth-child(even) > td { background: #f7fafb; }
:is(.dr-table-wrap, .dr-restored-table-wrap) tbody th { background: #eef6f6; color: #164c53; font-size: .8rem; font-weight: 700; }
.dr-table--comparison tbody td { text-align: center; vertical-align: middle; }
.dr-table--comparison thead th:not(:first-child) { text-align: center; }
.dr-table--sticky tr > :first-child { position: sticky; left: 0; z-index: 1; background: #eef6f6; box-shadow: 2px 0 0 #d4e3e7; }
.dr-table--tall thead th { position: sticky; top: 0; z-index: 2; }
.dr-table--tall.dr-table--sticky thead th:first-child { z-index: 3; }
:is(.dr-table-wrap, .dr-restored-table-wrap) table img {
  display: block; float: none; width: auto; height: auto; max-width: 100%; max-height: 150px;
  object-fit: contain; margin: .35rem auto; border-radius: 4px;
}
.dr-table-enhanced.dr-table--comparison table img { width: 100%; height: 140px; object-fit: contain; }
:is(.dr-table-wrap, .dr-restored-table-wrap) table p { margin: 0 0 .6rem; }
:is(.dr-table-wrap, .dr-restored-table-wrap) table p:last-child { margin-bottom: 0; }
:is(.dr-table-wrap, .dr-restored-table-wrap) table ul { margin: .25rem 0; padding-left: 1.1rem; }
:is(.dr-table-wrap, .dr-restored-table-wrap) table a { overflow-wrap: anywhere; }
:is(.dr-table-wrap, .dr-restored-table-wrap):not(.dr-table-enhanced) table :is(th,td) { min-width: 8rem; }
:is(.dr-table-wrap, .dr-restored-table-wrap) .dr-button {
  display: inline-flex; justify-content: center; align-items: center; box-sizing: border-box;
  min-height: 48px; width: 100%; max-width: 190px; min-width: 0; padding: .65rem .7rem;
  border: 1px solid #0d6b69; border-radius: 7px; background: #0d6b69; color: #fff;
  text-align: center; text-decoration: none; font-size: .8rem; font-weight: 650; line-height: 1.4;
  white-space: normal; overflow-wrap: normal;
}
:is(.dr-table-wrap, .dr-restored-table-wrap) .dr-button:hover { background: #095452; }
:is(.dr-table-wrap, .dr-restored-table-wrap) .dr-table-ribbon {
  display: inline-block; margin: 0 0 .55rem; padding: .3rem .55rem; border-radius: 4px;
  background: #0d6b69; color: #fff; font-size: .61rem; font-weight: 750; letter-spacing: .035em; line-height: 1.4;
}
.dr-table--selected { background: #eff8f6 !important; }
.dr-table-heading { padding: 1.15rem 1.25rem; background: #fff; overflow-wrap: anywhere; }
.dr-table-heading > p { margin: 0; color: var(--dr-table-ink); font-size: 1.05rem; font-weight: 750; line-height: 1.45; }
.dr-table-brand { display: block; font-size: .64rem; letter-spacing: .13em; font-weight: 800; color: var(--dr-table-teal); margin-bottom: .35rem; }
.dr-table-enhanced caption.dr-table-caption { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.dr-table-toolbar { display: flex; align-items: center; justify-content: space-between; gap: .8rem; padding: .7rem 1rem; background: #f4f8f9; border-bottom: 1px solid var(--dr-table-line); }
.dr-table-toolbar[hidden] { display: none; }
.dr-table-hint { font-size: .75rem; line-height: 1.4; color: #48616c; }
.dr-table-controls { display: flex; flex-shrink: 0; gap: .35rem; }
.dr-table-controls button {
  display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px;
  padding: 0; border: 1px solid #c0d7db; border-radius: 7px; background: #fff; color: #0d6b69;
  font: 700 1.2rem/1 system-ui,sans-serif; cursor: pointer;
}
.dr-table-controls button:disabled { opacity: .35; cursor: default; }
.dr-table-controls button:not(:disabled):hover { background: #e7f2f1; }
.dr-table-viewport:focus-visible, .dr-table-controls button:focus-visible,
:is(.dr-table-wrap, .dr-restored-table-wrap) a:focus-visible { outline: 3px solid #a9620b; outline-offset: -3px; }
@media (max-width: 600px) {
  :is(.dr-table-wrap, .dr-restored-table-wrap) { margin: 1.4rem 0; border-radius: 9px; }
  :is(.dr-table-wrap, .dr-restored-table-wrap) th, :is(.dr-table-wrap, .dr-restored-table-wrap) td { padding: .75rem; }
  :is(.dr-table-wrap, .dr-restored-table-wrap) caption { padding: 1rem; }
  .dr-table-toolbar { padding: .55rem .75rem; }
  .dr-table-heading { padding: 1rem; }
}
@media (prefers-reduced-motion: reduce) { .dr-table-viewport { scroll-behavior: auto; } }
