.sports-desk-links {
 display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:0 0 10px;
}
.sports-desk-button {
 position:relative; isolation:isolate; overflow:hidden; display:flex; align-items:center; min-height:138px;
 padding:12px 14px; border:1px solid var(--desk-border); border-radius:15px;
 color:#f5f9ff; background:var(--desk-background); text-align:start;
 transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.sports-desk-scores {--desk-border:#447d79;--desk-background:radial-gradient(ellipse at 0 80%,#23695d,#133c48 56%,#102b38)}
.sports-desk-news {--desk-border:#71659a;--desk-background:radial-gradient(ellipse at 0 80%,#624985,#3d305a 56%,#28253e)}
.sports-desk-button svg {position:absolute;inset-inline-end:3px;inset-block-end:3px;width:min(57%,165px);height:auto;color:#bcf2e7;pointer-events:none;z-index:-1}
.sports-desk-button [data-news-sheet] {transform-box:fill-box;transform-origin:center}
.sports-desk-copy {display:grid;gap:5px;min-width:0;padding:7px 0}
.sports-desk-copy b {font-size:clamp(.9rem,2.7vw,1.2rem);text-shadow:0 1px 5px #101421}
.sports-desk-copy small {font-size:.73rem;color:#e1eaf4;text-shadow:0 1px 4px #101421}
.sports-desk-button:hover, .sports-desk-button:focus-visible {border-color:#e0fffb;box-shadow:0 6px 17px #10142130}
.sports-desk-button:active {transform:scale(.96)}
body[data-page="messages"] .messenger-heading {margin-block:0 6px}
.messenger-heading h1 {margin-block:0}
body[data-page="messages"] #storyFeed {margin-block:0 8px}
.sports-desk {animation:sports-desk-enter .2s ease both}
@keyframes sports-desk-enter {from {opacity:0;transform:translateY(5px)} to {opacity:1;transform:none}}
.sports-desk-toolbar {display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.sports-score-days {display:flex;gap:5px;overflow-x:auto;max-width:100%;padding-block:3px}
.sports-score-days button {
 white-space:nowrap;min-height:37px;padding:6px 9px;border:1px solid var(--line);border-radius:9px;
 color:var(--ink);background:var(--bg);font-size:.85rem
}
.sports-score-days button[aria-pressed="true"] {background:var(--green-light);border-color:var(--green);font-weight:800}
.sports-live-filter {display:flex;align-items:center;gap:5px;font-size:.84rem}
.sports-desk-status,.sports-desk-credit,.sports-desk-empty {font-size:.83rem;color:var(--muted);margin:10px 0}
.sports-desk-status:empty {display:none}
.sports-desk-credit {text-align:center;margin-top:18px;padding-top:10px;border-top:1px solid var(--line)}
.sports-desk-credit a {color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.sports-score-group {border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:12px}
.sports-score-group h3 {
 display:flex;gap:8px;align-items:center;margin:0;padding:9px 10px;background:var(--green-light);
 color:var(--ink);font-size:.9rem;line-height:1.5
}
.sports-score-group h3 img,.sports-match-team img {width:22px;height:22px;object-fit:contain;flex:none}
.sports-score-group h3 bdi {margin-inline-start:auto;white-space:nowrap;font-size:.78rem}
.sports-score-group ul {list-style:none;padding:0;margin:0}
.sports-score-group li {background:var(--white)}
.sports-score-group li:nth-child(odd) {background:var(--bg)}
.sports-score-group li+li {border-top:1px solid var(--line)}
.sports-match-row {
 display:grid;grid-template-columns:55px minmax(0,1fr) auto minmax(0,1fr);gap:6px;align-items:center;
 min-height:48px;padding:7px;color:var(--ink);font-size:.82rem;text-decoration:none
}
a.sports-match-row:hover {background:var(--green-light)}
.sports-match-time,.sports-match-team {display:flex;align-items:center;gap:5px;min-width:0}
.sports-match-time {flex-direction:column;gap:1px;align-items:flex-start}
.sports-match-time small {font-size:.66rem;color:var(--muted);line-height:1.2}
.sports-match-time .is-live {display:inline-flex;align-items:center;gap:3px;color:#216347;font-weight:800}
.sports-match-time .sports-live-dot {display:inline-block;width:6px;height:6px;margin:0;flex:0 0 6px;border-radius:50%;background:currentColor;animation:sports-live-blink 1.8s ease-in-out infinite}
@keyframes sports-live-blink {0%,100% {opacity:1} 50% {opacity:.2}}
[data-theme="dark"] .sports-match-time .is-live {color:#93e6a6}
.sports-match-team span {overflow-wrap:anywhere}
.sports-match-result {white-space:nowrap;font-variant-numeric:tabular-nums}
.sports-match-periods {display:flex;gap:8px;flex-wrap:wrap;padding:0 9px 7px;color:var(--muted);font-size:.7rem}
.sports-news-section {margin-top:14px}
.sports-news-tabs {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:2px 0 13px}
.sports-news-tabs button {min-height:53px;padding:9px;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:var(--bg);font-weight:800}
.sports-news-tabs button[aria-selected="true"] {border-color:var(--green);background:var(--green-light)}
.sports-news-section h3 {font-size:1rem;margin:0 0 7px}
.sports-news-rail {
 display:grid;grid-auto-flow:column;grid-auto-columns:min(72%,205px);gap:9px;overflow-x:auto;
 scroll-snap-type:x proximity;overscroll-behavior-inline:contain;padding:3px 2px 9px;min-width:0
}
.sports-news-card,.sports-news-older {scroll-snap-align:start;border:1px solid var(--line);border-radius:12px}
.sports-news-card {display:flex;flex-direction:column;overflow:hidden;background:var(--white);color:var(--ink);text-decoration:none}
.sports-news-card img {width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--bg)}
.sports-news-card div {display:grid;gap:4px;padding:9px;line-height:1.55;font-size:.84rem}
.sports-news-card small {color:var(--muted)}
.sports-news-card:hover {border-color:var(--green)}
.sports-news-older {color:var(--ink);background:var(--bg);padding:12px;min-height:74px}
@media (max-width:600px) {
 .sports-desk-button svg {width:50%}
}
@media (max-width:380px) {
 .sports-desk-button {padding-inline:8px;align-items:flex-start}
 .sports-desk-button svg {width:50%;opacity:.82}
 .sports-match-row {grid-template-columns:43px minmax(0,1fr) auto minmax(0,1fr);gap:4px;font-size:.76rem}
 .sports-match-team img {width:18px;height:18px}
}
@media (prefers-reduced-motion:reduce) {
 .sports-match-time .sports-live-dot {animation:none;opacity:1}
 .sports-desk {animation:none}
 .sports-desk-button {transition:none}
 .sports-desk-button:active {transform:none}
}

