/* One colour identity per sport, across discovery, catalogue tabs and specialist navigation. */
:is([data-sport-entry="basketball"],[data-catalog-sport="basketball"],[data-specialist-sport="basketball"]){--sport-entry-colour:#2866bd;--sport-entry-ink:#fff;--sport-entry-detail:#e3edff;--sport-entry-gradient:linear-gradient(135deg,#326fbd 0%,#2866bd 48%,#194a94 100%)}
:is([data-sport-entry="baseball"],[data-catalog-sport="baseball"],[data-specialist-sport="baseball"]){--sport-entry-colour:#d77742;--sport-entry-ink:#07182f;--sport-entry-detail:#102d25;--sport-entry-gradient:linear-gradient(135deg,#f5c391 0%,#e9975f 48%,#d77742 100%)}
:is([data-sport-entry="badminton"],[data-catalog-sport="badminton"],[data-specialist-sport="badminton"]){--sport-entry-colour:#c6f113;--sport-entry-ink:#07182f;--sport-entry-detail:#183b35;--sport-entry-gradient:linear-gradient(135deg,#e8ff8a 0%,#d7f74c 48%,#b4dd0f 100%)}
:is([data-sport-entry="volleyball"],[data-catalog-sport="volleyball"],[data-specialist-sport="volleyball"]){--sport-entry-colour:#80448b;--sport-entry-ink:#fff;--sport-entry-detail:#f3d9f4;--sport-entry-gradient:linear-gradient(135deg,#915a9b 0%,#80448b 48%,#60306c 100%)}
:is([data-sport-entry="football"],[data-catalog-sport="football"],[data-specialist-sport="football"]){--sport-entry-colour:#57c6a4;--sport-entry-ink:#07182f;--sport-entry-detail:#123e36;--sport-entry-gradient:linear-gradient(135deg,#a2ebcf 0%,#75d9b7 48%,#57c6a4 100%)}
#shop .sport-roster>a:hover,#shop .sport-roster>a:focus-visible{background:var(--sport-entry-colour);background-image:var(--sport-entry-gradient);color:var(--sport-entry-ink);outline:2px solid var(--sport-entry-colour);outline-offset:-2px;box-shadow:inset 0 1px 0 #ffffff55}
#shop .sport-roster>a:hover :is(small,span),#shop .sport-roster>a:focus-visible :is(small,span){color:var(--sport-entry-detail)}
#shop .sport-roster>a:hover span i,#shop .sport-roster>a:focus-visible span i{color:var(--sport-entry-ink)}
#shop .category-card{outline-offset:-4px}
#shop .category-card:hover,#shop .category-card:focus-visible{outline:4px solid var(--sport-entry-colour)}
#shop .category-grid:has(.sport-roster>a[data-sport-entry="basketball"]:is(:hover,:focus-visible)) .category-card[data-sport-entry="basketball"],
#shop .category-grid:has(.sport-roster>a[data-sport-entry="baseball"]:is(:hover,:focus-visible)) .category-card[data-sport-entry="baseball"],
#shop .category-grid:has(.sport-roster>a[data-sport-entry="badminton"]:is(:hover,:focus-visible)) .category-card[data-sport-entry="badminton"],
#shop .category-grid:has(.sport-roster>a[data-sport-entry="volleyball"]:is(:hover,:focus-visible)) .category-card[data-sport-entry="volleyball"],
#shop .category-grid:has(.sport-roster>a[data-sport-entry="football"]:is(:hover,:focus-visible)) .category-card[data-sport-entry="football"]{outline:4px solid var(--sport-entry-colour)}
.catalog-sport-tabs button[data-catalog-sport]:is([aria-pressed="true"],:hover,:focus-visible),
.sport-switcher a[data-specialist-sport]:is([aria-current="page"],:hover,:focus-visible){background:var(--sport-entry-colour);background-image:var(--sport-entry-gradient);color:var(--sport-entry-ink);border-color:var(--sport-entry-colour);box-shadow:inset 0 1px 0 #ffffff55}
.sport-switcher a[data-specialist-sport]:focus-visible{outline:3px solid var(--sport-entry-colour);outline-offset:3px}
.catalog-sport-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:8px}
.catalog-sport-tabs button img{display:block;flex:0 0 24px;width:24px;height:24px;object-fit:contain}
@media(max-width:800px){.catalog-sport-tabs button{gap:4px}.catalog-sport-tabs button img{flex-basis:20px;width:20px;height:20px}}

/* Spheres animate inside their SVGs; the already angled shuttle only glides. */
.catalog-sport-tabs button[data-catalog-sport="badminton"] img,.sport-switcher img[src$="badminton-shuttle.svg"]{animation:catalog-tab-shuttle-glide 3.6s ease-in-out infinite alternate}
@keyframes catalog-tab-shuttle-glide{from{transform:translate(-1px,1px)}to{transform:translate(1px,-1px)}}
@media(prefers-reduced-motion:reduce){.catalog-sport-tabs button[data-catalog-sport="badminton"] img,.sport-switcher img[src$="badminton-shuttle.svg"]{animation:none;transform:none}}
