/* Canonical CSS owner: pools. Historical layers consolidated 2026-08-02. */
.redesigned-pool-view .data-table {
  border-collapse: collapse;

  color: var(--r2-ink);

  font-size: 12.5px;

  white-space: nowrap;
}

.redesigned-pool-view .data-table td {
  height: auto;

  padding: 9px 12px;

  border-top: 0px;

  border-right: 0px;

  border-left: 0px;

  border-image: none;

  border-bottom: 1px solid var(--r2-line-soft);

  background: var(--surface);

  vertical-align: middle;
}

.redesigned-pool-view .data-table th {
  padding: 9px 12px;

  border-top: 0px;

  border-right: 0px;

  border-left: 0px;

  border-image: none;

  border-bottom: 1px solid var(--r2-line-soft);

  vertical-align: middle;

  height: 34px;

  position: sticky;

  top: 0px;

  z-index: 2;

  padding-block: 8px;

  background: var(--table-header);

  color: var(--r2-sub);

  font-size: 12px;

  font-weight: 600;
}

.redesigned-pool-view .data-table th[data-sort]:hover {
  background: var(--table-header);

  color: var(--r2-blue);
}

.redesigned-pool-view .data-table tbody tr:hover td {
  background: var(--table-hover);
}

.redesigned-pool-view .data-table .row-number {
  width: 38px;

  color: var(--r2-faint);

  text-align: left;
}

.redesigned-pool-view .data-table .number {
  text-align: right;

  font-variant-numeric: tabular-nums;
}

.redesigned-pool-view .data-table .muted {
  color: var(--r2-faint);
}

:root[data-theme="dark"] .redesigned-pool-view .data-table .muted,
:root[data-theme="dark"] .redesigned-broken-view .data-table .muted {
  color: var(--text-secondary);
}

.redesigned-pool-view .data-table .up {
  color: var(--r2-up);
}

.redesigned-broken-view .data-table {
  width: 100%;

  border-collapse: collapse;

  color: var(--r2-ink);

  font-size: 12.5px;

  white-space: nowrap;
}

.redesigned-broken-view .data-table td {
  height: auto;

  padding: 9px 12px;

  border-top: 0px;

  border-right: 0px;

  border-left: 0px;

  border-image: none;

  border-bottom: 1px solid var(--r2-line-soft);

  background: var(--surface);

  vertical-align: middle;
}

.redesigned-broken-view .data-table th {
  padding: 9px 12px;

  border-top: 0px;

  border-right: 0px;

  border-left: 0px;

  border-image: none;

  border-bottom: 1px solid var(--r2-line-soft);

  vertical-align: middle;

  height: 34px;

  position: sticky;

  top: 0px;

  z-index: 2;

  padding-block: 8px;

  background: var(--table-header);

  color: var(--r2-sub);

  font-size: 12px;

  font-weight: 600;
}

.redesigned-broken-view .data-table th[data-broken-sort] {
  cursor: pointer;

  user-select: none;
}

.redesigned-broken-view .data-table th[data-broken-sort]:hover {
  color: var(--r2-blue);
}

.redesigned-broken-view .data-table th[data-broken-sort]::after {
  content: "↕";

  margin-left: 3px;

  color: var(--r2-faint);

  font-size: 9px;
}

.redesigned-broken-view .data-table th[data-broken-sort].sort-asc::after {
  content: "↑";

  color: var(--r2-blue);
}

.redesigned-broken-view .data-table th[data-broken-sort].sort-desc::after {
  content: "↓";

  color: var(--r2-blue);
}

.redesigned-broken-view .data-table tbody tr:hover td {
  background: var(--table-hover);
}

.redesigned-broken-view .data-table .row-number {
  width: 38px;

  color: var(--r2-faint);

  text-align: left;
}

.redesigned-broken-view .data-table .number {
  text-align: right;

  font-variant-numeric: tabular-nums;
}

.redesigned-broken-view .data-table .muted {
  color: var(--r2-faint);
}

.redesigned-broken-view .data-table .up {
  color: var(--r2-up);
}

.redesigned-broken-view .data-table .down {
  color: var(--r2-down);
}

.redesigned-down-view .data-table {
  width: 100%;

  border-collapse: collapse;

  color: var(--r2-ink);

  font-size: 12.5px;

  white-space: nowrap;
}

.redesigned-down-view .data-table td {
  height: auto;

  padding: 9px 12px;

  border-top: 0px;

  border-right: 0px;

  border-left: 0px;

  border-image: none;

  border-bottom: 1px solid var(--r2-line-soft);

  background: var(--surface);

  vertical-align: middle;
}

.redesigned-down-view .data-table th {
  padding: 9px 12px;

  border-top: 0px;

  border-right: 0px;

  border-left: 0px;

  border-image: none;

  border-bottom: 1px solid var(--r2-line-soft);

  vertical-align: middle;

  height: 34px;

  position: sticky;

  top: 0px;

  z-index: 2;

  padding-block: 8px;

  background: var(--table-header);

  color: var(--r2-sub);

  font-size: 12px;

  font-weight: 600;
}

.redesigned-down-view .data-table th[data-down-sort] {
  cursor: pointer;

  user-select: none;
}

.redesigned-down-view .data-table th[data-down-sort]:hover {
  color: var(--r2-blue);
}

.redesigned-down-view .data-table th[data-down-sort]::after {
  content: "↕";

  margin-left: 3px;

  color: var(--r2-faint);

  font-size: 9px;
}

.redesigned-down-view .data-table th[data-down-sort].sort-asc::after {
  content: "↑";

  color: var(--r2-blue);
}

