body {
  min-height: 100vh;
}

.gf-nav {
  background: var(--bs-body-bg);
  z-index: 1030;
}

.prop-card .player {
  font-weight: 600;
}

.prop-table {
  font-size: 0.85rem;
}

.prop-table td,
.prop-table th {
  text-align: center;
  white-space: nowrap;
}

.prop-table td:first-child,
.prop-table th:first-child {
  text-align: left;
}

.price.best {
  background: rgba(25, 135, 84, 0.25);
  color: #4ade80;
  font-weight: 700;
  border-radius: 4px;
  padding: 1px 6px;
}

.price.none {
  color: var(--bs-secondary-color);
}

.ev {
  font-size: 0.7rem;
  line-height: 1.1;
}

.ev-pos {
  color: #4ade80;
}

.ev-neg {
  color: #f87171;
}

.ev-flat {
  color: var(--bs-secondary-color);
}

.ev-badge {
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.06);
}

.ev-badge.ev-pos {
  background: rgba(25, 135, 84, 0.25);
}

.prop-table tr.summary td {
  border-top: 1px solid var(--bs-border-color);
  color: var(--bs-secondary-color);
}

.market-wrap {
  max-height: 75vh;
  border: 1px solid var(--bs-border-color);
  border-radius: 6px;
}

.market-table {
  font-size: 0.85rem;
  margin-bottom: 0;
}

.market-table th,
.market-table td {
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
}

.market-table thead th {
  position: sticky;
  top: 0;
  background: var(--bs-tertiary-bg);
  z-index: 2;
}

.market-table .player-col {
  position: sticky;
  left: 0;
  text-align: left;
  background: var(--bs-body-bg);
  font-weight: 600;
  z-index: 1;
}

.market-table thead .player-col {
  background: var(--bs-tertiary-bg);
  z-index: 3;
}

.market-table .best-col {
  text-align: left;
  border-right: 1px solid var(--bs-border-color);
}

.market-table .empty {
  color: var(--bs-secondary-color);
}

.market-table .bk,
.market-table .side,
.market-table .sep {
  color: var(--bs-secondary-color);
  font-size: 0.72rem;
}

.market-table .pt-diff {
  color: #fbbf24;
  font-size: 0.72rem;
  font-weight: 600;
}

.market-table .line-col {
  font-weight: 700;
}

.market-table tr.alt-first td { border-top: 2px solid var(--bs-border-color); }

.market-table tr.ev-row { --bs-table-bg: #17301f; }
.market-table tr.ev-row-strong { --bs-table-bg: #1d4a2c; }
.market-table tr.ev-row > td.player-col { background: var(--bs-table-bg); }

.market-table .ev-tag { color: #4ade80; font-size: 0.72rem; font-weight: 700; white-space: nowrap; background: rgba(74, 222, 128, 0.15); border-radius: 999px; padding: 1px 7px; margin-left: 4px; }

.tier > summary { cursor: pointer; }

.sharp-dot {
  color: #198754;
  font-size: 0.7em;
  vertical-align: middle;
}
