
body { font-family: Arial, Helvetica, sans-serif; font-size: 13px; }
h1 { font-size: 16px; }
table { border-collapse: collapse; }
th, td { border: 1px solid #999; padding: 2px 6px; text-align: center; white-space: nowrap; }
th { background: #305496; color: white; }
td.left, th.left { text-align: left; }
td.bold { font-weight: bold; }
a { color: inherit; text-decoration: none; }
a:hover { text-decoration: underline; }
.g1  { background: red; color: yellow; font-weight: bold; }
.g2  { background: cyan; color: navy; font-weight: bold; }
.g10 { background: red; color: white; }
.divider { border-left: 3px solid #333; }
.tee-red { color: #c00000; font-weight: bold; }

/* condensed per-round scorecards, appended below a player page's own
   table -- see render_scorecard()/render_scorecards() */
.sc-section-heading { margin-top: 1.5rem; border-top: 3px solid #305496; padding-top: 0.5rem; }
.sc-card-wrap { scroll-margin-top: 64px; margin: 0 0 24px 0; max-width: 480px; }
.sc-card-wrap h3 { font-size: 14px; margin: 0 0 2px 0; }
.sc-card-wrap .sc-sub { font-size: 12.5px; color: #444; margin: 0 0 6px 0; }
.sc-card { border: 2px solid #000; border-collapse: collapse; font-size: 12.5px; background: #fff; color: #000; width: 100%; }
.sc-card th, .sc-card td { border: 1px solid #000; padding: 2px 6px; text-align: center; white-space: nowrap; }
.sc-card thead th { background: #305496; color: #fff; }
.sc-card .si-val { color: #cc0000; font-weight: bold; }
.sc-out td, .sc-in td, .sc-total td { font-weight: bold; background: #f0f0f0; }
.sc-total td { background: #ddd; }

/* shared nav header -- scoped under wl-nav- so it won't fight the real
   website's own CSS once this gets dropped in there */
.wl-nav { position: sticky; top: 0; z-index: 10; background: #305496; color: white; border-bottom: 3px solid #1b2f57; }
.wl-nav-bar { display: flex; align-items: center; gap: 16px; padding: 8px 12px; flex-wrap: wrap; }
.wl-nav-brand { font-weight: bold; margin-right: auto; white-space: nowrap; color: white; text-decoration: none; }
.wl-nav-links { display: flex; gap: 14px; }
.wl-nav-links a { color: white; text-decoration: none; font-size: 13px; padding: 4px 2px; border-bottom: 2px solid transparent; }
.wl-nav-links a:hover, .wl-nav-links a.current { border-bottom-color: #ffeb84; }
.wl-nav-dates { font-size: 13px; padding: 4px 6px; border-radius: 3px; border: 1px solid #1b2f57; }
.wl-nav-toggle { display: none; background: none; border: none; color: white; font-size: 22px; cursor: pointer; line-height: 1; }
@media (max-width: 640px) {
  .wl-nav-toggle { display: block; order: 1; }
  .wl-nav-dates { order: 2; }
  .wl-nav-links { display: none; flex-direction: column; gap: 0; width: 100%; order: 3; }
  .wl-nav-links.open { display: flex; }
  .wl-nav-links a { padding: 10px 4px; border-bottom: 1px solid #4a6bab; }
}