.redesigned-down-view .data-table th[data-down-sort].sort-desc::after {
  content: "↓";

  color: var(--r2-blue);
}

.redesigned-down-view .data-table tbody tr:hover td {
  background: var(--table-hover);
}

.redesigned-down-view .data-table .row-number {
  width: 38px;

  color: var(--r2-faint);

  text-align: left;
}

.redesigned-down-view .data-table .number {
  text-align: right;

  font-variant-numeric: tabular-nums;
}

.redesigned-down-view .data-table .down {
  color: var(--r2-down);
}

.redesigned-yesterday-view .data-table {
  width: 100%;

  border-collapse: collapse;

  color: var(--r2-ink);

  font-size: 12.5px;

  white-space: nowrap;
}

.redesigned-yesterday-view .data-table td {
  height: auto;

  padding: 9px 12px;

  border-top: 0px;

  border-right: 0px;

  border-left: 0px;

  border-image: none;

  border-bottom: 1px solid var(--r2-line-soft);

  background: var(--surface);

  vertical-align: middle;
}

.redesigned-yesterday-view .data-table th {
  padding: 9px 12px;

  border-top: 0px;

  border-right: 0px;

  border-left: 0px;

  border-image: none;

  border-bottom: 1px solid var(--r2-line-soft);

  vertical-align: middle;

  height: 34px;

  position: sticky;

  top: 0px;

  z-index: 2;

  padding-block: 8px;

  background: var(--table-header);

  color: var(--r2-sub);

  font-size: 12px;

  font-weight: 600;
}

.redesigned-yesterday-view .data-table th[data-yesterday-sort] {
  cursor: pointer;

  user-select: none;
}

.redesigned-yesterday-view .data-table th[data-yesterday-sort]:hover {
  color: var(--r2-blue);
}

.redesigned-yesterday-view .data-table th[data-yesterday-sort]::after {
  content: "↕";

  margin-left: 3px;

  color: var(--r2-faint);

  font-size: 9px;
}

.redesigned-yesterday-view .data-table th[data-yesterday-sort].sort-asc::after {
  content: "↑";

  color: var(--r2-blue);
}

.redesigned-yesterday-view .data-table th[data-yesterday-sort].sort-desc::after {
  content: "↓";

  color: var(--r2-blue);
}

.redesigned-yesterday-view .data-table tbody tr:hover td {
  background: var(--table-hover);
}

.redesigned-yesterday-view .data-table .row-number {
  width: 38px;

  color: var(--r2-faint);

  text-align: left;
}

.redesigned-yesterday-view .data-table .number {
  text-align: right;

  font-variant-numeric: tabular-nums;
}

.redesigned-yesterday-view .data-table .up {
  color: var(--r2-up);
}

.redesigned-yesterday-view .data-table .down {
  color: var(--r2-down);
}

.redesigned-broken-view .empty-state {
  padding: 36px;

  border: 0px;

  color: var(--r2-faint);

  text-align: center;
}

.redesigned-down-view .empty-state {
  padding: 36px;

  border: 0px;

  color: var(--r2-faint);

  text-align: center;
}

.redesigned-yesterday-view .empty-state {
  padding: 36px;

  border: 0px;

  color: var(--r2-faint);

  text-align: center;
}

.rail-heading h3 {
  color: var(--text-primary);

  font-weight: 740;

  margin: 0px;

  font-size: 14px;

  letter-spacing: 0px;
}

.reason-column {
  min-width: 210px;

  max-width: 300px;

  overflow: hidden;

  text-overflow: ellipsis;
}

.rail-heading > span {
  color: var(--coral);

  font-weight: 750;
}

@media (max-width: 860px) {
  .main-grid {
    grid-template-columns: 1fr;
  }

  .insight-rail {
    border-top: 1px solid var(--line);
  }
}

@media (max-width: 520px) {
  .performance-cards {
    grid-template-columns: 1fr;
  }

  .performance-card {
    min-width: 0px;

    overflow: hidden;
  }
}

.rail-section {
  padding: 15px 14px;

  border-bottom-color: var(--border);
}

:where(#performanceView) .performance-cards {
  display: grid;

  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));

  padding: 0px;

  border-bottom: 1px solid var(--border);
}

.performance-card {
  min-height: 124px;

  padding: 15px 16px;

  border-color: var(--border);

  background: var(--surface);
}

:where(#performanceView) .market-breadth-panel {
  padding: 16px;

  border-bottom-color: var(--border);
}

@media (max-width: 767px) {
  .main-grid {
    display: block;

    min-height: 0px;
  }

  .insight-rail {
    display: grid;

    grid-template-columns: 1fr;

    border-top: 1px solid var(--border);
  }

  .phase-table-frame {
    min-height: 480px;
  }

  .performance-cards {
    grid-template-columns: 1fr 1fr;
  }

  .performance-card {
    min-height: 118px;

    padding: 13px;
  }
}

.sector-mini {
  display: grid;

  gap: 8px;
}

.performance-panel {
  border: 1px solid var(--card-border);

  border-radius: var(--card-radius);

  background: var(--card-bg);

  box-shadow: var(--card-shadow);
}

.insight-rail .rail-section {
  border: 1px solid var(--border);

  border-radius: var(--card-radius);

  background: var(--surface);

  box-shadow: var(--card-shadow);

  overflow: hidden;
}

.insight-rail .rail-section + .rail-section {
  border-top: 1px solid var(--border);
}

#performanceView {
  display: none;
}

#performanceView.active-view {
  display: block;
}

