/* ===== COLOR & FONT VARIABLES ===== */
/* Change these values to change colors sitewide */
:root {
  --color-bg: #F3ECDC;        /* parchment cream page background */
  --color-dark: #1B1410;      /* dark walnut, used for header/nav */
  --color-gold: #C89B3C;      /* brass gold accent, active tab */
  --color-green: #3B5D42;     /* field green accent */
  --color-text: #2A2320;      /* main text color */

  --font-display: "Oswald", sans-serif;  /* headings */
  --font-body: "Inter", sans-serif;      /* paragraphs, buttons */
}

/* ===== RESET ===== */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background-color: var(--color-bg);
  color: var(--color-text);
  font-family: var(--font-body);
}

/* ===== HEADER ===== */
.site-header {
  background-color: var(--color-dark);
  color: var(--color-bg);
  text-align: center;
  padding: 32px 16px 20px;
}

.site-title {
  font-family: var(--font-display);
  font-size: 2.5rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--color-gold);
}

.site-tagline {
  font-size: 0.95rem;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--color-bg);
  opacity: 0.75;
  margin-top: 6px;
}

/* ===== NAVIGATION BAR ===== */
.main-nav {
  background-color: var(--color-dark);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 4px;
  padding: 10px 10px 16px;
  border-bottom: 3px solid var(--color-gold);
}

.nav-btn {
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 0.85rem;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  background-color: transparent;
  color: var(--color-bg);
  border: 1px solid transparent;
  border-radius: 4px;
  padding: 8px 14px;
  cursor: pointer;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.nav-btn:hover {
  background-color: rgba(200, 155, 60, 0.15);
}

.nav-btn.active {
  background-color: var(--color-gold);
  color: var(--color-dark);
}

/* ===== MAIN CONTENT / TAB PANELS ===== */
main {
  max-width: 1000px;
  margin: 0 auto;
  padding: 32px 20px 60px;
}

.tab-panel {
  display: none;
}

.tab-panel.active {
  display: block;
}

/* ===== HOME TAB ===== */
.home-block {
  margin-bottom: 32px;
}

/* Section banner header (used above every block) */
.section-banner {
  background-color: var(--color-dark);
  color: var(--color-bg);
  padding: 14px 20px;
  border-radius: 6px 6px 0 0;
}

.section-banner h2 {
  font-family: var(--font-display);
  font-size: 1.3rem;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--color-gold);
}

.banner-subtitle {
  font-size: 0.85rem;
  font-style: italic;
  opacity: 0.8;
  margin-top: 3px;
}

/* Plain content box (used for the bio paragraph) */
.content-box {
  background-color: #fff;
  border: 1px solid rgba(27, 20, 16, 0.12);
  border-top: none;
  padding: 20px;
  border-radius: 0 0 6px 6px;
}

.league-bio {
  font-size: 1rem;
  line-height: 1.7;
}

/* Clean data tables */
.data-table {
  width: 100%;
  border-collapse: collapse;
  background-color: #fff;
  border: 1px solid rgba(27, 20, 16, 0.12);
  border-top: none;
  border-radius: 0 0 6px 6px;
  overflow: hidden;
}

.data-table th {
  background-color: var(--color-green);
  color: #fff;
  text-align: left;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 10px 16px;
}

.data-table th.sortable-header {
  cursor: pointer;
  user-select: none;
}

.data-table th.sortable-header:hover,
.data-table th.sortable-header:focus {
  background-color: #2d4933;
  outline: 2px solid var(--color-gold);
  outline-offset: -2px;
}

.data-table td {
  padding: 10px 16px;
  font-size: 0.92rem;
  border-bottom: 1px solid rgba(27, 20, 16, 0.08);
}

.data-table tbody tr:last-child td {
  border-bottom: none;
}

.data-table tbody tr:nth-child(even) td {
  background-color: rgba(59, 93, 66, 0.05);
}

.table-scroll {
  overflow-x: auto;
  border-radius: 0 0 6px 6px;
}

.table-scroll .data-table {
  min-width: 620px;
}

.head-to-head {
  min-width: 1150px !important;
}

.head-to-head th,
.head-to-head td {
  text-align: center;
  white-space: nowrap;
}

.head-to-head th:first-child,
.head-to-head td:first-child {
  text-align: left;
  position: sticky;
  left: 0;
}

.head-to-head th:first-child {
  background-color: var(--color-green);
}

.head-to-head td:first-child {
  background-color: #fff;
  font-weight: 600;
}

/* Two-column label/value tables (no header row) */
.data-table.label-value td.label {
  font-weight: 600;
  color: var(--color-dark);
  width: 40%;
}

/* Left/right split (Winners Wall + Wall of Shame under League History) */
.split-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-top: 20px;
}

.split-title {
  font-family: var(--font-display);
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--color-dark);
  margin-bottom: 6px;
}

