.nhl-tracker,.nhl-team-page,.nhl-rest-leaderboard,.nhl-leaderboard{--b:#d8dee8;--h:#17365d;--s:#f4f7fb;font-size:.95rem;line-height:1.35}.nhl-tracker-day{margin:0 0 2rem}.nhl-tracker-date{margin:0 0 .75rem;color:var(--h);font-size:1.35rem}.nhl-tracker-table-wrap{overflow-x:auto;border:1px solid var(--b);border-radius:6px;background:#fff}.nhl-tracker-table{width:100%;min-width:980px;margin:0;border-collapse:collapse}.nhl-tracker-table thead{display:table-header-group}.nhl-tracker-table th,.nhl-tracker-table td{padding:.65rem .7rem;border-bottom:1px solid var(--b);text-align:center;vertical-align:middle}.nhl-tracker-table th{background:var(--h)!important;color:#fff!important;font-size:.78rem;letter-spacing:.02em;text-transform:uppercase;font-weight:700}.nhl-tracker-table tbody tr:nth-child(even){background:var(--s)}.nhl-team-abbr{display:inline-block;min-width:2.75rem;margin-right:.35rem;font-weight:700}.nhl-team-name{white-space:nowrap}.nhl-status-badge,.nhl-sequence{display:inline-block;padding:.16rem .36rem;border-radius:999px;font-size:.75rem;font-weight:700;white-space:nowrap}.nhl-status-badge.is-active{background:#f7dddd;color:#8a2c2c}.nhl-status-badge.is-inactive{background:transparent;color:#8b95a5;font-weight:500;padding:.08rem .16rem}.nhl-sequence{background:#e5edf8;color:var(--h)}.nhl-tracker-key,.nhl-tracker-empty{margin:.55rem 0 0;color:#5d6775;font-size:.82rem}.nhl-tracker-error{padding:.75rem;border-left:4px solid #b32d2e;background:#fcf0f1}
@media(max-width:700px){.nhl-tracker-table{min-width:0}.nhl-tracker-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.nhl-tracker-table,.nhl-tracker-table tbody,.nhl-tracker-table tr,.nhl-tracker-table td{display:block;width:100%}.nhl-tracker-table tr{padding:.55rem 0;border-bottom:2px solid var(--b)}.nhl-tracker-table td{display:grid;grid-template-columns:minmax(8.5rem,42%) 1fr;gap:.65rem;border:0;padding:.38rem .7rem;text-align:left}.nhl-tracker-table td:before{content:attr(data-label);font-weight:700;color:var(--h)}}
/* Team pages - v0.2.2 */
body.nhl-tracker-team-page .site.grid-container{max-width:1280px}
body.nhl-tracker-team-page .site-content{display:block}
body.nhl-tracker-team-page .content-area{float:none;width:100%;max-width:none}
body.nhl-tracker-team-page .widget-area{display:none}
body.nhl-tracker-team-page .inside-article{max-width:none}
.nhl-team-page{width:100%;max-width:none;margin:0}
.nhl-team-intro,.nhl-team-method-note{max-width:900px}.nhl-team-method-note{margin-top:26px}.nhl-guide-link{text-decoration-thickness:2px;text-underline-offset:2px}
.nhl-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px;margin:16px 0 24px}.nhl-summary-card{border:1px solid #dcdcde;border-radius:6px;padding:14px;background:#fff}.nhl-summary-value{display:block;font-size:1.35rem;font-weight:700;line-height:1.2}.nhl-summary-label{display:block;margin-top:5px;font-size:.88rem;color:#50575e}.nhl-team-link{display:inline-flex;align-items:baseline;gap:.4em;text-decoration-thickness:2px;text-underline-offset:2px}.nhl-team-link:hover,.nhl-team-link:focus,.nhl-guide-link:hover,.nhl-guide-link:focus{text-decoration-thickness:3px}.nhl-data-unavailable{padding:14px;border:1px solid #dcdcde;border-radius:6px;background:#f6f7f7}.nhl-team-form-table th,.nhl-team-form-table td,.nhl-team-games-table th,.nhl-team-games-table td{white-space:nowrap}.nhl-team-games-table{min-width:1060px}.nhl-team-games-table td:nth-child(3){text-align:left}.nhl-team-games-wrap{margin-top:12px}
@media (max-width:782px){body.nhl-tracker-team-page .site.grid-container{max-width:100%}.nhl-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nhl-team-page .nhl-tracker-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.nhl-team-games-table{min-width:0}}

/* League leaderboard pages - v0.3.0 */
body.nhl-tracker-leaderboard-page .site.grid-container{max-width:1280px}
body.nhl-tracker-leaderboard-page .site-content{display:block}
body.nhl-tracker-leaderboard-page .content-area{float:none;width:100%;max-width:none}
body.nhl-tracker-leaderboard-page .widget-area{display:none}
body.nhl-tracker-leaderboard-page .inside-article{max-width:none}
.nhl-rest-leaderboard{width:100%;max-width:none;margin:0}
.nhl-leaderboard-intro{max-width:920px}
.nhl-rest-table-wrap{margin:12px 0 28px}
.nhl-rest-schedule-table{min-width:900px}
.nhl-rest-performance-table{min-width:880px}
.nhl-rest-leaderboard .nhl-team-cell{text-align:left}
@media (max-width:782px){body.nhl-tracker-leaderboard-page .site.grid-container{max-width:100%}.nhl-rest-schedule-table,.nhl-rest-performance-table{min-width:0}}

/* Leaderboard header/spacing patch - v0.4.2 */
.nhl-leaderboard .nhl-tracker-table thead{display:table-header-group}
.nhl-leaderboard .nhl-tracker-table th{background:#17365d!important;color:#fff!important}
.nhl-leaderboard .nhl-protected-data + h2{margin-top:2rem}
.nhl-leaderboard .nhl-b2b-sequence-table{min-width:760px}


/* Home/Away comparison refinement - v0.4.3 */
.nhl-home-away-leaderboard .nhl-home-away-summary-wrap{margin:12px 0 30px}
.nhl-home-away-leaderboard .nhl-home-away-summary-table{min-width:900px}
.nhl-home-away-leaderboard .nhl-protected-data + h2{margin-top:2.25rem}
@media (max-width:782px){.nhl-home-away-leaderboard .nhl-home-away-summary-table{min-width:0}}

/* Daily dashboard refinement - v0.5.0 */
body.nhl-tracker-dashboard-page .site.grid-container{max-width:1280px}
body.nhl-tracker-dashboard-page .site-content{display:block}
body.nhl-tracker-dashboard-page .content-area{float:none;width:100%;max-width:none}
body.nhl-tracker-dashboard-page .widget-area{display:none}
body.nhl-tracker-dashboard-page .inside-article{max-width:none}
.nhl-tracker{width:100%;max-width:none;margin:0}
.nhl-tracker-date{display:flex;align-items:baseline;gap:.65rem;flex-wrap:wrap;margin-bottom:.8rem}
.nhl-day-label{font-size:1.45rem;color:#111827;font-weight:700}
.nhl-day-date{font-size:1rem;color:#5d6775;font-weight:500}
.nhl-day-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 14px}
.nhl-day-summary-card{border:1px solid var(--b);border-radius:6px;background:#fff;padding:10px 12px;min-width:0}
.nhl-day-summary-value{display:block;font-size:1.05rem;font-weight:700;color:#111827;line-height:1.2}
.nhl-day-summary-label{display:block;margin-top:3px;font-size:.72rem;color:#5d6775;line-height:1.25}
.nhl-daily-table{min-width:1120px}
.nhl-daily-table td:nth-child(1),.nhl-daily-table td:nth-child(2){text-align:left;min-width:220px}
.nhl-daily-team{display:flex;flex-direction:column;gap:3px;align-items:flex-start}
.nhl-daily-form{display:block;font-size:.69rem;color:#667085;white-space:nowrap;line-height:1.25}
.nhl-tracker-key{max-width:1000px;margin-top:.65rem}
@media(max-width:980px){.nhl-day-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){body.nhl-tracker-dashboard-page .site.grid-container{max-width:100%}.nhl-day-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.nhl-daily-table{min-width:0}.nhl-daily-table td:nth-child(1),.nhl-daily-table td:nth-child(2){min-width:0}.nhl-daily-form{white-space:normal}}

/* Homepage polish - v0.5.1 */
.nhl-tracker-intro{max-width:920px;margin:0 0 1.15rem;color:#394150}
.nhl-tracker-key-global{margin-top:.9rem;margin-bottom:0}


/* NHL team directory */
.nhl-teams-directory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 18px;margin:22px 0 8px}
.nhl-teams-directory-link{display:block;padding:10px 12px;border:1px solid #e1e4e8;border-radius:4px;background:#fff;text-decoration:none;font-weight:600}
@media (max-width:900px){.nhl-teams-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:520px){.nhl-teams-directory-grid{grid-template-columns:1fr;}}


/* Dedicated mobile dashboard cards - v0.6.7 */
.nhl-mobile-matchups{display:none}
@media(max-width:700px){
  body.nhl-tracker-dashboard-page .inside-article{padding-left:14px;padding-right:14px}
  .nhl-tracker-intro{font-size:.9rem;line-height:1.45;margin-bottom:1rem}
  .nhl-tracker-date{gap:.25rem;margin-bottom:.7rem}
  .nhl-day-label{font-size:1.2rem}
  .nhl-day-date{font-size:.9rem;width:100%}
  .nhl-day-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}
  .nhl-day-summary-card{padding:9px 10px}
  .nhl-day-summary-value{font-size:1rem}
  .nhl-day-summary-label{font-size:.68rem}
  .nhl-daily-table-wrap{display:none}
  .nhl-mobile-matchups{display:grid;grid-template-columns:1fr;gap:12px}
  .nhl-mobile-matchup-card{min-width:0;border:1px solid var(--b);border-radius:7px;background:#fff;overflow:hidden;box-shadow:0 1px 0 rgba(17,24,39,.03)}
  .nhl-mobile-team-row{display:grid;grid-template-columns:3.5rem minmax(0,1fr);gap:.45rem;align-items:start;padding:.62rem .7rem;border-bottom:1px solid #e6eaf0}
  .nhl-mobile-team-row + .nhl-mobile-team-row{background:#fafbfd}
  .nhl-mobile-role{padding-top:.05rem;font-size:.68rem;line-height:1.35;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#667085}
  .nhl-mobile-team-body{min-width:0}
  .nhl-mobile-team-body .nhl-daily-team{min-width:0;gap:2px}
  .nhl-mobile-team-body .nhl-team-link{display:grid;grid-template-columns:2.65rem minmax(0,1fr);gap:.2rem;align-items:baseline;min-width:0}
  .nhl-mobile-team-body .nhl-team-abbr{min-width:0;margin-right:0}
  .nhl-mobile-team-body .nhl-team-name{white-space:normal;overflow-wrap:anywhere}
  .nhl-mobile-team-body .nhl-daily-form{font-size:.66rem;line-height:1.3;white-space:normal;color:#667085}
  .nhl-mobile-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .nhl-mobile-metric{min-width:0;padding:.55rem .7rem;border-top:1px solid #e6eaf0}
  .nhl-mobile-metric:nth-child(odd){border-right:1px solid #e6eaf0}
  .nhl-mobile-metric-wide{grid-column:1/-1;border-right:0!important}
  .nhl-mobile-metric-label{display:block;margin-bottom:.18rem;font-size:.64rem;line-height:1.25;font-weight:700;letter-spacing:.035em;text-transform:uppercase;color:#667085}
  .nhl-mobile-metric-value{display:block;min-width:0;font-size:.82rem;line-height:1.35;color:#111827;overflow-wrap:anywhere}
  .nhl-mobile-condition{display:inline-block;border-radius:999px;padding:.08rem .3rem;font-size:.7rem;line-height:1.4;white-space:nowrap}
  .nhl-mobile-condition.is-active{background:#f7dddd;color:#8a2c2c;font-weight:700}
  .nhl-mobile-condition.is-inactive{color:#7b8492;background:#eef2f6}
  .nhl-mobile-cond-sep{color:#98a2b3}
  .nhl-tracker-key-global{font-size:.75rem;line-height:1.4}
}
@media(max-width:380px){
  body.nhl-tracker-dashboard-page .inside-article{padding-left:10px;padding-right:10px}
  .nhl-day-summary{gap:6px}
  .nhl-day-summary-card{padding:8px}
  .nhl-mobile-team-row{grid-template-columns:3.1rem minmax(0,1fr);padding:.58rem .6rem}
  .nhl-mobile-metric{padding:.5rem .6rem}
  .nhl-mobile-metric-value{font-size:.78rem}
}


/* Team-page mobile game cards - v0.6.8 */
.nhl-team-games-mobile{display:none}
@media(max-width:700px){
  .nhl-team-games-desktop{display:none}
  .nhl-team-games-mobile{display:grid;grid-template-columns:1fr;gap:10px;margin-top:12px}
  .nhl-team-game-card{min-width:0;border:1px solid #d8dee8;border-radius:7px;background:#fff;overflow:hidden}
  .nhl-team-game-card-head{display:flex;justify-content:space-between;gap:10px;padding:.58rem .68rem;background:#f4f7fb;border-bottom:1px solid #e2e7ef}
  .nhl-team-game-date{font-weight:700;color:#17365d}
  .nhl-team-game-ha{font-size:.78rem;font-weight:700;color:#667085}
  .nhl-team-game-opponent{display:grid;grid-template-columns:4.8rem minmax(0,1fr);gap:.5rem;align-items:start;padding:.62rem .68rem;border-bottom:1px solid #e6eaf0}
  .nhl-team-game-opponent-link{min-width:0}
  .nhl-team-game-opponent-link .nhl-team-link{display:grid;grid-template-columns:2.65rem minmax(0,1fr);gap:.2rem;min-width:0}
  .nhl-team-game-opponent-link .nhl-team-abbr{min-width:0;margin-right:0}
  .nhl-team-game-opponent-link .nhl-team-name{white-space:normal;overflow-wrap:anywhere}
  .nhl-team-game-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .nhl-team-game-grid>div{min-width:0;padding:.5rem .68rem;border-top:1px solid #edf0f4}
  .nhl-team-game-grid>div:nth-child(odd){border-right:1px solid #edf0f4}
  .nhl-team-game-label{display:block;margin-bottom:.14rem;font-size:.65rem;line-height:1.2;font-weight:700;text-transform:uppercase;letter-spacing:.035em;color:#667085}
  .nhl-team-game-grid span:not(.nhl-team-game-label){font-size:.8rem;line-height:1.35;overflow-wrap:anywhere}
  .nhl-team-game-condition{display:inline-block;padding:.07rem .28rem;border-radius:999px}
  .nhl-team-game-condition.is-active{background:#f7dddd;color:#8a2c2c;font-weight:700}
  .nhl-team-game-condition.is-inactive{background:#eef2f6;color:#7b8492}
}
@media(max-width:380px){
  .nhl-team-game-card-head,.nhl-team-game-opponent,.nhl-team-game-grid>div{padding-left:.58rem;padding-right:.58rem}
  .nhl-team-game-opponent{grid-template-columns:4.25rem minmax(0,1fr)}
  .nhl-team-game-grid span:not(.nhl-team-game-label){font-size:.76rem}
}