#performanceView .performance-cards {
  gap: 12px;

  margin-bottom: 12px;
}

#performanceView .market-breadth-panel {
  margin: 0px 0px 12px;

  border: 1px solid var(--border);

  border-radius: var(--card-radius);

  background: var(--surface);

  box-shadow: var(--card-shadow);
}

.rail-heading {
  display: flex;

  align-items: center;

  justify-content: space-between;

  margin-bottom: 11px;

  min-height: 42px;
}

:where(#limitPool) .main-grid {
  display: grid;

  min-height: 540px;

  align-items: start;

  gap: 12px;
}

.insight-rail {
  min-width: 0px;

  display: grid;

  border: 0px;

  background: transparent;

  gap: 12px;
}

#brokenView .data-table,
#downView .data-table,
#limitPool .data-table,
#performanceView .data-table,
#yesterdayView .data-table {
  font-size: 12px;
}

#brokenView .data-table thead th,
#downView .data-table thead th,
#performanceView .data-table thead th,
#yesterdayView .data-table thead th {
  height: 32px;

  padding: 6px 9px;

  font-size: 11.5px;
}

#limitPool .data-table thead th {
  height: 36px;

  padding: 0 8px;

  font-size: var(--font-size-caption);
}

#brokenView .data-table tbody td,
#downView .data-table tbody td,
#performanceView .data-table tbody td,
#yesterdayView .data-table tbody td {
  height: 39px;

  padding: 5px 9px;
}

#limitPool .data-table tbody td {
  height: 40px;

  padding: 0 8px;
}

#limitPool .main-grid {
  grid-template-columns: minmax(0px, 1fr) 308px;
}

#limitPool .table-frame {
  border-radius: 10px;

  background: var(--surface);

  box-shadow: var(--shadow-xs);
}

.phase-table-frame {
  max-height: calc(-270px + 100vh);

  border: 1px solid var(--card-border);

  border-radius: 10px;

  background: var(--surface);

  box-shadow: var(--shadow-xs);

  min-height: 300px;
}

.redesigned-pool-view {
  overflow: visible;

  border: 0px;

  border-radius: 0px;

  background: transparent;

  box-shadow: none;
}

.pool-page-head .section-subtitle {
  color: var(--r2-faint);

  font-size: 12px;

  font-weight: 400;
}

.pool-filter-segments .segment span {
  margin-left: 2px;

  color: var(--r2-faint);

  font-size: 11px;

  font-weight: 400;
}

.pool-filter-segments .segment.active span {
  color: var(--r2-blue);
}

.pool-search-field {
  position: relative;

  height: 30px;

  display: flex;

  align-items: center;

  gap: 5px;

  padding: 0px 9px;

  border: 1px solid var(--r2-line);

  border-radius: 7px;

  background: var(--surface);
}

.pool-search-field .lucide {
  width: 14px;

  height: 14px;

  flex: 0 0 14px;

  color: var(--r2-faint);

  stroke-width: 1.8;
}

.pool-search-field input {
  height: 28px;

  padding: 0px;

  border: 0px;

  border-radius: 0px;

  outline: 0px;

  background: transparent;

  color: var(--r2-ink);
}

.pool-search-field:focus-within {
  border-color: var(--r2-blue-line);
}

#limitPool .redesigned-pool-grid {
  min-height: 0px;

  display: grid;

  grid-template-columns: minmax(0px, 1fr) 320px;

  gap: 12px;

  align-items: start;
}

.redesigned-pool-view .pool-table-card {
  width: 100%;

  min-width: 0px;

  max-height: calc(-230px + 100vh);

  overflow: auto;

  border: 1px solid var(--r2-line);

  border-radius: var(--r2-radius);

  background: var(--surface);

  box-shadow: var(--r2-shadow);
}

.pool-state-tag {
  display: inline-block;

  padding: 1.5px 7px;

  border: 1px solid transparent;

  border-radius: 5px;

  font-size: 11px;

  line-height: 1.6;
}

.pool-state-tag.one-word {
  background: rgb(255, 243, 217);

  color: rgb(173, 104, 0);
}

.pool-state-tag.broken {
  background: var(--surface-muted);

  color: rgb(107, 114, 128);
}

.pool-insight-rail {
  min-width: 0px;

  display: flex;

  flex-direction: column;

  gap: 12px;

  border: 0px;

  background: transparent;
}

.pool-insight-rail .rail-section {
  margin: 0px;

  padding: 0px;

  overflow: hidden;

  border: 1px solid var(--r2-line);

  border-radius: var(--r2-radius);

  background: var(--surface);

  box-shadow: var(--r2-shadow);
}

.pool-insight-rail .rail-section + .rail-section {
  border-top: 1px solid var(--r2-line);
}

.pool-insight-rail .rail-heading {
  min-height: 42px;

  margin: 0px;

  padding: 11px 14px;

  border-bottom: 1px solid var(--r2-line-soft);
}

.pool-insight-rail .rail-heading h3 {
  color: var(--r2-ink);

  font-size: 14px;

  font-weight: 700;
}

.pool-insight-rail .rail-heading > span {
  margin-left: auto;

  padding: 2px 7px;

  border-radius: 5px;

  background: var(--surface-muted);

  color: var(--r2-sub);

  font-size: 11px;

  font-weight: 400;
}

.pool-insight-rail .text-button {
  margin-left: auto;

  padding: 3px 0px;

  color: var(--r2-blue);

  font-size: 12px;
}

.pool-side-list {
  display: block;

  padding: 6px 14px 10px;
}

.pool-side-group {
  padding: 7px 0px;

  border-bottom: 1px dashed var(--r2-line-soft);
}

