/* Fixtures Hub web UX enhancement layer — 2026-08-11.2
   Standalone and versioned so deployment never depends on rebuilding the
   existing Vite bundle. It enhances web pages only; no API behaviour. */
.matchday-filter-shell{position:relative;overflow:hidden}
.matchday-filter-shell:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,#34bd6c,#0e773b)}
.quick-link-list a{position:relative;border-radius:.75rem;padding:.625rem .75rem;transition:background-color .18s ease,color .18s ease,transform .18s ease}
.quick-link-list a:hover{background:#eefbf3;color:#0e773b}
.dark .quick-link-list a:hover{background:rgba(5,63,30,.32);color:#7ade9c}
.quick-link-list a:focus-visible,.matchday-filter-shell input:focus-visible,.matchday-filter-shell select:focus-visible,.matchday-filter-shell button:focus-visible,.matchday-filter-shell a:focus-visible{outline:3px solid rgba(22,163,80,.32);outline-offset:2px}
[data-fixture-league]{contain:layout paint}
.fh-card-grid>*{min-width:0}
.app-shot-frame{border-radius:2rem;clip-path:inset(0 round 2rem)}
.site-footer,.seo-content,.matchday-section{content-visibility:auto;contain-intrinsic-size:auto 720px}
.fixture-card{isolation:isolate}
.fixture-card:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,#16a350,transparent);opacity:0;transition:opacity .18s ease;pointer-events:none}
.fixture-card:hover:before{opacity:.75}
@media(max-width:639px){.matchday-filter-shell{border-radius:1rem}.quick-link-list a{padding:.7rem .65rem}.app-shot-frame{border-radius:1.25rem;clip-path:inset(0 round 1.25rem)}}
@media(prefers-reduced-motion:reduce){.quick-link-list a,.fixture-card:before{transition:none!important}}
