/* BoomScore Matchday: editorial hierarchy around the actual fixtures. */
.matches-desk { --desk-rule: #d7d7d7; --desk-display:var(--font-ui); }
.matchday-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; padding:4px 0 18px; }
.desk-eyebrow { display:flex; align-items:center; gap:9px; color:#555; font-size:9px; font-weight:700; letter-spacing:1.6px; }
.desk-eyebrow > span { width:7px; height:7px; background:var(--brand-red); }
.matchday-heading h1 { font-family:var(--desk-display); font-size:clamp(56px,6.2vw,86px); font-weight:800; letter-spacing:-4px; line-height:1.05; margin:12px 0 0; }
.matchday-heading h1 > span { color:var(--brand-red); }
.matchday-date { text-align:right; padding-bottom:4px; flex-shrink:0; }
.matchday-date > strong { display:block; font:600 37px/1 var(--desk-display); letter-spacing:-1.5px; }
.matchday-date strong > span { color:#aaa; }
.matchday-date > small { display:block; color:#666; font-size:10px; text-transform:uppercase; letter-spacing:1px; margin-top:10px; }
.matchday-bar { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:10px 0; border-top:2px solid transparent; margin-bottom:18px; }
.matchday-bar > div { display:flex; align-items:center; gap:8px; font-size:9px; letter-spacing:.8px; color:#666; }
.matchday-bar strong { color:#191919; font-family:var(--desk-display); font-size:13px; }
.matchday-bar > div > span { display:block; width:1px; height:12px; background:#ccc; margin:0 8px; }
.matchday-bar > .button { border:0; background:transparent; padding:5px 0 5px 8px; font-size:11px; }
.matchday-spotlight { background:#1e1e1e; color:white; margin-bottom:34px; border-radius:3px; overflow:hidden; }
.spotlight-meta { min-height:49px; display:flex; align-items:center; gap:19px; padding:12px 25px; border-bottom:1px solid transparent; font-size:10px; color:#b8b8b8; }
.spotlight-status { font-size:9px; letter-spacing:1px; font-weight:750; color:white; white-space:nowrap; display:inline-flex; align-items:center; gap:7px; }
.spotlight-status .live-dot { background:var(--brand-red); }
.spotlight-meta > a { display:inline-flex; align-items:center; gap:8px; color:#fff; }
.spotlight-meta > a > .icon { width:12px; height:12px; }
.spotlight-meta > span:last-child { margin-left:auto; text-align:right; }
.spotlight-main { display:grid; grid-template-columns:minmax(0,1fr) auto 52px; gap:24px; align-items:center; padding:30px 25px; }
.spotlight-teams { display:grid; gap:16px; }
.spotlight-teams > a { display:flex; align-items:center; gap:18px; min-width:0; }
.spotlight-teams .crest.hero { width:48px; height:48px; flex:0 0 48px; }
.spotlight-teams strong { display:block; font:650 clamp(32px,4vw,52px)/1 var(--desk-display); letter-spacing:-1.5px; text-transform:uppercase; }
.spotlight-teams a:hover strong { color:#ddd; }
.spotlight-teams a span { display:block; font-size:9px; color:#aaa; margin-top:7px; }
.spotlight-teams i { font-style:normal; padding:0 5px; color:#686868; }
.spotlight-series { text-align:center; padding:0 20px; border-left:1px solid transparent; }
.spotlight-series > span { display:block; color:#aaa; font-size:8px; font-weight:650; letter-spacing:2px; }
.spotlight-series > strong { display:flex; align-items:center; justify-content:center; font:650 104px/1.1 var(--desk-display); letter-spacing:-4px; font-variant-numeric:tabular-nums; }
.spotlight-series i { color:#666; font-style:normal; font-size:50px; margin:0 18px; }
.spotlight-series > small { display:block; color:#bbb; font-size:8px; letter-spacing:1.2px; }
.spotlight-open { width:48px; height:48px; display:grid; place-items:center; border:1px solid transparent; border-radius:50%; color:white; transition:background .15s,border-color .15s; }
.spotlight-open > .icon { height:21px; width:21px; }
.spotlight-open:hover { background:var(--brand-red-ink); border-color:var(--brand-red-ink); }
.spotlight-mapstrip { display:flex; border-top:1px solid transparent; background:#262626; }
.spotlight-map { display:flex; align-items:center; gap:11px; padding:15px 20px; flex:1; border-right:1px solid transparent; position:relative; min-width:0; }
.spotlight-map:last-child { border-right:0; }
.spotlight-map.active:before { position:absolute; content:''; top:-1px; height:2px; left:0; right:0; background:var(--brand-red); }
.map-number { color:#888; font-size:10px; }
.spotlight-map > div > strong { font-size:12px; font-weight:550; }
.spotlight-map small { display:block; font-size:7px; letter-spacing:1px; color:#aaa; margin-top:5px; }
.spotlight-map.active small { color:#ff6a6c; }
.spotlight-map > b { margin-left:auto; font:550 20px var(--desk-display); white-space:nowrap; }
.spotlight-map > b > span { padding:0 7px; color:#777; }
.desk-columns { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:34px; align-items:start; }
.desk-primary,.desk-secondary { min-width:0; }
.matches-desk .panel { border:0; border-radius:0; box-shadow:none; background:transparent; }
.matches-desk .matches-panel { margin-bottom:32px; }
.desk-section-heading { display:flex; align-items:center; justify-content:space-between; min-height:40px; gap:12px; border-bottom:2px solid transparent; padding:0 0 13px; }
.desk-section-heading > div:first-child { display:flex; align-items:baseline; gap:10px; }
.desk-index { color:var(--brand-red-ink); font:600 12px var(--desk-display); }
.desk-section-heading h2 { font-size:22px; letter-spacing:-.7px; font-weight:650; }
.desk-section-heading > a { display:inline-flex; gap:8px; font-size:11px; color:#555; }
.matches-desk .date-control { font-size:10px; }
.matches-desk .date-control > button { width:25px; height:25px; font-size:20px; color:#555; }
.matches-desk .date-control > button:disabled { opacity:.3; cursor:default; }
.matches-desk .match-filters { padding:14px 0; gap:10px; border-bottom:1px solid var(--desk-rule); }
.matches-desk .match-tabs { gap:5px; }
.matches-desk .match-tabs > button { font-size:11px; padding:7px 10px; border-radius:3px; color:#777; }
.matches-desk .match-tabs > button.active { color:white; background:#252525; }
.matches-desk .match-tabs > button:nth-child(2):before { background:var(--brand-red); }
.matches-desk .match-filters select { font-size:10px; color:#666; }
.matches-desk .league-heading { background:#eee; border:0; padding:13px 12px; }
.matches-desk .league-heading strong { font-size:12px; color:#242424; }
.matches-desk .league-heading small { font-size:9px; color:#777; }
.matches-desk .match-group { margin-top:12px; }
.matches-desk .match-row { grid-template-columns:87px minmax(0,1fr) 22px 30px 14px; padding:16px 12px; min-height:84px; background:white; border-bottom:1px solid transparent; }
.matches-desk .match-round { display:none; }
.matches-desk .match-row:hover { background:#f4f4f4; }
.matches-desk .match-time { width:87px; }
.matches-desk .match-time strong { font-size:11px; color:#555; }
.matches-desk .match-time.is-live strong { color:var(--brand-red-ink); }
.matches-desk .match-time small { font-size:9px; color:#777; }
.matches-desk .match-teams > span { gap:8px; }
.matches-desk .match-teams strong { font-size:13px; font-weight:600; color:#242424; }
.matches-desk .match-scores strong { font-size:13px; }
.matches-desk .map-scores { font-size:12px; color:var(--brand-red-ink); }
.matches-desk .map-scores.muted { color:#999; }
.matches-desk .match-round { font-size:9px; }
.desk-rail-label { display:flex; align-items:center; gap:15px; font-size:8px; font-weight:650; letter-spacing:1.5px; color:#666; margin-bottom:22px; }
.desk-rail-label > i { height:1px; background:#aaa; flex:1; }
.desk-secondary .section-head { padding:0 0 15px; border-bottom:2px solid transparent; }
.desk-secondary .section-head h2 { font-size:20px; font-weight:650; letter-spacing:-.5px; }
.desk-secondary .section-head p { font-size:10px; margin-top:6px; }
.desk-secondary .section-head > a { font-size:10px; }
.desk-secondary .trending-row,.desk-secondary .ranking-row { padding:13px 0; min-height:65px; border-color:transparent; }
.desk-secondary .trending-row strong,.desk-secondary .ranking-row strong { color:#222; font-size:13px; }
.desk-secondary .trending-row small,.desk-secondary .ranking-row small { font-size:10px; color:#777; }
.desk-secondary .row-number { font:500 14px var(--desk-display); color:#9c9c9c; }
.desk-secondary .sparkline { display:none; }
.desk-secondary .panel-foot { padding:11px 0; font-size:9px; border:0; color:#777; }
.desk-secondary .panel { margin-bottom:28px; }
.desk-secondary .rating { font-size:11px; min-width:32px; height:26px; border-radius:4px; }
.desk-compare { display:block; padding:20px 0; border-top:2px solid transparent; }
.desk-compare > span:first-child { font-size:9px; color:var(--brand-red-ink); letter-spacing:1.5px; }
.desk-compare strong { display:block; font-size:24px; line-height:1.12; letter-spacing:-.8px; margin:13px 0 18px; }
.desk-compare > span:last-child { display:flex; align-items:center; justify-content:space-between; font-size:11px; color:#555; }
.desk-events { margin-bottom:30px; }
.desk-event { display:flex; align-items:center; gap:12px; border-bottom:1px solid transparent; padding:18px 0; }
.desk-event > div { flex:1; }
.desk-event strong { font-size:14px; color:#252525; }
.desk-event small { display:block; color:#777; font-size:10px; margin-top:6px; }
.desk-event > span:not(.event-icon) { font-size:10px; color:#777; }
.desk-event > .icon { margin-left:7px; width:17px; height:17px; }
@media (min-width:1600px) { .desk-columns { grid-template-columns:minmax(0,1fr) 350px; gap:45px; } .spotlight-main { padding:35px; } .spotlight-teams strong { font-size:64px; } }
@media (max-width:1180px) { .desk-columns { grid-template-columns:minmax(0,1fr) 260px; gap:24px; } .spotlight-main { gap:16px; } .spotlight-series { padding:0 13px; } .spotlight-series > strong { font-size:86px; } .spotlight-teams .crest.hero { width:40px; height:40px; flex-basis:40px; } .spotlight-teams > a { gap:13px; } .matches-desk .match-round { display:none; } }
@media (max-width:980px) { .desk-columns { grid-template-columns:minmax(0,1fr); } .desk-secondary { display:grid; grid-template-columns:1fr 1fr; gap:24px; } .desk-rail-label { grid-column:1/-1; margin-bottom:0; } .spotlight-meta > span:last-child { display:none; } .desk-compare { grid-column:1/-1; } }
@media (max-width:540px) {
 .matchday-heading { gap:12px; padding-top:8px; padding-bottom:16px; }
 .desk-eyebrow { font-size:7px; letter-spacing:1px; gap:6px; }
 .desk-eyebrow > span { width:5px; height:5px; }
 .matchday-heading h1 { font-size:clamp(34px,11.2vw,44px); letter-spacing:-2px; margin-top:11px; }
 .matchday-date > strong { font-size:25px; letter-spacing:-1px; }
 .matchday-date > small { font-size:7px; letter-spacing:0; margin-top:7px; }
 .matchday-bar { margin-bottom:14px; }
 .matchday-bar > div { font-size:7px; gap:5px; letter-spacing:.3px; }
 .matchday-bar > div > span { margin:0 4px; }
 .matchday-bar > .button { font-size:9px; gap:5px; }
 .matchday-bar > .button > .icon { width:13px; height:13px; }
 .matchday-spotlight { margin-bottom:27px; }
 .spotlight-meta { padding:12px 14px; gap:15px; min-height:40px; font-size:9px; }
 .spotlight-status { font-size:8px; letter-spacing:.4px; }
 .spotlight-main { padding:24px 14px; grid-template-columns:minmax(0,1fr) auto; gap:16px; position:relative; }
 .spotlight-teams { gap:20px; }
 .spotlight-teams .crest.hero { width:26px; height:26px; flex-basis:26px; }
 .spotlight-teams > a { gap:9px; }
 .spotlight-teams strong { font-size:26px; letter-spacing:-.7px; }
 .spotlight-teams a span { font-size:8px; margin-top:5px; line-height:1.4; }
 .spotlight-teams i { padding:0 2px; }
 .spotlight-series { padding:0 0 0 13px; }
 .spotlight-series > span { font-size:8px; letter-spacing:.7px; }
 .spotlight-series > strong { font-size:54px; letter-spacing:-2px; }
 .spotlight-series i { font-size:25px; margin:0 8px; }
 .spotlight-series > small { max-width:90px; font-size:8px; letter-spacing:.3px; line-height:1.5; margin:auto; }
 .spotlight-open { position:absolute; right:14px; top:-34px; width:25px; height:25px; border:0; }
 .spotlight-open .icon { width:15px; height:15px; }
 .spotlight-meta > a { padding-right:20px; }
 .spotlight-meta > a > .icon { display:none; }
 .spotlight-map { display:flex; flex-direction:column; align-items:flex-start; gap:7px; padding:12px 10px; }
 .spotlight-map > div { display:contents; }
 .map-number { display:none; }
 .spotlight-map > div > strong { font-size:12px; }
 .spotlight-map small { font-size:8px; letter-spacing:.4px; order:3; margin-top:0; }
 .spotlight-map > b { font-size:20px; margin-left:0; }
 .spotlight-map > b > span { padding:0 3px; }
 .desk-section-heading h2 { font-size:21px; }
 .desk-index { font-size:11px; }
 .matches-desk .match-filters { flex-wrap:wrap; gap:10px; padding:12px 0; }
 .matches-desk .match-tabs { gap:3px; }
 .matches-desk .match-tabs > button { font-size:10px; padding:6px 8px; }
 .matches-desk .match-filters select { font-size:9px; }
 .matches-desk .league-heading { padding:11px 10px; }
 .matches-desk .league-heading strong { font-size:11px; }
 .matches-desk .league-heading small { font-size:8px; }
 .matches-desk .match-row { grid-template-columns:70px minmax(0,1fr) 18px 22px 10px; padding:14px 10px; gap:9px; }
 .matches-desk .match-time { width:70px; }
 .matches-desk .match-time strong { font-size:10px; }
 .matches-desk .match-time small { font-size:8px; }
 .matches-desk .match-teams strong { font-size:12px; }
 .matches-desk .map-scores { font-size:11px; padding-left:10px; min-width:22px; }
 .desk-secondary { display:block; }
 .desk-rail-label { margin-bottom:20px; }
 .desk-secondary .section-head h2 { font-size:21px; }
 .desk-events .desk-section-heading > a { font-size:10px; }
 .desk-event > span:not(.event-icon) { display:none; }
}