.pool-side-group:last-child {
  border-bottom: 0px;
}

.pool-side-group > div {
  display: flex;

  align-items: center;

  margin-bottom: 4px;

  font-size: 12px;
}

.pool-side-group > div strong {
  color: var(--r2-up);

  font-weight: 700;
}

.pool-side-group > div small {
  margin-left: auto;

  color: var(--r2-faint);

  font-size: 11px;
}

.pool-side-group p {
  margin: 0px;

  overflow: hidden;

  color: var(--r2-sub);

  font-size: 12px;

  line-height: 1.8;

  text-overflow: ellipsis;

  white-space: nowrap;
}

.pool-side-group p em {
  color: var(--r2-faint);

  font-style: normal;
}

.pool-hot-list {
  display: block;

  padding: 6px 14px 10px;
}

.pool-hot-row {
  display: flex;

  align-items: center;

  gap: 8px;

  padding: 5.5px 0px;

  border-bottom: 1px dashed var(--r2-line-soft);

  font-size: 12.5px;
}

.pool-hot-row:last-child {
  border-bottom: 0px;
}

.pool-hot-row strong {
  min-width: 0px;

  flex: 1 1 0%;

  overflow: hidden;

  color: var(--r2-ink);

  font-weight: 600;

  text-overflow: ellipsis;

  white-space: nowrap;
}

.pool-hot-row span {
  color: var(--r2-up);

  font-weight: 700;

  font-variant-numeric: tabular-nums;
}

@media (max-width: 1100px) {
  #limitPool .redesigned-pool-grid {
    grid-template-columns: minmax(0px, 1fr) 280px;
  }
}

@media (max-width: 860px) {
  .pool-page-head {
    flex-wrap: wrap;
  }

  .pool-page-head .section-title-group {
    width: 100%;
  }

  .pool-page-head .toolbar-controls {
    width: 100%;

    margin-left: 0px;
  }

  #limitPool .redesigned-pool-grid {
    grid-template-columns: minmax(0px, 1fr);
  }

  .redesigned-pool-view .pool-table-card {
    max-height: 560px;
  }

  .pool-insight-rail {
    display: grid;

    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 767px), (max-width: 1023px) and (max-height: 600px) {
  .pool-page-head .toolbar-controls {
    flex-wrap: wrap;
  }

  .pool-filter-segments {
    width: 100%;
  }

  .pool-filter-segments .segment {
    min-width: 0px;

    flex: 1 1 0%;

    padding-inline: 6px;
  }

  .pool-search-field {
    min-width: 0px;

    flex: 1 1 0%;
  }

  #limitPool .redesigned-pool-grid {
    width: 100%;

    min-width: 0px;

    display: flex;

    flex-direction: column;
  }

  .redesigned-pool-view .pool-table-card {
    max-height: 520px;
  }

  .pool-insight-rail {
    width: 100%;

    min-width: 0px;

    display: flex;
  }
}

.redesigned-broken-view {
  overflow: visible;

  border: 0px;

  border-radius: 0px;

  background: transparent;

  box-shadow: none;
}

.broken-page-head .section-subtitle b {
  color: var(--r2-faint);

  font-weight: 400;
}

.broken-page-head .toolbar-controls {
  display: flex;

  align-items: center;

  gap: 8px;
}

.broken-search-field input {
  width: 180px;
}

.broken-export-button {
  min-height: 28px;

  height: 28px;

  padding: 0px 9px;

  border: 1px solid var(--r2-line);

  border-radius: 7px;

  background: var(--surface);

  color: rgb(55, 65, 81);

  font-size: 12px;

  font-weight: 500;

  box-shadow: none;
}

.broken-export-button:hover {
  border-color: var(--r2-blue-line);

  color: var(--r2-blue);
}

.redesigned-broken-view .broken-table-card {
  width: 100%;

  min-width: 0px;

  max-height: calc(-172px + 100vh);

  overflow: auto;

  border: 1px solid var(--r2-line);

  border-radius: var(--r2-radius);

  background: var(--surface);

  box-shadow: var(--r2-shadow);
}

.redesigned-broken-view .broken-limit-gap {
  color: var(--r2-amber);

  font-weight: 700;
}

.broken-repeat-tag {
  display: inline-block;

  padding: 1.5px 7px;

  border-radius: 5px;

  background: var(--r2-amber-soft);

  color: var(--r2-amber);

  font-size: 11px;

  line-height: 1.6;
}

@media (max-width: 767px), (max-width: 1023px) and (max-height: 600px) {
  .broken-page-head .toolbar-controls {
    flex-wrap: nowrap;
  }

  .broken-search-field {
    min-width: 0px;

    flex: 1 1 0%;
  }

  .broken-search-field input {
    width: 100%;
  }

  .redesigned-broken-view .broken-table-card {
    max-height: 520px;
  }
}

.redesigned-down-view {
  overflow: visible;

  border: 0px;

  border-radius: 0px;

  background: transparent;

  box-shadow: none;
}

.down-page-head .section-subtitle b {
  color: var(--r2-faint);

  font-weight: 400;
}

.down-page-head .toolbar-controls {
  display: flex;

  align-items: center;

  gap: 8px;
}

.down-sector-cluster {
  display: inline-flex;

  align-items: center;

  min-height: 24px;

  padding: 3px 9px;

  border-radius: 5px;

  background: var(--r2-down-soft);

  color: var(--r2-down);

  font-size: 11px;

  font-weight: 500;

  white-space: nowrap;
}

