/* 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).

   All four pages now share the same wrapper technique: an outer .weeklyResults (overflow:hidden + border +
   border-radius, clips content to the rounded rect) around an inner .weeklyResultsScroll (overflow-x:auto,
   does the actual horizontal scrolling) around the table (border-collapse:separate so cell borders don't
   fight the wrapper's clipping). This was originally built for Weekly Results/Projected Results only, to fix a
   corner-radius rendering gap that the older single-element box-shadow-ring + border-collapse:collapse
   technique had; Alternate Picks and Scorecard were upgraded to match rather than the reverse, since this is
   the version with the fix. Each page's own .rhtml now has the same .weeklyResults > .weeklyResultsScroll >
   table markup. 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;
  }
}

/* ---------- Shared across all four: the overflow:hidden two-element corner-radius-fix wrapper (outer clips to
   the rounded rect, inner does the horizontal scrolling). Alternate Picks and Scorecard's tfoot cells have no
   border (see the footer rule above), so they don't need their own bottom-corner-radius rule -- the wrapper's
   overflow:hidden clips their footer's square corner cleanly on its own. Weekly Results/Projected Results' tfoot
   cells DO have a border, so their footer needs an explicit bottom-radius to avoid that border's own square
   corner poking through the wrapper's clip. ---------- */

.modernWeeklyResultsPage .weeklyResults,
.modernProjectedResultsPage .weeklyResults,
.modernAlternatePicksPage .weeklyResults,
.modernScorecardPage .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,
.modernAlternatePicksPage .weeklyResultsScroll,
.modernScorecardPage .weeklyResultsScroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.modernWeeklyResultsPage .weeklyResults table,
.modernProjectedResultsPage .weeklyResults table,
.modernAlternatePicksPage .weeklyResults table,
.modernScorecardPage .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,
.modernAlternatePicksPage #weeklyResultsNoShowReport thead tr#header td:first-child,
.modernScorecardPage #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,
.modernAlternatePicksPage #weeklyResultsNoShowReport thead tr#header td:last-child,
.modernScorecardPage #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;
}
