:root{color-scheme:dark;--bg:#101719;--panel:#172124;--panel2:#1c282b;--text:#f3f4ed;--muted:#b7c3c1;--line:#344244;--accent:#ff865b;--terran:#99caff;--zerg:#d6b0f6;--protoss:#f1d986;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--text);line-height:1.6}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}p,h1,h2,h3{margin:0}button,a{-webkit-tap-highlight-color:transparent}.shell{max-width:1240px;margin:auto;padding:0 40px}.skip{position:absolute;left:20px;top:-80px;background:var(--accent);color:var(--bg);padding:12px;z-index:10}.skip:focus{top:12px}.site-header{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:108px;border-bottom:1px solid var(--line)}.brand{display:inline-flex;gap:8px;align-items:center;font-size:28px;line-height:1;font-weight:800;letter-spacing:-1.2px}.brand-sc{color:var(--accent)}.brand-mark{margin-right:5px;display:grid;place-items:center;height:36px;width:36px;background:var(--accent);color:var(--bg);font-size:28px;font-weight:900;border-radius:3px}.site-header nav{display:flex;gap:30px;flex-wrap:wrap;font-size:14px;font-weight:600}.intro{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center;padding:64px 0 60px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.8px;line-height:1.5}.intro-copy>.eyebrow{color:var(--accent);margin-bottom:20px}h1{font-size:clamp(48px,5.5vw,76px);letter-spacing:-3.5px;line-height:1.04;font-weight:800}h1 span{color:var(--accent)}.intro-description{font-size:18px;margin-top:24px;color:var(--muted);max-width:360px}.edition{font-size:12px;color:var(--muted);margin-top:28px}.edition span{margin:0 10px;color:var(--accent)}.calendar-card{background:var(--accent);color:var(--bg);padding:30px;border-radius:4px;scroll-margin-top:24px}.calendar-top{display:flex;align-items:center;justify-content:space-between}.calendar-icon{font-size:30px;line-height:1}.calendar-card h2{font-size:34px;line-height:1.13;letter-spacing:-1px;margin:22px 0 16px}.calendar-card p{font-size:16px;max-width:355px}.subscribe{display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--bg);color:var(--text);font-weight:650;font-size:14px;padding:16px 18px;margin-top:26px;border-radius:3px}.subscribe:hover{background:#263134;color:#fff}.subscribe:focus-visible,.calendar-secondary:focus-visible{outline-color:var(--bg)}.calendar-secondary{display:inline-block;font-size:14px;text-decoration:underline;text-underline-offset:4px;margin-top:14px}.calendar-secondary:hover{color:#293b40}.section{padding:36px 0 52px;border-top:1px solid var(--line);scroll-margin-top:24px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:26px}.section-heading .eyebrow{color:var(--accent);margin-bottom:8px}.section-heading h2{font-size:32px;line-height:1.2;letter-spacing:-1px}.section-note{max-width:480px;font-size:14px;color:var(--muted)}.watch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.watch-card{display:block;border:1px solid var(--line);border-radius:4px;padding:24px;transition:background .15s}.watch-card:hover{background:var(--panel);color:inherit}.watch-card .eyebrow{color:var(--muted)}.watch-card h3{display:flex;justify-content:space-between;font-size:24px;margin:12px 0 8px;letter-spacing:-.5px}.watch-card h3 span{color:var(--accent)}.watch-card p{color:var(--muted);font-size:16px}footer{border-top:1px solid var(--line);padding:28px 0 36px;display:flex;align-items:center;justify-content:space-between;gap:28px}footer p,footer>a:last-child{font-size:12px;color:var(--muted)}.footer-brand{font-size:22px;white-space:nowrap}footer>a:last-child{white-space:nowrap}
@media(max-width:800px){.shell{padding:0 24px}.site-header{min-height:88px}.site-header nav{gap:18px}.intro{gap:28px;padding:42px 0;grid-template-columns:1fr 1fr}h1{font-size:56px;letter-spacing:-2.5px}.calendar-card{padding:24px}.calendar-card h2{font-size:30px}.section-heading{align-items:start;flex-direction:column;gap:14px}footer{flex-wrap:wrap;gap:16px}}
@media(max-width:600px){.shell{padding:0 20px}.brand{font-size:25px}.brand-mark{height:30px;width:30px;font-size:24px}.site-header{align-items:center;flex-wrap:wrap;padding:24px 0;gap:22px;min-height:0}.site-header nav{width:100%;gap:22px;justify-content:space-between;font-size:14px}.intro{grid-template-columns:1fr;gap:30px;padding:34px 0 36px}h1{font-size:58px}.intro-copy>.eyebrow{margin-bottom:16px}.intro-description{margin-top:18px}.edition{margin-top:18px}.calendar-card{padding:24px}.calendar-card h2{font-size:32px;margin-top:20px}.calendar-card h2 br{display:none}.watch-grid{grid-template-columns:1fr}.section{padding:30px 0 36px}.section-heading h2{font-size:29px}.watch-card{padding:22px}footer{align-items:start;flex-direction:column;gap:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.watch-card{transition:none}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tournament-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:20px}.tournament{background:var(--panel);border:1px solid var(--line);padding:28px;border-radius:4px}.featured{border-top:3px solid var(--accent)}.tournament-label{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted)}.status{font-size:12px;white-space:nowrap;border:1px solid var(--line);border-radius:2px;padding:3px 8px;color:var(--text)}.tournament h3{font-size:28px;letter-spacing:-.7px;line-height:1.2;margin:18px 0 12px}.tournament-description{color:var(--muted);font-size:16px}.matches{width:100%;border-collapse:collapse;margin:20px 0 16px;font-size:14px}.matches caption{font-size:12px;text-align:left;color:var(--muted);padding:0 0 10px}.matches tr{border-top:1px solid var(--line)}.matches th{font-weight:600;white-space:nowrap;width:22%;text-align:left;padding:13px 0}.matches td{padding:13px 0}.matches .player-chip{background:none;padding:0;gap:5px}.matches .race{font-size:12px;width:20px;height:20px}.versus{font-size:12px;color:var(--muted);padding:0 7px;font-weight:400}.tournament-footnote{color:var(--muted);font-size:12px;margin:16px 0}.text-link{font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:5px}.text-link span{color:var(--accent)}.kcm-fixture{padding:28px 0 30px;margin-top:22px;border-block:1px solid var(--line)}.kcm-fixture>.eyebrow{color:var(--muted)}.kcm-fixture h4{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:30px;letter-spacing:-.6px;line-height:1.3;margin:12px 0}.kcm-fixture>p:last-child{font-size:16px}.race-z-text{color:var(--zerg)}.race-p-text{color:var(--protoss)}.team-context{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-bottom:24px}.team-context>p{font-size:16px;color:var(--muted);max-width:700px}.race-legend{display:flex;gap:16px;white-space:nowrap;font-size:12px}.race-legend>span{display:flex;align-items:center;gap:6px}.race{display:inline-grid;place-items:center;width:23px;height:23px;border-radius:3px;font-size:12px;font-weight:750;line-height:1;letter-spacing:0;flex-shrink:0}.race-t{color:var(--terran);background:#273a4b}.race-z{color:var(--zerg);background:#3b3048}.race-p{color:var(--protoss);background:#413c28}.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-left:1px solid var(--line);border-top:1px solid var(--line);border-radius:4px;overflow:hidden}.team-card{padding:24px;display:flex;flex-direction:column;align-items:start;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0}.team-title h3{font-size:20px;line-height:1.3;letter-spacing:-.3px}.team-title>span{font-size:12px;color:var(--muted);display:block;margin-top:3px;min-height:20px}.roster{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 16px}.player-chip{display:inline-flex;align-items:center;gap:8px;background:var(--panel2);padding:4px 5px 4px 9px;font-size:14px;white-space:nowrap;line-height:1.5}.source-link{font-size:12px;color:var(--muted);margin-top:auto;text-decoration:underline;text-underline-offset:4px}.section-footnote{font-size:12px;color:var(--muted);margin-top:18px}.section-footnote a{text-decoration:underline;text-underline-offset:3px}.players-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.race-panel{border:1px solid var(--line);padding:24px;border-radius:4px}.race-panel h3{display:flex;align-items:center;gap:10px;font-size:22px}.race-panel ul{list-style:none;padding:0;margin:20px 0 0;display:flex;flex-wrap:wrap;gap:8px 20px;font-size:16px}.watch-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.watch-card h3{font-size:22px}.source-note{border-top:1px solid var(--line);padding:30px 0 42px;display:grid;grid-template-columns:1fr 2fr;gap:12px 40px}.source-note h2{font-size:20px;line-height:1.3;letter-spacing:-.3px}.source-note p{font-size:14px;color:var(--muted)}.source-note .text-link{grid-column:2}.recurring{margin-top:20px;border:1px solid var(--line);border-radius:4px}.competition{display:grid;grid-template-columns:220px 1fr auto;gap:24px;align-items:center;padding:20px 24px;border-top:1px solid var(--line)}.competition:first-child{border-top:0}.competition h3{font-size:18px;line-height:1.4}.competition h3 small{display:block;font-size:12px;color:var(--muted);font-weight:400;margin-top:2px}.competition p{font-size:14px;color:var(--muted)}.competition>a{font-size:14px;white-space:nowrap;color:var(--accent);text-decoration:underline;text-underline-offset:4px}
@media(max-width:1000px){.team-context{display:block}.race-legend{margin-top:18px}.site-header nav{gap:20px}.team-card{padding:20px}.tournament{padding:24px}.tournament-label{align-items:start}.tournament-label .eyebrow{max-width:200px}.competition{grid-template-columns:190px 1fr auto;gap:18px}.watch-card{padding:22px}}
@media(max-width:800px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tournament-grid{grid-template-columns:1fr}.players-grid{gap:12px}.race-panel{padding:20px}.watch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header{flex-wrap:wrap;gap:24px;padding:26px 0}.site-header nav{gap:24px}.competition{grid-template-columns:1fr auto}.competition p{grid-column:1;grid-row:2}.competition>a{grid-column:2;grid-row:1/3}.source-note{grid-template-columns:1fr;gap:16px}.source-note .text-link{grid-column:1}}
@media(max-width:600px){.site-header nav{gap:8px 18px;font-size:14px;justify-content:flex-start}.team-grid{grid-template-columns:1fr}.team-card{padding:22px}.team-title{display:flex;justify-content:space-between;gap:12px;width:100%;align-items:baseline}.team-title>span{text-align:right}.players-grid,.watch-grid{grid-template-columns:1fr}.tournament{padding:22px}.tournament h3{font-size:26px}.tournament-label .eyebrow{font-size:12px;letter-spacing:1.4px;max-width:190px}.matches th{width:24%}.matches .player-chip{font-size:13px}.matches .versus{padding:0 5px}.race-legend{gap:20px}.competition{padding:20px;gap:10px 16px}.competition h3{font-size:17px}.team-context>p{font-size:16px}.section-footnote{line-height:1.7}}
@media(max-width:360px){h1{font-size:50px}.shell{padding:0 16px}.site-header nav{flex-wrap:wrap;justify-content:start;gap:10px 20px}.matches td .race{display:none}.calendar-card,.tournament{padding:20px}.team-title{flex-wrap:wrap;gap:2px}.team-title>span{text-align:left}.subscribe{font-size:14px;padding:14px}}

.site-header nav a{padding:4px 0}

/* Skim Bot's section (bot/page.mjs): upcoming matches, and results behind a closed dropdown
   so nobody opening the page is spoiled. */
.bot-matches { width: 100%; }
.bot-matches td.when small, .bot-matches td small { opacity: .75; }
.team-chip { font-size: .85em; }
details.spoilers { margin-top: 1rem; }
details.spoilers > summary { cursor: pointer; font-weight: 600; }
details.spoilers > summary span { font-weight: 400; opacity: .75; }
.news-grid { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr)); }
.news-item h3 { margin: .2rem 0 .4rem; }
.news-item details.spoilers { margin-top: .4rem; }
/* F-241: news (8 of 12 columns) beside what is coming up (4 of 12), right under the header. */
.feed { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 40px; align-items: start; }
.feed > #news { grid-column: 1 / span 8; grid-row: 1; }
.feed > #schedule { grid-column: 9 / span 4; grid-row: 1; position: sticky; top: 0; }
.feed > .section { border-top: 0; }
#schedule .section-heading { margin-bottom: 6px; }
#schedule > .section-note { margin-bottom: 14px; }
.fixtures { list-style: none; margin: 0 0 18px; padding: 0; }
.fixture { border-top: 1px solid var(--line); padding: 12px 0; }
.fixture.big .fixture-comp { color: var(--accent); font-weight: 600; }
.fixture-when { font-size: 13px; font-weight: 600; }
.fixture-comp { font-size: 13px; color: var(--muted); }
.fixture-comp small { opacity: .75; }
.fixture-players { font-size: 14px; margin-top: 4px; }
.fixture .player-chip { background: none; padding: 0; gap: 5px; }
.fixture .race { font-size: 11px; width: 19px; height: 19px; }
.feed .news-grid { grid-template-columns: repeat(auto-fill, minmax(min(280px, 100%), 1fr)); }
@media (max-width: 900px) {
  .feed { display: block; }
  .feed > #schedule { position: static; border-top: 1px solid var(--line); }
}
.feed .section-heading { display: block; }
.feed .section-heading .section-note { margin-top: 8px; max-width: none; }
@media (max-width: 900px) {
  .feed { display: flex; flex-direction: column; }
  .feed > #news { order: 1; }
  .feed > #schedule { order: 2; }
}
