/*
 * STHSMain.css — hockeysim-authored stylesheet.
 *
 * The original STHS stylesheet was not included in the league export, so the
 * pages referenced it but rendered unstyled. This is a replacement written for
 * hockeysim: it targets the class names the exported pages already use, so no
 * page markup had to change. It is our own work, not STHS's asset.
 *
 * Load order: the pages link this file, then STHSMain-CSSOverwrite.css (kept
 * for local overrides). Widths follow the export's convention: STHSW<n> is an
 * n-pixel column width; STHSWP<n> is an n-percent width.
 */

:root {
  --ink: #16202c;
  --ink-soft: #4a5a6a;
  --line: #d3dbe3;
  --band: #14213d;      /* nav + table headers */
  --band-ink: #f2f6fb;
  --accent: #b3001b;    /* sparing red accent */
  --link: #0b3d91;
  --zebra: #f4f7fa;
  --hover: #e9eff6;
  --page: #ffffff;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  padding: 0 0 3rem;
  background: var(--page);
  color: var(--ink);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.4;
}

a { color: var(--link); text-decoration: none; }
a:hover { text-decoration: underline; }

/* Not-yet-available links, disabled by the neutralizer in STHSMain.js. Muted
   with opacity so it reads on both the dark nav bar and the light body. */
a.deadlink { opacity: 0.4; cursor: not-allowed; }
a.deadlink:hover { text-decoration: none; background: transparent; }

/* --- Site navigation (v2): fixed navy band, five top-level links ------- */
/* The active link is marked by STHSMain.js from the current page. The band
   is a fixed dark navy that reads the same on these light content pages as
   it does on the theme-aware home page. Uses Oswald from fonts.css. */

.band { background: #14213d; color: #eef3fa; }
.nav {
  display: flex; align-items: center; gap: 22px;
  padding: 14px 1rem; max-width: 1200px; margin: 0 auto;
}
.brand { display: flex; align-items: baseline; gap: 10px; }
.brand .mark {
  font-family: 'Oswald', Impact, sans-serif; font-weight: 700; font-size: 26px;
  letter-spacing: 0.04em; color: #fff; line-height: 1;
}
.brand .mark span { color: #b3001b; }
.brand .season {
  font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: #a9bcd6;
}
.menu { display: flex; gap: 4px; flex-wrap: wrap; }
.menu a {
  font-family: 'Oswald', Impact, sans-serif; font-weight: 500; font-size: 15px;
  letter-spacing: 0.05em; text-transform: uppercase; color: #eef3fa;
  padding: 7px 12px; border-radius: 5px;
}
.menu a:hover { background: rgba(255, 255, 255, 0.12); text-decoration: none; }
.menu a.on, .menu a.on:hover { background: #b3001b; color: #fff; }
.nav .spacer { flex: 1; }
.who {
  display: flex; align-items: center; gap: 9px; color: #eef3fa; font-size: 12.5px;
  background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.14);
  padding: 6px 11px; border-radius: 999px;
}
.who:hover { background: rgba(255, 255, 255, 0.14); text-decoration: none; }
.who .swatch {
  width: 22px; height: 22px; border-radius: 50%; background: rgba(255, 255, 255, 0.16);
  display: grid; place-items: center; color: #fff;
  font-family: 'Oswald', Impact, sans-serif; font-size: 12px; font-weight: 700;
}
.who .car { color: #a9bcd6; font-size: 10px; }

/* --- Page title band -------------------------------------------------- */

.STHSTableFullW {
  width: 100%;
  border-collapse: collapse;
  margin: 1rem 0 0.5rem;
}
.STHSHeaderTitle {
  background: var(--band);
  color: var(--band-ink);
  font-size: 1.15rem;
  font-weight: 700;
  padding: 0.5rem 1rem;
}
.STHSHeaderDate {
  background: var(--band);
  color: var(--band-ink);
  text-align: right;
  padding: 0.5rem 1rem;
  font-size: 0.85rem;
  opacity: 0.85;
}

/* Content that is not in the header band gets a little breathing room. */
body > p,
body > table:not(.STHSTableFullW):not(.MenuSTHS),
body > div:not(.tabsmenu):not(.footer) {
  margin-left: 1rem;
  margin-right: 1rem;
}
body > p { max-width: 60rem; }

/* --- Data tables ------------------------------------------------------ */

table.basictablesorter {
  border-collapse: collapse;
  margin: 0.25rem 1rem 1.5rem;
  border: 1px solid var(--line);
}
table.basictablesorter th,
table.basictablesorter td {
  border: 1px solid var(--line);
  padding: 3px 7px;
  text-align: left;
  vertical-align: middle;
}
table.basictablesorter thead th {
  background: var(--band);
  color: var(--band-ink);
  position: sticky;
  top: 0;
  z-index: 1;
  font-weight: 600;
  white-space: nowrap;
}
table.basictablesorter thead th.sortable { cursor: pointer; }
table.basictablesorter thead th.sortable:hover { background: #1d3157; }
table.basictablesorter thead th[data-sort="asc"]::after { content: " \25B2"; font-size: 0.7em; }
table.basictablesorter thead th[data-sort="desc"]::after { content: " \25BC"; font-size: 0.7em; }
table.basictablesorter tbody tr:nth-child(even) { background: var(--zebra); }
table.basictablesorter tbody tr:hover { background: var(--hover); }

/* Section headings that precede per-team blocks. */
h1, h2 { color: var(--band); margin: 1.25rem 1rem 0.4rem; }
h1 { font-size: 1.25rem; }
h2 { font-size: 1.05rem; }
h1 a, h2 a { color: inherit; }

/* --- Structural helpers ---------------------------------------------- */

.STHSCenter { text-align: center; }
.STHSTeamLink { color: var(--link); font-weight: 600; }
.STHSAlignTopBorder { vertical-align: top; border-top: 1px solid var(--line); }
.STHSBlankDiv { height: 0.5rem; }
.STHSWarning { display: none; }   /* small-screen column-hiding notice; not applicable here */

/* --- Column widths (STHSW<n> = n px; STHSWP<n> = n %) ----------------- */

.STHSW1 { width: 1px; }
.STHSW10 { width: 10px; }
.STHSW25 { width: 25px; }
.STHSW30 { width: 30px; }
.STHSW35 { width: 35px; }
.STHSW45 { width: 45px; }
.STHSW50 { width: 50px; }
.STHSW55 { width: 55px; }
.STHSW65 { width: 65px; }
.STHSW75 { width: 75px; }
.STHSW85 { width: 85px; }
.STHSW100 { width: 100px; }
.STHSW120 { width: 120px; }
.STHSW140 { width: 140px; }
.STHSW200 { width: 200px; }
.STHSW250 { width: 250px; }
.STHSWP2 { width: 2%; }
.STHSWP49 { width: 49%; }

/* --- Footer ----------------------------------------------------------- */

.footer {
  margin: 2rem 1rem 0;
  padding-top: 0.75rem;
  border-top: 1px solid var(--line);
  color: var(--ink-soft);
  font-size: 0.8rem;
}
.footer a { color: var(--ink-soft); }
.scrollup {
  display: inline-block;
  margin: 0 1rem;
  font-size: 0.8rem;
}