.down-sector-cluster[hidden] {
  display: none;
}

.down-search-field input {
  width: 180px;
}

.down-export-button {
  min-height: 28px;

  height: 28px;

  padding: 0px 9px;

  border: 1px solid var(--r2-line);

  border-radius: 7px;

  background: var(--surface);

  color: rgb(55, 65, 81);

  font-size: 12px;

  font-weight: 500;

  box-shadow: none;
}

.down-export-button:hover {
  border-color: var(--r2-blue-line);

  color: var(--r2-blue);
}

.redesigned-down-view .down-table-card {
  width: 100%;

  min-width: 0px;

  max-height: none;

  overflow: auto;

  border: 1px solid var(--r2-line);

  border-radius: var(--r2-radius);

  background: var(--surface);

  box-shadow: var(--r2-shadow);
}

@media (max-width: 900px) {
  .down-page-head {
    flex-wrap: wrap;
  }

  .down-page-head .section-title-group {
    width: 100%;
  }

  .down-page-head .toolbar-controls {
    width: 100%;

    margin-left: 0px;
  }

  .down-search-field {
    min-width: 0px;

    flex: 1 1 0%;
  }

  .down-search-field input {
    width: 100%;
  }
}

@media (max-width: 520px) {
  .down-page-head .toolbar-controls {
    flex-wrap: wrap;
  }

  .down-sector-cluster {
    order: -1;
  }

  .down-search-field {
    flex-basis: calc(100% - 76px);
  }
}

.redesigned-yesterday-view {
  overflow: visible;

  border: 0px;

  border-radius: 0px;

  background: transparent;

  box-shadow: none;
}

.yesterday-page-head .section-subtitle b {
  color: var(--r2-faint);

  font-weight: 400;
}

.yesterday-page-head .toolbar-controls {
  display: flex;

  align-items: center;

  gap: 8px;
}

.yesterday-search-field input {
  width: 180px;
}

.yesterday-export-button {
  min-height: 28px;

  height: 28px;

  padding: 0px 9px;

  border: 1px solid var(--r2-line);

  border-radius: 7px;

  background: var(--surface);

  color: rgb(55, 65, 81);

  font-size: 12px;

  font-weight: 500;

  box-shadow: none;
}

.yesterday-export-button:hover {
  border-color: var(--r2-blue-line);

  color: var(--r2-blue);
}

.yesterday-table-card {
  min-width: 0px;

  overflow: hidden;

  border: 1px solid var(--r2-line);

  border-radius: var(--r2-radius);

  background: var(--surface);

  box-shadow: var(--r2-shadow);
}

.yesterday-result-summary {
  display: grid;

  grid-template-columns: repeat(5, minmax(0px, 1fr));

  gap: 1px;

  border-bottom: 1px solid var(--r2-line-soft);

  background: var(--r2-line-soft);
}

.yesterday-summary-cell {
  min-width: 0px;

  display: block;

  padding: 12px 16px;

  border: 0px;

  border-radius: 0px;

  background: var(--surface);

  color: var(--r2-ink);

  text-align: left;

  box-shadow: none;

  transition: background 150ms;
}

.yesterday-summary-cell:hover {
  background: var(--table-hover);
}

.yesterday-summary-cell.active {
  background: var(--r2-blue-soft);

  box-shadow: inset 0 -2px 0 var(--r2-blue);
}

.yesterday-summary-cell .summary-label {
  min-height: 18px;

  display: flex;

  align-items: center;

  gap: 6px;

  color: var(--r2-sub);

  font-size: 12px;
}

.yesterday-summary-cell > strong {
  display: block;

  margin-top: 2px;

  color: var(--r2-ink);

  font-size: 22px;

  font-weight: 800;

  font-variant-numeric: tabular-nums;
}

.yesterday-summary-cell > strong.up {
  color: var(--r2-up);
}

.yesterday-summary-cell > strong.down {
  color: var(--r2-down);
}

.yesterday-summary-cell > strong b {
  font: inherit;
}

.yesterday-summary-cell > strong small {
  color: var(--r2-faint);

  font-size: 11px;

  font-weight: 400;
}

.yesterday-summary-cell > em {
  display: block;

  margin-top: 2px;

  color: var(--r2-faint);

  font-size: 11px;

  font-style: normal;
}

.yesterday-outcome-tag {
  display: inline-block;

  padding: 1.5px 7px;

  border-radius: 5px;

  font-size: 11px;

  font-style: normal;

  font-weight: 500;

  line-height: 1.6;

  white-space: nowrap;
}

.yesterday-height-tag {
  display: inline-block;

  padding: 1.5px 7px;

  border-radius: 5px;

  font-size: 11px;

  font-style: normal;

  font-weight: 500;

  line-height: 1.6;

  white-space: nowrap;

  background: var(--r2-up-soft);

  color: var(--r2-up);
}

.yesterday-outcome-tag.advance,
.yesterday-outcome-tag.positive {
  background: var(--r2-up-soft);

  color: var(--r2-up);
}

.yesterday-outcome-tag.fail {
  border: 1px solid var(--r2-line);

  background: var(--surface-muted);

  color: rgb(75, 85, 99);
}

.yesterday-outcome-tag.broken {
  background: var(--r2-amber-soft);

  color: var(--r2-amber);
}

.yesterday-outcome-tag.down {
  background: var(--r2-down-soft);

  color: var(--r2-down);
}

.redesigned-yesterday-view .yesterday-table-scroll {
  min-height: 0px;

  max-height: calc(-330px + 100vh);

  overflow: auto;

  border: 0px;
}

