/* Hado-Strike results use the site's existing type and color system. */
.home-event-compact .actions { display:grid; align-content:center; justify-items:start; gap:12px; }
.home-event-compact .quiet-link { color:#f3e7c9; font-weight:800; }
.hs-season-page .hs-hero::before { opacity:.72; background-image:linear-gradient(90deg,#101010d9,transparent 75%),url('../img/events/hado-strike/impact.webp'); background-position:center right; }
.hs-season-page .hs-hero-grid { align-items:center; }
.hs-season-page .hs-next { position:relative; isolation:isolate; overflow:hidden; background:#11100fef; border-color:#ff741f; box-shadow:20px 20px 0 #0005; }
.hs-season-page .hs-next::before { content:'02'; position:absolute; z-index:-1; right:-10px; bottom:0; color:#ff741f13; font:900 220px/1 HKDisplay,Impact,sans-serif; }
.hs-hub-mark { display:block; width:80px; height:80px; margin-bottom:22px; }
.hs-hub-mark svg { display:block; width:100%; height:100%; }
.hs-season-page .hs-season-overview { position:relative; overflow:hidden; background:radial-gradient(ellipse at 79% 48%,#56250f 0,transparent 45%),#11100f; }
.hs-season-page .hs-season-overview::before { content:''; position:absolute; inset:0; background:url('../img/events/hado-strike/impact.webp') center/cover; opacity:.13; pointer-events:none; }
.hs-season-page .hs-season-overview__grid { position:relative; align-items:center; }
.hs-season-page .hs-ranking-callout { background:#171717eb; }
.hs-season-page .hs-season-latest { width:100%; padding-block:12px; }
.hs-season-page .hs-season-latest > .eyebrow { text-align:center; margin-bottom:22px; }
.hs-season-winner { position:relative; width:min(100%,500px); min-height:100px; margin-inline:auto; }
.hs-season-winner :is(.community-player-card,.pc-media) { width:100%; margin:0; pointer-events:none; transform:rotate(2deg); box-shadow:0 25px 70px #000a; }
.hs-season-winner :is(h2,h3) { font-family:inherit; }
.hs-season-page .hs-schedule { gap:18px; }
.hs-season-page .hs-schedule > li { border:0; background:#121212; color:#f3e7c9; }
.hs-season-page .hs-stage-link { min-height:172px; padding:24px; border:1px solid #534b43; border-left:4px solid #625346; transition:transform .18s ease,border-color .18s ease; }
.hs-season-page .hs-stage-link:hover { transform:translateY(-3px); border-color:#ff741f; }
.hs-season-page .hs-stage-number { font-size:clamp(54px,6vw,84px); }
.hs-season-page .hs-schedule > li:nth-child(2) { background:linear-gradient(95deg,#24150be6,#11100fe6),url('../img/events/hado-strike/impact.webp') center/cover; }
.hs-season-page .hs-schedule > li:nth-child(2) .hs-stage-link { border-color:#ff741f; border-left-width:8px; }
.hs-season-overview__grid { display:grid; grid-template-columns:1.15fr 1fr; gap:clamp(24px,4vw,64px); align-items:stretch; }
.hs-ranking-callout { padding:clamp(24px,4vw,48px); background:#171717; color:#f3e7c9; border-top:5px solid #ff741f; }
.hs-ranking-callout h2 { font-size:clamp(34px,4vw,62px); line-height:1; margin-block:24px; }
.hs-ranking-callout p { max-width:52ch; }
.hs-ranking-callout .button { margin-top:20px; }
.hs-season-latest { align-self:center; }
.hs-season-latest .hs-season-results { margin-top:16px; }
.hs-schedule li:has(.hs-stage-link) { display:block; padding:0; }
.hs-stage-link { display:flex; align-items:center; gap:20px; width:100%; height:100%; padding:24px 0; text-decoration:none; color:inherit; }
.hs-stage-link > div { min-width:0; }
.hs-stage-link:hover h3 { color:#ff741f; }
.hs-stage-link .hs-stage-time { flex-shrink:0; padding-left:12px; }
.hs-stage-status,.hs-stage-detail { display:block; margin-top:8px; font-size:13px; line-height:1.45; }
.hs-stage-status { color:#f3e7c9; }
.hs-stage-detail { color:#ffad73; }
.hs-round-nav { display:flex; justify-content:space-between; flex-wrap:wrap; gap:16px; padding-block:22px; font-size:14px; font-weight:800; }
.hs-round-nav a { text-underline-offset:5px; }
.hs-round-registration { padding:clamp(24px,3vw,44px); border:1px solid #6d6258; border-top:5px solid #ff741f; background:#1c1714; color:#f3e7c9; }
.hs-round-number { display:block; font:900 clamp(80px,10vw,150px)/.9 HKDisplay,Impact,sans-serif; color:#ff741f; margin-bottom:26px; }
.hs-round-registration .button { margin-top:18px; }
.hs-round-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin-top:32px; }
.hs-round-facts > div { padding-top:16px; border-top:3px solid #f15a00; }
.hs-round-facts dt { font-size:14px; font-weight:800; }
.hs-round-facts dd { margin:12px 0 0; font:900 24px/1.2 HKDisplay,Impact,sans-serif; }
@media(max-width:760px) {
  .hs-season-overview__grid { grid-template-columns:minmax(0,1fr); }
  .hs-round-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .hs-stage-link { gap:16px; }
  .hs-season-page .hs-stage-link { padding:20px 16px; }
  .hs-season-page .hs-season-latest { padding:18px 7px; }
  .hs-season-winner :is(.community-player-card,.pc-media) { transform:rotate(1deg); }
}
@media(prefers-reduced-motion:reduce) { .hs-season-page .hs-stage-link { transition:none; } }
.hs-results-home { display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,.75fr); gap:clamp(28px,5vw,80px); padding:clamp(30px,5vw,72px); margin-block:24px 70px; background:#151413; color:#f3e7c9; border-top:6px solid #f15a00; }
.hs-results-home .label { color:#ff914f; }
.hs-results-home h2 { font:900 clamp(48px,6vw,94px)/.9 HKDisplay,Impact,sans-serif; margin:26px 0; }
.hs-results-home h2 span { color:#f15a00; }
.hs-results-home__intro > p:not(.label) { font-size:clamp(18px,2vw,25px); line-height:1.4; }
.hs-results-home__winner { color:#fff; }
.hs-results-home .actions { display:flex; align-items:center; flex-wrap:wrap; gap:16px; margin-top:30px; }
.hs-results-home .quiet-link { color:#f3e7c9; }
.hs-results-home__board { align-self:center; border:1px solid #6d6258; background:#201d1a; padding:24px; }
.hs-results-home__board ol { list-style:none; margin:12px 0 0; padding:0; }
.hs-results-home__board li { display:grid; grid-template-columns:72px minmax(0,1fr) auto; align-items:center; gap:10px; border-top:1px solid #615850; padding:11px 0; }
.hs-results-home__board li:first-child { color:#ffad73; }
.hs-results-home__board li span { font:900 19px HKDisplay,Impact,sans-serif; }
.hs-results-home__board li strong { overflow-wrap:anywhere; }
.hs-results-home__board li b { white-space:nowrap; color:#ffad73; }
.hs-results-home__board li small { font-weight:400; }
.hs-week-page section[id] { scroll-margin-top:100px; }
.hs-week-hero { background:radial-gradient(circle at 78% 24%,#4d200e 0,transparent 35%),#11100f; color:#f3e7c9; }
.hs-week-hero__grid { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr); gap:clamp(24px,5vw,75px); align-items:center; }
.hs-week-hero h1 { font:900 clamp(54px,8vw,120px)/.87 HKDisplay,Impact,sans-serif; margin:28px 0; }
.hs-week-hero h1 span { color:#ff741f; }
.hs-week-hero .lede { max-width:58ch; }
.hs-week-hero .button-row { margin-top:30px; }
.hs-week-winner { position:relative; display:flex; flex-direction:column; gap:16px; padding:clamp(28px,4vw,58px); border:2px solid #ff741f; background:#1c1714; overflow:hidden; }
.hs-week-winner::after { content:'01'; position:absolute; right:-.04em; bottom:-.33em; font:900 clamp(170px,22vw,340px) HKDisplay,Impact,sans-serif; color:#ffffff09; pointer-events:none; }
.hs-week-winner > * { position:relative; z-index:1; }
.hs-winner-seal { display:block; width:clamp(120px,14vw,170px); aspect-ratio:1; filter:drop-shadow(0 12px 12px #000a); }
.hs-winner-seal svg { display:block; width:100%; height:100%; }
.hs-week-winner strong { font:900 clamp(34px,4vw,65px)/1 HKDisplay,Impact,sans-serif; overflow-wrap:anywhere; }
.hs-week-winner > span:last-child { font:900 22px HKDisplay,Impact,sans-serif; color:#ffad73; }
.hs-week-top { list-style:none; margin:34px 0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.hs-week-top li { display:grid; grid-template-columns:62px minmax(0,1fr) auto; align-items:center; gap:16px; padding:18px 22px; border:1px solid #aa9d8d; background:#fffaf1; color:#11100f; }
.hs-week-top__champion { grid-column:1/-1; border-color:#f15a00!important; background:#211914!important; color:#f3e7c9!important; }
.hs-week-top__place { font:900 42px HKDisplay,Impact,sans-serif; color:#f15a00; }
.hs-week-top strong { font-size:clamp(17px,2vw,27px); overflow-wrap:anywhere; }
.hs-week-top__points { white-space:nowrap; font-weight:800; }
.hs-week-top__points small { font-weight:400; }
.hs-week-replay__card { padding:32px; background:#1c1714; color:#f3e7c9; border-left:6px solid #f15a00; }
.hs-week-replay__card > span { color:#ff914f; font-weight:900; }
.hs-week-replay__card strong { display:block; margin-block:20px; font:900 clamp(30px,3vw,48px)/1 HKDisplay,Impact,sans-serif; }
.hs-week-replay__card .text-link { color:#ffad73; }
.hs-week-video { position:relative; aspect-ratio:16/9; min-height:202px; margin-block:24px; overflow:hidden; border:1px solid #6d6258; background:#101010; }
.hs-week-video iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
.hs-season-results { padding:24px; background:#171717; color:#f3e7c9; border-left:5px solid #f15a00; }
.hs-season-results strong { display:block; font:900 clamp(28px,3vw,46px) HKDisplay,Impact,sans-serif; margin:12px 0 20px; }
.hs-ranking-page .page-section-heading { align-items:end; }
.hs-ranking-table { width:100%; min-width:0; }
.hs-ranking-table caption { text-align:left; padding:16px; font-weight:700; }
.hs-ranking-table th:first-child,.hs-ranking-table td:last-child { font-variant-numeric:tabular-nums; }
.hs-ranking-table td:nth-child(2) { overflow-wrap:anywhere; }
.hs-ranking-page .note { margin-top:24px; }
.hs-result-index { border-top:4px solid #f15a00; }
.hs-week-page :is(a,button):focus-visible,.hs-results-home a:focus-visible { outline:3px solid #ff741f; outline-offset:4px; }
@media(max-width:800px){ .hs-results-home,.hs-week-hero__grid,.hs-week-top { grid-template-columns:minmax(0,1fr); }.hs-week-top__champion{grid-column:auto;} }
@media(max-width:520px){ .hs-results-home{padding:24px 18px;}.hs-results-home__board{padding:14px;}.hs-results-home__board li{grid-template-columns:54px minmax(0,1fr) auto;font-size:13px;}.hs-week-top li{grid-template-columns:46px minmax(0,1fr);padding:14px;}.hs-week-top__points{grid-column:2;}.hs-week-top__place{font-size:34px;}.hs-ranking-table{font-size:12px;table-layout:fixed;}.hs-ranking-table :is(th,td){padding:10px 5px;}.hs-ranking-table :is(th,td):first-child{width:42px;}.hs-ranking-table :is(th,td):nth-child(3){width:53px;text-align:center;}.hs-ranking-table :is(th,td):last-child{width:54px;text-align:right;} }
