/* Shared table treatment for the "weekly results family" of pages: Weekly Results, Projected Results, Alternate
   Picks, and Scorecard. All four render some combination of the same .weeklyResults/#weeklyResultsTable/
   .tableFooterRow markup and the shared weekly_results/{choose_1,choose_3}/_results_table_header, _golfer_name,
   _golfer_earnings, and _footer partials, and each page's own stylesheet independently redeclared large chunks
   of identical styling. Consolidated here; each page's own file keeps only what's genuinely page-specific
   (zebra row color, filter UI, disclaimers, and -- for two of the four -- a different corner-rounding
   mechanism, see below).

   NOT unified despite superficial similarity: Weekly Results and Projected Results use a newer two-element
   overflow:hidden + border-collapse:separate technique for their .weeklyResults wrapper (fixes a corner-radius
   rendering gap -- see their own files' comments for the full history), while Alternate Picks and Scorecard
   still use the older single-element box-shadow-ring + border-collapse:collapse technique. These are genuinely
   different mechanisms, not just different values, so each pair keeps its own wrapper/scroll/table rules below
   rather than being forced into one. Standings uses yet another variant of the box-shadow approach and was
   confirmed to not have the corner-gap issue, so it isn't part of this family at all. */

/* ---------- Shared across all four pages ---------- */

.modernWeeklyResultsPage .weeklyResultsTitle,
.modernProjectedResultsPage .weeklyResultsTitle,
.modernAlternatePicksPage .weeklyResultsTitle,
.modernScorecardPage .weeklyResultsTitle {
  font-size: 20px;
  margin-bottom: 12px;
}

.modernWeeklyResultsPage #weeklyResultsTable thead tr#header,
.modernProjectedResultsPage #projectedResultsTable thead tr#header,
.modernProjectedResultsPage #weeklyResultsTable thead tr#header,
.modernAlternatePicksPage #weeklyResultsNoShowReport thead tr#header,
.modernScorecardPage #weeklyResultsTable thead tr#header {
  background-color: var(--ptfg-navy);
}

.modernWeeklyResultsPage #weeklyResultsTable thead tr#header td,
.modernProjectedResultsPage #projectedResultsTable thead tr#header td,
.modernProjectedResultsPage #weeklyResultsTable thead tr#header td,
.modernAlternatePicksPage #weeklyResultsNoShowReport thead tr#header td,
.modernScorecardPage #weeklyResultsTable thead tr#header td {
  color: #fff;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 11px;
  letter-spacing: 0.2px;
  padding: 3px 4px;
  border: 1px solid var(--ptfg-navy-dark);
  white-space: nowrap;
}

.modernWeeklyResultsPage #weeklyResultsTable thead tr#header td a.sortheader,
.modernProjectedResultsPage #projectedResultsTable thead tr#header td a.sortheader,
.modernProjectedResultsPage #weeklyResultsTable thead tr#header td a.sortheader,
.modernAlternatePicksPage #weeklyResultsNoShowReport thead tr#header td a.sortheader,
.modernScorecardPage #weeklyResultsTable thead tr#header td a.sortheader {
  color: #fff;
}

.modernWeeklyResultsPage #weeklyResultsTable thead tr#header td a.sortheader:hover,
.modernProjectedResultsPage #projectedResultsTable thead tr#header td a.sortheader:hover,
.modernProjectedResultsPage #weeklyResultsTable thead tr#header td a.sortheader:hover,
.modernAlternatePicksPage #weeklyResultsNoShowReport thead tr#header td a.sortheader:hover,
.modernScorecardPage #weeklyResultsTable thead tr#header td a.sortheader:hover {
  color: var(--ptfg-navy-tint);
}

.modernWeeklyResultsPage #weeklyResultsTable tbody td,
.modernProjectedResultsPage #projectedResultsTable tbody td,
.modernProjectedResultsPage #weeklyResultsTable tbody td,
.modernAlternatePicksPage #weeklyResultsNoShowReport tbody td,
.modernScorecardPage #weeklyResultsTable tbody td {
  border: 1px solid var(--ptfg-border);
  padding: 2px 4px;
  font-size: 11px;
}