@media (max-width: 820px) {
  .yesterday-page-head {
    flex-wrap: wrap;
  }

  .yesterday-page-head .section-title-group {
    width: 100%;
  }

  .yesterday-page-head .toolbar-controls {
    width: 100%;

    margin-left: 0px;
  }

  .yesterday-search-field {
    min-width: 0px;

    flex: 1 1 0%;
  }

  .yesterday-search-field input {
    width: 100%;
  }

  .yesterday-result-summary {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }

  .yesterday-summary-cell:last-child:nth-child(2n+1) {
    grid-column: 1 / -1;
  }

  .redesigned-yesterday-view .yesterday-table-scroll {
    max-height: none;
  }
}

@media (max-width: 420px) {
  .yesterday-summary-cell {
    padding: 10px 12px;
  }

  .yesterday-summary-cell > strong {
    font-size: 19px;
  }
}

.redesigned-performance-view {
  overflow: visible;

  padding: 0px;

  border: 0px;

  border-radius: 0px;

  background: transparent;

  color: var(--r2-ink);

  box-shadow: none;
}

.performance-page-head {
  margin-bottom: 12px;
}

.performance-page-head .section-subtitle b {
  font-weight: 400;
}

.redesigned-performance-view .performance-cards {
  display: grid;

  grid-template-columns: repeat(5, minmax(0px, 1fr));

  gap: 12px;

  margin: 0px 0px 12px;

  padding: 0px;

  border: 0px;
}

.performance-stage-card {
  min-width: 0px;

  padding: 14px 16px;

  border: 1px solid var(--r2-line);

  border-radius: var(--r2-radius);

  background: var(--surface);

  box-shadow: var(--r2-shadow);
}

.performance-stage-label {
  min-width: 0px;

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 8px;

  color: var(--r2-sub);

  font-size: 12px;
}

.performance-stage-label > span {
  min-width: 0px;

  overflow: hidden;

  text-overflow: ellipsis;

  white-space: nowrap;
}

.performance-status-tag {
  flex: 0 0 auto;

  display: inline-block;

  padding: 1.5px 7px;

  border: 1px solid transparent;

  border-radius: 5px;

  font-size: 11px;

  font-style: normal;

  font-weight: 500;

  line-height: 1.6;
}

.performance-status-tag.is-neutral {
  border-color: var(--r2-line);

  background: var(--surface-muted);

  color: rgb(75, 85, 99);
}

.performance-status-tag.is-warning {
  background: var(--r2-amber-soft);

  color: var(--r2-amber);
}

.performance-status-tag.is-active {
  background: var(--r2-up-soft);

  color: var(--r2-up);
}

.performance-stage-rate {
  display: block;

  margin-top: 6px;

  color: var(--r2-up);

  font-size: 26px;

  font-weight: 800;

  font-variant-numeric: tabular-nums;

  letter-spacing: 0px;
}

.performance-stage-rate.is-neutral {
  color: var(--r2-faint);
}

.performance-stage-rate.is-warning {
  color: rgb(217, 119, 6);
}

.performance-stage-rate.is-active {
  color: var(--r2-up);
}

.performance-stage-count {
  display: block;

  margin-top: 4px;

  color: var(--r2-faint);

  font-size: 11.5px;
}

.performance-stage-track {
  height: 6px;

  margin-top: 10px;

  overflow: hidden;

  border-radius: 3px;

  background: var(--surface-muted);
}

.performance-stage-track i {
  display: block;

  height: 100%;

  border-radius: 3px;

  background: var(--r2-up);

  transition: width 620ms;
}

.performance-stage-track i.is-neutral {
  background: var(--r2-faint);
}

.performance-stage-track i.is-warning {
  background: rgb(217, 119, 6);
}

.performance-stage-track i.is-active {
  background: var(--r2-up);
}

.performance-empty-state {
  grid-column: 1 / -1;

  padding: 34px;

  border: 1px solid var(--r2-line);

  border-radius: var(--r2-radius);

  background: var(--surface);

  color: var(--r2-faint);

  text-align: center;
}

.performance-insight-grid {
  display: grid;

  grid-template-columns: minmax(0px, 1fr) 320px;

  gap: 12px;

  align-items: start;
}

.performance-panel-card {
  min-width: 0px;

  overflow: hidden;

  border: 1px solid var(--r2-line);

  border-radius: var(--r2-radius);

  background: var(--surface);

  box-shadow: var(--r2-shadow);
}

.redesigned-performance-view .market-breadth-panel {
  margin: 0px;

  padding: 0px;

  background: var(--surface);
}

.performance-panel-head {
  min-height: 43px;

  display: flex;

  align-items: center;

  gap: 8px;

  padding: 11px 14px;

  border-bottom: 1px solid var(--r2-line-soft);
}

.performance-panel-head h3 {
  margin: 0px;

  color: var(--r2-ink);

  font-size: 14px;

  font-weight: 700;
}

.performance-date-tag {
  margin-left: auto;

  padding: 2px 7px;

  border-radius: 5px;

  background: var(--surface-muted);

  color: var(--r2-sub);

  font-size: 11px;

  white-space: nowrap;
}

.performance-width-box {
  padding: 14px 16px;
}

.performance-width-summary {
  display: flex;

  justify-content: space-between;

  gap: 16px;

  color: var(--r2-ink);

  font-size: 12.5px;
}

.performance-width-summary b {
  font-weight: 700;

  font-variant-numeric: tabular-nums;
}

.performance-width-bar {
  height: 22px;

  display: flex;

  margin-top: 8px;

  overflow: hidden;

  border-radius: 6px;

  background: var(--surface-muted);
}