/* ===== MANAGER PROFILES & DRAFT ===== */
.profile-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(285px, 1fr)); gap: 16px; background: #fff; border: 1px solid rgba(27, 20, 16, 0.12); border-top: none; padding: 18px; border-radius: 0 0 6px 6px; }
.profile-card { display: flex; gap: 14px; padding: 16px; border: 1px solid rgba(27, 20, 16, 0.14); border-radius: 6px; background: var(--color-bg); }
.profile-photo, .profile-initials { width: 58px; height: 58px; flex: 0 0 58px; border-radius: 50%; }
.profile-photo { object-fit: cover; border: 2px solid var(--color-gold); }
.profile-initials { display: grid; place-items: center; background: var(--color-green); color: #fff; font-family: var(--font-display); font-size: 1.25rem; letter-spacing: 1px; }
.profile-copy { min-width: 0; }.profile-copy h3 { font-family: var(--font-display); font-size: 1.2rem; text-transform: uppercase; }.profile-trophy { color: var(--color-green); font-weight: 600; font-size: 0.86rem; margin-top: 3px; }.profile-bio { font-size: 0.88rem; line-height: 1.5; margin-top: 9px; }.profile-details { margin-top: 10px; display: grid; gap: 5px; font-size: 0.82rem; }.profile-details div { display: flex; justify-content: space-between; gap: 12px; }.profile-details dt { color: #635c57; }.profile-details dd { margin: 0; font-weight: 600; text-align: right; }
.countdown-box { background: #fff; border: 1px solid rgba(27, 20, 16, 0.12); border-top: none; border-radius: 0 0 6px 6px; color: var(--color-green); font-family: var(--font-display); font-size: clamp(1.8rem, 7vw, 3.2rem); letter-spacing: 1px; padding: 28px 20px; text-align: center; text-transform: uppercase; }

@media (max-width: 640px) {
  .split-row {
    grid-template-columns: 1fr;
  }
}

/* ===== ARCHIVE EXTRAS / RESPONSIVE TABLES ===== */
.profile-card { border: 0; text-align: left; cursor: pointer; width: 100%; font: inherit; color: inherit; }
.profile-card:hover { outline: 2px solid var(--color-gold); transform: translateY(-2px); }
.profile-name, .profile-trophy, .profile-bio, .profile-open { display: block; }
.profile-name { font-family: var(--font-display); font-size: 1.2rem; text-transform: uppercase; }
.profile-open { color: var(--color-green); font-size: 0.8rem; font-weight: 700; margin-top: 10px; text-transform: uppercase; }
.chart-box { background: #fff; border: 1px solid rgba(27,20,16,.12); border-top: 0; padding: 18px; }
.bar-row { align-items: center; display: grid; gap: 10px; grid-template-columns: minmax(95px, 150px) 1fr 44px; margin: 10px 0; font-size: .85rem; }
.bar-track { background: #ece4d5; border-radius: 10px; height: 12px; overflow: hidden; }.bar-track i { background: var(--color-green); border-radius: inherit; display: block; height: 100%; }.bar-row b { color: var(--color-green); text-align: right; }
.rivalry-picker { background: #fff; border: 1px solid rgba(27,20,16,.12); border-top: 0; display: grid; gap: 14px; grid-template-columns: 1fr 1fr; padding: 18px; }.rivalry-picker label { color: var(--color-green); font-size: .78rem; font-weight: 700; text-transform: uppercase; }.rivalry-picker select { border: 1px solid #d8cfbd; border-radius: 4px; display: block; font: inherit; margin-top: 5px; padding: 10px; width: 100%; }
.rivalry-score { align-items: center; display: grid; grid-template-columns: 1fr auto 1fr; gap: 12px; text-align: center; }.rivalry-score strong { color: var(--color-gold); font: 2.2rem var(--font-display); }.rivalry-score b:last-child { text-align: right; }
.modal-open { overflow: hidden; }.modal-backdrop { align-items: center; background: rgba(5, 10, 20, .72); display: flex; inset: 0; justify-content: center; padding: 18px; position: fixed; z-index: 100; }.manager-modal { background: #10192c; border: 1px solid #35435c; border-radius: 20px; color: #f4f6fb; max-height: calc(100vh - 36px); max-width: 820px; overflow-y: auto; padding: 34px; position: relative; width: 100%; }.modal-close { background: transparent; border: 0; color: #9cabca; cursor: pointer; font-size: 2rem; position: absolute; right: 20px; top: 14px; }.modal-header { align-items: center; border-bottom: 1px solid #2c3850; display: flex; gap: 16px; padding-bottom: 18px; }.modal-header h2 { font-size: 1.8rem; }.modal-header p, .manager-modal h3 { color: #ffc51a; }.modal-header p { font-size: .85rem; font-weight: 700; }.modal-photo, .modal-initials { border-radius: 14px; height: 64px; width: 64px; }.modal-photo { object-fit: cover; }.modal-initials { align-items: center; background: #ffc51a; color: #10192c; display: flex; font: 1.6rem var(--font-display); justify-content: center; }.modal-stat-grid { display: grid; gap: 12px; grid-template-columns: repeat(4, 1fr); margin: 24px 0; }.modal-stat-grid div { background: #030817; border: 1px solid #28354c; border-radius: 12px; padding: 15px; text-align: center; }.modal-stat-grid small { color: #9cabca; display: block; font-size: .68rem; font-weight: 700; text-transform: uppercase; }.modal-stat-grid b { color: #fff; display: block; margin-top: 7px; }.modal-stat-grid div:nth-child(3) b, .career-high b, .winning { color: #2ee7bd; }.modal-stat-grid div:nth-child(4) b { color: #ffc51a; }.modal-bio { color: #c2cad8; line-height: 1.5; margin: 0 0 20px; }.manager-modal h3 { font-size: .85rem; margin: 20px 0 8px; text-transform: uppercase; }.team-history, .modal-h2h { list-style: none; padding: 0; }.team-history li, .modal-h2h li, .career-high { background: #030817; border: 1px solid #28354c; border-radius: 10px; display: flex; justify-content: space-between; margin: 8px 0; padding: 12px; }.team-history b { color: #ffc51a; }.career-high { color: #9cabca; font-size: .88rem; }.modal-h2h { display: grid; gap: 8px; grid-template-columns: 1fr 1fr; }.modal-h2h li { margin: 0; }.losing { color: #ff7084; }.even { color: #9cabca; }

@media (max-width: 700px) { .data-table, .data-table thead, .data-table tbody, .data-table tr, .data-table th, .data-table td { display: block; }.table-scroll { overflow: visible; }.table-scroll .data-table, .head-to-head { min-width: 0 !important; }.data-table thead { display: none; }.data-table tr { border-bottom: 1px solid rgba(27,20,16,.14); padding: 7px 0; }.data-table td { align-items: baseline; border: 0; display: flex; justify-content: space-between; gap: 14px; padding: 7px 14px; text-align: right; }.data-table td::before { color: var(--color-green); content: attr(data-label); font-size: .7rem; font-weight: 700; text-align: left; text-transform: uppercase; }.data-table.label-value td.label { display: none; }.data-table.label-value td:not(.label) { text-align: left; }.data-table.label-value td:not(.label)::before { content: attr(data-label); }.rivalry-picker, .modal-stat-grid { grid-template-columns: 1fr 1fr; }.modal-h2h { grid-template-columns: 1fr; }.team-history li, .career-high { align-items: flex-start; flex-direction: column; gap: 5px; }.manager-modal { padding: 26px 18px; }.modal-header h2 { font-size: 1.35rem; }.bar-row { grid-template-columns: 88px 1fr 38px; gap: 7px; }.profile-card { transform: none !important; } }

/* ===== MANAGER CARD COVERS & WEEKLY GRID ===== */
.profile-cover-grid { background: transparent; border: 0; padding: 0; }
.profile-cover { background: #10192c; border: 1px solid #b98200; border-radius: 17px; color: #f4f6fb; display: block; min-height: 280px; padding: 24px; transition: border-color .16s ease, transform .16s ease, box-shadow .16s ease; }
.profile-cover:hover, .profile-cover:focus { box-shadow: 0 10px 28px rgba(16,25,44,.28); outline: none; border-color: #ffc51a; transform: translateY(-3px); }
.cover-header { align-items: center; display: flex; gap: 14px; }.profile-cover .profile-initials, .profile-cover .profile-photo { background: #ffc51a; color: #10192c; height: 56px; width: 56px; }.cover-title { display: block; }.profile-cover .profile-name { color: #fff; font-family: var(--font-body); font-size: 1.14rem; font-weight: 700; letter-spacing: 0; text-transform: none; }.profile-cover .profile-name i { color: #ffc51a; font-size: 1.7rem; font-style: normal; line-height: 0; vertical-align: -2px; }.cover-status { color: #9ec5e5; display: block; font-size: .74rem; letter-spacing: .5px; margin-top: 5px; }.cover-team { background: #030817; border: 1px solid #28354c; border-radius: 11px; display: block; margin: 17px 0 16px; padding: 15px 12px; }.cover-team small, .cover-stats small { color: #a7b7ce; display: block; font-size: .62rem; font-weight: 700; text-transform: uppercase; }.cover-team small { color: #ffc51a; }.cover-team b { color: #fff; display: block; font-size: .82rem; margin-top: 7px; }.cover-stats { border-top: 1px solid #2c3850; display: grid; gap: 8px; grid-template-columns: 1fr 1fr; padding-top: 9px; }.cover-stats > span { background: #030817; border-radius: 8px; padding: 10px; }.cover-stats b { color: #fff; display: block; font-size: .83rem; margin-top: 5px; }.cover-stats em { color: #ffc51a; font-size: .71rem; font-style: normal; }.cover-stats .teal { color: #2ee7bd; }.cover-stats .gold { color: #ffc51a; }
.weekly-leaders { background: #fff; border: 1px solid rgba(27,20,16,.12); border-top: 0; padding: 18px; }.weekly-season + .weekly-season { border-top: 1px solid rgba(27,20,16,.13); margin-top: 20px; padding-top: 20px; }.weekly-season h3 { color: var(--color-green); font-family: var(--font-display); font-size: 1rem; letter-spacing: .5px; margin-bottom: 10px; text-transform: uppercase; }.weekly-grid { display: grid; gap: 9px; grid-template-columns: repeat(auto-fit, minmax(132px, 1fr)); }.weekly-card { background: #f8f5ed; border-left: 3px solid var(--color-gold); border-radius: 5px; padding: 10px; }.weekly-card span, .weekly-card small { display: block; }.weekly-card span { color: var(--color-green); font-size: .68rem; font-weight: 700; text-transform: uppercase; }.weekly-card b { color: var(--color-dark); display: block; font-family: var(--font-display); font-size: 1.05rem; margin: 5px 0; }.weekly-card small { color: #635c57; font-size: .72rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

@media (max-width: 420px) { .profile-cover { min-height: 0; padding: 20px; }.weekly-grid { grid-template-columns: 1fr 1fr; }.weekly-leaders { padding: 12px; } }

/* Keep the profile experience inside the site's cream, walnut, gold, and green palette. */
.profile-cover { background: #fff; border-color: var(--color-gold); color: var(--color-text); }
.profile-cover:hover, .profile-cover:focus { box-shadow: 0 10px 28px rgba(27,20,16,.18); border-color: var(--color-green); }
.profile-cover .profile-initials, .profile-cover .profile-photo { background: var(--color-gold); color: var(--color-dark); }
.profile-cover .profile-name { color: var(--color-dark); }.profile-cover .profile-name i { color: var(--color-gold); }.cover-status { color: var(--color-green); }
.cover-team, .cover-stats > span { background: var(--color-bg); border-color: rgba(27,20,16,.12); }.cover-team small { color: var(--color-green); }.cover-team b, .cover-stats b { color: var(--color-dark); }.cover-stats { border-color: rgba(27,20,16,.12); }.cover-stats small { color: #635c57; }.cover-stats .teal { color: var(--color-green); }.cover-stats .gold, .cover-stats em { color: #a57212; }
.modal-backdrop { background: rgba(27,20,16,.72); }.manager-modal { background: var(--color-bg); border-color: var(--color-gold); color: var(--color-text); }.modal-close { color: var(--color-dark); }.modal-header { border-color: rgba(27,20,16,.16); }.modal-header h2 { color: var(--color-dark); }.modal-header p, .manager-modal h3 { color: #a57212; }.modal-stat-grid div, .team-history li, .modal-h2h li, .career-high { background: #fff; border-color: rgba(27,20,16,.14); }.modal-stat-grid small, .modal-bio, .career-high { color: #635c57; }.modal-stat-grid b { color: var(--color-dark); }.modal-stat-grid div:nth-child(3) b, .career-high b, .winning { color: var(--color-green); }.modal-stat-grid div:nth-child(4) b, .team-history b { color: #a57212; }.modal-initials { background: var(--color-gold); color: var(--color-dark); }.losing { color: #b43245; }.even { color: #635c57; }

/* ===== BUBBLE LISTS FOR STATIC DATA ===== */
.bubble-list { background: #fff; border: 1px solid rgba(27,20,16,.12); border-top: 0; display: grid; gap: 10px; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); padding: 16px; }.bubble-item { background: var(--color-bg); border-left: 3px solid var(--color-gold); border-radius: 6px; min-width: 0; padding: 12px; }.bubble-item small, .bubble-item b, .bubble-item span { display: block; }.bubble-item small { color: var(--color-green); font-size: .66rem; font-weight: 700; letter-spacing: .35px; text-transform: uppercase; }.bubble-item b { color: var(--color-dark); font-size: .88rem; line-height: 1.35; margin-top: 5px; }.bubble-item span { color: #635c57; font-size: .74rem; margin-top: 5px; }
.standing-bubbles { background: #fff; border: 1px solid rgba(27,20,16,.12); border-top: 0; display: grid; gap: 9px; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); padding: 16px; }.standing-bubbles article { align-items: center; background: var(--color-bg); border-left: 3px solid var(--color-green); border-radius: 6px; display: grid; gap: 10px; grid-template-columns: 30px 1fr auto; padding: 10px; }.standing-bubbles article > b { color: var(--color-green); font: 1.2rem var(--font-display); }.standing-bubbles span { color: var(--color-dark); font-size: .82rem; font-weight: 700; }.standing-bubbles small { color: #635c57; display: block; font-size: .7rem; font-weight: 400; margin-top: 3px; }.standing-bubbles em { color: #a57212; font-size: .78rem; font-style: normal; font-weight: 700; }
.draft-bubbles { background: #fff; border: 1px solid rgba(27,20,16,.12); border-top: 0; display: grid; gap: 9px; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); padding: 16px; }.draft-bubbles article { align-items: center; background: var(--color-bg); border-radius: 6px; display: grid; gap: 10px; grid-template-columns: 28px 1fr; padding: 11px; }.draft-bubbles article > b { color: var(--color-gold); font: 1.2rem var(--font-display); text-align: center; }.draft-bubbles span { color: var(--color-dark); font-size: .82rem; font-weight: 700; }.draft-bubbles small { color: #635c57; font-size: .7rem; grid-column: 2; margin-top: -6px; }
@media (max-width: 480px) { .bubble-list, .standing-bubbles, .draft-bubbles { grid-template-columns: 1fr; padding: 12px; } }

/* ===== EMBEDDED DRAFT ANALYZER ===== */
.draft-analyzer-shell { background: #fff; border: 1px solid rgba(27,20,16,.12); border-top: 0; border-radius: 0 0 6px 6px; overflow: hidden; }
.draft-analyzer-frame { border: 0; display: block; height: 420px; overflow: hidden; width: 100%; }

/* ===== 2026 SCHEDULE ===== */
.schedule-list { background: #fff; border: 1px solid rgba(27,20,16,.12); border-top: 0; padding: 14px; }.schedule-week { border: 1px solid rgba(27,20,16,.14); border-radius: 6px; margin: 8px 0; overflow: hidden; }.schedule-week summary { align-items: center; background: var(--color-bg); color: var(--color-dark); cursor: pointer; display: flex; font-family: var(--font-display); justify-content: space-between; padding: 12px; text-transform: uppercase; }.schedule-week summary span { color: var(--color-green); font-family: var(--font-body); font-size: .72rem; font-weight: 700; }.schedule-week > div { display: grid; gap: 8px; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); padding: 10px; }.schedule-week article { align-items: center; background: #fff; border-left: 3px solid var(--color-gold); display: grid; gap: 8px; grid-template-columns: 1fr 18px 1fr; padding: 9px; }.schedule-week article b, .schedule-week article small { display: block; }.schedule-week article b { font-size: .78rem; }.schedule-week article small { color: #635c57; font-size: .66rem; margin-top: 3px; }.schedule-week article em { color: var(--color-green); font-style: normal; font-weight: 700; text-align: center; }

/* Completed seasons use a compact two-column grid: seven weeks per side. */
.historical-schedule { display: grid; gap: 10px; grid-template-columns: 1fr 1fr; }.historical-schedule .schedule-week { margin: 0; }.historical-schedule .schedule-week > div { display: grid; grid-template-columns: 1fr; }.historical-schedule .schedule-week article { grid-template-columns: 1fr auto 1fr; }.historical-schedule .final-score { color: #a57212; display: flex; flex-direction: column; font-size: .76rem; gap: 2px; min-width: 48px; }.historical-schedule .final-score i { color: #635c57; font-size: .62rem; font-style: normal; line-height: .5; } @media (max-width: 700px) { .historical-schedule { grid-template-columns: 1fr; } }

/* ===== HEAD-TO-HEAD MATRIX ===== */
.h2h-wrap { background: #fff; border: 1px solid rgba(27,20,16,.12); border-top: 0; padding: 14px; }.h2h-grid { display: grid; gap: 3px; grid-template-columns: minmax(128px, 1.7fr) repeat(13, minmax(22px, 1fr)); width: 100%; }.h2h-corner, .h2h-header, .h2h-row-label, .h2h-cell { align-items: center; display: flex; justify-content: center; min-height: 27px; }.h2h-corner, .h2h-header { background: var(--color-dark); color: var(--color-bg); font-size: .57rem; font-weight: 700; overflow: hidden; padding: 3px 1px; text-transform: uppercase; }.h2h-row-label { background: transparent; border: 0; color: var(--color-dark); cursor: pointer; font: inherit; font-size: .66rem; font-weight: 700; justify-content: flex-start; line-height: 1.05; overflow: visible; padding: 4px 6px; text-align: left; white-space: normal; }.h2h-header { border: 0; cursor: pointer; font-family: var(--font-body); }.h2h-header:hover, .h2h-header:focus, .h2h-row-label:hover, .h2h-row-label:focus { outline: 2px solid var(--color-gold); outline-offset: -2px; }.h2h-cell { border-radius: 3px; font-size: .57rem; font-weight: 700; }.h2h-cell.win { background: #b9ddc3; color: #1d5630; }.h2h-cell.loss { background: #efc1c7; color: #7d2632; }.h2h-cell.tie { background: #e8e0d2; color: #635c57; }.h2h-cell.self { background: var(--color-gold); color: var(--color-dark); }.h2h-legend { align-items: center; color: #635c57; display: flex; flex-wrap: wrap; font-size: .68rem; gap: 6px; margin-top: 12px; }.h2h-legend span { border-radius: 3px; display: inline-block; height: 12px; margin-left: 5px; width: 12px; }.h2h-legend .win { background: #b9ddc3; }.h2h-legend .loss { background: #efc1c7; }.h2h-legend .tie { background: #e8e0d2; }
.h2h-header { height: 118px; min-height: 118px; overflow: visible; padding: 4px 2px; text-transform: none; white-space: nowrap; writing-mode: vertical-rl; transform: rotate(180deg); }
@media (max-width: 520px) { .h2h-wrap { padding: 8px; }.h2h-grid { grid-template-columns: minmax(91px, 1.55fr) repeat(13, minmax(17px, 1fr)); gap: 2px; }.h2h-corner, .h2h-header { font-size: .43rem; }.h2h-header { height: 92px; min-height: 92px; }.h2h-row-label { font-size: .55rem; padding: 3px; }.h2h-cell { font-size: .43rem; min-height: 22px; } }

/* ===== 2026 FUTURES CARDS ===== */
.futures-hero { background: var(--color-dark); border: 1px solid var(--color-gold); border-radius: 8px; color: var(--color-bg); margin-bottom: 22px; padding: 24px; }.futures-hero h2 { color: var(--color-gold); font-family: var(--font-display); font-size: clamp(1.45rem, 4vw, 2rem); letter-spacing: 1px; text-transform: uppercase; }.futures-hero p { font-size: .87rem; line-height: 1.5; margin-top: 6px; opacity: .85; }.future-grid { display: grid; gap: 18px; grid-template-columns: repeat(3, 1fr); }.future-card { background: #fff; border: 1px solid rgba(27,20,16,.16); border-radius: 8px; color: var(--color-text); cursor: pointer; font: inherit; min-height: 154px; padding: 20px; text-align: left; transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease; width: 100%; }.future-card:hover, .future-card:focus { border-color: var(--color-gold); box-shadow: 0 8px 20px rgba(27,20,16,.14); outline: none; transform: translateY(-3px); }.future-card-top { align-items: center; border-bottom: 1px solid rgba(27,20,16,.12); display: flex; gap: 12px; justify-content: space-between; padding-bottom: 15px; }.future-card-top b { font-size: 1rem; }.future-card-top em { background: var(--color-bg); border: 1px solid var(--color-gold); border-radius: 999px; color: #a57212; font-size: .68rem; font-style: normal; font-weight: 700; padding: 6px 9px; white-space: nowrap; }.future-stat-row { display: grid; gap: 10px; grid-template-columns: 1fr 1fr; margin-top: 16px; }.future-stat-row > span { background: var(--color-bg); border-left: 3px solid var(--color-green); border-radius: 5px; padding: 10px; }.future-stat-row > span:last-child { border-left-color: var(--color-gold); }.future-stat-row small, .future-stat-row strong { display: block; }.future-stat-row small { color: #635c57; font-size: .64rem; font-weight: 700; text-transform: uppercase; }.future-stat-row strong { color: var(--color-green); font-size: .92rem; margin-top: 6px; }.future-stat-row > span:last-child strong { color: #a57212; }.future-new-manager { opacity: .8; }.future-new-manager .future-card-top em { border-color: #8a837a; color: #635c57; }.future-new-manager .future-stat-row strong { color: #635c57; font-size: .76rem; }
@media (max-width: 850px) { .future-grid { grid-template-columns: repeat(2, 1fr); } } @media (max-width: 520px) { .futures-hero { padding: 18px; }.future-grid { grid-template-columns: 1fr; }.future-card { min-height: 0; }.future-stat-row { gap: 8px; } }

/* ===== V1 LEAGUE HALL REFINEMENTS ===== */
html, body { max-width: 100%; overflow-x: hidden; }
.main-nav { flex-wrap: wrap; gap: 4px; justify-content: center; padding: 8px 12px; }
.nav-btn { white-space: nowrap; }
#championship-banners { margin: 10px auto 0; max-width: 760px; text-align: center; }
.league-established { color: var(--color-gold); display: block; font-family: var(--font-display); letter-spacing: 1.5px; text-transform: uppercase; }
.championship-rack { display: flex; gap: 12px; justify-content: center; padding-top: 10px; }
.championship-banner { background: var(--color-gold); border: 1px solid #a57212; box-shadow: 0 5px 0 rgba(27,20,16,.18); color: var(--color-dark); display: grid; min-width: 185px; padding: 9px 12px 14px; position: relative; }
.championship-banner::after { border-left: 14px solid transparent; border-right: 14px solid transparent; border-top: 10px solid var(--color-gold); bottom: -10px; content: ""; left: calc(50% - 14px); position: absolute; }
.championship-banner small, .championship-banner span, .championship-banner em { font-size: .68rem; font-style: normal; }.championship-banner b { font-family: var(--font-display); font-size: 1rem; text-transform: uppercase; }
.manager-top-space { padding-top: 20px; }
.cover-team b { font-family: var(--font-body); font-size: .8rem; font-weight: 500; line-height: 1.35; text-transform: none; }.top-player-game { grid-column: 1 / -1; }.top-player-game b { font-size: .78rem; }
.glance-bubbles { display: grid; gap: 18px; grid-template-columns: repeat(4, 1fr); }.glance-bubbles article, .history-bubble { background: var(--color-bg); border: 1px solid rgba(27,20,16,.14); border-radius: 6px; padding: 16px; }.glance-bubbles small, .glance-bubbles b, .history-bubble small, .history-bubble b, .history-bubble span { display: block; }.glance-bubbles small, .history-bubble small { color: var(--color-green); font-size: .68rem; font-weight: 700; text-transform: uppercase; }.glance-bubbles b { margin-top: 5px; }
.history-walls { display: grid; gap: 18px; grid-template-columns: 1fr 1fr; }.history-walls h3 { color: var(--color-gold); font-family: var(--font-display); margin: 0 0 10px; text-transform: uppercase; }.history-bubble { color: var(--color-text); cursor: pointer; display: block; margin-bottom: 9px; text-align: left; width: 100%; }.history-bubble:hover { border-color: var(--color-gold); }.history-bubble b { margin: 4px 0; }.history-bubble span { color: #635c57; font-size: .78rem; }.history-bubble.shame small { color: #a13b47; }
.recap-selector { align-items: center; background: var(--color-dark); border: 1px solid var(--color-gold); border-radius: 8px; color: var(--color-bg); display: flex; gap: 20px; justify-content: space-between; margin: 26px 0 22px; padding: 22px 24px; }.recap-selector h2 { color: var(--color-gold); font-family: var(--font-display); margin: 0; text-transform: uppercase; }.recap-selector p { font-size: .82rem; margin: 5px 0 0; }.recap-selector label { color: var(--color-gold); font-size: .7rem; font-weight: 700; text-transform: uppercase; white-space: nowrap; }.recap-selector select { background: #fff; border: 1px solid var(--color-gold); border-radius: 6px; color: var(--color-text); font: inherit; font-weight: 700; margin-left: 8px; padding: 9px 30px 9px 10px; }.recap-podium { display: grid; gap: 12px; grid-template-columns: repeat(3, 1fr); margin-bottom: 16px; }.recap-podium article { background: var(--color-bg); border: 1px solid rgba(27,20,16,.14); border-radius: 6px; padding: 16px; }.recap-podium small, .recap-podium b { display: block; }.recap-podium small { color: var(--color-green); font-size: .68rem; font-weight: 700; text-transform: uppercase; }.recap-podium b { margin-top: 8px; }.recap-podium .shame { border-color: #a13b47; }.recap-podium .shame small { color: #a13b47; }
.future-stat-row .future-sos { border-left-color: #5c7ea5; grid-column: 1 / -1; }.future-stat-row .future-sos strong { color: #315a85; }
@media (max-width: 700px) { .championship-rack { gap: 7px; }.championship-banner { min-width: 0; padding: 8px 6px 12px; width: 50%; }.championship-banner b { font-size: .78rem; }.championship-banner small, .championship-banner span, .championship-banner em { font-size: .58rem; }.glance-bubbles { grid-template-columns: 1fr 1fr; }.history-walls, .recap-podium { grid-template-columns: 1fr; }.recap-selector { align-items: flex-start; flex-direction: column; padding: 18px; }.recap-selector select { display: block; margin: 7px 0 0; width: 100%; }.nav-btn { font-size: .72rem; padding: 8px 7px; } }

/* Keep profile photos visible and consistently cropped on narrow mobile cards. */
.profile-cover .profile-photo { display: block; flex: 0 0 56px; object-fit: cover; }
.modal-photo { display: block; flex: 0 0 64px; object-fit: cover; }

/* ===== SEASON MEDALS ===== */
.career-medal-count { color: #a57212; display: block; font-size: .68rem; font-weight: 700; margin-top: 5px; }
.season-medal-grid { display: grid; gap: 12px; grid-template-columns: repeat(4, 1fr); }.season-medal { align-items: center; background: var(--color-bg); border: 1px solid rgba(27,20,16,.15); border-radius: 8px; color: var(--color-text); cursor: pointer; display: flex; gap: 11px; padding: 14px; text-align: left; width: 100%; }.season-medal:hover { border-color: var(--color-gold); transform: translateY(-2px); }.medal-icon { align-items: center; background: #fff; border: 1px solid rgba(27,20,16,.12); border-radius: 50%; display: flex; flex: 0 0 39px; font-size: 1.15rem; height: 39px; justify-content: center; }.season-medal small, .season-medal b, .season-medal em, .season-medal i { display: block; }.season-medal small { color: #635c57; font-size: .61rem; font-weight: 700; text-transform: uppercase; }.season-medal b { font-size: .86rem; margin-top: 4px; }.season-medal em { color: var(--color-green); font-size: .7rem; font-style: normal; margin-top: 3px; }.season-medal i { color: #a57212; font-size: .68rem; font-style: normal; margin-top: 4px; }.medal-qb { border-left: 4px solid #b98200; }.medal-rb { border-left: 4px solid var(--color-green); }.medal-wr { border-left: 4px solid #527da5; }.medal-te { border-left: 4px solid #7656a8; }
.modal-medals { display: grid; gap: 8px; grid-template-columns: 1fr 1fr; }.modal-medals article { background: #fff; border: 1px solid rgba(27,20,16,.14); border-left-width: 4px; border-radius: 8px; padding: 10px; }.modal-medals span { font-size: 1rem; margin-right: 5px; }.modal-medals b, .modal-medals small { display: block; }.modal-medals b { font-size: .75rem; }.modal-medals small { color: #635c57; font-size: .7rem; margin-top: 4px; }
@media (max-width: 800px) { .season-medal-grid { grid-template-columns: 1fr 1fr; } } @media (max-width: 480px) { .season-medal-grid, .modal-medals { grid-template-columns: 1fr; }.season-medal { padding: 12px; } }

/* ===== FINAL ROSTERS & SEASON INSIGHTS ===== */
.built-different { align-items: center; background: var(--color-bg); border: 1px solid var(--color-gold); border-radius: 8px; display: flex; gap: 16px; padding: 18px; }.built-different > span { font-size: 2rem; }.built-different small, .built-different b, .built-different em { display: block; }.built-different small { color: #a57212; font-size: .68rem; font-weight: 700; text-transform: uppercase; }.built-different b { font-size: 1.1rem; margin: 4px 0; }.built-different em { color: var(--color-green); font-size: .8rem; font-style: normal; }
.roster-manager-link { background: none; border: 0; color: inherit; cursor: pointer; font: inherit; font-weight: 700; padding: 0; text-align: inherit; text-decoration: underline; text-decoration-color: rgba(185,130,0,.45); text-underline-offset: 3px; }.roster-manager-link:hover { color: #a57212; }.all-league-grid { display: grid; gap: 10px; grid-template-columns: repeat(3, 1fr); }.all-league-player { background: #fff; border: 1px solid rgba(27,20,16,.14); border-left: 4px solid var(--color-gold); border-radius: 7px; color: var(--color-text); cursor: pointer; padding: 12px; text-align: left; }.all-league-player:hover { border-color: var(--color-green); }.all-league-player small, .all-league-player b, .all-league-player span, .all-league-player em { display: block; }.all-league-player small { color: #a57212; font-size: .65rem; font-weight: 700; }.all-league-player b { font-size: .9rem; margin-top: 4px; }.all-league-player span { color: #635c57; font-size: .72rem; margin-top: 3px; }.all-league-player em { color: var(--color-green); font-size: .72rem; font-style: normal; margin-top: 5px; }
.roster-bubbles { display: grid; gap: 10px; grid-template-columns: repeat(5, 1fr); }.roster-bubbles article { background: var(--color-bg); border: 1px solid rgba(27,20,16,.14); border-radius: 7px; padding: 12px; }.roster-bubbles small, .roster-bubbles b, .roster-bubbles span { display: block; }.roster-bubbles small { color: #635c57; font-size: .64rem; }.roster-bubbles b { font-size: .83rem; margin: 5px 0; }.roster-bubbles span { color: var(--color-green); font-size: .72rem; }.ownership-map { grid-template-columns: repeat(4, 1fr); }
.final-roster-list { display: grid; gap: 9px; }.final-roster { background: #fff; border: 1px solid rgba(27,20,16,.14); border-radius: 7px; }.final-roster summary { align-items: center; cursor: pointer; display: flex; justify-content: space-between; list-style: none; padding: 13px; }.final-roster summary::-webkit-details-marker { display: none; }.final-roster summary b { color: #635c57; font-size: .74rem; font-weight: 500; }.final-roster > div { border-top: 1px solid rgba(27,20,16,.12); display: grid; grid-template-columns: repeat(3, 1fr); padding: 9px; }.final-roster article { align-items: center; display: grid; gap: 7px; grid-template-columns: 38px 1fr auto; padding: 7px; }.roster-position { background: var(--color-dark); border-radius: 4px; color: #fff; font-size: .61rem; font-weight: 700; padding: 4px 2px; text-align: center; }.roster-position.rb { background: var(--color-green); }.roster-position.wr { background: #527da5; }.roster-position.te { background: #7656a8; }.roster-position.k { background: #a57212; }.roster-position.dst { background: #635c57; }.final-roster article b { font-size: .78rem; }.final-roster article em { color: #635c57; font-size: .67rem; font-style: normal; text-align: right; }
@media (max-width: 800px) { .all-league-grid, .roster-bubbles { grid-template-columns: repeat(2, 1fr); }.ownership-map { grid-template-columns: repeat(2, 1fr); }.final-roster > div { grid-template-columns: repeat(2, 1fr); } } @media (max-width: 500px) { .all-league-grid, .roster-bubbles, .ownership-map, .final-roster > div { grid-template-columns: 1fr; }.final-roster article { grid-template-columns: 38px 1fr auto; }.final-roster summary { align-items: flex-start; flex-direction: column; gap: 4px; } }

/* ===== DRAFT REPORT CARDS ===== */
.report-year-picker { align-items: center; background: var(--color-bg); border: 1px solid rgba(27,20,16,.13); border-radius: 7px; display: flex; gap: 16px; justify-content: space-between; margin-bottom: 15px; padding: 12px; }.report-year-picker label { color: var(--color-green); font-size: .7rem; font-weight: 700; text-transform: uppercase; }.report-year-picker select { border: 1px solid var(--color-gold); border-radius: 5px; font: inherit; font-weight: 700; margin-left: 7px; padding: 7px; }.report-year-picker p { color: #635c57; font-size: .72rem; line-height: 1.35; margin: 0; max-width: 480px; }.draft-superlatives { display: grid; gap: 10px; grid-template-columns: repeat(3, 1fr); margin-bottom: 15px; }.draft-superlatives article { background: var(--color-bg); border: 1px solid rgba(27,20,16,.14); border-radius: 7px; padding: 12px; }.draft-superlatives small, .draft-superlatives b, .draft-superlatives span { display: block; }.draft-superlatives small { color: #a57212; font-size: .63rem; font-weight: 700; text-transform: uppercase; }.draft-superlatives b { font-size: .9rem; margin: 4px 0; }.draft-superlatives span { color: var(--color-green); font-size: .7rem; }.draft-report-grid { display: grid; gap: 12px; grid-template-columns: repeat(2, 1fr); }.draft-report-card { background: #fff; border: 1px solid rgba(27,20,16,.15); border-radius: 8px; padding: 15px; }.draft-report-card header { align-items: center; border-bottom: 1px solid rgba(27,20,16,.12); display: flex; font-size: 1rem; justify-content: space-between; padding-bottom: 9px; }.draft-report-card header strong { align-items: center; background: var(--color-gold); border-radius: 50%; color: var(--color-dark); display: flex; font-family: var(--font-display); height: 35px; justify-content: center; width: 35px; }.draft-report-card > p { color: #635c57; font-size: .68rem; margin: 9px 0; }.draft-report-card > div { background: var(--color-bg); border-radius: 5px; margin-top: 7px; padding: 9px; }.draft-report-card small, .draft-report-card b, .draft-report-card span { display: block; }.draft-report-card small { color: var(--color-green); font-size: .61rem; font-weight: 700; text-transform: uppercase; }.draft-report-card b { font-size: .82rem; margin: 3px 0; }.draft-report-card span { color: #635c57; font-size: .68rem; }.draft-report-card footer { color: #635c57; font-size: .7rem; margin-top: 10px; }.draft-report-card footer b { color: var(--color-green); display: inline; float: right; }
@media (max-width: 650px) { .report-year-picker { align-items: flex-start; flex-direction: column; }.draft-superlatives, .draft-report-grid { grid-template-columns: 1fr; } }

/* ===== CHAMPIONSHIP PLAYOFF BRACKETS ===== */
.playoff-bracket { align-items: center; background: var(--color-bg); border: 1px solid rgba(27,20,16,.14); border-radius: 8px; display: grid; gap: 34px; grid-template-columns: 1.35fr 1fr; padding: 18px; }.bracket-round h3 { color: var(--color-green); font-family: var(--font-display); font-size: .85rem; letter-spacing: .6px; margin: 0 0 10px; text-transform: uppercase; }.bracket-game { background: #fff; border: 1px solid rgba(27,20,16,.14); border-radius: 7px; margin-bottom: 13px; overflow: hidden; position: relative; }.bracket-game::after { background: var(--color-gold); content: ""; height: 2px; position: absolute; right: -35px; top: 50%; width: 34px; }.championship-round .bracket-game::after { display: none; }.bracket-team { align-items: center; background: transparent; border: 0; border-left: 4px solid transparent; color: var(--color-text); cursor: pointer; display: flex; justify-content: space-between; padding: 9px; text-align: left; width: 100%; }.bracket-team + .bracket-team { border-top: 1px solid rgba(27,20,16,.11); }.bracket-team:hover { background: #f8f5ed; }.bracket-team.winner { border-left-color: var(--color-gold); }.bracket-team b, .bracket-team small { display: block; }.bracket-team b { font-size: .8rem; }.bracket-team small { color: #635c57; font-size: .66rem; margin-top: 2px; }.bracket-team em { color: var(--color-green); font-size: .85rem; font-style: normal; font-weight: 700; }.final-game { border-color: var(--color-gold); }.championship-round p { color: #a57212; font-size: .77rem; font-weight: 700; margin: 9px 0 0; text-align: center; }
@media (max-width: 600px) { .playoff-bracket { gap: 14px; grid-template-columns: 1fr; }.bracket-game::after { display: none; } }

/* ===== LIVING LEAGUE DASHBOARD ===== */
.pulse-grid, .leader-grid { display: grid; gap: 12px; grid-template-columns: repeat(3, 1fr); }.pulse-card, .leader-grid article { background: var(--color-bg); border: 1px solid rgba(27,20,16,.14); border-radius: 8px; color: var(--color-text); padding: 15px; text-align: left; }.pulse-card small, .pulse-card b, .pulse-card span, .leader-grid small, .leader-grid b, .leader-grid span { display: block; }.pulse-card small, .leader-grid small { color: var(--color-green); font-size: .64rem; font-weight: 700; text-transform: uppercase; }.pulse-card b, .leader-grid b { font-size: .9rem; margin: 5px 0; }.pulse-card span, .leader-grid span { color: #635c57; font-size: .72rem; }.rivalry-pulse { cursor: pointer; width: 100%; }.rivalry-pulse:hover { border-color: var(--color-gold); }.commissioner-desk { background: var(--color-dark); border-left: 5px solid var(--color-gold); border-radius: 6px; color: #fff; padding: 18px; }.commissioner-desk b { color: var(--color-gold); font-family: var(--font-display); text-transform: uppercase; }.commissioner-desk p { font-size: .86rem; line-height: 1.5; margin: 7px 0 0; }.leader-grid { grid-template-columns: repeat(4, 1fr); }.home-hardware .season-medal-grid { grid-template-columns: repeat(4, 1fr); }.archetype-badges { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 5px; }.archetype-badges i { background: rgba(185,130,0,.12); border: 1px solid rgba(185,130,0,.35); border-radius: 999px; color: #a57212; font-size: .56rem; font-style: normal; font-weight: 700; padding: 3px 5px; }.gauntlet-grid { display: grid; gap: 8px; grid-template-columns: repeat(2, 1fr); }.gauntlet-row { align-items: center; background: var(--color-bg); border: 1px solid rgba(27,20,16,.14); border-left: 4px solid var(--color-gold); border-radius: 7px; color: var(--color-text); cursor: pointer; display: flex; justify-content: space-between; padding: 11px; text-align: left; }.gauntlet-row:hover { border-color: var(--color-green); }.gauntlet-row small, .gauntlet-row b { display: block; }.gauntlet-row small { color: #635c57; font-size: .62rem; text-transform: uppercase; }.gauntlet-row b { font-size: .82rem; margin-top: 3px; }.gauntlet-row em { color: var(--color-green); font-size: .85rem; font-style: normal; font-weight: 700; }.season-timeline > div { border-left: 2px solid var(--color-gold); display: grid; gap: 12px; margin-left: 8px; padding-left: 18px; }.season-timeline article { background: var(--color-bg); border: 1px solid rgba(27,20,16,.13); border-radius: 6px; padding: 10px; position: relative; }.season-timeline article::before { background: var(--color-gold); border: 2px solid #fff; border-radius: 50%; content: ""; height: 10px; left: -25px; position: absolute; top: 15px; width: 10px; }.season-timeline small, .season-timeline b { display: block; }.season-timeline small { color: var(--color-green); font-size: .62rem; font-weight: 700; text-transform: uppercase; }.season-timeline b { font-size: .8rem; margin-top: 4px; }.trade-tree-empty { align-items: center; background: var(--color-bg); border: 1px dashed var(--color-gold); border-radius: 8px; display: flex; gap: 14px; padding: 18px; }.trade-tree-empty > span { font-size: 1.75rem; }.trade-tree-empty b { color: #a57212; }.trade-tree-empty p { color: #635c57; font-size: .78rem; margin: 5px 0 0; }
@media (max-width: 720px) { .pulse-grid, .leader-grid, .home-hardware .season-medal-grid { grid-template-columns: 1fr 1fr; }.gauntlet-grid { grid-template-columns: 1fr; } } @media (max-width: 450px) { .pulse-grid, .leader-grid, .home-hardware .season-medal-grid { grid-template-columns: 1fr; } }

/* ===== VERSION 2.0: SEASON HQ, NAVIGATION & ACCESSIBILITY ===== */
.nav-toggle { display: none; }
.nav-btn:focus-visible, button:focus-visible, a:focus-visible, select:focus-visible, summary:focus-visible { outline: 3px solid var(--color-gold); outline-offset: 3px; }
.compact-header .site-header { padding-bottom: 12px; padding-top: 18px; }
.compact-header .site-title { font-size: 1.7rem; }
.compact-header .site-tagline, .compact-header #championship-banners { display: none; }
.manager-jump { background: #fff; border: 1px solid rgba(27,20,16,.12); border-top: 0; display: flex; gap: 10px; padding: 14px 18px; }
.manager-jump a, .hq-link, .home-mode-grid > a { background: var(--color-gold); border-radius: 5px; color: var(--color-dark); font-size: .78rem; font-weight: 800; padding: 9px 12px; text-decoration: none; text-transform: uppercase; }
.hq-header { align-items: stretch; background: var(--color-dark); border: 1px solid var(--color-gold); border-radius: 9px; color: var(--color-bg); display: flex; gap: 18px; justify-content: space-between; margin: 26px 0 22px; padding: 24px; }
.hq-header h2 { color: var(--color-gold); font-family: var(--font-display); font-size: clamp(1.55rem, 4vw, 2.2rem); letter-spacing: 1px; text-transform: uppercase; }
.hq-header p { font-size: .85rem; margin-top: 5px; }.hq-kicker { color: var(--color-gold); font-size: .68rem; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
.hq-header aside { background: rgba(255,255,255,.08); border-left: 3px solid var(--color-gold); display: grid; gap: 5px; max-width: 290px; padding: 12px; }.hq-header aside small { color: var(--color-gold); font-size: .65rem; font-weight: 700; text-transform: uppercase; }.hq-header aside b { font-size: .82rem; line-height: 1.4; }
.hq-recap, .hq-picture { background: #fff; border: 1px solid rgba(27,20,16,.12); border-top: 0; padding: 18px; }.hq-recap > p, .hq-picture > p { line-height: 1.65; }.hq-recap dl { display: grid; gap: 10px; grid-template-columns: repeat(3, 1fr); margin-top: 16px; }.hq-recap dl div { background: var(--color-bg); border-left: 3px solid var(--color-gold); border-radius: 5px; padding: 11px; }.hq-recap dt { color: var(--color-green); font-size: .64rem; font-weight: 800; text-transform: uppercase; }.hq-recap dd { font-size: .78rem; line-height: 1.4; margin: 5px 0 0; }
.hq-empty { background: #fff; border: 1px dashed rgba(27,20,16,.25); border-top: 0; color: #635c57; font-size: .84rem; padding: 18px; }.hq-matchup-grid { background: #fff; border: 1px solid rgba(27,20,16,.12); border-top: 0; display: grid; gap: 12px; grid-template-columns: repeat(2, 1fr); padding: 14px; }.hq-matchup { background: var(--color-bg); border: 1px solid rgba(27,20,16,.16); border-radius: 8px; padding: 13px; }.hq-matchup.game-of-week { border-color: var(--color-gold); box-shadow: inset 0 0 0 1px rgba(200,155,60,.2); }.hq-matchup > div { align-items: center; display: grid; gap: 8px; grid-template-columns: 1fr auto; margin: 7px 0; }.hq-matchup span b, .hq-matchup span small { display: block; }.hq-matchup span b { font-size: .83rem; }.hq-matchup span small { color: #635c57; font-size: .67rem; margin-top: 2px; }.hq-matchup span.winner b { color: var(--color-green); }.hq-matchup strong { color: var(--color-green); font-family: var(--font-display); font-size: 1rem; }.hq-matchup p { border-top: 1px solid rgba(27,20,16,.12); color: #635c57; font-size: .7rem; line-height: 1.4; margin-top: 10px; padding-top: 8px; }.hq-matchup p b { color: var(--color-text); }.hq-kicker { display: block; }
.power-grid { background: #fff; border: 1px solid rgba(27,20,16,.12); border-top: 0; display: grid; gap: 10px; grid-template-columns: repeat(2, 1fr); padding: 14px; }.power-grid article { align-items: flex-start; background: var(--color-bg); border: 1px solid rgba(27,20,16,.14); border-radius: 7px; display: flex; gap: 12px; padding: 12px; }.power-grid article > span { align-items: center; background: var(--color-gold); border-radius: 50%; color: var(--color-dark); display: flex; flex: 0 0 33px; font-family: var(--font-display); font-weight: 700; height: 33px; justify-content: center; }.manager-inline { background: transparent; border: 0; color: var(--color-text); cursor: pointer; font: inherit; font-weight: 800; padding: 0; text-align: left; text-decoration: underline; text-decoration-color: rgba(200,155,60,.65); text-underline-offset: 3px; }.power-grid small { color: #635c57; display: block; font-size: .67rem; margin-top: 4px; }.power-grid p { font-size: .73rem; line-height: 1.4; margin-top: 6px; }.up { color: var(--color-green); }.down { color: #a13b47; }.neutral { color: #635c57; }
.hq-awards, .hq-leaders { background: #fff; border: 1px solid rgba(27,20,16,.12); border-top: 0; display: grid; gap: 11px; grid-template-columns: repeat(3, 1fr); padding: 14px; }.hq-awards article, .hq-leaders article { background: var(--color-bg); border: 1px solid rgba(27,20,16,.14); border-radius: 7px; padding: 13px; }.hq-awards article.positive { border-left: 4px solid var(--color-green); }.hq-awards small, .hq-awards b, .hq-awards span, .hq-leaders small, .hq-leaders b, .hq-leaders span { display: block; }.hq-awards small, .hq-leaders small { color: var(--color-green); font-size: .62rem; font-weight: 800; text-transform: uppercase; }.hq-awards b, .hq-leaders b { margin: 5px 0; }.hq-awards span, .hq-leaders span { color: #635c57; font-size: .72rem; line-height: 1.35; }.hq-leaders span { color: var(--color-green); font-weight: 800; }
.hq-picture > div { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0; }.hq-picture > div span { background: var(--color-bg); border: 1px solid rgba(27,20,16,.14); border-radius: 99px; font-size: .76rem; font-weight: 700; padding: 7px 10px; }.hq-picture small { color: #635c57; display: block; font-size: .73rem; }.hq-notes { background: #fff; border: 1px solid rgba(27,20,16,.12); border-top: 0; display: grid; gap: 9px; list-style: none; padding: 14px; }.hq-notes li { background: var(--color-bg); border-left: 3px solid var(--color-gold); border-radius: 4px; font-size: .82rem; line-height: 1.4; padding: 10px; }.matrix-mobile-note { background: #fff8de; border: 1px solid rgba(200,155,60,.5); border-bottom: 0; color: #635c57; font-size: .72rem; padding: 9px 12px; }
.league-story details { border-top: 1px solid rgba(27,20,16,.13); margin-top: 16px; padding-top: 12px; }.league-story summary { color: var(--color-green); cursor: pointer; font-size: .82rem; font-weight: 800; }.league-story details p { line-height: 1.6; margin-top: 12px; }.home-mode-grid { background: #fff; border: 1px solid rgba(27,20,16,.12); border-top: 0; display: grid; gap: 12px; grid-template-columns: 1fr 1fr auto; padding: 16px; }.home-mode-grid article { background: var(--color-bg); border-left: 3px solid var(--color-gold); padding: 11px; }.home-mode-grid small, .home-mode-grid b { display: block; }.home-mode-grid small { color: var(--color-green); font-size: .64rem; font-weight: 800; text-transform: uppercase; }.home-mode-grid b { font-size: .82rem; line-height: 1.4; margin-top: 5px; }.home-mode-grid > a { align-self: center; }
@media (max-width: 700px) { .nav-toggle { background: var(--color-dark); border: 0; color: var(--color-bg); cursor: pointer; display: block; font: 700 .78rem var(--font-body); padding: 12px 16px; text-transform: uppercase; width: 100%; }.main-nav { display: none; }.main-nav.open { display: grid; grid-template-columns: 1fr; }.nav-btn { min-height: 44px; text-align: left; }.compact-header .site-header { padding-bottom: 12px; }.hq-header { align-items: stretch; flex-direction: column; padding: 18px; }.hq-header aside { max-width: none; }.hq-recap dl, .hq-matchup-grid, .power-grid, .hq-awards, .hq-leaders, .home-mode-grid { grid-template-columns: 1fr; }.hq-matchup-grid { gap: 9px; }.manager-jump { flex-wrap: wrap; }.table-scroll::before { color: #635c57; content: "Swipe sideways to view all statistics"; display: block; font-size: .68rem; font-style: italic; margin-bottom: 7px; } }

/* ===== VERSION 2.1 REFINEMENTS ===== */
.manager-view-button { background: var(--color-bg); border: 1px solid rgba(27,20,16,.18); border-radius: 5px; color: var(--color-text); cursor: pointer; font: 800 .78rem var(--font-body); padding: 9px 12px; text-transform: uppercase; }.manager-view-button.active { background: var(--color-gold); border-color: var(--color-gold); color: var(--color-dark); }.hq-offseason-grid { background: #fff; border: 1px solid rgba(27,20,16,.12); border-bottom: 0; display: grid; gap: 12px; grid-template-columns: 1fr 1fr; padding: 14px; }.hq-offseason-grid article { background: var(--color-bg); border-left: 3px solid var(--color-gold); padding: 12px; }.hq-offseason-grid small, .hq-offseason-grid b { display: block; }.hq-offseason-grid small { color: var(--color-green); font-size: .64rem; font-weight: 800; text-transform: uppercase; }.hq-offseason-grid b { font-size: .84rem; line-height: 1.4; margin-top: 5px; }
@media (max-width: 700px) { .table-scroll::before { display: none; }.table-scroll:has(.career-table)::before { color: #635c57; content: "Swipe sideways to view all statistics"; display: block; font-size: .68rem; font-style: italic; margin-bottom: 7px; }.hq-offseason-grid { grid-template-columns: 1fr; }.nav-toggle span { font-size: 1.05rem; margin-right: 5px; } }