.modernWeeklyResultsPage #weeklyResultsTable tbody tr.whiteRow td,
.modernProjectedResultsPage #projectedResultsTable tbody tr.whiteRow td,
.modernProjectedResultsPage #weeklyResultsTable tbody tr.whiteRow td,
.modernAlternatePicksPage #weeklyResultsNoShowReport tbody tr.whiteRow td,
.modernScorecardPage #weeklyResultsTable tbody tr.whiteRow td {
  background-color: #fff;
}

.modernWeeklyResultsPage #weeklyResultsTable tbody tr:hover td,
.modernProjectedResultsPage #projectedResultsTable tbody tr:hover td,
.modernProjectedResultsPage #weeklyResultsTable tbody tr:hover td,
.modernAlternatePicksPage #weeklyResultsNoShowReport tbody tr:hover td,
.modernScorecardPage #weeklyResultsTable tbody tr:hover td {
  background-color: var(--ptfg-bg-hover);
}

.modernWeeklyResultsPage #weeklyResultsTable td.number,
.modernProjectedResultsPage #projectedResultsTable td.number,
.modernProjectedResultsPage #weeklyResultsTable td.number,
.modernAlternatePicksPage #weeklyResultsNoShowReport td.number,
.modernScorecardPage #weeklyResultsTable td.number {
  text-align: right;
}

/* Footer/tfoot: background, font-size, text color, white-space, and line-height are identical everywhere --
   border and padding genuinely differ (Weekly Results/Projected Results keep a full border + 3-value padding
   as part of their corner-radius fix; Alternate Picks/Scorecard use border: none), so those two stay local. */
.modernWeeklyResultsPage .tableFooterRow td,
.modernProjectedResultsPage .tableFooterRow td,
.modernAlternatePicksPage #weeklyResultsNoShowReport tfoot td,
.modernScorecardPage .tableFooterRow td {
  background: var(--ptfg-bg-tint);
  font-size: 11px;
  color: var(--ptfg-text-muted);
  white-space: normal;
  line-height: 1.6;
}

/* ---------- Shared by three of the four (Weekly Results, Projected Results, Scorecard -- not Alternate
   Picks, which doesn't render the Starter/Sub/Mulligan header chips or a centerText column) ---------- */

.modernWeeklyResultsPage #weeklyResultsTable thead tr#header td.weeklyResultsSub,
.modernProjectedResultsPage #weeklyResultsTable thead tr#header td.weeklyResultsSub,
.modernScorecardPage #weeklyResultsTable thead tr#header td.weeklyResultsSub {
  background-color: var(--ptfg-green);
  color: #fff;
}

.modernWeeklyResultsPage #weeklyResultsTable thead tr#header td.weeklyResultsMulligan,
.modernProjectedResultsPage #weeklyResultsTable thead tr#header td.weeklyResultsMulligan,
.modernScorecardPage #weeklyResultsTable thead tr#header td.weeklyResultsMulligan {
  background-color: var(--ptfg-red);
  color: #fff;
}

.modernWeeklyResultsPage #weeklyResultsTable thead tr#header td.weeklyResultsNetSubEffect,
.modernProjectedResultsPage #weeklyResultsTable thead tr#header td.weeklyResultsNetSubEffect,
.modernScorecardPage #weeklyResultsTable thead tr#header td.weeklyResultsNetSubEffect {
  color: #c9ccd9;
}

.modernWeeklyResultsPage #weeklyResultsTable td.centerText,
.modernProjectedResultsPage #projectedResultsTable td.centerText,
.modernProjectedResultsPage #weeklyResultsTable td.centerText,
.modernScorecardPage #weeklyResultsTable td.centerText {
  text-align: center;
}

/* ---------- Shared by three of the four (Weekly Results, Projected Results, Alternate Picks -- not Scorecard,
   which has no .highlightRow rule) ---------- */