.performance-width-bar i {
  display: block;

  width: 0px;

  transition: width 760ms;
}

.performance-width-bar .breadth-up {
  background: var(--r2-up);
}

.performance-width-bar .breadth-flat {
  background: rgb(170, 179, 188);
}

.performance-width-bar .breadth-down {
  background: var(--r2-down);
}

.performance-width-legend {
  display: flex;

  align-items: center;

  gap: 18px;

  margin-top: 8px;

  color: var(--r2-sub);

  font-size: 11.5px;
}

.performance-width-legend > span {
  white-space: nowrap;
}

.performance-width-legend b {
  font-weight: 400;
}

.performance-width-legend i {
  width: 10px;

  height: 10px;

  display: inline-block;

  margin-right: 4px;

  border-radius: 2px;

  vertical-align: -1px;
}

.performance-width-legend .up-swatch {
  background: var(--r2-up);
}

.performance-width-legend .flat-swatch {
  background: rgb(170, 179, 188);
}

.performance-width-legend .down-swatch {
  background: var(--r2-down);
}

.performance-width-warning {
  margin-left: auto;

  color: var(--r2-amber);
}

.performance-conclusion {
  padding: 14px 16px;

  color: var(--r2-sub);

  font-size: 12.5px;

  line-height: 2;
}

.performance-conclusion b {
  color: var(--r2-ink);

  font-weight: 700;
}

.performance-conclusion b.is-active,
.performance-conclusion b.up {
  color: var(--r2-up);
}

.performance-conclusion b.is-warning {
  color: var(--r2-amber);
}

.performance-conclusion b.is-neutral {
  color: var(--r2-faint);
}

@media (max-width: 1180px) {
  .redesigned-performance-view .performance-cards {
    grid-template-columns: repeat(3, minmax(0px, 1fr));
  }

  .performance-insight-grid {
    grid-template-columns: minmax(0px, 1fr);
  }
}

@media (max-width: 767px) {
  .redesigned-performance-view .performance-cards {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }

  .performance-stage-card {
    min-height: 0px;

    padding: 12px;
  }

  .performance-width-legend,
  .performance-width-summary {
    flex-wrap: wrap;
  }

  .performance-width-warning {
    width: 100%;

    margin-left: 0px;
  }
}

@media (max-width: 420px) {
  .redesigned-performance-view .performance-cards {
    grid-template-columns: minmax(0px, 1fr);
  }
}

@media (max-width: 767px) {
  .redesigned-performance-view {
    padding: 0px;
  }
}

:is(#limitTable, #brokenTable, #downTable, #yesterdayTable) {
  width: 100%;

  min-width: var(--table-wide);

  table-layout: auto;
}

#limitPool #limitTable {
  min-width: var(--table-wide);

  width: 100%;

  table-layout: auto;
}

#limitPool #limitTable.tbl thead th,
#limitPool .pool-table-card .data-table thead th {
  height: 36px;

  padding: 0 8px;

  font-size: var(--font-size-caption);
}

#limitPool #limitTable.tbl tbody td,
#limitPool .pool-table-card .data-table tbody td {
  height: 40px;

  padding: 0 8px;
}

@media (min-width: 1440px) {
  #limitPool #limitTable {
    min-width: 0;

    table-layout: fixed;
  }

  #limitPool #limitTable thead th {
    width: auto;

    min-width: 0;
  }

  #limitPool #limitTable thead th.row-number {
    width: 36px;
  }

  #limitPool.redesigned-pool-view .pool-table-card.tbl-wrap {
    overflow-x: hidden;

    overflow-y: auto;
  }

  #limitPool #limitTable .reason-column {
    min-width: 0;

    overflow: hidden;

    white-space: nowrap;
  }

  #limitPool #limitTable .pool-reason-cell {
    overflow: hidden;

    text-overflow: ellipsis;

    white-space: nowrap;
  }
}

#brokenTable,
#downTable,
#limitTable,
#yesterdayTable {
  min-width: 100%;
}

:is(#limitTable, #brokenTable, #downTable, #yesterdayTable) .row-number {
  padding-right: 8px;

  padding-left: 12px;

  text-align: left;
}

:is(#limitTable, #brokenTable, #downTable, #yesterdayTable) .reason-column {
  width: auto;

  min-width: var(--col-text);

  text-align: left;

  white-space: normal;
}

:is(#limitTable, #brokenTable, #downTable, #yesterdayTable) .pool-reason-cell {
  text-align: left;

  overflow: hidden;

  color: var(--r2-sub);

  font-size: 12px;

  line-height: 1.5;

  text-overflow: ellipsis;

  white-space: nowrap;
}

@media (max-width: 1200px) {
  #limitTable {
    min-width: 1080px;
  }

  #brokenTable {
    min-width: 920px;
  }

  #downTable {
    min-width: 780px;
  }

  #yesterdayTable {
    min-width: 720px;
  }
}

@media (max-width: 767px) {
  :is(#limitTable, #brokenTable, #downTable, #yesterdayTable) .pool-reason-cell {
    white-space: normal;
  }
}

.btn {
  display: inline-flex;

  align-items: center;

  gap: 5px;

  border: 1px solid var(--line);

  border-radius: 7px;

  padding: 6px 13px;

  font-size: 12.5px;

  background: var(--surface);

  color: rgb(55, 65, 81);

  font-weight: 500;
}

.btn:hover {
  border-color: var(--blue-line);

  color: var(--blue);
}

.btn.sm {
  padding: 4px 9px;

  font-size: 12px;
}

