/* Readable native tables; source values remain in their Joomla articles. */
.content:has(> .sv-activity) { max-width: 100%; }
.sv-activity-toc { padding: 1rem 1.25rem; margin-bottom: 2rem; border: 1px solid var(--line); border-radius: .7rem; background: var(--soft); }
.sv-activity-toc h2 { margin: 0 0 .6rem; font-size: 1.25rem; }
.sv-activity-toc ul { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr)); gap: .4rem 1.5rem; padding-left: 1.25rem; margin: 0; }
.sv-activity-toc a { display: inline-block; padding-block: .3rem; }
.sv-activity-photo { margin: 1.5rem 0 2rem; }
.sv-activity-photo img { display: block; width: 100%; max-height: 30rem; object-fit: cover; border-radius: .7rem; }
.content table:not(.sv-document table) {
  width: 100%;
  min-width: 32rem;
  font-size: 1rem;
  line-height: 1.5;
  table-layout: auto;
}
.content table:not(.sv-document table) :is(th, td) {
  padding: .8rem .9rem;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: none;
}
.content table:not(.sv-document table) :is(th, td) > p {
  margin-block: .15rem;
}
.content table:not(.sv-document table) caption {
  padding: 1rem;
  line-height: 1.5;
}
.content table.sv-readable-table:not(.sv-document table) {
  min-width: var(--sv-table-min-width, 32rem);
}
.sv-readable-table .sv-numeric-cell {
  white-space: nowrap;
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.content table.sv-readable-table :is(th, td)[hidden] {
  display: none !important;
}
.content table.sv-readable-table tbody tr:nth-child(even) :is(th, td) {
  background: #f1f7f7;
}
.content table.sv-readable-table tbody tr:hover :is(th, td) {
  background: #e7f1f2;
}
.sv-table-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: .65rem 1.25rem;
  padding: 1rem;
  margin: 1rem 0 .75rem;
  border: 1px solid var(--control-border, #557b88);
  border-radius: .6rem;
  background: var(--soft, #f5fafb);
  color: var(--ink, #123b4a);
}
.sv-table-controls label {
  display: block;
  margin-bottom: .35rem;
  font-weight: 700;
}
.sv-table-controls select {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-height: 44px;
  padding: .6rem 2rem .6rem .75rem;
  font: inherit;
  line-height: 1.5;
  color: inherit;
  background: var(--white, #fff);
  border: 1px solid var(--control-border, #557b88);
  border-radius: .35rem;
}
.sv-table-controls > div {
  min-width: 0;
  max-width: 100%;
}
.sv-table-controls .sv-table-status {
  flex: 1 1 16rem;
  margin: 0 0 .35rem;
  font-size: 1rem;
  line-height: 1.5;
}
.sv-table-controls select:focus-visible,
:is(.tablewrap, .table-region).sv-scrollable-table:focus-visible {
  outline: 3px solid var(--focus-dark, #005a70);
  outline-offset: 3px;
  box-shadow: 0 0 0 3px var(--focus-light, #fff);
}
:is(.tablewrap, .table-region).sv-scrollable-table {
  overscroll-behavior-inline: contain;
  scrollbar-color: var(--control-border, #557b88) var(--soft, #f5fafb);
  border-inline: 2px solid var(--control-border, #557b88);
}
.sv-table-scroll-hint {
  max-width: 72ch;
  margin: .75rem 0;
  color: var(--ink, #123b4a);
  font-size: 1rem;
  line-height: 1.5;
}
@media (min-width: 481px) {
  .sv-readable-table.sv-sticky-first :is(th, td):first-child {
    position: sticky;
    inset-inline-start: 0;
    z-index: 1;
    background: #fff;
    box-shadow: 2px 0 0 var(--line, #c0d5dc);
  }
  .sv-readable-table.sv-sticky-first thead th:first-child {
    background: var(--soft, #f5fafb);
    z-index: 2;
  }
  .sv-readable-table.sv-sticky-first tbody tr:nth-child(even) :first-child {
    background: #f1f7f7;
  }
}
@media (prefers-contrast: more) {
  .content table.sv-readable-table :is(th, td),
  .sv-table-controls,
  .sv-table-controls select {
    color: #000;
    background: #fff !important;
    border-color: #000;
  }
}
body.contrast .content table.sv-readable-table :is(th, td),
body.contrast .sv-table-controls,
body.contrast .sv-table-controls select {
  color: #000;
  background: #fff !important;
  border-color: #000;
}
@media print {
  .sv-table-controls, .sv-table-scroll-hint { display: none !important; }
  .content table.sv-readable-table :is(th, td)[data-sv-year-hidden] {
    display: table-cell !important;
  }
  .content table.sv-readable-table {
    min-width: 0;
    font-size: 8pt;
  }
  .sv-readable-table.sv-sticky-first :is(th, td):first-child {
    position: static;
    box-shadow: none;
  }
}
