:root {
  --habs-bg: #091019;
  --habs-panel: #131c28;
  --habs-panel-2: #1b2533;
  --habs-red: #d20a2e;
  --habs-red-bright: #f0314f;
  --habs-cream: #f6f1e5;
  --habs-text: #e5e7eb;
  --habs-muted: #aeb6c2;
  --habs-line: rgba(255, 255, 255, 0.12);
  --habs-shadow: 0 18px 46px rgba(0, 0, 0, 0.28);
}

/* Compact standings hub */
.habs-standings{width:min(100%,1080px);margin:24px auto}
.habs-standings-heading{align-items:end;margin-bottom:12px;padding-bottom:14px;border-bottom:1px solid var(--habs-line)}
.habs-standings-heading h2{margin-bottom:0}
.habs-standings-toolbar{display:flex;align-items:end;justify-content:flex-end;gap:8px}
.habs-standings-toolbar label{display:grid;gap:4px}
.habs-standings-toolbar label>span{color:var(--habs-muted);font-size:.58rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.habs-standings-toolbar select{min-width:128px;height:38px;padding:0 34px 0 11px;border:1px solid var(--habs-line);border-radius:8px;background:#091522;color:var(--habs-cream);font:inherit;font-size:.78rem;font-weight:800;cursor:pointer}
.habs-standings-toolbar select:focus-visible{outline:3px solid rgba(240,49,79,.34);outline-offset:2px;border-color:var(--habs-red-bright)}
.habs-standings-preseason{margin:0 0 10px;padding:9px 12px;border-left:3px solid #4d9ce5;background:rgba(17,71,121,.14);color:var(--habs-muted);font-size:.76rem}
.habs-montreal-context{display:flex;align-items:center;gap:0;margin:0 0 10px;overflow:hidden;border:1px solid rgba(240,49,79,.28);border-left:4px solid var(--habs-red-bright);border-radius:8px;background:linear-gradient(90deg,rgba(210,10,46,.15),rgba(3,8,14,.2));color:var(--habs-muted);font-size:.74rem}
.habs-montreal-context>*{padding:8px 12px;border-right:1px solid var(--habs-line);white-space:nowrap}
.habs-montreal-context strong{color:#fff;letter-spacing:.06em}
.habs-montreal-context span:last-child{margin-left:auto;border-right:0;color:var(--habs-cream);font-weight:800}
.habs-standings-panel{margin-top:10px}
.habs-standings-panel-heading{display:flex;align-items:center;justify-content:space-between;margin:0;padding:9px 2px 8px}
.habs-standings-panel-heading h3{font-size:1rem}
.habs-standings-table-wrap{border-radius:8px}
.habs-standings-table{min-width:780px;font-size:.76rem}
.habs-standings-table thead th{position:sticky;top:0;z-index:3;padding:8px 7px;background:#0c1b2b;color:#aeb9c6;font-size:.62rem;letter-spacing:.06em}
.habs-standings-table tbody th,.habs-standings-table tbody td{height:42px;padding:6px 7px;border-bottom-color:rgba(255,255,255,.065)}
.habs-standings-table .habs-standing-rank{width:38px}
.habs-standings-table .habs-team-name{min-width:190px;white-space:nowrap}
.habs-standing-logo{float:left;width:26px;height:26px;margin:-3px 9px -3px 0}
.habs-standings-table .is-montreal th,.habs-standings-table .is-montreal td{background:rgba(210,10,46,.12)}
.habs-standings-table .is-montreal .habs-team-name{box-shadow:inset 4px 0 0 var(--habs-red-bright);color:#fff}
.habs-wildcard-grid{gap:12px}
.habs-wildcard-block h4{margin-bottom:6px;font-size:.82rem}
.habs-wildcard-race{margin-top:12px}
.habs-wildcard-race-head{margin-bottom:5px}
.habs-wildcard-conferences{display:grid;gap:24px}
.habs-wildcard-conference{padding-top:4px}
.habs-wildcard-conference+.habs-wildcard-conference{padding-top:22px;border-top:1px solid var(--habs-line)}
.habs-wildcard-pending{margin:0;padding:14px 16px;border:1px solid var(--habs-line);border-left:3px solid #4d9ce5;border-radius:8px;background:rgba(17,71,121,.1);color:var(--habs-muted);font-size:.78rem}
.habs-playoff-cut-line td{height:auto!important;padding:4px 10px!important}
.habs-standings>.habs-source-note{margin:9px 0 0;font-size:.66rem}

@media (max-width:820px){
  .habs-standings{margin:16px auto}
  .habs-standings-heading{display:block}
  .habs-standings-toolbar{display:grid;grid-template-columns:1fr 1fr;margin-top:12px}
  .habs-standings-toolbar label:first-child{grid-column:1/-1}
  .habs-standings-toolbar select{width:100%;min-width:0}
  .habs-montreal-context{overflow-x:auto}
  .habs-montreal-context span:last-child{margin-left:0}
  .habs-wildcard-grid{grid-template-columns:1fr}
}

@media (max-width:520px){
  .habs-standings-toolbar{grid-template-columns:1fr}
  .habs-standings-toolbar label:first-child{grid-column:auto}
  .habs-montreal-context>*{padding:7px 9px}
}

.habs-live-data,
.habs-live-data * {
  box-sizing: border-box;
}

.habs-live-data {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  color: var(--habs-text);
  font-family: inherit;
  line-height: 1.5;
}

.habs-live-data [hidden] {
  display: none !important;
}

.habs-live-data a {
  color: var(--habs-red-bright);
  text-underline-offset: 3px;
}

.habs-live-data h2,
.habs-live-data h3,
.habs-live-data p {
  margin-top: 0;
}

.habs-section-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 22px;
}

.habs-section-heading h2,
.habs-scoreboard-shell > h2 {
  margin: 0;
  color: var(--habs-cream);
  font-size: clamp(1.8rem, 4vw, 2.75rem);
  line-height: 1.08;
}

.habs-kicker {
  margin: 0 0 8px;
  color: var(--habs-red-bright);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.habs-season-pill,
.habs-record-chip {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 6px 13px;
  border: 1px solid var(--habs-line);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.06);
  color: var(--habs-cream);
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  white-space: nowrap;
}

.habs-data-note,
.habs-source-note,
.habs-availability-note {
  color: var(--habs-muted);
  font-size: 0.88rem;
}

.habs-data-delay {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 5px 10px;
  margin: 0 0 20px;
  padding: 12px 14px;
  border: 1px solid rgba(240, 49, 79, 0.38);
  border-left: 4px solid var(--habs-red-bright);
  border-radius: 10px;
  background: rgba(210, 10, 46, 0.12);
  color: var(--habs-muted);
  font-size: 0.82rem;
}

.habs-data-delay strong {
  color: var(--habs-cream);
  font-size: 0.84rem;
}

.habs-scoreboard-shell > .habs-data-delay {
  margin: 18px clamp(18px, 4vw, 30px) 0;
}

/* Scoreboard */
.habs-live-data.habs-scoreboard {
  width: 100%;
  max-width: 1180px;
  margin: 30px auto;
}

.habs-scoreboard-shell {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--habs-line);
  border-radius: 22px;
  background:
    radial-gradient(circle at 0 0, rgba(210, 10, 46, 0.2), transparent 36%),
    linear-gradient(145deg, #1a2738, #0d1623 72%);
  box-shadow: var(--habs-shadow);
}

.habs-scoreboard-shell::before {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.08);
  content: "";
  pointer-events: none;
}

.habs-scoreboard-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 62px;
  padding: 14px clamp(18px, 4vw, 30px);
  border-bottom: 1px solid var(--habs-line);
  background: rgba(3, 8, 14, 0.28);
}

.habs-scoreboard-topline .habs-kicker {
  margin: 0;
}

.habs-scoreboard-state {
  display: flex;
  align-items: center;
  gap: 11px;
}

.habs-live-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #7e8996;
  box-shadow: 0 0 0 5px rgba(126, 137, 150, 0.1);
}

.habs-scoreboard-shell.is-live .habs-live-dot {
  background: var(--habs-red-bright);
  box-shadow: 0 0 0 5px rgba(240, 49, 79, 0.14), 0 0 18px rgba(240, 49, 79, 0.7);
  animation: habs-live-pulse 1.5s ease-in-out infinite;
}

.habs-scoreboard-date {
  padding-left: 11px;
  border-left: 1px solid var(--habs-line);
  color: var(--habs-muted);
  font-size: 0.76rem;
  font-weight: 700;
}

.habs-scoreboard-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  padding: clamp(24px, 4vw, 38px) clamp(20px, 5vw, 48px) 0;
}

.habs-scoreboard-heading > div > span {
  color: var(--habs-red-bright);
  font-size: 0.67rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.habs-scoreboard-heading h2 {
  margin-top: 6px;
}

.habs-scoreboard-heading > p {
  margin: 0;
  color: var(--habs-cream);
  font-size: 0.85rem;
  font-weight: 800;
  text-align: right;
}

.habs-scoreboard-heading > p small {
  display: block;
  margin-top: 4px;
  color: var(--habs-muted);
  font-size: 0.74rem;
  font-weight: 600;
}

.habs-matchup {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(130px, 0.58fr) minmax(0, 1fr);
  align-items: stretch;
  min-height: 250px;
  margin-top: 20px;
  border-bottom: 1px solid var(--habs-line);
}

.habs-matchup-team {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 16px;
  min-width: 0;
  padding: 28px clamp(18px, 4vw, 42px);
}

.habs-matchup-team:last-child {
  align-items: flex-end;
  text-align: right;
}

.habs-team-lockup {
  display: flex;
  align-items: center;
  gap: clamp(14px, 2vw, 24px);
  min-width: 0;
}

.habs-matchup-team:last-child .habs-team-lockup {
  flex-direction: row-reverse;
}

.habs-team-logo {
  position: relative;
  display: grid;
  flex: 0 0 92px;
  overflow: hidden;
  place-items: center;
  width: 92px;
  height: 92px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 24px;
  background:
    radial-gradient(circle at 32% 24%, rgba(255, 255, 255, 0.16), transparent 42%),
    rgba(4, 10, 17, 0.54);
}

.habs-team-logo img {
  position: absolute;
  inset: 8px;
  z-index: 1;
  display: block;
  width: calc(100% - 16px);
  height: calc(100% - 16px);
  object-fit: contain;
  filter: drop-shadow(0 15px 20px rgba(0, 0, 0, 0.34));
}

.habs-team-monogram {
  color: var(--habs-cream);
  font-size: clamp(1rem, 2.3vw, 1.35rem);
  font-weight: 950;
  letter-spacing: 0.04em;
  line-height: 1;
}

.habs-team-lockup strong {
  display: block;
  color: var(--habs-cream);
  font-size: clamp(1.2rem, 2.7vw, 2rem);
  font-weight: 900;
  letter-spacing: -0.03em;
  line-height: 1;
}

.habs-team-lockup small {
  display: block;
  margin-bottom: 4px;
  color: var(--habs-muted);
  font-size: 0.78rem;
}

.habs-home-away {
  color: #7f8a98 !important;
  font-size: 0.62rem;
  font-weight: 900;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.habs-matchup-center {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-align: center;
}

.habs-score {
  color: var(--habs-cream);
  font-size: clamp(3rem, 7vw, 5.8rem);
  font-weight: 900;
  line-height: 0.86;
  letter-spacing: -0.05em;
}

.habs-score b {
  padding: 0 0.12em;
  color: var(--habs-red-bright);
  font-size: 0.45em;
  font-weight: 400;
  vertical-align: 0.28em;
}

.habs-at {
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  border: 1px solid var(--habs-line);
  border-radius: 50%;
  background: radial-gradient(circle at 38% 30%, #3c4856, #080d14 64%);
  box-shadow: 0 18px 32px rgba(0, 0, 0, 0.35);
  color: var(--habs-cream);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.habs-game-status {
  color: var(--habs-muted);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.habs-broadcast-panel {
  display: flex;
  align-items: center;
  gap: 30px;
  min-height: 88px;
  padding: 17px clamp(18px, 4vw, 30px);
  background: rgba(3, 8, 14, 0.3);
}

.habs-broadcast-heading {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 178px;
}

.habs-tv-icon {
  display: grid;
  place-items: center;
  width: 40px;
  height: 30px;
  border: 2px solid var(--habs-red-bright);
  border-radius: 7px;
  color: #fff;
  font-size: 0.59rem;
  font-weight: 900;
  letter-spacing: 0.08em;
}

.habs-broadcast-heading small {
  display: block;
  color: #7f8a98;
  font-size: 0.61rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.habs-broadcast-heading strong {
  display: block;
  margin-top: 2px;
  color: var(--habs-cream);
  font-size: 0.84rem;
}

.habs-broadcast-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding-left: 28px;
  border-left: 1px solid var(--habs-line);
}

.habs-broadcast-chip,
.habs-broadcast-pending {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 8px 13px;
  border: 1px solid var(--habs-line);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.05);
  color: var(--habs-cream);
  font-size: 0.75rem;
  font-weight: 850;
}

.habs-broadcast-chip small {
  margin-left: 8px;
  padding-left: 8px;
  border-left: 1px solid var(--habs-line);
  color: var(--habs-muted);
  font-size: 0.58rem;
  letter-spacing: 0.06em;
}

.habs-broadcast-pending {
  border-style: dashed;
  color: var(--habs-muted);
  font-weight: 650;
}

.habs-broadcast-panel + .habs-availability-note {
  margin: 0;
  padding: 0 clamp(18px, 4vw, 30px) 17px;
  background: rgba(3, 8, 14, 0.3);
  font-size: 0.72rem;
}

.habs-scoring-details {
  margin: 20px clamp(18px, 4vw, 30px) 0;
  border: 1px solid var(--habs-line);
  border-radius: 12px;
  background: rgba(0, 0, 0, 0.14);
}

.habs-scoring-details summary {
  padding: 14px 16px;
  color: var(--habs-cream);
  font-weight: 800;
  cursor: pointer;
}

.habs-scoring-list {
  padding: 0 16px 14px;
}

.habs-scoring-play {
  display: grid;
  grid-template-columns: 62px minmax(0, 1fr);
  gap: 12px;
  padding: 11px 0;
  border-top: 1px solid var(--habs-line);
}

.habs-scoring-play > span {
  color: var(--habs-red-bright);
  font-weight: 850;
}

.habs-scoring-play strong,
.habs-following-game strong {
  display: block;
  color: var(--habs-cream);
}

.habs-scoring-play small,
.habs-following-game small {
  display: block;
  margin-top: 3px;
  color: var(--habs-muted);
}

.habs-following-game {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  margin: 20px clamp(18px, 4vw, 30px) 0;
  padding: 16px;
  border: 1px solid var(--habs-line);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.04);
}

.habs-following-game > span {
  color: var(--habs-red-bright);
  font-size: 0.72rem;
  font-weight: 850;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.habs-scoreboard-refresh {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 15px clamp(18px, 4vw, 30px) 17px;
  color: #73808e;
  font-size: 0.68rem;
  font-weight: 700;
}

.habs-scoreboard-refresh > span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #76818f;
}

.habs-scoreboard-refresh > span.is-pulsing {
  background: var(--habs-red-bright);
  animation: habs-live-pulse 1.5s ease-in-out infinite;
}

@keyframes habs-live-pulse {
  50% { opacity: 0.4; }
}

/* Compact Game Centre */
.habs-matchup-compact{min-height:160px;margin-top:8px}.habs-matchup-compact .habs-matchup-team{padding-block:18px}.habs-matchup-compact .habs-team-logo{flex-basis:68px;width:68px;height:68px;border-radius:18px}.habs-matchup-compact .habs-team-lockup strong{font-size:clamp(1.05rem,2.2vw,1.55rem)}.habs-matchup-compact .habs-score{font-size:clamp(2.4rem,5vw,4rem)}
.habs-gamecentre-details{border-top:1px solid var(--habs-line);background:rgba(2,8,16,.28)}.habs-gamecentre-details>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px clamp(18px,4vw,30px);color:var(--habs-cream);font-weight:900;cursor:pointer;list-style:none}.habs-gamecentre-details>summary::-webkit-details-marker{display:none}.habs-gamecentre-details>summary span:after{content:' +';color:var(--habs-red-bright)}.habs-gamecentre-details[open]>summary span:after{content:' −'}.habs-gamecentre-details>summary small{color:var(--habs-muted);font-size:.7rem;font-weight:650}.habs-gamecentre-body{padding:0 clamp(18px,4vw,30px) 22px}
.habs-live-rink-wrap{display:grid;grid-template-columns:190px minmax(0,1fr);gap:18px;align-items:center;padding:20px 0}.habs-rink-status strong{display:block;color:var(--habs-cream);font-size:1rem}.habs-rink-status span{display:block;margin-top:5px;color:var(--habs-muted);font-size:.74rem}.habs-live-rink{position:relative;overflow:hidden;aspect-ratio:2.05/1;border:3px solid rgba(198,25,48,.75);border-radius:42px;background:linear-gradient(rgba(230,246,255,.93),rgba(211,237,249,.96));box-shadow:inset 0 0 28px rgba(20,71,122,.13)}.habs-live-rink:before,.habs-live-rink:after{position:absolute;top:0;bottom:0;width:2px;background:rgba(32,91,169,.62);content:''}.habs-live-rink:before{left:25%}.habs-live-rink:after{right:25%}.habs-rink-line{position:absolute;top:0;bottom:0;left:50%;width:3px;background:rgba(198,25,48,.58)}.habs-rink-circle{position:absolute;top:50%;width:18%;aspect-ratio:1;border:2px solid rgba(198,25,48,.38);border-radius:50%;transform:translateY(-50%)}.habs-rink-circle.is-one{left:8%}.habs-rink-circle.is-two{right:8%}.habs-rink-team{position:absolute;bottom:7px;color:#0b2345;font-size:.62rem;font-weight:950}.habs-rink-team.is-away{left:11px}.habs-rink-team.is-home{right:11px}.habs-rink-event{position:absolute;width:8px;height:8px;border:2px solid #fff;border-radius:50%;background:#1c5da8;box-shadow:0 1px 4px rgba(0,0,0,.4);transform:translate(-50%,-50%)}.habs-rink-event.is-home{background:#d20a2e}.habs-rink-event.is-goal{width:14px;height:14px;box-shadow:0 0 0 5px rgba(240,49,79,.24)}.habs-rink-empty{margin:5px 0 0;color:var(--habs-muted);font-size:.7rem;text-align:right}
.habs-game-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:4px 0 18px}.habs-game-info-card{min-height:96px;padding:13px;border:1px solid var(--habs-line);border-radius:12px;background:rgba(255,255,255,.035)}.habs-game-info-card>span{display:block;margin-bottom:9px;color:var(--habs-red-bright);font-size:.65rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.habs-game-info-card strong{display:block;margin:4px 0;color:var(--habs-cream);font-size:.76rem;line-height:1.42}.habs-game-info-card p{display:flex;align-items:flex-start;gap:7px;margin:0;color:var(--habs-muted);font-size:.7rem;line-height:1.45}.habs-game-info-card p i{flex:0 0 7px;width:7px;height:7px;margin-top:4px;border-radius:50%;background:#75839a;box-shadow:0 0 0 3px rgba(117,131,154,.14)}.habs-game-info-card.is-pending{min-height:auto;background:rgba(255,255,255,.018);border-style:dashed}.habs-game-info-card.has-data{border-color:rgba(255,255,255,.22);box-shadow:inset 3px 0 0 var(--habs-red)}.habs-gamecentre-body .habs-broadcast-panel{margin-inline:0;padding-inline:0;background:transparent}.habs-gamecentre-body .habs-availability-note{padding-inline:0;background:transparent}.habs-gamecentre-body .habs-scoring-details{margin-inline:0}
@media(max-width:760px){.habs-scoreboard-heading{padding-top:18px}.habs-matchup-compact{min-height:138px}.habs-matchup-compact .habs-team-logo{flex-basis:52px;width:52px;height:52px}.habs-live-rink-wrap{grid-template-columns:1fr}.habs-game-info-grid{grid-template-columns:1fr 1fr}.habs-gamecentre-details>summary small{display:none}}
@media(max-width:480px){.habs-game-info-grid{grid-template-columns:1fr}.habs-game-info-card{min-height:auto}.habs-scoreboard-topline{min-height:50px}.habs-matchup-compact .habs-matchup-team{padding-inline:10px}.habs-matchup-compact .habs-team-lockup{gap:8px}.habs-matchup-compact .habs-team-lockup small{display:none}}

/* Game Centre density and broadcast polish — v2.4 */
.habs-scoreboard-shell{border-radius:18px;background:linear-gradient(135deg,#17263a 0%,#0a1422 52%,#111d2b 100%);box-shadow:0 18px 50px rgba(2,7,14,.36),inset 0 1px rgba(255,255,255,.07)}
.habs-scoreboard-shell:after{position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--habs-red) 0 38%,#f0d7af 38% 62%,#174a85 62%);content:'';pointer-events:none}
.habs-scoreboard-topline{min-height:48px;padding-block:10px;background:rgba(2,7,14,.46)}
.habs-scoreboard-heading{align-items:center;padding:16px clamp(20px,4vw,34px) 4px}
.habs-scoreboard-heading h2{font-size:clamp(1.35rem,2.6vw,2rem);letter-spacing:-.025em}
.habs-matchup-compact{position:relative;isolation:isolate;overflow:hidden;min-height:142px;margin-top:0;border-bottom:0}
.habs-matchup-wash{position:absolute;z-index:-1;top:-40%;width:45%;height:180%;filter:blur(20px);opacity:.34;pointer-events:none}
.habs-matchup-wash.is-away{left:-8%;background:radial-gradient(circle,rgba(44,104,169,.62),transparent 68%)}
.habs-matchup-wash.is-home{right:-8%;background:radial-gradient(circle,rgba(210,10,46,.58),transparent 68%)}
.habs-matchup-compact .habs-matchup-team{padding-block:14px}
.habs-matchup-compact .habs-team-logo{flex-basis:72px;width:72px;height:72px;border-color:rgba(255,255,255,.2);background:radial-gradient(circle at 35% 25%,rgba(255,255,255,.19),transparent 42%),rgba(2,8,16,.58);box-shadow:0 12px 28px rgba(0,0,0,.28)}
.habs-matchup-compact .habs-team-lockup strong{font-size:clamp(1.08rem,2.2vw,1.65rem);text-shadow:0 2px 16px rgba(0,0,0,.45)}
.habs-matchup-center{position:relative;gap:7px}
.habs-matchup-center:before{position:absolute;z-index:-1;width:104px;height:104px;border:1px solid rgba(255,255,255,.09);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.08),rgba(3,9,16,.44) 68%);box-shadow:0 16px 32px rgba(0,0,0,.22);content:''}
.habs-matchup-compact .habs-score{font-size:clamp(2.6rem,5.2vw,4.25rem);font-variant-numeric:tabular-nums;text-shadow:0 5px 22px rgba(0,0,0,.46)}
.habs-matchup-compact .habs-at{width:62px;height:62px;border-color:rgba(255,255,255,.16);background:radial-gradient(circle at 38% 30%,#33455b,#050b13 67%)}
.habs-game-status{max-width:150px;padding:5px 9px;border:1px solid rgba(255,255,255,.1);border-radius:999px;background:rgba(3,9,16,.68);color:#d9e0e8;font-size:.66rem;line-height:1.2}
.habs-scoreboard-shell.is-live .habs-game-status{border-color:rgba(240,49,79,.42);background:rgba(198,25,48,.18);color:#fff}
.habs-centre-rule{width:38px;height:2px;background:linear-gradient(90deg,transparent,var(--habs-red-bright),transparent)}
.habs-gamecentre-details{border-top:1px solid rgba(255,255,255,.11);background:rgba(2,7,14,.4)}
.habs-gamecentre-details>summary{justify-content:flex-start;min-height:48px;padding-block:11px;background:rgba(255,255,255,.018)}
.habs-gamecentre-details>summary span{font-size:.84rem;letter-spacing:.02em}
.habs-gamecentre-details>summary span:after,.habs-gamecentre-details[open]>summary span:after{content:''}
.habs-gamecentre-details>summary small{margin-left:auto}
.habs-gamecentre-details>summary i{position:relative;flex:0 0 26px;width:26px;height:26px;border:1px solid var(--habs-line);border-radius:50%}
.habs-gamecentre-details>summary i:before,.habs-gamecentre-details>summary i:after{position:absolute;top:50%;left:50%;width:8px;height:2px;background:var(--habs-red-bright);content:'';transform:translate(-50%,-50%)}
.habs-gamecentre-details>summary i:after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .2s ease}
.habs-gamecentre-details[open]>summary i:after{transform:translate(-50%,-50%) rotate(0)}
.habs-gamecentre-body{padding-top:14px}
.habs-rink-status{padding:10px 13px;border-left:3px solid var(--habs-red);background:rgba(255,255,255,.025)}
.habs-live-rink-wrap{grid-template-columns:180px minmax(320px,620px);justify-content:center;gap:16px;padding:4px 0 16px}
.habs-live-rink{border-width:2px;border-radius:34px}
.habs-scoreboard-shell.is-pregame .habs-live-rink-wrap{grid-template-columns:minmax(0,1fr);max-width:660px;margin-inline:auto}
.habs-scoreboard-shell.is-pregame .habs-rink-status{text-align:left}
.habs-scoreboard-shell.is-pregame .habs-live-rink{justify-self:center;width:min(100%,460px);opacity:.72}
.habs-scoreboard-shell.is-final .habs-live-rink-wrap{grid-template-columns:170px minmax(300px,540px)}
.habs-game-info-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:12px}
.habs-game-info-card{min-height:82px;padding:11px 12px}
.habs-game-info-card.is-pending{min-height:68px}
.habs-gamecentre-body .habs-broadcast-panel{min-height:66px;padding-block:10px;border-top:1px solid var(--habs-line)}
.habs-gamecentre-body .habs-broadcast-heading{min-width:150px}
.habs-gamecentre-body .habs-broadcast-list{padding-left:18px}
.habs-gamecentre-body .habs-availability-note{padding-bottom:9px;font-size:.65rem}
.habs-scoreboard-refresh{padding-block:10px 12px;background:rgba(2,7,14,.25)}

@media(max-width:760px){.habs-scoreboard-heading{padding-top:14px}.habs-matchup-compact{min-height:132px}.habs-matchup-compact .habs-team-logo{flex-basis:56px;width:56px;height:56px;border-radius:15px}.habs-matchup-center:before{width:82px;height:82px}.habs-live-rink-wrap,.habs-scoreboard-shell.is-final .habs-live-rink-wrap{grid-template-columns:1fr;max-width:560px;margin-inline:auto}.habs-scoreboard-shell.is-pregame .habs-live-rink{width:min(100%,390px)}.habs-game-info-card{min-height:auto}.habs-gamecentre-details>summary{gap:10px}}
@media(max-width:560px){.habs-scoreboard-heading{display:grid;grid-template-columns:1fr auto;gap:12px;padding-inline:16px}.habs-scoreboard-heading>p{text-align:right}.habs-scoreboard-heading>p small{max-width:145px}.habs-matchup-compact{grid-template-columns:1fr 68px 1fr;min-height:132px}.habs-matchup-compact .habs-matchup-team{padding-block:13px}.habs-matchup-compact .habs-at{width:50px;height:50px}.habs-matchup-center:before{width:72px;height:72px}.habs-gamecentre-body{padding-inline:14px}.habs-game-info-grid{grid-template-columns:1fr}.habs-gamecentre-body .habs-broadcast-panel{gap:10px}.habs-scoreboard-refresh{padding-inline:16px}}
@media(max-width:390px){.habs-scoreboard-heading{grid-template-columns:1fr}.habs-scoreboard-heading>p{text-align:left}.habs-matchup-compact .habs-team-logo{flex-basis:50px;width:50px;height:50px}.habs-matchup-compact .habs-team-lockup strong{font-size:.88rem}.habs-gamecentre-details>summary i{margin-left:auto}.habs-gamecentre-details>summary small{display:none}}

/* Adaptive Game Centre empty states — v2.5 */
.habs-tracker-pending{display:flex;align-items:center;gap:12px;margin:2px 0 12px;padding:13px 15px;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:rgba(255,255,255,.025)}
.habs-tracker-pending>i{flex:0 0 9px;width:9px;height:9px;border-radius:50%;background:#78879a;box-shadow:0 0 0 4px rgba(120,135,154,.13)}
.habs-tracker-pending strong,.habs-tracker-pending span{display:block}.habs-tracker-pending strong{color:var(--habs-cream);font-size:.78rem}.habs-tracker-pending span{margin-top:3px;color:var(--habs-muted);font-size:.68rem}
.habs-details-pending{display:flex;align-items:center;gap:14px;padding:11px 14px;border-top:1px solid var(--habs-line);color:var(--habs-muted)}
.habs-details-pending span{color:var(--habs-cream);font-size:.72rem;font-weight:850}.habs-details-pending small{font-size:.66rem}
.habs-game-info-grid:empty{display:none}.habs-scoreboard-shell.is-pregame .habs-gamecentre-body{padding-bottom:14px}
@media(max-width:560px){.habs-details-pending{display:block}.habs-details-pending small{display:block;margin-top:4px;line-height:1.4}.habs-tracker-pending{align-items:flex-start}}

/* Schedule */
.habs-schedule {
  margin: 28px 0;
}

.habs-feature-game,
.habs-month-panel,
.habs-table-block,
.habs-team-snapshot,
.habs-standings {
  border: 1px solid var(--habs-line);
  border-radius: 18px;
  background: linear-gradient(145deg, var(--habs-panel-2), var(--habs-panel));
  box-shadow: var(--habs-shadow);
}

.habs-feature-game {
  margin-bottom: 24px;
  padding: clamp(22px, 4vw, 38px);
  background:
    radial-gradient(circle at 0 0, rgba(210, 10, 46, 0.22), transparent 34%),
    linear-gradient(145deg, var(--habs-panel-2), var(--habs-panel));
}

.habs-feature-game-meta {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 24px;
  color: var(--habs-muted);
  font-size: 0.9rem;
  font-weight: 700;
}

.habs-feature-matchup {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 22px;
  text-align: center;
}

.habs-feature-matchup > div {
  min-width: 0;
}

.habs-feature-matchup strong {
  display: block;
  color: var(--habs-cream);
  font-size: clamp(2rem, 6vw, 4rem);
  line-height: 1;
}

.habs-feature-matchup small {
  color: var(--habs-muted);
}

.habs-feature-matchup > span {
  color: var(--habs-red-bright);
  font-weight: 900;
  text-transform: uppercase;
}

.habs-schedule-tools {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 20px 0;
  padding: 12px;
  border: 1px solid var(--habs-line);
  border-radius: 14px;
  background: var(--habs-panel);
}

.habs-month-controls,
.habs-view-controls {
  display: flex;
  align-items: center;
  gap: 8px;
}

.habs-tool-button,
.habs-month-select {
  min-height: 42px;
  border: 1px solid var(--habs-line);
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.04);
  color: var(--habs-text);
  font: inherit;
  font-size: 0.9rem;
  font-weight: 750;
}

.habs-tool-button {
  padding: 9px 14px;
  cursor: pointer;
}

.habs-tool-button:hover,
.habs-tool-button:focus-visible,
.habs-tool-button[aria-pressed="true"] {
  border-color: var(--habs-red-bright);
  background: var(--habs-red);
  color: #fff;
}

.habs-tool-button:focus-visible,
.habs-month-select:focus-visible {
  outline: 3px solid rgba(240, 49, 79, 0.32);
  outline-offset: 2px;
}

.habs-month-select {
  max-width: 220px;
  padding: 8px 34px 8px 12px;
}

.habs-month-panel {
  display: none;
  overflow: hidden;
  padding: clamp(18px, 3vw, 28px);
}

.habs-month-panel.is-active {
  display: block;
}

.habs-calendar {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
}

.habs-calendar-weekday {
  padding: 8px 4px;
  color: var(--habs-muted);
  font-size: 0.72rem;
  font-weight: 850;
  letter-spacing: 0.08em;
  text-align: center;
  text-transform: uppercase;
}

.habs-calendar-day {
  min-height: 112px;
  padding: 10px;
  border: 1px solid var(--habs-line);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.025);
}

.habs-calendar-day.has-game {
  border-color: rgba(240, 49, 79, 0.48);
  background: rgba(210, 10, 46, 0.1);
}

.habs-calendar-day.is-empty {
  opacity: 0.32;
}

.habs-calendar-date {
  display: block;
  margin-bottom: 8px;
  color: var(--habs-cream);
  font-size: 0.78rem;
  font-weight: 850;
}

.habs-calendar-game {
  display: block;
  margin-top: 7px;
  color: var(--habs-text);
  font-size: 0.74rem;
  line-height: 1.35;
}

.habs-calendar-game strong {
  color: var(--habs-red-bright);
}

.habs-schedule-list {
  display: grid;
  gap: 9px;
}

.habs-schedule-row {
  display: grid;
  grid-template-columns: minmax(110px, 0.75fr) minmax(0, 2fr) minmax(90px, 0.6fr);
  align-items: center;
  gap: 16px;
  min-height: 68px;
  padding: 13px 16px;
  border: 1px solid var(--habs-line);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.035);
}

.habs-schedule-date {
  color: var(--habs-cream);
  font-size: 0.86rem;
  font-weight: 800;
}

.habs-schedule-opponent {
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-width: 0;
}

.habs-schedule-opponent small {
  color: var(--habs-muted);
  font-weight: 800;
}

.habs-schedule-opponent strong {
  color: var(--habs-cream);
}

.habs-schedule-opponent > span {
  overflow: hidden;
  color: var(--habs-muted);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.habs-schedule-result {
  color: var(--habs-cream);
  font-size: 0.86rem;
  font-weight: 850;
  text-align: right;
}

.habs-print-schedule {
  display: none;
}

/* Scores + Schedule season hub */
.habs-schedule{width:100%;max-width:1120px;margin:32px auto;text-align:left}
.habs-schedule .habs-section-heading{align-items:center;text-align:center;justify-content:center;position:relative}
.habs-schedule .habs-section-heading>div{max-width:720px}
.habs-schedule .habs-section-heading .habs-season-pill{position:absolute;right:0;top:50%;transform:translateY(-50%)}
.habs-season-controls{display:flex;align-items:center;gap:8px}
.habs-season-controls .habs-tool-button{white-space:nowrap}
.habs-season-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;margin:0 0 20px;border:1px solid var(--habs-line);border-radius:14px;background:linear-gradient(135deg,rgba(210,10,46,.11),rgba(6,22,48,.9))}
.habs-season-summary[hidden]{display:none!important}
.habs-season-summary>div{padding:13px 12px;border-right:1px solid var(--habs-line);text-align:center}.habs-season-summary>div:last-child{border-right:0}
.habs-season-summary small,.habs-season-summary strong{display:block}.habs-season-summary small{color:var(--habs-muted);font-size:.64rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.habs-season-summary strong{margin-top:4px;color:var(--habs-cream);font-size:.95rem}
.habs-calendar-day.has-game{box-shadow:inset 0 2px 0 rgba(240,49,79,.65)}
.habs-calendar-game{position:relative;padding:7px 8px;border-radius:8px;text-decoration:none;transition:background .18s ease,transform .18s ease}
.habs-calendar-game:hover,.habs-calendar-game:focus-visible{background:rgba(255,255,255,.08);transform:translateY(-1px);outline:0}
.habs-calendar-game strong,.habs-calendar-game span,.habs-calendar-game small{display:block}
.habs-calendar-game strong{display:flex;align-items:center;gap:5px}.habs-calendar-game strong img{width:19px;height:19px;object-fit:contain}
.habs-calendar-game span{color:var(--habs-cream);font-weight:850}
.habs-calendar-game small{margin-top:2px;color:var(--habs-muted);font-size:.59rem;font-weight:750;text-transform:uppercase;letter-spacing:.05em}
.habs-calendar-game.is-complete span{color:#fff}
.habs-calendar-game.is-w{box-shadow:inset 3px 0 0 #3ac47d;background:rgba(38,160,103,.08)}.habs-calendar-game.is-l{box-shadow:inset 3px 0 0 #e35367;background:rgba(210,10,46,.07)}
.habs-game-type{display:inline-flex!important;width:max-content;margin-top:4px;padding:2px 5px;border:1px solid rgba(255,255,255,.16);border-radius:999px;color:#bfcadd!important;font-size:.52rem!important;font-style:normal;font-weight:850;letter-spacing:.06em;line-height:1.2;text-transform:uppercase}.habs-game-type.is-playoff{border-color:rgba(240,49,79,.5);color:#fff!important;background:rgba(210,10,46,.22)}
.habs-schedule-row{position:relative;color:inherit;text-decoration:none;padding-right:116px;transition:border-color .18s ease,background .18s ease,transform .18s ease}
.habs-schedule-row.is-w{border-left:4px solid #3ac47d}.habs-schedule-row.is-l{border-left:4px solid #e35367}
.habs-schedule-row:hover,.habs-schedule-row:focus-visible{border-color:rgba(240,49,79,.7);background:rgba(210,10,46,.1);transform:translateY(-1px);outline:0}
.habs-schedule-action{position:absolute;right:16px;bottom:8px;color:var(--habs-red-bright);font-size:.62rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}
.habs-schedule-opponent{grid-template-columns:auto auto auto minmax(0,1fr) auto}.habs-schedule-opponent img{width:31px;height:31px;object-fit:contain}.habs-schedule-opponent .habs-game-type{grid-column:auto}

@media(max-width:900px){
  .habs-schedule .habs-section-heading{padding-top:34px}
  .habs-schedule .habs-section-heading .habs-season-pill{top:0;right:50%;transform:translateX(50%)}
  .habs-schedule-tools{align-items:stretch;flex-wrap:wrap}
  .habs-season-controls{width:100%;justify-content:center}
}

@media(max-width:760px){
  .habs-schedule{margin:22px auto}
  .habs-schedule-tools{padding:9px;gap:9px}
  .habs-season-controls{display:grid;grid-template-columns:1fr 1fr}
  .habs-season-controls .habs-tool-button{padding:8px 6px;font-size:.72rem}
  .habs-view-controls{display:grid;grid-template-columns:1fr 1fr 1.35fr}
  .habs-view-controls .habs-tool-button{padding:8px 6px;font-size:.72rem}
  .habs-calendar-view{display:block!important;overflow-x:auto;padding-bottom:5px;scrollbar-width:thin}
  .habs-calendar-view[hidden]{display:none!important}
  .habs-list-view[hidden]{display:none!important}
  .habs-month-panel{padding:13px 10px}
  .habs-calendar{min-width:650px;gap:5px}
  .habs-calendar-day{min-height:92px;padding:6px}
  .habs-calendar-weekday{font-size:.62rem}
  .habs-calendar-date{margin-bottom:3px;font-size:.68rem}
  .habs-calendar-game{padding:4px;font-size:.65rem}
  .habs-calendar-game small{font-size:.52rem}
  .habs-schedule-row{padding:12px 12px 28px;grid-template-columns:1fr auto}
  .habs-schedule-action{left:12px;right:auto;bottom:8px}
  .habs-season-summary{grid-template-columns:repeat(2,1fr)}.habs-season-summary>div{border-bottom:1px solid var(--habs-line)}.habs-season-summary>div:last-child{grid-column:1/-1;border-bottom:0}
}

/* Stats and standings */
.habs-stats,
.habs-standings {
  margin: 28px 0;
  padding: clamp(22px, 4vw, 38px);
}
.habs-standings{width:min(100%,1120px);margin:28px auto}
.habs-standings-seasons{display:flex;justify-content:flex-end;gap:7px;margin:15px 0}.habs-standings-seasons a{display:flex;align-items:center;gap:8px;min-height:34px;padding:7px 11px;border:1px solid var(--habs-line);border-radius:999px;color:var(--habs-muted);font-size:.72rem;font-weight:850;text-decoration:none}.habs-standings-seasons a small{padding-left:8px;border-left:1px solid var(--habs-line);color:inherit;font-size:.57rem;letter-spacing:.06em;text-transform:uppercase}.habs-standings-seasons a:hover,.habs-standings-seasons a.is-active{border-color:rgba(240,49,79,.55);background:rgba(210,10,46,.16);color:var(--habs-cream)}
.habs-standings-ready{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px 0;padding:13px 16px;border:1px solid rgba(91,168,255,.3);border-radius:11px;background:linear-gradient(90deg,rgba(17,71,121,.34),rgba(17,71,121,.08));color:var(--habs-cream)}
.habs-standings-ready strong{font-size:.84rem}.habs-standings-ready span{max-width:680px;color:var(--habs-muted);font-size:.77rem;text-align:right}

.habs-team-snapshot {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  overflow: hidden;
  margin: 22px 0;
  border-radius: 12px;
  box-shadow: none;
}

.habs-team-snapshot > div {
  min-width: 0;
  padding: 15px 10px;
  border-right: 1px solid var(--habs-line);
  text-align: center;
}

.habs-team-snapshot > div:last-child {
  border-right: 0;
}

.habs-team-snapshot small {
  display: block;
  color: var(--habs-muted);
  font-size: 0.66rem;
  font-weight: 850;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.habs-team-snapshot strong {
  display: block;
  margin-top: 5px;
  color: var(--habs-cream);
  font-size: clamp(1rem, 2.5vw, 1.45rem);
}

.habs-table-block {
  overflow: hidden;
  margin-top: 20px;
  padding: 0;
  border-radius: 12px;
  box-shadow: none;
}

.habs-table-title {
  margin: 0;
  padding: 15px 16px;
  border-bottom: 1px solid var(--habs-line);
  color: var(--habs-cream);
  font-size: 1.12rem;
}

.habs-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.habs-data-table {
  width: 100%;
  min-width: 680px;
  border: 0;
  border-collapse: collapse;
  background: transparent;
  color: var(--habs-text);
  font-size: 0.88rem;
}

.habs-data-table th,
.habs-data-table td {
  padding: 12px 14px;
  border: 0;
  border-bottom: 1px solid var(--habs-line);
  text-align: right;
  white-space: nowrap;
}

.habs-data-table th:first-child,
.habs-data-table td:first-child {
  text-align: left;
}

.habs-data-table thead th {
  background: linear-gradient(90deg, var(--habs-red), var(--habs-red-bright));
  color: #fff;
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.habs-data-table tbody tr:nth-child(even) {
  background: rgba(255, 255, 255, 0.025);
}

.habs-data-table tbody tr:hover {
  background: rgba(240, 49, 79, 0.08);
}

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

.habs-player-name,
.habs-team-name {
  color: var(--habs-cream) !important;
  font-weight: 800;
  text-decoration-color: rgba(240, 49, 79, 0.66);
}

.habs-highlight {
  color: var(--habs-red-bright);
  font-weight: 900;
}

.habs-standings-table .is-montreal {
  background: rgba(210, 10, 46, 0.16) !important;
  box-shadow: inset 4px 0 0 var(--habs-red-bright);
}

.habs-montreal-standing {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  margin: 22px 0;
  padding: clamp(18px, 3vw, 26px);
  border: 1px solid rgba(240, 49, 79, 0.34);
  border-radius: 14px;
  background:
    radial-gradient(circle at 0 0, rgba(210, 10, 46, 0.2), transparent 34%),
    rgba(4, 10, 18, 0.34);
}

.habs-montreal-standing-copy .habs-kicker {
  margin-bottom: 4px;
}

.habs-montreal-standing-copy h3 {
  margin: 0;
  color: var(--habs-cream);
  font-size: clamp(1.6rem, 4vw, 2.25rem);
  letter-spacing: 0.02em;
}

.habs-montreal-standing-copy p {
  margin: 4px 0 0;
  color: var(--habs-muted);
  font-size: 0.86rem;
}

.habs-playoff-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 7px 14px;
  border: 1px solid var(--habs-line);
  border-radius: 999px;
  color: var(--habs-cream);
  font-size: 0.78rem;
  font-weight: 850;
  text-align: center;
}

.habs-playoff-status.is-in {
  border-color: rgba(70, 211, 137, 0.45);
  background: rgba(31, 133, 83, 0.2);
}

.habs-playoff-status.is-out {
  border-color: rgba(240, 49, 79, 0.45);
  background: rgba(210, 10, 46, 0.16);
}

.habs-playoff-status.is-neutral {
  background: rgba(255, 255, 255, 0.06);
}

.habs-standing-metrics {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid var(--habs-line);
  border-radius: 11px;
}

.habs-standing-metrics > div {
  padding: 12px 10px;
  border-right: 1px solid var(--habs-line);
  text-align: center;
}

.habs-standing-metrics > div:last-child {
  border-right: 0;
}

.habs-standing-metrics small,
.habs-standing-metrics strong {
  display: block;
}

.habs-standing-metrics small {
  overflow: hidden;
  color: var(--habs-muted);
  font-size: 0.64rem;
  font-weight: 850;
  letter-spacing: 0.06em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.habs-standing-metrics strong {
  margin-top: 3px;
  color: var(--habs-cream);
  font-size: 1.15rem;
}

.habs-standing-context {
  grid-column: 1 / -1;
  margin: -2px 0 0 !important;
  color: var(--habs-muted);
  font-size: 0.84rem;
}

.habs-standings-controls {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  margin: 24px 0 0;
  padding: 7px;
  border: 1px solid var(--habs-line);
  border-radius: 13px;
  background: rgba(3, 8, 14, 0.35);
}

.habs-standings-button {
  min-height: 44px;
  padding: 9px 12px;
  border: 1px solid transparent;
  border-radius: 8px;
  background: transparent;
  color: var(--habs-muted);
  font: inherit;
  font-size: 0.84rem;
  font-weight: 850;
  cursor: pointer;
}

.habs-standings-button:hover,
.habs-standings-button:focus-visible,
.habs-standings-button.is-active {
  border-color: var(--habs-red-bright);
  background: var(--habs-red);
  color: #fff;
}

.habs-standings-button:focus-visible,
.habs-standings-table-wrap:focus-visible,
.habs-standings-guide summary:focus-visible {
  outline: 3px solid rgba(240, 49, 79, 0.34);
  outline-offset: 2px;
}

.habs-standings-panel {
  margin-top: 22px;
}

.habs-standings-panel-heading {
  margin-bottom: 13px;
}

.habs-standings-panel-heading h3,
.habs-wildcard-block h4 {
  margin: 0;
  color: var(--habs-cream);
}

.habs-standings-panel-heading p {
  margin: 4px 0 0;
  color: var(--habs-muted);
  font-size: 0.86rem;
}

.habs-standings-table-wrap {
  overflow: auto;
  border: 1px solid var(--habs-line);
  border-radius: 11px;
  background: rgba(3, 8, 14, 0.22);
}

.habs-standings-table {
  min-width: 820px;
}

.habs-standings-table th:nth-child(2),
.habs-standings-table td:nth-child(2) {
  text-align: left;
}

.habs-standings-table .habs-standing-rank {
  width: 52px;
  color: var(--habs-muted);
  font-weight: 850;
  text-align: center;
}

.habs-standing-team-short {
  display: none;
}

.habs-clinch-indicator {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 20px;
  margin-left: 7px;
  border-radius: 999px;
  font-size: 0.6rem;
  font-weight: 900;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
  vertical-align: middle;
}

.habs-standing-logo{width:22px;height:22px;margin-left:7px;object-fit:contain;vertical-align:middle;filter:drop-shadow(0 2px 3px rgba(0,0,0,.3))}

.habs-clinch-indicator {
  width: 20px;
  border: 1px solid var(--habs-line);
  color: var(--habs-muted);
}

.habs-playoff-cut-line td {
  padding: 6px 12px !important;
  border-top: 2px solid var(--habs-red-bright) !important;
  border-bottom: 0 !important;
  background: rgba(210, 10, 46, 0.1);
  color: var(--habs-muted);
  font-size: 0.64rem;
  font-weight: 850;
  letter-spacing: 0.05em;
  text-align: center !important;
  text-transform: uppercase;
}

.habs-wildcard-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.habs-wildcard-block h4 {
  margin-bottom: 8px;
  font-size: 0.92rem;
}

.habs-wildcard-race {
  margin-top: 20px;
}
.habs-wildcard-race-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:8px;padding:0 2px}.habs-wildcard-race-head span{color:var(--habs-red-bright);font-size:.62rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.habs-wildcard-race-head h4{margin:2px 0 0;font-size:1.15rem}.habs-wildcard-race-head small{color:var(--habs-muted);font-size:.7rem;font-weight:800;text-transform:uppercase}
.habs-wildcard-preview{display:grid;grid-template-columns:1fr 1fr 1.25fr;overflow:hidden;border:1px solid var(--habs-line);border-radius:12px;background:rgba(3,8,14,.22)}.habs-wildcard-preview>div{padding:20px;border-right:1px solid var(--habs-line)}.habs-wildcard-preview>div.is-wildcard{background:linear-gradient(135deg,rgba(210,10,46,.22),rgba(210,10,46,.04))}.habs-wildcard-preview strong,.habs-wildcard-preview span{display:block}.habs-wildcard-preview strong{color:var(--habs-cream)}.habs-wildcard-preview span{margin-top:3px;color:var(--habs-muted);font-size:.72rem}.habs-wildcard-preview p{grid-column:1/-1;margin:0;padding:12px 18px;border-top:1px solid var(--habs-line);color:var(--habs-muted);font-size:.77rem}

.habs-standings-table-wrap.is-compact .habs-standings-table {
  min-width: 0;
}

.habs-standings-table-wrap.is-compact .habs-standings-detail {
  display: none;
}

.habs-wildcard-pending {
  padding: 18px;
  border: 1px dashed var(--habs-line);
  border-radius: 11px;
  background: rgba(255, 255, 255, 0.025);
}

.habs-standings-guide {
  margin-top: 22px;
  border: 1px solid var(--habs-line);
  border-radius: 11px;
  background: rgba(255, 255, 255, 0.025);
}

.habs-standings-guide summary {
  padding: 13px 15px;
  color: var(--habs-cream);
  font-size: 0.84rem;
  font-weight: 850;
  cursor: pointer;
}

.habs-standings-guide > div {
  padding: 0 15px 13px;
  color: var(--habs-muted);
  font-size: 0.82rem;
}

.habs-standings-guide p {
  margin-bottom: 7px;
}

.habs-standings-guide p:last-child {
  margin-bottom: 0;
}

.habs-standings > .habs-source-note {
  margin: 14px 0 0;
}

@media (max-width: 820px) {
  .habs-live-data {
    padding: 0 14px;
  }
	.habs-standings-ready{display:block}.habs-standings-ready span{display:block;margin-top:5px;text-align:left}.habs-wildcard-preview{grid-template-columns:1fr}.habs-wildcard-preview>div{border-right:0;border-bottom:1px solid var(--habs-line)}

  .habs-section-heading {
    align-items: flex-start;
  }

  .habs-matchup {
    grid-template-columns: minmax(0, 1fr) 92px minmax(0, 1fr);
  }

  .habs-matchup-team {
    padding-inline: 18px;
  }

  .habs-team-lockup {
    gap: 12px;
  }

  .habs-team-logo {
    flex-basis: 70px;
    width: 70px;
    height: 70px;
  }

  .habs-team-lockup strong {
    font-size: clamp(1rem, 3.8vw, 1.55rem);
  }

  .habs-score {
    font-size: clamp(2rem, 12vw, 3.5rem);
  }

  .habs-schedule-tools {
    align-items: stretch;
    flex-direction: column;
  }

  .habs-month-controls,
  .habs-view-controls {
    justify-content: space-between;
  }

  .habs-month-select {
    flex: 1;
    max-width: none;
  }



  .habs-schedule-row {
    grid-template-columns: 1fr auto;
    gap: 7px 12px;
  }

  .habs-schedule-opponent {
    grid-column: 1 / -1;
    grid-row: 2;
  }

  .habs-schedule-result {
    grid-column: 2;
    grid-row: 1;
  }

  .habs-team-snapshot {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .habs-team-snapshot > div:nth-child(3) {
    border-right: 0;
  }

  .habs-team-snapshot > div:nth-child(-n + 3) {
    border-bottom: 1px solid var(--habs-line);
  }

  .habs-wildcard-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .habs-scoreboard-shell,
  .habs-feature-game,
  .habs-month-panel,
  .habs-stats,
  .habs-standings {
    border-radius: 14px;
  }

  .habs-section-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .habs-scoreboard-topline {
    padding-inline: 16px;
  }

  .habs-scoreboard-date {
    display: none;
  }

  .habs-record-chip {
    min-height: 30px;
    padding: 5px 10px;
    font-size: 0.68rem;
  }

  .habs-scoreboard-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }

  .habs-scoreboard-heading > p {
    text-align: left;
  }

  .habs-matchup {
    grid-template-columns: 1fr 72px 1fr;
    min-height: 220px;
  }

  .habs-matchup-team,
  .habs-matchup-team:last-child {
    align-items: center;
    gap: 10px;
    padding: 22px 6px;
    text-align: center;
  }

  .habs-team-lockup,
  .habs-matchup-team:last-child .habs-team-lockup {
    flex-direction: column;
    gap: 7px;
  }

  .habs-team-logo {
    flex-basis: 58px;
    width: 58px;
    height: 58px;
  }

  .habs-team-lockup small {
    font-size: 0.64rem;
  }

  .habs-team-lockup strong {
    font-size: 0.92rem;
  }

  .habs-score {
    font-size: clamp(2.5rem, 13vw, 3.3rem);
  }

  .habs-at {
    width: 56px;
    height: 56px;
  }

  .habs-game-status {
    font-size: 0.64rem;
    letter-spacing: 0.03em;
  }

  .habs-broadcast-panel {
    align-items: flex-start;
    flex-direction: column;
    gap: 13px;
    padding-inline: 16px;
  }

  .habs-broadcast-heading {
    min-width: 0;
  }

  .habs-broadcast-list {
    width: 100%;
    padding: 13px 0 0;
    border-top: 1px solid var(--habs-line);
    border-left: 0;
  }

  .habs-broadcast-panel + .habs-availability-note {
    padding-inline: 16px;
  }

  .habs-feature-matchup {
    gap: 10px;
  }

  .habs-feature-matchup strong {
    font-size: clamp(1.75rem, 13vw, 2.7rem);
  }

  .habs-view-controls .habs-tool-button {
    flex: 1;
  }

  .habs-schedule-row {
    padding: 13px;
  }

  .habs-schedule-opponent > span {
    font-size: 0.8rem;
  }

  .habs-team-snapshot {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .habs-team-snapshot > div,
  .habs-team-snapshot > div:nth-child(3) {
    border-right: 1px solid var(--habs-line);
    border-bottom: 1px solid var(--habs-line);
  }

  .habs-team-snapshot > div:nth-child(2n) {
    border-right: 0;
  }

  .habs-team-snapshot > div:nth-last-child(-n + 2) {
    border-bottom: 0;
  }

  .habs-data-table {
    font-size: 0.82rem;
  }

  .habs-data-table th,
  .habs-data-table td {
    padding: 10px;
  }

  .habs-montreal-standing {
    grid-template-columns: 1fr;
  }

  .habs-playoff-status {
    justify-self: start;
  }

  .habs-standing-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .habs-standing-metrics > div:nth-child(2) {
    border-right: 0;
  }

  .habs-standing-metrics > div:nth-child(-n + 2) {
    border-bottom: 1px solid var(--habs-line);
  }

  .habs-standings-controls {
    grid-auto-columns: minmax(118px, max-content);
    grid-auto-flow: column;
    grid-template-columns: none;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
  }

  .habs-standings-table {
    min-width: 0;
    font-size: 0.78rem;
  }

  .habs-standings-table th,
  .habs-standings-table td {
    padding: 9px 7px;
  }

  .habs-standings-table .habs-standings-detail {
    display: none;
  }

  .habs-standing-team-full {
    display: none;
  }

  .habs-standing-team-short {
    display: inline;
  }

  .habs-standings-table .habs-standing-rank {
    width: 38px;
  }

  .habs-clinch-indicator {
    margin-left: 4px;
  }

  .habs-playoff-cut-line td {
    font-size: 0.56rem;
    letter-spacing: 0.025em;
  }
}

@media (prefers-reduced-motion: reduce) {
  .habs-scoreboard-shell.is-live .habs-live-dot,
  .habs-scoreboard-refresh > span.is-pulsing {
    animation: none;
  }
}

@media print {
  @page {
    size: letter landscape;
    margin: 0.45in;
  }

  body * {
    visibility: hidden !important;
  }

  .habs-print-schedule,
  .habs-print-schedule * {
    visibility: visible !important;
  }

  .habs-print-schedule {
    display: block !important;
    position: static;
    width: 100%;
    color: #111;
	font-family: Arial, sans-serif;
	background:#fff;
  }

  body.habs-season-printing > *:not(.habs-print-schedule) {
    display: none !important;
  }

  .habs-print-schedule [data-habs-print-season][hidden]{display:none!important}

  .habs-print-masthead{display:flex;align-items:center;gap:16px;margin:0 0 14px;padding:12px 16px;border-top:8px solid #d20a2e;border-bottom:3px solid #0b2346;background:#f4f6f9!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}
  .habs-print-mark{display:grid;place-items:center;width:52px;height:52px;border:5px solid #d20a2e;border-radius:50%;background:#0b2346!important;color:#fff!important;font-size:17pt;font-weight:900;letter-spacing:-.12em;print-color-adjust:exact;-webkit-print-color-adjust:exact}
  .habs-print-masthead span{color:#d20a2e!important;font-size:8pt;font-weight:900;letter-spacing:.16em}

  .habs-print-schedule h1 {
	margin:2px 0 1px;
	font-size:20pt;
	color:#0b2346;
  }

  .habs-print-schedule p {
	margin:0;
    color: #444;
  }

  .habs-print-schedule table {
    width: 100%;
    border-collapse: collapse;
	font-size:7.8pt;
	page-break-inside:auto;
  }

  .habs-print-month{break-inside:auto;page-break-inside:auto}.habs-print-month h2{margin:11px 0 3px;padding-bottom:3px;border-bottom:2px solid #d20a2e;color:#0b2346;font-size:12pt;break-after:avoid-page;page-break-after:avoid}.habs-print-month h2+table{break-before:avoid-page;page-break-before:avoid}.habs-print-schedule tr{break-inside:avoid;page-break-inside:avoid}.habs-print-schedule thead{display:table-header-group}

  .habs-print-summary{display:grid;grid-template-columns:repeat(5,1fr);margin:0 0 8px;border:1px solid #9aa5b2;background:#f4f6f9!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}.habs-print-summary>div{padding:6px;border-right:1px solid #9aa5b2;text-align:center}.habs-print-summary>div:last-child{border-right:0}.habs-print-summary b,.habs-print-summary span{display:block}.habs-print-summary b{color:#d20a2e;font-size:6.5pt;text-transform:uppercase}.habs-print-summary span{margin-top:2px;color:#0b2346;font-size:9pt;font-weight:800}

  .habs-print-schedule th,
  .habs-print-schedule td {
	padding:3.5px 6px;
    border: 1px solid #bbb;
    text-align: left;
  }

  .habs-print-schedule thead th {
	background:#0b2346!important;
    color: #fff !important;
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }

  .habs-print-schedule tbody tr:nth-child(even) {
    background: #eee !important;
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }

  .habs-print-schedule footer{margin-top:12px;padding-top:6px;border-top:1px solid #aaa;color:#555;font-size:7pt;text-align:center}.habs-print-schedule footer:after{content:" · Page " counter(page)}
}

/* Stats performance centre */
.habs-stats-hub { --stats-red:var(--habs-red); --stats-blue:var(--habs-panel); width:100%; max-width:1180px; margin:28px auto; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; text-align:left; }
.habs-stats-toolbar { display:flex; align-items:center; justify-content:space-between; gap:18px; margin:22px 0; padding:12px; border:1px solid rgba(255,255,255,.12); border-radius:14px; background:rgba(3,15,34,.74); }
.habs-segmented { display:inline-flex; padding:4px; border-radius:999px; background:#020d20; }
.habs-segmented button { appearance:none; border:0; border-radius:999px; padding:10px 17px; background:transparent; color:#b9c5d5; font:700 13px/1 inherit; cursor:pointer; }
.habs-segmented button.is-active { background:var(--stats-red); color:#fff; box-shadow:0 6px 18px rgba(215,25,63,.28); }
.habs-segmented button span { opacity:.6; }
.habs-stats-toolbar label { display:flex; align-items:center; gap:9px; color:#aebbd0; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.habs-stats-toolbar input { width:210px; min-height:40px; margin:0; border:1px solid rgba(255,255,255,.2); border-radius:9px; background:#fff !important; color:#101828 !important; -webkit-text-fill-color:#101828; caret-color:#e31837; opacity:1; padding:8px 12px; text-transform:none; letter-spacing:0; }
.habs-stats-toolbar input::placeholder { color:#667085; -webkit-text-fill-color:#667085; opacity:1; }
.habs-subheading { margin-bottom:14px; }
.habs-subheading > span,.habs-table-title span { color:var(--habs-red-bright); font-size:11px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.habs-subheading h3,.habs-table-title h3 { margin:3px 0 0; }
.habs-subheading p { margin:3px 0 0; color:#9eacbe; font-size:13px; }
.habs-form-centre,.habs-leaders { margin:22px 0; padding:20px; border:1px solid var(--habs-line); border-radius:18px; background:linear-gradient(145deg,var(--habs-panel-2),var(--habs-panel)); box-shadow:var(--habs-shadow); }
.habs-form-grid { display:grid; grid-template-columns:1.35fr .85fr; gap:12px; }
.habs-trend-card,.habs-leader-card { min-width:0; padding:17px; border:1px solid rgba(255,255,255,.1); border-radius:13px; background:rgba(255,255,255,.045); }
.habs-trend-card > span,.habs-leader-card > span { display:block; margin-bottom:12px; color:#aebbd0; font-size:11px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.habs-trend-card ol { display:grid; gap:9px; margin:0; padding:0; list-style:none; }
.habs-trend-card li { display:grid; grid-template-columns:1fr auto; gap:3px 12px; padding-bottom:8px; border-bottom:1px solid rgba(255,255,255,.08); }
.habs-trend-card li:last-child { padding-bottom:0; border:0; }
.habs-trend-card a,.habs-trend-card strong,.habs-leader-card strong a { color:#fff; font-weight:850; text-decoration:none; }
.habs-trend-card b { color:#ecb84d; font-size:12px; }
.habs-trend-card.is-award div { display:grid; grid-template-columns:1fr auto; margin-top:10px; padding-top:10px; border-top:1px solid rgba(255,255,255,.08); }
.habs-trend-card.is-award small { grid-column:1/-1; color:#8fa0b6; }
.habs-trend-card.is-hot { border-color:rgba(255,105,35,.42); background:radial-gradient(circle at 95% 0,rgba(255,91,29,.25),transparent 45%),rgba(255,255,255,.045); box-shadow:inset 3px 0 #ff5b1d; }
.habs-trend-card.is-hot > span { color:#ffb06b; font-size:13px; text-shadow:0 0 18px rgba(255,91,29,.65); }
.habs-trend-card.is-cold { border-color:rgba(80,170,255,.42); background:radial-gradient(circle at 95% 0,rgba(61,169,255,.24),transparent 47%),rgba(255,255,255,.045); box-shadow:inset 3px 0 #4ebcff; }
.habs-trend-card.is-cold > span { color:#9dddff; font-size:13px; text-shadow:0 0 18px rgba(61,169,255,.7); }
.habs-trend-card.is-cold strong,.habs-trend-card.is-cold b,.habs-trend-card.is-cold small { display:block; margin-top:7px; }
.habs-trend-card.is-cold small { color:#91a3ba; }
.habs-leader-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.habs-leader-card strong { display:block; overflow:hidden; min-height:42px; font-size:14px; }
.habs-leader-card b { display:block; margin-top:14px; color:#fff; font-size:29px; line-height:1; }
.habs-leader-card b small { color:#ecb84d; font-size:10px; letter-spacing:.08em; }
.habs-stats-hub .habs-table-title { align-items:end; }
.habs-stats-hub .habs-table-title small { color:#93a3b8; }
.habs-data-table th button { appearance:none; display:flex; align-items:center; justify-content:center; gap:5px; width:100%; padding:0; border:0; background:transparent; color:inherit; font:inherit; cursor:pointer; white-space:nowrap; }
.habs-data-table th:first-child button,.habs-data-table th:nth-child(2) button { justify-content:flex-start; }
.habs-data-table th button span { opacity:.45; font-size:10px; }
.habs-data-table th[aria-sort] button span { opacity:1; color:#ecb84d; }
.habs-empty-state { display:grid; gap:6px; margin:22px 0; padding:28px; border:1px dashed rgba(255,255,255,.2); border-radius:14px; background:rgba(255,255,255,.035); text-align:center; }
.habs-empty-state strong { color:#fff; font-size:18px; }
.habs-empty-state span { color:#9dacbf; }
.habs-league-pulse { margin:24px 0; padding:22px; border:1px solid var(--habs-line); border-radius:18px; background:linear-gradient(145deg,var(--habs-panel-2),var(--habs-panel)); box-shadow:var(--habs-shadow); }
.habs-pulse-tabs { display:grid; grid-template-columns:repeat(7,1fr); gap:7px; margin:16px 0; padding:5px; border-radius:13px; background:#020a17; }
.habs-pulse-tabs button { min-height:42px; border:0; border-radius:9px; background:transparent; color:#9eacc0; font:800 12px/1 inherit; cursor:pointer; }
.habs-pulse-tabs button.is-active { background:linear-gradient(135deg,#e31837,#b40825); color:#fff; box-shadow:0 7px 20px rgba(227,24,55,.32); }
.habs-pulse-panel ol { display:grid; grid-template-columns:1fr 1fr; gap:7px; margin:0; padding:0; list-style:none; }
.habs-pulse-panel li { display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:center; gap:11px; min-height:64px; padding:9px 13px; border:1px solid rgba(255,255,255,.08); border-radius:11px; background:rgba(255,255,255,.035); }
.habs-pulse-panel li.is-hab { border-color:rgba(227,24,55,.72); background:linear-gradient(90deg,rgba(227,24,55,.28),rgba(11,35,71,.65)); box-shadow:inset 4px 0 #e31837,0 0 22px rgba(227,24,55,.12); }
.habs-pulse-rank { display:grid; width:30px; height:30px; place-items:center; border-radius:50%; background:rgba(255,255,255,.08); color:#d9e2ee; font-size:12px; font-weight:900; }
.habs-pulse-panel li:first-child .habs-pulse-rank { background:#d9a92f; color:#171005; box-shadow:0 0 16px rgba(217,169,47,.3); }
.habs-pulse-player { min-width:0; }
.habs-pulse-player strong,.habs-pulse-player small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.habs-pulse-player strong { color:#fff; font-size:13px; }
.habs-pulse-player small { margin-top:2px; color:#8295ac; font-size:9px; font-weight:900; letter-spacing:.09em; }
.habs-pulse-panel b { color:#fff; font-size:24px; line-height:1; text-align:right; }
.habs-pulse-panel b small { display:block; margin-top:4px; color:#e7b947; font-size:8px; letter-spacing:.1em; }
.habs-pulse-note { margin:11px 0 0; color:#8295ac; font-size:10px; text-align:right; }

@media (max-width:760px) {
  .habs-stats-toolbar { align-items:stretch; flex-direction:column; }
  .habs-segmented { display:grid; grid-template-columns:1fr 1fr; }
  .habs-stats-toolbar label { display:grid; grid-template-columns:auto 1fr; }
  .habs-stats-toolbar input { width:100%; }
  .habs-form-grid { grid-template-columns:1fr; }
  .habs-leader-grid { grid-template-columns:1fr 1fr; }
  .habs-form-centre,.habs-leaders { padding:15px; }
	.habs-stats-hub { padding:0; border-radius:0; }
	.habs-league-pulse { padding:15px; }
	.habs-pulse-tabs { display:flex; overflow-x:auto; }
	.habs-pulse-tabs button { flex:0 0 auto; padding:0 16px; }
	.habs-pulse-panel ol { grid-template-columns:1fr; }
  .habs-stats-hub .habs-table-title { align-items:flex-start; }
}

/* Habs at a Glance ------------------------------------------------------- */
.habs-glance-player-form{margin:16px 0}
.habs-home-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.habs-home-form-grid>section{min-width:0;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.035)}
.habs-home-form-grid>section.is-hot{border-color:rgba(255,105,35,.34);box-shadow:inset 3px 0 #ff6a2a}
.habs-home-form-grid>section.is-cold{border-color:rgba(80,170,255,.34);box-shadow:inset 3px 0 #4ebcff}
.habs-home-form-grid h4{margin:0 0 10px;color:var(--habs-cream);font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.habs-home-form-grid .is-hot h4{color:#ffb06b}.habs-home-form-grid .is-cold h4{color:#9dddff}
.habs-home-player-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.habs-home-player-list a{display:flex;align-items:center;gap:9px;min-width:0;padding:7px 9px;border-radius:9px;background:rgba(2,13,32,.55);color:inherit;text-decoration:none}
.habs-home-player-list a:hover,.habs-home-player-list a:focus-visible{outline:1px solid var(--habs-red-bright);outline-offset:1px}
.habs-home-player-list img{width:42px;height:42px;flex:0 0 42px;border-radius:50%;background:rgba(255,255,255,.08);object-fit:contain}
.habs-home-player-list span,.habs-home-player-list strong,.habs-home-player-list small{display:block;min-width:0}
.habs-home-player-list strong{overflow:hidden;color:var(--habs-cream);font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.habs-home-player-list small{margin-top:3px;color:var(--habs-muted);font-size:9px;font-weight:800}
.habs-home-form-grid>section>p{margin:8px 0;color:var(--habs-muted);font-size:11px}
@media(max-width:760px){.habs-home-form-grid{grid-template-columns:1fr}.habs-home-player-list{grid-template-columns:1fr 1fr}.habs-home-player-list img{width:36px;height:36px;flex-basis:36px}}
@media(max-width:480px){.habs-home-player-list{grid-template-columns:1fr}}
.habs-glance{max-width:1180px;margin:0 auto;color:#15213a}
.habs-glance-heading{margin-bottom:18px}
.habs-glance-score-strip{display:grid;grid-template-columns:1fr .82fr 1fr;background:linear-gradient(135deg,#071a36,#102a50);border-top:4px solid #c8102e;border-radius:14px;overflow:hidden;box-shadow:0 14px 34px rgba(4,18,40,.16);color:#fff}
.habs-glance-score-strip.is-summary-only{grid-template-columns:.82fr 1fr}
.habs-glance-score-strip.is-summary-only .habs-glance-record{border-right:1px solid rgba(255,255,255,.12)}
.habs-glance-game,.habs-glance-record{padding:20px 22px;min-width:0}
.habs-glance-game:first-child{border-right:1px solid rgba(255,255,255,.12)}
.habs-glance-game:last-child{border-left:1px solid rgba(255,255,255,.12)}
.habs-glance-game>span,.habs-glance-record>span,.habs-glance-panel-head span{display:block;color:#d3ad57;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.habs-glance-game>div{display:flex;align-items:center;gap:10px;margin:8px 0 4px}.habs-glance-game img{width:34px;height:34px;object-fit:contain}.habs-glance-game strong{font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.habs-glance-game small,.habs-glance-record small{color:#c7d3e4;font-size:12px}
.habs-glance-record{text-align:center;background:rgba(255,255,255,.045)}.habs-glance-record strong{display:block;margin:5px 0 2px;font-family:Georgia,serif;font-size:30px;letter-spacing:.02em}
.habs-glance-main-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:16px;margin-top:16px}
.habs-glance-panel{padding:20px;background:#fff;border:1px solid #dce2ea;border-radius:12px;box-shadow:0 7px 22px rgba(8,27,54,.07)}
.habs-glance-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:15px}.habs-glance-panel-head h3{margin:2px 0 0;color:#0b2345;font-family:Georgia,serif;font-size:22px}.habs-glance-panel-head>a{color:#c8102e;font-size:12px;font-weight:800;text-decoration:none}.habs-glance-panel-head>small{color:#6d7787;font-size:11px}
.habs-mini-table>div{display:grid;grid-template-columns:1fr 45px 45px 64px;align-items:center;min-height:35px;padding:0 8px;border-top:1px solid #edf0f4;font-size:12px}.habs-mini-table .is-head{min-height:26px;border:0;color:#7a8493;font-size:10px;text-transform:uppercase}.habs-mini-table b{text-align:center}.habs-mini-table span{font-weight:800}.habs-mini-table i{display:inline-block;width:20px;color:#8b94a1;font-style:normal}.habs-mini-table .is-mtl{margin:2px 0;background:#fff0f2;border-left:3px solid #c8102e;border-radius:5px;color:#9e0e25}
.habs-glance-insight{margin:13px 0 0;padding:10px 12px;background:#f4f7fa;border-left:3px solid #c8102e;color:#33445e;font-size:12px;font-weight:700}
.habs-glance-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.habs-glance-metrics>div{min-height:82px;padding:11px;background:#f4f7fa;border-radius:8px}.habs-glance-metrics span{display:block;color:#6f7988;font-size:10px;font-weight:800;text-transform:uppercase}.habs-glance-metrics strong{display:block;margin:5px 0 1px;color:#0b2345;font-size:20px}.habs-glance-metrics small{color:#c8102e;font-size:10px;font-weight:800}
.habs-glance-splits,.habs-glance-week{margin-top:16px}.habs-split-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.habs-split-card{padding:15px 17px;background:linear-gradient(110deg,#f4f7fa,#fff);border-left:4px solid #0a438b;border-radius:8px}.habs-split-card>span{color:#c8102e;font-size:11px;font-weight:900;text-transform:uppercase}.habs-split-card>strong{display:block;margin:2px 0 10px;color:#0b2345;font-size:25px}.habs-split-card>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.habs-split-card b{font-size:16px}.habs-split-card small{display:block;color:#7b8492;font-size:9px;letter-spacing:.08em}
.habs-week-summary{display:grid;grid-template-columns:repeat(4,1fr);background:#0b2345;border-radius:9px;color:#fff;overflow:hidden}.habs-week-summary>div{padding:15px;border-right:1px solid rgba(255,255,255,.12)}.habs-week-summary>div:last-child{border:0}.habs-week-summary strong{display:block;font-size:19px}.habs-week-summary span{display:block;margin-top:2px;color:#bfcadc;font-size:10px;text-transform:uppercase}.habs-week-summary .is-difficulty strong{color:#f3cb70}
.habs-week-games{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.habs-week-games>div{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:8px;padding:10px 12px;background:#f4f7fa;border-radius:7px}.habs-week-games span{color:#c8102e;font-size:12px;font-weight:900;text-transform:uppercase}.habs-week-games span small{display:block;color:#7c8694;font-size:9px}.habs-week-games strong{color:#0b2345}.habs-week-games b{font-size:11px;text-align:right}.habs-glance-method{margin:11px 0 0;color:#707b8b;font-size:10px}.habs-glance-empty{grid-column:1/-1;margin:0;padding:15px;background:#f4f7fa;color:#687484;text-align:center}
@media(max-width:760px){.habs-glance-score-strip{grid-template-columns:1fr 1fr}.habs-glance-record{grid-column:1/-1;grid-row:1;border-bottom:1px solid rgba(255,255,255,.12)}.habs-glance-game:first-child{border-right:1px solid rgba(255,255,255,.12)}.habs-glance-game:last-child{border-left:0}.habs-glance-main-grid{grid-template-columns:1fr}.habs-glance-metrics{grid-template-columns:repeat(2,1fr)}.habs-split-grid{grid-template-columns:1fr}.habs-week-summary{grid-template-columns:1fr 1fr}.habs-week-summary>div{border-bottom:1px solid rgba(255,255,255,.12)}.habs-week-games{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.habs-week-games>div{min-width:190px;scroll-snap-align:start}.habs-glance-panel{padding:16px}.habs-glance-game,.habs-glance-record{padding:16px 13px}.habs-glance-game strong{font-size:14px}.habs-glance-panel-head{align-items:flex-start}}
@media(max-width:760px){.habs-glance-score-strip.is-summary-only{grid-template-columns:1fr 1fr}.habs-glance-score-strip.is-summary-only .habs-glance-record{grid-column:auto;grid-row:auto;border-bottom:0}.habs-glance-score-strip.is-summary-only .habs-glance-game{border-left:0}}

/* At a Glance v1.9 — shared Habs Hockey visual system */
.habs-glance{color:var(--habs-cream);font-family:inherit;text-align:left}
.habs-glance .habs-section-heading h2,.habs-glance .habs-glance-panel-head h3,.habs-glance-record strong{font-family:inherit;font-weight:900;letter-spacing:-.025em}
.habs-glance-heading{padding-bottom:16px;border-bottom:1px solid var(--habs-line)}
.habs-glance-score-strip{border:1px solid var(--habs-line);border-top:3px solid var(--habs-red-bright);background:linear-gradient(135deg,var(--habs-panel-2),var(--habs-panel));box-shadow:var(--habs-shadow)}
.habs-glance-panel{border:1px solid var(--habs-line);background:linear-gradient(145deg,var(--habs-panel-2),var(--habs-panel));box-shadow:var(--habs-shadow);color:var(--habs-cream)}
.habs-glance-panel-head{padding-bottom:13px;border-bottom:1px solid var(--habs-line)}
.habs-glance-panel-head h3{color:var(--habs-cream);font-size:20px}.habs-glance-panel-head>a{color:var(--habs-red-bright)}.habs-glance-panel-head>small{color:var(--habs-muted)}
.habs-glance-game>span,.habs-glance-record>span,.habs-glance-panel-head span{color:var(--habs-red-bright)}
.habs-glance-metrics{grid-template-columns:repeat(4,1fr)}.habs-glance-metrics>div{min-height:88px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.045)}.habs-glance-metrics span{color:var(--habs-muted)}.habs-glance-metrics strong{color:var(--habs-cream)}.habs-glance-metrics small{color:var(--habs-red-bright)}
.habs-playoff-map{display:grid;gap:13px}.habs-race-group h4{margin:0 0 7px;color:var(--habs-muted);font-size:10px;letter-spacing:.11em;text-transform:uppercase}.habs-race-row{display:grid;grid-template-columns:42px 1fr auto 58px;align-items:center;gap:8px;min-height:34px;padding:5px 9px;border-top:1px solid rgba(255,255,255,.07)}.habs-race-row em{display:grid;width:34px;min-height:21px;place-items:center;border-radius:999px;background:#174779;color:#dcecff;font-size:9px;font-style:normal;font-weight:900}.habs-race-row.is-chasing em{background:rgba(255,255,255,.07);color:var(--habs-muted)}.habs-race-row strong{color:var(--habs-cream);font-size:13px}.habs-race-row span{color:var(--habs-cream);font-size:12px;font-weight:850}.habs-race-row small{color:var(--habs-muted);font-size:9px;text-align:right}.habs-race-row.is-mtl{border-left:3px solid var(--habs-red-bright);border-radius:7px;background:linear-gradient(90deg,rgba(210,10,46,.28),rgba(210,10,46,.04))}.habs-race-row.has-playoff-cut{border-top:2px solid var(--habs-red-bright)}.habs-race-legend{display:flex;gap:15px;color:var(--habs-muted);font-size:9px;text-transform:uppercase}.habs-race-legend span{display:flex;align-items:center;gap:5px}.habs-race-legend i{width:9px;height:9px;border-radius:50%;background:#174779}.habs-race-legend i.is-cut{background:rgba(255,255,255,.18)}
.habs-glance-insight{border-left-color:var(--habs-red-bright);background:rgba(255,255,255,.045);color:var(--habs-muted)}
.habs-race-status{margin:5px 0 3px;padding:7px 9px;border-left:3px solid var(--habs-red-bright);border-radius:0 6px 6px 0;background:rgba(210,10,46,.1);color:var(--habs-cream);font-size:10px;line-height:1.35}.habs-race-status strong{color:inherit}.habs-race-status.is-out{border-left-color:var(--habs-muted);background:rgba(255,255,255,.045);color:var(--habs-muted)}
.habs-split-tabs{display:inline-flex;margin-bottom:13px;padding:4px;border-radius:999px;background:#020d20}.habs-split-tabs button{border:0;border-radius:999px;padding:9px 15px;background:transparent;color:var(--habs-muted);font:800 11px/1 inherit;cursor:pointer}.habs-split-tabs button.is-active{background:var(--habs-red);color:#fff}.habs-split-window{display:grid;grid-template-columns:1fr 1fr;gap:12px}.habs-split-window[hidden]{display:none}.habs-split-card{padding:16px;border:1px solid rgba(255,255,255,.09);border-left:3px solid #1a66b4;background:rgba(255,255,255,.035)}.habs-split-card-head{display:grid;grid-template-columns:1fr auto;align-items:end;gap:2px 10px}.habs-split-card-head span{color:var(--habs-red-bright);font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.habs-split-card-head strong{color:var(--habs-cream);font-size:24px}.habs-split-card-head small{grid-column:2;grid-row:1;color:var(--habs-muted);font-size:9px}.habs-split-stats{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:8px!important;margin-top:13px}.habs-split-stats b{padding:9px;border-radius:7px;background:rgba(255,255,255,.045);color:var(--habs-cream);font-size:15px}.habs-split-stats small{margin-top:3px;color:var(--habs-muted)}
.habs-recent-trends{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:15px;margin-top:13px;padding-top:13px;border-top:1px solid var(--habs-line)}.habs-recent-trends h4{margin:0;color:var(--habs-muted);font-size:10px;text-transform:uppercase}.habs-recent-trends>div{display:flex;flex-wrap:wrap;gap:7px}.habs-trend{display:inline-flex;padding:7px 10px;border:1px solid rgba(255,255,255,.1);border-radius:999px;background:rgba(255,255,255,.04);color:var(--habs-muted);font-size:10px;font-weight:850}.habs-trend.is-hot{border-color:rgba(255,105,35,.38);color:#ffb06b}.habs-trend.is-cold{border-color:rgba(80,170,255,.38);color:#9dddff}
.habs-week-summary{border:1px solid var(--habs-line);background:#071a36}.habs-week-games>div,.habs-glance-empty{border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04)}.habs-week-games strong{color:var(--habs-cream)}.habs-glance-empty,.habs-glance-method{color:var(--habs-muted)}
@media(max-width:760px){.habs-glance-metrics{grid-template-columns:repeat(2,1fr)}.habs-split-window{grid-template-columns:1fr}.habs-recent-trends{grid-template-columns:1fr}.habs-race-row{grid-template-columns:38px 1fr auto 52px;padding-inline:5px}.habs-glance-panel{border-radius:10px}.habs-glance-main-grid{gap:12px;margin-top:12px}.habs-glance-splits,.habs-glance-week{margin-top:12px}}

/* 2.0 compact homepage snapshot */
.habs-glance-main-grid{align-items:stretch;grid-template-columns:1fr 1fr}
.habs-glance-main-grid>.habs-glance-panel{height:100%}
.habs-glance-picture,.habs-glance-pulse{display:flex;flex-direction:column}
.habs-playoff-map{grid-template-columns:.88fr 1.12fr;gap:16px}
.habs-race-legend{grid-column:1/-1}
.habs-glance-insight{margin-top:auto}
.habs-glance-splits{padding-bottom:16px}
.habs-split-card{padding:12px 14px}
.habs-split-stats b{font-size:14px}
.habs-recent-trends{align-items:stretch}
.habs-recent-trends>div{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.habs-trend{position:relative;display:grid;grid-template-columns:auto 1fr;gap:2px 9px;overflow:hidden;padding:11px 12px 14px;border-radius:9px}
.habs-trend i{position:absolute;right:0;bottom:0;left:0;height:4px;background:rgba(255,255,255,.1)}
.habs-trend i:after{display:block;width:var(--trend,35%);height:100%;background:#7d8da3;content:""}
.habs-trend b{grid-row:1/3;color:var(--habs-cream);font-size:15px;line-height:1.1}
.habs-trend em{color:var(--habs-muted);font-size:9px;font-style:normal;letter-spacing:.03em;text-transform:uppercase}
.habs-trend.is-hot{background:linear-gradient(135deg,rgba(255,91,29,.14),rgba(255,255,255,.035));box-shadow:inset 3px 0 #ff6a2a}
.habs-trend.is-hot i:after{background:linear-gradient(90deg,#ff5b1d,#ffbb54);box-shadow:0 0 10px #ff702e}
.habs-trend.is-cold{background:linear-gradient(135deg,rgba(61,169,255,.14),rgba(255,255,255,.035));box-shadow:inset 3px 0 #4ebcff}
.habs-trend.is-cold i:after{background:linear-gradient(90deg,#258edc,#8bdcff);box-shadow:0 0 10px #4ebcff}
.habs-glance-week.is-empty-week{display:grid;grid-template-columns:1fr minmax(250px,.75fr);align-items:center;gap:18px;padding-block:14px}
.habs-glance-week.is-empty-week .habs-glance-panel-head{margin:0;padding:0;border:0}
.habs-glance-week.is-empty-week .habs-week-games{display:block;margin:0}
.habs-glance-week.is-empty-week .habs-glance-empty{padding:10px 14px;border-radius:8px;text-align:left}
@media(max-width:900px){.habs-playoff-map{grid-template-columns:1fr}.habs-race-legend{grid-column:auto}.habs-recent-trends>div{grid-template-columns:1fr}}
@media(max-width:760px){.habs-glance-main-grid{grid-template-columns:1fr}.habs-glance-week.is-empty-week{grid-template-columns:1fr}.habs-glance-week.is-empty-week .habs-week-games{overflow:visible}.habs-glance-week.is-empty-week .habs-glance-empty{min-width:0}.habs-trend b{font-size:14px}}

/* Restored weekly-first hierarchy and game-by-game trends — v2.5 */
.habs-glance-score-strip + .habs-glance-week{margin-top:16px}.habs-glance-week + .habs-glance-main-grid{margin-top:16px}
.habs-recent-trends{display:block}.habs-trend-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:12px}.habs-trend-heading h4{color:var(--habs-cream);font-size:14px;letter-spacing:.02em;text-transform:none}.habs-trend-heading p{margin:0;color:var(--habs-muted);font-size:10px;text-align:right}
.habs-recent-trends>div:last-child{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.habs-trend{display:block;min-width:0;padding:14px;border-radius:10px}.habs-trend header{display:flex;align-items:center;justify-content:space-between;gap:8px}.habs-trend header span{color:var(--habs-cream);font-size:12px;font-weight:900}.habs-trend header b{color:var(--habs-muted);font-size:10px;text-transform:uppercase}.habs-trend.is-hot header b{color:#ffb06b}.habs-trend.is-cold header b{color:#9dddff}
.habs-trend-spark{display:block;width:100%;height:54px;margin:10px 0 8px;overflow:visible}.habs-trend-spark line{stroke:rgba(255,255,255,.1);stroke-width:1}.habs-trend-spark polyline{fill:none;stroke:#7d8da3;stroke-width:2.4;vector-effect:non-scaling-stroke}.habs-trend-spark circle{fill:#aebbd0;stroke:var(--habs-panel);stroke-width:1.5;vector-effect:non-scaling-stroke}.habs-trend.is-hot .habs-trend-spark polyline{stroke:#ff8a3d;filter:drop-shadow(0 0 3px rgba(255,112,46,.6))}.habs-trend.is-hot .habs-trend-spark circle{fill:#ffbb54}.habs-trend.is-cold .habs-trend-spark polyline{stroke:#55bfff;filter:drop-shadow(0 0 3px rgba(78,188,255,.6))}.habs-trend.is-cold .habs-trend-spark circle{fill:#9dddff}.habs-trend-spark.is-empty{display:grid;height:54px;place-items:center;border-bottom:1px solid rgba(255,255,255,.1);color:var(--habs-muted);font-size:10px}
.habs-trend-comparison{display:grid;grid-template-columns:1fr 1fr;gap:7px}.habs-trend-comparison span{color:var(--habs-muted);font-size:9px;text-transform:uppercase}.habs-trend-comparison strong{display:block;margin-top:2px;color:var(--habs-cream);font-size:15px}.habs-trend-comparison em{grid-column:1/-1;padding-top:7px;border-top:1px solid rgba(255,255,255,.08);color:var(--habs-muted);font-size:9px;font-style:normal}.habs-trend.is-hot .habs-trend-comparison em{color:#ffb06b}.habs-trend.is-cold .habs-trend-comparison em{color:#9dddff}
@media(max-width:900px){.habs-recent-trends>div:last-child{grid-template-columns:1fr}.habs-trend-heading{align-items:flex-start;flex-direction:column;gap:4px}.habs-trend-heading p{text-align:left}}@media(max-width:760px){.habs-glance-score-strip + .habs-glance-week,.habs-glance-week + .habs-glance-main-grid{margin-top:12px}.habs-trend-spark{height:48px}}

/* Historical Game Centre navigation — v2.6 */

/* Game Centre box score, shots and overtime — v3.6 */
.habs-score-shots{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin-top:2px;color:var(--habs-muted);font-size:.68rem;font-weight:900;font-variant-numeric:tabular-nums}.habs-score-shots b{font-size:.55rem;letter-spacing:.09em;text-transform:uppercase}.habs-score-shots span:first-child{text-align:right}.habs-score-shots span:last-child{text-align:left}
.habs-game-section{margin-top:14px;border:1px solid var(--habs-line);border-radius:12px;background:rgba(255,255,255,.025);overflow:hidden}.habs-game-section-heading{padding:12px 14px;border-bottom:1px solid var(--habs-line);background:rgba(255,255,255,.035)}.habs-game-section-heading span{display:block;color:var(--habs-red-bright);font-size:.57rem;font-weight:950;letter-spacing:.09em;text-transform:uppercase}.habs-game-section-heading h3{margin:2px 0 0;color:var(--habs-cream);font-size:.88rem}
.habs-game-stats-head,.habs-game-stat-row{display:grid;grid-template-columns:70px minmax(0,1fr) 70px;align-items:center;text-align:center}.habs-game-stats-head{padding:9px 12px;background:rgba(3,15,34,.72);color:var(--habs-red-bright);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase}.habs-game-stat-row{padding:8px 12px;border-top:1px solid rgba(255,255,255,.06);font-size:.69rem}.habs-game-stat-row strong{color:var(--habs-cream);font-size:.76rem;font-variant-numeric:tabular-nums}.habs-game-stat-row span{color:var(--habs-muted)}
.habs-shootout-list>div{display:grid;grid-template-columns:12px 38px minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px 12px;border-top:1px solid rgba(255,255,255,.06);font-size:.68rem}.habs-shootout-list>div:first-child{border-top:0}.habs-shootout-list i{width:9px;height:9px;border-radius:50%;border:2px solid #8391a5}.habs-shootout-list i.is-goal{border-color:#41c878;background:#41c878;box-shadow:0 0 0 3px rgba(65,200,120,.12)}.habs-shootout-list b{color:var(--habs-red-bright)}.habs-shootout-list span{color:var(--habs-cream)}.habs-shootout-list strong{color:var(--habs-muted);font-size:.61rem;text-transform:uppercase}
.habs-game-boxscore details{border-top:1px solid var(--habs-line)}.habs-game-boxscore details:first-of-type{border-top:0}.habs-game-boxscore summary{padding:11px 14px;color:var(--habs-cream);font-size:.7rem;font-weight:900;cursor:pointer;letter-spacing:.04em;text-transform:uppercase}.habs-game-box-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.habs-game-boxscore table{width:100%;min-width:640px;border-collapse:collapse;font-size:.64rem}.habs-game-boxscore th,.habs-game-boxscore td{padding:7px 8px;border-top:1px solid rgba(255,255,255,.06);text-align:center;white-space:nowrap}.habs-game-boxscore th:first-child,.habs-game-boxscore td:first-child{text-align:left}.habs-game-boxscore th{background:rgba(3,15,34,.72);color:var(--habs-muted);font-size:.55rem;letter-spacing:.06em;text-transform:uppercase}.habs-game-boxscore td{color:#dce7f5;font-variant-numeric:tabular-nums}.habs-game-boxscore td:first-child{color:var(--habs-cream);font-weight:800}.habs-game-boxscore .habs-goalie-box{margin-top:8px;min-width:480px}
@media(max-width:560px){.habs-score-shots{gap:5px}.habs-game-stats-head,.habs-game-stat-row{grid-template-columns:54px minmax(0,1fr) 54px}.habs-shootout-list>div{grid-template-columns:10px 34px minmax(0,1fr);gap:6px}.habs-shootout-list strong{grid-column:3}.habs-game-section-heading{padding:10px 12px}}
.habs-game-navigation{display:grid;grid-template-columns:1fr minmax(112px,.42fr) 1fr;gap:1px;padding:1px;border-top:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.09)}
.habs-game-navigation button{display:flex;align-items:center;gap:10px;min-width:0;min-height:54px;padding:9px 18px;border:0;background:linear-gradient(180deg,rgba(13,39,73,.98),rgba(5,23,48,.98));color:var(--habs-cream);font:inherit;text-align:left;cursor:pointer;transition:background .18s ease,color .18s ease}
.habs-game-navigation button:last-child{justify-content:flex-end;text-align:right}.habs-game-navigation button:hover:not(:disabled),.habs-game-navigation button:focus-visible{background:linear-gradient(180deg,rgba(24,64,111,.98),rgba(9,33,65,.98));outline:2px solid var(--habs-red-bright);outline-offset:-2px}
.habs-game-navigation button:disabled{color:#69778b;cursor:default}.habs-game-navigation button>span{color:var(--habs-red-bright);font-size:20px;font-weight:900}.habs-game-navigation button:disabled>span{color:#526075}
.habs-game-navigation button small,.habs-game-navigation button strong{display:block;min-width:0}.habs-game-navigation button small{color:var(--habs-red-bright);font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.habs-game-navigation button strong{overflow:hidden;color:inherit;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.habs-game-navigation button>small+strong{margin-left:0}.habs-game-nav-copy{display:block!important;min-width:0;color:inherit!important;font-size:inherit!important}.habs-game-navigation button:last-child .habs-game-nav-copy{text-align:right}
.habs-game-nav-latest{display:block!important;text-align:center!important}.habs-game-nav-latest.is-active{box-shadow:inset 0 -3px var(--habs-red-bright);background:linear-gradient(180deg,rgba(32,69,111,.98),rgba(8,30,59,.98))}.habs-game-nav-latest strong{margin-top:2px;color:var(--habs-muted)!important;font-size:9px!important;font-weight:700!important}
.habs-penalty-details{margin-top:8px!important}.habs-penalty-details>summary small{margin-left:auto;color:var(--habs-muted);font-size:9px;font-weight:750;text-transform:uppercase}.habs-penalty-details .habs-scoring-play{border-left-color:#e7b947}
@media(max-width:600px){.habs-game-navigation{grid-template-columns:1fr 82px 1fr}.habs-game-navigation button{min-height:50px;padding:8px 10px;gap:6px}.habs-game-navigation button strong{font-size:9px}.habs-game-navigation button>span{font-size:17px}.habs-game-nav-latest small{font-size:8px}}

/* Compact archived recaps and an explicit rink key — v2.8 */
.habs-recap-logs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.habs-recap-logs .habs-scoring-details{margin:0;border:1px solid var(--habs-line);border-radius:11px;background:rgba(255,255,255,.025);overflow:hidden}
.habs-recap-logs .habs-scoring-details>summary{display:flex;align-items:center;gap:8px;padding:12px 14px;background:rgba(255,255,255,.035);color:var(--habs-cream);font-size:.76rem;font-weight:900;cursor:pointer;list-style:none;text-transform:uppercase;letter-spacing:.04em}
.habs-recap-logs .habs-scoring-details>summary::-webkit-details-marker{display:none}
.habs-recap-logs .habs-scoring-details>summary small{margin-left:auto;color:var(--habs-muted);font-size:.59rem;letter-spacing:.06em}
.habs-recap-logs .habs-scoring-list{display:block;padding:0}
.habs-recap-period{margin:0;padding:7px 12px;border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07);background:rgba(3,15,34,.72);color:var(--habs-red-bright);font-size:.59rem;font-weight:950;letter-spacing:.09em;text-transform:uppercase}
.habs-recap-period:first-child{border-top:0}
.habs-recap-logs .habs-scoring-play{display:grid;grid-template-columns:42px minmax(0,1fr);gap:9px;align-items:start;min-height:0;margin:0;padding:9px 11px;border:0;border-bottom:1px solid rgba(255,255,255,.065);background:transparent}
.habs-recap-logs .habs-scoring-play:last-child{border-bottom:0}
.habs-recap-logs .habs-scoring-play>span{padding-top:1px;color:var(--habs-muted);font-size:.67rem;font-weight:850;font-variant-numeric:tabular-nums}
.habs-recap-logs .habs-scoring-play strong{display:flex;align-items:center;flex-wrap:wrap;gap:5px;color:var(--habs-cream);font-size:.7rem;line-height:1.3}
.habs-recap-logs .habs-scoring-play strong i{padding:2px 5px;border-radius:4px;background:rgba(255,255,255,.09);color:var(--habs-red-bright);font-size:.54rem;font-style:normal;letter-spacing:.05em}
.habs-recap-logs .habs-scoring-play strong b{color:var(--habs-muted);font-size:.62rem;font-weight:800}
.habs-recap-logs .habs-scoring-play strong em{padding:2px 5px;border:1px solid rgba(255,255,255,.13);border-radius:999px;color:#dce7f5;font-size:.52rem;font-style:normal;font-weight:950;letter-spacing:.05em}
.habs-recap-logs .habs-scoring-play small{display:block;margin-top:3px;color:var(--habs-muted);font-size:.61rem;line-height:1.4}
.habs-recap-logs .habs-scoring-play.is-goal{box-shadow:inset 3px 0 var(--habs-red-bright)}
.habs-recap-logs .habs-penalty-details{margin:0!important}.habs-recap-logs .habs-penalty-details .habs-scoring-play{box-shadow:inset 3px 0 #d8a93a}
.habs-rink-legend{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:8px 13px;margin-top:7px;color:var(--habs-muted);font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.habs-rink-legend span{display:inline-flex;align-items:center;gap:5px}.habs-rink-legend i{display:inline-block;width:7px;height:7px;border:1px solid #fff;border-radius:50%;background:#7e90a6}
.habs-rink-legend i.is-goal{width:11px;height:11px;border:2px solid #fff;border-radius:2px;background:var(--habs-red-bright);box-shadow:0 0 0 3px rgba(210,10,46,.2);transform:rotate(45deg)}
.habs-rink-legend .is-away-team i{border:0;background:#1c5da8}.habs-rink-legend .is-home-team i{border:0;background:#d20a2e}
.habs-live-rink .habs-rink-event.is-goal{width:15px;height:15px;border:3px solid #fff;border-radius:3px;box-shadow:0 0 0 5px rgba(210,10,46,.3),0 2px 7px rgba(0,0,0,.5);transform:translate(-50%,-50%) rotate(45deg)}
.habs-live-rink .habs-rink-event.is-goal{z-index:3;width:22px;height:22px;border:3px solid #fff;box-shadow:0 0 0 3px #071a33,0 0 0 7px rgba(210,10,46,.34),0 3px 9px rgba(0,0,0,.62)}
.habs-rink-event.is-mtl{background:#d20a2e}.habs-rink-event.is-opponent{background:#1c5da8}
.habs-live-rink button.habs-rink-event{appearance:none;padding:0;border:2px solid #fff;cursor:pointer;font:inherit}.habs-live-rink button.habs-rink-event:focus-visible,.habs-live-rink button.habs-rink-event.is-selected{z-index:20;outline:3px solid #ffd166;outline-offset:3px;box-shadow:0 0 0 6px rgba(255,209,102,.22),0 2px 8px rgba(0,0,0,.58)}
.habs-rink-marker-card{display:flex;align-items:center;gap:10px;min-height:42px;margin-top:9px;padding:9px 12px;border:1px solid rgba(255,255,255,.1);border-left:3px solid var(--habs-red);border-radius:8px;background:rgba(2,10,22,.72)}.habs-rink-marker-card small{flex:0 0 auto;color:var(--habs-muted);font-size:.55rem;font-weight:950;letter-spacing:.09em;text-transform:uppercase}.habs-rink-marker-card strong{color:var(--habs-cream);font-size:.68rem;line-height:1.4}
.habs-rink-event.is-goal b{display:grid;width:100%;height:100%;place-items:center;color:#fff;font-size:.57rem;line-height:1;transform:rotate(-45deg);text-shadow:0 1px 2px rgba(0,0,0,.85)}
.habs-rink-normalized{margin-left:auto;padding-left:10px;border-left:1px solid rgba(255,255,255,.12);color:var(--habs-cream)}
@media(max-width:560px){.habs-live-rink .habs-rink-event.is-goal{width:19px;height:19px}.habs-rink-event.is-goal b{font-size:.52rem}.habs-rink-normalized{flex-basis:100%;margin-left:0;padding:5px 0 0;border:0}}
@media(max-width:760px){.habs-recap-logs{grid-template-columns:1fr}.habs-recap-logs .habs-scoring-play{padding:8px 10px}.habs-rink-legend{justify-content:flex-start}}

/* Named live play-by-play — v3.9 */
.habs-latest-plays{overflow:hidden;margin:2px 0 18px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:linear-gradient(145deg,rgba(7,27,54,.9),rgba(2,11,25,.94));box-shadow:0 14px 32px rgba(0,0,0,.14)}
.habs-latest-plays-head{display:flex;align-items:flex-end;justify-content:space-between;padding:14px 16px 11px;border-bottom:1px solid rgba(255,255,255,.08)}.habs-latest-plays-head span{display:block;color:#ee3956;font-size:.55rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.habs-latest-plays-head h3{margin:2px 0 0;color:var(--habs-cream);font-size:1rem}.habs-latest-plays-head>small{color:var(--habs-muted);font-size:.56rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.habs-latest-plays-list{display:grid}.habs-latest-play{position:relative;display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:48px;padding:9px 14px;border-top:1px solid rgba(255,255,255,.055)}.habs-latest-play:first-child{border-top:0;background:rgba(255,255,255,.025)}.habs-play-icon{width:9px;height:9px;border:2px solid #d7e8ff;border-radius:50%;background:#1c5da8;box-shadow:0 0 0 3px rgba(28,93,168,.14)}.habs-latest-play.is-mtl .habs-play-icon{background:#d20a2e;box-shadow:0 0 0 3px rgba(210,10,46,.15)}.habs-latest-play.is-goal .habs-play-icon{width:11px;height:11px;border-color:#fff;background:#d20a2e;box-shadow:0 0 0 4px rgba(210,10,46,.22)}.habs-latest-play.is-penalty .habs-play-icon{border-radius:2px;background:#e5a52e}.habs-play-copy small{display:block;color:var(--habs-muted);font-size:.55rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.habs-play-copy strong{display:block;margin-top:2px;color:#e6eef8;font-size:.7rem;line-height:1.38}.habs-play-copy strong b{display:inline-block;min-width:34px;margin-right:7px;color:var(--habs-cream);font-size:.57rem;letter-spacing:.07em}.habs-latest-play>em{padding:3px 6px;border:1px solid rgba(238,57,86,.42);border-radius:999px;color:#ff8799;font-size:.49rem;font-style:normal;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:560px){.habs-rink-marker-card{align-items:flex-start;flex-direction:column;gap:3px}.habs-latest-plays-head{padding-inline:13px}.habs-latest-play{grid-template-columns:11px minmax(0,1fr);gap:8px;padding:9px 12px}.habs-latest-play>em{display:none}.habs-play-copy strong{font-size:.68rem}}

/* 3.0 scoreboard broadcast rail and puck goal markers. */
.habs-scoreboard-watch{display:flex;align-items:center;gap:14px;min-height:48px;padding:8px clamp(20px,4vw,34px);border-top:1px solid rgba(255,255,255,.08);background:linear-gradient(90deg,rgba(210,10,46,.09),rgba(255,255,255,.025) 42%,rgba(28,93,168,.08))}
.habs-scoreboard-watch-label{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;color:var(--habs-muted);font-size:.66rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.habs-scoreboard-watch-label i{display:grid;width:28px;height:22px;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:6px;background:rgba(3,9,16,.5);color:#fff;font-size:.56rem;font-style:normal}
.habs-scoreboard-watch-networks{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
.habs-scoreboard-watch-networks>span{display:inline-flex;align-items:center;gap:6px;min-height:27px;padding:5px 9px;border:1px solid rgba(255,255,255,.15);border-radius:999px;background:rgba(255,255,255,.055);color:var(--habs-cream);font-size:.7rem;font-weight:900;line-height:1}
.habs-scoreboard-watch-networks small{color:var(--habs-muted);font-size:.52rem;letter-spacing:.04em}
.habs-live-rink .habs-rink-event.is-goal{z-index:10;width:20px;height:14px;border:2px solid #e9eef4;border-radius:50%;background:radial-gradient(ellipse at 34% 28%,#68717c 0 8%,#20262d 22%,#05070a 70%);box-shadow:0 0 0 2px rgba(4,10,17,.88),0 3px 7px rgba(0,0,0,.65);transform:translate(-50%,-50%) rotate(-8deg)}
.habs-live-rink .habs-rink-event.is-goal i{position:absolute;left:3px;right:3px;bottom:-3px;height:3px;border-radius:50%;background:rgba(0,0,0,.45);filter:blur(1px)}
.habs-rink-legend i.is-goal{width:14px;height:9px;border:1px solid #e9eef4;border-radius:50%;background:radial-gradient(ellipse at 34% 28%,#68717c,#080b0f 68%);box-shadow:0 0 0 1px #07101b;transform:none}
@media(max-width:560px){.habs-scoreboard-watch{align-items:flex-start;gap:9px;padding-inline:16px}.habs-scoreboard-watch-label small{display:none}.habs-scoreboard-watch-networks{gap:5px}.habs-scoreboard-watch-networks>span{min-height:25px;padding:4px 8px;font-size:.64rem}.habs-live-rink .habs-rink-event.is-goal{width:18px;height:12px}}

/* Tabbed Game Centre and expandable scoring sequences — v4.0 */
.habs-game-tabs{margin:-2px 0 4px}.habs-game-tablist{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:0 0 18px;padding:5px;border:1px solid rgba(255,255,255,.1);border-radius:13px;background:rgba(2,10,22,.96);box-shadow:0 12px 28px rgba(0,0,0,.22);backdrop-filter:blur(12px)}
.habs-game-tablist button{position:relative;min-height:42px;padding:8px 10px;border:0;border-radius:9px;background:transparent;color:#8fa2ba;font:inherit;font-size:.67rem;font-weight:950;letter-spacing:.035em;cursor:pointer}.habs-game-tablist button[aria-selected="true"]{background:linear-gradient(135deg,#c91936,#8f0e25);color:#fff;box-shadow:0 7px 18px rgba(198,25,48,.26)}.habs-game-tablist button:focus-visible{outline:3px solid #ffd166;outline-offset:2px}.habs-game-tablist button i{display:inline-block;width:6px;height:6px;margin-left:6px;border-radius:50%;background:#ff3657;box-shadow:0 0 0 4px rgba(255,54,87,.16);animation:habs-live-pulse 1.5s ease-in-out infinite}
.habs-game-tabpanel[hidden]{display:none!important}.habs-summary-hero{display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 12px;margin:0 0 16px;padding:17px 18px;border:1px solid rgba(255,255,255,.1);border-left:4px solid var(--habs-red);border-radius:12px;background:linear-gradient(120deg,rgba(210,10,46,.12),rgba(28,93,168,.1))}.habs-summary-hero>span{color:#ee3956;font-size:.54rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.habs-summary-hero>strong{grid-row:1/3;grid-column:2;color:#fff;font-size:clamp(1.35rem,3vw,2.15rem);font-variant-numeric:tabular-nums;letter-spacing:-.035em}.habs-summary-hero>small{color:var(--habs-muted);font-size:.65rem;font-weight:800}
.habs-play-filters{display:flex;gap:6px;overflow-x:auto;padding:9px 12px;border-bottom:1px solid rgba(255,255,255,.07);scrollbar-width:none}.habs-play-filters::-webkit-scrollbar{display:none}.habs-play-filters button{flex:0 0 auto;min-height:29px;padding:5px 10px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(255,255,255,.035);color:#9fb0c5;font:inherit;font-size:.55rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.habs-play-filters button.is-active{border-color:rgba(238,57,86,.65);background:rgba(210,10,46,.2);color:#fff}
.habs-goal-event{display:block;border-top:1px solid rgba(255,255,255,.055);background:linear-gradient(110deg,rgba(210,10,46,.13),rgba(8,28,55,.62))}.habs-goal-event[hidden]{display:none}.habs-goal-event>summary{display:grid;grid-template-columns:12px minmax(0,1fr) auto 10px;gap:10px;align-items:center;min-height:60px;padding:11px 14px;list-style:none;cursor:pointer}.habs-goal-event>summary::-webkit-details-marker{display:none}.habs-goal-event>summary>i{width:7px;height:7px;border-right:2px solid #b7c4d5;border-bottom:2px solid #b7c4d5;transform:rotate(45deg);transition:transform .2s ease}.habs-goal-event[open]>summary>i{transform:rotate(225deg)}.habs-goal-event>summary>em{padding:4px 8px;border-radius:999px;background:#c91936;color:#fff;font-size:.5rem;font-style:normal;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.habs-goal-expanded{padding:0 14px 15px}.habs-goal-banner{display:flex;flex-direction:column;gap:3px;padding:12px 13px;border:1px solid rgba(255,255,255,.1);border-radius:10px 10px 0 0;background:rgba(2,9,20,.68)}.habs-goal-banner small{color:#ff5d75;font-size:.52rem;font-weight:950;letter-spacing:.1em;text-transform:uppercase}.habs-goal-banner strong{color:#fff;font-size:.76rem}.habs-goal-banner span{color:#9fafc2;font-size:.59rem}
.habs-sequence-rink{position:relative;overflow:hidden;aspect-ratio:2.05/1;border:2px solid rgba(198,25,48,.68);border-radius:0 0 30px 30px;background:linear-gradient(rgba(230,246,255,.95),rgba(211,237,249,.98));box-shadow:inset 0 0 24px rgba(20,71,122,.13)}.habs-sequence-rink:before,.habs-sequence-rink:after{position:absolute;top:0;bottom:0;width:2px;background:rgba(32,91,169,.5);content:''}.habs-sequence-rink:before{left:25%}.habs-sequence-rink:after{right:25%}.habs-sequence-rink>.habs-rink-line{position:absolute;inset:0 auto 0 50%;width:3px;background:rgba(198,25,48,.55)}.habs-sequence-marker{position:absolute;z-index:2;display:grid;width:20px;height:20px;place-items:center;border:2px solid #fff;border-radius:50%;background:#174f92;color:#fff;font-size:.55rem;font-weight:950;box-shadow:0 2px 7px rgba(0,0,0,.45);transform:translate(-50%,-50%)}.habs-sequence-marker.is-goal{width:26px;height:26px;background:#d20a2e;box-shadow:0 0 0 5px rgba(210,10,46,.22),0 3px 8px rgba(0,0,0,.5)}
.habs-sequence-list{display:grid;gap:0;margin:10px 0 0;padding:0;list-style:none;counter-reset:sequence}.habs-sequence-list li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:9px;padding:7px 9px;border-top:1px solid rgba(255,255,255,.07);color:#aebbd0;font-size:.61rem}.habs-sequence-list li:first-child{border-top:0}.habs-sequence-list li>b{color:#fff;font-variant-numeric:tabular-nums}.habs-sequence-list li span{display:flex;gap:7px}.habs-sequence-list li strong{color:#e8eef7}.habs-sequence-note{display:block;margin-top:8px;color:#71839a;font-size:.52rem;line-height:1.45}
@media(max-width:560px){.habs-gamecentre-body{padding-inline:10px}.habs-game-tablist{top:4px;margin-inline:-2px}.habs-game-tablist button{min-height:40px;padding-inline:5px;font-size:.58rem}.habs-summary-hero{grid-template-columns:1fr;padding:14px}.habs-summary-hero>strong{grid-area:auto;font-size:1.55rem}.habs-goal-event>summary{grid-template-columns:11px minmax(0,1fr) 8px;padding-inline:11px}.habs-goal-event>summary>em{display:none}.habs-goal-expanded{padding-inline:9px}.habs-sequence-rink{border-radius:0 0 22px 22px}.habs-sequence-list li span{display:block}.habs-sequence-list li strong{display:block;margin-bottom:2px}}

/* 4.0.1 desktop resilience and Game Centre polish. */
.habs-live-data img.habs-standing-logo,
.habs-live-data .habs-team-logo img,
.habs-live-data .habs-calendar-game img,
.habs-live-data .habs-schedule-opponent img,
.habs-live-data .habs-glance-game img{display:block!important;visibility:visible!important;max-width:none!important;opacity:1!important}
.habs-live-data img[hidden]{display:none!important}
.habs-team-logo .habs-team-monogram{position:absolute;inset:0;z-index:0;display:none;place-items:center;margin:0;color:rgba(255,255,255,.82);font-size:1rem;font-weight:950;letter-spacing:.06em}
.habs-team-logo>.habs-team-monogram:only-child,.habs-team-logo>img[hidden]+.habs-team-monogram{display:grid}
.habs-period-divider{position:sticky;top:57px;z-index:4;display:flex;align-items:center;gap:10px;padding:8px 12px;background:rgba(2,10,22,.94)}
.habs-period-divider:before,.habs-period-divider:after{height:1px;flex:1;background:rgba(255,255,255,.1);content:''}.habs-period-divider span{color:#aebdd0;font-size:.54rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.habs-goal-expanded.is-single-event .habs-goal-banner{border-radius:10px}.habs-goal-expanded.is-single-event .habs-sequence-list{margin-top:6px}
.habs-gamecentre-details>summary small{font-size:.7rem;line-height:1.4}
@media(min-width:901px){
  .habs-game-tabs{max-width:1180px;margin-inline:auto}
  .habs-game-tabpanel[data-habs-game-panel="summary"],.habs-game-tabpanel[data-habs-game-panel="boxscore"]{max-width:980px;margin-inline:auto}
  .habs-game-tabpanel[data-habs-game-panel="plays"]{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(430px,1.1fr);gap:18px;align-items:start}
  .habs-game-tabpanel[data-habs-game-panel="plays"][hidden]{display:none!important}
  .habs-game-tabpanel[data-habs-game-panel="plays"]>.habs-live-rink-wrap{position:sticky;top:64px;margin:0}
  .habs-game-tabpanel[data-habs-game-panel="plays"]>.habs-latest-plays{margin:0;min-width:0}
  .habs-game-tabpanel[data-habs-game-panel="boxscore"] .habs-game-box-table-wrap table{font-size:.72rem}
  .habs-game-tabpanel[data-habs-game-panel="boxscore"] .habs-game-box-table-wrap th,.habs-game-tabpanel[data-habs-game-panel="boxscore"] .habs-game-box-table-wrap td{padding-block:7px}
}

/* 4.0.2 locally packaged team marks and balanced desktop Summary cards. */
@media(min-width:901px){
  .habs-game-tabpanel[data-habs-game-panel="summary"] .habs-game-info-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:stretch}
  .habs-game-tabpanel[data-habs-game-panel="summary"] .habs-game-info-card{height:100%;min-height:88px}
}

/* 4.0.3 normalized team marks and logo fallback isolation. */
.habs-team-logo>img:not([hidden])+.habs-team-monogram{display:none}

/* 3.7 professional Game Centre scoreboard. */
.habs-matchup-compact{display:block;min-height:0;padding:10px clamp(16px,4vw,34px) 20px;background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(2,7,14,.22))}
.habs-score-stage{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:7px;padding:4px 0 14px}
.habs-score-stage .habs-game-status{max-width:none;padding:6px 13px;border-color:rgba(255,255,255,.14);background:rgba(2,7,14,.76);font-size:.64rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 8px 22px rgba(0,0,0,.22)}
.habs-score-stage .habs-score{display:grid;grid-template-columns:minmax(64px,1fr) 1px minmax(64px,1fr);align-items:center;width:min(100%,270px);gap:24px;color:#fff;font-size:clamp(3.8rem,8vw,6.2rem);font-weight:950;font-variant-numeric:tabular-nums;letter-spacing:-.07em;line-height:.82;text-shadow:0 8px 28px rgba(0,0,0,.48)}
.habs-score-stage .habs-score span:first-child{text-align:right}.habs-score-stage .habs-score span:last-child{text-align:left}
.habs-score-stage .habs-score i{width:1px;height:48px;background:linear-gradient(180deg,transparent,rgba(255,255,255,.34),transparent)}
.habs-score-stage .habs-at{width:58px;height:58px;margin:4px 0;border-color:rgba(255,255,255,.2);background:radial-gradient(circle at 38% 30%,#344a64,#050b13 68%);box-shadow:0 12px 28px rgba(0,0,0,.3)}
.habs-score-stage .habs-centre-rule{width:56px;margin-top:1px}
.habs-matchup-teams{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border:1px solid rgba(255,255,255,.11);border-radius:16px;background:rgba(2,8,16,.38);box-shadow:inset 0 1px rgba(255,255,255,.035),0 15px 34px rgba(0,0,0,.16)}
.habs-matchup-teams:after{position:absolute;inset:14px auto 14px 50%;width:1px;background:linear-gradient(180deg,transparent,rgba(255,255,255,.16),transparent);content:''}
.habs-matchup-compact .habs-matchup-team{position:relative;min-height:112px;padding:16px clamp(14px,3vw,28px)}
.habs-matchup-compact .habs-matchup-team.is-away{align-items:flex-start;text-align:left;background:linear-gradient(90deg,rgba(28,93,168,.13),transparent 72%)}
.habs-matchup-compact .habs-matchup-team.is-home{align-items:flex-end;text-align:right;background:linear-gradient(270deg,rgba(210,10,46,.13),transparent 72%)}
.habs-matchup-compact .habs-home-away{color:rgba(221,229,239,.58);font-size:.58rem;letter-spacing:.15em}
.habs-team-shots{display:inline-flex;align-items:baseline;gap:5px;margin-top:8px;padding:5px 9px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(2,7,14,.55);color:var(--habs-muted);font-size:.58rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.habs-team-shots b{color:#fff;font-size:.84rem;font-variant-numeric:tabular-nums;letter-spacing:0}
.habs-matchup-team.is-home .habs-team-shots{justify-content:flex-end}

@media(max-width:560px){
  .habs-matchup-compact{padding:8px 10px 14px}
  .habs-score-stage{padding-bottom:12px}
  .habs-score-stage .habs-score{width:min(100%,220px);grid-template-columns:minmax(54px,1fr) 1px minmax(54px,1fr);gap:18px;font-size:clamp(3.35rem,17vw,4.7rem)}
  .habs-score-stage .habs-score i{height:40px}
  .habs-matchup-teams{border-radius:13px}
  .habs-matchup-compact .habs-matchup-team{min-height:126px;padding:13px 10px;gap:9px}
  .habs-matchup-compact .habs-team-logo{flex-basis:54px;width:54px;height:54px;border-radius:14px}
  .habs-matchup-compact .habs-team-lockup{flex-direction:column;align-items:flex-start;gap:8px}
  .habs-matchup-compact .habs-matchup-team.is-home .habs-team-lockup{flex-direction:column;align-items:flex-end}
  .habs-matchup-compact .habs-team-lockup strong{max-width:120px;font-size:clamp(.92rem,4.3vw,1.12rem);line-height:1.05}
  .habs-matchup-compact .habs-team-lockup small{display:none}
  .habs-team-shots{margin-top:6px;padding:4px 8px}
}

@media(max-width:360px){
  .habs-matchup-compact .habs-matchup-team{padding-inline:8px}
  .habs-matchup-compact .habs-team-logo{flex-basis:48px;width:48px;height:48px}
  .habs-matchup-compact .habs-team-lockup strong{font-size:.88rem}
}

/* 3.7.1 isolated score display and pregame matchup polish. */
.habs-score-stage .habs-game-score{display:grid!important;grid-template-columns:minmax(92px,1fr) 1px minmax(92px,1fr)!important;align-items:end!important;width:min(100%,360px)!important;gap:28px!important;margin:2px auto 3px!important;color:#fff!important;font-family:inherit!important;font-size:inherit!important;font-weight:inherit!important;letter-spacing:normal!important;line-height:1!important;visibility:visible!important;opacity:1!important}
.habs-game-score-side{display:flex!important;align-items:center;justify-content:flex-end;gap:12px;min-width:0;visibility:visible!important;opacity:1!important}
.habs-game-score-side:last-child{flex-direction:row-reverse}
.habs-game-score-side small{color:rgba(221,229,239,.66);font-size:.72rem;font-weight:950;letter-spacing:.14em;line-height:1;text-transform:uppercase}
.habs-game-score-side b{display:block!important;padding:0!important;color:#fff!important;font-size:clamp(4.25rem,7vw,6.4rem)!important;font-weight:950!important;font-variant-numeric:tabular-nums;letter-spacing:-.07em!important;line-height:.82!important;text-shadow:0 8px 28px rgba(0,0,0,.5);visibility:visible!important;opacity:1!important}
.habs-score-stage .habs-game-score>i{display:block;width:1px;height:56px;margin-bottom:2px;background:linear-gradient(180deg,transparent,rgba(255,255,255,.36),transparent)}
.habs-upcoming-matchup{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:9px 12px;max-width:100%;margin:7px auto 3px;color:var(--habs-cream);font-size:clamp(.9rem,1.8vw,1.08rem);line-height:1.2;text-align:center}
.habs-upcoming-matchup b{font-weight:900}
.habs-upcoming-matchup i{display:inline-grid;min-width:30px;height:30px;padding:0 7px;place-items:center;border:1px solid rgba(255,255,255,.15);border-radius:999px;background:rgba(2,7,14,.58);color:var(--habs-muted);font-size:.58rem;font-style:normal;font-weight:950;letter-spacing:.11em;text-transform:uppercase}
.habs-matchup-compact .habs-team-logo img{inset:3px;width:calc(100% - 6px);height:calc(100% - 6px)}
.habs-matchup-compact .is-team-tor .habs-team-logo img{inset:3px;width:calc(100% - 6px);height:calc(100% - 6px);transform:none}
@media(max-width:560px){.habs-score-stage .habs-game-score{grid-template-columns:minmax(72px,1fr) 1px minmax(72px,1fr)!important;width:min(100%,270px)!important;gap:18px!important}.habs-game-score-side{flex-direction:column-reverse!important;justify-content:flex-start;gap:7px}.habs-game-score-side:last-child{flex-direction:column-reverse!important}.habs-game-score-side b{font-size:clamp(3.6rem,16vw,4.8rem)!important}.habs-game-score-side small{font-size:.62rem}.habs-score-stage .habs-game-score>i{height:45px;margin-bottom:18px}.habs-upcoming-matchup{gap:7px 9px;font-size:.85rem}.habs-upcoming-matchup i{min-width:27px;height:27px}}

/* 4.2.0 responsive standings, Game Centre and stats repairs. */
.habs-live-data.habs-standings{width:min(100%,1080px);margin:24px auto}
.habs-standings .habs-standings-heading{align-items:end;margin-bottom:12px;padding-bottom:14px}
.habs-standings .habs-standings-panel{margin-top:10px}
.habs-standings .habs-standings-panel-heading{margin:0;padding:9px 2px 8px}
.habs-standings .habs-standings-table{min-width:780px;font-size:.76rem}
.habs-standings .habs-standings-table th,.habs-standings .habs-standings-table td{height:42px;padding:6px 7px}
.habs-standings .habs-standings-table .habs-standing-rank{width:38px}
.habs-standings .habs-standings-table .habs-team-name{min-width:190px}

/* Standings use the full data table on wide screens and concise disclosure rows on touch screens. */
.habs-standings-mobile{display:none}
.habs-standing-mobile-row{overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(3,15,34,.66)}
.habs-standing-mobile-row.is-montreal{border-color:rgba(240,49,79,.5);box-shadow:inset 4px 0 var(--habs-red-bright);background:linear-gradient(90deg,rgba(210,10,46,.2),rgba(3,15,34,.7))}
.habs-standing-mobile-row>summary,.habs-standing-mobile-summary{display:grid;grid-template-columns:32px minmax(0,1fr) 30px auto 38px;align-items:center;gap:7px;min-height:58px;padding:8px 10px;color:var(--habs-cream);cursor:pointer;list-style:none}
.habs-standing-mobile-row>summary::-webkit-details-marker{display:none}
.habs-standing-mobile-row>summary:focus-visible{outline:3px solid rgba(240,49,79,.45);outline-offset:-3px}
.habs-standing-mobile-summary>span{min-width:0}
.habs-standing-mobile-summary>span:not(.habs-standing-mobile-team){display:grid;place-items:center;color:var(--habs-cream);font-size:.76rem;font-weight:900;text-align:center;font-variant-numeric:tabular-nums}
.habs-standing-mobile-summary>span:not(.habs-standing-mobile-team)>small{display:block;color:var(--habs-muted);font-size:.49rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.habs-standing-mobile-rank b{color:var(--habs-muted)}
.habs-standing-mobile-team{display:flex;align-items:center;gap:8px;min-width:0;color:var(--habs-cream);font-size:.88rem;font-weight:900}
.habs-standing-mobile-team .habs-standing-logo{float:none;flex:0 0 28px;width:28px;height:28px;margin:0}
.habs-standing-mobile-team>span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.habs-standing-mobile-team strong,.habs-standing-mobile-team small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.habs-standing-mobile-team small{color:var(--habs-muted);font-size:.58rem;font-weight:700}
.habs-standing-mobile-record{color:var(--habs-muted);font-size:.72rem;font-weight:800;white-space:nowrap}
.habs-standing-mobile-points{color:#fff;font-size:.95rem;font-weight:950;text-align:right;font-variant-numeric:tabular-nums}
.habs-standing-mobile-summary>.habs-standing-mobile-points>small{display:block;color:var(--habs-red-bright);font-size:.5rem;letter-spacing:.08em;text-transform:uppercase}
.habs-standing-mobile-points:after{display:block;color:var(--habs-muted);font-size:.65rem;line-height:.7;content:'›';transform:rotate(90deg);transition:transform .18s ease}
.habs-standing-mobile-row[open] .habs-standing-mobile-points:after{transform:rotate(-90deg)}
.habs-standing-mobile-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;padding:1px;border-top:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.06)}
.habs-standing-mobile-details>span,.habs-standing-mobile-details>div{display:grid;min-height:48px;padding:7px 5px;place-items:center;background:#07172c;color:var(--habs-cream);font-size:.78rem;font-weight:900;font-variant-numeric:tabular-nums}
.habs-standing-mobile-details small{display:block;color:var(--habs-muted);font-size:.52rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.habs-standing-mobile-row.is-playoff-cut,.habs-standing-mobile-row.has-playoff-cut{margin-bottom:12px;border-bottom-color:var(--habs-red-bright)}
.habs-standing-mobile-cut{display:flex;align-items:center;gap:9px;margin:3px 0;color:var(--habs-red-bright);font-size:.55rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.habs-standing-mobile-cut:before,.habs-standing-mobile-cut:after{height:2px;flex:1;background:rgba(240,49,79,.64);content:''}

/* The event map is a disclosure on small screens and a sticky companion to the timeline on desktop. */
.habs-rink-disclosure{margin:0 0 16px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(2,10,22,.54)}
.habs-rink-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:10px 13px;color:var(--habs-cream);font-size:.82rem;font-weight:900;cursor:pointer;list-style:none}
.habs-rink-disclosure>summary::-webkit-details-marker{display:none}
.habs-rink-disclosure>summary small{margin-left:auto;color:var(--habs-muted);font-size:.7rem;font-weight:700}
.habs-rink-disclosure>summary i{position:relative;flex:0 0 28px;width:28px;height:28px;border:1px solid var(--habs-line);border-radius:50%}
.habs-rink-disclosure>summary i:before,.habs-rink-disclosure>summary i:after{position:absolute;top:50%;left:50%;width:9px;height:2px;background:var(--habs-red-bright);content:'';transform:translate(-50%,-50%)}
.habs-rink-disclosure>summary i:after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .18s ease}
.habs-rink-disclosure[open]>summary i:after{transform:translate(-50%,-50%)}
.habs-rink-disclosure>summary:focus-visible{outline:3px solid #ffd166;outline-offset:-3px}
.habs-rink-disclosure>.habs-live-rink-wrap{padding:4px 12px 14px}
.habs-live-rink button.habs-rink-event:after{position:absolute;top:50%;left:50%;width:44px;height:44px;content:'';transform:translate(-50%,-50%)}
.habs-game-tablist button,.habs-play-filters button{min-height:44px}
.habs-play-filters button{padding:8px 13px;font-size:.68rem}
.habs-play-copy strong{font-size:.88rem;line-height:1.45}
.habs-play-copy strong b{font-size:.72rem}
.habs-play-copy small{font-size:.7rem}
.habs-goal-event>summary>em{display:inline-flex;align-items:center;min-height:28px;font-size:.62rem}

/* Stats headers remain usable for sorting; compact mobile tables retain the decision-making columns. */
.habs-stats-hub .habs-table-block{overflow:clip}
.habs-stats-hub .habs-data-table th button{min-height:44px;padding:5px 2px}
@media(min-width:901px){
  .habs-stats-hub .habs-table-wrap{overflow:clip}
  .habs-stats-hub .habs-data-table thead th{position:sticky;top:0;z-index:3}
}

@media(max-width:900px){
  .habs-scoreboard-shell{overflow:clip}
  .habs-rink-disclosure{margin-top:14px}
}

@media(min-width:901px){
  .habs-scoreboard-shell{overflow:clip}
  .habs-game-tabpanel[data-habs-game-panel="plays"]>.habs-latest-plays{grid-column:2;grid-row:1}
  .habs-game-tabpanel[data-habs-game-panel="plays"]>.habs-rink-disclosure{position:sticky;top:64px;grid-column:1;grid-row:1;min-width:0;margin:0}
  .habs-game-tabpanel[data-habs-game-panel="plays"]>.habs-rink-disclosure>summary{display:none}
  .habs-game-tabpanel[data-habs-game-panel="plays"]>.habs-rink-disclosure>.habs-live-rink-wrap{display:grid!important;grid-template-columns:1fr;max-width:none;margin:0;padding:12px}
}

@media(max-width:820px){
  .habs-standings .habs-standings-table-wrap{display:none}
  .habs-standings .habs-standings-mobile{display:grid;gap:8px}
  .habs-standings .habs-standing-team-full{display:none}
  .habs-standings .habs-standing-team-short{display:inline}
}

@media(max-width:760px){
  .habs-game-tablist button{min-height:48px;padding:9px 7px;font-size:.75rem}
  .habs-play-filters{gap:8px;padding:10px 12px}
  .habs-play-filters button{min-height:44px;font-size:.72rem}
  .habs-latest-play{min-height:58px;padding:11px 12px}
  .habs-play-copy strong{font-size:.9rem;line-height:1.48}
  .habs-play-copy strong b{font-size:.74rem}
  .habs-play-copy small{font-size:.72rem}
  .habs-rink-marker-card strong{font-size:.84rem}
  .habs-rink-marker-card small{font-size:.68rem}
  .habs-goal-banner strong,.habs-sequence-list li{font-size:.86rem}
  .habs-goal-banner span{font-size:.75rem}
  .habs-sequence-note{font-size:.7rem}
  .habs-stats-hub .habs-table-wrap{overflow-x:visible}
  .habs-stats-hub .habs-skater-table,
  .habs-stats-hub .habs-player-table,
  .habs-stats-hub .habs-goalie-table{width:100%;min-width:0;table-layout:fixed;font-size:.76rem}
  .habs-stats-hub .habs-skater-table th,
  .habs-stats-hub .habs-skater-table td,
  .habs-stats-hub .habs-player-table th,
  .habs-stats-hub .habs-player-table td,
  .habs-stats-hub .habs-goalie-table th,
  .habs-stats-hub .habs-goalie-table td{padding:5px 4px;overflow:hidden;text-overflow:ellipsis}
  .habs-stats-hub .habs-skater-table :is(th,td):nth-child(1),
  .habs-stats-hub .habs-skater-table :is(th,td):nth-child(3),
  .habs-stats-hub .habs-skater-table :is(th,td):nth-child(n+8),
  .habs-stats-hub .habs-player-table :is(th,td):nth-child(1),
  .habs-stats-hub .habs-player-table :is(th,td):nth-child(3),
  .habs-stats-hub .habs-player-table :is(th,td):nth-child(n+8){display:none}
  .habs-stats-hub .habs-skater-table :is(th,td):nth-child(2),
  .habs-stats-hub .habs-player-table :is(th,td):nth-child(2){width:40%;text-align:left}
  .habs-stats-hub .habs-skater-table :is(th,td):nth-child(n+4):nth-child(-n+7),
  .habs-stats-hub .habs-player-table :is(th,td):nth-child(n+4):nth-child(-n+7){width:15%;text-align:center}
  .habs-stats-hub .habs-goalie-table :is(th,td):nth-child(1),
  .habs-stats-hub .habs-goalie-table :is(th,td):nth-child(7),
  .habs-stats-hub .habs-goalie-table :is(th,td):nth-child(n+9){display:none}
  .habs-stats-hub .habs-goalie-table :is(th,td):nth-child(2){width:32%;text-align:left}
  .habs-stats-hub .habs-goalie-table :is(th,td):nth-child(n+3):nth-child(-n+6),
  .habs-stats-hub .habs-goalie-table :is(th,td):nth-child(8){width:13.6%;text-align:center}
  .habs-stats-hub .habs-player-name a{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}

@media(max-width:600px){
  .habs-game-navigation{grid-template-columns:minmax(0,1fr) minmax(88px,.55fr) minmax(0,1fr)}
  .habs-game-navigation button{min-height:52px;padding:7px 9px}
  .habs-game-navigation button strong{font-size:.75rem;line-height:1.25}
  .habs-game-navigation button small,.habs-game-nav-latest small{font-size:.65rem}
}

@media(max-width:560px){
  .habs-game-tablist button{min-height:48px;padding-inline:6px;font-size:.72rem}
  .habs-goal-event>summary{grid-template-columns:11px minmax(0,1fr) 8px;min-height:76px;row-gap:6px}
  .habs-goal-event>summary>.habs-play-icon{grid-column:1;grid-row:1}
  .habs-goal-event>summary>.habs-play-copy{grid-column:2;grid-row:1}
  .habs-goal-event>summary>em{display:inline-flex;grid-column:2/-1;grid-row:2;justify-self:start;min-height:30px;padding:5px 8px;font-size:.65rem}
  .habs-goal-event>summary>i{grid-column:3;grid-row:1}
}
/* 3.8 Game Day briefing */
.habs-pregame-dashboard{margin:26px 0 18px;padding:0;border:1px solid rgba(255,255,255,.12);border-radius:24px;overflow:hidden;background:linear-gradient(145deg,#101a30 0%,#07101f 70%);box-shadow:0 22px 55px rgba(0,0,0,.24);color:#f7f3ea}
.habs-pregame-header{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:25px 28px 22px;border-bottom:1px solid rgba(255,255,255,.1);background:radial-gradient(circle at 90% 0,rgba(200,16,46,.28),transparent 42%)}
.habs-pregame-header span,.habs-pregame-card header span{display:block;color:#ffbdc8;font-size:11px;font-weight:850;letter-spacing:.17em;text-transform:uppercase}.habs-pregame-header h2{margin:3px 0 2px;color:#fff;font-size:clamp(25px,4vw,38px);line-height:1}.habs-pregame-header p{margin:7px 0 0;color:#b8c2d5}.habs-pregame-header>b{padding:9px 13px;border:1px solid rgba(255,255,255,.15);border-radius:999px;color:#fff;background:rgba(255,255,255,.06);font-size:12px;letter-spacing:.1em}
.habs-game-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.025)}.habs-game-details>div{min-width:0;padding:14px 16px;border-right:1px solid rgba(255,255,255,.08)}.habs-game-details>div:last-child{border-right:0}.habs-game-details small,.habs-game-details strong{display:block}.habs-game-details small{margin-bottom:4px;color:#ffbdc8;font-size:9px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.habs-game-details strong{overflow-wrap:anywhere;color:#f8f9fb;font-size:12px;line-height:1.35}
.habs-pregame-glance{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid rgba(255,255,255,.1)}.habs-pregame-glance article{min-width:0;padding:19px 22px;border-right:1px solid rgba(255,255,255,.09)}.habs-pregame-glance article:last-child{border-right:0}.habs-pregame-glance small{display:block;color:#8fa1bd;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.habs-pregame-glance strong{display:block;margin:5px 0 2px;color:#fff;font-size:23px;line-height:1}.habs-pregame-glance span{color:#c7d0df;font-size:12px}
.habs-pregame-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px}.habs-pregame-card{padding:20px;border:1px solid rgba(255,255,255,.1);border-radius:17px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018))}.habs-pregame-card header{margin-bottom:17px}.habs-pregame-card h3{margin:3px 0 0;color:#fff;font-size:20px}.habs-pregame-comparison{grid-row:span 2}.habs-comparison-head,.habs-comparison-row{display:grid;grid-template-columns:1fr 1.45fr 1fr;align-items:center;text-align:center}.habs-comparison-head{padding:0 3px 9px;color:#fff}.habs-comparison-head span{color:#7487a5;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.habs-comparison-row{min-height:42px;border-top:1px solid rgba(255,255,255,.08)}.habs-comparison-row span{color:#9aa8bd;font-size:12px}.habs-comparison-row strong{color:#fff;font-size:15px}.habs-comparison-row strong:first-child{color:#ffcad3}
.habs-series-lead{display:block;color:#fff;font-size:22px;line-height:1.18}.habs-series-card p{color:#9ba9bd}.habs-previous-meeting{margin-top:17px;padding:14px 16px;border-left:3px solid #c8102e;border-radius:3px 12px 12px 3px;background:rgba(0,0,0,.2)}.habs-previous-meeting small,.habs-previous-meeting span{display:block;color:#91a0b7;font-size:11px}.habs-previous-meeting b{display:block;margin:4px 0;color:#fff;font-size:21px}
.habs-pregame-form-row{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:10px;margin-top:13px}.habs-pregame-form-row>strong{color:#fff}.habs-pregame-form-row>div{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.habs-pregame-form-row span{padding:7px 2px;border-radius:8px;text-align:center;background:rgba(255,255,255,.05)}.habs-pregame-form-row b,.habs-pregame-form-row small{display:block}.habs-pregame-form-row b{color:#fff;font-size:12px}.habs-pregame-form-row small{margin-top:2px;color:#8e9db2;font-size:8px}.habs-pregame-form-row .is-w{box-shadow:inset 0 -2px #38aa79}.habs-pregame-form-row .is-l{box-shadow:inset 0 -2px #c8102e}.habs-pregame-form-row .is-o,.habs-pregame-form-row .is-s{box-shadow:inset 0 -2px #d7a42b}.habs-pregame-form-row .is-pending{grid-column:1/-1;color:#8e9db2;font-size:11px}
.habs-watch-teams{display:grid;grid-template-columns:1fr 1fr;gap:14px}.habs-watch-teams>div{padding-left:12px;border-left:2px solid #c8102e}.habs-watch-teams>div:last-child{border-color:#54779d}.habs-watch-teams>div>b{display:block;margin-bottom:8px;color:#fff}.habs-watch-teams span{display:block;margin-top:10px}.habs-watch-teams small,.habs-watch-teams strong,.habs-watch-teams em{display:block}.habs-watch-teams small{color:#7f90aa;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.habs-watch-teams strong{margin-top:2px;color:#fff;font-size:13px}.habs-watch-teams em{color:#c6cfdd;font-size:11px;font-style:normal}
.habs-conditions-card>div{display:grid;grid-template-columns:1fr 1fr;gap:10px}.habs-conditions-card>div>span{padding:13px;border:1px solid rgba(255,255,255,.08);border-radius:12px}.habs-conditions-card b,.habs-conditions-card strong,.habs-conditions-card small{display:block}.habs-conditions-card b{color:#ffbdc8;font-size:10px}.habs-conditions-card strong{margin:5px 0;color:#fff}.habs-conditions-card small{color:#8798b0}.habs-keys-card{background:linear-gradient(135deg,rgba(200,16,46,.18),rgba(255,255,255,.025))}.habs-keys-card ol{margin:0;padding:0;list-style:none;counter-reset:keys}.habs-keys-card li{counter-increment:keys;display:grid;grid-template-columns:28px 1fr;align-items:center;gap:9px;padding:8px 0;color:#f3f5f8}.habs-keys-card li:before{content:counter(keys);display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#c8102e;color:#fff;font-size:11px;font-weight:900}.habs-pregame-source{margin:0;padding:0 20px 17px;color:#73849f;font-size:10px;text-align:center}
@media(max-width:720px){.habs-pregame-dashboard{margin-top:20px;border-radius:19px}.habs-pregame-header{align-items:start;padding:20px}.habs-pregame-header>b{font-size:10px}.habs-game-details{grid-template-columns:1fr 1fr}.habs-game-details>div{padding:12px 14px}.habs-game-details>div:nth-child(2n){border-right:0}.habs-game-details>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.08)}.habs-pregame-glance{grid-template-columns:1fr 1fr}.habs-pregame-glance article{padding:15px 16px}.habs-pregame-glance article:nth-child(2){border-right:0}.habs-pregame-glance article:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.09)}.habs-pregame-glance strong{font-size:20px}.habs-pregame-grid{grid-template-columns:1fr;padding:11px;gap:10px}.habs-pregame-card{padding:17px}.habs-pregame-comparison{grid-row:auto}.habs-pregame-form-row{grid-template-columns:36px 1fr;gap:6px}.habs-pregame-form-row>div{gap:3px}.habs-pregame-form-row small{font-size:7px}.habs-watch-teams{gap:8px}.habs-series-lead{font-size:20px}}

/* 4.1.0 responsive Scores + Schedule experience. */
.habs-feature-game{overflow:hidden;padding:0}
.habs-feature-game-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;margin:0;padding:22px clamp(20px,3vw,30px) 18px;border-bottom:1px solid rgba(255,255,255,.09);background:linear-gradient(100deg,rgba(210,10,46,.13),rgba(7,24,48,.2));font-size:inherit}
.habs-feature-game-meta>div{min-width:0}.habs-feature-game-meta .habs-kicker{margin:0 0 5px}.habs-feature-game-meta h3{margin:0;color:var(--habs-cream);font-size:clamp(1.45rem,3vw,2rem);line-height:1.05;white-space:nowrap;word-break:normal;overflow-wrap:normal}
.habs-feature-game-meta p{display:flex;flex-direction:column;gap:3px;margin:0;color:var(--habs-muted);font-size:.74rem;font-weight:750;line-height:1.25;text-align:right}.habs-feature-game-meta p span,.habs-feature-game-meta p strong{display:block}.habs-feature-game-meta p strong{color:var(--habs-cream);font-size:.88rem}
.habs-feature-games-grid{display:grid;grid-template-columns:1fr}.habs-feature-game.has-multiple-games .habs-feature-games-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.habs-feature-game.has-multiple-games .habs-feature-matchup+ .habs-feature-matchup{border-left:1px solid rgba(255,255,255,.09)}
.habs-feature-matchup{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:18px;min-width:0;padding:23px clamp(18px,3vw,30px);color:inherit;text-align:center;text-decoration:none;transition:background .18s ease,transform .18s ease}.habs-feature-matchup:hover,.habs-feature-matchup:focus-visible{background:rgba(255,255,255,.035);outline:0}.habs-feature-matchup:focus-visible{box-shadow:inset 0 0 0 3px rgba(255,209,102,.72)}
.habs-feature-matchup>.habs-feature-team,.habs-feature-matchup>.habs-feature-centre{color:inherit;text-transform:none}.habs-feature-team{display:grid;grid-template-columns:76px minmax(0,1fr);grid-template-areas:'label label' 'logo copy';align-items:center;gap:5px 13px;min-width:0;text-align:left}.habs-feature-team.is-home{grid-template-columns:minmax(0,1fr) 76px;grid-template-areas:'label label' 'copy logo';text-align:right}.habs-feature-team>small{grid-area:label;color:var(--habs-muted);font-size:.58rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.habs-feature-team>.habs-team-logo{grid-area:logo;flex-basis:76px;width:76px;height:76px;border-radius:20px}.habs-feature-team>.habs-team-logo img{inset:4px;width:calc(100% - 8px);height:calc(100% - 8px)}
.habs-feature-team-copy{grid-area:copy;min-width:0}.habs-feature-matchup .habs-feature-team-copy strong{margin:0;color:var(--habs-cream);font-size:clamp(2rem,4.2vw,3.35rem);line-height:.9;white-space:nowrap;word-break:normal}.habs-feature-team-copy>span{display:block;overflow:hidden;margin-top:5px;color:var(--habs-muted);font-size:.78rem;font-weight:750;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}
.habs-feature-centre{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:70px}.habs-feature-centre b{display:grid;min-width:42px;height:42px;padding:0 8px;place-items:center;border:1px solid rgba(255,255,255,.15);border-radius:999px;background:rgba(2,7,14,.58);color:var(--habs-cream);font-size:.63rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.habs-feature-centre small{color:var(--habs-muted);font-size:.65rem;font-weight:850;line-height:1.25}.habs-feature-centre em{color:var(--habs-red-bright);font-size:.55rem;font-style:normal;font-weight:900;letter-spacing:.04em;white-space:nowrap;text-transform:uppercase}
.habs-season-summary:not(.is-season-preview){grid-template-columns:repeat(5,minmax(0,1fr))}.habs-season-summary.is-season-preview{grid-template-columns:repeat(4,minmax(0,1fr))}.habs-season-summary strong{line-height:1.25}.habs-season-summary.is-season-preview strong{font-size:.88rem}

@media(max-width:760px){
  .habs-schedule{margin:18px auto 24px}.habs-schedule .habs-section-heading{padding-top:0}.habs-schedule .habs-section-heading .habs-season-pill{display:none}.habs-schedule .habs-section-heading p{max-width:310px;margin-inline:auto;font-size:.86rem;line-height:1.42}
  .habs-feature-game{margin-bottom:14px;border-radius:15px}.habs-feature-game-meta{grid-template-columns:1fr;gap:8px;padding:17px 14px 14px;text-align:center}.habs-feature-game-meta .habs-kicker{font-size:.63rem;line-height:1.35}.habs-feature-game-meta h3{font-size:1.55rem}.habs-feature-game-meta p{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap;gap:3px 8px;font-size:.69rem;text-align:center}.habs-feature-game-meta p strong{font-size:.72rem}.habs-feature-game-meta p strong:before{margin-right:8px;color:rgba(255,255,255,.28);content:'·'}
  .habs-feature-game.has-multiple-games .habs-feature-games-grid{grid-template-columns:1fr}.habs-feature-game.has-multiple-games .habs-feature-matchup+ .habs-feature-matchup{border-top:1px solid rgba(255,255,255,.09);border-left:0}
  .habs-feature-matchup{grid-template-columns:minmax(0,1fr) 52px minmax(0,1fr);gap:5px;padding:14px 8px}.habs-feature-team,.habs-feature-team.is-home{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.habs-feature-team>small{order:0;font-size:.51rem}.habs-feature-team>.habs-team-logo{order:1;flex-basis:50px;width:50px;height:50px;border-radius:14px}.habs-feature-team-copy{order:2;max-width:100%}.habs-feature-matchup .habs-feature-team-copy strong{font-size:1.62rem;line-height:.95}.habs-feature-team-copy>span{max-width:82px;margin-top:3px;font-size:.61rem}.habs-feature-centre{min-width:0;gap:4px}.habs-feature-centre b{min-width:35px;height:35px;padding-inline:5px;font-size:.54rem}.habs-feature-centre small{max-width:52px;font-size:.55rem;line-height:1.15}.habs-feature-centre em{display:none}
  .habs-season-summary:not(.is-season-preview),.habs-season-summary.is-season-preview{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:14px}.habs-season-summary>div{min-width:0;padding:11px 7px}.habs-season-summary>div:nth-child(2n){border-right:0}.habs-season-summary:not(.is-season-preview)>div:last-child{grid-column:1/-1}.habs-season-summary.is-season-preview>div:last-child{grid-column:auto}.habs-season-summary small{font-size:.57rem;line-height:1.3}.habs-season-summary strong,.habs-season-summary.is-season-preview strong{font-size:.78rem;overflow-wrap:anywhere}
  .habs-schedule-tools{gap:8px;margin:14px 0;padding:8px}.habs-season-controls,.habs-month-controls,.habs-view-controls{width:100%}.habs-season-controls{gap:6px}.habs-season-controls .habs-tool-button,.habs-view-controls .habs-tool-button{min-height:44px;padding:8px 5px;font-size:.66rem}.habs-month-controls{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:6px}.habs-month-controls .habs-tool-button{min-width:0;min-height:44px;padding:8px}.habs-month-select{width:100%;min-width:0;min-height:44px;padding:8px 28px 8px 10px;font-size:.8rem}.habs-view-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.habs-print-button{display:none}
  .habs-calendar-view{overflow:visible;padding-bottom:0}.habs-calendar-view[hidden]{display:none!important}.habs-calendar-view .habs-month-panel{overflow:visible;padding:12px 8px 10px}.habs-month-panel h3{margin:0 0 9px;font-size:1rem}.habs-calendar{width:100%;min-width:0;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.habs-calendar-weekday{min-width:0;padding:4px 0;font-size:.52rem;letter-spacing:.03em}.habs-calendar-day{min-width:0;min-height:48px;padding:4px 1px 2px;border-radius:6px}.habs-calendar-day.is-empty{opacity:.14}.habs-calendar-date{margin:0;color:#cbd5e2;font-size:.59rem;line-height:1;text-align:center}.habs-calendar-day.has-game{border-color:rgba(240,49,79,.62);background:linear-gradient(180deg,rgba(210,10,46,.16),rgba(23,54,93,.18));box-shadow:inset 0 2px 0 rgba(240,49,79,.75)}.habs-calendar-game{display:block;min-height:17px;margin:2px 0 0;padding:1px 0;border-radius:4px;font-size:.5rem;line-height:1;text-align:center}.habs-calendar-game strong{display:block;min-width:0;color:#fff}.habs-live-data .habs-calendar-game strong img{display:none!important}.habs-calendar-game strong span{display:block;overflow:hidden;color:#fff;font-size:.48rem;letter-spacing:-.02em;line-height:1.15;text-overflow:clip;white-space:nowrap}.habs-calendar-game>span,.habs-calendar-game>.habs-game-type,.habs-calendar-game>small{display:none!important}
  .habs-list-view .habs-month-panel{overflow:visible;padding:12px 9px}.habs-schedule-row{grid-template-columns:62px minmax(0,1fr);gap:5px 10px;min-height:78px;padding:11px 10px}.habs-schedule-date{grid-column:1;grid-row:1/4;align-self:center;font-size:.74rem;line-height:1.35}.habs-schedule-opponent{grid-column:2;grid-row:1;grid-template-columns:auto 28px minmax(0,1fr);gap:7px}.habs-schedule-opponent img{width:28px;height:28px}.habs-schedule-opponent>span{display:none}.habs-schedule-opponent .habs-game-type{grid-column:3;margin-top:0}.habs-schedule-result{grid-column:2;grid-row:2;font-size:.72rem;text-align:left}.habs-schedule-action{position:static;grid-column:2;grid-row:3;font-size:.54rem}
}

@media(max-width:340px){
  .habs-feature-matchup{grid-template-columns:minmax(0,1fr) 45px minmax(0,1fr);padding-inline:5px}.habs-feature-team>.habs-team-logo{flex-basis:44px;width:44px;height:44px;border-radius:12px}.habs-feature-matchup .habs-feature-team-copy strong{font-size:1.42rem}.habs-feature-team-copy>span{max-width:70px;font-size:.57rem}.habs-feature-centre small{max-width:44px;font-size:.51rem}
  .habs-calendar{gap:2px}.habs-calendar-day{min-height:45px}.habs-calendar-weekday{font-size:.48rem}.habs-calendar-game strong span{font-size:.44rem}
}

/* 4.5: semantic game hero and honest split-squad context. */
.habs-game-start{display:block;color:#fff;font-size:clamp(2rem,5vw,3.6rem);line-height:1.1;font-variant-numeric:tabular-nums;letter-spacing:-.04em}
.habs-split-games{padding:16px clamp(16px,4vw,32px);border-bottom:1px solid var(--habs-line)}
.habs-split-games-label{display:block;margin-bottom:8px;color:var(--habs-muted);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.habs-split-games>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.habs-live-data .habs-split-game{display:grid;gap:4px;width:100%;min-width:0;min-height:76px;padding:11px 14px;border:1px solid var(--habs-line);border-radius:8px;background:#10253b;color:#fff;text-align:left;font:inherit;cursor:pointer;box-shadow:none}
.habs-live-data .habs-split-game small{color:#c3cedb;font-size:.65rem;text-transform:uppercase;letter-spacing:.07em}
.habs-live-data .habs-split-game strong{font-size:.95rem}
.habs-live-data .habs-split-game span{font-size:.75rem}
.habs-live-data .habs-split-game.is-active{border-color:#e53b54;background:#263043;box-shadow:inset 3px 0 #c8102e}
.habs-live-data button:focus-visible,.habs-live-data summary:focus-visible{outline:3px solid #e8b55c;outline-offset:3px}
.habs-pregame-disclosure{border-top:1px solid var(--habs-line)}
.habs-pregame-disclosure>summary,.habs-glance-details>summary{padding:17px 24px;color:var(--habs-cream);font-size:.9rem;font-weight:750;cursor:pointer}
.habs-pregame-disclosure>summary span{margin-left:12px;color:var(--habs-muted);font-size:.75rem;font-weight:500}
.habs-record-context{margin:0!important;padding:12px 24px 0;color:var(--habs-muted);font-size:.69rem;line-height:1.5;text-align:center}
.habs-glance-details>summary{padding:16px 0;border-top:1px solid var(--habs-line)}
@media(max-width:560px){.habs-pregame-disclosure>summary span{display:none}.habs-split-games{padding:12px}.habs-live-data .habs-split-game{padding:10px}.habs-game-start{font-size:1.85rem}.habs-record-context{padding-inline:16px}}


/* 4.6.1: give each split-squad matchup enough room on tablets/small laptops. */
@media (max-width: 1200px) {
  .habs-feature-game.has-multiple-games .habs-feature-games-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .habs-feature-game.has-multiple-games .habs-feature-matchup + .habs-feature-matchup {
    border-left: 0;
    border-top: 1px solid rgba(255, 255, 255, .10);
  }
}

/* 4.6.2: keep weekly opponents and times readable at every card width. */
.habs-glance .habs-week-games {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
  overflow: visible;
  scroll-snap-type: none;
}
.habs-glance .habs-week-games > div {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
  grid-template-columns: 40px minmax(0, 1fr);
  gap: 3px 10px;
  scroll-snap-align: none;
}
.habs-glance .habs-week-games > div > span {
  grid-column: 1;
  grid-row: 1 / 3;
  white-space: nowrap;
}
.habs-glance .habs-week-games > div > strong {
  display: flex;
  align-items: center;
  gap: 6px;
  grid-column: 2;
  grid-row: 1;
  min-width: 0;
  line-height: 1.25;
  white-space: nowrap;
  word-break: normal;
  overflow-wrap: normal;
}
.habs-glance .habs-week-games > div > strong > em {
  flex: 0 0 auto;
  padding: 2px 5px;
  border: 1px solid rgba(255, 255, 255, .24);
  border-radius: 4px;
  font-size: 9px;
  font-style: normal;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: .04em;
  white-space: nowrap;
}
.habs-glance .habs-week-games > div > b {
  grid-column: 2;
  grid-row: 2;
  min-width: 0;
  line-height: 1.5;
  text-align: left;
  white-space: normal;
  word-break: normal;
  overflow-wrap: break-word;
}
@media (max-width: 600px) {
  .habs-glance .habs-week-games {
    grid-template-columns: minmax(0, 1fr);
  }
  .habs-glance .habs-week-summary > div {
    min-width: 0;
    padding: 12px;
  }
  .habs-glance .habs-week-summary strong {
    font-size: 16px;
    word-break: normal;
    overflow-wrap: normal;
  }
}

/* 4.8: the matchup leads; controls and source details stay quiet and readable. */
body.habs-design-2026 .habs-game-hero.is-refined .habs-scoreboard-heading {
  display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 0 0;
}
body.habs-design-2026 .habs-game-hero.is-refined .habs-scoreboard-heading h2 {
  margin:0; font-family:inherit; font-size:12px; font-weight:800; letter-spacing:.12em; line-height:1.5;
}
.habs-game-context { color:#bfcdd9; font-size:12px; font-weight:650; line-height:1.5; text-align:right; }
body.habs-design-2026 .habs-game-hero.is-refined .habs-matchup-compact { min-height:170px; padding:12px 0; }
body.habs-design-2026 .habs-game-hero.is-refined .habs-score-stage { gap:9px; padding:8px 0; }
body.habs-design-2026 .habs-game-hero.is-refined .habs-game-start { white-space:normal; text-wrap:balance; font-size:clamp(32px,4.3vw,52px); }
body.habs-design-2026 .habs-game-hero.is-refined .habs-game-start.is-schedule-update { font-family:inherit; font-size:clamp(18px,2.3vw,30px); line-height:1.25; }
body.habs-design-2026 .habs-game-hero.is-refined .habs-game-meta {
  display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:8px 20px; padding:10px 0 14px; border-top:1px solid rgba(244,241,233,.13);
}
body.habs-design-2026 .habs-game-hero.is-refined .habs-game-venue { margin:0; color:#c0ceda; font-size:12px; line-height:1.6; text-align:center; }
body.habs-design-2026 .habs-game-hero.is-refined .habs-scoreboard-watch { min-height:0; margin:0; padding:0; gap:9px; }
.habs-live-data .habs-selected-game-label {
  margin-left:8px; padding:2px 5px; color:#fff; border:1px solid #e29ba8; border-radius:3px; font-size:9px; font-weight:750; font-style:normal; letter-spacing:.02em;
}
.habs-live-data .habs-split-game small { display:flex; flex-wrap:wrap; align-items:center; gap:4px; }
.habs-scoreboard .habs-scoreboard-refresh { flex-wrap:wrap; gap:8px; font-size:11px; }
.habs-scoreboard .habs-scoreboard-refresh [data-habs-game-refresh] {
  min-height:44px; padding:8px 12px; margin-left:8px; border:1px solid #566a7c; border-radius:4px; background:transparent; color:#dce5ec; font-size:12px; font-weight:650; cursor:pointer;
}
.habs-scoreboard[aria-busy="true"] [data-habs-game-refresh] { opacity:.65; }
.habs-scoreboard .habs-game-tablist button { min-height:44px; font-size:12px; }
.habs-scoreboard .habs-game-tabpanel { min-width:0; }
.habs-scoring-summary { padding-bottom:18px; }
.habs-scoring-summary h3 { margin:0 0 12px; color:#f4f1e9; font-size:18px; line-height:1.4; }
.habs-scoring-summary p,.habs-scoreboard .habs-feed-note { color:#bdcbd8; font-size:13px; line-height:1.6; }
.habs-scoreboard .habs-feed-note { padding:12px 14px; border-left:3px solid #d3ad62; background:rgba(211,173,98,.07); }
.habs-scoring-summary ol { list-style:none; margin:0; padding:0; }
.habs-scoring-summary li { display:grid; grid-template-columns:85px minmax(0,1fr) 54px; align-items:start; gap:12px; padding:13px 0; border-top:1px solid rgba(244,241,233,.12); }
.habs-scoring-summary li span { min-width:0; }
.habs-scoring-summary li b,.habs-scoring-summary li strong,.habs-scoring-summary li small,.habs-scoring-summary li time { display:block; }
.habs-scoring-summary li b { color:#f4f1e9; font-size:11px; line-height:1.5; }
.habs-scoring-summary li strong { color:#f4f1e9; font-size:15px; line-height:1.4; }
.habs-scoring-summary li small,.habs-scoring-summary li time { margin-top:3px; color:#b7c6d4; font-size:12px; line-height:1.5; }
.habs-scoring-summary .habs-goal-team { text-align:right; }
.habs-live-data .habs-stats-search { display:flex; flex-wrap:wrap; align-items:end; gap:8px; }
.habs-live-data .habs-stats-search label { flex:1 1 220px; min-width:0; }
.habs-live-data .habs-stats-search [data-habs-player-clear] { min-height:44px; padding:10px 12px; font-size:13px; }
.habs-live-data .habs-stats-search-status { color:#c4d1dc; margin:0 0 18px; font-size:13px; line-height:1.5; }
.habs-live-data .habs-table-wrap:focus-visible { outline:3px solid #dfb561; outline-offset:3px; }
.habs-live-data .habs-table-title small { max-width:200px; line-height:1.5; text-align:right; }
.habs-live-data .habs-pregame-header h3 { margin:0; color:#f4f1e9; font-size:22px; line-height:1.3; }
@media (max-width:900px) {
  body.habs-design-2026 .habs-game-hero.is-refined .habs-matchup-compact { min-height:175px; }
}
@media (max-width:560px) {
  body.habs-design-2026 .habs-game-hero.is-refined .habs-scoreboard-heading { padding-top:12px; }
  body.habs-design-2026 .habs-game-hero.is-refined .habs-scoreboard-heading h2 { font-size:11px; }
  .habs-game-context { font-size:11px; }
  body.habs-design-2026 .habs-game-hero.is-refined .habs-matchup-compact { grid-template-columns:minmax(0,1fr) 110px minmax(0,1fr); gap:7px; min-height:156px; padding-block:12px; }
  body.habs-design-2026 .habs-game-hero.is-refined .habs-game-start { font-size:29px; line-height:1.08; }
  body.habs-design-2026 .habs-game-hero.is-refined .habs-game-start.is-schedule-update { font-size:16px; }
  body.habs-design-2026 .habs-game-hero.is-refined .habs-team-logo { width:54px; height:54px; flex-basis:54px; }
  body.habs-design-2026 .habs-game-hero.is-refined .habs-team-lockup strong { font-size:21px; line-height:1.05; overflow-wrap:normal; word-break:normal; }
  body.habs-design-2026 .habs-game-hero.is-refined .habs-game-meta { gap:8px; flex-direction:column; padding-bottom:12px; }
  .habs-scoreboard .habs-game-tablist button { font-size:11px; }
  .habs-scoring-summary li { grid-template-columns:63px minmax(0,1fr) 36px; gap:9px; }
  .habs-scoring-summary li strong { font-size:14px; }
  .habs-scoring-summary li b,.habs-scoring-summary li small,.habs-scoring-summary li time { font-size:11px; }
  .habs-live-data .habs-table-title small { max-width:140px; }
}
@media (max-width:360px) {
  body.habs-design-2026 .habs-game-hero.is-refined .habs-matchup-compact { grid-template-columns:minmax(0,1fr) 98px minmax(0,1fr); gap:5px; }
  body.habs-design-2026 .habs-game-hero.is-refined .habs-team-lockup strong { font-size:18px; }
  body.habs-design-2026 .habs-game-hero.is-refined .habs-game-start { font-size:25px; }
  .habs-live-data .habs-selected-game-label { margin-left:0; }
}
@media (prefers-reduced-motion:reduce) {
  .habs-live-data *, .habs-live-data *::before, .habs-live-data *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}