.up {
  color: var(--coral) !important;
}

.down {
  color: var(--green) !important;
}

.tier .lab .rate {
  font-size: 10.5px;

  margin-top: 6px;

  color: var(--sub);
}

.tier .lab .rate b {
  font-weight: 700;
}

.perf-cards {
  display: grid;

  grid-template-columns: repeat(5, 1fr);

  gap: 12px;

  margin-bottom: 12px;
}

.perf-card .rate {
  font-size: 26px;

  font-weight: 800;

  margin-top: 6px;

  font-variant-numeric: tabular-nums;
}

.width-bar .up {
  background: rgb(224, 69, 54);
}

:is(#limitPool, #brokenView, #downView, #yesterdayView) .tbl-wrap {
  max-height: var(--pool-table-max-height);

  overflow: auto;
}

@media (min-width: 768px) {
  #yesterdayView.active-view {
    min-height: 0px;

    flex: 1 1 auto;

    display: flex;

    flex-direction: column;

    overflow: hidden;
  }

  #yesterdayView .yesterday-result-summary,
  #yesterdayView > .yesterday-page-head {
    flex: 0 0 auto;
  }

  #yesterdayView .yesterday-table-card {
    min-height: 0px;

    flex: 1 1 auto;

    display: flex;

    flex-direction: column;
  }

  #yesterdayView .yesterday-table-scroll {
    min-height: 0px;

    max-height: none;

    flex: 1 1 auto;
  }
}

:root[data-theme="dark"] :is(.account-role-badge, #maxHeight, .pool-state-tag) {
  border-color: var(--border);

  background: var(--surface-subtle);

  color: var(--text-secondary);
}

:root[data-theme="dark"] :is(.account-role-badge.vip-role-badge, .pool-state-tag.one-word) {
  border-color: var(--warning-line);

  background: var(--warning-soft);

  color: var(--warning-color);
}

:root[data-theme="dark"] :is(.performance-card) {
  border-color: var(--line-soft);

  background: var(--surface);
}

:root[data-theme="dark"] :is(#brokenView .pool-search-field, #downView .pool-search-field, #yesterdayView .pool-search-field) {
  border-color: var(--border);

  background: var(--surface);
}

:root[data-theme="dark"] :is(#brokenView .pool-search-field input, #downView .pool-search-field input, #yesterdayView .pool-search-field input) {
  background: transparent;

  color: var(--text-primary);
}

:root[data-theme="dark"] #yesterdayView :is(.yesterday-table-card, .yesterday-summary-cell) {
  border-color: var(--border);

  background: var(--surface);

  color: var(--text-primary);
}

:root[data-theme="dark"] #yesterdayView .yesterday-summary-cell.active,
:root[data-theme="dark"] #yesterdayView .yesterday-summary-cell:hover {
  background: var(--action-soft);
}

:root[data-theme="dark"] #yesterdayView .yesterday-outcome-tag.fail {
  border-color: var(--border);

  background: var(--surface-muted);

  color: var(--text-secondary);
}

:root[data-theme="dark"] #performanceView :is(.performance-status-tag.is-neutral, .performance-date-tag, .performance-stage-track, .performance-width-bar) {
  border-color: var(--border);

  background: var(--surface-muted);

  color: var(--text-secondary);
}

:root[data-theme="dark"] #performanceView :is(.performance-empty-state, .performance-panel-card, .market-breadth-panel) {
  border-color: var(--border);

  background: var(--surface);

  color: var(--text-primary);
}

.pool-search-field:not(.search) input {
  font-size: 12px;
}

.ladder-mini.pool-side-list {
  display: block;
}

/* Mobile pool workspaces keep filters usable and tables locally horizontal. */
@media (max-width: 767px) {
  :is(#limitPool, #brokenView, #downView, #yesterdayView, #performanceView) {
    padding-inline: 0;
  }

  :is(.pool-page-head, .broken-page-head, .down-page-head, .yesterday-page-head) {
    gap: var(--space-8);
  }

  body.mobile-shell :is(.pool-page-head, .broken-page-head, .down-page-head, .yesterday-page-head) .toolbar-controls {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--space-8);
    overflow: visible;
  }

  .pool-page-head .pool-filter-segments {
    width: 100%;
    min-width: 0;
    grid-column: 1 / -1;
  }

  .pool-page-head .pool-filter-segments .segment {
    min-width: 0;
    flex: 1 1 0;
    padding-inline: var(--space-8);
  }

  :is(.pool-page-head, .broken-page-head, .down-page-head, .yesterday-page-head) .pool-search-field {
    width: 100%;
    min-width: 0;
  }

  :is(.pool-page-head, .broken-page-head, .down-page-head, .yesterday-page-head) .pool-search-field input {
    width: 100%;
    min-width: 0;
    flex: 1 1 auto;
  }

  #limitPool .redesigned-pool-grid {
    display: flex;
    flex-direction: column;
    gap: var(--space-12);
  }

  :is(#limitPool, #brokenView, #downView, #yesterdayView) .tbl-wrap {
    min-height: var(--mobile-table-min-height);
    max-height: none;
    overflow-x: auto;
    overflow-y: visible;
  }

  #limitPool .pool-insight-rail {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-12);
  }

  #limitPool .pool-insight-rail .rail-section {
    min-height: 0;
  }

  #yesterdayView .yesterday-result-summary {
    display: flex;
    overflow-x: auto;
    scrollbar-width: none;
  }

  #yesterdayView .yesterday-summary-cell {
    min-width: var(--mobile-summary-card-width);
    flex: 0 0 auto;
  }
}
