
body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; margin: 20px; background: #f5f5f5; color: #222; }
h1 { color: #AD0000; font-size: 28px; margin: 0 0 6px 0; }
h1 .sport-icon { margin-right: 8px; font-size: 0.95em; vertical-align: -1px; }

h2 { color: #AD0000; }
.sub { font-size: 16px; color: #333; margin: 2px 0; }
table { border-collapse: collapse; width: 100%; background: white; font-size: 14px; margin-top: 10px; }
th, td { border: 1px solid #ddd; padding: 6px 8px; text-align: left; white-space: nowrap; }
th { background: #AD0000; color: white; position: sticky; top: 0; }
tr.seasonhead th { position: static; background: #AD0000; color: white; text-align: left; }
tr:nth-child(even) { background: #fafafa; }
tr:hover { background: #f0f0f0; }
tr.totals td { font-weight: 700; background: #f7eeee; border-bottom: 2px solid #AD0000; }
tr.totals:hover td { background: #f7eeee; }
tr.totals td.label { color: #AD0000; }
tr.career td { font-weight: 700; background: #AD0000; color: #fff; border-color: #8e0000; }
tr.career:hover td { background: #AD0000; }
.win { color: #006600; font-weight: bold; }
.loss { color: #AD0000; font-weight: bold; }
a { color: #AD0000; text-decoration: none; }
a:hover { text-decoration: underline; }
a.boxlink { font-weight: bold; text-decoration: underline; }
.nav { background: #AD0000; padding: 10px 15px; margin: -20px -20px 20px -20px; }
.nav a { color: white; margin-right: 20px; font-weight: bold; }
.nav a:hover { text-decoration: underline; }
.col-date, .col-site, .col-ap { width: 1%; }
table.wide-date .col-date { width: auto; min-width: 26ch; }
.col-att { min-width: 90px; text-align: left; }
.letters a { margin-right: 8px; font-size: 18px; font-weight: bold; }
.record { font-size: 18px; margin: 10px 0 20px 0; }
.tablewrap { overflow-x: auto; }
.footer { margin-top: 24px; color: #666; font-size: 13px; }
.xrow { margin-top: 8px; }
a.xmark { color: #000; display: inline-block; margin-right: 6px; line-height: 0; vertical-align: -3px; }
.xlogo { display: block; }
table.box { width: auto; min-width: 480px; }
td.num { text-align: right; }
th.num { text-align: left; }
table.box tr.teamhead td { background: #1a1a1a; color: white; font-weight: 700; border-color: #1a1a1a; }
table.box tr.totals td { font-weight: 700; background: #f7eeee; }
table.extra { width: auto; min-width: 280px; margin-top: 16px; }
table.extra td:first-child, table.extra th:first-child { text-align: left; }
table.extra td.num { text-align: right; }
table.extra th.num { text-align: left; }
.jerseys { width: max-content; margin: 8px 0 18px; background: transparent; border-collapse: separate; border-spacing: 22px 0; }
table.jerseys { width: max-content; }
.jerseys td { border: none; background: transparent; text-align: center; vertical-align: top; padding: 0 4px; white-space: nowrap; }
.jerseys tr:hover td, .jerseys tr:nth-child(even) td { background: transparent; }
.jerseys svg { display: block; margin: 0 auto; }
.jerseys .yrs { margin-top: 4px; font-size: 14px; color: #333; text-align: center; }
