.match-hero-v2,.keystats,.sec{--f-display:'Barlow Condensed','Oswald',sans-serif;--f-body:'Barlow','PT Sans',sans-serif}
.sec{padding-top:46px;padding-bottom:46px}.sec.alt{background:#f2f3f5}.sec-head{margin-bottom:22px}.sec-head h2{font-family:var(--f-display);font-size:34px;font-weight:700;letter-spacing:0;line-height:1;text-transform:uppercase}.sec-head h2 .lbl{margin-left:12px;font-family:var(--f-ui);font-size:8px;font-weight:800;letter-spacing:.12em}.sec-head .right{font-size:9px;letter-spacing:.14em}
.match-hero-v2 .mh-team .name{font-family:var(--f-display);font-weight:700;letter-spacing:0}.match-hero-v2 .mh-top,.match-hero-v2 .mh-meta{font-family:'Manrope',sans-serif}.match-hero-v2 .mh-meta .v{font-family:var(--f-display);font-size:17px;font-weight:600;letter-spacing:0}.match-hero-v2 .finish-core b{font-family:var(--f-display);font-weight:700;letter-spacing:.01em}
.keystats{gap:1px;padding:0;background:#22242d;border-top:1px solid rgba(255,255,255,.1);border-bottom:3px solid #c8102e}.keystats .k{position:relative;min-height:138px;padding:20px 22px;background:linear-gradient(145deg,#171922,#0d0f15);overflow:hidden}.keystats .k:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#c8102e}.keystats .k:nth-child(even):before{background:#2579c9}.keystats .k .l{color:#9296a1;font:800 9px var(--f-ui);letter-spacing:.14em}.keystats .k .row{margin-top:9px;font:700 31px var(--f-display);letter-spacing:0}.keystats .k .bar{height:5px;margin-top:10px;background:#2b2e37}.keystats .k .sub{margin-top:8px;color:#777b86;font:600 10px 'Manrope',sans-serif;letter-spacing:0;text-transform:none}
.match-featured{background:linear-gradient(180deg,#fff,#f2f3f5)}.match-featured .star-grid{gap:14px}.match-featured .stars-intro{position:relative;padding:25px;background:radial-gradient(circle at 15% 15%,rgba(200,16,46,.24),transparent 42%),linear-gradient(145deg,#171922,#090a0f);border-top:3px solid #c8102e;box-shadow:0 18px 40px rgba(15,18,25,.14)}.match-featured .stars-intro h3{font-family:var(--f-display);font-size:32px;font-weight:700;letter-spacing:0;line-height:1}.match-featured .stars-intro p{font-family:'Manrope',sans-serif;font-size:12px;line-height:1.55}.match-featured .player-card{border-radius:3px;box-shadow:0 18px 42px rgba(15,18,25,.17)}.match-featured .player-card .name{font-family:var(--f-display);font-size:28px;font-weight:700;letter-spacing:0}
.sec.dark{background:radial-gradient(ellipse 65% 120% at 0% 50%,rgba(200,16,46,.13),transparent 70%),linear-gradient(145deg,#15171f,#08090e)}.sec.dark .sec-head{border-bottom-color:rgba(255,255,255,.18)}.sec.dark .compare-grid{gap:24px}.sec.dark .cmp{min-height:55px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.07)}.sec.dark .cmp .lbl{font-family:'Manrope',sans-serif;font-size:9px;letter-spacing:.1em}.sec.dark .cmp .v{font-family:var(--f-display);font-size:23px;font-weight:700}.sec.dark .period-box{padding:18px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.1)}
.match-goalies .gk{position:relative;min-height:152px;padding:18px;border:1px solid #dde0e5;border-top:3px solid #c8102e;background:linear-gradient(145deg,#fff,#f5f6f8);transition:transform .2s,box-shadow .2s}.match-goalies .gk:hover{transform:translateY(-3px);box-shadow:0 20px 42px rgba(15,18,25,.12)}.match-goalies .gk h3{font-family:var(--f-display);font-size:27px;font-weight:700;letter-spacing:0}.match-goalies .gk .ava img{border:3px solid #fff;box-shadow:0 0 0 2px #c8102e,0 10px 20px rgba(15,18,25,.15)}.match-goalies .gk-stats{gap:1px;background:#dde0e5}.match-goalies .gk-stats div{background:#fff}.match-goalies .gk-stats b{font-family:var(--f-display);font-size:25px}
.match-rosters .rosters{gap:16px;align-items:start}.match-rosters .roster-card{overflow:hidden;border:1px solid #d9dce2;background:#fff;box-shadow:0 18px 38px rgba(15,18,25,.08)}.match-rosters .roster-head{min-height:64px;padding:10px 14px;background:linear-gradient(100deg,#15171f,#222633);border-bottom:3px solid #c8102e}.match-rosters .roster-head img{width:42px;height:42px;padding:3px;background:#fff}.match-rosters .roster-head b{font-family:var(--f-display);font-size:23px;font-weight:700;letter-spacing:0}.match-rosters .roster-groups{gap:10px;padding:10px}.match-rosters .role-block{overflow:hidden;border:1px solid #e0e2e6;background:#f8f9fa}.match-rosters .role-block[open]{background:#fff}.match-rosters .role-title{position:relative;min-height:42px;align-items:center;padding:10px 34px 10px 12px;cursor:pointer;list-style:none;background:#171922;color:#fff;transition:background .18s}.match-rosters .role-title::-webkit-details-marker{display:none}.match-rosters .role-title:after{content:"+";position:absolute;right:12px;top:50%;transform:translateY(-50%);font:600 20px var(--f-display);color:#c8102e}.match-rosters .role-block[open]>.role-title:after{content:"−"}.match-rosters .role-title:hover{background:#20232d}.match-rosters .role-count{min-width:25px;height:21px;display:grid;place-items:center;background:#c8102e;color:#fff;font:700 10px var(--f-ui)}.match-rosters .role-list{background:#e5e7eb}.match-rosters .role-player{min-height:74px;padding:10px 11px;border-left:3px solid transparent;transition:background .18s,border-color .18s}.match-rosters .role-player:hover{background:#f6f7f9;border-left-color:#c8102e}.match-rosters .role-player.hot{border-left-color:#c8102e}.match-rosters .role-player .nm{font-family:var(--f-display);font-size:17px;font-weight:600;letter-spacing:0}.match-rosters .role-player .line{border-radius:2px;font-family:var(--f-display);font-size:12px}.match-rosters .role-player img{border:2px solid #fff;box-shadow:0 0 0 1px #cfd3da}
.match-duel .duel{gap:18px}.match-duel .duel-card{min-height:152px;border:1px solid #dde0e5;border-top:3px solid #c8102e;background:linear-gradient(145deg,#fff,#f6f7f9);transition:transform .2s,box-shadow .2s}.match-duel .duel-card.r{border-top-color:#2579c9}.match-duel .duel-card:hover{transform:translateY(-3px);box-shadow:0 20px 42px rgba(15,18,25,.12)}.match-duel .duel-card h3{font-family:var(--f-display);font-size:27px;font-weight:700;letter-spacing:0}.match-duel .duel-card img{border:3px solid #fff;box-shadow:0 0 0 2px #c8102e}.match-duel .duel-card.r img{box-shadow:0 0 0 2px #2579c9}.match-duel .vs{width:104px;height:104px;border-width:3px;box-shadow:0 14px 30px rgba(200,16,46,.2)}
@media(max-width:780px){.sec{padding-top:34px;padding-bottom:34px}.sec-head{margin-bottom:17px}.sec-head h2{font-size:29px}.sec-head .right{display:none}.keystats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.keystats .k{min-height:126px;padding:16px 14px}.keystats .k .row{font-size:25px}.keystats .k .sub{font-size:9px;line-height:1.35}.match-featured .star-grid{display:flex!important;gap:10px!important;margin-left:-14px;margin-right:-14px;padding:0 14px 13px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.match-featured .star-grid::-webkit-scrollbar{display:none}.match-featured .stars-intro,.match-featured .player-card{flex:0 0 84vw;min-width:0;scroll-snap-align:center}.match-featured .stars-intro{min-height:390px;display:flex;flex-direction:column;justify-content:flex-end}.match-featured .player-card{min-height:390px!important}.sec.dark .compare-grid{gap:14px}.match-goalies .gk{min-height:132px;padding:14px}.match-rosters .rosters{gap:14px}.match-rosters .roster-groups{padding:8px}.match-rosters .role-list{grid-template-columns:1fr!important}.match-rosters .role-player{min-height:68px}.match-rosters .role-title{min-height:44px}.match-duel .duel{gap:10px}.match-duel .duel-card,.match-duel .duel-card.r{min-height:120px;padding:13px}.match-duel .vs{width:74px;height:74px;font-size:20px}}
@media(prefers-reduced-motion:reduce){.match-goalies .gk,.match-duel .duel-card,.match-rosters .role-player{transition:none!important}}

.stars-matchup{display:grid;grid-template-columns:minmax(0,1fr) 38px minmax(0,1fr);align-items:center;gap:8px;margin:18px 0}.stars-matchup>span{display:flex;align-items:center;gap:8px;min-width:0}.stars-matchup>span:last-child{justify-content:flex-end;text-align:right}.stars-matchup img{width:42px;height:42px;padding:3px;object-fit:contain;background:#fff;border:1px solid rgba(255,255,255,.2)}.stars-matchup b{overflow:hidden;color:#fff;font:700 13px var(--f-display);text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase}.stars-matchup i{width:38px;height:38px;display:grid;place-items:center;color:#fff;background:#c8102e;border:2px solid rgba(255,255,255,.82);border-radius:50%;font:700 11px var(--f-display);font-style:normal;box-shadow:0 8px 18px rgba(200,16,46,.3)}.stars-swipe{display:none}

.flow-classic .rink-team{position:absolute;left:13px;z-index:7;display:flex;align-items:center;gap:7px;max-width:145px;padding:5px 8px;color:#172027;background:rgba(255,255,255,.78);border-left:3px solid #c8102e;box-shadow:0 7px 18px rgba(20,46,60,.12);font:700 10px var(--f-display);text-transform:uppercase;backdrop-filter:blur(5px)}.flow-classic .rink-team.away{top:12px;border-left-color:#2579c9}.flow-classic .rink-team.home{bottom:12px}.flow-classic .rink-team img{width:30px;height:30px;object-fit:contain}.flow-classic .rink-team span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.flow-classic .dot-event:after{width:2px!important;background:repeating-linear-gradient(to bottom,rgba(69,84,93,.58) 0 5px,transparent 5px 10px)!important;background-size:2px 10px!important;animation:rhl-dash 1.1s linear infinite}.flow-classic .dot-event.away:after{animation-direction:reverse}.flow-classic .dot-event.home{top:calc(61% + var(--lane)*22%)}.flow-classic .dot-event.away{top:calc(39% - var(--lane)*22%)}.flow-classic .dot-event.penalty.home{top:calc(78% + var(--lane)*10%)}.flow-classic .dot-event.penalty.away{top:calc(22% - var(--lane)*10%)}.flow-classic .dot-event.winner .dot-kind{min-width:62px;color:#17130a;background:#d6a64a}.flow-classic .dot-player .short{display:none}
@keyframes rhl-dash{to{background-position:0 10px}}

@media(max-width:780px){.rink-scroll:after{display:none!important}.flow-classic .rink-team{left:8px;max-width:118px;padding:4px 6px;font-size:8px}.flow-classic .rink-team img{width:25px;height:25px}.flow-classic .rink-team.away{top:8px}.flow-classic .rink-team.home{bottom:8px}.flow-classic .dot-player .full{display:none}.flow-classic .dot-player .short{display:block}.flow-classic .dot-event.home{top:calc(59% + var(--lane)*20%)}.flow-classic .dot-event.away{top:calc(41% - var(--lane)*20%)}.flow-classic .dot-event.penalty.home{top:calc(78% + var(--lane)*10%)}.flow-classic .dot-event.penalty.away{top:calc(22% - var(--lane)*10%)}.stars-matchup{margin:14px 0}.stars-matchup img{width:38px;height:38px}.stars-matchup b{font-size:12px}.stars-swipe{position:absolute;right:16px;bottom:16px;display:grid;width:42px;height:42px;place-items:center;color:#fff;background:#c8102e;border:1px solid rgba(255,255,255,.75);border-radius:50%;font:400 34px/1 var(--f-display);animation:rhl-swipe 1.4s ease-in-out infinite}.match-featured .stars-intro{padding-bottom:70px}.match-featured .star-grid{scroll-padding-inline:14px}}
@keyframes rhl-swipe{0%,100%{transform:translateX(0);opacity:.7}50%{transform:translateX(6px);opacity:1}}
@media(prefers-reduced-motion:reduce){.flow-classic .dot-event:after,.stars-swipe{animation:none!important}}
.flow-classic .dot-event.penalty.home{top:calc(61% + var(--lane)*22%)}.flow-classic .dot-event.penalty.away{top:calc(39% - var(--lane)*22%)}
@media(max-width:780px){.flow-classic .dot-event.penalty.home{top:calc(59% + var(--lane)*20%)}.flow-classic .dot-event.penalty.away{top:calc(41% - var(--lane)*20%)}}