.modernWeeklyResultsPage #weeklyResultsTable tbody tr.highlightRow td,
.modernProjectedResultsPage #projectedResultsTable tbody tr.highlightRow td,
.modernProjectedResultsPage #weeklyResultsTable tbody tr.highlightRow td,
.modernAlternatePicksPage #weeklyResultsNoShowReport tbody tr.highlightRow td {
  background-color: var(--ptfg-highlight);
}

/* ---------- Shared by three of the four (Weekly Results, Projected Results, Alternate Picks -- not Scorecard,
   which has no country-club filter) ---------- */

.modernWeeklyResultsPage .countryClubFilter,
.modernProjectedResultsPage .countryClubFilter,
.modernAlternatePicksPage .countryClubFilter {
  font-size: 13px;
}

.modernWeeklyResultsPage .countryClubFilterChoices,
.modernProjectedResultsPage .countryClubFilterChoices,
.modernAlternatePicksPage .countryClubFilterChoices {
  border: 1px solid var(--ptfg-input-border);
  border-radius: 6px;
  padding: 3px 6px;
  font-size: 12px;
}

/* Touch-override media query: on touchscreens, let the wide table overflow the page instead of scrolling inside
   its own boxed card. See weekly_results_modern.css for the full WIDE_VIEWPORT_CONTROLLERS rationale. Scorecard
   keeps its own separate block since it also covers .standings and adds one extra property. */
@media (hover: none) and (pointer: coarse) {
  .modernWeeklyResultsPage .weeklyResults,
  .modernProjectedResultsPage .weeklyResults,
  .modernAlternatePicksPage .weeklyResults {
    display: block;
    width: auto;
    max-width: none;
    overflow: visible;
    border: none;
    border-radius: 0;
  }
}

/* ---------- Weekly Results + Projected Results only: the newer overflow:hidden two-element corner-radius-fix
   wrapper. See either page's own file for the full history of why this technique exists. ---------- */

.modernWeeklyResultsPage .weeklyResults,
.modernProjectedResultsPage .weeklyResults {
  display: block;
  width: fit-content;
  max-width: 100%;
  overflow: hidden;
  border: 1px solid var(--ptfg-border);
  border-radius: 10px;
  margin-bottom: 16px;
}

.modernWeeklyResultsPage .weeklyResultsScroll,
.modernProjectedResultsPage .weeklyResultsScroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.modernWeeklyResultsPage .weeklyResults table,
.modernProjectedResultsPage .weeklyResults table {
  float: none;
  width: auto;
  margin: 0;
  border-collapse: separate;
  border-spacing: 0;
}

.modernWeeklyResultsPage #weeklyResultsTable thead tr#header td:first-child,
.modernProjectedResultsPage #projectedResultsTable thead tr#header td:first-child,
.modernProjectedResultsPage #weeklyResultsTable thead tr#header td:first-child {
  border-top-left-radius: 10px;
}

.modernWeeklyResultsPage #weeklyResultsTable thead tr#header td:last-child,
.modernProjectedResultsPage #projectedResultsTable thead tr#header td:last-child,
.modernProjectedResultsPage #weeklyResultsTable thead tr#header td:last-child {
  border-top-right-radius: 10px;
}

.modernWeeklyResultsPage .tableFooterRow td,
.modernProjectedResultsPage .tableFooterRow td {
  border: 1px solid var(--ptfg-border);
  padding: 10px 8px 4px;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
}

/* ---------- Alternate Picks + Scorecard only: the older box-shadow-ring single-element wrapper. ---------- */

.modernAlternatePicksPage .weeklyResults,
.modernScorecardPage .weeklyResults {
  display: block;
  width: fit-content;
  max-width: 100%;
  overflow-x: auto;
  border-radius: 10px;
  box-shadow: 0 0 0 1px var(--ptfg-border);
  -webkit-overflow-scrolling: touch;
  margin-bottom: 16px;
}

.modernAlternatePicksPage .weeklyResults table,
.modernScorecardPage .weeklyResults table {
  float: none;
  width: auto;
  margin: 0;
  border-collapse: collapse;
}
