
*{box-sizing:border-box}body{--bg:#f3f6f4;--surface:#fff;--ink:#182c29;--muted:#586c67;--line:#d8e3df;--accent:#17664d;--soft:#e7f2eb;--hero:#143d30;--heroink:#fff;margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 system-ui,sans-serif}button,select{font:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer}a{color:var(--accent)}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #4195e6;outline-offset:3px}button{color:inherit}.top{background:var(--surface);border-bottom:1px solid var(--line);padding:18px 32px;display:flex;align-items:center;gap:16px}.brand{font-size:20px;font-weight:800;letter-spacing:-.7px}.brand b{color:var(--accent)}.top small{margin-left:auto;color:var(--muted)}.shell{max-width:1240px;margin:auto;padding:32px;display:grid;gap:26px;grid-template-columns:224px minmax(0,1fr)}.clubhead{grid-column:1/-1;background:var(--hero);color:var(--heroink);padding:32px;border-radius:16px;display:flex;gap:24px;align-items:center}.monogram{border:1px solid #ffffff60;display:grid;place-items:center;width:72px;height:72px;border-radius:18px;font-size:37px;font-weight:800;flex-shrink:0}.eyebrow{font-size:12px;letter-spacing:1.4px;text-transform:uppercase;font-weight:700;margin:0 0 8px}.clubhead h1{font-size:clamp(30px,4vw,48px);letter-spacing:-1.5px;line-height:1.1;margin:0 0 8px}.clubhead p{margin:0}.season{margin-left:auto;border:1px solid #ffffff70;padding:10px 14px;border-radius:8px;white-space:nowrap}.teams h2{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin:0 0 12px}.team{display:block;width:100%;border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:16px;text-align:left;margin-bottom:10px;min-height:78px}.team strong{display:block}.team small{display:block;color:var(--muted);margin-top:4px}.team[aria-pressed=true]{background:var(--soft);border-color:var(--accent);box-shadow:inset 4px 0 var(--accent)}.aside-note{font-size:12px;color:var(--muted);margin-top:18px}.content{min-width:0}.teamtitle{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}.teamtitle h2{font-size:27px;line-height:1.2;margin:0 0 6px;letter-spacing:-.7px}.teamtitle p{margin:0;color:var(--muted);font-size:13px}.context{margin-top:14px;display:flex;border-bottom:1px solid var(--line);gap:22px}.context button{padding:10px 0;background:none;border:0;color:var(--muted);border-bottom:3px solid transparent}.context button[aria-pressed=true]{color:var(--accent);border-color:var(--accent);font-weight:700}.viewlayout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.85fr);gap:20px}.stats{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0}.metric,.panel{border:1px solid var(--line);border-radius:12px;background:var(--surface)}.metric{padding:18px}.metric dt{font-size:12px;color:var(--muted)}.metric dd{font-size:30px;font-weight:750;letter-spacing:-1px;margin:6px 0 4px;line-height:1.1}.metric small{color:var(--muted);font-size:11px}.panel{padding:22px;min-width:0}.panel h3{margin:0 0 16px;font-size:17px}.next{grid-column:1/-1;background:var(--soft);border-color:var(--line);display:flex;gap:24px;align-items:center}.datebox{background:var(--surface);padding:10px 18px;text-align:center;border-radius:8px;flex-shrink:0}.datebox b{display:block;font-size:29px;line-height:1.1}.datebox span{font-size:12px;text-transform:uppercase}.next h3{margin:0 0 7px}.next p{margin:0;font-size:14px}.tag{font-size:11px;display:inline-block;border:1px solid var(--line);padding:3px 8px;border-radius:20px;color:var(--muted)}.next .tag{margin-left:auto;white-space:nowrap}.match{border:0;border-top:1px solid var(--line);background:none;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px 0;width:100%;text-align:left}.match:hover .matchname{text-decoration:underline}.matchname{font-size:13px;display:block}.match small{color:var(--muted);font-size:11px}.score{white-space:nowrap;font-size:20px;font-weight:750}.resultbadge{font-size:10px;font-weight:700;padding:3px 6px;border-radius:4px;display:inline-block;background:var(--soft);color:var(--accent);margin-right:7px}.loss{background:transparent;border:1px solid var(--line);color:var(--muted)}.bar{display:flex;height:13px;border-radius:4px;overflow:hidden;background:var(--line);margin:18px 0 12px}.bar i{background:var(--accent)}.barlabel{display:flex;justify-content:space-between;font-size:13px}.statquote{font-size:38px;font-weight:750;letter-spacing:-1px;line-height:1.1;margin:6px 0}.muted{font-size:12px;color:var(--muted)}.standings{grid-column:1/-1}.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:right;padding:11px 8px;border-bottom:1px solid var(--line);white-space:nowrap}th{color:var(--muted);font-size:11px;font-weight:600}th:nth-child(2),td:nth-child(2){text-align:left;white-space:normal;min-width:150px}tr.selected{background:var(--soft);font-weight:700}.footer{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px;color:var(--muted);font-size:12px;display:flex;justify-content:space-between;gap:16px}.empty{grid-column:1/-1;padding:35px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.empty h3{margin-top:0}.statecontrol{margin:20px 0 0;font-size:12px}.statecontrol select{background:var(--surface);color:var(--ink);border:1px solid var(--line);padding:7px;width:100%;margin-top:6px;border-radius:6px}.helper{font-size:12px;color:var(--muted);margin:0 0 16px}.timeline-note{border:1px solid var(--line);border-radius:8px;background:var(--soft);padding:15px;font-size:13px}dialog{color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:28px;width:540px;max-width:calc(100% - 28px)}dialog::backdrop{background:#07151dc4}dialog h2{font-size:22px;margin:12px 0 20px}dialog .close{float:right;border:1px solid var(--line);border-radius:6px;padding:6px 12px;background:var(--surface)}dialog a{display:inline-block;margin-top:20px}dialog .matchscore{font-size:35px;font-weight:800;text-align:center;margin:16px 0}.detailnames{display:flex;gap:20px;justify-content:space-between;font-size:13px}.detailnames span{max-width:48%}
body[data-direction=analyse]{--bg:#101a24;--surface:#192632;--ink:#eff5f9;--muted:#abc0cf;--line:#354754;--accent:#8fd5ed;--soft:#203b49;--hero:#192632;--heroink:#eff5f9}.analyse .shell{grid-template-columns:180px minmax(0,1fr);gap:20px}.analyse .clubhead{padding:24px;background:none;border:0;border-bottom:1px solid var(--line);border-radius:0}.analyse .clubhead h1{font-size:33px}.analyse .monogram{width:52px;height:52px;font-size:26px;border-radius:8px}.analyse .metric,.analyse .panel,.analyse .team{border-radius:5px}.analyse .metric{padding:16px}.analyse .viewlayout{grid-template-columns:1.1fr 1fr}.analyse .next{grid-column:2;grid-row:2;align-items:flex-start;gap:14px;flex-wrap:wrap}.analyse .next .tag{margin-left:0}.analyse .results{grid-row:2/4;grid-column:1}.analyse .balance{grid-column:2;grid-row:3}.analyse .team{min-height:68px;padding:12px}.analyse .statquote{color:var(--accent)}
body[data-direction=journal]{--bg:#f6f2ea;--surface:#fffcf7;--ink:#382f27;--muted:#766453;--line:#dfd3c2;--accent:#9a4829;--soft:#f2e6d6;--hero:#f6f2ea;--heroink:#382f27}.journal .shell{display:block;padding-top:20px}.journal .clubhead{border-radius:0;background:none;padding:20px 0 32px;border-bottom:3px double var(--line)}.journal .clubhead h1{font-family:Georgia,serif;font-size:64px;font-weight:500;letter-spacing:-3px}.journal .monogram{display:none}.journal .season{border-color:var(--line)}.journal .teams{margin:24px 0}.journal .teams h2,.journal .aside-note{display:none}.journal #teamButtons{display:flex;gap:12px}.journal .team{border-radius:0;margin:0;min-height:70px}.journal .statecontrol{max-width:330px}.journal .viewlayout{grid-template-columns:1.2fr 1fr}.journal .next{grid-column:1;grid-row:1;display:block;background:none;border:0;border-bottom:1px solid var(--line);padding:0 0 22px;border-radius:0}.journal .next h3{font:32px/1.15 Georgia,serif;margin-top:15px}.journal .datebox{display:inline-block;border-radius:0;background:var(--soft)}.journal .next .tag{margin-top:10px}.journal .stats{grid-column:2;grid-row:1;grid-template-columns:repeat(2,1fr)}.journal .metric{border-radius:0;background:none}.journal .metric dd{font-family:Georgia,serif;font-weight:400}.journal .panel{border-radius:0}.journal .results{grid-column:1;grid-row:2}.journal .balance{grid-column:2;grid-row:2}.journal .panel h3{font-family:Georgia,serif;font-size:23px;font-weight:400}.journal .footer{margin-top:26px}
@media(max-width:760px){.top{padding:16px 20px}.top small{font-size:10px;text-align:right}.shell,.analyse .shell{padding:20px;display:block}.clubhead,.analyse .clubhead,.journal .clubhead{padding:22px;gap:14px;flex-wrap:wrap;margin-bottom:22px}.clubhead h1,.analyse .clubhead h1,.journal .clubhead h1{font-size:33px;letter-spacing:-1px}.monogram{width:48px;height:48px;font-size:27px;border-radius:10px}.season{margin-left:0;font-size:12px;padding:6px 10px}.clubhead p{font-size:12px}.teams{margin-bottom:25px}.teams h2{display:none}#teamButtons,.journal #teamButtons{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.team,.analyse .team,.journal .team{margin:0;padding:12px;min-height:70px}.team small{font-size:10px}.aside-note{display:none}.statecontrol{margin-top:12px}.teamtitle{display:block}.teamtitle h2{font-size:25px}.viewlayout,.analyse .viewlayout,.journal .viewlayout{display:flex;flex-direction:column;gap:16px}.stats,.journal .stats{display:grid;grid-template-columns:repeat(2,1fr);order:1;gap:8px}.next,.analyse .next,.journal .next{order:0;display:flex;padding:18px;gap:14px;flex-wrap:wrap;border:1px solid var(--line);border-radius:10px}.journal .next h3{font-size:23px;margin:0 0 10px}.next .tag{margin-left:0}.next h3{font-size:16px}.datebox{padding:9px 12px}.results{order:2}.balance{order:3}.standings{order:4}.metric{padding:15px}.metric dd{font-size:28px}.panel{padding:18px}.footer{display:block;margin-top:24px}.footer a{display:inline-block;margin-top:12px}.journal .teams{margin:20px 0}.journal .clubhead{padding:15px 0 25px}.helper{font-size:11px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Direction retenue : Club au quotidien. Composition graphique, sans dépendance. */
/* Accueil et lecture des rencontres à venir. */
.club.home-page .shell{grid-template-columns:minmax(0,1fr)}
.club.home-page .viewlayout{display:grid;grid-template-columns:minmax(0,1fr);gap:36px}
.club .home-hero{position:relative;overflow:hidden;display:flex;align-items:center;min-height:440px;padding:clamp(28px,3vw,44px);background-color:#101518;background-image:linear-gradient(90deg,rgba(10,15,18,.62) 0%,rgba(10,15,18,.28) 54%,rgba(10,15,18,.04) 100%),url('/assets/site/home-arena-13c416ff24c7.png');background-position:right bottom;background-size:cover;background-repeat:no-repeat;color:#fff;border-radius:12px;isolation:isolate}
.club .home-hero-content{width:100%;max-width:920px;min-width:0}
.club .home-hero .eyebrow{display:flex;align-items:center;gap:14px;margin:0 0 16px;color:#d4dce1;font:600 11px/1.7 "Segoe UI",sans-serif;letter-spacing:.26em;text-transform:uppercase}
.club .home-hero .eyebrow:before{content:"";width:25px;height:2px;flex-shrink:0;background:var(--site-primary)}
.club .home-hero h1{font:750 clamp(40px,4.8vw,72px)/1.08 "Segoe UI",sans-serif;letter-spacing:-.045em;margin:0 0 18px;max-width:100%;overflow-wrap:normal}
.club .home-hero h1 span{color:var(--site-primary-on-dark)}
.club .home-hero-intro{margin:0;color:#bdc8d2;font-size:clamp(14px,1.2vw,18px);line-height:1.45;letter-spacing:.015em}
.club .home-hero-intro>span{display:block}
.club .home-search-action{display:inline-flex;justify-content:space-between;gap:26px;align-items:center;min-height:50px;margin-top:20px;background:var(--site-primary);color:var(--site-primary-ink);border:1px solid transparent;border-radius:8px;padding:12px 20px;text-decoration:none;font:700 15px/1.4 "Segoe UI",sans-serif;box-shadow:0 10px 32px #e26e4424;transition:background .15s,transform .15s}
.club .home-search-action svg{width:22px;height:22px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.club .home-search-action:hover{background:var(--site-primary-hover);transform:translateY(-1px)}
.club .home-search-action:focus-visible{outline:3px solid #fff;outline-offset:5px}
.club .home-hero .home-coverage{display:flex;flex-wrap:wrap;gap:16px 24px;margin:24px 0 0;color:#fff}
.club .home-coverage-item{display:flex;flex-direction:column;min-width:0;gap:4px}
.club .home-coverage-item+div{border-left:1px solid #b8c3cc40;padding-left:24px}
.club .home-coverage-item dt{order:2;margin-left:39px;color:#adb9c4;font-size:12px;line-height:1.5}
.club .home-coverage-item dd{display:flex;align-items:center;gap:14px;margin:0;font:700 20px/1.3 "Segoe UI",sans-serif;white-space:nowrap}
.club .home-coverage-item svg{width:25px;height:25px;fill:none;stroke:#c1cbd2;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:760px){.club .home-hero{min-height:420px;padding:28px 24px;background-position:right bottom}.club .home-hero h1{font-size:clamp(38px,6.4vw,52px);letter-spacing:-.04em}.club .home-hero .eyebrow{font-size:9px;letter-spacing:.18em;gap:12px}.club .home-hero-intro{font-size:15px}}
@media(max-width:560px){.club .home-hero{min-height:0;padding:26px 20px;background-image:linear-gradient(90deg,rgba(10,15,18,.88),rgba(10,15,18,.55)),url('/assets/site/home-arena-13c416ff24c7.png');background-position:right bottom}.club .home-hero h1{font-size:clamp(34px,8.4vw,42px);margin-bottom:16px}.club .home-hero .eyebrow{letter-spacing:.12em;font-size:8px;gap:10px;margin-bottom:14px}.club .home-search-action{width:100%;min-height:48px;gap:14px;margin-top:18px;padding:12px 16px;font-size:14px}.club .home-hero .home-coverage{display:grid;gap:10px;margin-top:20px}.club .home-coverage-item{display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;gap:12px}.club .home-coverage-item+div{border:0;padding:0}.club .home-coverage-item dt{margin:0;grid-column:2;grid-row:1;font-size:12px}.club .home-coverage-item dd{grid-column:1;grid-row:1;gap:12px;font-size:19px}.club .home-coverage-item svg{width:24px;height:24px}}
@media(prefers-reduced-motion:reduce){.club .home-search-action{transition:none}.club .home-search-action:hover{transform:none}}
.club .home-section>header{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:16px}.club .home-section h2{font:600 27px Bahnschrift,"Segoe UI",sans-serif;margin:0}.club .home-section>header>span{font-size:11px;color:var(--muted)}
.club .home-upcoming{padding:0;background:transparent;color:var(--ink)}.club .home-fixture{color:inherit;text-decoration:none;display:grid;grid-template-columns:48px minmax(0,1fr) 20px;gap:22px;align-items:center;padding:18px 0;border-top:1px solid var(--line)}.club .home-fixture time{text-align:center;font-size:10px;text-transform:uppercase;color:var(--muted)}.club .home-fixture time b{display:block;font:600 25px Bahnschrift,sans-serif;color:var(--ink)}.club .home-fixture strong{font-size:13px;font-weight:500;overflow-wrap:anywhere}.club .home-fixture small{font-size:10px;color:var(--muted);display:block;margin-top:4px}.club .home-versus{color:var(--accent);margin:0 4px}.club .home-fixture:hover{color:var(--accent)}
.club .match-preview{margin:30px 0 12px;padding:24px 0;background:none;color:var(--ink);container-type:inline-size;min-width:0}
.club .preview-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.club .preview-heading h3{margin:0;font-size:22px}.club .preview-heading>span{color:var(--muted);font-size:11px}
.club .match-preview>.preview-heading{flex-direction:column;align-items:center;text-align:center;gap:8px}
.club .preview-stats{margin:24px 0}.club .preview-stat-row{display:grid;grid-template-columns:minmax(0,.55fr) minmax(0,.45fr) minmax(0,1fr);align-items:center;padding:14px 0;border-top:1px solid var(--line)}
.club .preview-stat-row dt{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.club .preview-stat-row dd{position:relative;margin:0;min-width:0;padding:4px 12px;display:flex;justify-content:center;align-items:center;font:600 24px Bahnschrift,sans-serif}
.club .preview-stat-row dd:last-child::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);height:18px;width:1px;background:var(--line)}
.club .preview-stat-row .rank-unit{font-size:10px}.club .preview-stat-row .rank-badge{gap:5px}.club .preview-stat-row .podium-icon{width:20px;height:20px}.club .preview-stat-row .preview-form-value{white-space:normal}
.club .preview-form{display:flex;justify-content:center;flex-wrap:wrap;gap:5px;max-width:100%;min-width:0}.club .preview-form .h2h-dot{flex:0 0 auto;width:22px;height:22px}
.club .preview-missing{display:block;font:11px/1.6 "Segoe UI",sans-serif;color:var(--muted)}
.club .preview-scope{color:var(--muted);font-size:10px;margin:16px 0 0}.club .preview-history{margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}.club .preview-h2h-stats{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px 0}.club .preview-h2h-stats>div{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center}.club .preview-h2h-stats span{font-size:10px;color:var(--muted)}.club .preview-h2h-stats strong{font:600 32px Bahnschrift,sans-serif}.club .preview-h2h-stats b{font-weight:600}.club .preview-h2h-stats small{font-size:18px;font-weight:400}
.club .preview-win{color:#277452}.club .preview-loss{color:#a83e3e}
.club .preview-history-share{height:6px;border-radius:4px;background:#c9767a;overflow:hidden;margin-bottom:22px}.club .preview-history-share i{height:100%;display:block;background:#529f78}
.club .preview-fraction{display:inline-flex;align-items:baseline;white-space:nowrap;gap:5px}.club .preview-fraction b{font-weight:600;color:var(--stat-color,var(--ink))}.club .preview-fraction small{font-size:12px;font-weight:400;color:var(--muted)}
.club .preview-history-game{display:grid;grid-template-columns:minmax(105px,1fr) 40px 26px 60px 16px;gap:12px;align-items:center;text-decoration:none;color:var(--ink);padding:12px 8px;border-top:1px solid var(--line);border-radius:3px;font-size:12px}.club .preview-history-game:hover{background:#182c2908}.club .preview-history-game time{color:var(--muted);font-size:11px}.club .preview-history-game b{font:600 15px Consolas,monospace;text-align:center;white-space:nowrap}.club .preview-retry{margin-top:12px;background:transparent;border:1px solid var(--line);color:var(--ink);padding:8px;border-radius:5px;font-size:11px}
@media(max-width:760px){
 .club .home-section>header{flex-direction:column;gap:5px}.club .home-section h2{font-size:24px}.club .home-upcoming{padding:0}.club .home-fixture{gap:12px;grid-template-columns:38px minmax(0,1fr) 14px}.club .home-fixture strong{font-size:12px}
 .club .preview-history .preview-heading{flex-direction:column;gap:5px}.club .preview-h2h-stats{grid-template-columns:1fr 1fr;gap:14px}.club .preview-history-game{grid-template-columns:minmax(0,1fr) 32px 22px 46px 10px;gap:7px;padding:12px 0}.club .preview-history-game time{font-size:10px}.club .preview-history-game .h2h-dot{width:22px;height:22px}.club .preview-history-game b{font-size:12px}


}
.club .home-discovery-card:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
.club .home-discovery-intro{padding:26px 0 32px;max-width:680px}.club .home-discovery-intro h2{font:600 clamp(28px,4vw,42px)/1.15 Bahnschrift,"Segoe UI",sans-serif;letter-spacing:-1px;margin:12px 0}.club .home-discovery-intro>p:last-child{color:var(--muted);font-size:13px;line-height:1.7}
.club .home-discovery-block{margin-bottom:38px}.club .home-discovery-block>header{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:20px}.club .home-discovery-block h3{font:600 23px Bahnschrift,"Segoe UI",sans-serif;margin:8px 0 0}.club .home-discovery-index{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--accent)}.club .home-discovery-block>header>p{max-width:330px;margin:0;color:var(--muted);font-size:11px;line-height:1.7}
.club .home-discovery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.club .home-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.club .home-discovery-card{display:flex;flex-direction:column;padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:7px;text-decoration:none;color:var(--ink);min-width:0;transition:border-color .15s}.club .home-discovery-card:hover{border-color:var(--accent)}.club .home-card-kicker{font-size:10px;color:var(--muted);overflow-wrap:anywhere}.club .home-discovery-card h4{font:600 19px/1.3 Bahnschrift,"Segoe UI",sans-serif;margin:9px 0;overflow-wrap:anywhere}.club .home-discovery-card>p{font-size:11px;line-height:1.6;color:var(--muted);margin:0 0 auto;overflow-wrap:anywhere}
.club .home-form-stat{display:flex;align-items:baseline;gap:10px;margin:22px 0 14px}.club .home-form-stat strong{font:600 38px Bahnschrift,"Segoe UI",sans-serif}.club .home-form-stat small{font-size:20px;color:var(--muted)}.club .home-form-stat>span{font-size:11px;color:var(--muted)}
.club .home-discovery-form{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.club .home-discovery-form>span{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;font-size:10px;font-weight:600}.club .home-discovery-form .won{background:#dcece2;color:#245c43}.club .home-discovery-form .lost{background:#f0dede;color:#963d3d}.club .home-discovery-form small{font-size:9px;color:var(--muted);margin-left:3px}.club .home-card-action{display:flex;justify-content:space-between;gap:8px;margin-top:22px;padding-top:14px;border-top:1px solid var(--line);font-size:11px;color:var(--accent)}.club .home-discovery-note{font-size:11px;line-height:1.8;color:var(--muted);max-width:760px}
@media(max-width:760px){.club .home-discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.club .home-discovery-block>header{align-items:start;flex-direction:column;gap:12px}.club .home-discovery-block>header>p{max-width:none}.club .home-discovery-card{padding:18px}}
@media(max-width:480px){.club .home-discovery-grid{grid-template-columns:minmax(0,1fr)}}


.club .language-picker summary::-webkit-details-marker{display:none}.club .language-picker summary:focus-visible,.club .language-options :is(button,a):focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.club .language-options{position:absolute;right:0;top:calc(100% + 6px);width:170px;padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:5px;box-shadow:0 8px 24px #0002}
.club .language-options :is(button,a){display:flex;align-items:center;gap:10px;width:100%;padding:12px 10px;border:0;background:none;color:var(--ink);text-align:left;cursor:pointer}.club .language-options :is(button,a):hover,.club .language-options :is(button,a)[aria-pressed="true"],.club .language-options a[aria-current="page"]{background:var(--soft)}
.language-flag{display:inline-block;width:22px;height:15px;flex:none;border:1px solid #0002;box-shadow:0 0 0 1px #fff4;background-size:100% 100%}
/* National flag above the diagonal, Belgian flag below; shared by the menu and current language. */
.flag-fr{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 40'%3E%3Cdefs%3E%3CclipPath id='national'%3E%3Cpath d='M0 0h60L0 40z'/%3E%3C/clipPath%3E%3C/defs%3E%3Cpath fill='%23171717' d='M0 0h20v40H0z'/%3E%3Cpath fill='%23fdda24' d='M20 0h20v40H20z'/%3E%3Cpath fill='%23ef3340' d='M40 0h20v40H40z'/%3E%3Cg clip-path='url(%23national)'%3E%3Cpath fill='%23002395' d='M0 0h20v40H0z'/%3E%3Cpath fill='white' d='M20 0h20v40H20z'/%3E%3Cpath fill='%23ed2939' d='M40 0h20v40H40z'/%3E%3C/g%3E%3Cpath fill='none' stroke='white' stroke-width='1.5' d='M60 0L0 40'/%3E%3C/svg%3E")}
.flag-nl{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 40'%3E%3Cdefs%3E%3CclipPath id='national'%3E%3Cpath d='M0 0h60L0 40z'/%3E%3C/clipPath%3E%3C/defs%3E%3Cpath fill='%23171717' d='M0 0h20v40H0z'/%3E%3Cpath fill='%23fdda24' d='M20 0h20v40H20z'/%3E%3Cpath fill='%23ef3340' d='M40 0h20v40H40z'/%3E%3Cg clip-path='url(%23national)'%3E%3Cpath fill='%23ae1c28' d='M0 0h60v13.333H0z'/%3E%3Cpath fill='white' d='M0 13.333h60v13.334H0z'/%3E%3Cpath fill='%2321468b' d='M0 26.667h60V40H0z'/%3E%3C/g%3E%3Cpath fill='none' stroke='white' stroke-width='1.5' d='M60 0L0 40'/%3E%3C/svg%3E")}
.flag-en{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 40'%3E%3Cpath fill='%23012169' d='M0 0h60v40H0z'/%3E%3Cpath stroke='white' stroke-width='8' d='m0 0 60 40m0-40L0 40'/%3E%3Cpath stroke='%23c8102e' stroke-width='3' d='m0 0 60 40m0-40L0 40'/%3E%3Cpath stroke='white' stroke-width='13' d='M30 0v40M0 20h60'/%3E%3Cpath stroke='%23c8102e' stroke-width='7' d='M30 0v40M0 20h60'/%3E%3C/svg%3E")}
[hidden]{display:none!important}
html{overflow-anchor:none}
.hero-art,.display-name,.team-index,.team-record,.club-kicker{display:none}
body.club{
  /* Site identity stays independent of the selected club palette. */
  --site-primary:#ae4325;--site-primary-hover:#91371f;--site-primary-ink:#fff;--site-focus:var(--site-primary);
  --site-primary-soft:#fcf0eb;--site-primary-border:#ecc4b5;--site-primary-on-dark:#f2ad91;
  --bg:#edeeea;--surface:#f6f7f3;--ink:#1a1d20;--muted:#5b6266;
  --line:#ccd0ca;--accent:var(--site-primary);--soft:#e7e9e2;
  --dark:#1a1d20;--dark-raised:#232a2a;--chart-bg:#1a1f24;
  --dark-ink:#f4f6f3;--dark-muted:#b9c4cb;--dark-line:#3b4649;
  --hero:color-mix(in srgb,#171c20 74%,var(--accent));
  --signal:var(--site-primary-on-dark);--heroink:#f6f7ef;--team-selected-bg:var(--hero);
  --gold:#8e6514;--silver:#56636c;--bronze:#945332;
  font-family:"Segoe UI Variable","Segoe UI",system-ui,sans-serif;
  font-feature-settings:"ss01";font-variant-numeric:tabular-nums;
}





/* Grow halfway into the former side margins, including the inner gutters. */
/* Main navigation: shared across pages, independent of club palettes. */
.club .top{display:grid;grid-template-columns:auto auto auto minmax(200px,1fr) auto;align-items:center;gap:22px;width:100%;max-width:none;margin:0 0 24px;padding:20px 26px;border:0;border-bottom:1px solid #e5e6e7;border-radius:0;background:#fff;color:#1a1d20;box-shadow:0 10px 32px #26302b06}
.club .top svg{width:22px;height:22px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.club .top .brand{color:#171c22;font:800 40px/1 Bahnschrift,"Segoe UI",sans-serif;letter-spacing:-2px;text-decoration:none;white-space:nowrap;padding-right:24px;border-right:1px solid #e5e6e7}
.club .top .brand b{color:var(--site-primary)}
.club .top .club-kicker{display:block;max-width:265px;font-size:10px;line-height:1.7;letter-spacing:1.8px;text-transform:uppercase;color:#737a83}
.club .top .competition-search-link{display:flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:12px 18px;border:1px solid transparent;border-radius:12px;background:var(--site-primary);color:var(--site-primary-ink);text-decoration:none;font-size:14px;font-weight:650;line-height:1.3;text-align:center;transition:background .15s}
.club .top .competition-search-link:hover{background:var(--site-primary-hover)}
.club .top .competition-search-link svg{width:25px;height:25px}
.club .top .club-search{position:relative;min-width:0;width:100%;max-width:none;margin:0;z-index:10}
.club .top .search-field{display:flex;align-items:center;min-height:52px;border:1px solid #e0e3e6;border-radius:12px;background:#fff;color:#777f89}
.club .top .search-field:focus-within{border-color:var(--site-focus);box-shadow:0 0 0 2px color-mix(in srgb,var(--site-primary) 16%,transparent)}
.club .top .search-icon{margin-left:16px}
.club .top .search-field input{flex:1;min-width:0;width:100%;border:0;border-radius:12px;background:transparent;color:#1a1d20;font:14px/1.4 "Segoe UI",sans-serif;padding:14px 10px;outline:none}
.club .top .search-field input::placeholder{color:#777f89;opacity:1}
.club .top .search-field button{display:grid;place-items:center;align-self:stretch;min-width:44px;padding:10px;border:0;border-radius:0 12px 12px 0;background:transparent;color:#777f89}
.club .top .search-field button:hover{color:#1a1d20;background:#f5f6f6}
.club .top .search-results{border-color:#e0e3e6;border-radius:12px;background:#fff;color:#1a1d20}
.club .top .language-picker{position:relative;padding-left:22px;border-left:1px solid #e5e6e7;font-size:14px;color:#1a1d20;z-index:50}
.club .top .language-picker summary{display:flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:12px 14px;border:1px solid #e0e3e6;border-radius:12px;background:#fff;cursor:pointer;list-style:none;white-space:nowrap}
.club .top .language-chevron{width:16px;height:16px;color:#737a83}
.club .top .language-options{border-color:#e0e3e6;border-radius:12px;background:#fff}
.club .top :is(a,button,summary):focus-visible{outline:3px solid var(--site-focus);outline-offset:3px}
@media(max-width:1320px){.club .top{grid-template-columns:auto auto minmax(200px,1fr) auto;gap:18px;padding:18px 22px}.club .top .club-kicker{display:none}.club .top .brand{padding-right:20px}.club .top .language-picker{padding-left:18px}}
@media(max-width:980px){.club .top{grid-template-columns:minmax(0,1fr) auto auto;gap:14px}.club .top .brand{justify-self:start;border-right:0;padding-right:0}.club .top .club-search{grid-column:1/-1;grid-row:2}.club .top .language-picker{padding-left:14px}}
@media(max-width:760px){.club .top{margin-bottom:18px;padding:16px 20px;grid-template-columns:minmax(0,1fr) auto;gap:12px}.club .top .brand{font-size:34px}.club .top .language-picker{grid-column:2;grid-row:1;padding-left:0;border-left:0;font-size:12px}.club .top .language-picker summary{min-height:44px;padding:8px 10px;gap:7px}.club .top .competition-search-link{grid-column:1/-1;grid-row:2;min-height:46px;font-size:14px;padding:10px 12px}.club .top .club-search{grid-column:1/-1;grid-row:3}.club .top .search-field{min-height:48px}.club .top .search-field input{font-size:16px;padding:12px 8px}.club .top .search-icon{width:19px;height:19px;margin-left:12px}}
@media(prefers-reduced-motion:reduce){.club .top .competition-search-link{transition:none}}
/* Match the competition ranking's reading width across the site. */
body.club{--site-content-max:clamp(1440px,94vw,2000px);--site-page-gutter:clamp(20px,2.4vw,48px)}
.club .shell{width:100%;max-width:calc(var(--site-content-max) + 2 * var(--site-page-gutter));margin-inline:auto;display:block;padding:0 var(--site-page-gutter) 34px}
.club .clubhead{position:relative;isolation:isolate;overflow:hidden;border-radius:0;padding:28px 32px;min-height:0;display:block}
.club .monogram{display:none}
.club .clubhead>div:not(.hero-art){position:relative;z-index:2}
.club .clubhead .eyebrow{font:11px/1.5 Consolas,monospace;letter-spacing:1.5px;color:#c4cbc5;margin-bottom:18px;max-width:calc(100% - 90px);overflow-wrap:anywhere}
.club .clubhead .eyebrow::before{content:"";display:inline-block;width:24px;height:2px;background:var(--signal);vertical-align:middle;margin-right:12px}
.club .clubname{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}
.club .display-name{display:block;font:620 clamp(56px,8vw,100px)/.95 Bahnschrift,"Arial Narrow",sans-serif;letter-spacing:-4px;color:var(--heroink)}
.club .display-name span{font-size:22px;letter-spacing:-1px;display:inline-block;vertical-align:top;margin:9px 0 0 12px;color:var(--signal)}
.club .clubhead h1{margin:0 0 16px;font-size:inherit;line-height:1}
.club .clubhead>div>p:last-child{font-size:13px;color:#c4cbc5;max-width:420px}
.club .season{position:absolute;right:112px;top:30px;z-index:3;border:0;border-bottom:1px solid #6e7777;padding:0 0 9px;font:11px Consolas,monospace;letter-spacing:1px;color:#e8ede8;border-radius:0}
.club .hero-art{display:block;position:absolute;width:420px;height:278px;right:-8px;top:-38px;z-index:0;opacity:.9;pointer-events:none}
.club .hero-art svg{width:100%;height:100%;overflow:visible}
.club .hero-art .court-lines{stroke:#7d8589;stroke-width:1;fill:none;opacity:.5}
.club .hero-art .flight{stroke:var(--signal);stroke-width:1.3;fill:none;stroke-dasharray:790;stroke-dashoffset:0;animation:trace-path 1.5s ease-out both}
.club .hero-art .ball{fill:var(--signal);stroke:#1a1d20;stroke-width:1.1;transform-origin:375px 141px;animation:ball-arrive 1.2s cubic-bezier(.2,.7,.3,1) both}
.club .teams{position:relative;margin:0 0 34px;padding-top:20px}
.club .teams h2{font:10px Consolas,monospace;letter-spacing:1.6px;margin:0 0 14px}
.club #teamButtons{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:6px;border:0}
.club .team{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-content:center;align-items:center;gap:3px 6px;text-align:left;margin:0;padding:9px 11px;min-height:78px;min-width:0;border:1px solid var(--line);border-radius:0;background:var(--surface);box-shadow:none;transition:background .2s,color .2s}
.club .team+.team{border:1px solid var(--line);padding:9px 11px}
.club .team-index{display:none;font:10px Consolas,monospace;color:var(--muted);position:absolute;left:10px;top:10px}
.club .team strong{grid-column:1/-1;overflow-wrap:anywhere;font:550 14px/1.2 Bahnschrift,"Segoe UI",sans-serif;letter-spacing:-.2px}
.club .team>small{grid-column:1/-1;overflow-wrap:anywhere;font-size:10px;line-height:1.3;margin:0}
.club .team-record{display:block;grid-column:2;grid-row:3;white-space:nowrap;font:10px Consolas,monospace;margin:0;color:var(--ink)}
.club .team-record span{color:var(--muted)}
.club .team-rank{grid-column:1;grid-row:3;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:4px;font:550 16px Bahnschrift,"Segoe UI",sans-serif;margin:0}.club .team-rank .rank-unit{font-size:10px}.club .team-rank .rank-badge{gap:5px}.club .team-rank .podium-icon{width:14px;height:14px;min-width:14px;min-height:14px}.club .team-rank-total{font:10px "Segoe UI",sans-serif;color:var(--muted)}.club .team[aria-pressed=true] .team-rank-total{color:inherit}
.club .team[aria-pressed=true]{background:var(--team-selected-bg);color:var(--selection-text);border:1px solid var(--team-selected-bg);box-shadow:none;transition:none;--gold:color-mix(in srgb,#c99426 65%,var(--selection-text));--silver:color-mix(in srgb,#87949f 65%,var(--selection-text));--bronze:color-mix(in srgb,#bf855c 65%,var(--selection-text))}
.club .team[aria-pressed=true] .team-index,.club .team[aria-pressed=true] small,.club .team[aria-pressed=true] .team-record,.club .team[aria-pressed=true] .team-record span{color:inherit}
.club .team:hover{background:#e3e6dc}.club .team[aria-pressed=true]:hover{background:var(--team-selected-bg)}
.club .aside-note{display:none}
.club .statecontrol{position:absolute;top:17px;right:0;margin:0;font-size:10px;z-index:5;max-width:255px}
.club .statecontrol[open]{background:var(--surface);padding:14px;border:1px solid var(--line);top:0}
.club .teamtitle{margin:0;display:block}
.club .teamtitle>div{display:grid;grid-template-columns:1fr auto;column-gap:20px;align-items:end}
.club .teamtitle .eyebrow{font:10px Consolas,monospace;letter-spacing:1.5px;grid-column:1/-1;margin-bottom:8px}
.club .teamtitle h2{font:540 42px/.95 Bahnschrift,"Arial Narrow",sans-serif;letter-spacing:-1.6px;margin:0;text-transform:uppercase;grid-row:2/4}
.club #competitionName{max-width:320px;font-size:12px;text-align:right;grid-column:2}
.club #phase{font:10px Consolas,monospace;grid-column:2;text-align:right;margin-top:4px}
.club .context{margin-top:22px;border:0;display:inline-flex;flex-wrap:wrap;gap:4px;max-width:100%;box-sizing:border-box;background:#e2e5dd;padding:4px;border-radius:3px}
.club .context button{border:0;border-radius:2px;padding:8px 20px;font-size:11px;font-weight:600;color:var(--muted)}
.club .context button[aria-pressed=true]{background:var(--dark);color:#f6f7ef;border:0}
.club .helper{font:10px/1.6 Consolas,monospace;margin:10px 0 24px;color:var(--muted)}
.club .viewlayout{grid-template-columns:minmax(0,1fr);gap:0;align-items:start}
.club .panel,.club .metric{border:0;border-radius:0;background:none;padding:0}
.club .stats{grid-row:1;grid-column:1/-1;gap:10px;border:0;margin:0 0 26px}
.club .metric{padding:22px;min-width:0;min-height:216px;border:1px solid var(--ink);background:var(--dark);color:var(--heroink);display:grid;grid-template-rows:26px 76px minmax(44px,auto);align-content:center;justify-items:center;align-items:center;text-align:center}
.club .metric+.metric{border:1px solid var(--ink);padding:22px}
.club .metric dt{font:10px Consolas,monospace;letter-spacing:.8px;text-transform:uppercase;color:#c6d0c9}
.club .metric dd{font:540 clamp(32px,4.4vw,58px)/1 Bahnschrift,"Arial Narrow",sans-serif;letter-spacing:-2.3px;margin:0;white-space:nowrap}
.club .metric .metric-unit{font-size:25px;letter-spacing:-1px}
.club .metric-detail{font-size:11px;line-height:1.6;color:#c6d0c9;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.club .metric-detail strong{color:var(--heroink);font-weight:700}
.club .metric-note{display:block;font-size:10px;margin-top:7px}
.club .points-badge{display:inline-block;background:#333d3b;padding:4px 10px;color:var(--heroink)}
.club .metric-record dd{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:0;letter-spacing:-1px;font-size:46px}
.club .record-part{display:flex;flex-direction:column;gap:10px}.club .record-part b{font-weight:550}
.club .record-part>span{font:10px "Segoe UI",sans-serif;letter-spacing:0;color:#c6d0c9}
.club .record-part:first-child b{color:#b9deca}.club .record-part:last-child b{color:#f4b297}
.club .record-part+.record-part{border-left:1px solid #53615a;padding-left:14px}
.club .sets-breakdown{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px}.club .sets-breakdown strong{font-size:15px}
.club .next{position:relative;grid-row:2;grid-column:1/-1;display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:28px;align-items:center;background:var(--dark);color:#f6f7ef;padding:24px 30px;margin:0 0 38px;overflow:hidden}
.club .next::before{content:"";position:absolute;width:160px;height:180px;right:160px;top:-80px;border:1px solid #8c979750;transform:rotate(-35deg);pointer-events:none}
.club .datebox{border-radius:0;background:var(--signal);color:var(--ink);padding:18px 8px;position:relative;text-align:center}
.club .datebox b{font:550 54px/.95 Bahnschrift,sans-serif;letter-spacing:-2px}
.club .datebox span{font:11px Consolas,monospace;letter-spacing:2px;display:block;margin-top:8px}
.club .next .eyebrow{font:10px Consolas,monospace;letter-spacing:1.2px;color:#c4cbc5;margin-bottom:10px}
.club .next h3{font:520 clamp(21px,2.8vw,35px)/1.1 Bahnschrift,sans-serif;letter-spacing:-.8px;max-width:620px}
.club .next p:not(.eyebrow){font-size:11px;color:#c4cbc5;margin-top:9px}
.club .next .venue-caption{line-height:1.6;margin-top:12px;position:relative}
.club .venue-name{display:block;font-size:10px;color:#bac5be}
.club .venue-address{display:inline-block;color:#f6ccb9;text-underline-offset:3px;font-size:12px;overflow-wrap:anywhere}
.club .venue-address:hover{color:#fff}.club .venue-missing{font-size:11px;color:#c4cbc5}
.club .next .tag{border:1px solid #697777;color:#f6f7ef;border-radius:0;padding:11px 15px;font-size:10px;text-decoration:none;position:relative;transition:background .2s,color .2s}
.club .next .tag:hover{background:var(--signal);color:var(--ink);border-color:var(--signal)}
.club .results{grid-row:3;grid-column:1;--line:#46504d;background:var(--dark-raised);border:1px solid var(--dark-raised);padding:24px;color:#f6f7ef;align-self:start;margin-bottom:24px}
.club [data-page=dashboard] .results{background:none;border-color:transparent;color:var(--ink)}
.club [data-page=dashboard] .results>h3::before{color:var(--accent)}
.club .panel h3{font:520 23px/1.2 Bahnschrift,sans-serif;letter-spacing:-.7px;margin-bottom:8px}
.club .standings>h3::before{content:"01 / ";font:10px Consolas,monospace;color:var(--signal);vertical-align:middle;margin-right:7px}
.club .standings>h3::before{content:"02 / ";color:var(--accent)}
.club .muted{font-size:11px;line-height:1.7}
.club .results .muted{color:#c1cdc5}.club .score-legend{font-size:10px;color:#c1cdc5;margin:8px 0 18px}
.club .match{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:17px 0;gap:12px;transition:background .2s;border-top:1px solid var(--line);color:#f6f7ef}
.club .match:hover{padding:17px 0;background:#313b38}
.club .match-info{min-width:0}.club .matchname{font-size:13px;font-weight:550;overflow-wrap:anywhere}
.club .match .match-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font:10px Consolas,monospace;margin-top:9px;color:#c1cdc5}
.club .venue-side{display:inline-block;padding:4px 6px;border-radius:2px;font:9px "Segoe UI",sans-serif;letter-spacing:.2px;font-weight:600}
.club .venue-side.home{background:#d6e7b7;color:#273f24}.club .venue-side.away{background:#c6d9ee;color:#263d58}
.club .score{font:400 30px/1 Bahnschrift,sans-serif;letter-spacing:-1px;display:grid;grid-template-columns:24px 36px 8px 36px 14px;align-items:center;gap:7px;text-align:center}
.club .score-own,.club .score-opponent{font-size:20px;font-weight:400}
.club .score-own{color:#f5b295}.club .score-opponent{color:#f6f7ef}.club .score-winner{font-size:30px;font-weight:750}
.club .score-separator{font-size:17px;color:#aabbb0}.club .result-arrow{font-size:14px;color:#c1cdc5}
.club .resultbadge{font:10px Consolas,monospace;background:#d6e7b7;color:#273f24;border:0;border-radius:0;padding:6px 0;margin:0;letter-spacing:0;text-align:center}
.club .loss{background:#4a5450;color:#ecf2eb;border:1px solid #7c8f84;padding:5px 0}
.club .standings{grid-row:4;grid-column:1;border:1px solid var(--line);background:var(--surface);margin:0;padding:24px;align-self:start}
.club .tablewrap{margin-top:18px}
.club th{font:10px Consolas,monospace;text-transform:uppercase;padding:13px 12px}
.club td{font-size:12px;padding:14px 12px}
.club tr.selected{background:#dfe5d7;border-left:3px solid var(--ink)}
.club .footer{font:10px/1.8 Consolas,monospace;margin-top:32px;padding-top:20px}
.club dialog{border-radius:3px;box-shadow:0 20px 100px #0004}
.club dialog .close{border-radius:0;font-size:11px}
.club dialog .matchscore{font:550 64px Bahnschrift,sans-serif;letter-spacing:-3px}
.club .timeline-note{border-radius:0;font-size:12px;padding:18px}
.club .empty{border-radius:0;background:var(--surface);border:1px solid var(--line)}
.club .viewlayout[data-motion=on]{animation:content-arrive .32s ease-out both}
@keyframes trace-path{from{stroke-dashoffset:790}to{stroke-dashoffset:0}}
@keyframes ball-arrive{from{transform:translate(-40px,20px) rotate(-20deg)}to{transform:translate(0,0) rotate(0)}}
@keyframes content-arrive{from{transform:translateY(7px)}to{transform:translateY(0)}}
@media(max-width:1000px) and (min-width:761px){
  .club .shell{padding:0 26px 30px}.club .hero-art{right:-85px;opacity:.65}
  .club .viewlayout{gap:0 20px}.club .metric,.club .metric+.metric{padding:18px}.club .metric-record dd{font-size:42px}
}
@media(max-width:760px){
  
  .club .shell{padding:0 20px 25px}.club .clubhead{padding:22px 20px;min-height:0;margin-bottom:0}
  .club .clubhead .eyebrow{font-size:9px;margin:0 0 25px;letter-spacing:.8px}
  .club .display-name{font-size:clamp(64px,18.2vw,110px);letter-spacing:-4px}.club .display-name span{font-size:12px;margin:5px 0 0 6px}
  .club .clubhead h1{margin-bottom:14px}.club .clubhead>div>p:last-child{font-size:11px;max-width:220px;line-height:1.6}
  .club .hero-art{width:310px;height:210px;right:-100px;top:-4px;opacity:.45}
  .club .season{display:none}
  .club .teams{padding-top:20px;margin:0 0 28px}.club .teams h2{display:block;font-size:9px;margin-bottom:10px}
  .club #teamButtons{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .club .team,.club .team+.team{min-height:78px;padding:8px;border:1px solid var(--line)}
  .club .team[aria-pressed=true]{border-color:var(--team-selected-bg)}.club .team strong{font-size:14px;white-space:normal}.club .team small{font-size:10px}.club .team-index{font-size:9px}
  .club .team-record{margin:0;font-size:9px}.club .statecontrol{position:static;font-size:10px;margin-top:16px;max-width:none}
  .club .statecontrol[open]{padding:12px}.club .teamtitle>div{display:block}.club .teamtitle h2{font-size:35px;margin:10px 0 12px}
  .club #competitionName,.club #phase{text-align:left;max-width:none}.club .teamtitle .eyebrow{font-size:9px}
  .club .context{margin-top:18px}.club .context button{padding:7px 19px}.club .helper{font-size:9px;margin-bottom:18px}
  .club .viewlayout{display:flex;flex-direction:column;gap:0}.club .stats{order:0;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:24px;width:100%}
  .club .metric,.club .metric+.metric{padding:16px 12px;border:1px solid var(--ink);min-height:198px;grid-template-rows:26px 70px minmax(50px,auto)}
  .club .metric dd{font-size:42px;letter-spacing:-1.7px;margin:0}.club .metric-record dd{font-size:35px;padding:0;gap:9px}.club .record-part+.record-part{padding-left:9px}
  .club .metric dt{font-size:9px}.club .metric-detail{font-size:10px}.club .metric-note{font-size:9px}.club .metric .metric-unit{font-size:20px}.club .record-part>span{font-size:9px}.club .sets-breakdown{gap:5px}
  .club .next{order:1;display:grid;grid-template-columns:64px minmax(0,1fr);gap:18px;padding:20px;margin-bottom:32px;border:0;border-radius:0;width:100%}
  .club .datebox{padding:13px 3px;align-self:start}.club .datebox b{font-size:39px}.club .datebox span{font-size:9px;letter-spacing:1px}
  .club .next h3{font-size:23px;overflow-wrap:break-word}.club .next .eyebrow{font-size:8px;letter-spacing:.6px;margin-bottom:9px}.club .next p:not(.eyebrow){font-size:10px}
  .club .next .venue-caption{grid-column:1/-1}.club .next .venue-address{font-size:11px;line-height:1.7}
  .club .next .tag{grid-column:2;margin:0;justify-self:start;font-size:9px;padding:8px 10px}.club .next::before{right:-140px;top:-90px;width:240px;height:240px}
  .club .results{order:2;margin-bottom:24px;width:100%;padding:20px 16px}.club .panel h3{font-size:23px}.club .match,.club .match:hover{padding:16px 0;gap:9px}.club .matchname{font-size:12px}.club .match .match-meta{font-size:9px}.club .score{font-size:25px;grid-template-columns:22px 28px 7px 28px 12px;gap:5px}.club .score-own,.club .score-opponent{font-size:18px}.club .score-winner{font-size:25px}.club .resultbadge{font-size:9px;margin:0}
  .club .standings{order:3;padding:20px 16px;margin:0;width:100%}.club th,.club td{padding:12px 9px}.club .footer{font-size:9px}.club dialog{padding:22px}
}
@media(prefers-reduced-motion:reduce){
  .club *, .club *::before, .club *::after{animation:none!important;transition:none!important}
}

/* Parcours club, équipe et match : mêmes règles visuelles que la direction retenue. */
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}






.club .search-results{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--surface);border:1px solid var(--line);box-shadow:0 16px 40px #1a1d201a;max-height:430px;overflow-y:auto}
.club .search-results ul{list-style:none;margin:0;padding:0}
.club .search-status,.club .search-no-result{font-size:11px;color:var(--muted);padding:12px 14px;margin:0}
.club .search-results a{display:block;padding:12px 14px;border-top:1px solid var(--line);color:var(--ink);text-decoration:none}
.club .search-results a:hover,.club .search-results a:focus-visible{background:var(--soft)}
.club .search-results strong{font-size:13px;display:block}.club .search-results small{font-size:10px;display:block;margin:4px 0 0;color:var(--muted);max-width:none;text-align:left}
.club .breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 0;font:11px Consolas,monospace}
.club .breadcrumbs a{text-underline-offset:4px}.club .breadcrumbs [aria-current=page]{color:var(--ink);text-decoration:none;font-weight:700}
.club .team-tabs{display:flex;gap:6px;margin:18px 0 0;flex-wrap:wrap}
.club .team-tabs a,.club .calendar-filters a{font-size:12px;color:var(--muted);text-decoration:none;padding:9px 16px;border:1px solid var(--line)}
.club .calendar-filters [aria-current=page]{background:var(--dark);color:var(--heroink);border-color:var(--ink)}
.club .team-tabs a{background:none;border:0;border-bottom:3px solid transparent;padding:10px 16px}
.club .team-tabs a[aria-current=page]{background:none;color:var(--ink);border-bottom-color:var(--accent);font-weight:650}
.club .viewlayout>*{grid-row:auto;grid-column:1/-1;order:0}
.club .rank-unit{font-size:15px;letter-spacing:0}
.club .metric{--gold:#eacb75;--silver:#cbd6df;--bronze:#e0a47c}
.club .rank-number{white-space:nowrap}.club .rank-badge{display:inline-flex;align-items:center;gap:9px;white-space:nowrap}
.club .podium-1{color:var(--gold)}.club .podium-2{color:var(--silver)}.club .podium-3{color:var(--bronze)}
.club .podium-icon{width:.65em;height:.65em;min-width:18px;min-height:18px;flex-shrink:0}
.club .rank-badge .rank-unit{font-size:.32em;vertical-align:super;line-height:0}
.club .standings .rank-badge{gap:6px;font-weight:750}.club .standings .podium-icon{width:19px;height:19px}.club .standings .rank-unit{font-size:9px}
.club .metric-competitions dd,.club .metric-games dd,.club .metric-next dd,.club .metric-teams dd{color:var(--heroink)}
.club .club-agenda,.club .performance,.club .calendar{margin-bottom:26px;width:100%}
.club .club-agenda .next{margin:0}.club .agenda-list{display:grid;gap:12px;margin-top:20px}
.club .club-agenda .next h3{font-size:25px}.club .club-agenda .datebox b{font-size:42px}
.club .club-agenda .next{grid-template-columns:84px minmax(0,1fr) auto;padding:20px 24px;gap:22px}
.club .row-team{display:block;font:10px Consolas,monospace;color:#f6ccb9;margin-bottom:6px}
.club a.match{text-decoration:none}.club .score-club{color:#f5b295}
.club .calendar-filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:18px}
.club .calendar{background:var(--surface);border:1px solid var(--line);padding:24px}
.club .calendar-row{display:grid;grid-template-columns:84px minmax(0,1fr) 64px;gap:20px;align-items:center;padding:18px 0;border-top:1px solid var(--line);color:var(--ink);text-decoration:none}
.club .calendar-row:hover{background:var(--soft)}.club .calendar-row time{font:11px Consolas,monospace}.club .calendar-row strong{font-size:14px}
.club .calendar-row small{display:block;color:var(--muted);font-size:11px;margin-top:7px}.club .calendar-score{font:540 24px Bahnschrift,sans-serif;text-align:right;white-space:nowrap}
.club .performance{padding:24px;background:var(--surface);border:1px solid var(--line)}
.club .season-performance{width:100%;min-width:0;padding:24px;background:var(--surface);border:1px solid var(--line);margin:22px 0}
.club .performance-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}
.club .performance-grid>div{border:1px solid var(--line);padding:24px;text-align:center;min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center}.club .performance-grid strong{display:block;font:540 44px Bahnschrift,sans-serif;margin:14px 0}
.club .performance-grid p{font-size:12px}.club .performance-grid small{display:block;font-size:11px;color:var(--muted)}
.club .match-page{padding:28px;background:var(--surface);border:1px solid var(--line);width:100%}
.club .match-page-heading{display:flex;gap:12px 24px;align-items:center;justify-content:space-between;flex-wrap:wrap}.club .match-page-heading>a{font-size:12px}
.club .match-status{display:flex;align-items:center;gap:12px 24px;flex:1;min-width:0}.club .match-status>.eyebrow{margin:0;flex:1;min-width:0}.club .match-status .h2h{margin:0;flex-shrink:0}
.club .match-duel{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);gap:18px;text-align:center;align-items:center;margin:30px 0}
.club .match-duel h3{font-size:23px;min-height:60px;margin:14px 0}.club .duel-score{display:block;font:400 40px/1 Bahnschrift,sans-serif;color:var(--ink)}
.club .duel-score.score-winner{font-size:64px;font-weight:750}.club .duel-score.score-club{color:var(--accent)}.club .duel-separator{color:var(--muted)}
.club .match-page .venue-name{color:var(--muted)}.club .match-page .venue-address{color:var(--accent)}
.club .match-page .venue-missing,.club .data-note{color:var(--muted);font-size:12px}.club .match-page .timeline-note{margin-top:24px}
.club .point-timeline{margin-top:32px;padding-top:28px;border-top:1px solid var(--line)}
.club .chart-shell{border-radius:12px;margin-top:18px}
.club .set-tabs{display:flex;justify-content:center;gap:4px;margin:0;padding:12px 8px 2px;background:var(--chart-bg);border-radius:12px 12px 0 0}.club .set-tabs button{min-width:0;min-height:40px;background:transparent;color:#b1beca;border:1px solid transparent;border-radius:6px;padding:5px 12px;font:600 11px/1.1 "Segoe UI",sans-serif;cursor:pointer;transition:background .15s,border-color .15s}
.club .set-tabs button:hover{background:#ffffff0a}.club .set-tabs button span{display:block;font:10px/1.1 Consolas,monospace;margin-top:3px;white-space:nowrap}.club .set-tabs button[aria-pressed="true"]{background:#ffffff0d;color:var(--signal);border-color:#ffffff25}
.club .chart-shell .timeline-legend{padding:12px 20px 0;background:var(--chart-bg)}.club .chart-shell .timeline-legend .club-line{color:var(--signal)}.club .chart-shell .timeline-legend .opponent-line{color:#b1beca}
.club .chart-shell .score-chart{margin:0;border-radius:0 0 12px 12px}.club .chart-shell .point-list{background:var(--surface);padding-top:8px}.club .chart-shell .timeline-note{background:var(--chart-bg);color:#cbd5dc;padding:22px;margin:0;border-radius:0 0 12px 12px}
.club .timeline-legend{display:flex;flex-wrap:wrap;gap:12px 24px;font-size:12px}.club .timeline-legend span:before{content:"";display:inline-block;width:16px;border-top:3px solid currentColor;margin-right:8px;vertical-align:middle}
.club .home-line{color:#246951;stroke:#246951}.club .away-line{color:#335d98;stroke:#335d98}.club .timeline-legend .away-line:before{border-top-style:dashed}
.club .score-chart{display:block;width:100%;height:auto;margin-top:12px;background:var(--soft);border-radius:8px}.club .score-chart polyline{fill:none;stroke-width:2.5;vector-effect:non-scaling-stroke}.club .score-chart .away-line{stroke-dasharray:6 3}
.club .chart-axis line{stroke:var(--line)}.club .chart-axis text{fill:var(--muted);font:12px "Segoe UI",sans-serif}.club .timeline-summary{font-size:13px;margin:16px 0 22px}
.club .point-list summary{cursor:pointer;font-size:13px;font-weight:600;padding:12px 0}.club .point-table{max-height:360px;margin-top:12px}
.club .point-table th:first-child{min-width:50px}.club .point-table th:nth-child(2),.club .point-table td:nth-child(2){white-space:normal;text-align:left;min-width:150px}.club .point-table td:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}
.club .point-table .score-club{color:var(--accent)}
.club .match-page th:first-child{text-align:left;white-space:normal;min-width:150px}.club .match-page th:nth-child(2),.club .match-page td:nth-child(2){min-width:0;text-align:right;white-space:nowrap}
.club .set-side{display:block;font:10px "Segoe UI",sans-serif;margin-top:5px}.club table caption{text-align:left;font-size:11px;color:var(--muted);padding-bottom:12px}
.club .action-button{display:inline-block;padding:10px 16px;background:var(--dark);color:var(--heroink);border:0;text-decoration:none;font-size:12px;margin-top:14px}
.club .empty{width:100%;padding:28px}.club .empty p{max-width:720px;font-size:13px}
.club .review-state-label,.club .freshness-alert{font-size:12px;background:#f4c2ad;color:#682c19;padding:14px 18px;margin:0 0 20px}
.club .loading-blocks{display:flex;gap:10px;margin-top:24px}.club .loading-blocks i{height:80px;flex:1;background:var(--soft)}
.club .other-club .display-name{font-size:clamp(38px,5vw,72px);line-height:1.1;letter-spacing:-2px;max-width:100%;overflow-wrap:anywhere}
/* Saisons, identité et effectifs : extensions de la direction retenue. */
.club #clubLogo{position:absolute;right:26px;top:22px;z-index:3;width:64px;height:64px;display:grid;place-items:center;filter:drop-shadow(0 8px 16px #0006)}
.club #clubLogo img{width:100%;height:100%;object-fit:contain}.club .logo-initials{font:600 35px Bahnschrift,sans-serif;border:1px solid #6a7777;padding:18px;color:var(--heroink)}
.club .hero-art{opacity:.3}.club .clubhead h1{max-width:100%}
.club .clubhead:has(.season-picker:not([hidden])){padding-bottom:88px}
.club .season-picker{position:absolute;right:32px;bottom:24px;z-index:3;display:flex;align-items:center;gap:8px;margin:0;text-align:left;font:10px Consolas,monospace;color:var(--heroink);text-transform:uppercase;letter-spacing:1px}
.club .season-picker select{min-width:160px;padding:10px 30px 10px 12px;background:var(--dark);color:var(--heroink);border:1px solid #87938c;border-radius:6px;font:600 14px "Segoe UI",sans-serif;cursor:pointer}
.club .clubhead .season-picker select:focus-visible{outline-color:var(--heroink)}
.club #teamNavigation{margin-bottom:24px}.club .teamtitle{margin-bottom:18px}
.club .result-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:12px;row-gap:8px;padding:17px 0;border-top:1px solid var(--line);transition:box-shadow .2s}
.club .result-entry:hover,.club .result-entry:focus-within{box-shadow:inset 0 0 0 1000px #ffffff08}
.club .result-entry .match,.club .result-entry .match:hover{grid-column:1/-1;grid-row:1/3;display:grid;grid-template-columns:subgrid;grid-template-rows:subgrid;padding:0;gap:inherit;border:0;background:none}
.club .result-entry .match-info{grid-column:1;grid-row:1}.club .result-entry .score{grid-column:2;grid-row:1/3;align-self:center}
.club .result-entry>.h2h,.club .result-entry>.h2h-empty{grid-column:1;grid-row:2;position:relative;z-index:1;margin:0;align-self:start;pointer-events:none}
.club .club-result{padding:17px 14px;margin:8px 0;border:0;border-radius:4px}
.club .tone-0{background:hsl(202 74% 46% / .11)}.club .tone-1{background:hsl(350 65% 54% / .11)}.club .tone-2{background:hsl(153 58% 40% / .11)}.club .tone-3{background:hsl(38 85% 45% / .12)}
.club .club-result .match,.club .club-result .score-opponent{color:var(--ink)}
.club .results .club-result .score-own,.club .results .club-result .score-club,.club .club-result .row-team{color:var(--accent)}
.club .club-result .match .match-meta,.club .results .club-result .h2h-label,.club .results .club-result .h2h-empty,.club .club-result .result-arrow,.club .club-result .score-separator{color:var(--muted)}
.club .club-result:hover,.club .club-result:focus-within{box-shadow:inset 0 0 0 1000px #182c2908}
.club .results .score-own,.club .results .score-club,.club .row-team,.club .next .venue-address{color:var(--signal)}
.club .match-page .point-table th:first-child{min-width:50px}
.club .h2h{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:2px 0 0;font-size:10px}.club .h2h-dots{display:flex;gap:5px;flex-wrap:wrap;max-width:100%}.club .h2h-label{color:var(--muted)}
.club .h2h-dot{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;text-decoration:none;font:700 10px "Segoe UI",sans-serif;transition:transform .15s;pointer-events:auto}.club .h2h-dot:hover{transform:translateY(-2px)}
.club .h2h-dot.won{background:#277452;color:#fff}.club .h2h-dot.lost{background:#a83e3e;color:#fff}.club .h2h-empty{display:block;font-size:10px;color:var(--muted);margin:4px 0 0}
.club .results .h2h-label,.club .results .h2h-empty,.club .next .h2h-label,.club .next .h2h-empty{color:#c1cdc5}.club .next .h2h{margin-top:14px}
.club .calendar-entry{display:grid;grid-template-columns:84px minmax(0,1fr) 64px;grid-template-rows:auto auto;column-gap:20px;row-gap:8px;padding:18px 0;border-top:1px solid var(--line);transition:background .2s}.club .calendar-entry:hover,.club .calendar-entry:focus-within{background:var(--soft)}
.club .calendar-entry .calendar-row,.club .calendar-entry .calendar-row:hover{grid-column:1/-1;grid-row:1/3;display:grid;grid-template-columns:subgrid;grid-template-rows:subgrid;gap:inherit;border:0;padding:0;background:none}
.club .calendar-entry time{grid-column:1;grid-row:1/3;align-self:center}.club .calendar-row>span:not(.calendar-score){grid-column:2;grid-row:1}.club .calendar-entry .calendar-score{grid-column:3;grid-row:1/3;align-self:center}
.club .calendar-entry>.h2h,.club .calendar-entry>.h2h-empty{grid-column:2;grid-row:2;position:relative;z-index:1;margin:0;align-self:start;pointer-events:none}
.club .set-scoreboard{background:var(--dark);color:var(--dark-ink);padding:10px 16px;margin:18px 0 24px;--line:var(--dark-line);--muted:var(--dark-muted);border-radius:6px}
.club .set-scoreboard caption{color:#b9c4cb;font-size:10px;padding:0 0 6px}.club .set-scoreboard th,.club .set-scoreboard td{padding:6px 8px;font-size:13px}.club .set-scoreboard thead th{color:#b9c4cb;font-size:10px}
.club .set-scoreboard tbody th{color:var(--heroink);text-transform:none;font:500 12px "Segoe UI",sans-serif;min-width:145px}.club .set-scoreboard tbody tr:last-child>*{border:0}.club .set-scoreboard .set-side{font-size:9px;color:#b9c4cb;margin-top:2px}.club .set-scoreboard .set-winner{font-weight:750;color:var(--signal)}
.club .score-chart{background:var(--chart-bg);border-radius:12px;margin-bottom:8px}.club .score-chart .chart-axis line{stroke:#667684;stroke-opacity:.25}.club .score-chart .chart-axis text{fill:#aebac4;font-size:11px}
.club .club-line{color:var(--accent)}.club .opponent-line{color:#637589}.club .score-chart .club-line{stroke:var(--signal);stroke-width:3;stroke-dasharray:none;filter:drop-shadow(0 0 3px #ffffff16)}
.club .score-chart .opponent-line{stroke:#b1beca;stroke-width:2;stroke-dasharray:6 5}.club .timeline-legend .opponent-line:before{border-top-style:dashed}
.club .chart-end{fill:var(--signal);stroke:#1a1f24;stroke-width:2}.club .chart-point{fill:transparent;stroke:none}.club .chart-point:hover{fill:var(--signal);stroke:#fff;stroke-width:1;cursor:crosshair}
.club .timeline-legend .journal-adjustment{color:#d2a9ff}.club .timeline-legend .journal-adjustment:before{border-top-style:dotted}
.club .score-chart .journal-adjustment{stroke:#d2a9ff;stroke-width:3;stroke-dasharray:3 4}.club .score-chart .journal-adjustment.adjustment-other{stroke-dasharray:8 4}
.club .score-chart .adjustment-point{fill:#d2a9ff;stroke:var(--chart-bg);stroke-width:2}
.club .score-figure{margin:0;background:var(--chart-bg);border-radius:0 0 12px 12px;overflow:hidden}.club .chart-shell .score-figure .score-chart{border-radius:0;margin-bottom:0}
.club .chart-shell .chart-reconciliation{padding:0 20px 16px;background:var(--chart-bg);color:#aebac4;font-size:12px;line-height:1.6}.club .chart-reconciliation em{font-style:italic}
.club .score-chart .chart-time-axis line{stroke:#aebac4;stroke-opacity:.18;stroke-width:.6;stroke-dasharray:2 6;vector-effect:non-scaling-stroke}.club .score-chart .chart-time-axis text,.club .score-chart .chart-clock-label{fill:#aebac4;font-size:10px}.club .score-chart .chart-clock-label{fill:#8393a0;font-size:9px}
.club .point-table .adjustment-row{color:#714296;background:#a675d611}.club .engagement-empty p{max-width:75ch;line-height:1.65}
.club .match-meta-panel,.club .lineup-panel{margin-top:30px;padding-top:26px;border-top:1px solid var(--line)}
.club .players-panel{border:1px solid var(--line);background:var(--surface);padding:24px;margin:24px 0}.club .players-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:20px}
.club .players-panel>summary{display:flex;align-items:center;gap:12px;cursor:pointer;list-style:none;min-height:32px}.club .players-panel>summary::-webkit-details-marker{display:none}
.club .players-panel>summary h3{margin:0;flex:1;min-width:0}.club .players-count{font-size:11px;color:var(--muted);white-space:nowrap}.club .players-toggle{width:20px;height:20px;flex-shrink:0;transition:transform .2s}.club .players-panel[open] .players-toggle{transform:rotate(180deg)}
.club .player-card{display:flex;gap:12px;align-items:center;color:var(--ink);text-decoration:none;padding:12px;background:var(--soft);border-radius:5px;min-width:0}.club .player-card:hover{outline:1px solid var(--accent)}
.club .player-card strong{font-size:12px;display:block;overflow-wrap:anywhere}.club .player-card small{display:block;font-size:10px;color:var(--muted);margin-top:5px}
.club .player-portrait{position:relative;flex:none;width:48px;height:58px;background:#dfe3dd;border-radius:5px;overflow:hidden;display:grid;place-items:center}.club .portrait-initials{font:600 16px Bahnschrift,sans-serif;color:#56616a}
.club .player-portrait img{position:absolute;inset:0;z-index:1;width:100%;height:100%;object-fit:cover;object-position:center 25%}
.club .lineup-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.club .lineup-grid h4{font:550 19px Bahnschrift,sans-serif;margin:18px 0 14px}.club .lineup-player{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}.club a.lineup-player:hover{background:var(--soft)}
.club .lineup-player>span:nth-child(2){flex:1;min-width:0}.club .lineup-player strong{font-size:12px;display:block;overflow-wrap:anywhere}.club .lineup-player small{font-size:10px;color:var(--muted);display:block;margin-top:4px}
.club .player-page{background:var(--surface);border:1px solid var(--line);padding:28px}.club .player-heading{display:flex;align-items:center;gap:22px}.club .player-heading .player-portrait{width:100px;height:120px}.club .player-heading h3{font-size:30px}.club .player-heading p{font-size:12px}
.club .player-years{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0}.club .player-years a{padding:10px 18px;background:var(--soft);color:var(--ink);text-decoration:none;border-bottom:3px solid transparent;font-size:13px}.club .player-years small{display:block;font-size:10px;margin-top:4px}.club .player-years [aria-current=page]{border-color:var(--accent)}
.club .player-game{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:15px;color:var(--ink);text-decoration:none;padding:15px 0;border-top:1px solid var(--line);font-size:12px}.club .player-game small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.club .player-game:hover{background:var(--soft)}
.club .score,.club .calendar-score,.club .player-game>b,.club .duel-score,.club .set-scoreboard td{white-space:nowrap;font-variant-numeric:tabular-nums}
.club .standings td:nth-child(6),.club .point-table td:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}
.club td.standing-won{color:#216b3c;font-weight:650}
.club td.standing-lost{color:#ad3030;font-weight:650}
.club td.standing-point-difference{white-space:nowrap;font-variant-numeric:tabular-nums}
.club .club-result[style]{background:var(--row-fill)}
@media(max-width:760px){
 .club #clubLogo{right:18px;top:18px;width:42px;height:42px}.club .clubhead h1{max-width:100%}.club .display-name{font-size:clamp(39px,9vw,65px)!important;letter-spacing:-2px!important}.club .display-name span{font-size:12px;margin-left:4px}
 .club .clubhead:has(.season-picker:not([hidden])){padding-bottom:80px}.club .season-picker{right:20px;bottom:20px;gap:6px;letter-spacing:0}.club .season-picker select{min-width:0;width:112px;font-size:12px;padding:8px 3px}.club .teamtitle h2{font-size:29px;grid-row:2;letter-spacing:-1px}.club .teamtitle>div{column-gap:10px}
 .club .result-entry{column-gap:9px;padding:16px 0}.club .club-result{padding:16px 10px}.club .players-grid{grid-template-columns:1fr 1fr;gap:8px}.club .player-card{flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:12px;gap:8px;min-height:138px}.club .players-panel{padding:18px 14px}
 .club .lineup-grid{grid-template-columns:1fr;gap:12px}.club .player-heading{gap:14px}.club .player-heading .player-portrait{width:72px;height:88px}.club .player-heading h3{font-size:23px}.club .player-page{padding:20px 14px}
 .club .player-game{grid-template-columns:42px minmax(0,1fr) 50px;gap:8px;font-size:11px}.club .player-years a{padding:9px 12px;font-size:11px}
 .club .calendar-entry{grid-template-columns:45px minmax(0,1fr) 44px;column-gap:10px}.club .set-scoreboard{padding:8px;margin-top:12px}.club .set-scoreboard th,.club .set-scoreboard td{padding:5px 7px}
 
 
 .club .search-results{max-height:340px}.club .breadcrumbs{font-size:10px;gap:8px;margin-top:18px}
 .club .team-tabs{gap:5px}.club .team-tabs a{font-size:11px;padding:9px 11px}
 .club .set-tabs{gap:3px;padding:10px 6px 0}.club .set-tabs button{padding:5px 4px}.club .timeline-legend{font-size:11px;gap:9px}.club .chart-shell .timeline-legend{padding:10px 12px 0}
 .club .club-agenda .next{grid-template-columns:52px minmax(0,1fr);gap:14px;padding:18px 14px}.club .club-agenda .next h3{font-size:20px}.club .club-agenda .datebox b{font-size:36px}
 .club .club-agenda .next .tag{grid-column:2}.club .calendar,.club .performance,.club .match-page{padding:20px 16px}
 .club .calendar-filters a{font-size:10px;padding:9px 10px}.club .calendar-row{grid-template-columns:45px minmax(0,1fr) 35px;gap:10px}.club .calendar-row strong{font-size:12px}.club .calendar-row time{font-size:9px}.club .calendar-score{font-size:19px}
 .club .performance-grid{gap:8px}.club .performance-grid>div{padding:18px 10px}.club .performance-grid strong{font-size:35px}
 .club .match-duel{gap:9px;grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr)}.club .match-duel h3{font-size:16px;min-height:75px;overflow-wrap:anywhere}.club .duel-score{font-size:30px}.club .duel-score.score-winner{font-size:48px}
 .club .match-page-heading .eyebrow{font-size:10px}.club .match-status{flex-basis:100%;gap:12px}.club .match-status .h2h-label{display:none}.club .empty{padding:24px 18px}.club .other-club .display-name{font-size:35px;max-width:100%}
}

/* Les liens couvrent leur ligne tout en gardant un vrai lien au clavier. */
.club #clubHome{display:inline-block;color:inherit;text-decoration:none;max-width:100%}
.club #clubHome:hover .display-name{color:var(--signal)}
.club .standings tbody tr{position:relative;transition:background .15s}
.club .standing-team-link{color:inherit;text-decoration:none}
.club .standings .standing-team-link::after{content:"";position:absolute;inset:0;cursor:pointer}
.club .match-page .standing-team-link:hover,.club .match-page .standing-team-link:focus-visible{text-decoration:underline;text-underline-offset:4px}
.club .club-archives{grid-column:1/-1}.club .club-archives label{display:flex;align-items:center;gap:15px;margin:20px 0}.club .club-archives select{padding:8px;border:1px solid var(--line);background:var(--surface)}
.club .archive-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.club .archive-links a{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:16px;border:1px solid var(--line);text-decoration:none}.club .archive-links span{font-size:12px}.club .archive-links [hidden]{display:none}
.club .archive-detail{grid-column:1/-1;min-width:0}.club .archive-detail h1{font:600 clamp(24px,3vw,40px)/1.2 "Segoe UI",sans-serif;margin:15px 0}.club .archive-detail .notice{padding:15px;border-left:3px solid var(--accent);background:var(--soft);font-size:13px}.club .archive-detail .detail-links{display:flex;gap:16px;flex-wrap:wrap}.club .archive-detail .within-filter{display:flex;flex-direction:column;max-width:460px;gap:8px;margin:25px 0}.club .archive-detail input{padding:10px;font:inherit;border:1px solid var(--line);background:var(--surface)}.club .archive-detail .table-scroll{overflow:auto;max-height:650px}.club .archive-detail .data-section{margin:28px 0}.club .archive-detail .data-section h2{font:600 20px/1.4 "Segoe UI",sans-serif}.club .archive-detail table{width:100%;font-size:13px}.club .archive-detail thead th{position:sticky;top:0;background:var(--surface);white-space:nowrap}.club .archive-detail tr[hidden]{display:none}.club .archive-detail th,.club .archive-detail td{padding:12px}.club .archive-detail tbody th{text-transform:none;letter-spacing:0;font-weight:500}.club .archive-detail .status{font-size:12px;color:var(--muted)}
@media(max-width:700px){.club .archive-links{grid-template-columns:1fr}.club .archive-detail{padding:16px}.club .archive-detail th,.club .archive-detail td{padding:9px}}
.club .standings tbody tr:has(.standing-team-link):hover{background:var(--soft)}
.club .standings tbody tr:focus-within{outline:2px solid var(--accent);outline-offset:-2px}
.club .match-standings{grid-column:1/-1;grid-row:auto;width:100%;min-width:0}
.club .match-standings>h3::before{content:none}
.club .match-standings tr.match-home,.club .match-standings tbody tr.match-home:hover{background:#e9efde;border-left:3px solid #607a35}
.club .match-standings tr.match-away,.club .match-standings tbody tr.match-away:hover{background:#e2edf6;border-left:3px solid #396788}
.club .match-standings .venue-side{display:table;margin-top:6px}
.club .results>h3{margin-bottom:20px}
.club .resultbadge.h2h-dot{padding:0;border:0;margin:0;justify-self:center;align-self:center;letter-spacing:0}
.club .h2h-dot.unknown{background:#546269;color:#fff}
.club .resultbadge.h2h-dot:hover{transform:none}
.club .score-own,.club .score-club{color:var(--signal)}
.club .row-team,.club .venue-address{color:var(--signal)}
.club .team-tabs a,.club .context button,.club .calendar-filters a,.club .player-years a{display:inline-flex;align-items:center;justify-content:center;text-align:center}
.club .player-years a{flex-direction:column}
.club .coverage-note{border-left:3px solid var(--accent);background:var(--soft);padding:12px 16px;font-size:12px;margin:18px 0}
@media(max-width:760px){
 .club .clubhead.other-club .display-name{font-size:clamp(27px,7.5vw,40px)!important;line-height:1.08;letter-spacing:-.8px!important}
}

.skip-link{position:fixed;top:-100px;left:12px;z-index:100;background:#fff;color:#111;padding:12px;border-radius:6px}.skip-link:focus{top:12px}button:disabled{opacity:.45;cursor:not-allowed}body.club a:focus-visible,body.club button:focus-visible,body.club select:focus-visible{outline:3px solid #236a9e;outline-offset:3px}.results a:focus-visible,.next a:focus-visible,.timeline a:focus-visible,.timeline button:focus-visible{outline-color:#edf4e8}.club-logo-slot img{object-fit:contain}


body[data-loading] .top,body[data-loading] .shell,body[data-loading] .skip-link{visibility:hidden}.site-loading{position:fixed;inset:0;display:grid;place-items:center;background:var(--bg);z-index:20;padding:20px;text-align:center}.site-loading .empty{max-width:420px}.loading-brand{font-size:40px;font-weight:800;letter-spacing:-2px;display:block}.loading-brand b{color:var(--accent)}.loading-orbit{display:block;margin:22px auto;width:36px;height:36px;border:2px solid #c3cbc2;border-top-color:var(--accent);border-radius:50%;animation:orbit-spin 1s linear infinite}body:not([data-loading]) .site-loading{display:none}@keyframes orbit-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.loading-orbit{animation:none}}


.no-js-notice{position:fixed;inset:0;z-index:30;display:grid;align-content:center;justify-items:center;gap:16px;padding:24px;background:var(--bg);text-align:center}.no-js-notice h2,.no-js-notice p{margin:0}

/* Performances : lecture collective, graphiques et exploration sans surcharge. */
.club .performance-dashboard{width:100%;max-width:none;margin-inline:auto;min-width:0;display:grid;gap:20px;--analysis-win:#358160;--analysis-loss:#b35151;--analysis-win-ink:#83c8a4;--analysis-loss-ink:#e09a9a}
.club .performance-dashboard .analysis-won{color:var(--analysis-win-ink)}.club .performance-dashboard .analysis-lost{color:var(--analysis-loss-ink)}
.club .performance-toolbar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:0}
.club .analysis-filter{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:8px}
.club .analysis-filter button{background:transparent;border:0;border-radius:5px;color:var(--muted);padding:9px 13px;font-size:12px;min-height:44px}
.club .analysis-filter [aria-pressed=true]{background:var(--dark);color:#f6f7ef}
.club .analysis-coverage,.club .analysis-scope{font-size:11px;color:var(--muted);margin:0;line-height:1.6}
.club .analysis-scope{margin-top:-15px}
.club .analysis-insights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.club .analysis-insight{min-width:0;padding:23px 20px;background:var(--dark);color:#f6f7ef;display:flex;flex-direction:column;justify-content:center;gap:10px}
.club .analysis-insight>span{font:10px Consolas,monospace;letter-spacing:.8px;text-transform:uppercase;color:#bac4c9}
.club .analysis-insight>strong{font:600 36px/1.1 Bahnschrift,sans-serif;letter-spacing:-1px}
.club .analysis-insight strong small{font-size:19px;letter-spacing:0;color:#bac4c9}
.club .analysis-insight p{font-size:11px;line-height:1.5;color:#bac4c9;margin:0;min-height:33px}
.club .analysis-card{background:var(--dark);color:#f6f7ef;min-width:0;max-width:100%;box-sizing:border-box;padding:24px;border-radius:10px;--line:#394448}
.club .analysis-heading h3{font:550 21px/1.3 Bahnschrift,sans-serif;letter-spacing:-.4px;margin:0 0 6px}
.club .analysis-note{font-size:11px;line-height:1.6;color:#bac4c9;margin:0 0 20px}
.club .analysis-card a{color:#f6f7ef}
.club .analysis-card a:hover{color:var(--signal)}
.club .analysis-card a:focus-visible,.club .analysis-card button:focus-visible,.club .analysis-card select:focus-visible,.club .analysis-card summary:focus-visible{outline-color:#a9d9ff}
.club .plot-scroll,.club .analysis-table-scroll{max-width:100%;overflow-x:auto;scrollbar-color:#61747f var(--dark);scrollbar-width:thin}
.club .plot-scroll svg{display:block;width:var(--plot-width);min-width:0;max-width:none;height:270px;margin-inline:auto}
.club .plot-axis text{fill:#bac4c9;font:11px "Segoe UI",sans-serif}
.club .plot-grid{stroke:#ffffff12;stroke-width:1}.club .plot-zero{stroke:#a4b6c0;stroke-opacity:.55;stroke-width:1}
.club .margin-bar.positive{fill:var(--analysis-win)}.club .margin-bar.negative{fill:var(--analysis-loss)}.club .margin-bar:hover{stroke:#fff;stroke-width:2}
.club .plot-axis .plot-result{font-size:12px;font-weight:700}.club .plot-axis .won{fill:var(--analysis-win-ink)}.club .plot-axis .lost{fill:var(--analysis-loss-ink)}
.club .analysis-legend{display:flex;gap:18px;flex-wrap:wrap;font-size:10px;color:#bac4c9;margin-top:12px}
.club .analysis-legend span{display:flex;align-items:center;gap:7px}.club .analysis-legend span:before{content:"";height:7px;width:14px;border-radius:2px;background:var(--analysis-win)}
.club .analysis-legend .legend-other:before{background:var(--analysis-loss)}
.club .analysis-data{font-size:11px;margin-top:20px;color:#bac4c9;border-top:1px solid var(--line);padding-top:12px}
.club .analysis-data summary{cursor:pointer;display:list-item}.club .analysis-data table{width:100%;margin-top:12px;border-collapse:collapse;color:#f6f7ef}
.club .analysis-data th,.club .analysis-data td{padding:8px;font-size:11px;white-space:nowrap;text-align:right;border-bottom:1px solid var(--line)}
.club .analysis-data th:first-child,.club .analysis-data td:first-child{text-align:left}.club .analysis-data caption{text-align:left;font-size:10px;color:#bac4c9;padding:5px 8px}
.club .set-matrix{min-width:430px}.club .set-matrix-head,.club .set-matrix-row{display:grid;grid-template-columns:minmax(140px,1.7fr) repeat(var(--sets),minmax(42px,1fr));gap:4px;align-items:stretch;margin-bottom:4px}
.club .matrix-scroll{max-height:520px;overflow-y:auto;overscroll-behavior-x:contain}.club .set-matrix-head{position:sticky;top:0;background:var(--dark);z-index:3;padding-bottom:6px}
.club .set-matrix-head{font:10px Consolas,monospace;color:#bac4c9;margin-bottom:8px}.club .set-matrix-head span:not(:first-child){text-align:center}
.club .matrix-opponent{text-decoration:none;display:flex;flex-direction:column;justify-content:center;padding:3px 10px 3px 0;min-width:0}
.club .matrix-opponent strong{font-size:11px;font-weight:500;overflow-wrap:anywhere}.club .matrix-opponent small{font-size:10px;color:#bac4c9}
.club .matrix-opponent,.club .set-matrix-head>span:first-child{position:sticky;left:0;z-index:2;background:var(--dark);box-shadow:5px 0 8px #0002}
.club .set-matrix-head>span:first-child{z-index:4}
.club .set-cell{position:relative;display:flex;align-items:center;justify-content:center;min-height:34px;text-decoration:none;font:600 12px Consolas,monospace;border-radius:4px;white-space:nowrap}
.club .set-cell.set-win{background:var(--analysis-win);border:1px solid var(--analysis-win)}
.club .set-cell.set-loss{background:var(--analysis-loss);border:1px solid var(--analysis-loss)}.club .set-cell.set-missing{color:#7e8d96;background:#ffffff03;font-weight:400}
.club .set-cell i{position:absolute;bottom:0;right:5px;font-style:normal;font-size:10px;color:#fff}.club a.set-cell:hover{outline:1px solid #fff;color:#fff}
.club .analysis-match-picker{font-size:10px;color:#bac4c9;display:flex;align-items:center;gap:15px;margin:0 0 14px}
.club .analysis-match-picker select{min-width:0;max-width:100%;flex:1;background:#232a2a;border:1px solid #4c5c62;color:#f6f7ef;border-radius:5px;padding:10px;font-size:12px}
.club .analysis-leads{margin:18px 0 0}
.club .chart-insight{font-size:11px;line-height:1.7;padding:12px 14px;margin:20px 0 0;background:#ffffff06;border-left:2px solid var(--signal);color:#d1dade}.club .chart-insight a{text-decoration:none}
.club .analysis-swing{min-width:0;background:var(--chart-bg);border-radius:8px}
.club .analysis-swing-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
.club .analysis-swing .analysis-swing-plot{display:block;width:var(--plot-width);min-width:0;max-width:none;height:335px;margin-inline:auto}
.club .analysis-swing-scroll:focus-visible,.club .plot-scroll:focus-visible{outline:2px solid #a9d9ff;outline-offset:3px}
.club .analysis-point-readout{min-height:24px;margin:0;padding:0 16px 8px;font:11px Consolas,monospace;color:#f6f7ef}
.club .analysis-swing .compact-plot .plot-axis text,.club .analysis-plot.compact-plot .plot-axis text{font-size:11px}
.club .swing-line{fill:none;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}.club .swing-line.positive{stroke:var(--analysis-win-ink)}.club .swing-line.negative{stroke:var(--analysis-loss-ink)}
.club [data-analysis-curve]{opacity:1}.club .curve-muted{opacity:.3}.club .curve-emphasized{opacity:1}.club .curve-emphasized .swing-line{stroke-width:3.5}
.club .curve-marker{fill:var(--chart-bg);stroke-width:1.5}.club .curve-marker.positive{stroke:var(--analysis-win-ink)}.club .curve-marker.negative{stroke:var(--analysis-loss-ink)}
.club .swing-set-legend{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px 10px;padding:12px 10px 5px;color:#bac4c9}.club .swing-set-legend>button{display:flex;align-items:center;gap:6px;white-space:nowrap;background:transparent;border:1px solid transparent;border-radius:5px;color:inherit;font:10px "Segoe UI",sans-serif;padding:6px;min-height:32px;cursor:pointer}.club .swing-set-legend .is-highlighted,.club .swing-set-legend [aria-pressed=true]{border-color:#6b777d;background:#ffffff08;color:#f6f7ef}.club .swing-set-legend svg{width:30px;height:12px}.club .swing-set-legend line{stroke:#b1bfc6;stroke-width:1.7}.club .swing-set-legend g{fill:var(--chart-bg);stroke:#b1bfc6;stroke-width:1.4}.club .swing-set-legend b{font:10px Consolas,monospace}
.club .swing-point{fill:transparent}.club .swing-point:hover{stroke:#fff;stroke-width:1}.club .swing-point.positive:hover{fill:var(--analysis-win-ink)}.club .swing-point.negative:hover{fill:var(--analysis-loss-ink)}
.club .swing-facts{display:flex;align-items:center;gap:20px;flex-wrap:wrap;font-size:11px;color:#bac4c9;margin-top:16px}.club .swing-facts b{color:#f6f7ef;margin-left:7px}.club .swing-facts>a{margin-left:auto;font-size:11px}
.club .run-row{display:grid;grid-template-columns:70px minmax(0,1fr);gap:18px;align-items:center;margin-bottom:14px;font-size:11px;color:#bac4c9}
.club .run-line{display:flex;align-items:center;gap:9px;margin:3px 0;min-height:12px}.club .run-line i{display:block;min-height:7px;border-radius:2px}.club .run-line b{font:10px Consolas,monospace;color:#f6f7ef}
.club .own-run{background:var(--analysis-win)}.club .other-run{background:var(--analysis-loss)}
.club .run-records{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px;border-top:1px solid var(--line);padding-top:20px}
.club .run-records>div{display:flex;flex-direction:column;gap:8px}.club .run-records span,.club .run-records a{font-size:11px;color:#bac4c9}.club .run-records strong{font:600 30px Bahnschrift,sans-serif}.club .run-records strong small{font-size:13px;font-weight:400}
.club .analysis-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;min-width:0}
.club .position-bars>div{display:grid;grid-template-columns:45px minmax(0,1fr) 36px;align-items:center;gap:12px;font-size:11px;margin:17px 0}.club .position-bars b{text-align:right;font:11px Consolas,monospace}
.club .position-track{height:8px;background:var(--analysis-loss);border-radius:4px;overflow:hidden}.club .position-track i{display:block;background:var(--analysis-win);height:100%}
.club .analysis-venues{display:grid;grid-template-columns:1fr 1fr;gap:16px}.club .analysis-venues>div{display:flex;flex-direction:column;gap:10px;align-items:center;text-align:center}
.club .analysis-venues strong{font:600 34px Bahnschrift,sans-serif}.club .analysis-venues small,.club .analysis-venues p{font-size:11px;color:#bac4c9;margin:0}
.club .season-comparison{display:grid;grid-template-columns:minmax(0,1.6fr) 1fr 1fr;gap:18px;padding:18px 0;border-top:1px solid var(--line)}
.club .season-comparison>div{display:flex;flex-direction:column;justify-content:center;gap:4px}.club .season-comparison small,.club .season-comparison span{font-size:10px;color:#bac4c9;overflow-wrap:anywhere}
.club .season-comparison b{font:600 26px Bahnschrift,sans-serif}.club .season-comparison strong{font:600 17px Bahnschrift,sans-serif}
@media(max-width:760px){
 .club .swing-set-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;padding:8px 5px 3px}.club .swing-set-legend>button{justify-content:center;gap:4px;padding:4px 2px;font-size:9px}.club .swing-set-legend svg{width:20px;flex-shrink:0}.club .swing-set-legend b{font-size:9px}.club .swing-set-legend>button:last-child:nth-child(odd){grid-column:1/-1;justify-self:center}
 .club .performance-dashboard{gap:16px}.club .performance-toolbar{gap:8px}.club .analysis-filter{flex:1;justify-content:center;flex-wrap:wrap}.club .analysis-filter button{padding:8px 9px;font-size:11px;white-space:nowrap}
 .club .swing-set-legend>button{min-height:44px}.club .analysis-data summary{min-height:44px;align-content:center}.club .set-cell{min-height:44px}
 .club .analysis-insights{grid-template-columns:1fr}.club .analysis-insight{padding:18px;display:grid;grid-template-columns:1fr auto;column-gap:15px;row-gap:6px;align-items:center}.club .analysis-insight>strong{grid-column:2;grid-row:1/3;white-space:nowrap;font-size:34px}.club .analysis-insight>span{font-size:9px}.club .analysis-insight p{min-height:0;grid-column:1;font-size:10px}
 .club .analysis-card{width:100%;padding:20px 16px}.club .analysis-heading h3{font-size:22px}.club .analysis-pair{grid-template-columns:1fr;gap:16px}
 .club .analysis-match-picker{flex-direction:column;align-items:stretch;gap:6px}.club .analysis-match-picker select{width:100%;font-size:11px}.club .swing-facts{gap:10px;font-size:10px}.club .swing-facts>a{margin-left:0;width:100%}
 .club .analysis-legend{gap:10px;font-size:9px}.club .run-records{gap:14px}.club .season-comparison{grid-template-columns:minmax(0,1.3fr) 1fr 1fr;gap:10px}.club .season-comparison b{font-size:21px}.club .season-comparison strong{font-size:14px}
}


/* Ajustements de contenu : les cadres de comparaison s'adaptent à leur largeur. */
.club .home-coverage{display:block;margin-top:14px;font-size:11px;color:#b9c3c8}
.club .home-recent{padding:28px;background:var(--dark);color:#f6f7ef;border-radius:12px}.club .home-recent>header>span{color:#b9c3c8}
.club .home-recent .home-fixture{border-top-color:#ffffff20}.club .home-recent .home-fixture time,.club .home-recent .home-fixture small{color:#b9c3c8}.club .home-recent .home-fixture time b{color:#f6f7ef}.club .home-recent .home-versus,.club .home-recent .home-fixture:hover{color:var(--site-primary)}
.club .home-result{grid-template-columns:48px minmax(0,1fr) 52px}.club .home-result-score{display:flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap;font:12px Consolas,monospace}
.club .home-result-score b{font-size:12px;font-weight:400;color:#b9c3c8}.club .home-result-score .winner{font-size:18px;font-weight:700;color:#f6f7ef}
.club .home-discovery-block .home-result-score b{color:var(--muted)}.club .home-discovery-block .home-result-score .winner{color:var(--ink)}
.club .home-fixtures-empty{font-size:12px;color:var(--muted);padding:20px 0}.club .home-fixture-teams{min-width:0;overflow-wrap:anywhere}
@container(max-width:540px){
 .club .preview-stat-row{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px 0}.club .preview-stat-row dt{grid-column:1/-1;font-size:10px;margin-bottom:7px}.club .preview-stat-row dd{font-size:20px;padding:4px 5px}.club .preview-stat-row .rank-badge{gap:3px}.club .preview-stat-row .podium-icon{width:14px;height:14px;min-width:14px;min-height:14px}
 .club .preview-form{gap:4px}.club .preview-missing{font-size:10px}
}
@media(max-width:760px){
 .club .home-recent{padding:24px 16px}.club .home-result{grid-template-columns:32px minmax(0,1fr) 45px;gap:10px}
 .club .home-result-score{gap:3px}.club .home-result-score .winner{font-size:16px}
 .club .preview-form .h2h-dot{width:20px;height:20px;font-size:9px}
}

/* Les deux lieux restent visibles lorsque les fournisseurs divergent. */
.venue-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:.8rem}
.venue-options>div{min-width:0;border-left:2px solid var(--line,#ccd0ca);padding-left:.8rem}
.venue-source{font-size:.72rem;font-weight:650;letter-spacing:.04em}
.venue-options .venue-caption{margin-top:.3rem;overflow-wrap:anywhere}
@media(max-width:600px){.venue-options{grid-template-columns:1fr;gap:.8rem}}

.club .archive-detail,.club .club-archives{width:100%;max-width:100%;overflow-wrap:anywhere}


/* Accueil : cinq cartes par ligne, défilement contenu sur petits écrans. */
.club .home-card-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;min-width:0;overflow-x:auto;padding:3px 2px 8px}
.club .home-card-strip .home-discovery-card{padding:14px;gap:0;border-radius:5px}
.club .home-card-strip .home-discovery-card h4{font-size:16px;margin:6px 0 0}
.club .home-card-strip .home-card-kicker{font-size:11px;line-height:1.45}
.club .home-card-strip .home-form-stat{margin:12px 0 10px;gap:7px}.club .home-card-strip .home-form-stat strong{font-size:29px}.club .home-card-strip .home-form-stat small{font-size:16px}
.club .home-card-strip .home-discovery-form{gap:3px}.club .home-card-strip .home-discovery-form>span{width:17px;height:17px;font-size:8px}
.club .home-form-block>header{align-items:center}.club .home-form-block>header>span{font-size:11px}
.club .home-leaderboard{margin-bottom:22px}.club .home-leaderboard>header{margin-bottom:10px}.club .home-leaderboard h3{font-size:19px}
.club .home-leader-value{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.club .home-leader-value>strong{font:600 29px Bahnschrift,sans-serif;text-align:right}.club .home-leader-value>strong small{display:block;font:10px 'Segoe UI',sans-serif;color:var(--muted)}
.club .home-leader-value .rank-badge{display:flex;align-items:center;gap:3px}.club .home-leader-value .podium-icon{width:24px;height:24px}.club .home-coverage-count{font-size:10px;color:var(--muted);margin-top:10px}
@media(max-width:1050px){.club .home-card-strip{grid-template-columns:repeat(5,minmax(165px,1fr))}}

.club .preview-value{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px}

.club .home-discovery-controls{display:flex;justify-content:flex-end;margin:0 0 12px}.club .home-discovery-controls label{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted)}.club .home-discovery-controls select{max-width:100%;padding:7px 10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;border-radius:4px}

/* Keep the footer's content aligned while its background spans the viewport. */

.club .footer{width:100%;padding:24px 44px;margin-top:0;background:var(--surface)}
@media(min-width:1440px){.club:not(.favorites-page) .footer{padding-inline:max(var(--site-page-gutter),calc((100% - var(--site-content-max)) / 2))}}
/* A single fine border and a soft metallic highlight for podium places. */
.club .home-leader-card.podium-card-1,.club .podium-row-1{--podium-border:var(--gold);--podium-fill:#d4aa48}
.club .home-leader-card.podium-card-2,.club .podium-row-2{--podium-border:var(--silver);--podium-fill:#acbbc7}
.club .home-leader-card.podium-card-3,.club .podium-row-3{--podium-border:var(--bronze);--podium-fill:#c18a67}
.club .home-leader-card[class*="podium-card-"]{border:1px solid var(--podium-border)}
.club .home-leader-card[class*="podium-card-"],.club .standings tr.podium-row,.club .podium-table tr.podium-row{
 background-color:var(--surface);
 --podium-background:linear-gradient(112deg,transparent 24%,#ffffffb8 43%,#ffffff26 52%,transparent 66%),linear-gradient(145deg,color-mix(in srgb,var(--podium-fill) 30%,var(--surface)),color-mix(in srgb,var(--podium-fill) 9%,var(--surface)) 42%,color-mix(in srgb,var(--podium-fill) 23%,var(--surface)) 100%);
 background-image:var(--podium-background);
 background-size:160% 100%,100% 100%;background-position:0 0,0 0;
 box-shadow:inset 0 1px 0 #ffffffa6,0 3px 10px color-mix(in srgb,var(--podium-fill) 9%,transparent);
 transition:background-position .3s ease,box-shadow .3s ease;
}
.club .home-leader-card[class*="podium-card-"]:hover,.club .standings tbody tr.podium-row:hover,.club .podium-table tr.podium-row:hover{background-color:var(--surface);background-image:var(--podium-background);background-size:160% 100%,100% 100%;background-position:100% 0,0 0;box-shadow:inset 0 1px 0 #ffffffa6,0 4px 14px color-mix(in srgb,var(--podium-fill) 18%,transparent)}
@media(prefers-reduced-motion:reduce){.club .home-leader-card[class*="podium-card-"],.club .standings tr.podium-row,.club .podium-table tr.podium-row{transition:none}}
/* Keep one continuous metallic background across the full ranking row. */
.club .standings table,.club .podium-table{border-collapse:separate;border-spacing:0}
.club tr.podium-row>:is(th,td){background:transparent}
.club .standings tr.selected>:first-child{border-left:3px solid var(--ink)}
.club .match-standings tr.match-home>:first-child{border-left-color:#607a35}
.club .match-standings tr.match-away>:first-child{border-left-color:#396788}
/* Decorative sidelines stay outside the content and never intercept input. */
@media(min-width:1500px){
 body.club::before,body.club::after{content:"";position:fixed;top:120px;bottom:50px;width:calc((100vw - 1360px)/4);pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 10% 35%,color-mix(in srgb,var(--accent) 9%,transparent),transparent 65%),repeating-linear-gradient(115deg,transparent 0 155px,color-mix(in srgb,var(--accent) 9%,transparent) 156px 157px,transparent 158px 310px);border-radius:40%;animation:sideline-drift 24s ease-in-out infinite alternate}
 body.club{isolation:isolate}
 body.club::before{left:0}
 body.club::after{right:0;transform:rotate(180deg);animation-direction:alternate-reverse}
}
@keyframes sideline-drift{from{background-position:0 0}to{background-position:0 40px}}
@media(prefers-reduced-motion:reduce){body.club::before,body.club::after{animation:none}}
@media(max-width:1050px){.club .footer{padding:24px 26px}}
@media(max-width:760px){.club .footer{padding:22px 20px}}

/* A quarter turn reveals the competitions without moving the page. */
.club .club-stats .metric:not(.metric-flip){grid-template-rows:26px 76px}
.club .metric.metric-flip{--flip-height:216px;position:relative;height:var(--flip-height);min-height:0;padding:0;display:block;perspective:900px}
.club .metric.metric-flip>dd{width:100%;height:100%;margin:0;font:inherit;letter-spacing:normal;white-space:normal}
.club .competition-flip{display:block;position:relative;perspective:900px;width:100%;height:100%;padding:0;border:0;background:transparent;color:var(--heroink);font:inherit;text-align:center;cursor:pointer}
.club .competition-flip:focus-visible{outline:2px solid var(--signal);outline-offset:4px}
.club .metric-flip-rotor{display:block;position:relative;width:100%;height:100%;transform-style:preserve-3d;transform:translateZ(calc(var(--flip-height)/-2));transition:transform .5s cubic-bezier(.22,.7,.25,1)}
.club .competition-flip[aria-expanded="true"] .metric-flip-rotor{transform:translateZ(calc(var(--flip-height)/-2)) rotateX(-90deg)}
.club .metric-flip-face{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px;background:var(--dark);backface-visibility:hidden;overflow:hidden}
.club .metric-flip-front{gap:12px;transform:translateZ(calc(var(--flip-height)/2))}
.club .metric-flip-title{font:10px Consolas,monospace;letter-spacing:.8px;text-transform:uppercase;color:#c6d0c9}
.club .metric-flip-front strong{font:540 clamp(32px,4.4vw,58px)/1 Bahnschrift,"Arial Narrow",sans-serif;letter-spacing:-2.3px}
.club .metric-flip-back{gap:10px;padding:14px 14px 30px;justify-content:flex-start;transform:rotateX(90deg) translateZ(calc(var(--flip-height)/2))}
.club .competition-list{display:block;width:100%;min-height:0;overflow:auto;overscroll-behavior:contain;text-align:left;scrollbar-width:thin;scrollbar-color:#69736d transparent}
.club .competition-list-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 0;font:11px/1.35 "Segoe UI",sans-serif;border-top:1px solid #ffffff24}
.club .competition-list-item>span{overflow-wrap:anywhere}
.club .competition-list-item small{flex-shrink:0;font:9px/1.4 "Segoe UI",sans-serif;color:#c6d0c9}
.club .metric-flip-icon{position:absolute;right:10px;bottom:8px;color:#c6d0c9;pointer-events:none}
.club .metric-flip-icon svg{display:block;width:17px;height:17px}
@media(max-width:760px){.club .metric.metric-flip{--flip-height:198px}.club .metric-flip-front strong{font-size:42px;letter-spacing:-1.7px}.club .metric-flip-back{padding:12px 10px 29px}.club .metric-flip-title{font-size:9px}.club .competition-list-item{display:block;font-size:10px;padding:5px 0}.club .competition-list-item small{display:block;font-size:9px}}
@media(prefers-reduced-motion:reduce){.club .metric-flip-rotor{transition:none}}

/* Readable initial HTML, progressively replaced by the interactive page. */
body[data-seo-pending] .top,body[data-seo-pending] .seo-content{visibility:visible}
body[data-seo-pending] .site-loading{display:none}
body[data-seo-pending] main.shell[hidden]{display:none}
.club .language-options a{text-decoration:none;box-sizing:border-box}
.seo-content{display:block!important;padding-top:24px;padding-bottom:30px}
.seo-content h1{font-size:clamp(26px,4vw,48px);line-height:1.15;margin-bottom:16px}
.seo-content .panel{margin-bottom:20px;padding:24px}
.seo-content .team-tabs a,.seo-content .calendar-filters a{display:inline-block;padding:12px}
.club .team-tabs .team-competition-link,.seo-content .team-tabs .team-competition-link{color:var(--accent);text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;gap:6px;font-weight:550}
.team-tabs .team-competition-link:hover{color:var(--ink)}
@media(max-width:560px){.club .team-tabs{gap:2px}.club .team-tabs a{padding-inline:5px}}
.seo-content table{width:100%;border-collapse:collapse}.seo-content th,.seo-content td{padding:10px;text-align:left;border-bottom:1px solid var(--line)}
.seo-club-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 24px}
.seo-club-list ul{padding-left:18px;list-style:none;font-size:12px}
.seo-club-list a{display:inline-block;padding:8px 0;line-height:1.4}
@media(max-width:760px){.seo-content .panel{padding:16px}.seo-club-list{grid-template-columns:1fr}.seo-content .stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* User-path audit: compact controls and five-result forms. */
.team-switcher{grid-column:1/-1;min-width:0}
.team-switcher summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;padding:12px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.team-switcher summary::-webkit-details-marker{display:none}
.team-switcher summary>span{font-size:10px;color:var(--muted)}
.team-switcher summary strong{grid-column:1;font-size:.9rem;overflow-wrap:anywhere}
.team-switcher summary::after{content:'';grid-column:2;grid-row:1/3;width:8px;height:8px;align-self:center;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg)}
.team-switcher[open] summary::after{transform:rotate(225deg)}
.team-switcher summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.team-switcher-list{display:grid;gap:6px;grid-template-columns:repeat(auto-fit,minmax(175px,1fr))}
.unavailable-details{border-top:1px solid var(--line);padding:14px 0;margin:8px 0}
.unavailable-details summary{cursor:pointer;font-weight:650}
.directory-filter{display:block;max-width:560px;min-width:0;margin:20px 0;font-size:12px;font-weight:600}
.directory-query-field{display:flex;align-items:center;gap:8px;margin-top:8px;min-width:0}
.directory-filter input{display:block;flex:1;width:100%;min-width:0;min-height:44px;padding:11px 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font:14px/1.4 "Segoe UI",sans-serif}
.directory-filter input:focus-visible{outline:2px solid var(--site-focus);outline-offset:3px}
.directory-clear{min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--accent);font:600 12px/1.4 "Segoe UI",sans-serif;cursor:pointer;overflow-wrap:anywhere}
.directory-clear:hover{border-color:var(--accent)}
.directory-empty{padding:24px;border:1px dashed var(--line);border-radius:10px;background:var(--surface);font-size:13px;line-height:1.6}
.directory-empty[hidden]{display:none}
.directory-search [data-directory-status]{margin:12px 0;color:var(--muted);font-size:12px}
.seo-club-list>li{min-width:0;padding:12px 16px;border:1px solid var(--line);border-radius:8px;background:var(--surface);overflow-wrap:anywhere}
.seo-club-list>li>a{display:block;color:var(--ink);font-size:14px;font-weight:600;text-decoration:none}
.seo-club-list>li>a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.seo-club-list li small{display:block;font-size:.75rem;color:var(--muted)}
@media(min-width:761px){.team-switcher>summary{display:none}}
@media(max-width:760px){.club #teamButtons:has(.team-selector){display:block}.club .preview-form{flex-wrap:nowrap;gap:clamp(2px,1vw,6px)}.club .preview-form .h2h-dot{width:clamp(17px,4.7vw,23px);height:clamp(17px,4.7vw,23px);min-width:0;flex:none;font-size:.65rem}.team-switcher:not([open])>.team-switcher-list{display:none}.team-switcher-list .team{min-width:0}.team-switcher-list .team-rank-total{font-size:.65rem}}

@media(max-width:760px){
 .team-switcher[open]>summary{border-radius:10px 10px 0 0}
 .team-switcher-list{grid-template-columns:minmax(0,1fr);gap:4px;max-height:min(360px,50dvh);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:6px;border:1px solid var(--line);border-top:0;border-radius:0 0 10px 10px;background:var(--surface)}
 .club .team-switcher-list .team{min-height:54px;padding:10px 12px;border-radius:5px;gap:4px}
 .club .team-switcher-list .team-rank,.club .team-switcher-list .team-record{display:none}
 .club .team-switcher-list .team strong{font-size:13px}
}
@media(max-width:380px){.club .preview-stat-row dd{padding-inline:4px}.club .preview-form{gap:2px}.club .preview-form .h2h-dot{width:16px;height:16px;font-size:9px}}

/* Shared compact controls keep their labels, focus and data states visible. */
.team-switcher-filter,.team-switcher label:has(.team-switcher-search){display:block;margin:12px 0;font-size:12px;font-weight:600}
.directory-search{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px;margin:20px 0}
.directory-search .directory-filter{flex:1 1 240px;margin:0}
.directory-clear:disabled{opacity:.5;cursor:default}
.club .analysis-match-picker select,.club .season-picker select{color-scheme:dark}
.team-switcher-search{display:block;width:100%;min-width:0;min-height:44px;margin-top:8px;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);font:13px/1.4 "Segoe UI",sans-serif}
.team-switcher [data-team-query-status]{font-size:11px;color:var(--muted);margin:8px 0 12px}
.team-switcher-list .team[hidden]{display:none}
.team-switcher:not([open])>.team-switcher-list,.team-switcher:not([open])>.team-switcher-filter,.team-switcher:not([open])>[data-team-query-status]{display:none}
.club .team small,.club .team-rank-total{overflow-wrap:anywhere;white-space:normal;line-height:1.5;min-width:0;max-width:100%}
.reserve-badge{display:inline-flex;align-items:center;justify-content:center;max-width:100%;padding:4px 8px;border:1px solid currentColor;border-radius:5px;font:600 10px/1.4 "Segoe UI",sans-serif;letter-spacing:.02em;overflow-wrap:anywhere;vertical-align:middle}
.club .performance-dashboard>.analysis-note{color:var(--muted)}
@media(max-width:760px){.club .matrix-scroll{max-height:none;overflow-y:visible;overscroll-behavior-y:auto}.directory-query-field{flex-wrap:wrap}.directory-clear{max-width:100%}}

/* Club discovery: editorial introduction, focused search and identity cards. */
.club .seo-directory{padding:0;border:0;border-radius:0;background:transparent;min-width:0}
.directory-hero{position:relative;isolation:isolate;overflow:hidden;padding:clamp(28px,4vw,60px);border-radius:24px;background:radial-gradient(ellipse at 100% 0,#75452f55,transparent 60%),#17252b;color:#fff}
.directory-hero::after{content:"";position:absolute;z-index:-1;width:360px;height:360px;right:-100px;top:-170px;border:1px solid #f18a6545;border-radius:50%;box-shadow:0 0 0 65px #f18a6509,0 0 0 130px #f18a6506;pointer-events:none}
.directory-eyebrow{display:flex;align-items:center;gap:10px;color:var(--site-primary-on-dark);font-size:11px;font-weight:750;letter-spacing:.16em;text-transform:uppercase}
.directory-eyebrow::before{content:"";width:24px;height:3px;background:currentColor;border-radius:2px}
.club .directory-hero :is(h1,h2){max-width:900px;margin:18px 0 14px;font-size:clamp(30px,3.5vw,54px);font-weight:750;line-height:1.08;letter-spacing:-.045em;color:#fff}
.directory-hero>p{max-width:620px;font-size:15px;line-height:1.7;color:#c4ced3;margin:0}
.directory-hero .directory-scope{display:inline-flex;align-items:center;gap:8px;margin-top:22px;padding:7px 12px;border:1px solid #ffffff22;border-radius:100px;font-size:11px;color:#e3e9ec;background:#ffffff06}
.directory-browser{padding:26px 0 12px}
.seo-directory .directory-search{margin:0;gap:14px;align-items:flex-end}
.seo-directory .directory-filter{max-width:760px;flex:1 1 280px;font-size:12px}
.seo-directory .directory-query-field{position:relative;margin-top:9px}
.directory-query-field>svg{position:absolute;left:18px;top:18px;width:21px;height:21px;color:var(--muted);pointer-events:none}
.seo-directory .directory-filter input{min-height:58px;padding:16px 18px 16px 52px;border-radius:14px;border-color:#dce2e8;box-shadow:0 3px 14px #14253505;font-size:16px}
.seo-directory .directory-clear{min-height:58px;border-radius:14px;padding:14px 20px;background:transparent}
.seo-directory .directory-clear:disabled{opacity:.4}
.seo-directory .directory-status{display:flex;align-items:center;gap:10px;margin:24px 0 16px;color:var(--muted);font-size:13px;font-weight:600}
.seo-directory .directory-status::after{content:"";height:1px;background:var(--line);flex:1}
.seo-directory .directory-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:18px;margin:0}
.seo-directory .directory-cards>li{padding:0;border:1px solid #e1e6eb;border-radius:18px;background:var(--surface);overflow:hidden;box-shadow:0 3px 14px #15233b04;transition:transform .18s,border-color .18s,box-shadow .18s}
.seo-directory .directory-cards>li[hidden]{display:none}
.seo-directory .directory-cards>li:hover{transform:translateY(-3px);border-color:#ecb09a;box-shadow:0 10px 25px #15233b0c}
.seo-directory .directory-cards .directory-card{height:100%;display:grid;grid-template-columns:56px minmax(0,1fr) 28px;align-items:center;gap:12px;padding:22px;text-decoration:none;color:var(--ink)}
.directory-card-logo{display:grid;place-items:center;width:56px;height:56px;border-radius:14px;background:#f5f7f9;border:1px solid #e9edf1;color:#667380;font-size:22px;font-weight:700;align-self:start}
.directory-card-logo img{width:46px;height:46px;object-fit:contain}
.directory-card-identity{display:flex;flex-direction:column;justify-content:center;gap:7px;min-width:0;min-height:68px}
.directory-card-identity strong{font-size:16px;line-height:1.35;letter-spacing:-.02em;overflow-wrap:anywhere}
.seo-directory .directory-card-identity small{font-size:11px;color:var(--muted);font-weight:450}
.directory-card-arrow{display:grid;place-items:center;align-self:end;width:28px;height:28px;border-radius:7px;background:#17252b;color:#fff;transition:background .18s}
.directory-card-arrow svg{width:17px;height:17px}
.directory-card:hover .directory-card-arrow{background:#30444e}
.seo-directory .directory-card:focus-visible{outline:3px solid var(--site-focus);outline-offset:-4px;border-radius:17px}
.seo-directory .directory-empty{padding:32px;text-align:center;border-radius:16px}
@media(max-width:760px){.directory-hero{border-radius:18px;padding:28px 22px}.directory-hero>p{font-size:13px}.directory-browser{padding-top:22px}.seo-directory .directory-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:12px}.seo-directory .directory-clear{min-height:44px;padding:10px 14px}.seo-directory .directory-search{gap:10px}.seo-directory .directory-cards .directory-card{padding:18px;gap:12px}.directory-card-identity strong{font-size:15px}}
@media(prefers-reduced-motion:reduce){.seo-directory .directory-cards>li,.directory-card-arrow{transition:none}.seo-directory .directory-cards>li:hover{transform:none}}

.directory-hero .directory-search{margin-top:28px;max-width:920px}
.directory-hero .directory-filter>span:first-child{color:#d9e2e7}
.directory-hero .directory-clear{color:#fff;border-color:#ffffff35;background:#ffffff08}
.directory-hero .directory-clear:hover:not(:disabled){background:#ffffff18}
.directory-pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;margin:28px 0 12px;font-size:13px;color:var(--muted)}
.directory-pagination a{display:inline-flex;justify-content:center;justify-self:start;padding:12px 20px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font-weight:600;text-decoration:none;min-height:44px}
.directory-pagination a:last-child{justify-self:end}
.directory-pagination a:hover{border-color:var(--site-focus);color:var(--site-focus)}
@media(max-width:460px){.directory-pagination{gap:8px;font-size:11px}.directory-pagination a{padding:10px 12px}}

/* Shared banner geometry for server HTML and interactive pages. Content may grow
   at large zoom or with long labels rather than being clipped to a fixed height. */
body.club{--site-banner-height:360px;--site-banner-radius:14px}
body.club :is(.clubhead,.home-hero,.competition-intro,.directory-hero,.favorites-hero){box-sizing:border-box;width:100%;max-width:none;min-height:var(--site-banner-height);border-radius:var(--site-banner-radius)}
/* The home banner spans the page; its text and the following sections keep their gutters. */
body.club:has(main.shell .home-hero) .top.global-header{margin-bottom:0}
body.club main.shell:has(.home-hero){max-width:none;padding-inline:0}
body.club main.shell .home-hero{border-radius:0;padding-inline:max(var(--site-page-gutter),calc((100% - var(--site-content-max)) / 2))}
body.club main.shell:has(.home-hero) #view>:not(.home-hero){width:calc(100% - 2 * var(--site-page-gutter));max-width:var(--site-content-max);margin-inline:auto}
body.club .clubhead{padding-bottom:88px}
body.club .seo-content{padding-top:0}
body.club .club-logo-slot{position:absolute;right:26px;top:22px;z-index:3;width:64px;height:64px;display:grid;place-items:center}
body.club .club-logo-slot img{width:100%;height:100%;object-fit:contain}
body.club .clubhead .hero-art .flight,body.club .clubhead .hero-art .ball{animation:none}
#siteFreshness{font-size:11px;line-height:1.6;color:var(--muted)}
#siteFreshness time{white-space:normal;font-variant-numeric:tabular-nums}
@media(max-width:760px){body.club{--site-banner-height:320px}body.club .clubhead{padding-bottom:80px}}

/* Upcoming matches share one chronological grid, filtered by category tabs. */
.club .home-upcoming-filters{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0 0 24px}
.club .home-upcoming-filters button{min-height:32px;padding:6px 20px;border:1px solid #e9edf4;border-radius:24px;background:#f3f6fa;color:#29354b;font:600 13px/1.3 "Segoe UI",sans-serif;cursor:pointer}
.club .home-upcoming-filters button[aria-selected=true]{border-color:var(--site-primary-border);background:var(--site-primary-soft);color:var(--site-primary)}
.club .home-upcoming-filters button:hover{border-color:var(--accent)}
.club .home-upcoming-filters button:focus-visible,.club #homeFixtures:focus-visible{outline:3px solid var(--site-focus);outline-offset:3px}
.club .home-upcoming{--home-card-width:320px;--home-card-gap:12px}
.club .home-fixture-grid{display:grid;justify-content:center;grid-template-columns:repeat(auto-fill,min(100%,var(--home-card-width)));grid-auto-rows:1fr;gap:var(--home-card-gap);list-style:none;padding:0;margin:0}
.club .home-fixture-grid>li{min-width:0}
.club .home-match-card{--home-match-tint:234 179 8;box-sizing:border-box;display:grid;grid-template-columns:52px minmax(0,1fr);gap:10px;align-items:center;min-width:0;min-height:144px;height:100%;padding:6px 12px;border:1px solid rgb(var(--home-match-tint)/.24);border-radius:14px;background:radial-gradient(ellipse at 0 0,rgb(var(--home-match-tint)/.10),transparent 70%),linear-gradient(135deg,rgb(var(--home-match-tint)/.055),#fff 62%,rgb(var(--home-match-tint)/.07));color:var(--ink);text-decoration:none;box-shadow:inset 0 1px 0 #ffffffb3,0 4px 14px rgb(var(--home-match-tint)/.06),0 0 14px rgb(var(--home-match-tint)/.04);transition:box-shadow .15s,border-color .15s}
.club .home-match-card[data-category=messieurs]{--home-match-tint:59 130 246}
.club .home-match-card[data-category=dames]{--home-match-tint:236 72 153}
.club .home-match-card[data-category=jeunes]{--home-match-tint:34 197 94}
.club .home-match-card:hover{border-color:rgb(var(--home-match-tint)/.34);box-shadow:inset 0 1px 0 #ffffffc9,0 5px 18px rgb(var(--home-match-tint)/.09),0 0 16px rgb(var(--home-match-tint)/.06)}
.club .home-match-card:focus-visible{outline:3px solid var(--site-focus);outline-offset:3px}
.club .home-match-schedule{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;align-self:stretch;border-right:1px solid var(--line);padding-right:12px;min-width:0}
.club .home-match-date{display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center;font-variant-numeric:tabular-nums}
.club .home-match-date b{font:700 25px/1 Bahnschrift,"Segoe UI",sans-serif}
.club .home-match-date>span{font-size:10px;font-weight:600;line-height:1.3;text-transform:uppercase;color:var(--muted)}
/* Teams and bottom metadata form one compact stack without an empty top track. */
.club .home-match-content{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:1fr auto;align-self:stretch;gap:8px;min-width:0}
.club .home-match-heading{grid-column:1;grid-row:2;margin-inline:-4px -6px;display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.club .home-match-category{flex-shrink:0;margin-left:auto;padding:3px 8px;border-radius:12px;background:rgb(var(--home-match-tint)/.12);font-size:10px;font-weight:700;line-height:1.4;color:#98671b}
.club .home-match-category[data-category=messieurs]{color:#2563a6}
.club .home-match-category[data-category=dames]{color:#a62c67}
.club .home-match-category[data-category=jeunes]{color:#18763e}
.club .home-match-initials{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e3e8ed;color:#526171;font-size:11px;font-weight:750;line-height:1}
.club .home-match-initials[hidden]{display:none}
.club .home-match-clock{box-sizing:border-box;max-width:100%;border-radius:4px;background:#f2f4f6;padding:3px 5px;font-size:11px;line-height:1.35;font-weight:700;font-variant-numeric:tabular-nums;text-align:center;overflow-wrap:anywhere}
.club .home-match-competition{align-self:start;min-width:0;max-width:100%;padding:3px 8px;border:1px solid #e6e9ec;border-radius:12px;background:#f3f5f6;font-size:10px;line-height:1.4;font-weight:600;text-align:left;color:#626d77;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.club .home-match-duel{grid-column:1;grid-row:1;align-self:center;display:grid;gap:7px;min-width:0}
.club .home-match-versus{text-align:center;color:var(--muted);font-size:11px;font-weight:700;line-height:1.3;letter-spacing:.08em}
.club .home-match-team{display:flex;justify-content:center;align-items:center;gap:8px;min-width:0}
.club .home-match-team strong{flex:0 1 auto;min-width:0;font-size:15px;font-weight:750;line-height:1.4;text-align:center;overflow-wrap:anywhere}
.club .home-match-logo{flex:0 0 28px;display:grid;place-items:center;width:28px;height:28px;background:transparent}
.club .home-match-logo img{display:block;max-width:100%;max-height:100%;object-fit:contain}
.club .home-match-logo img[hidden]{display:none}
.club .home-match-retained{grid-column:1;grid-row:3;min-width:0;font-size:10px;line-height:1.4;color:var(--muted);overflow-wrap:anywhere}
.club .home-upcoming .home-fixtures-empty{border:1px dashed var(--line);border-radius:10px;margin:0;padding:24px 16px;line-height:1.7;text-align:center}
@media(max-width:620px){.club .home-upcoming-filters{gap:6px}.club .home-upcoming-filters button{padding-inline:11px}.club .home-match-card{min-height:144px}.club .home-match-team strong{font-size:15px}}
@media(prefers-reduced-motion:reduce){.club .home-match-card{transition:none}}

/* Latest scores: aligned rows, reserved logos, score between both participants. */
.club .home-recent.home-recent-list{padding:0;background:transparent;color:var(--ink);border-radius:0}
.club .home-upcoming-frame,.club .match-list-frame.match-list-frame{padding:22px;background:linear-gradient(145deg,#fff,#f5f7fa);border:0;border-radius:24px;box-shadow:0 12px 36px #26395708}
.club .home-recent-list>header h2::after{content:none}
.club .home-recent-filters{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0 0 24px}
.club .home-recent-filters button{min-height:32px;padding:6px 20px;border:1px solid #e9edf4;border-radius:24px;background:#f3f6fa;color:#29354b;font:600 13px/1.3 "Segoe UI",sans-serif;cursor:pointer}
.club .home-recent-filters button[aria-pressed=true]{background:var(--site-primary-soft);border-color:var(--site-primary-border);color:var(--site-primary)}
.club .home-recent-filters button:hover{border-color:var(--site-primary)}
.club .home-recent-filters button:focus-visible,.club .match-list-row:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.club .match-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.club .match-list>li{margin:0;padding:0;overflow:hidden}
.club .match-list-card{border:1px solid #e5eaf0;background:#ffffffed;border-radius:16px;box-shadow:0 4px 14px #25385208}
.club .match-list-row:focus-visible{outline-offset:-3px}
.club .match-list-row{display:grid;grid-template-columns:minmax(200px,320px) minmax(0,1fr) 64px minmax(0,1fr) 38px;gap:clamp(20px,2.5vw,48px);align-items:center;min-width:0;box-sizing:border-box;min-height:84px;padding:16px 18px;color:var(--ink);text-decoration:none}
.club .match-list-row:hover{background:#f5f8fa}
.club .home-recent-meta{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:16px;min-width:0}
.club .home-recent-meta time{display:flex;flex-direction:column;align-items:center;border-right:1px solid var(--line);padding-right:12px;line-height:1.25}
.club .home-recent-meta time b{font-size:25px;font-weight:750}
.club .home-recent-meta time>span{font-size:11px;text-transform:uppercase;color:var(--muted)}
.club .home-recent-meta small{font-size:11px;line-height:1.5;color:var(--muted);overflow-wrap:anywhere}
.club .home-recent-team{display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;align-items:center;min-width:0}
.club .home-recent-team-0{text-align:right}
.club .home-recent-team-1{grid-template-columns:minmax(0,1fr) 44px;text-align:left}
.club .home-recent-team-1 .home-recent-logo{grid-column:2;grid-row:1}
.club .home-recent-team-1 strong{grid-column:1;grid-row:1}
.club .home-recent-team strong{min-width:0}
.club .home-recent-team strong{font-size:14px;line-height:1.45;font-weight:700;overflow-wrap:anywhere}
.club .home-recent-logo{display:block;width:44px;height:44px;min-width:44px;background:transparent}
.club .home-recent-logo img{display:block;width:44px;height:44px;object-fit:contain}
.club .home-recent-initials{display:grid;place-items:center;width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,#eef4ff,#dceaff);color:#304b74;font-size:13px;font-weight:750;line-height:1}
.club .home-recent-initials[hidden]{display:none}
.club .match-score-pill{display:flex;align-items:center;justify-content:center;min-height:38px;padding:6px;border:1px solid #e3e9ee;border-radius:10px;background:linear-gradient(145deg,#f6f8fa,#eaf0f4);font-size:17px;font-weight:750;font-variant-numeric:tabular-nums;white-space:nowrap}
.club .match-score-pill{gap:5px;line-height:1}
.club .home-recent-score-win{color:#187647;font-size:22px;font-weight:800}
.club .home-recent-score-loss{color:#b33c40;font-size:14px;font-weight:650}
.club .home-recent-score-neutral{font-size:17px}
.club .match-score-pill>span{color:var(--muted);font-size:12px}
.club .home-recent-details{display:grid;gap:3px;min-width:0;font-size:13px;line-height:1.45;color:#52627e;overflow-wrap:anywhere}
.club .match-list>li:nth-child(3n+2) .home-recent-initials{background:linear-gradient(135deg,#f4edff,#e7dff7);color:#5b4683}
.club .match-list>li:nth-child(3n) .home-recent-initials{background:linear-gradient(135deg,#fff5e5,#fae9cf);color:#75552f}
.club .home-recent-status{min-width:0;font-size:11px;color:var(--muted);line-height:1.4;overflow-wrap:anywhere;text-align:center}
.club .home-recent-chevron{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid #e9eef5;border-radius:50%;background:#fff;box-shadow:0 2px 5px #24334b06;font-size:23px;line-height:1;color:#526687}
.club .match-list>.home-recent-empty{padding:24px;color:var(--muted);font-size:13px}
@media(max-width:960px){
 .club .match-list-row{grid-template-columns:minmax(0,1fr) 60px minmax(0,1fr);gap:12px 16px;padding:16px 20px}
 .club .home-recent-meta{grid-column:1/-1;grid-row:1;grid-template-columns:54px minmax(0,1fr)}
 .club .home-recent-team-0{grid-column:1;grid-row:2}.club .match-score-pill{grid-column:2;grid-row:2}.club .home-recent-team-1{grid-column:3;grid-row:2}
 .club .home-recent-meta{padding-right:44px}.club .home-recent-chevron{grid-column:3;grid-row:1;justify-self:end;width:32px;height:32px}
}
@media(max-width:480px){
 .club .match-list-row{grid-template-columns:minmax(0,1fr) 60px minmax(0,1fr);gap:10px;padding:16px 12px}
 .club .home-recent-list>header{padding:0 0 12px}.club .home-upcoming-frame,.club .match-list-frame.match-list-frame{padding:12px;border-radius:18px}.club .home-upcoming-filters,.club .home-recent-filters{padding:0 0 16px}
 .club .home-recent-filters{gap:6px}.club .home-recent-filters button{padding:6px 11px;min-height:32px}
 .club .home-recent-team{grid-template-columns:minmax(0,1fr);gap:7px;align-self:start}.club .home-recent-team .home-recent-logo{grid-column:1;grid-row:1;justify-self:center}.club .home-recent-team strong{grid-column:1;grid-row:2;font-size:12px;overflow-wrap:break-word;hyphens:auto}
 .club .home-recent-logo,.club .home-recent-logo img{width:30px;height:30px;min-width:30px}
}

/* Six discovery tables. No selectors for the other home sections. */
.club .home-discovery-tables{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.club .home-discovery-table-panel{--discovery-accent:#d85d13;--discovery-tint:#fff0df;min-width:0;padding:14px 12px;border:0;border-radius:18px;background:linear-gradient(145deg,#fff,#f5f7fa);color:#17212c;box-shadow:0 8px 24px #2538520b}
.club .home-discovery-table-panel>header{display:flex;align-items:center;gap:12px;margin:0 0 12px;padding:0 4px}
.club .home-discovery-table-panel>header>div{min-width:0}
.club .home-discovery-table-panel h3{margin:0;color:#17212c;font-size:16px;font-weight:750;line-height:1.35}
.club .home-discovery-table-panel header p{margin:4px 0 0;color:#727e8d;font-size:11px;line-height:1.45}
.club .home-discovery-stat-icon{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:50%;background:var(--discovery-tint);color:var(--discovery-accent)}
.club .home-discovery-stat-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.club .home-discovery-table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;margin:0;font-size:11px}
.club .home-discovery-table .home-discovery-rank-col{width:30px}
.club .home-discovery-table .home-discovery-team-col{width:30%}
.club .home-discovery-table .home-discovery-value-col{width:88px}
.club .home-discovery-table tbody th,.club .home-discovery-table tbody td{border:0;padding:9px 6px;text-align:left;vertical-align:middle;line-height:1.35;background:transparent;overflow-wrap:anywhere}
.club .home-discovery-table tbody tr:not(.podium-row):nth-child(even)>*{background:#edf1f680}
.club .home-discovery-table tr.podium-row>:is(th,td){background:transparent}
.club .home-discovery-table tbody tr>:first-child{border-radius:6px 0 0 6px}
.club .home-discovery-table tbody tr>:last-child{border-radius:0 6px 6px 0}
.club .home-discovery-table .home-discovery-rank{padding-inline:5px}
.club .home-discovery-rank-pill{display:inline-grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#e7ebf0;color:#354152;font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}
.club .home-discovery-rank-1{background:#ffb214;color:#5e3500;box-shadow:inset 0 0 0 2px #ffd16c}
.club .home-discovery-rank-2{background:#a5adb8;color:#fff}
.club .home-discovery-rank-3{background:#c78062;color:#fff}
.club .home-discovery-table .home-discovery-club{font:inherit;font-weight:550;text-transform:none}
.club .home-discovery-team-link{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:12px;min-height:36px;color:inherit;text-decoration:none}
.club .home-discovery-team-link:hover{color:#ba4d14;text-decoration:underline}
.club .home-discovery-team-link:focus-visible{outline:2px solid #cc5a16;outline-offset:3px;border-radius:3px}
.club .home-discovery-table-logo{display:grid;place-items:center;width:34px;height:34px;overflow:hidden;background:transparent}
.club .home-discovery-table-logo img[hidden]{display:none}
.club .home-discovery-table-logo img{width:34px;height:34px;object-fit:contain;color:transparent;font-size:0}
.club .home-discovery-team>span{display:block;color:#626e7f}
.club .home-discovery-team>small{display:block;margin-top:3px;font-size:9px;color:#8a929e;overflow-wrap:anywhere}
.club .home-discovery-recent-form{display:flex!important;flex-wrap:wrap;gap:2px;margin-top:5px}
.club .home-discovery-recent-form i{width:5px;height:5px;border-radius:50%;background:#8e9aa8}
.club .home-discovery-recent-form i.won{background:#ca652b}
.club .home-discovery-table .home-discovery-value{text-align:right;padding-left:3px;font-variant-numeric:tabular-nums}
.club .home-discovery-value>strong{display:block;font-size:17px;line-height:1.15;color:#1b2532}
.club .home-discovery-table tr:first-child .home-discovery-value>strong{color:var(--discovery-accent)}
.club .home-discovery-played{font-size:11px;font-weight:500;color:#75808c}
.club .home-discovery-value>small{display:block;margin-top:2px;font-size:10px;color:#6b7684}
.club .home-discovery-coverage{display:block;margin-top:4px;font-size:9px;color:#7c8591;line-height:1.25}
.club .home-discovery-table .home-discovery-empty{padding:22px 12px;text-align:center;font-weight:400;color:#75808c;font-size:12px}
@media(max-width:850px){.club .home-discovery-tables{grid-template-columns:minmax(0,1fr)}.club .home-discovery-table-panel{padding:14px}}
@media(max-width:480px){.club .home-discovery-table-panel{padding:12px 8px}.club .home-discovery-table-panel h3{font-size:14px}.club .home-discovery-table-panel>header{gap:9px;padding:0 3px}.club .home-discovery-table .home-discovery-rank-col{width:25px}.club .home-discovery-table .home-discovery-team-col{width:24%}.club .home-discovery-table .home-discovery-value-col{width:66px}.club .home-discovery-table tbody th,.club .home-discovery-table tbody td{padding-inline:4px;font-size:10px}.club .home-discovery-team-link{grid-template-columns:28px minmax(0,1fr);gap:6px}.club .home-discovery-value>strong{font-size:16px}.club .home-discovery-coverage{font-size:8px}.club .home-discovery-rank-pill{width:19px;height:19px}}

.club a.match-list-row{border:0;border-radius:0}

/* Home sections remain visible in reading order. */
.club .home-sections{display:grid;gap:36px;min-width:0}
.club .home-sections>.home-section{min-width:0}

.club .home-discovery-table-panel[data-stat=wins]{--discovery-accent:#26851e;--discovery-tint:#e6f6e7}
.club .home-discovery-table-panel[data-stat=sets]{--discovery-accent:#1675d5;--discovery-tint:#e7f0ff}
.club .home-discovery-table-panel[data-stat=total]{--discovery-accent:#7546bf;--discovery-tint:#eee7fb}
.club .home-discovery-table-panel[data-stat=setPoints]{--discovery-accent:#d93745;--discovery-tint:#ffe8ec}
.club .home-discovery-section>header.home-section-heading{display:flex;align-items:center;justify-content:space-between;flex-direction:row;flex-wrap:wrap;gap:12px}
.club .home-discovery-section .home-discovery-controls{margin:0;min-width:0;margin-left:auto}
.club .home-discovery-controls label{flex-wrap:wrap}
.club .home-discovery-controls select{border-radius:10px;padding:7px 12px}
@media(max-width:480px){.club .home-discovery-table-logo,.club .home-discovery-table-logo img{width:28px;height:28px}}

/* Discovery content wraps within its allocated table columns. */
.club .home-discovery-table-panel{box-sizing:border-box;max-width:100%}
.club .home-discovery-table{max-width:100%;min-width:0}
.club .home-discovery-table :is(th,td){min-width:0;white-space:normal;overflow-wrap:anywhere}
.club .home-discovery-team-link,.club .home-discovery-team-link>span{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
.club .home-discovery-value>:is(strong,small,span){max-width:100%;white-space:normal;overflow-wrap:anywhere}
.club .home-discovery-initials{display:grid;place-items:center;width:100%;height:100%;border-radius:50%;background:#e3e8ed;color:#526171;font-size:11px;font-weight:750;line-height:1}
.club .home-discovery-table-logo:has(img:not([hidden])) .home-discovery-initials{display:none}

/* Reusable full-width banner: identical geometry for home and club directory. */
body.club:has(main.shell .site-banner) .top.global-header{margin-bottom:0}
body.club main.shell:has(.site-banner){max-width:none;padding-inline:0}
body.club main.shell .site-banner{box-sizing:border-box;display:flex;align-items:center;width:100%;min-height:420px;border-radius:0;padding:36px max(var(--site-page-gutter),calc((100% - var(--site-content-max)) / 2));isolation:isolate;position:relative;overflow:hidden}
.club .site-banner-content{width:100%;min-width:0;max-width:920px}
body.club main.shell .directory-hero{background:linear-gradient(90deg,#24344320,transparent 65%),url('/assets/site/clubs-volleyball-4e19f14e5617.png') center center/cover no-repeat;color:#fff}
.club .directory-hero::after{content:none}
.club .directory-hero-content{max-width:680px}
.club .directory-hero-content p{max-width:560px;margin:0;color:#dae2e7;font-size:15px;line-height:1.65}
.club .directory-hero :is(h1,h2){font-size:clamp(34px,4vw,56px);margin:16px 0;max-width:650px}
.club .directory-body{box-sizing:border-box;width:calc(100% - 2 * var(--site-page-gutter));max-width:var(--site-content-max);margin:28px auto 0}
.club .directory-body>.directory-search{padding:20px 24px;border:1px solid #e9edf1;border-radius:18px;background:#fff;box-shadow:0 8px 28px #24364b06}
.club .directory-body .directory-filter{max-width:none}
.club .directory-body .directory-filter input{min-height:48px;padding-block:12px;background:#f7f9fb;box-shadow:none;font-size:14px;border-radius:12px}
.club .directory-body .directory-query-field>svg{top:14px}
.club .directory-body .directory-clear{min-height:48px;padding:12px 16px;background:#f3f5f8}
.club .directory-browser{padding-top:0}
.club .directory-cards .directory-card{box-sizing:border-box}
.club .seo-directory .directory-cards>li{border-color:#e9edf2;background:linear-gradient(145deg,#fff,#fafbfc);box-shadow:0 4px 16px #25385205}
.club .directory-card-logo{border:0;border-radius:50%;background:#edf2f7;font-size:17px}
.club .directory-card-arrow{border-radius:50%;background:#f0f3f7;color:#526171}
.club .directory-card:hover .directory-card-arrow{background:var(--site-primary-soft);color:var(--site-primary)}
.club .directory-pagination{padding:16px 20px;border-radius:16px;background:#fff;border:1px solid #e9edf2}
.club .home-hero .home-coverage{width:fit-content;padding:14px 20px;border:1px solid #ffffff20;border-radius:16px;background:#10202c66;backdrop-filter:blur(8px)}
@media(max-width:760px){body.club main.shell .site-banner{min-height:380px;padding-block:28px}.club .directory-body>.directory-search{padding:16px}.club .directory-hero-content p{font-size:13px}.club .home-hero .home-coverage{padding:12px 14px}.club .directory-pagination{padding:12px}}
@media(max-width:480px){.club .directory-body .directory-clear{width:100%}.club .directory-body{margin-top:18px}.club .directory-hero :is(h1,h2){font-size:34px}}

/* Search belongs to the shared banner on both directories. */
.club .directory-hero .directory-search{max-width:680px;margin-top:20px;align-items:flex-end;gap:12px}
.club .directory-hero .directory-filter{flex:1;min-width:0}
.club .directory-hero .directory-filter input{min-height:48px;padding-block:12px;font-size:14px;background:#fffffff2;border:1px solid #ffffff80;border-radius:12px;box-shadow:0 5px 20px #10202c12}
.club .directory-hero .directory-query-field>svg{top:14px}
.club .directory-hero .directory-clear{min-height:48px;padding:12px 14px;border-radius:12px;background:#ffffff14}
@media(max-width:480px){.club .directory-hero .directory-search{gap:8px}.club .directory-hero .directory-clear{min-height:36px;padding:8px 12px}.club .directory-hero .directory-filter{flex-basis:100%}}

.club .directory-hero-content>p.directory-banner-count{margin-top:12px;font-size:13px;font-weight:600;color:#e2e8ed}

/* Shared banner labels: white text with a leading rule. */
body.club main.shell .site-banner :is(.directory-eyebrow,.favorites-hero-eyebrow,.competition-hero-content>.eyebrow){display:inline-flex;align-items:center;gap:10px;width:fit-content;margin:0 0 10px;padding:0;border:0;border-radius:0;background:transparent;color:#fff;font:700 11px/1.5 "Segoe UI",sans-serif;letter-spacing:.12em;text-transform:uppercase}
body.club main.shell .site-banner :is(.directory-eyebrow,.favorites-hero-eyebrow,.competition-hero-content>.eyebrow)::before{content:"";display:block;flex:0 0 20px;width:20px;height:2px;background:currentColor;border-radius:2px}

/* Club profiles reuse the common full-width banner geometry. */
body.club main.shell .site-banner.clubhead{min-height:280px;padding-block:24px;display:grid;grid-template-columns:96px minmax(0,1fr);align-content:center;align-items:center;gap:20px 24px;background:linear-gradient(90deg,#1e2e3d55,#1e2e3d10 65%,transparent),url('/assets/site/club-net-3c7c774df412.png') center/cover no-repeat;color:#fff}
body.club main.shell:has(>.clubhead:not([hidden]))>:not(.clubhead){box-sizing:border-box;width:calc(100% - 2 * var(--site-page-gutter));max-width:var(--site-content-max);margin-inline:auto}
body.club .site-banner.clubhead :is(.club-logo-slot,#clubLogo){position:static;grid-column:1;grid-row:1;width:96px;height:96px;padding:12px;box-sizing:border-box;border-radius:18px;background:#fffffff2;filter:none;box-shadow:0 6px 24px #15233118}
body.club .site-banner.clubhead .logo-initials{display:grid;place-items:center;width:100%;height:100%;padding:0;border:0;color:#344557;font-size:28px}
body.club .site-banner.clubhead .club-identity{grid-column:2;grid-row:1;min-width:0;max-width:1000px}
body.club .site-banner.clubhead .eyebrow{max-width:none;margin:0 0 14px;color:#fff;font:700 11px/1.5 "Segoe UI",sans-serif;letter-spacing:.1em}
body.club .site-banner.clubhead .eyebrow::before{background:currentColor}
body.club .site-banner.clubhead .display-name{display:none}
body.club .site-banner.clubhead .clubname{position:static;clip-path:none;width:auto;height:auto;overflow:visible;white-space:normal;font:750 clamp(28px,3.5vw,52px)/1.12 "Segoe UI",sans-serif;letter-spacing:-.035em;color:#fff;overflow-wrap:anywhere}
body.club .site-banner.clubhead h1{margin:0}
body.club .site-banner.clubhead .club-name-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px}
body.club .site-banner.clubhead .club-identity>p:last-child{max-width:720px;margin:14px 0 0;color:#e1e7ec;font-size:14px;line-height:1.6}
body.club .site-banner.clubhead .season{position:static;grid-column:2;grid-row:2;justify-self:start;margin:0;padding:0;border:0;color:#e1e7ec;font:500 12px/1.5 "Segoe UI",sans-serif;letter-spacing:0}
body.club .site-banner.clubhead:has(.season-picker:not([hidden]))>.season{display:none}
body.club .site-banner.clubhead .season-picker{position:static;grid-column:2;grid-row:2;justify-self:start;flex-wrap:wrap;gap:12px;color:#fff;font:600 12px/1.5 "Segoe UI",sans-serif;letter-spacing:0;text-transform:none}
body.club .site-banner.clubhead .season-picker select{color-scheme:light;min-height:44px;width:auto;min-width:150px;border:1px solid #ffffff60;border-radius:10px;background:#fffffff2;color:#344557;padding:10px 32px 10px 12px}
body.club .site-banner.clubhead .hero-art{display:none}
@media(max-width:760px){body.club main.shell .site-banner.clubhead{min-height:calc(380px * 2 / 3);padding-block:calc(28px * 2 / 3);grid-template-columns:64px minmax(0,1fr);gap:18px 14px}body.club .site-banner.clubhead :is(.club-logo-slot,#clubLogo){width:64px;height:64px;padding:8px;border-radius:14px}body.club .site-banner.clubhead .club-identity>p:last-child{font-size:12px}body.club .site-banner.clubhead .season-picker,body.club .site-banner.clubhead .season{grid-column:1/-1}body.club .site-banner.clubhead .club-name-row :is(.favorite-follow,[data-agenda-trigger]){max-width:100%}}

/* Compact horizontal team groups; every team remains available without pagination. */
.club #teamButtons:has(.team-selector){display:block}
.club .teams{padding-top:16px;margin-bottom:26px}
.club .teams>h2{display:block;font:700 14px/1.4 "Segoe UI",sans-serif;letter-spacing:0;color:#3d4650;margin-bottom:12px}
.club .team-switcher-list{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;max-height:none;overflow:visible;padding:0;border:0;background:none}
.club .team-selection-group{--group-tone:#52667c;--group-glow:145 168 194;--group-soft:#eef2f7;display:grid;grid-template-columns:146px minmax(0,1fr);min-width:0;border:1px solid transparent;border-radius:14px;background:radial-gradient(ellipse at 0 0,rgb(var(--group-glow)/.13),transparent 65%) padding-box,linear-gradient(125deg,#fff,#fcfdff 60%,#f6f8fb) padding-box,linear-gradient(125deg,rgb(var(--group-glow)/.9),rgb(var(--group-glow)/.3) 38%,rgb(var(--group-glow)/.25) 75%,rgb(var(--group-glow)/.5)) border-box;box-shadow:inset 0 0 35px rgb(var(--group-glow)/.055),0 0 20px rgb(var(--group-glow)/.16),0 8px 24px #24344b0b;overflow:hidden}
.club .team-selection-group[data-team-group=dames]{--group-tone:#9a4365;--group-glow:244 111 158;--group-soft:#fcecf2}
.club .team-selection-group[data-team-group=messieurs]{--group-tone:#315e99;--group-glow:113 154 255;--group-soft:#eaf2fc}
.club .team-selection-group[data-team-group=jeunes]{--group-tone:#34754c;--group-glow:84 224 138;--group-soft:#eaf6ed}
.club .team-selection-group[data-team-group=loisirs]{--group-tone:#74529a;--group-glow:186 112 255;--group-soft:#f1ebfa}
.club .team-selection-group>header{display:flex;flex-direction:column;justify-content:center;gap:6px;padding:16px;background:linear-gradient(120deg,var(--group-soft),color-mix(in srgb,var(--group-tone) 13%,transparent));border-right:1px solid color-mix(in srgb,var(--group-tone) 13%,transparent);color:var(--group-tone)}
.club .team-selection-group h3{margin:0;font:750 15px/1.3 "Segoe UI",sans-serif;overflow-wrap:anywhere}
.club .team-selection-group header>span{font-size:11px;font-weight:600}
.club .team-selection-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:7px;padding:9px;min-width:0}
.club .team-selection-items .team{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;align-content:center;gap:6px 10px;min-height:68px;padding:10px 12px;margin:0;border:0;border-radius:9px;background:#ffffffed;color:var(--ink);box-shadow:0 3px 9px #25385210,0 1px 3px #25385208}
.club .team-selection-items .team strong{grid-row:1;grid-column:1/-1;font:700 13px/1.3 "Segoe UI",sans-serif;letter-spacing:0}
.club .team-selection-items .team>small{grid-row:2;grid-column:1;font-size:10px;line-height:1.4;color:#657182;overflow-wrap:anywhere}
.club .team-selection-items .team-rank{display:flex;grid-row:2;grid-column:2;align-self:center;justify-content:flex-end;gap:3px;font:650 12px/1.3 "Segoe UI",sans-serif;color:#657182}
.club .team-selection-items .team-rank-total{display:none}
.club .team-selection-items .team-rank .podium-icon{width:12px;height:12px;min-width:12px;min-height:12px}
.club .team-selection-items :is(.team-record,.team-index){display:none}
.club .team-selection-items .team:hover{background:#fff;box-shadow:0 5px 14px #25385218,0 1px 4px #2538520a}
.club .team-selection-items .team[aria-pressed=true]{background:var(--site-primary-soft);color:var(--site-primary);box-shadow:0 3px 12px color-mix(in srgb,var(--site-primary) 20%,transparent)}
.club .team-selection-items .team[aria-pressed=true] :is(small,.team-rank){color:var(--site-primary)}
.club .team-selection-items .team:focus-visible{outline:3px solid var(--site-focus);outline-offset:2px}
.club .team-switcher-filter{max-width:440px;margin:0 0 10px}
.club .team-switcher-search{min-height:38px;margin-top:6px;padding:8px 12px;border-radius:10px;background:#fff}
@media(max-width:760px){.club .team-selection-group{grid-template-columns:minmax(0,1fr)}.club .team-selection-group>header{flex-direction:row;align-items:center;justify-content:space-between;padding:10px 12px;border-right:0;border-bottom:1px solid color-mix(in srgb,var(--group-tone) 13%,transparent)}.club .team-selection-group h3{font-size:13px}.club .team-switcher[open]>summary{border-radius:10px;margin-bottom:10px}.club .team-selection-items{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));padding:7px;gap:6px}.club .team-switcher-filter{margin-top:10px}}

/* Illustrated category headers, without counters or disclosure controls. */
.club .team-selection-group[data-team-group=messieurs]{--group-image:url('/assets/site/team-messieurs-ec56c16eda82.png')}
.club .team-selection-group[data-team-group=dames]{--group-image:url('/assets/site/team-dames-13cb33374071.png')}
.club .team-selection-group[data-team-group=jeunes]{--group-image:url('/assets/site/team-jeunes-b896d23b8189.png')}
.club .team-selection-group[data-team-group=loisirs]{--group-image:url('/assets/site/team-loisirs-c1fdb2443cba.png')}
.club .team-selection-group[data-team-group=autres]{--group-image:url('/assets/site/team-autres-cac8360dd709.png')}
.club .team-selection-group{grid-template-columns:180px minmax(0,1fr)}
.club .team-selection-group>header{position:relative;isolation:isolate;overflow:hidden;min-height:84px;box-sizing:border-box;background:var(--group-soft)}
.club .team-selection-group>header::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(90deg,var(--group-soft),transparent 85%),var(--group-image);background-position:center,center 35%;background-size:cover;opacity:.85}
.club .team-selection-group h3{max-width:110px;text-shadow:0 1px 8px var(--group-soft)}
@media(max-width:760px){.club .team-selection-group{grid-template-columns:minmax(0,1fr)}.club .team-selection-group>header{min-height:64px}.club .team-selection-group>header::before{background-position:center,right 35%;background-size:cover,180px auto;background-repeat:no-repeat}.club .team-selection-group h3{max-width:none}}

.club .team-selection-group:is([data-team-group=messieurs],[data-team-group=dames],[data-team-group=jeunes])>header::before{background-position:center,right top}
/* Club overview: light surfaces, coloured borders and luminous accents. */
.club .club-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 26px;align-items:stretch;isolation:isolate}
.club .overview-card{--glow:255 152 70;position:relative;min-width:0;padding:18px 22px 16px;border:1px solid transparent;border-radius:14px;color:#334155;background:radial-gradient(ellipse at 0 0,rgb(var(--glow)/.13),transparent 62%) padding-box,linear-gradient(125deg,#fff,#fcfdff 60%,#f6f8fb) padding-box,linear-gradient(125deg,rgb(var(--glow)/.65),#e4eaf1 38%,#e7edf3 75%,rgb(var(--glow)/.24)) border-box;box-shadow:inset 0 0 30px rgb(var(--glow)/.025),0 8px 24px #24344b0b;font-family:"Segoe UI",sans-serif}
.club .overview-blue{--glow:113 154 255}.club .overview-coral{--glow:239 83 98}.club .overview-pink{--glow:244 111 158}.club .overview-green{--glow:84 224 138}.club .overview-purple{--glow:186 112 255}
.club .overview-card>header{position:relative;display:flex;align-items:center;gap:16px;min-height:58px;margin-bottom:14px;padding-right:14px}
.club .overview-card h3{margin:0;color:#475569;font:500 16px/1.35 "Segoe UI",sans-serif;letter-spacing:0;text-transform:none}
.club .overview-heading{min-width:0}.club .overview-heading>strong{display:block;font:750 clamp(32px,3vw,44px)/1.05 "Segoe UI",sans-serif;letter-spacing:-1.5px;margin-bottom:4px;color:#263343;text-shadow:0 2px 8px #e5ebef}
.club .overview-icon{display:grid;place-items:center;width:54px;height:54px;flex:0 0 54px;border:1px solid rgb(var(--glow)/.6);border-radius:50%;color:rgb(var(--glow));background:radial-gradient(circle,rgb(var(--glow)/.12),rgb(var(--glow)/.035));box-shadow:inset 0 0 15px rgb(var(--glow)/.08),0 0 20px rgb(var(--glow)/.035)}
.club .overview-icon svg{width:28px;height:28px;filter:drop-shadow(0 0 4px rgb(var(--glow)/.4))}
.club .overview-bars{height:65px;display:flex;align-items:flex-end;gap:clamp(4px,.8vw,12px);padding:0 3px 3px;border-bottom:1px solid #dce4ec;margin-top:24px}
.club .overview-bars>span{flex:1;min-width:2px;max-width:32px;height:var(--bar);border-radius:3px 3px 0 0;background:linear-gradient(rgb(var(--glow)/.55),rgb(var(--glow)/.12));margin-inline:auto}
.club .overview-bars>span:last-child{background:linear-gradient(rgb(var(--glow)),rgb(var(--glow)/.8));box-shadow:0 0 12px rgb(var(--glow)/.35)}
.club .overview-card footer{display:flex;justify-content:space-between;gap:12px;margin-top:10px;color:#607080;font-size:12px;line-height:1.4}.club .overview-card footer b{color:rgb(var(--glow));font-size:14px}
.club .overview-info,.club .overview-hint{position:absolute;right:-10px;top:-6px;color:#64748b;font:600 11px/16px Georgia,serif;z-index:3}
.club .overview-info summary,.club .overview-hint{width:16px;height:16px;border:1px solid #b6c3d0;border-radius:50%;text-align:center;cursor:help;box-sizing:border-box}.club .overview-info summary{cursor:pointer;list-style:none}.club .overview-info summary::-webkit-details-marker{display:none}
.club .overview-info>div{position:absolute;right:0;top:26px;width:min(330px,65vw);max-height:250px;overflow:auto;background:#ffffff;border:1px solid #d7e2ef;border-radius:10px;box-shadow:0 12px 30px #24344b24;padding:12px;font:13px/1.4 "Segoe UI",sans-serif;color:#334155}
.club .overview-info p{margin:0;padding:9px 0;border-bottom:1px solid #e3eaf1}.club .overview-info small{display:block;color:#64748b;margin-top:3px}
.club .overview-ring-layout{display:flex;align-items:center;gap:22px;margin:0 0 14px}.club .overview-ring{position:relative;flex:0 0 114px;width:114px;height:114px}.club .overview-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.club .overview-ring circle{fill:none;stroke-width:12}.club .ring-track{stroke:#e5ebef}.club .ring-value{stroke:rgb(var(--glow));stroke-dasharray:var(--ratio) 100;stroke-linecap:round;filter:drop-shadow(0 0 4px rgb(var(--glow)/.2))}.club .overview-ring strong{position:absolute;inset:0;display:grid;place-items:center;font-size:27px;letter-spacing:-1px;color:#263343}.club .overview-ring-layout p{margin:0;color:#c6d0db;font-size:14px;line-height:1.6}.club .overview-ring-layout b{font-weight:500;color:#eff3f8}
.club .overview-form{display:flex;gap:8px;flex-wrap:wrap;min-height:27px}.club .overview-form span{display:grid;place-items:center;flex:0 0 26px;height:26px;border-radius:50%;font-size:11px;font-weight:700;background:linear-gradient(#e0faeb,#bdeacc);color:#176c41;box-shadow:inset 0 1px 0 #fff9,0 0 9px #42bd7940}.club .overview-form .form-loss{background:linear-gradient(#ffe7e8,#f7c7cc);color:#a13849;box-shadow:inset 0 1px 0 #fff9,0 0 9px #e5748340}.club .overview-form .form-draw{background:#e4eaf2;color:#526378;box-shadow:0 0 8px #8d9fb130}
.club .overview-segments{display:flex;gap:3px;height:10px;margin-top:18px}.club .overview-segments span{flex:1;border-radius:4px;background:linear-gradient(90deg,rgb(var(--glow)) var(--fill),#ffffff25 var(--fill));box-shadow:0 0 7px rgb(var(--glow)/.05)}
.club .overview-info summary:focus-visible,.club .overview-hint:focus-visible{outline:2px solid rgb(var(--glow));outline-offset:4px}
@media(max-width:1100px){.club .club-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.club .club-overview{grid-template-columns:minmax(0,1fr);gap:12px}.club .overview-card{padding:16px 18px}.club .overview-card>header{gap:16px}.club .overview-bars{height:55px}.club .overview-icon{width:50px;height:50px;flex-basis:50px}.club .overview-form{gap:6px}}
/* Stronger coloured light, with category dots kept separate from card accents. */
.club .overview-card{background:radial-gradient(ellipse at 0 0,rgb(var(--glow)/.13),transparent 65%) padding-box,linear-gradient(125deg,#fff,#fcfdff 60%,#f6f8fb) padding-box,linear-gradient(125deg,rgb(var(--glow)/.9),#e0e7ef 38%,#e7edf3 75%,rgb(var(--glow)/.5)) border-box;box-shadow:inset 0 0 35px rgb(var(--glow)/.055),0 0 20px rgb(var(--glow)/.16),0 8px 24px #24344b0b}
.club .overview-icon{box-shadow:inset 0 0 20px rgb(var(--glow)/.17),0 0 22px rgb(var(--glow)/.27)}
.club .overview-team-dots{display:flex;flex-wrap:wrap;align-content:center;gap:8px 12px;min-height:0;margin-top:0;padding-bottom:9px;border-bottom:1px solid #dce4ec}
.club .overview-dot-group{display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.club .overview-card [data-category]{--dot:#a7b2c2}.club .overview-card [data-category=messieurs]{--dot:#77aaff}.club .overview-card [data-category=dames]{--dot:#f58db6}.club .overview-card [data-category=jeunes]{--dot:#6cda98}.club .overview-card [data-category=loisirs]{--dot:#bc99ef}
.club .overview-dot-group>span{width:13px;height:13px;flex:0 0 13px;border-radius:50%;background:radial-gradient(circle at 30% 25%,color-mix(in srgb,var(--dot),white 35%),var(--dot) 65%,color-mix(in srgb,var(--dot),black 20%));box-shadow:0 0 10px color-mix(in srgb,var(--dot) 55%,transparent),inset 0 1px 1px #ffffff50}
.club .overview-card .overview-dot-legend{justify-content:flex-start;flex-wrap:wrap;gap:7px 14px;font-size:11px}.club .overview-dot-legend>span{display:flex;align-items:center;gap:5px}.club .overview-dot-legend i{height:6px;width:6px;border-radius:50%;background:var(--dot)}
.club .overview-orange>header{flex-wrap:wrap;padding-right:0;gap:12px}.club .overview-orange .overview-heading{flex:1}
/* Explicit competition types replace the decorative engagement histogram. */
.club .overview-competition-types{display:flex;flex-wrap:wrap;align-content:center;gap:8px;min-height:0;margin-top:0;padding-bottom:0}
.club .overview-competition-type{display:inline-flex;align-items:center;gap:8px;max-width:100%;padding:8px 10px;border:1px solid rgb(var(--glow)/.27);border-radius:11px;background:linear-gradient(125deg,rgb(var(--glow)/.13),rgb(var(--glow)/.035));box-shadow:inset 0 1px 0 #ffffff07,0 0 14px rgb(var(--glow)/.17);color:#36547e;font-size:12px;line-height:1.35}
.club .overview-competition-type svg{width:18px;height:18px;flex-shrink:0;color:rgb(var(--glow));filter:drop-shadow(0 0 4px rgb(var(--glow)/.25))}.club .overview-competition-type>span{overflow-wrap:anywhere;min-width:0}.club .overview-competition-type b{font-size:15px;line-height:1;color:#244776;padding-left:7px;border-left:1px solid rgb(var(--glow)/.23)}
/* Mirrored home / away record, each half shows its own outcome proportions. */
.club .overview-venue{margin-top:0;min-height:0}
.club .overview-venue-labels,.club .overview-venue-counts{display:grid;grid-template-columns:1fr 1fr;gap:18px;color:#475569;font-size:12px}.club .overview-venue-labels>span{display:flex;align-items:center;gap:8px}.club .overview-venue-labels>span:last-child{justify-content:flex-end}.club .overview-venue-labels b{font-size:15px;color:#293b50}
.club .overview-venue-bars{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:0;margin:12px 0}
.club .overview-venue-bars::after{content:"";position:absolute;width:3px;left:50%;transform:translateX(-50%);z-index:1;top:-5px;bottom:-5px;background:#35414c;box-shadow:0 0 6px #ffffff20}
.club .overview-venue-half{display:flex;height:10px;background:#e7ecf1;overflow:visible;border-radius:0 6px 6px 0;box-shadow:inset 0 1px 2px #30465c12}.club .overview-venue-half.home{flex-direction:row-reverse;border-radius:6px 0 0 6px}
.club .overview-venue-half>span{height:100%;flex-shrink:0}.club .overview-venue-half .venue-win{background:linear-gradient(90deg,#319e69,#6bec9e)}.club .overview-venue-half .venue-loss{background:linear-gradient(90deg,#c74359,#fa8290)}.club .overview-venue-half .venue-draw{background:linear-gradient(90deg,#718196,#a5b3c4)}
.club .overview-venue-counts>span{display:flex;gap:12px}.club .overview-venue-counts>span:last-child{justify-content:flex-end}.club .overview-venue-counts b{font-size:11px;font-weight:600}.club .overview-venue-counts .venue-win{color:#187346}.club .overview-venue-counts .venue-loss{color:#b13e50}.club .overview-venue-counts .venue-draw{color:#53657c}
.club .overview-card .overview-venue-legend{justify-content:center;flex-wrap:wrap;gap:14px;font-size:11px;margin-top:12px}.club .overview-venue-legend>span{display:flex;gap:5px;align-items:center}.club .overview-venue-legend i{height:6px;width:6px;border-radius:50%;background:#54c58e}.club .overview-venue-legend .venue-loss{background:#e77579}.club .overview-venue-legend .venue-draw{background:#99a9bc}.club .overview-venue-note{margin:8px 0 0;color:#657387;font-size:10px;line-height:1.4}
/* Align outcome counts with the centre of their corresponding colour segment. */
.club .overview-venue-counts{gap:0}.club .overview-venue-counts>span{display:flex;gap:0;min-width:0}.club .overview-venue-counts>span.home{flex-direction:row-reverse}.club .overview-venue-counts>span:last-child{justify-content:flex-start}.club .overview-venue-counts b{display:block;flex-shrink:0;text-align:center;white-space:nowrap;line-height:1.5}
/* At most sixty compact slots: fifty-nine portraits plus overflow when needed. */
.club .overview-player-dots{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:6px;margin-top:0;align-content:start}
.club .overview-player-dot{display:block;min-width:0;border-radius:50%;text-decoration:none;aspect-ratio:1;max-width:32px;width:100%;justify-self:center}
.club .overview-player-dot .player-portrait{width:100%;height:100%;aspect-ratio:1;border-radius:50%;box-sizing:border-box;border:1px solid rgb(var(--glow)/.32);background:linear-gradient(135deg,rgb(var(--glow)/.22),rgb(var(--glow)/.08));box-shadow:0 0 9px rgb(var(--glow)/.25)}
.club .overview-player-dot .portrait-initials{font:650 clamp(7px,.7vw,10px)/1 "Segoe UI",sans-serif;color:#96395e}.club .overview-player-dot img{object-fit:cover;object-position:center 25%}.club .overview-player-dot:hover .player-portrait{border-color:rgb(var(--glow));box-shadow:0 0 10px rgb(var(--glow)/.3)}.club .overview-player-dot:focus-visible{outline:2px solid rgb(var(--glow));outline-offset:3px}
.club .overview-player-more{display:grid;place-items:center;align-self:center;min-width:0;white-space:nowrap;font:650 10px/1 "Segoe UI",sans-serif;color:#96395e}
@media(max-width:620px){.club .overview-player-dots{gap:4px}.club .overview-player-dot .portrait-initials{font-size:8px}.club .overview-player-more{font-size:9px}}

/* Compact win-rate card: horizontal gauge and a single responsive form row. */
.club .overview-win-bar{height:10px;overflow:hidden;border-radius:6px;background:#e5ebef;margin-top:0;box-shadow:inset 0 1px 2px #30465c12}
.club .overview-win-bar>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#319e69,#6bec9e);box-shadow:0 0 12px #54e08a55}
.club .overview-win-caption{margin:9px 0 12px;font-size:12px;line-height:1.4;color:#607080}.club .overview-win-caption b{color:#187346;font-weight:600}
.club .overview-green .overview-form{display:flex;flex-wrap:nowrap;gap:clamp(3px,1.5%,8px);min-height:0;container-type:inline-size}
.club .overview-green .overview-form>span{flex:0 1 28px;min-width:0;max-width:28px;width:28px;height:auto;aspect-ratio:1;border:0;padding:0;box-sizing:border-box;font-size:clamp(8px,3.2cqi,11px);line-height:1}

/* Sets use the same compact gauge as the win-rate card. */
.club .overview-set-bar>span{background:linear-gradient(90deg,#8850cb,#c88aff);box-shadow:0 0 12px #ba70ff55}
.club .overview-purple .overview-win-caption b{color:#7544a4}

/* Darker accent ink stays legible while the surrounding light carries the glow. */
.club .overview-card{--accent-ink:#ae5721}
.club .overview-blue{--accent-ink:#365fa9}.club .overview-coral{--accent-ink:#b3374b}.club .overview-pink{--accent-ink:#a33f69}.club .overview-green{--accent-ink:#217b48}.club .overview-purple{--accent-ink:#7846ad}
.club .overview-icon,.club .overview-card footer b,.club .overview-competition-type svg{color:var(--accent-ink)}
.club .overview-heading>strong{text-shadow:none}
.club .overview-win-bar{overflow:visible;background:#e7ecf1}
.club .overview-win-bar>span{box-shadow:0 0 12px #45ce8270,0 2px 5px #23945520}
.club .overview-set-bar>span{box-shadow:0 0 13px #b77afc70,0 2px 5px #8850cb25}
.club .overview-venue-half>span{border-radius:0}.club .overview-venue-half.home>span:last-child{border-radius:6px 0 0 6px}.club .overview-venue-half.away>span:last-child{border-radius:0 6px 6px 0}
.club .overview-venue-half .venue-win{box-shadow:0 0 12px #45ce8270,0 2px 5px #23945520}.club .overview-venue-half .venue-loss{box-shadow:0 0 12px #ef637770,0 2px 5px #ba354c20}
.club .overview-info>div{box-shadow:0 12px 30px #24344b24}
/* Club page hierarchy follows the home section headings. */
body.club .site-banner.clubhead>.breadcrumbs{grid-column:1/-1;grid-row:1;align-self:start;position:relative;z-index:1;margin:0 0 6px;padding:0;color:#dce3eb;font:500 12px/1.5 "Segoe UI",sans-serif;gap:8px}
body.club .site-banner.clubhead>.breadcrumbs a{color:#f5f7fa;text-decoration:none}body.club .site-banner.clubhead>.breadcrumbs a:hover{text-decoration:underline}body.club .site-banner.clubhead>.breadcrumbs [aria-current=page]{color:#fff}
body.club .site-banner.clubhead>.club-logo-slot,body.club .site-banner.clubhead>#clubLogo{grid-row:2}
body.club .site-banner.clubhead>.club-identity{grid-row:2}
body.club .site-banner.clubhead>.season,body.club .site-banner.clubhead>.season-picker{grid-row:3}
.club .content:has(.club-overview) .teamtitle>div{display:block}.club .content:has(.club-overview) .teamtitle .team-name-row{display:block}.club .content:has(.club-overview) .teamtitle{margin-bottom:0;padding-bottom:16px}
@media(max-width:760px){body.club .site-banner.clubhead>.breadcrumbs{font-size:11px;gap:6px;margin-bottom:0}}

/* Shared section heading: apply to a heading or a header containing its heading. */
.club .section-heading{--section-title-color:#3d4650;--section-rule-width:3px;--section-rule-gap:8px}
.club :is(h2,h3,header,summary).section-heading{display:block;margin:0 0 20px;padding:0 0 var(--section-rule-gap);border:0;border-bottom:var(--section-rule-width) solid var(--section-title-color)}
.club :is(h2,h3).section-heading,.club :is(header,summary).section-heading :is(h2,h3){font:750 clamp(23px,2.4vw,30px)/1.25 Bahnschrift,"Segoe UI",sans-serif;color:var(--section-title-color);letter-spacing:-.025em;text-transform:none}
.club :is(header,summary).section-heading :is(h2,h3){margin:0;padding:0;border:0}
.club .home-discovery-section>header.section-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}

.club .club-recent-section{grid-column:1/-1;min-width:0}

/* Mirror the gradients away from the central home/away divider. */
.club .overview-venue-half.home .venue-win{background:linear-gradient(270deg,#319e69,#6bec9e)}
.club .overview-venue-half.home .venue-loss{background:linear-gradient(270deg,#c74359,#fa8290)}
.club .overview-venue-half.home .venue-draw{background:linear-gradient(270deg,#718196,#a5b3c4)}
/* Club identity and previous meetings, without nesting links in the match link. */
.club .match-list-row .match-team-own strong{font-size:16px;font-weight:800}
.club .match-score-pill .match-score-own{font-size:26px;font-weight:850}
.club .match-list-history{margin:0 18px;padding:10px 0 12px;border-top:1px solid #e8edf2}
.club .match-list-history :is(.h2h,.h2h-empty){margin:0;color:var(--muted)}
.club .match-list-history .h2h-label{color:var(--muted)}
@media(max-width:620px){.club .match-list-row .match-team-own strong{font-size:14px}.club .match-score-pill .match-score-own{font-size:24px}.club .match-list-history{margin-inline:12px}}
/* Result tint follows the observed club, never the opponent. */
.club .club-recent-section .match-score-pill b:not(.match-score-own){font-size:16px;font-weight:400}
.club .match-list-card.match-club-win{background:linear-gradient(110deg,#edf9f1,#fff 68%);border-color:#d4e9dc}
.club .match-list-card.match-club-loss{background:linear-gradient(110deg,#fff0f1,#fff 68%);border-color:#eed9de}
.club :is(.match-club-win,.match-club-loss) .match-list-row:hover{background:#ffffff45}

/* Player directory is a full-width section, collapsed by the native details control. */
.club .club-players-section{grid-column:1/-1;min-width:0;margin:24px 0 0}
.club .club-players-section .players-panel{margin:0;padding:0;border:1px solid #e4e9ef;background:linear-gradient(125deg,#fff,#f6f8fb);border-radius:20px;box-shadow:0 8px 26px #2538520a}
.club .club-players-section .players-panel>summary{display:flex;align-items:center;gap:14px;min-height:84px;margin:0;padding:18px 22px;border-radius:20px;transition:background .18s}
.club .club-players-section .players-panel>summary h3{flex:1;min-width:0;margin:0;color:#3d4650;font:750 20px/1.3 "Segoe UI",sans-serif;letter-spacing:-.02em}
.club .club-players-section .players-count{padding:6px 11px;background:#fff;border:1px solid #e5eaf0;border-radius:20px;color:#5b6878;font:600 12px/1.3 "Segoe UI",sans-serif;box-shadow:0 2px 6px #24344b07}
.club .club-players-section .players-toggle{box-sizing:content-box;width:18px;height:18px;padding:9px;border:1px solid #e5eaf0;border-radius:50%;background:#fff;color:#52627a;box-shadow:0 3px 8px #24344b09}
.club .club-players-section summary:hover .players-toggle{background:var(--site-primary-soft);color:var(--site-primary);border-color:var(--site-primary-border)}
.club .club-players-section summary:focus-visible{outline:3px solid var(--site-focus);outline-offset:5px;border-radius:4px}
.club .players-panel-body{margin:0 22px;padding:18px 0 22px;border-top:1px solid #e4eaf1;background:none;border-radius:0;box-shadow:none}
.club .players-panel-body>.muted{margin:0 0 12px;color:#697586;font-size:12px;line-height:1.6}
.club .club-players-section .players-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:12px;margin-top:18px}
.club .club-players-section .player-card{flex-direction:row;text-align:left;justify-content:flex-start;min-height:92px;padding:16px;gap:14px;background:linear-gradient(135deg,#fff,#fcfdff);border:0;border-radius:16px;box-shadow:0 4px 12px #2538520c,0 1px 3px #25385208;transition:box-shadow .18s,background .18s}
.club .club-players-section .player-card:hover{outline:0;background:linear-gradient(135deg,#fff,var(--site-primary-soft));box-shadow:0 6px 18px #25385216}
.club .club-players-section .player-card:focus-visible{outline:3px solid var(--site-focus);outline-offset:3px}
.club .club-players-section .player-portrait{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#eef3fb,#e2e9f5);box-shadow:0 3px 10px #607da51a}
.club .club-players-section .player-card strong{font-size:13px;font-weight:700;line-height:1.4}.club .club-players-section .player-card small{font-size:11px;color:#6b7788}
@media(max-width:620px){.club .club-players-section .players-panel>summary{gap:8px}.club .club-players-section .players-count{font-size:10px;padding:5px 8px}.club .club-players-section .players-toggle{padding:7px;width:16px;height:16px}.club .players-panel-body{margin-inline:14px;padding:14px 0}.club .club-players-section .players-grid{gap:9px}}
@media(prefers-reduced-motion:reduce){.club .club-players-section :is(summary,.players-toggle,.player-card){transition:none}}

.club .players-heading-icon{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:14px;background:linear-gradient(135deg,#edf2fa,#e0e9f6);color:#52709a;box-shadow:0 3px 12px #52709a12}.club .players-heading-icon svg{width:25px;height:25px}
.club .club-players-section .players-panel>summary:hover{background:#ffffff90}
.club .club-players-section .player-card>span:last-child{min-width:0}
@media(max-width:620px){.club .club-players-section .players-panel>summary{padding:15px 14px;min-height:76px}.club .club-players-section .players-panel>summary h3{font-size:17px}.club .players-heading-icon{flex-basis:36px;height:36px;border-radius:11px}.club .players-heading-icon svg{width:22px;height:22px}}
/* About the club: identity and contacts beside the compact venue directory. */
.club .club-information{grid-column:1/-1;padding:24px 26px;border:1px solid #edf0f4;border-radius:18px;background:linear-gradient(135deg,#fff,#fcfdff);box-shadow:0 8px 28px #25385206}
.club .club-information>h3{margin:0 0 22px;padding:0;border:0;font:750 20px/1.3 "Segoe UI",sans-serif;letter-spacing:-.02em;color:#343e49}
.club .club-information-columns{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:30px}
.club .club-information-main{min-width:0}.club .club-information-identity{margin:0 0 12px;font-size:12px;line-height:1.7;color:#657080;overflow-wrap:anywhere}
.club .club-information a{color:var(--site-primary);text-decoration:underline;text-underline-offset:3px;font-size:12px;line-height:1.5}.club .club-information a:hover{color:var(--site-primary-hover)}
.club .club-information h4{margin:0 0 12px;font:700 13px/1.4 "Segoe UI",sans-serif;color:#36414e}
.club .club-contacts{margin-top:28px}.club .club-information ul{list-style:none;padding:0;margin:0}
.club .club-contacts li{display:flex;align-items:flex-start;gap:10px;padding:8px 0}
.club .club-info-icon{display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;border-radius:50%;background:#f5f7fa;border:1px solid #edf0f4;color:#526071}.club .club-info-icon svg{width:17px;height:17px}
.club .club-contact-content{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 12px;min-width:0;padding-top:3px}.club .club-contact-content>b{font-size:12px;line-height:1.6;color:#354150;overflow-wrap:anywhere}
.club .club-contact-channels{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 9px;min-width:0;color:#a5afba;font-size:11px}.club .club-contact-channels a{overflow-wrap:anywhere}
.club .club-information-facilities{border-left:1px solid #edf0f4;padding-left:30px;min-width:0}
.club .club-information .club-facilities{display:grid;gap:0}.club .club-information .club-facilities li{display:grid;grid-template-columns:27px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid #edf0f4}.club .club-information .club-facilities li:last-child{border-bottom:0}
.club .club-facility-content{display:grid;gap:3px;min-width:0}.club .club-facility-content strong{font-size:12px;line-height:1.4;color:#3e4957;overflow-wrap:anywhere}.club .club-facility-content>span{font-size:11px;line-height:1.5;color:#778190;overflow-wrap:anywhere}.club .club-directions{white-space:nowrap}
.club .club-information-columns:not(:has(.club-information-facilities)){grid-template-columns:minmax(0,1fr)}
@media(max-width:850px){.club .club-information-columns{grid-template-columns:minmax(0,1fr);gap:24px}.club .club-information-facilities{border-left:0;border-top:1px solid #edf0f4;padding:20px 0 0}}
@media(max-width:480px){.club .club-information{padding:20px 16px}.club .club-information .club-facilities li{grid-template-columns:27px minmax(0,1fr)}.club .club-directions{grid-column:2;justify-self:start}}

/* Separate the match feed, player directory and main club information section. */
.club .club-about-section{grid-column:1/-1;min-width:0;margin-top:24px}
.club .club-about-section>.club-information{margin:0}
@media(max-width:620px){.club .club-players-section,.club .club-about-section{margin-top:18px}}

/* Club and team banners keep the season at the bottom right; club agenda stays left. */
body.club main.shell .site-banner.clubhead{grid-template-rows:auto minmax(96px,1fr) auto;align-content:stretch}
body.club .site-banner.clubhead>[data-agenda-trigger]{grid-column:1/-1;grid-row:3;justify-self:start;align-self:end;position:relative;z-index:1;max-width:calc(100% - 260px)}
body.club .site-banner.clubhead>:is(.season-picker,.season){grid-column:1/-1;grid-row:3;justify-self:end;align-self:end}
@media(max-width:540px){
 body.club .site-banner.clubhead>[data-agenda-trigger]{max-width:100%}
 body.club .site-banner.clubhead:has(>[data-agenda-trigger])>:is(.season-picker,.season){grid-row:4}
}

/* Upcoming team fixture: editorial date, opponent, history and generated sports artwork. */
.club .next-feature{grid-column:1/-1;grid-row:auto;display:grid;grid-template-columns:16% minmax(0,1fr) 19% 30%;align-items:center;min-height:190px;margin:0 0 32px;border-radius:18px;background:linear-gradient(105deg,#fffaf7,#f9f8f6 65%,#fff);box-shadow:0 8px 30px #26334209;overflow:hidden;color:#16212b}
.club .next-feature-date{position:relative;text-align:center;padding:28px 30px 28px 12px;display:grid;gap:8px;text-transform:uppercase;letter-spacing:1px;font-size:12px;font-weight:700}
.club .next-feature-date::after{content:"";position:absolute;right:20px;top:12%;height:76%;width:1px;background:#ff7054;transform:skew(-24deg);box-shadow:12px 0 24px 8px #ff855a12}
.club .next-feature-date b{font:750 76px/.9 Bahnschrift,"Segoe UI",sans-serif;letter-spacing:-3px;color:#fa6853;text-shadow:0 3px 18px #ff72541a}
.club .next-feature-date .next-feature-weekday{color:#ef624c;font-size:12px}
.club .next-feature-details{min-width:0;padding:24px 24px 24px 12px}
.club .next-feature-eyebrow{font-size:10px;letter-spacing:1.4px;font-weight:750;text-transform:uppercase;color:#4b535b;margin:0 0 14px}
.club .next-feature-eyebrow>span{color:#ef7f55;margin:0 8px}
.club .next-feature-opponent{display:grid;grid-template-columns:72px minmax(0,1fr);gap:20px;align-items:start}
.club .next-feature-opponent .home-recent-logo{width:72px;height:60px;border-radius:10px;background:#fff;overflow:hidden}
.club .next-feature-opponent .home-recent-logo img{width:100%;height:100%;object-fit:contain}
.club .next-feature-opponent .home-recent-initials{width:100%;height:100%;align-items:center;justify-content:center;font-size:20px}
.club .next-feature h3{font:750 clamp(23px,2.2vw,34px)/1.1 Bahnschrift,"Segoe UI",sans-serif;margin:0 0 10px;letter-spacing:-.6px;overflow-wrap:anywhere}
.club .next-feature-meta{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;font-size:13px}
.club .next-feature-meta>span{display:inline-flex;align-items:center;gap:10px}
.club .next-feature-meta i{height:12px;width:1px;background:#8b9298}
.club .next-feature svg{width:20px;height:20px;flex:0 0 20px;color:#ed8659}
.club .next-feature-venue{display:flex;gap:10px;align-items:flex-start;margin-top:12px;font-size:12px;line-height:1.5}
.club .next-feature-venue>div{min-width:0}
.club .next-feature .venue-caption{margin:0;line-height:1.5}
.club .next-feature .venue-name{display:block;font-weight:750;color:#24313b}
.club .next-feature .venue-address{display:block;color:#34414c;text-decoration:none;font-size:12px;overflow-wrap:anywhere}
.club .next-feature .venue-address:hover{text-decoration:underline}
.club .next-feature .venue-missing{margin:0;color:#727c85;font-size:12px}
.club .next-feature-history{align-self:center;border-left:1px solid #dfe1e2;min-width:0;padding:4px 20px 4px 28px}
.club .next-feature-history h4{font-size:10px;font-weight:750;letter-spacing:1.5px;text-transform:uppercase;margin:0 0 14px}
.club .next-feature-history .h2h{display:block;margin:0}
.club .next-feature-history .h2h-label{display:none}
.club .next-feature-history .h2h-dots{display:flex;flex-wrap:wrap;gap:10px}
.club .next-feature-history .h2h-dot{width:28px;height:28px;font-size:12px;border:0;box-shadow:inset 0 2px 5px #ffffff40,0 3px 9px #364c4810}
.club .next-feature-history .h2h-dot.won{background:linear-gradient(#69b99c,#28866c);color:white}
.club .next-feature-history .h2h-dot.lost{background:linear-gradient(#e88b87,#bf3d3d);color:white}
.club .next-feature-history .h2h-empty{font-size:11px;color:#7a8188;line-height:1.5}
.club .next-feature-art{align-self:stretch;position:relative;isolation:isolate;display:flex;align-items:flex-end;justify-content:flex-end;padding:30px 32px;min-height:190px;background:#10202a url('/assets/site/next-match-96b4acd48cda.png') center/cover no-repeat;clip-path:polygon(14% 0,100% 0,100% 100%,0 100%)}
.club .next-feature-art::before{content:"";position:absolute;z-index:-1;left:-28px;top:-20px;width:48px;height:150%;transform:rotate(21deg);background:linear-gradient(#ffd1b8,#ff8b56);box-shadow:20px 0 0 #ffac7860}

.club .next-feature-link{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:14px 26px;border-radius:14px;background:linear-gradient(135deg,#ff785b,#f45541);box-shadow:0 5px 20px #f65d3d30;color:#fff;text-decoration:none;font-size:14px;font-weight:750;transition:filter .15s}
.club .next-feature-link:hover{filter:brightness(1.07)}
@media(min-width:1500px){.club .next-feature{min-height:210px}.club .next-feature-art{min-height:210px}}
@media(max-width:1100px){.club .next-feature{grid-template-columns:140px minmax(0,1fr) 29%}.club .next-feature-date{grid-row:1/3}.club .next-feature-details{padding-bottom:12px}.club .next-feature-history{grid-column:2;border-left:0;padding:0 24px 24px 12px}.club .next-feature-art{grid-column:3;grid-row:1/3;padding:24px 18px}.club .next-feature-history h4{margin-bottom:8px}.club .next-feature-opponent{grid-template-columns:52px minmax(0,1fr);gap:12px}.club .next-feature-opponent .home-recent-logo{width:52px;height:52px}}
@media(max-width:700px){.club .next-feature{grid-template-columns:95px minmax(0,1fr);border-radius:16px}.club .next-feature-date{padding:24px 14px 24px 8px;grid-row:1}.club .next-feature-date::after{right:5px}.club .next-feature-date b{font-size:54px}.club .next-feature-date span,.club .next-feature-date .next-feature-weekday{font-size:9px}.club .next-feature-details{padding:22px 16px}.club .next-feature-eyebrow{font-size:9px;line-height:1.5}.club .next-feature h3{font-size:23px}.club .next-feature-meta{gap:8px;font-size:11px}.club .next-feature-meta i{display:none}.club .next-feature-venue{grid-column:1/-1}.club .next-feature-history{grid-column:1/-1;padding:0 22px 20px}.club .next-feature-art{grid-column:1/-1;grid-row:auto;min-height:140px;clip-path:none;background-position:center 40%;padding:24px}.club .next-feature-art::before{display:none}.club .next-feature-link{min-height:48px}}

/* Align the fixture eyebrow with the opponent name, after the logo column. */
.club .next-feature-eyebrow{margin-left:92px}
@media(max-width:1100px){.club .next-feature-eyebrow{margin-left:64px}}

/* Team identity belongs to the shared club banner. */
body.club .site-banner.clubhead .club-team-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px;margin-top:16px}
body.club .site-banner.clubhead .club-team-row h2{display:flex;align-items:center;gap:12px;margin:0;color:#ff956b;font:750 clamp(20px,2.2vw,28px)/1.25 "Segoe UI",sans-serif;letter-spacing:-.3px}
body.club .site-banner.clubhead .club-team-row h2::before{content:"";width:24px;height:3px;border-radius:2px;background:currentColor;flex-shrink:0}

/* Team navigation: one compact, softly elevated toolbar below the banner. */
.club #teamNavigation{display:flex;align-items:center;gap:28px;margin:24px 0;padding:14px 22px;background:linear-gradient(120deg,#fff,#f9fafc);border-radius:28px;box-shadow:0 12px 35px #26374709;min-width:0}
.club .team-navigation-competition{flex:0 1 370px;min-width:220px}
.club #teamNavigation .context{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:4px;border:1px solid #edf0f4;border-radius:30px;background:#f3f5f8}
.club #teamNavigation .context button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:8px 16px;min-height:40px;border:0;border-radius:26px;color:#677481;background:transparent;font-size:13px;font-weight:700;line-height:1.3;white-space:normal}
.club #teamNavigation .context button[aria-pressed=true]{color:white;background:linear-gradient(165deg,#ed884d,#d93b2f);box-shadow:0 4px 10px #df5a3b20}
.club #teamNavigation svg{width:22px;height:22px;flex-shrink:0}
.club #teamNavigation .team-tabs{flex:1;display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0;padding-left:28px;border-left:1px solid #dfe5eb;min-width:0}
.club #teamNavigation .team-tabs a{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:46px;padding:10px 18px;border:0;border-radius:16px;color:#64717e;font-size:14px;font-weight:700;text-decoration:none;position:relative;white-space:nowrap}
.club #teamNavigation .team-tabs a[aria-current=page]{color:#d64b2e;background:#fbf2ec}
.club #teamNavigation .team-tabs a:hover{background:#f4f5f7;color:#d64b2e}
.club #teamNavigation .team-tabs .team-competition-link{flex:1.2;border-left:1px solid #dfe5eb;border-radius:0;margin-left:12px;padding-left:28px;color:#d64b2e}
.club #teamNavigation .team-competition-link svg{order:-1}
@media(max-width:1150px){.club #teamNavigation{gap:18px;padding:12px 18px}.club .team-navigation-competition{flex-basis:280px}.club #teamNavigation .team-tabs{gap:6px;padding-left:18px}.club #teamNavigation .team-tabs a{padding:12px 10px;font-size:12px;gap:8px}.club #teamNavigation .team-tabs .team-competition-link{margin-left:0;padding-left:14px}}
@media(max-width:850px){.club #teamNavigation{flex-direction:column;align-items:stretch;border-radius:20px;gap:12px}.club .team-navigation-competition{flex-basis:auto;min-width:0}.club #teamNavigation .team-tabs{border-left:0;border-top:1px solid #e5e9ed;padding:14px 0 0}.club #teamNavigation .team-tabs .team-competition-link{flex-basis:100%;border:0;min-height:42px}.club #teamNavigation .context button{min-height:44px}}
@media(max-width:440px){.club #teamNavigation{padding:12px;margin-top:18px}.club #teamNavigation .team-tabs{gap:2px}.club #teamNavigation .team-tabs a{flex-direction:column;padding:10px 6px;font-size:11px;gap:6px}.club #teamNavigation .team-tabs .team-competition-link{flex-direction:row}}

/* Team statistics share the club overview surfaces, gauges and venue balance. */
.club .team-overview{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 26px;align-items:stretch;isolation:isolate}
.club .team-overview .overview-card>header{padding-right:0;gap:12px;flex-wrap:wrap}
.club .team-overview .overview-heading>strong{font-size:clamp(30px,2.5vw,42px)}
.club .team-overview .overview-heading>strong small{font-size:16px;letter-spacing:0;font-weight:500;color:#7b8795}
.club .team-overview-points{margin-left:auto;color:#ad5b28;background:#fff0df;border:1px solid #f2d7bb;border-radius:18px;padding:6px 10px;font-size:11px;white-space:nowrap}
.club .team-overview-points b{font-size:15px}
/* Numbered rank ribbon, with podium medals and the current team highlighted. */
.club .team-rank-track{display:grid;grid-template-columns:repeat(var(--rank-count),minmax(0,1fr));align-items:center;gap:5px;min-height:66px;padding-block:18px 12px;margin-top:14px;container-type:inline-size;position:relative;isolation:isolate}
.club .team-rank-track::before{content:"";position:absolute;left:3%;right:3%;top:calc(50% + 3px);height:5px;transform:translateY(-50%);background:#ede7de;border-radius:4px;z-index:-1}
.club .team-rank-track>.rank-position{position:relative;display:grid;place-items:center;aspect-ratio:1;min-width:0;border-radius:50%;background:linear-gradient(145deg,#f6f3ef,#e9e5df);border:1px solid #e5e0d8;color:#4c5865;font-size:clamp(9px,3.4cqi,16px);font-weight:750;box-shadow:inset 0 1px 2px #ffffff90}
.club .rank-position b{position:relative;z-index:1;font-weight:750}
.club .team-rank-track>:is(.podium-1,.podium-2,.podium-3){border:2px solid #fff;box-shadow:0 0 0 1px var(--medal-edge),0 0 14px var(--medal-glow),inset 0 2px 2px #ffffff80;background:linear-gradient(145deg,var(--medal-light),var(--medal-dark));color:var(--medal-ink)}
.club .rank-position.podium-1{--medal-edge:#f8d65a;--medal-light:#fff3a2;--medal-dark:#ffc72c;--medal-ink:#87500b;--medal-glow:#ffce5060}
.club .rank-position.podium-2{--medal-edge:#c2cbd6;--medal-light:#f6faff;--medal-dark:#a4b1c1;--medal-ink:#374451;--medal-glow:#9aaec53d}
.club .rank-position.podium-3{--medal-edge:#edac74;--medal-light:#ffd4a6;--medal-dark:#d6813b;--medal-ink:#794213;--medal-glow:#e49b5a50}
.club .rank-position:is(.podium-1,.podium-2,.podium-3)::after{content:"";position:absolute;width:53%;height:45%;left:24%;top:88%;background:var(--medal-dark);clip-path:polygon(0 0,100% 0,100% 100%,50% 72%,0 100%);z-index:-1}
.club .rank-crown{position:absolute;width:62%;height:17px;bottom:calc(100% + 5px);fill:#f4b414;filter:drop-shadow(0 0 4px #ffd45360)}
.club .team-rank-track>.is-current{border:2px solid #fff;background:linear-gradient(140deg,#ffbd66,#ff8d26);color:#62320c;box-shadow:0 0 0 2px #ffc78570,0 0 22px #ffa34585,inset 0 1px 3px #ffffff70;transform:scale(1.09);z-index:2}
.club .team-overview .overview-orange{background:radial-gradient(ellipse at 0 0,#ffb45f21,transparent 65%) padding-box,linear-gradient(125deg,#fffaf5,#fff 65%,#faf9f7) padding-box,linear-gradient(125deg,#ffb56f,#e7edf3 55%,#ffd4af) border-box}
@media(max-width:1250px){.club .team-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.club .team-overview{grid-template-columns:minmax(0,1fr);gap:12px}}

/* Shared section headings above the team fixture and statistics. */
.club .team-next-section,.club .team-overview-section{grid-column:1/-1;min-width:0}
.club .team-next-section>.next-feature,.club .team-overview-section>.team-overview{margin-bottom:0}

/* Consistent breathing room between the main sections of a team summary. */
.club .viewlayout:has(>.team-overview-section){row-gap:40px}
.club .viewlayout:has(>.team-overview-section)>:is(.team-next-section,.team-overview-section,.club-recent-section,.competition-components,.club-players-section){width:100%;margin-block:0}
@media(max-width:760px){.club .viewlayout:has(>.team-overview-section){gap:28px}}

/* Full-card native link; venue and previous-match links remain independent. */
.club .next-feature{position:relative;isolation:isolate}
.club .next-feature-hitarea{position:absolute;inset:0;z-index:2;border-radius:inherit;cursor:pointer}
.club .next-feature :is(.venue-address,.h2h-dot){position:relative;z-index:3}
.club .next-feature:has(.next-feature-link:focus-visible){outline:3px solid var(--site-focus);outline-offset:4px}
.club .next-feature:has(.next-feature-hitarea:hover) .next-feature-link{filter:brightness(1.07)}

/* Ranked podium steps; secondary positions stay visually quieter. */
.club .team-rank-track{padding-top:48px;padding-bottom:14px;min-height:100px}
.club .team-rank-track::before{top:auto;bottom:27px;transform:none}
.club .team-rank-track>.rank-position:not(.podium-1,.podium-2,.podium-3,.is-current){width:76%;justify-self:center;font-size:clamp(8px,2.8cqi,12px);font-weight:600}
.club .team-rank-track>.podium-1{--step-height:30px;translate:0 -30px}
.club .team-rank-track>.podium-2{--step-height:20px;translate:0 -20px}
.club .team-rank-track>.podium-3{--step-height:10px;translate:0 -10px}
.club .rank-position:is(.podium-1,.podium-2,.podium-3)::before{content:"";position:absolute;top:calc(100% + 4px);left:-3px;right:-3px;height:var(--step-height);border:1px solid var(--medal-edge);border-radius:3px 3px 0 0;background:linear-gradient(110deg,var(--medal-light),var(--medal-dark));box-shadow:inset 0 1px 0 #ffffffa0,0 3px 7px var(--medal-glow);z-index:-1}
.club .rank-position:is(.podium-1,.podium-2,.podium-3)::after{display:none}

/* Ground the remaining ranks at the foot of the podium. */
.club .team-rank-track::before{display:none}
.club .team-rank-track{align-items:end}
.club .team-rank-track>.rank-position:not(.podium-1,.podium-2,.podium-3){translate:0 6px}
.club .team-rank-track>.is-current{transform:scale(1.18);transform-origin:center bottom}

/* Shared competition standings: bright panel, integrated tabs and podium bands. */
.club .competition-ranking.panel{padding:20px 18px 14px;border:0;border-radius:20px;background:linear-gradient(135deg,#fff,#fafbfd);box-shadow:0 12px 30px #26384910;margin-bottom:0;min-width:0}
.club .competition-ranking>header{display:flex;align-items:center;gap:20px;padding:2px 14px 22px;margin:0}
.club .ranking-heading-icon{display:grid;place-items:center;width:58px;height:58px;flex:0 0 58px;border-radius:16px;background:linear-gradient(135deg,#fbf5e9,#f6ead1);color:#c89639}
.club .ranking-heading-icon svg{width:36px;height:36px}
.club .ranking-heading-copy{flex:1;min-width:0}
.club .competition-ranking>header h2{font:750 clamp(21px,2vw,30px)/1.2 "Segoe UI",sans-serif;color:#16253d;letter-spacing:-.65px;margin:0}
.club .competition-ranking .ranking-heading-copy .data-note{padding:0;border:0;background:none;margin:5px 0 0;color:#7a89a0;font-size:13px;font-style:italic;line-height:1.45}
.club .competition-ranking .competition-status{margin:0 0 0 auto;color:#7c8ca5;font:500 10px/1.4 "Segoe UI",sans-serif;letter-spacing:.4px;max-width:140px;text-align:right}
.club .competition-ranking .competition-ranking-tabs{display:flex;flex-shrink:0;gap:0;padding:0;margin:0 12px;border:1px solid #dce3eb;border-radius:13px;background:linear-gradient(#f4f5f7,#edf0f3);box-shadow:0 4px 12px #30435a08;width:auto}
.club .competition-ranking-tabs button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:11px 20px;color:#718098;border:1px solid transparent;border-radius:12px;font-size:13px;font-weight:700}
.club .competition-ranking-tabs button svg{width:21px;height:21px}
.club .competition-ranking-tabs button[aria-pressed=true]{background:#fff;color:#19263b;border-color:#efd3a0;box-shadow:0 3px 9px #bea16a22}
.club .competition-ranking-tabs button[aria-pressed=true] svg{color:#b48013}
.club .competition-ranking .tablewrap{border:0;border-radius:15px;background:linear-gradient(120deg,#fff,#fcfdff);padding:6px 12px 10px;box-shadow:0 4px 18px #33455d0d}
.club .competition-ranking .standings-table{width:100%;border-collapse:separate;border-spacing:0 5px;font-size:14px;color:#344661;font-variant-numeric:tabular-nums}
.club .competition-ranking .standings-table :is(th,td){padding:12px 12px;border-bottom:1px solid #e6ebf1;vertical-align:middle}
.club .competition-ranking .standings-table thead th{font:650 10px/1.4 "Segoe UI",sans-serif;letter-spacing:.4px;text-transform:uppercase;color:#64758e;padding-block:10px;background:transparent;border:0}
.club .competition-ranking .standings-table .standing-rank-cell{width:8%;min-width:74px;text-align:center;white-space:nowrap;color:#697a93}
.club .competition-ranking .standings-table :is(.standing-team-cell,.standing-team-heading){width:46%;min-width:230px;text-align:left;box-shadow:none;background-color:var(--table-cell-bg,#fff)}
.club .competition-ranking .standing-team-identity{gap:20px;line-height:1.4}
.club .competition-ranking .standing-team-logo{width:32px;height:32px;flex-basis:32px}
.club .competition-ranking .standing-team-cell{font-size:15px;font-weight:600;color:#1b2c47}
.club .competition-ranking .standing-team-name a{color:inherit}
.club .competition-ranking .standings-table .standing-won{color:#138345;font-weight:650}
.club .competition-ranking .standings-table .standing-lost{color:#d83638;font-weight:650}
.club .competition-ranking .standings-table .standing-points{font-size:16px;font-weight:750;color:#142640}
.club .competition-ranking .standings-table :is(.standing-played,.standing-points,.standing-sets){white-space:nowrap}
.club .competition-ranking .standings-table tbody tr.podium-row-1{--podium-background:linear-gradient(100deg,#fbefd4,#fffaf0 65%,#faeac7);--table-cell-bg:#fcf2dc}
.club .competition-ranking .standings-table tbody tr.podium-row-2{--podium-background:linear-gradient(100deg,#e9edf1,#f7f9fb 65%,#e7ebf0);--table-cell-bg:#edf0f4}
.club .competition-ranking .standings-table tbody tr.podium-row-3{--podium-background:linear-gradient(100deg,#f2ded3,#fcf4ef 65%,#f3e2d9);--table-cell-bg:#f5e6de}
.club .competition-ranking .standings-table tbody tr.podium-row{background-image:var(--podium-background);background-size:100% 100%;box-shadow:none}
.club .competition-ranking .standings-table tbody tr.podium-row>:is(th,td){border-bottom:0}
.club .competition-ranking .standings-table tbody tr>:first-child{border-radius:9px 0 0 9px}
.club .competition-ranking .standings-table tbody tr>:last-child{border-radius:0 9px 9px 0}
.club .competition-ranking .rank-badge{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:66px;padding:8px 10px;border-radius:8px;background:#ffffff38}
.club .competition-ranking .podium-icon{width:24px;height:24px}
.club .competition-ranking .rank-number{font-size:15px}
.club .competition-ranking .standings-table tr.competition-followed{--table-cell-bg:#e4f0e6;background:#e4f0e6;background-image:linear-gradient(100deg,#eaf4ec,#deede2);font-weight:600;box-shadow:inset 4px 0 #16853f}
.club .competition-ranking .standings-table tr.competition-followed>:is(th,td){border-bottom:0}
.club .competition-ranking .standings-table tr.competition-followed .standing-team-cell{background-image:none;background-color:#e4f0e6;font-weight:750}
.club .competition-ranking .competition-followed .standing-rank-cell>.rank-number{display:inline-block;padding:6px 10px;border-radius:7px;background:#c1dfc7;color:#193e32;font-weight:750}
.club .competition-ranking .standings-table tr[data-standing-route]:hover{outline:1px solid #c9d5df;outline-offset:-1}
.club .competition-ranking>.muted,.club .competition-ranking [role=tabpanel]>.muted{font-size:11px;color:#7b8ba3;margin:14px 8px 4px;line-height:1.5}
@media(max-width:1200px){.club .competition-ranking>header{flex-wrap:wrap;gap:14px}.club .ranking-heading-copy{flex-basis:65%}.club .competition-ranking .competition-ranking-tabs{margin:0}.club .competition-ranking .competition-status{max-width:none}}
@media(max-width:760px){.club .competition-ranking.panel{padding:16px 10px}.club .competition-ranking>header{padding:0 4px 16px;gap:12px}.club .ranking-heading-icon{width:44px;height:44px;flex-basis:44px;border-radius:12px}.club .ranking-heading-icon svg{width:28px;height:28px}.club .competition-ranking>header h2{font-size:21px}.club .competition-ranking .ranking-heading-copy .data-note{font-size:11px}.club .competition-ranking .competition-status{text-align:left;font-size:9px}.club .competition-ranking .tablewrap{padding:4px 6px 8px}.club .competition-ranking .standings-table :is(th,td){padding:11px 8px}.club .competition-ranking .standings-table :is(.standing-team-cell,.standing-team-heading){width:38vw;min-width:150px;max-width:230px}.club .competition-ranking .standing-team-identity{gap:9px}.club .competition-ranking .standing-team-cell{font-size:12px}.club .competition-ranking .standings-table .standing-rank-cell{min-width:62px}.club .competition-ranking .rank-badge{min-width:0;padding:6px;gap:4px}}

/* Compact standings and a stable first-open evolution placeholder. */
.club .competition-ranking .standings-table :is(th,td){padding-block:8px}
.club .competition-ranking .standings-table{border-spacing:0 3px}
.club .competition-ranking .standing-team-logo{width:28px;height:28px;flex-basis:28px}
.club .competition-ranking .rank-badge{padding-block:5px}
.ranking-evolution-loading{min-height:calc(var(--loading-chart-height) + 110px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border-radius:14px;background:linear-gradient(120deg,#f8fafc,#fff);color:#718098;font-size:13px}
.ranking-loading-spinner{width:26px;height:26px;border:3px solid #e8edf2;border-top-color:#c89639;border-radius:50%;animation:ranking-loading-spin .8s linear infinite}
@keyframes ranking-loading-spin{to{transform:rotate(360deg)}}
@media(max-width:760px){.ranking-evolution-loading{min-height:calc(var(--loading-chart-height) * 1.5 + 110px)}}
@media(prefers-reduced-motion:reduce){.ranking-loading-spinner{animation:none}}

/* Evolution shares the bright standings surface and subtle sporting highlights. */
.club .ranking-evolution-all{padding:16px;border:0;border-radius:16px;background:linear-gradient(125deg,#fff,#f7fafc);box-shadow:0 4px 18px #33455d0d;color:#344661}
.club .ranking-evolution-all>figcaption strong{font-size:15px;color:#23344d}
.club .ranking-evolution-hint,.club .ranking-evolution-notes{color:#7b8ba3}
.club .ranking-evolution-scroll{border:0;border-radius:12px;background:linear-gradient(135deg,#fbfdff,#f3f7fa);padding:18px 10px 8px;max-height:560px;box-shadow:inset 0 1px 8px #d6e1ec16}
.club .ranking-evolution-canvas{grid-template-columns:44px minmax(320px,1fr) 250px;gap:16px}
.club .ranking-evolution-podium{right:0}
.club .ranking-evolution-podium>span{height:27px;border-radius:8px;background:currentColor;opacity:.12}
.club .ranking-evolution-podium>.podium-1{color:#f3bd54}
.club .ranking-evolution-podium>.podium-2{color:#58b9ef}
.club .ranking-evolution-podium>.podium-3{color:#c38f64}
.club .ranking-evolution-ranks .rank-badge{padding:3px;min-width:0;background:#ffffff60;border-radius:7px}
.club .ranking-evolution-ranks .rank-unit{display:none}
.club .ranking-evolution-grid line{stroke:#dce5ed;stroke-width:.7;stroke-dasharray:none;opacity:.55}
.club .ranking-evolution-grid text{fill:#788da4;font-size:10px}
.club .ranking-evolution-series{--curve-width:1.4;--point-radius:2.6px}
.club .ranking-evolution-series .ranking-evolution-path{filter:drop-shadow(0 1px 2px color-mix(in srgb,var(--series-color) 25%,transparent))}
.club .ranking-evolution-series circle{stroke:#fff;stroke-width:1;filter:drop-shadow(0 0 2px color-mix(in srgb,var(--series-color) 28%,transparent))}
.club .ranking-evolution-series.is-consulted{--curve-width:2.8;--point-radius:4px}
.club .ranking-evolution-series.is-consulted .ranking-evolution-path{filter:drop-shadow(0 0 4px #f2736855)}
.club .ranking-evolution-leader{opacity:.18}
.club .ranking-evolution-end{color:#23344d;font-size:11px}
.club .ranking-evolution-end>span{display:flex;align-items:center;gap:9px;min-height:28px;padding:3px 7px;border:0;border-radius:8px}
.club .ranking-evolution-end input:checked+span{background:color-mix(in srgb,var(--series-color) 13%,#fff);box-shadow:0 2px 9px color-mix(in srgb,var(--series-color) 10%,transparent);border:0;font-weight:700;color:#21314b}
.club .ranking-team-check{display:grid;place-items:center;width:13px;height:13px;flex:0 0 13px;border:1px solid #cdd7e2;border-radius:4px;background:#fff;box-shadow:0 1px 3px #23374e12}
.club .ranking-evolution-end input:checked+span .ranking-team-check{background:var(--series-color);border-color:var(--series-color)}
.club .ranking-evolution-end input:checked+span .ranking-team-check::after{content:"";width:6px;height:3px;border-left:1.5px solid white;border-bottom:1.5px solid white;transform:rotate(-45deg) translateY(-1px)}
.club .ranking-team-logo{position:relative;display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:#e7eef6;color:#617994;font-size:8px;overflow:hidden}
.club .ranking-team-logo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#fff}
.club .ranking-team-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.club .ranking-evolution-values{border-top:1px solid #e5ebf2}
.club .ranking-evolution-values summary{color:#6d8099;font-size:12px}
@media(max-width:760px){.club .ranking-evolution-all{padding:12px 8px}.club .ranking-evolution-canvas{grid-template-columns:38px minmax(320px,1fr) 210px;gap:12px}.club .ranking-evolution-podium{right:0}.club .ranking-evolution-podium>span{height:40px}.club .ranking-evolution-end>span{min-height:40px}.club .ranking-evolution-end{font-size:10px}}

/* Static team legend: only the consulted team is highlighted. */
.club .ranking-evolution-end,.club .ranking-evolution-series circle{cursor:default}
.club .ranking-evolution-end.is-consulted>span{background:#fce7e3;box-shadow:0 2px 9px #eb594b16;font-weight:700;color:#823b35}

/* Compact charts keep every rank and curve; endpoint identities open on focus. */
.ranking-evolution-all{container-type:inline-size}
.ranking-evolution-viewport{min-width:0}
.ranking-evolution-window-unknown{font-size:11px;color:#718098;margin:10px 0 0}
.ranking-evolution-end:focus-visible{outline:2px solid var(--series-color);outline-offset:2px;border-radius:8px}
@media(max-width:480px){
 .club .competition-ranking .competition-ranking-tabs{width:100%;min-width:0}
 .club .competition-ranking-tabs button{flex:1;min-width:0;padding:10px 6px;gap:6px;font-size:12px}
 .club .competition-ranking-tabs button svg{width:18px;height:18px;flex-shrink:0}
}
@container(max-width:660px){
 .ranking-evolution-scroll,.club .ranking-evolution-scroll{overflow:visible;max-height:none;padding:12px 4px 4px}
 .ranking-evolution-canvas,.club .ranking-evolution-canvas{width:100%;min-width:0;grid-template-columns:26px minmax(0,1fr) 36px;gap:7px;height:calc(var(--chart-height) * 1.5)}
 .ranking-evolution-plot,.ranking-evolution-ranks,.ranking-evolution-labels{height:100%}
 .ranking-evolution-viewport{height:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#b7c8d8 transparent;touch-action:pan-x pan-y}
 .ranking-evolution-viewport:focus-visible{outline:2px solid var(--site-focus);outline-offset:2px;border-radius:6px}
 .ranking-evolution-viewport .ranking-evolution-plot{max-width:none}
 .ranking-evolution-viewport .ranking-evolution-leader{display:none}
 .ranking-evolution-end>span,.club .ranking-evolution-end>span{display:flex;align-items:center;justify-content:center;min-height:44px;padding:0;gap:0}
 .ranking-evolution-labels .ranking-team-name{position:absolute;right:42px;width:max-content;max-width:clamp(130px,50cqi,300px);padding:9px 12px;border-radius:10px;background:#fff;box-shadow:0 4px 20px #26384930;white-space:normal;overflow-wrap:anywhere;color:#344661;line-height:1.4;visibility:hidden;pointer-events:none}
 .ranking-evolution-labels .ranking-evolution-end:focus{z-index:5}
 .ranking-evolution-labels .ranking-evolution-end:focus .ranking-team-name{visibility:visible}
 .ranking-evolution-labels .ranking-team-logo{position:relative;display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:50%;background:#e7eef6;color:#617994;font-size:10px;overflow:hidden}
 .ranking-evolution-labels .ranking-team-logo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#fff}
 .ranking-evolution-podium>span,.club .ranking-evolution-podium>span{height:40px}
}

/* Shared calendar period switch: compact, clear and touch-friendly. */
.club :is(.calendar-filters,.analysis-filter).calendar-period-switch{display:flex;width:fit-content;max-width:100%;gap:5px;padding:5px;margin:0 0 24px;border:0;border-radius:16px;background:#eef1f5;box-shadow:inset 0 1px 3px #26384908,0 5px 18px #26384908;flex-wrap:nowrap;align-items:stretch}
.club .calendar-period-switch :is(a,button){display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;padding:9px 18px;border:0;border-radius:12px;color:#627185;background:transparent;font-size:13px;font-weight:650;line-height:1.3;transition:background .15s,box-shadow .15s,color .15s}
.club .calendar-period-switch :is(a,button) svg{width:18px;height:18px;flex-shrink:0}
.club .calendar-period-switch :is(a,button):hover{background:#ffffffb3;color:#344357}
.club .calendar-period-switch :is(a,button):is([aria-current=page],[aria-pressed=true]){background:#fff;color:var(--site-primary);box-shadow:0 3px 10px #26384914,inset 0 0 0 1px color-mix(in srgb,var(--site-primary) 18%,transparent)}
.club .calendar-period-switch :is(a,button):focus-visible{outline:2px solid var(--site-primary);outline-offset:3px}
@media(max-width:600px){.club :is(.calendar-filters,.analysis-filter).calendar-period-switch{width:100%;gap:3px;padding:4px;margin-bottom:20px}.club .calendar-period-switch :is(a,button){flex:1;min-width:0;padding:9px 6px;gap:6px;font-size:11px}.club .calendar-period-switch :is(a,button) svg{width:16px;height:16px}}
@media(prefers-reduced-motion:reduce){.club .calendar-period-switch :is(a,button){transition:none}}

.club .calendar-match-section{min-width:0;width:100%}
.club .calendar-match-section .section-heading{margin-bottom:20px}
.club .calendar-match-section .match-fixture-time{display:block;margin-top:5px;font-size:11px;font-weight:700;color:#49586a;white-space:nowrap}
.club .calendar-match-section .match-upcoming-vs{font-size:12px;font-weight:750;letter-spacing:1px;color:#8290a1}
.club .calendar-match-section .match-venue-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:#718098}

.club .performance-toolbar .analysis-filter.calendar-period-switch{margin:0;flex-wrap:nowrap}
.club .performance-toolbar{align-items:center;gap:12px;margin-bottom:4px}
@media(max-width:600px){.club .performance-toolbar .analysis-filter.calendar-period-switch{flex:1 1 100%;width:100%}.club .performance-toolbar .calendar-period-switch button{white-space:normal}}

.club .analysis-sample{display:flex;align-items:center;gap:10px;width:fit-content;max-width:100%;margin:0;padding:11px 16px;border-radius:13px;background:color-mix(in srgb,var(--site-primary) 7%,#fff);color:#465365;box-shadow:0 3px 12px #26384908;font-size:14px;line-height:1.4}
.club .analysis-sample svg{width:21px;height:21px;flex-shrink:0;color:var(--site-primary)}
.club .analysis-sample strong{font-weight:650}

.club .analysis-samples{display:flex;flex-wrap:wrap;align-items:center;gap:10px;min-width:0}

/* Performance summaries share the overview cards and their coloured glow. */
.club .analysis-insights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.club .performance-insight-blue{--glow:75 150 245;--accent-ink:#3676c6}
.club .performance-insight-orange{--glow:255 152 70;--accent-ink:#b86a24}
.club .performance-insight-purple{--glow:166 104 234;--accent-ink:#8350bb}
.club .performance-insight>header{padding:0;gap:14px;margin-bottom:20px}
.club .performance-insight>header>div{min-width:0}
.club .performance-insight .performance-insight-value{display:block;font-size:38px;line-height:1.12;letter-spacing:-1px;color:#283548;font-weight:750}
.club .performance-insight-value small{font-size:20px;color:#7b8797;font-weight:500;letter-spacing:0}
.club .performance-insight h3{font-size:14px;margin-top:6px;font-weight:600}
.club .performance-insight-note{font-size:12px;line-height:1.5;color:#718096;margin:13px 0 0}
.club .performance-points-bar{display:flex;height:13px;gap:3px;border-radius:8px;background:#e9eef3}
.club .performance-points-bar>span{min-width:0;border-radius:3px}
.club .performance-points-bar>span:first-child{border-radius:8px 3px 3px 8px}
.club .performance-points-bar>span:last-child{border-radius:3px 8px 8px 3px}
.club .performance-points-bar .is-won{background:linear-gradient(90deg,#8be0b5,#36b680);box-shadow:0 0 10px #3fbd8050}
.club .performance-points-bar .is-lost{background:linear-gradient(90deg,#e98089,#f0a9ae);box-shadow:0 0 10px #e9808940}
.club .performance-points-labels{display:grid;text-align:center;gap:3px;margin-top:12px;font-size:12px;font-weight:650;color:#28805c}
.club .performance-points-labels>span:last-child{color:#b95160}
.club .performance-set-dots{display:flex;flex-wrap:wrap;gap:7px}
.club .performance-set-dot{display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border-radius:50%;font-size:10px;font-weight:750;text-decoration:none;box-shadow:inset 0 1px 0 #fff9,0 0 9px #42bd7935;background:linear-gradient(#e0faeb,#bdeacc);color:#176c41}
.club .performance-set-dot.is-lost{background:linear-gradient(#ffe7e8,#f7c7cc);color:#a13849;box-shadow:inset 0 1px 0 #fff9,0 0 9px #e5748335}
.club .performance-set-dot.is-muted{background:linear-gradient(#eef1f5,#dce2eb);color:#64748b;box-shadow:0 0 8px #94a3b825}
.club .performance-set-dot:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px}
@media(max-width:900px){.club .analysis-insights{grid-template-columns:1fr}.club .performance-insight .performance-insight-value{font-size:34px}}

.club .analysis-sample.analysis-sample-sets{background:#edf4ff;color:#456388;box-shadow:0 3px 12px #447bc510}
.club .analysis-sample-sets svg{color:#4c83c8}

.club .performance-points-labels{grid-template-columns:1fr 1fr}

/* Progression uses the same luminous surface as the overview statistics. */
.club .analysis-card:is(.analysis-progression,.analysis-matrix,.analysis-moments,.analysis-runs,.analysis-positions,.analysis-venue-comparison,.analysis-seasons){--glow:75 150 245;--line:#e1e8f0;--analysis-win:#3cba88;--analysis-loss:#e7828e;color:#475569;border-radius:16px;padding:22px;background:radial-gradient(ellipse at 0 0,rgb(var(--glow)/.09),transparent 60%) padding-box,linear-gradient(125deg,#fff,#fafcff) padding-box,linear-gradient(125deg,rgb(var(--glow)/.4),#e7edf3 45%,rgb(var(--glow)/.18)) border-box;box-shadow:0 8px 24px #24344b0b}
.club :is(.analysis-progression,.analysis-matrix,.analysis-moments,.analysis-runs,.analysis-positions,.analysis-venue-comparison,.analysis-seasons) .analysis-heading{margin-bottom:20px}
.club :is(.analysis-progression,.analysis-matrix,.analysis-moments,.analysis-runs,.analysis-positions,.analysis-venue-comparison,.analysis-seasons) .analysis-heading h3{font:700 22px/1.3 "Segoe UI",sans-serif;color:#435065;letter-spacing:-.4px}
.club :is(.analysis-progression,.analysis-matrix,.analysis-moments,.analysis-runs,.analysis-positions,.analysis-venue-comparison,.analysis-seasons) .analysis-note{color:#7a8798;font-size:12px;line-height:1.5}
.club .analysis-progression .plot-scroll{border-radius:12px;background:linear-gradient(145deg,#f5f9fd,#fcfdff);padding:10px 0;scrollbar-color:#c2cfdf #f0f4f9}
.club .analysis-progression .plot-axis text{fill:#718096}
.club .analysis-progression .plot-grid{stroke:#dde6ef;stroke-dasharray:4 5}
.club .analysis-progression .plot-zero{stroke:#8fa2b6;stroke-opacity:.7;stroke-width:1.2}
.club .analysis-progression .margin-bar{rx:5px}
.club .analysis-progression .margin-bar.positive{fill:#48bd8b;filter:drop-shadow(0 0 5px #42bd7950)}
.club .analysis-progression .margin-bar.negative{fill:#e7828e;filter:drop-shadow(0 0 5px #e7828e45)}
.club .analysis-progression .margin-bar:hover{stroke:#fff;stroke-width:2;filter:drop-shadow(0 0 7px #71809660)}
.club .analysis-progression .plot-result.won{fill:#28805c}.club .analysis-progression .plot-result.lost{fill:#b95160}
.club :is(.analysis-progression,.analysis-matrix,.analysis-moments,.analysis-runs,.analysis-positions,.analysis-venue-comparison,.analysis-seasons) .analysis-legend{color:#65758b;font-size:12px;margin-top:16px;gap:20px}
.club .analysis-progression .analysis-data{border-top:1px solid #e3eaf2;margin-top:18px;padding-top:12px;color:#64748b}
.club .analysis-progression .analysis-data summary{font-size:12px;font-weight:600;cursor:pointer}
.club .analysis-progression .analysis-table-scroll{scrollbar-color:#c2cfdf #f0f4f9}
.club .analysis-progression :is(a,th,td,caption){color:#475569}
.club .analysis-progression a:hover{color:var(--site-primary)}
.club .analysis-progression :is(a,summary):focus-visible{outline:2px solid #4c83c8;outline-offset:3px}
@media(max-width:600px){.club .analysis-card:is(.analysis-progression,.analysis-matrix,.analysis-moments,.analysis-runs,.analysis-positions,.analysis-venue-comparison,.analysis-seasons){padding:16px}.club :is(.analysis-progression,.analysis-matrix,.analysis-moments,.analysis-runs,.analysis-positions,.analysis-venue-comparison,.analysis-seasons) .analysis-legend{gap:10px;flex-wrap:wrap}}

.club .analysis-progression .plot-axis .progression-bar-value{font-size:11px;font-weight:700;fill:#28805c;paint-order:stroke;stroke:#f8fbfe;stroke-width:3px;stroke-linejoin:round}
.club .analysis-progression .plot-axis .progression-bar-value.negative{fill:#b95160}

/* Set matrix: light rows, compact score tiles, preserved sticky labels. */
.club .analysis-matrix{--analysis-win:#39ac7c;--analysis-loss:#d87383}
.club .analysis-matrix .matrix-scroll{border-radius:12px;background:#f8fafc;scrollbar-color:#c2cfdf #f0f4f9;padding:8px}
.club .analysis-matrix .set-matrix{min-width:530px}
.club .analysis-matrix :is(.set-matrix-head,.set-matrix-row){gap:8px;grid-template-columns:minmax(200px,1.7fr) repeat(var(--sets),minmax(52px,1fr))}
.club .analysis-matrix .set-matrix-head{background:#f8fafc;color:#7b899b;font:650 11px/1.4 "Segoe UI",sans-serif;padding:10px 0;margin-bottom:5px}
.club .analysis-matrix .set-matrix-row{padding:7px 0;margin:0;border-bottom:1px solid #e7edf3}
.club .analysis-matrix .set-matrix-row:last-child{border-bottom:0}
.club .analysis-matrix :is(.matrix-opponent,.set-matrix-head>span:first-child){background:#f8fafc;box-shadow:5px 0 9px #f8fafce6;padding-left:10px}
.club .analysis-matrix .matrix-opponent{gap:4px;color:#435065}
.club .analysis-matrix .matrix-opponent strong{font-size:13px;font-weight:650;line-height:1.4}
.club .analysis-matrix .matrix-opponent small{font-size:10px;color:#7b899b}
.club .analysis-matrix .matrix-opponent:hover{color:var(--site-primary)}
.club .analysis-matrix .set-cell{min-height:42px;border-radius:9px;font:700 13px/1.3 "Segoe UI",sans-serif;font-variant-numeric:tabular-nums;border:0}
.club .analysis-matrix .set-cell.set-win{background:linear-gradient(130deg,#ecfaf3,#d9f2e6);color:#23734e;box-shadow:inset 0 1px 0 #fff,0 2px 7px #38a7770e}
.club .analysis-matrix .set-cell.set-loss{background:linear-gradient(130deg,#fff1f3,#f7e0e5);color:#a94358;box-shadow:inset 0 1px 0 #fff,0 2px 7px #d16b800e}
.club .analysis-matrix .set-cell.set-missing{background:#eef2f6;color:#99a4b3;font-weight:400}
.club .analysis-matrix .set-cell i{display:grid;place-items:center;right:4px;bottom:3px;width:10px;height:10px;border-radius:50%;background:#7e8ba0;color:#fff;font-size:10px;line-height:10px}
.club .analysis-matrix a.set-cell:hover{outline:1px solid currentColor;outline-offset:-1px;filter:brightness(.98)}
.club .analysis-matrix a:focus-visible{outline:2px solid #4c83c8;outline-offset:2px}
@media(max-width:600px){.club .analysis-matrix :is(.set-matrix-head,.set-matrix-row){grid-template-columns:minmax(160px,1.7fr) repeat(var(--sets),minmax(52px,1fr));gap:6px}.club .analysis-matrix .matrix-opponent strong{font-size:12px}}

.club .analysis-matrix .matrix-opponent{flex-direction:row;align-items:center;justify-content:flex-start;gap:10px}
.club .analysis-matrix .matrix-team-copy{display:flex;flex-direction:column;gap:4px;min-width:0}
.club .analysis-matrix .matrix-team-logo{position:relative;display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:#e1ebfa;color:#4d6a94;font-size:11px;font-weight:700;overflow:hidden}
.club .analysis-matrix .matrix-team-logo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#f8fafc}

.club .analysis-matrix .set-close-marker{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:12px;height:12px;border-radius:50%;background:#7e8ba0;flex:0 0 12px}
.club .analysis-matrix .set-close-marker::after{content:"";display:block;width:4px;height:4px;border-radius:50%;background:#fff}
.club .analysis-matrix .legend-close{display:inline-flex;align-items:center;gap:6px}
.club .analysis-matrix .legend-close::before{display:none}

/* Score swings: light chart and controls, with the original point geometry. */
.club .analysis-moments{--chart-bg:#f7fafd;--analysis-win-ink:#2a9d70;--analysis-loss-ink:#d36177;--analysis-win:#3cba88;--analysis-loss:#e7828e}
.club .analysis-moments .analysis-match-picker{display:flex;align-items:center;gap:14px;flex-wrap:wrap;color:#718096;font-size:12px;font-weight:600;margin:0 0 18px}
.club .analysis-moments .analysis-match-picker select{flex:0 1 520px;background:#fff;border:1px solid #e0e7f0;border-radius:11px;padding:12px 14px;color:#435065;box-shadow:0 3px 10px #26384908;font:600 13px "Segoe UI",sans-serif;min-height:44px}
.club .analysis-moments .analysis-swing{background:linear-gradient(145deg,#f4f8fc,#fcfdff);border-radius:13px;padding:8px 0;box-shadow:inset 0 1px 4px #d6e1ec16}
.club .analysis-moments .analysis-swing-scroll{scrollbar-color:#c2cfdf #f0f4f9}
.club .analysis-moments .plot-axis text{fill:#718096}
.club .analysis-moments .plot-grid{stroke:#dde6ef;stroke-dasharray:4 5}
.club .analysis-moments .plot-zero{stroke:#8fa2b6;stroke-opacity:.7;stroke-width:1.2}
.club .analysis-moments .swing-line.positive{filter:drop-shadow(0 0 3px #3cba8835)}
.club .analysis-moments .swing-line.negative{filter:drop-shadow(0 0 3px #d3617735)}
.club .analysis-moments .swing-set-legend{gap:8px;padding:8px 12px 18px;color:#627185}
.club .analysis-moments .swing-set-legend>button{border:1px solid #e3eaf2;border-radius:10px;background:#fff;padding:8px 11px;min-height:38px;font-size:12px;box-shadow:0 2px 6px #26384906}
.club .analysis-moments .swing-set-legend :is(.is-highlighted,[aria-pressed=true]){background:#edf4ff;color:#386da9;border-color:#b7d2ef;box-shadow:0 2px 9px #4c83c815}
.club .analysis-moments .swing-set-legend line,.club .analysis-moments .swing-set-legend g{stroke:#8093ab}
.club .analysis-moments .swing-set-legend b{font:700 12px "Segoe UI",sans-serif}
.club .analysis-moments .analysis-point-readout{color:#53657d;font:500 12px/1.5 "Segoe UI",sans-serif;padding:12px 16px;margin:0 12px;background:#edf2f8;border-radius:10px;min-height:42px;box-sizing:border-box}
.club .analysis-moments .swing-facts{gap:10px;color:#718096;margin-top:16px}
.club .analysis-moments .swing-facts>span{background:#f3f6fa;border-radius:10px;padding:11px 14px;font-size:12px}
.club .analysis-moments .swing-facts b{font-size:17px;font-weight:700}
.club .analysis-moments .swing-facts .analysis-won{color:#2a9d70}.club .analysis-moments .swing-facts .analysis-lost{color:#c65e72}
.club .analysis-moments .swing-facts>a{padding:11px 14px;border-radius:10px;background:#fff4ec;color:var(--site-primary);font-size:12px;font-weight:650;text-decoration:none}
.club .analysis-moments .analysis-data{border-top:1px solid #e3eaf2;margin-top:18px;padding-top:12px;color:#64748b}
.club .analysis-moments .analysis-data summary{font-size:12px;font-weight:600;cursor:pointer}
.club .analysis-moments .analysis-table-scroll{scrollbar-color:#c2cfdf #f0f4f9}
.club .analysis-moments :is(th,td,caption){color:#475569}
.club .analysis-moments :is(select,button,summary,a):focus-visible{outline:2px solid #4c83c8;outline-offset:3px}
@media(max-width:600px){.club .analysis-moments .analysis-match-picker select{flex-basis:100%;width:100%}.club .analysis-moments .swing-facts>a{margin-left:0}.club .analysis-moments .swing-set-legend{justify-content:flex-start}}

/* Each set keeps its own colour; background zones communicate lead/deficit. */
.club .analysis-moments .swing-zone-lead{fill:#37b77e;opacity:.055}
.club .analysis-moments .swing-zone-deficit{fill:#dc7181;opacity:.055}
.club .analysis-moments .plot-zero{stroke:#728399;stroke-width:1.6;stroke-opacity:.85}
.club .analysis-moments .swing-line:is(.positive,.negative){stroke:var(--set-color);filter:drop-shadow(0 0 3px color-mix(in srgb,var(--set-color) 25%,transparent))}
.club .analysis-moments .curve-marker:is(.positive,.negative){stroke:var(--set-color);fill:#fff}
.club .analysis-moments .swing-point:is(.positive,.negative):hover{fill:var(--set-color);stroke:#fff}
.club .analysis-moments .swing-set-legend>button{color:var(--set-color)}
.club .analysis-moments .swing-set-legend :is(line,g){stroke:var(--set-color)}
.club .analysis-moments .swing-set-legend :is(.is-highlighted,[aria-pressed=true]){color:var(--set-color);background:color-mix(in srgb,var(--set-color) 9%,#fff);border-color:color-mix(in srgb,var(--set-color) 45%,#fff);box-shadow:0 2px 9px color-mix(in srgb,var(--set-color) 12%,transparent)}
.club .analysis-moments [data-analysis-curve]{transition:opacity .12s}
@media(prefers-reduced-motion:reduce){.club .analysis-moments [data-analysis-curve]{transition:none}}

.club .analysis-moments .swing-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 14px 16px;flex-wrap:wrap}
.club .analysis-moments .swing-toolbar .analysis-match-picker{flex:0 1 auto;margin:0;gap:10px;flex-wrap:nowrap}
.club .analysis-moments .swing-toolbar .analysis-match-picker select{flex:0 1 auto;width:auto;min-width:0;max-width:100%}
.club .analysis-moments .swing-toolbar .swing-set-legend{flex:1;min-width:0;padding:0;justify-content:center}
@media(max-width:760px){.club .analysis-moments .swing-toolbar .analysis-match-picker{flex-basis:100%}.club .analysis-moments .swing-toolbar .swing-set-legend{justify-content:center}}

/* Consecutive-point series: paired tracks and contrasting record cards. */
.club .analysis-runs .run-row{grid-template-columns:76px minmax(0,1fr);gap:18px;padding:12px 14px;margin:0;border-bottom:1px solid #e7edf3;color:#617187;font:600 12px "Segoe UI",sans-serif}
.club .analysis-runs .run-row:nth-child(even){background:#f7f9fc;border-radius:10px}
.club .analysis-runs .run-line{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:12px;margin:7px 0}
.club .analysis-runs .run-track{display:block;height:9px;border-radius:6px;background:#eaf0f5}
.club .analysis-runs .run-line i{height:9px;min-height:0;border-radius:6px}
.club .analysis-runs .own-run{background:linear-gradient(90deg,#91dfb8,#39b681);box-shadow:0 0 9px #3fbd8035}
.club .analysis-runs .other-run{background:linear-gradient(90deg,#f0b2ba,#dd7a8a);box-shadow:0 0 9px #dd7a8a30}
.club .analysis-runs .run-line b{font:700 12px "Segoe UI",sans-serif;color:#27805a;text-align:right}
.club .analysis-runs .run-line+.run-line b{color:#b3586b}
.club .analysis-runs .chart-insight{border:0;border-radius:11px;background:#edf3fa;color:#5b6e86;padding:13px 16px;font-size:12px;margin-top:18px}
.club .analysis-runs .run-records{border:0;padding:0;margin-top:16px;gap:14px}
.club .analysis-runs .run-record{position:relative;gap:9px;padding:18px;border-radius:13px;background:linear-gradient(125deg,#effaf5,#fff);box-shadow:inset 0 0 0 1px #ccebdc,0 4px 14px #2d855e08}
.club .analysis-runs .run-record-other{background:linear-gradient(125deg,#fff2f4,#fff);box-shadow:inset 0 0 0 1px #f0d5dc,0 4px 14px #b3586b08}
.club .analysis-runs .run-record>span{font:600 12px/1.4 "Segoe UI",sans-serif;color:#617187}
.club .analysis-runs .run-record strong{font:750 34px/1.2 "Segoe UI",sans-serif;color:#2a805c}
.club .analysis-runs .run-record-other strong{color:#b3586b}
.club .analysis-runs .run-record strong small{font-size:13px;font-weight:500;color:#8090a2}
.club .analysis-runs .run-record a{align-self:flex-start;font-size:11px;font-weight:600;text-decoration:none;color:#597088;padding-top:3px}
.club .analysis-runs .run-record a:hover{color:var(--site-primary)}
.club .analysis-runs a:focus-visible{outline:2px solid #4c83c8;outline-offset:3px}
@media(max-width:600px){.club .analysis-runs .run-row{grid-template-columns:58px minmax(0,1fr);gap:10px;padding:10px 6px}.club .analysis-runs .run-records{grid-template-columns:1fr}}

/* Keep the set controls centred on the chart, independent of the match picker. */
.club .analysis-moments .swing-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:14px}
.club .analysis-moments .swing-toolbar .analysis-match-picker{grid-column:1;min-width:0;max-width:100%}
.club .analysis-moments .swing-toolbar .swing-set-legend{grid-column:2;justify-content:center}
@media(max-width:1100px){.club .analysis-moments .swing-toolbar{grid-template-columns:minmax(0,1fr)}.club .analysis-moments .swing-toolbar .analysis-match-picker{justify-self:start}.club .analysis-moments .swing-toolbar .swing-set-legend{grid-column:1;justify-self:center}}

.club .analysis-runs .run-record .run-match-button{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;min-height:40px;padding:11px 14px;margin-top:3px;border-radius:10px;background:#fff4ec;color:var(--site-primary);font-size:12px;font-weight:650;text-decoration:none;box-sizing:border-box}
.club .analysis-runs .run-record .run-match-button:hover{background:#ffeadb}

/* Set-number comparison: compact rows, proportion bars and explicit ratios. */
.club .analysis-positions .position-bars>div{grid-template-columns:56px minmax(0,1fr) 66px;gap:14px;margin:0;padding:14px 0;border-bottom:1px solid #e7edf3;color:#617187;font:600 12px "Segoe UI",sans-serif}
.club .analysis-positions .position-bars>div:last-child{border-bottom:0}
.club .analysis-positions .position-bars>div>span{display:grid;place-items:center;min-height:34px;border-radius:9px;background:#edf3fb;color:#57769e}
.club .analysis-positions .position-track{height:11px;border-radius:7px;background:linear-gradient(90deg,#f6dce2,#eda9b5);overflow:visible;box-shadow:0 0 8px #dd7a8a1a}
.club .analysis-positions .position-track i{border-radius:7px;background:linear-gradient(90deg,#8bdcb3,#39b681);box-shadow:0 0 9px #3fbd8040}
.club .analysis-positions .position-result{display:flex;flex-direction:column;gap:4px;text-align:right;min-width:0}
.club .analysis-positions .position-result b{color:#3f536d;font:700 15px "Segoe UI",sans-serif}
.club .analysis-positions .position-result small{color:#8290a2;font:500 11px "Segoe UI",sans-serif}
.club .analysis-positions .chart-insight{border:0;border-radius:11px;background:#edf3fa;color:#5b6e86;padding:12px 14px;font-size:12px;margin-top:16px}
@media(max-width:600px){.club .analysis-positions .position-bars>div{grid-template-columns:48px minmax(0,1fr) 58px;gap:10px}}

/* Home and away: comparable win rings and sets breakdowns. */
.club .analysis-venue-comparison{container-type:inline-size}
.club .venue-comparison{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);align-items:stretch;gap:10px}
.club .venue-comparison-card{--venue:#40a56b;--venue-rgb:64 165 107;padding:16px;border-radius:14px;background:linear-gradient(130deg,rgb(var(--venue-rgb)/.065),#fff);box-shadow:inset 0 0 0 1px rgb(var(--venue-rgb)/.1),0 4px 16px rgb(var(--venue-rgb)/.05);min-width:0}
.club .venue-comparison-card.is-away{--venue:#5285e9;--venue-rgb:82 133 233}
.club .venue-comparison-card header{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.club .venue-comparison-card h4{font:700 16px "Segoe UI",sans-serif;color:var(--venue);margin:0}
.club .venue-comparison-icon,.club .venue-detail-icon{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:11px;background:rgb(var(--venue-rgb)/.09);color:var(--venue)}
.club .venue-comparison-icon svg,.club .venue-detail-icon svg{width:23px;height:23px}
.club .venue-comparison-body{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.club .venue-win-ring{position:relative;width:110px;height:110px;flex:0 0 110px;margin:auto}
.club .venue-win-ring svg{width:100%;height:100%;transform:rotate(-90deg);overflow:visible}
.club .venue-win-ring circle{fill:none;stroke-width:10}
.club .venue-ring-track{stroke:#e9eef4}
.club .venue-ring-value{stroke:var(--venue);stroke-linecap:round;filter:drop-shadow(0 0 4px rgb(var(--venue-rgb)/.25))}
.club .venue-win-ring strong{position:absolute;inset:0;display:grid;place-items:center;font:750 22px "Segoe UI",sans-serif;color:#34465e}
.club .venue-comparison-metrics{display:grid;gap:10px;flex:1 1 180px;min-width:0}
.club .venue-detail{display:flex;align-items:center;gap:10px;padding:12px;border-radius:12px;background:#ffffffc9;box-shadow:0 3px 13px #34465e05}
.club .venue-detail-icon{width:32px;height:32px;flex-basis:32px;border-radius:50%}
.club .venue-detail>div{flex:1;min-width:0}
.club .venue-detail p{margin:0 0 9px;color:#52647b;font:600 12px/1.45 "Segoe UI",sans-serif}
.club .venue-win-dots{display:flex;gap:5px;flex-wrap:wrap}
.club .venue-win-dots i{width:9px;height:9px;border-radius:50%;background:#e5eaf1}
.club .venue-win-dots i.is-won{background:var(--venue);box-shadow:0 0 6px rgb(var(--venue-rgb)/.25)}
.club .venue-ratio-track{height:8px;background:#e8edf4;border-radius:6px}
.club .venue-ratio-track i{display:block;height:100%;border-radius:6px;background:var(--venue);box-shadow:0 0 7px rgb(var(--venue-rgb)/.22)}
.club .venue-comparison-vs{align-self:center;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#eef2f7;color:#8a98ab;font-size:10px;font-weight:700}
@container(max-width:560px){.club .venue-comparison{grid-template-columns:minmax(0,1fr)}.club .venue-comparison-vs{justify-self:center}.club .venue-comparison-body{flex-wrap:nowrap}.club .venue-comparison-card{padding:14px}}
@container(max-width:330px){.club .venue-comparison-body{flex-wrap:wrap}}

.club .analysis-venue-comparison{display:flex;flex-direction:column}
.club .analysis-venue-comparison>.analysis-heading{flex:0 0 auto}
.club .analysis-venue-comparison>.venue-comparison{margin-block:auto;width:100%}

/* Season comparisons share the light statistics surface and explicit ratios. */
.club .analysis-seasons .season-comparison{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);align-items:center;gap:32px;padding:20px 16px;border:0;border-bottom:1px solid #e6edf4}
.club .analysis-seasons .season-comparison:last-child{border-bottom:0}
.club .analysis-seasons .season-comparison:nth-of-type(even){background:#f6f9fc;border-radius:12px}
.club .analysis-seasons .season-identity{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:13px;min-width:0}
.club .analysis-seasons .season-identity>div{display:flex;flex-direction:column;gap:6px;min-width:0}
.club .analysis-seasons .season-identity strong{font:700 18px/1.3 "Segoe UI",sans-serif;color:#43536b}
.club .analysis-seasons .season-identity small{font:500 11px/1.5 "Segoe UI",sans-serif;color:#8190a3;overflow-wrap:anywhere}
.club .analysis-seasons .season-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:12px;background:#eaf1fc;color:#6485b7}
.club .analysis-seasons .season-icon svg{width:24px;height:24px}
.club .analysis-seasons .season-metric{--metric-color:#3bab7d;--metric-glow:#3bab7d30;gap:8px;min-width:0}
.club .analysis-seasons .season-metric-sets{--metric-color:#9468d2;--metric-glow:#9468d230}
.club .analysis-seasons .season-metric>span{font:600 12px "Segoe UI",sans-serif;color:#77879b}
.club .analysis-seasons .season-metric-value{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.club .analysis-seasons .season-metric b{font:750 24px/1.25 "Segoe UI",sans-serif;color:#43536b;white-space:nowrap}
.club .analysis-seasons .season-metric small{font:500 11px "Segoe UI",sans-serif;color:#8b98aa;white-space:nowrap}
.club .analysis-seasons .season-metric-track{height:8px;border-radius:6px;background:#e7edf4;margin-top:3px}
.club .analysis-seasons .season-metric-track i{display:block;height:100%;border-radius:6px;background:var(--metric-color);box-shadow:0 0 9px var(--metric-glow)}
@media(max-width:650px){.club .analysis-seasons .season-comparison{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:18px 8px}.club .analysis-seasons .season-identity{grid-column:1/-1}.club .analysis-seasons .season-metric b{font-size:21px}}

/* Match detail: independent result and point-by-point surfaces. */
.club .match-page{display:grid;gap:26px;padding:0;border:0;background:none;min-width:0;--chart-bg:#f6f9fd;--signal:#3785d2;--line:#e1e8f0;--muted:#7b8a9d}
.club .match-result-card,.club .match-page>.point-timeline,.club .match-support-card{min-width:0;padding:24px;border:1px solid #e5ebf3;border-radius:18px;background:linear-gradient(135deg,#fff,#fafcff);box-shadow:0 8px 26px #24344b0b}
.club .match-result-card{background:radial-gradient(ellipse at 0 0,#eaf3ff80,transparent 60%),linear-gradient(135deg,#fff,#fafcff)}
.club .match-page>.point-timeline{margin:0;border-top:1px solid #e5ebf3}
.club .match-page :is(.point-timeline,.match-meta-panel)>h3{font:700 22px/1.3 "Segoe UI",sans-serif;color:#435065;margin:0 0 16px}
.club .match-page-heading .eyebrow{color:#7a899d;letter-spacing:.4px;font-size:11px}
.club .match-page-heading>a{padding:10px 14px;border-radius:10px;background:#fff3ea;color:var(--site-primary);font-weight:650;text-decoration:none}
.club .match-duel{padding:24px 16px;margin:18px 0;gap:24px;border-radius:14px;background:#f3f7fc80}
.club .match-duel h3{min-height:0;font:700 clamp(16px,1.5vw,23px)/1.4 "Segoe UI",sans-serif;margin:12px 0 18px;color:#3d4d63}
.club .match-duel h3 a{color:inherit;text-decoration:none}
.club .match-duel .venue-side{display:inline-flex;padding:5px 10px;border-radius:20px;background:#eaf0f8;color:#71839b;border:0;font-size:10px}
.club .match-duel .duel-score{font:500 40px/1 "Segoe UI",sans-serif;color:#bf6677}
.club .match-duel .duel-score.score-winner{font-size:58px;font-weight:750;color:#25875e;text-shadow:0 0 15px #3bb58015}
.club .match-duel .duel-separator{color:#9aa7b8;font-size:24px}
.club .match-page .set-scoreboard{background:#f8fafd;color:#435065;padding:8px 14px;margin:18px 0 0;border-radius:13px;--line:#e3eaf2;--muted:#8290a2}
.club .match-page .set-scoreboard table{width:100%;border-collapse:separate;border-spacing:0 4px}
.club .match-page .set-scoreboard caption{color:#7c8ca1;text-align:left;padding:6px 0 12px;font-size:11px}
.club .match-page .set-scoreboard :is(th,td){padding:12px;text-align:center;border-color:#e3eaf2}
.club .match-page .set-scoreboard thead th{color:#8290a2;font:650 11px "Segoe UI",sans-serif}
.club .match-page .set-scoreboard tbody th{color:#435065;text-align:left;font:650 13px "Segoe UI",sans-serif}
.club .match-page .set-scoreboard tbody th a{color:inherit;text-decoration:none}
.club .match-page .set-scoreboard .set-side{display:block;color:#8a98aa;font-size:10px;margin-top:5px}
.club .match-page .set-scoreboard td{color:#b4596d;background:#fbeef1;font-size:16px;font-weight:550}
.club .match-page .set-scoreboard td.set-winner{color:#248057;background:#e8f6ee;font-weight:750}
.club .match-page .set-tabs{flex-wrap:wrap;gap:8px;padding:14px;background:#f6f9fd}
.club .match-page .set-tabs button{background:#fff;border:1px solid #e1e8f0;border-radius:10px;color:#708098;padding:9px 16px;box-shadow:0 2px 7px #26384908;font-size:12px}
.club .match-page .set-tabs button[aria-pressed=true]{background:#eaf3ff;border-color:#b9d3f0;color:#367ab9}
.club .match-page .set-tabs button span{font:600 11px "Segoe UI",sans-serif;margin-top:5px}
.club .match-page .chart-shell{background:#f6f9fd;overflow:hidden;border-radius:13px}
.club .match-page .chart-shell .score-chart{background:#f6f9fd}
.club .match-page .chart-shell .timeline-legend{background:#f6f9fd;color:#71839a;padding:14px 20px}
.club .match-page .chart-shell .timeline-legend .club-line{color:#3785d2}
.club .match-page .chart-shell .timeline-legend .opponent-line{color:#ac7cce}
.club .match-page .score-chart .club-line{stroke:#3785d2;filter:drop-shadow(0 0 3px #3785d230)}
.club .match-page .score-chart .opponent-line{stroke:#ac7cce;filter:drop-shadow(0 0 3px #ac7cce25)}
.club .match-page .chart-axis line{stroke:#dce5ef}.club .match-page .chart-axis text,.club .match-page .chart-time-axis text,.club .match-page .chart-clock-label{fill:#7c8da3}
.club .match-page .chart-shell .timeline-note{background:#f1f5fa;color:#718096;padding:16px}
.club .match-page .chart-shell .point-list{background:#fff;padding:10px 18px;color:#52647b}
.club .match-page .point-table{border:1px solid #e5ebf3;border-radius:10px;background:#fff}
.club .match-page .point-table :is(th,td){padding:10px 12px;border-color:#e5ebf3;color:#52647b}
.club .match-page .point-table thead th{background:#f2f6fa;color:#7a8ba1;font-size:11px}
.club .match-page .point-table tbody tr:nth-child(even){background:#f8fafd}
.club .match-page .point-table .score-club{color:#367ab9;font-weight:650}
.club .match-page :is(button,a,summary):focus-visible{outline:2px solid #4c83c8;outline-offset:3px}
.club .match-support-card{display:grid;gap:18px}
@media(max-width:600px){.club .match-page{gap:18px}.club .match-result-card,.club .match-page>.point-timeline,.club .match-support-card{padding:16px}.club .match-duel{gap:10px;padding:18px 8px}.club .match-duel .duel-score{font-size:32px}.club .match-duel .duel-score.score-winner{font-size:46px}.club .match-page .set-scoreboard{padding:6px}.club .match-page .set-scoreboard :is(th,td){padding:10px 8px}}

.club .match-duel .duel-score{color:#43536b}
.club .match-duel .duel-score.score-loser{color:#bf6677}
.club .match-duel .duel-score.score-winner{color:#25875e}
.club .match-page .chart-shell .score-chart{max-width:none;width:100%;margin-inline:auto}
.club .match-page .chart-end{stroke:#fff}
.club .match-page .chart-shell .chart-reconciliation{background:#f6f9fd;color:#718096}

/* Match identities and light sticky cells share the result card palette. */
.club .match-team-identity{display:inline-flex;align-items:center;gap:12px;max-width:100%;vertical-align:middle}
.club .match-team-identity>a{min-width:0;overflow-wrap:anywhere}
.club .match-team-identity .home-recent-logo{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px}
.club .match-team-identity .home-recent-logo img{width:100%;height:100%;object-fit:contain}
.club .match-team-identity .home-recent-initials{display:grid;place-items:center;width:100%;height:100%;border-radius:50%;background:#e3ecfa;color:#476797;font:700 14px "Segoe UI",sans-serif}
.club .match-team-identity .home-recent-initials[hidden]{display:none}
.club .match-duel{align-items:stretch}
.club .match-duel>div{display:grid;grid-template-rows:auto 1fr 64px;justify-items:center;align-items:center;min-width:0}
.club .match-duel h3{align-self:center}
.club .match-duel .duel-separator{align-self:end;height:64px;display:grid;place-items:center}
.club .match-page .set-scoreboard tr>th:first-child{background:#f8fafd;box-shadow:none}
.club .match-page .set-scoreboard tr>th:not(:first-child){text-align:center}
.club .match-page .set-scoreboard .home-recent-logo{width:28px;height:28px;flex-basis:28px}
.club .match-page .set-scoreboard .home-recent-initials{font-size:10px}
.club .match-page .timeline-legend{justify-content:center;margin:8px 0 16px;flex-wrap:wrap}
@media(max-width:600px){.club .match-team-identity{gap:7px}.club .match-duel .match-team-identity{flex-direction:column}.club .match-duel>div{grid-template-rows:auto 1fr 50px}.club .match-duel .duel-separator{height:50px}}

/* Match rosters: compact player cards on the shared light surfaces. */
.club .match-page .lineup-panel{margin-top:8px;padding-top:22px;border-color:#e5ebf3}
.club .match-page .lineup-panel>p{color:#8190a3;font-size:12px;line-height:1.6;margin:8px 0 20px}
.club .match-page .lineup-grid{gap:20px;align-items:start;grid-template-columns:repeat(2,minmax(0,1fr))}
.club .match-page .lineup-team{min-width:0;padding:16px;border:1px solid #e5edf7;border-radius:16px;background:linear-gradient(135deg,#f1f6fc,#fbfdff);box-shadow:0 5px 18px #5981b50a}
.club .match-page .lineup-team-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.club .match-page .lineup-team-heading h4{margin:0;font:700 16px/1.4 "Segoe UI",sans-serif;color:#43536b;overflow-wrap:anywhere}
.club .match-page .lineup-team-heading .venue-side{flex:none;padding:5px 9px;border:0;border-radius:20px;background:#e5edf9;color:#7186a4;font-size:10px}
.club .match-page .lineup-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,235px),1fr));gap:10px}
.club .match-page .lineup-player{min-width:0;padding:12px;gap:12px;border:0;border-radius:12px;background:#fff;box-shadow:0 3px 12px #29436b0b;color:#43536b;transition:box-shadow .18s,background .18s}
.club .match-page a.lineup-player:hover{background:#fffaf6;box-shadow:0 5px 17px #c971281a}
.club .match-page .lineup-player .player-portrait{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#eef3fb,#dfe9f8);box-shadow:0 2px 9px #7492bc20}
.club .match-page .lineup-player .portrait-initials{color:#617da4;font:700 14px "Segoe UI",sans-serif}
.club .match-page .lineup-player strong{font:650 13px/1.4 "Segoe UI",sans-serif;color:#3d4c61}
.club .match-page .lineup-player small{font:500 10px/1.7 "Segoe UI",sans-serif;color:#8090a5;margin-top:5px}
.club .match-page .lineup-number{display:inline-block;padding:1px 7px;border-radius:6px;background:#eef3fa;color:#637c9d;font-weight:650}
.club .match-page .lineup-player-arrow{flex:none;color:#a7b4c7;font-size:15px}
@media(max-width:800px){.club .match-page .lineup-grid{grid-template-columns:1fr}.club .match-page .lineup-team{padding:12px}.club .match-page .lineup-team-heading{flex-wrap:wrap}}

/* Match information uses the same light cards as the rosters. */
.club .match-support-card>:is(.match-officials,.match-meta-panel){margin:10px 0 0;padding:22px;border:1px solid #e4ecf6;border-radius:16px;background:linear-gradient(125deg,#f2f7fd,#fff 75%);box-shadow:0 5px 18px #36577d0b;min-width:0}
.club .match-page .match-officials>h3,.club .match-page .match-meta-panel>h3{font:700 20px/1.4 "Segoe UI",sans-serif;color:#43536b;margin:0 0 16px}
.club .match-page .match-officials ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:12px;margin:0;padding:0;list-style:none}
.club .match-page .match-officials li{display:flex;align-items:center;gap:12px;padding:14px;border-radius:12px;background:#fff;box-shadow:0 3px 12px #29436b0b;min-width:0}
.club .match-page .match-official-icon{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:12px;background:#eaf0fb;color:#6988b7}
.club .match-page .match-official-icon svg{width:24px;height:24px}
.club .match-page .match-officials strong{font:650 14px/1.4 "Segoe UI",sans-serif;color:#43536b;overflow-wrap:anywhere}
.club .match-page .match-officials small{display:block;margin-top:4px;font-size:11px;color:#8291a6}
.club .match-page .match-meta-panel>.muted{margin:0 0 16px;color:#71849d;font-size:12px;line-height:1.7}
.club .match-page .match-meta-panel .venue-caption{margin:0;padding:16px 18px;background:#fff;border-radius:12px;box-shadow:0 3px 12px #29436b0b}
.club .match-page .match-meta-panel .venue-name{color:#43536b;font:650 14px/1.5 "Segoe UI",sans-serif;margin-bottom:8px}
.club .match-page .match-meta-panel .venue-address{padding:7px 11px;border-radius:8px;background:#fff2e8;color:#b95724;font-size:12px;line-height:1.6;text-decoration:none}
.club .match-page .match-meta-panel .venue-address:hover{background:#ffe8d8;color:#9e4519}
.club .match-page .match-meta-panel .venue-missing{color:#8291a6}
.club .match-page + .competition-components,.club .match-page~section{margin-top:36px}
@media(max-width:600px){.club .match-support-card>:is(.match-officials,.match-meta-panel){padding:16px}.club .match-page + .competition-components,.club .match-page~section{margin-top:26px}}

/* Match spacing must not depend on the optional heading or agenda button. */
.club #view[data-page=match]{padding-top:36px}
@media(max-width:600px){.club #view[data-page=match]{padding-top:26px}}

/* Player pages share profile cards, section headings and match lists. */
.club #view[data-page=joueur]{padding-top:36px}
.club .player-page{display:grid;gap:36px;padding:0;border:0;background:none;min-width:0}
.club .player-profile-card{padding:26px;border-radius:20px;border:1px solid #e5ecf5;background:radial-gradient(ellipse at top left,#eef5ff,transparent 65%),#fff;box-shadow:0 10px 28px #2638490c;min-width:0}
.club .player-page .player-heading{gap:22px;align-items:center}
.club .player-page .player-heading .player-portrait{width:100px;height:100px;border-radius:24px;border:4px solid #fff;background:#e6eef9;box-shadow:0 6px 22px #7393c029}
.club .player-page .player-heading .portrait-initials{font:700 26px "Segoe UI",sans-serif;color:#6684ac}
.club .player-page .player-heading>div{min-width:0}
.club .player-page .player-heading .eyebrow{color:#b75a2c;font:650 11px/1.5 "Segoe UI",sans-serif;letter-spacing:1.2px;margin:0 0 8px}
.club .player-page .player-heading h2{color:#3d4c60;font:750 clamp(24px,2.4vw,36px)/1.2 "Segoe UI",sans-serif;margin:0;overflow-wrap:anywhere;letter-spacing:-.6px}
.club .player-page .player-club-name{color:#677e9b;font-size:14px;margin:10px 0 0}.club .player-club-name span{color:#91a0b3}
.club .player-page .player-years{margin:24px 0;gap:8px}
.club .player-page .player-years a{gap:3px;padding:10px 17px;border:1px solid #e6edf6;border-radius:12px;background:#f5f8fc;color:#7689a3;box-shadow:0 2px 6px #213c6005}
.club .player-page .player-years strong{font-size:13px}.club .player-page .player-years small{font-size:10px;margin:0}
.club .player-page .player-years [aria-current=page]{border-color:#edc4ab;background:#fff0e5;color:#af5425;box-shadow:0 3px 12px #d47b3314}
.club .player-page .player-years a:hover{border-color:#c3d2e5}
.club .player-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.club .player-metric{--tone:76 131 207;min-width:0;display:flex;align-items:center;gap:14px;padding:20px;border:1px solid rgb(var(--tone)/.2);border-radius:14px;background:linear-gradient(130deg,rgb(var(--tone)/.08),#fff);box-shadow:0 0 18px rgb(var(--tone)/.07)}
.club .player-metric-confirmed{--tone:47 161 116}.club .player-metric-unknown{--tone:148 116 195}
.club .player-metric strong{font:750 32px/1 "Segoe UI",sans-serif;color:rgb(var(--tone));text-shadow:0 0 13px rgb(var(--tone)/.16)}
.club .player-metric span{font:600 12px/1.5 "Segoe UI",sans-serif;color:#637792}
.club .player-page .player-evidence-note{color:#8190a4;font-size:11px;line-height:1.7;margin:18px 0 0}
.club .player-appearances{min-width:0}.club .player-appearances .section-heading{margin:0 0 22px}
.club .player-appearance-status{display:inline-flex;align-items:center;gap:7px;color:#75869e;font-size:10px}
.club .player-appearance-status:before{content:"";width:6px;height:6px;border-radius:50%;background:#a3b1c5}
.club .player-appearance-status.is-confirmed{color:#328562}.club .player-appearance-status.is-confirmed:before{background:#40ad80;box-shadow:0 0 8px #40ad8040}
.club .player-page a:focus-visible{outline:2px solid #c36a37;outline-offset:3px}
@media(max-width:760px){.club .player-metrics{gap:9px}.club .player-metric{padding:14px;flex-direction:column;align-items:start;gap:9px}.club .player-profile-card{padding:20px}}
@media(max-width:480px){.club #view[data-page=joueur]{padding-top:26px}.club .player-page{gap:26px}.club .player-profile-card{padding:16px}.club .player-page .player-heading{gap:14px}.club .player-page .player-heading .player-portrait{width:72px;height:72px;border-radius:18px}.club .player-metrics{grid-template-columns:1fr}.club .player-metric{flex-direction:row;align-items:center}.club .player-metric strong{font-size:28px;min-width:45px}}

/* Historical archives: same light surfaces as current club and team pages. */
.club .archive-detail.panel,.club .club-archives.panel{padding:26px;border:0;border-radius:22px;background:linear-gradient(135deg,#f7faff,#fff 65%);box-shadow:0 8px 30px #29436b10;margin-block:30px;min-width:0}
.club .archive-detail .breadcrumbs{margin:0 0 22px;position:static;color:#71839c}
.club .archive-detail .breadcrumbs a{display:inline-flex;padding:9px 14px;background:#edf3fa;border-radius:10px;text-decoration:none;color:#536d8c;font-weight:600}
.club .archive-detail .detail-heading{padding:22px;border:1px solid #e6edf5;border-radius:17px;background:linear-gradient(115deg,#fff1e5,#fff 70%);box-shadow:0 0 24px #d78b4310}
.club .archive-detail .detail-heading .eyebrow{color:var(--site-primary);font-weight:700;letter-spacing:.07em}
.club .archive-detail h1{color:#3d4650;font-weight:750;letter-spacing:-.025em;margin:12px 0}
.club .archive-detail .detail-heading>a{display:inline-flex;padding:9px 12px;border-radius:10px;background:#fff;color:var(--site-primary);text-decoration:none;font-size:12px;font-weight:650;box-shadow:0 3px 12px #29436b0b}
.club .archive-detail .status{color:#75869b;line-height:1.7}
.club .archive-detail .notice{padding:14px 17px;border:1px solid #e1eaf6;border-radius:12px;background:#edf4fc;color:#657b96;font-size:12px;line-height:1.7;margin:18px 0}
.club .archive-detail .within-filter{max-width:540px;gap:9px;margin:26px 0 8px;font-size:12px;font-weight:650;color:#61758f}
.club .archive-detail input,.club .club-archives select{box-sizing:border-box;min-height:44px;padding:11px 14px;border:1px solid #dde6f2;border-radius:12px;background:#fff;color:#4f627b;box-shadow:0 3px 12px #29436b08;font:13px "Segoe UI",sans-serif}
.club .archive-detail :is(input,a):focus-visible,.club .club-archives :is(select,a):focus-visible{outline:3px solid var(--site-focus);outline-offset:3px}
.club .archive-detail #withinCount{color:#7c8ea6;font-size:12px}
.club .archive-detail .table-scroll{border-radius:16px;background:#fff;box-shadow:0 4px 20px #29436b0b;border:1px solid #e8eef7}
.club .archive-detail table{border-collapse:collapse;color:#536780}
.club .archive-detail caption{text-align:left;padding:13px 17px;color:#8594a8;font-size:11px}
.club .archive-detail thead th{background:#eff4fa;color:#7d8da3;font-size:10px;letter-spacing:.06em;text-transform:uppercase;padding:12px 16px;z-index:1}
.club .archive-detail tbody :is(th,td){padding:12px 16px;border-bottom:1px solid #e9eef5;vertical-align:middle}
.club .archive-detail tbody tr:last-child :is(th,td){border-bottom:0}
.club .archive-detail tbody tr:hover{background:#f7faff}
.club .archive-team{display:flex;align-items:center;gap:10px;min-width:140px;text-decoration:none;color:#47576e;font-weight:650;line-height:1.4}
.club .archive-team-logo{width:32px;height:32px;flex-basis:32px;font-size:10px}
.club .archive-score-cell{text-align:center;width:90px}
.club .archive-score{display:inline-block;white-space:nowrap;padding:7px 12px;border-radius:10px;background:#edf2f8;color:#3d526d;font-weight:750;font-size:15px}
.club .archive-decision{color:#8593a5;font-size:11px;max-width:240px}
.club .club-archives h3{font:750 26px/1.3 Bahnschrift,"Segoe UI",sans-serif;color:#3d4650;margin:0 0 14px}
.club .club-archives>.muted{color:#7c8ca2;font-size:12px;line-height:1.7}
.club .club-archives>label{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:20px;font-size:12px;font-weight:650;color:#657b96}
.club .club-archives .archive-links{margin:20px 0 0;gap:14px}
.club .archive-links a{height:100%;box-sizing:border-box;flex-direction:column;gap:8px;padding:18px;border:1px solid #e4ebf5;border-radius:15px;background:#fff;box-shadow:0 4px 16px #29436b09;text-decoration:none;color:#4c607c}
.club .archive-links a:hover{border-color:#e6bb9a;background:#fff8f2;box-shadow:0 5px 20px #bf753316}
.club .archive-links a strong{font-size:14px}.club .archive-links a span{color:#8594a8;font-size:11px}
@media(max-width:760px){.club .archive-detail.panel,.club .club-archives.panel{padding:16px;margin-block:24px}.club .archive-detail .detail-heading{padding:17px}.club .archive-detail h1{font-size:26px}.club .archive-detail tbody :is(th,td){padding:10px}.club .archive-links{grid-template-columns:1fr}.club .archive-team{min-width:125px;font-size:12px}.club .club-archives select{max-width:100%}}

/* Shared empty, unavailable and partial-data surfaces. */
.club .empty,.club .engagement-empty{box-sizing:border-box;min-width:0;max-width:100%;padding:28px;border:1px solid #e4ebf5;border-radius:20px;background:linear-gradient(125deg,#f0f6ff,#fff 70%);box-shadow:0 7px 25px #29436b0c;color:#657990}
.club .state-card{display:flex;align-items:flex-start;gap:20px}
.club .state-card-icon{display:grid;place-items:center;flex:0 0 54px;height:54px;border-radius:16px;background:#e4eefc;color:#698bb8;box-shadow:0 0 22px #82a9de22}
.club .state-card-icon svg{width:27px;height:27px}
.club .state-card-copy{min-width:0;flex:1}
.club .empty h3{margin:0 0 9px;font:750 clamp(18px,2vw,23px)/1.35 "Segoe UI",sans-serif;color:#46556a;letter-spacing:-.02em}
.club .empty p,.club .engagement-empty p{margin:0;max-width:760px;font-size:13px;line-height:1.75;color:#74869e;overflow-wrap:anywhere}
.club .state-card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px}
.club .state-card-actions .action-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;box-sizing:border-box;padding:10px 16px;border:1px solid #ecc9b0;border-radius:11px;background:#fff1e6;color:var(--site-primary);font:650 12px/1.4 "Segoe UI",sans-serif;text-decoration:none;box-shadow:0 3px 12px #bc713016;cursor:pointer}
.club .state-card-actions .action-button:hover{background:#ffe7d4}
.club .state-card-actions .action-button:focus-visible{outline:3px solid var(--site-focus);outline-offset:3px}
.club :is(.home-recent-empty,.home-fixtures-empty,.favorites-feed-empty,.favorites-widget-empty,.ranking-history-empty){box-sizing:border-box;padding:24px;margin:0;border:1px solid #e7edf6;border-radius:14px;background:#f4f8fd;color:#7c8ea6;font:400 13px/1.7 "Segoe UI",sans-serif;text-align:center;list-style:none}
.club .home-discovery-empty{padding:24px 16px;color:#7c8ea6;background:#f5f8fc;font-size:12px;text-align:center}
.club .freshness-alert,.club .review-state-label{border:1px solid #efd3bd;border-radius:12px;background:#fff5ec;color:#936543;padding:14px 18px;line-height:1.65;box-shadow:0 3px 12px #ba733009}
.club .favorites-empty{box-sizing:border-box;padding:36px 24px;border:1px solid #e4ebf5;border-radius:22px;background:linear-gradient(135deg,#fff5eb,#fff 65%);box-shadow:0 8px 28px #29436b0c;color:#64778f}
.club .favorites-empty>svg{padding:14px;border-radius:18px;background:#fff0df;color:var(--site-primary);box-sizing:content-box;box-shadow:0 0 22px #d98c3f19}
.club .favorites-empty h2{color:#46556a;font-weight:750}.club .favorites-empty p{color:#74869e;line-height:1.7}
.club .empty[aria-busy=true]{background:linear-gradient(120deg,#edf4fd,#fff);border-color:#dde9f8}
.club .loading-blocks{display:flex;gap:10px;margin-top:20px}.club .loading-blocks i{height:10px;flex:1;max-width:110px;border-radius:8px;background:#dce8f8}
@media(max-width:600px){.club .empty,.club .engagement-empty{padding:20px;border-radius:16px}.club .state-card{gap:13px}.club .state-card-icon{flex-basis:40px;height:40px;border-radius:12px}.club .state-card-icon svg{width:22px;height:22px}.club .state-card-actions{gap:8px;margin-top:15px}.club .favorites-empty{padding:25px 18px}}

.club .home-match-card .home-match-schedule{border-right-color:rgb(var(--home-match-tint)/.25)}
.club .home-match-card .home-match-clock{background:#ffffffb3;color:#46556a}
.club .home-match-card .home-match-competition{background:#ffffffb3;border-color:rgb(var(--home-match-tint)/.17)}
.club .home-match-card .home-match-initials{background:#ffffffb3;box-shadow:0 0 10px rgb(var(--home-match-tint)/.12)}
@media(prefers-reduced-motion:reduce){.club .home-match-card{transition:none}}

/* Keep long player identities readable on narrow screens. */
@media(max-width:480px){.club .player-page .player-heading{flex-direction:column;align-items:flex-start}.club .player-page .player-heading h2{overflow-wrap:break-word}}

.club .analysis-progression a{cursor:pointer}.club .analysis-progression a:focus-visible .progression-hit-area{stroke:#b75a2c;stroke-width:2}

/* Audit mobile: keep expanding player lists anchored to their own summary. */
.club #view:has(.players-panel){overflow-anchor:none}
.club .competition-ranking .ranking-heading-copy h2{overflow-wrap:anywhere;hyphens:auto}
.club .home-discovery-team>small,.club .home-discovery-coverage{font-size:11px;line-height:1.4}
.club .home-discovery-table-logo:has(img:not([hidden])){background:#edf1f5;border-radius:8px}
@media(max-width:620px){
 .club .players-panel>summary{display:grid!important;grid-template-columns:36px minmax(0,1fr) 28px;gap:5px 10px!important}
 .club .players-panel>summary .players-heading-icon{grid-column:1;grid-row:1/3}
 .club .players-panel>summary h3{grid-column:2;grid-row:1;margin:0}
 .club .players-panel>summary .players-count{grid-column:2;grid-row:2;justify-self:start}
 .club .players-panel>summary .players-toggle{grid-column:3;grid-row:1/3}
 .club .analysis-matrix .set-matrix{min-width:0;width:max-content}
 .club .analysis-matrix .set-matrix-head,.club .analysis-matrix .set-matrix-row{grid-template-columns:120px repeat(var(--sets),56px)}
 .club .analysis-matrix .matrix-opponent{max-width:120px;padding:8px 4px;gap:5px}
 .club .analysis-matrix .matrix-team-logo{width:24px;height:24px;flex:0 0 24px}
 .club .analysis-matrix .matrix-team-copy strong{font-size:11px;overflow-wrap:anywhere}
 .club .performance-points-labels{font-size:11px}
}
@media(max-width:400px){
 .club .next-feature{grid-template-columns:minmax(0,1fr)}
 .club .next-feature-date{grid-column:1;grid-row:auto;display:flex;align-items:baseline;justify-content:flex-start;gap:10px;padding:18px 16px 0}
 .club .next-feature-date::after{display:none}
 .club .next-feature-date b{font-size:38px;letter-spacing:-1px}
 .club .next-feature-details{grid-column:1;padding:18px 16px}
 .club .next-feature-eyebrow{margin-left:0}
 .club .next-feature-opponent{grid-template-columns:36px minmax(0,1fr);gap:10px}
 .club .next-feature-opponent .home-recent-logo{width:36px;height:36px}
 .club .next-feature h3{font-size:20px;line-height:1.2;overflow-wrap:break-word}
 .club .next-feature-history{padding:0 16px 18px}
 .club .next-feature-art{grid-column:1;grid-row:auto}
 .club .home-discovery-team>small,.club .home-discovery-coverage{font-size:10px}
}

/* Dense overview cards shared by club and team summaries. Keep equal row heights. */
.club :is(.club-overview,.team-overview){gap:12px;align-items:stretch}
.club :is(.club-overview,.team-overview)>.overview-card{padding:13px 16px 12px;border-radius:12px}
.club :is(.club-overview,.team-overview)>.overview-card>header{gap:10px;min-height:42px;margin-bottom:10px}
.club :is(.club-overview,.team-overview) .overview-heading>strong{font-size:32px;line-height:1;margin-bottom:3px;letter-spacing:-1px}
.club :is(.club-overview,.team-overview) .overview-card h3{font-size:14px;line-height:1.25}
.club :is(.club-overview,.team-overview) .overview-icon{width:40px;height:40px;flex-basis:40px}
.club :is(.club-overview,.team-overview) .overview-icon svg{width:22px;height:22px}
.club :is(.club-overview,.team-overview) .overview-win-caption{margin:6px 0 8px;line-height:1.3}
.club :is(.club-overview,.team-overview) .overview-card footer{margin-top:7px;font-size:11px}
.club :is(.club-overview,.team-overview) .overview-venue-bars{margin:9px 0}
.club :is(.club-overview,.team-overview) .overview-venue-legend{margin-top:7px}
.club :is(.club-overview,.team-overview) .overview-form>span{max-width:23px;width:23px;flex-basis:23px}
.club .club-overview .overview-competition-types{gap:6px}
.club .club-overview .overview-competition-type{padding:6px 8px;gap:6px;border-radius:8px}
.club .club-overview .overview-player-dots{gap:4px}
.club .club-overview .overview-player-dot{max-width:25px}
.club .club-overview .overview-team-dots{padding-bottom:6px;gap:6px 10px}
.club .team-overview .team-overview-points{padding:4px 8px;font-size:10px}
.club .team-overview .team-rank-track{min-height:66px;padding-block:32px 6px;margin-top:4px;gap:4px}
.club .team-overview .team-rank-track>.podium-1{--step-height:18px;translate:0 -18px}
.club .team-overview .team-rank-track>.podium-2{--step-height:12px;translate:0 -12px}
.club .team-overview .team-rank-track>.podium-3{--step-height:6px;translate:0 -6px}
.club .team-overview .rank-crown{height:12px;bottom:calc(100% + 3px)}
@media(max-width:620px){
 .club :is(.club-overview,.team-overview)>.overview-card{padding:12px 14px}
 .club :is(.club-overview,.team-overview) .overview-heading>strong{font-size:30px}
 .club :is(.club-overview,.team-overview) .overview-player-dots{gap:4px}
}
/* Mobile banner actions span the banner instead of the narrow logo-side column. */
@media(max-width:600px){
 body.club main.shell .site-banner.clubhead:has(.club-team-actions:not([hidden])){grid-template-rows:auto;align-content:start;align-items:center;gap:14px;--banner-actions-row:4;--banner-season-row:5}
 body.club main.shell .site-banner.clubhead:has(.club-team-actions:not([hidden])):has(.club-team-row:not([hidden])){--banner-actions-row:5;--banner-season-row:6}
 body.club .site-banner.clubhead:has(.club-team-actions:not([hidden]))>.club-identity,body.club .site-banner.clubhead:has(.club-team-actions:not([hidden])) .club-name-row{display:contents}
 body.club .site-banner.clubhead:has(.club-team-actions:not([hidden])) .club-identity>.eyebrow{grid-column:1/-1;grid-row:2;margin:0}
 body.club .site-banner.clubhead:has(.club-team-actions:not([hidden])) :is(.club-logo-slot,#clubLogo){grid-column:1;grid-row:3;align-self:center}
 body.club .site-banner.clubhead:has(.club-team-actions:not([hidden])) .club-name-row>h1{grid-column:2;grid-row:3;margin:0;min-width:0}
 body.club .site-banner.clubhead:has(.club-team-actions:not([hidden])) .club-name-row>.favorites-follow-bar{grid-column:1/-1;grid-row:4;justify-content:flex-start;margin:0;min-width:0}
 body.club .site-banner.clubhead:has(.club-team-actions:not([hidden])) .club-team-row{grid-column:1/-1;grid-row:4;margin:0}
 body.club .site-banner.clubhead:has(.club-team-actions:not([hidden])) .club-team-actions{grid-column:1/-1;grid-row:var(--banner-actions-row);margin:0;align-items:stretch;gap:8px}
 body.club .site-banner.clubhead:has(.club-team-actions:not([hidden])) .club-team-actions>:is(.favorites-follow-bar,[data-agenda-trigger]){flex:1 1 180px;margin:0;min-width:0;display:flex}
 body.club .site-banner.clubhead:has(.club-team-actions:not([hidden])) .club-team-actions :is(.favorite-follow,.agenda-trigger){width:100%;white-space:normal}
 body.club .site-banner.clubhead:has(.club-team-actions:not([hidden])) :is(.season-picker,.season){grid-column:1/-1;grid-row:var(--banner-season-row);justify-self:end;margin:4px 0 0}
}
.club .metric-explanation{margin-top:12px;border-top:1px solid #dfe6ee;padding-top:8px;color:#65758a;font-size:11px;line-height:1.5}
.club .metric-explanation summary{cursor:pointer;padding:5px 0;font-weight:600;width:fit-content;max-width:100%;border-radius:4px}
.club .metric-explanation summary:focus-visible{outline:2px solid var(--site-primary);outline-offset:3px}
.club .metric-explanation p{margin:8px 0 0;max-width:60ch}

/* Discreet shared day markers; match cards keep their existing appearance. */
body.club .calendar-day-marker{list-style:none;margin:14px 0 2px;padding:0 4px;color:#718095;font-size:12px;line-height:1.5;scroll-margin-top:24px;background:none;border:0;box-shadow:none;min-height:0}
body.club .calendar-day-marker:first-child{margin-top:0}
body.club .calendar-day-marker strong{font-weight:650;color:#536278}
body.club .calendar-day-tools{display:flex;justify-content:flex-end;margin:0 0 10px}
body.club .calendar-day-tools button{padding:6px 10px;min-height:32px;border:1px solid #e5eaf0;border-radius:9px;background:#fff;color:#64748b;font:inherit;font-size:12px;cursor:pointer}
body.club .calendar-day-tools button:hover{background:#f6f8fb;color:var(--accent)}
/* Keep navigation visible during the initial load; retain server-rendered pages. */
body[data-loading] .top{visibility:visible}
body[data-loading]:not([data-seo-pending]) main.shell{display:none}
body[data-loading]:not([data-seo-pending]) .site-loading{position:relative;inset:auto;min-height:360px;margin:24px auto;max-width:1200px;border-radius:20px;background:linear-gradient(120deg,#f7f9fc,#fff);box-shadow:0 8px 30px #22364d08;padding:32px 20px;box-sizing:border-box}
.site-loading .loading-brand{display:none}
.site-loading .loading-orbit{width:24px;height:24px;margin:16px auto}
.site-loading p{font-size:13px;color:#718095}
.navigation-pending{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:90;padding:10px 16px;max-width:calc(100vw - 32px);box-sizing:border-box;border-radius:12px;background:#fffffff2;box-shadow:0 4px 22px #26395120;color:#526176;font-size:13px;pointer-events:none}
@media(max-width:600px){body.club .calendar-day-tools button{min-height:44px}body[data-loading]:not([data-seo-pending]) .site-loading{margin:16px;min-height:300px}}

.timeline-adaptation { margin: .5rem 0; font-size: .85rem; color: var(--muted, #526178); }
.timeline-adaptation summary { cursor: pointer; width: fit-content; padding: .35rem .5rem; border-radius: .35rem; background: #f5f1e8; }
.timeline-adaptation summary:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }

/* Competition discovery, using the site's existing colours and type scale. */



.competition-page{min-width:0;padding:12px 0 32px}
.club .competition-intro{position:relative;isolation:isolate;display:flex;align-items:center;min-height:0;padding:28px 36px;border-radius:14px;background:#0d171d url('/assets/site/competition-trophy-dc37aa2d7be8.png') center right/cover no-repeat;color:#fff;overflow:hidden}
.competition-intro:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#08121955,transparent 75%)}
.competition-hero-content{width:54%;max-width:620px;min-width:0}
.club .competition-intro .eyebrow{margin:0 0 10px;color:#d3dde2;font:600 10px/1.8 "Segoe UI",sans-serif;letter-spacing:.24em}
.club .competition-intro h1{margin:0 0 10px;font:750 clamp(32px,3.5vw,48px)/1.08 "Segoe UI",sans-serif;letter-spacing:-.045em;color:#fff}
.competition-intro h1 span{color:var(--site-primary-on-dark)}
.club .competition-hero-content>p:not(.eyebrow){margin:0;font-size:13px;line-height:1.5;color:#d2dce2;max-width:440px}
.competition-catalogue{position:relative;margin-top:14px;min-width:0}
.competition-explorer{border:1px solid #e0e3e3;border-radius:12px;background:#fff;overflow:hidden;margin-bottom:28px;box-shadow:0 4px 18px #1a1d2004}
.competition-explorer summary{display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:76px;padding:16px 20px;cursor:pointer;list-style:none;transition:background .15s}
.competition-explorer summary:hover{background:#fafbf9}
.competition-explorer summary:focus-visible{outline:3px solid var(--site-focus);outline-offset:-3px;border-radius:11px}
.competition-explorer[open] summary{border-bottom:1px solid #e0e3e3;margin-bottom:20px}
.competition-explorer summary::-webkit-details-marker{display:none}
.competition-explorer-lead{display:flex;align-items:center;gap:12px;min-width:0}
.competition-explorer-lead>svg{box-sizing:content-box;padding:10px;border-radius:10px;background:var(--site-primary-soft);color:var(--site-primary)}
.competition-explorer summary b{font:650 16px/1.4 "Segoe UI",sans-serif;color:var(--ink)}
.competition-explorer-action{display:flex;align-items:center;gap:12px;flex-shrink:0;font-size:12px;white-space:nowrap;color:var(--muted)}
.competition-explorer-chevron{display:block;width:32px;height:32px;box-sizing:border-box;padding:8px;border-radius:50%;background:var(--site-primary);color:var(--site-primary-ink);fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.competition-explorer[open] .competition-explorer-chevron{transform:rotate(180deg)}
.competition-filter-body{padding:0}
.competition-explorer .competition-filter-body{padding:0 24px 24px}
.competition-icon{width:20px;height:20px;flex-shrink:0;vertical-align:middle}
.competition-search{padding:0;border:0;background:none;box-shadow:none}.competition-intro .competition-search{margin-top:16px}
.competition-search-row{display:flex;gap:12px;align-items:stretch}
.competition-query-field{position:relative;flex:1;min-width:0}
.competition-query-field>svg{position:absolute;left:15px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--muted);pointer-events:none}
.competition-search input{width:100%;min-width:0;box-sizing:border-box;border:1px solid #d5dce0;border-radius:8px;padding:11px 14px 11px 40px;background:#fff;font:14px/1.4 "Segoe UI",sans-serif;color:var(--ink);height:100%}
.competition-search-row>button{display:flex;justify-content:center;align-items:center;gap:12px;padding:10px 18px;border:1px solid transparent;border-radius:8px;background:var(--site-primary);color:var(--site-primary-ink);font-size:13px;font-weight:600;transition:background .15s}
.competition-search-row>button:hover{background:var(--site-primary-hover)}
.competition-funnel{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:10px 0 0}
.competition-funnel>label{min-width:0;display:block;padding:0;background:none;border:0}
.club label.competition-filter-field{display:block;min-width:0;max-width:100%;padding:0;border:0;background:none}
.club label.competition-filter-field>span:first-child{display:block;font:600 10px/1.5 "Segoe UI",sans-serif;margin-bottom:6px;color:var(--ink)}
.competition-funnel label>span:first-child,.calendar-scope>span:first-child{display:block;font:600 10px/1.5 "Segoe UI",sans-serif;margin-bottom:6px;color:var(--ink)}
.competition-select-field{position:relative;display:block}
.competition-select-field>svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);width:17px;height:17px;pointer-events:none;color:#4c5d70}
.competition-select-field select{width:100%;min-width:0;box-sizing:border-box;min-height:44px;padding:9px 24px 9px 36px;border:1px solid #d8dee2;border-radius:7px;background:#fff;font:12px "Segoe UI",sans-serif;color:var(--ink);text-overflow:ellipsis;cursor:pointer;transition:border-color .15s}
.competition-select-field select:hover{border-color:var(--accent)}.competition-select-field select:disabled{opacity:.55;cursor:default}
.competition-search input:focus-visible,.competition-select-field select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.competition-search-tools{display:flex;align-items:center;padding:4px 0 0}
.competition-search-tools button{display:flex;align-items:center;gap:9px;border:0;background:none;color:var(--accent);padding:8px 0;font-size:11px;cursor:pointer}
.competition-search-tools button{min-height:44px}
.competition-search-tools button:hover{text-decoration:underline;text-underline-offset:4px}
.competition-search-tools svg{width:17px;height:17px}
.competition-result-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 0;margin:4px 0 14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px}
.competition-result-heading>span{color:var(--muted);font-size:11px}
.competition-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.competition-card{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;gap:10px;min-width:0;min-height:218px;padding:19px 20px;border:1px solid #dce1e1;border-radius:11px;background:linear-gradient(145deg,#fff,#fafcfbe0);text-decoration:none;color:var(--ink);box-shadow:0 3px 16px #142a3804;transition:transform .18s,border-color .18s,box-shadow .18s}
.competition-card:hover,.competition-card:focus-visible{transform:translateY(-3px);border-color:#df947c;box-shadow:0 10px 28px #1a232010}
.competition-card-art{position:absolute;right:-20px;bottom:4px;z-index:-1;width:160px;height:160px;object-fit:contain;opacity:.25;pointer-events:none;mask-image:linear-gradient(90deg,transparent,#000 38%);transition:opacity .18s,transform .25s}
.competition-card:hover .competition-card-art{opacity:.38;transform:scale(1.035) rotate(-2deg)}
.competition-card-kicker{display:flex;justify-content:space-between;gap:12px;font:600 9px/1.5 "Segoe UI",sans-serif;color:#596a7a;letter-spacing:.025em}
.competition-card-kicker>span:first-child{display:flex;align-items:center;gap:7px;min-width:0;overflow-wrap:anywhere}
.competition-card-kicker>span:last-child{flex-shrink:0}
.competition-card-kicker svg{width:15px;height:15px}
.competition-card h2{margin:8px 0 0;padding-right:38px;font:650 17px/1.3 "Segoe UI",sans-serif;letter-spacing:-.4px;overflow-wrap:anywhere;color:var(--ink)}
.competition-card-category{padding-right:35px;font-size:11px;line-height:1.6;color:var(--muted);overflow-wrap:anywhere}
.competition-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:15px;font-size:10px;color:#526579}
.competition-card-bottom>span{min-width:0;line-height:1.8}
.competition-card-bottom>span svg{width:16px;height:16px;margin-right:7px}
.competition-card-bottom b{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border:1px solid #dae0e1;border-radius:50%;background:#fffffff2;color:var(--accent);transition:background .18s,border-color .18s}
.competition-card:hover .competition-card-bottom b{background:#fff3ed;border-color:#eab199}
.competition-card-bottom b svg{width:18px;height:18px}
.competition-no-results{padding:36px 22px;grid-column:1/-1;text-align:center;border:1px dashed var(--line);border-radius:12px;color:var(--muted)}
.competition-no-results>svg{width:32px;height:32px;color:var(--accent)}
.competition-no-results h2{font-size:20px;color:var(--ink)}
.competition-pagination{display:flex;justify-content:center;align-items:center;gap:24px;margin-top:20px;font-size:12px}.competition-pagination button{border:1px solid var(--line);background:#fff7;border-radius:6px;padding:10px 14px;cursor:pointer}.competition-pagination button:disabled{opacity:.4;cursor:default}
.competition-detail-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.competition-detail-header h1{margin:8px 0 12px;font:600 clamp(28px,3.6vw,46px)/1.15 Bahnschrift,"Segoe UI",sans-serif;letter-spacing:-1px}.competition-detail-header p:last-child{color:var(--muted);font-size:13px;margin-bottom:0}.competition-change{display:inline-flex;align-items:center;justify-content:center;gap:12px;flex-shrink:0;max-width:100%;min-height:44px;padding:11px 16px;border:1px solid transparent;border-radius:10px;background:var(--site-primary);color:var(--site-primary-ink);font-size:12px;font-weight:650;line-height:1.4;text-decoration:none;transition:background .15s}.competition-change:hover{background:var(--site-primary-hover)}.competition-change:focus-visible{outline:3px solid var(--site-focus);outline-offset:3px}
.competition-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding:0;margin:0 0 24px}.competition-metrics>div{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:148px;box-sizing:border-box;text-align:center;border:1px solid var(--ink);border-radius:10px;background:var(--dark);color:var(--heroink,#f2f3ee);padding:20px 16px}.competition-metrics dt{font:10px/1.4 Consolas,monospace;text-transform:uppercase;letter-spacing:.5px;color:#c6d0c9}.competition-metrics dd{margin:0;font:550 clamp(24px,2.7vw,38px)/1.2 Bahnschrift,"Segoe UI",sans-serif;letter-spacing:-1px}.competition-metrics small{color:#bbc8c2;font-size:10px;line-height:1.4;display:block}
.competition-components .panel,.competition-ranking.panel{padding:24px;margin:0 0 24px;min-width:0;border-radius:10px}.competition-components .panel h2,.competition-ranking.panel h2{font:600 21px/1.3 Bahnschrift,"Segoe UI",sans-serif;margin:0 0 18px}.competition-ranking>header,.competition-fixtures>header{display:flex;align-items:center;justify-content:space-between;gap:18px}.competition-status{font:10px Consolas,monospace;color:var(--muted)}.competition-ranking table{width:100%}.competition-ranking .standing-team-cell{white-space:normal;min-width:180px}.competition-ranking .standing-team-cell small{display:block;max-width:320px;font-size:10px}.competition-ranking a{text-decoration:none}.competition-ranking a:hover{text-decoration:underline}
.competition-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.competition-chart ol{list-style:none;padding:0;margin:0}.competition-chart li{display:grid;grid-template-columns:minmax(120px,1.15fr) minmax(55px,1fr) auto;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--line);font-size:12px}.competition-chart li>span{overflow-wrap:anywhere}.competition-chart li a{text-decoration:none}.competition-bar-track{height:9px;border-radius:8px;background:#aeb8b033;overflow:hidden}.competition-bar-track>span{height:100%;display:block;border-radius:8px;background:linear-gradient(90deg,var(--accent),var(--signal));transition:width .25s}.competition-chart .muted{margin-top:-10px;font-size:11px;line-height:1.5}
.competition-match-tabs{display:flex;flex-wrap:wrap;gap:5px}.competition-match-tabs button{border:1px solid var(--line);border-radius:5px;padding:9px 12px;background:transparent;font-size:11px;cursor:pointer}.competition-match-tabs button[aria-pressed=true]{background:var(--dark);border-color:var(--dark);color:var(--heroink,#fff)}.competition-fixture{display:grid;grid-template-columns:125px minmax(0,1fr) 70px;gap:20px;align-items:center;padding:17px 0;border-top:1px solid var(--line);text-decoration:none;font-size:13px}.competition-fixture:hover strong{color:var(--accent)}.competition-fixture time{font-size:11px;color:var(--muted)}.competition-fixture strong{display:block;font-weight:600;line-height:1.5}.competition-fixture i{font-style:normal;color:var(--accent);padding:0 6px}.competition-fixture small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.competition-fixture>b{text-align:right;font:600 20px Bahnschrift,"Segoe UI",sans-serif}.competition-coverage{font-size:11px;line-height:1.7;color:var(--muted)}
.competition-participants ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;list-style:none;padding:0;margin:0}.competition-participants li{border:1px solid var(--line);border-radius:7px;padding:12px 14px;font-size:13px;overflow-wrap:anywhere}.competition-participants a{text-decoration:none;display:block}.competition-participants a:hover{color:var(--accent)}.competition-calendar-summary{display:flex;flex-wrap:wrap;gap:8px 20px;margin:0 0 18px;font-size:11px;color:var(--muted)}.competition-calendar-summary b{color:var(--ink)}
@media(max-width:1100px){.competition-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.competition-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.competition-intro{padding-top:18px}.competition-explorer summary{padding:16px}.competition-filter-body{padding:0 16px 16px}.competition-search-tools>span,.competition-result-heading>span,.competition-explorer summary small{display:none}.competition-detail-header{display:block}.competition-change{margin-top:16px}.competition-charts{grid-template-columns:1fr}.competition-components .panel,.competition-ranking.panel{padding:18px}.competition-fixtures>header,.competition-ranking>header{display:block}.competition-match-tabs{margin:10px 0 20px}.competition-status{display:block;margin:-10px 0 16px}.competition-fixture{grid-template-columns:80px minmax(0,1fr) 50px;gap:10px}.competition-fixture>b{font-size:17px}.competition-metrics>div{padding:16px 12px}.competition-explorer summary b{font-size:16px}.competition-explorer-action-label{display:none}.competition-explorer summary{min-height:68px;gap:12px}.competition-explorer summary b{font-size:15px}.competition-explorer-lead{gap:10px}.competition-explorer-lead>svg{padding:8px}.competition-chart li{grid-template-columns:minmax(110px,1.15fr) minmax(40px,1fr) auto;font-size:11px}}
@media(max-width:520px){.competition-cards{grid-template-columns:1fr}.competition-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.competition-detail-header h1{font-size:29px}.competition-fixture{grid-template-columns:1fr auto}.competition-fixture time{grid-column:1/-1}.competition-fixture>span{grid-column:1}.competition-fixture>b{grid-column:2;grid-row:2}}
@media(prefers-reduced-motion:reduce){.competition-card,.competition-explorer-action>span,.competition-bar-track>span{transition:none}}

/* Shared by competition pages, team summaries/calendars and initial SEO HTML. */
.competition-components{min-width:0;max-width:100%;grid-column:1/-1}
.competition-progression{min-width:0;margin:24px 0}.progression-heading h2{margin-bottom:8px}.competition-pools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:24px}.competition-pool{min-width:0}.competition-progression .panel{padding:20px;border-radius:10px;margin:0 0 24px}.competition-pool .panel{height:100%;box-sizing:border-box;margin:0}.competition-pool .competition-ranking>header{display:block}.competition-pool .competition-status{display:block;margin:0 0 12px}.competition-pool table{font-size:12px}.competition-pool th,.competition-pool td{padding:10px 8px}.competition-pool .standing-team-cell{min-width:115px;white-space:normal}.competition-followed{box-shadow:inset 3px 0 var(--accent)}.competition-followed .standing-team-cell{font-weight:700}
.competition-bracket>header{display:flex;gap:16px;align-items:baseline;justify-content:space-between}.competition-bracket h2{margin:0}.bracket-connectors{pointer-events:none;overflow:visible}.bracket-connectors path{fill:none;stroke:#8b9994;stroke-width:1.3;opacity:.65}.bracket-connectors .bracket-path-followed{stroke:var(--accent);stroke-width:2.5;opacity:1}.bracket-round-title{margin:0;font:600 13px/1.4 Bahnschrift,"Segoe UI",sans-serif}.bracket-round-title span{display:block;text-transform:uppercase;letter-spacing:1px;color:var(--muted);font:9px/1.7 Consolas,monospace}.bracket-match{position:relative;box-sizing:border-box;background:var(--paper,#f5f6f0);border:1px solid var(--line);border-radius:8px;box-shadow:0 2px 8px #17292308;overflow:hidden}.bracket-match>header{display:flex;align-items:center;gap:8px;padding:5px 10px;font:9px/1.2 Consolas,monospace;color:var(--muted);border-bottom:1px solid var(--line)}.bracket-match time{margin-left:auto}.bracket-sheet{padding:0 4px;font-size:12px;color:var(--ink)}.bracket-team{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:25px;padding:2px 10px;font-size:11px;line-height:1.15}.bracket-team>span:first-child{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.bracket-team a{text-decoration:none}.bracket-team a:hover{text-decoration:none}.bracket-team b{flex-shrink:0;font-size:13px;min-width:14px;text-align:right}.bracket-winner{font-weight:700;color:#176847}.bracket-team-followed{background:#e7775020}.bracket-match-followed{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.bracket-match>small{display:block;padding:2px 10px;color:var(--muted);font-size:9px}.bracket-legend{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:10px;line-height:1.6;color:var(--muted);margin-bottom:0}.bracket-key{display:inline-block;width:20px;border-top:2px solid #8b9994}.bracket-key-followed{border-color:var(--accent);margin-left:8px}
@media(min-width:1700px){.competition-pools{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.competition-pools{grid-template-columns:1fr}.competition-bracket>header{display:block}.competition-bracket .competition-status{margin:8px 0}.competition-progression .panel{padding:16px}.competition-pool th,.competition-pool td{padding:9px 6px}}
.bracket-round-title small{display:block;color:var(--muted);font:10px/1.6 Consolas,monospace}
.bracket-connectors .bracket-path-inferred{stroke-dasharray:5 4}.bracket-key-inferred{border-top-style:dashed;margin-left:8px}
.competition-progression{width:100%;max-width:100%;box-sizing:border-box;grid-column:1/-1;align-self:stretch}

/* Natural preview size, capped for large trees; the dialog keeps its own camera. */
.bracket-preview{position:relative;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);place-items:center;width:100%;height:auto;min-height:160px;max-height:clamp(180px,120vh,1080px);box-sizing:border-box;margin:8px 0 18px;padding:10px 10px 48px;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:linear-gradient(135deg,#ffffff90,#ffffff15);cursor:zoom-in}
.bracket-text>summary{cursor:pointer}
.bracket-text a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;box-sizing:border-box;padding:8px 10px;line-height:1.5;white-space:normal;overflow-wrap:anywhere;border-radius:5px;color:var(--accent)}
.bracket-text a:focus-visible{outline:2px solid var(--site-focus);outline-offset:2px}
.bracket-preview:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.bracket-preview svg{pointer-events:none}
.bracket-image{display:block;width:100%;height:auto;overflow:hidden}.bracket-image .bracket-match{position:relative;left:auto;top:auto;width:100%;height:100%;border-radius:8px}
.bracket-preview>.bracket-image{width:auto;height:auto;max-width:100%;max-height:calc(clamp(180px,120vh,1080px) - 60px);min-width:0;min-height:0}
.bracket-image a{margin:0;color:inherit}.bracket-image .bracket-team a{display:inline;line-height:inherit}
.competition-pool:only-child{grid-column:1/-1}.reconstructed-pool tbody th{font:inherit;font-weight:500;text-transform:none;letter-spacing:normal;color:var(--ink)}
.reconstructed-pool>.tablewrap th:not(:first-child){text-align:right;min-width:0;white-space:nowrap}.reconstructed-pool>.tablewrap td{width:1%;white-space:nowrap}.reconstructed-pool .pool-matrix td,.reconstructed-pool .pool-matrix th:not(:first-child){text-align:center}
.reconstructed-pool>header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.reconstructed-pool th:first-child{text-align:left;white-space:normal;min-width:160px}.reconstructed-pool>.tablewrap td:nth-child(2){text-align:right;min-width:0;white-space:nowrap}.pool-matrix{margin-top:18px;border-top:1px solid var(--line);padding-top:12px}.pool-matrix summary{cursor:pointer;font-size:12px;font-weight:600}.pool-matrix .tablewrap{margin-top:12px}.pool-matrix td,.pool-matrix th:not(:first-child){min-width:70px;text-align:center;white-space:nowrap}.pool-matrix a{text-decoration:none;font-size:11px}.pool-matrix a:hover{text-decoration:underline}
.bracket-image .bracket-round-title,.club .bracket-image .bracket-round-title{position:static;top:auto;font:600 16px/1.25 Bahnschrift,"Segoe UI",sans-serif;letter-spacing:normal;margin:0;padding:0;overflow-wrap:anywhere}.bracket-image .bracket-round-title span{font-size:10px;margin-bottom:8px}
.bracket-preview-hint{position:absolute;bottom:10px;right:10px;padding:8px 12px;border:1px solid var(--line);border-radius:20px;background:var(--paper,#f5f6f0);color:var(--ink);font-size:11px;box-shadow:0 2px 8px #17292312}
.bracket-image .bracket-team-eliminated{color:#626b66;font-style:italic;font-weight:400}.bracket-key-eliminated{display:inline-block;width:14px;height:10px;border-radius:2px;background:#90989355;margin-left:8px}
.bracket-dialog{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:18px;box-sizing:border-box;border:0;background:var(--paper,#f5f6f0);color:var(--ink,#18201c)}
.bracket-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:14px}.bracket-dialog::backdrop{background:#172923b0}
.bracket-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px}.bracket-toolbar h2{margin:0;font:600 22px/1.25 Bahnschrift,"Segoe UI",sans-serif}.bracket-toolbar p{margin:5px 0 0;font-size:12px;color:var(--muted)}
.bracket-tools{display:flex;align-items:center;gap:8px}.bracket-tools button{min-width:38px;min-height:38px;border:1px solid var(--line);border-radius:7px;background:#ffffffa0;color:var(--ink);font:600 16px "Segoe UI",sans-serif;padding:7px 12px;cursor:pointer}.bracket-tools button:hover{border-color:var(--accent)}.bracket-tools button:focus-visible,.bracket-stage:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.bracket-tools output{min-width:55px;text-align:center;font:12px Consolas,monospace;color:var(--muted)}
.bracket-stage{position:relative;min-width:0;min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:radial-gradient(circle,#8b999428 1px,transparent 1px) 0 0/20px 20px;cursor:grab;touch-action:none;user-select:none}
.bracket-stage.is-dragging{cursor:grabbing}.bracket-stage a{cursor:inherit}.bracket-world{position:absolute;inset:0}.bracket-world .bracket-image{width:100%;height:100%}.bracket-viewer-legend .bracket-legend{margin:0}
@media(max-width:760px){.bracket-dialog{padding:10px;gap:10px}.bracket-toolbar{flex-wrap:wrap;gap:10px}.bracket-toolbar h2{font-size:17px}.bracket-toolbar p{font-size:10px}.bracket-tools{width:100%;justify-content:flex-end;gap:6px}.bracket-tools button{min-width:34px;min-height:34px;padding:6px 10px}.bracket-preview{min-height:140px;max-height:clamp(160px,114vh,780px);padding:6px 6px 42px}.bracket-preview>.bracket-image{max-height:calc(clamp(160px,114vh,780px) - 50px)}.bracket-preview-hint{font-size:10px;padding:6px 9px}.bracket-viewer-legend .bracket-legend{font-size:9px}}

/* Compact participant cards share the team selector hierarchy. */
.competition-participants ul{grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:12px}
.competition-participants li{padding:0;border:0;min-width:0}
.competition-participants .participant-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;grid-template-rows:auto auto;gap:7px 12px;align-items:center;height:100%;box-sizing:border-box;padding:14px;border:1px solid var(--line);border-radius:9px;background:var(--paper,#f8f9f5);transition:background .18s,border-color .18s,transform .18s}
.competition-participants a.participant-card:hover{background:#ffffff9c;border-color:var(--accent);transform:translateY(-2px)}
.participant-card>strong{font-size:13px;line-height:1.4;overflow-wrap:anywhere}.participant-logo{grid-row:1/3;display:grid;place-items:center;width:44px;height:44px;border-radius:8px;background:#ffffff7a;overflow:hidden}.participant-logo img{max-width:100%;max-height:100%;object-fit:contain}.participant-logo .logo-initials{font-size:16px;color:var(--ink);padding:0;border:0}.participant-card .team-rank{grid-column:3;grid-row:1/3;font-size:20px}.participant-card .team-record{display:block;grid-column:2;grid-row:2;font-size:11px;white-space:nowrap}.participant-card .team-record b{font-weight:600}
@media(max-width:520px){.competition-participants ul{grid-template-columns:1fr}}

.participant-card .standing-won{color:#216b3c}.participant-card .standing-lost{color:#ad3030}

.competition-participants .participant-card{height:92px;grid-template-rows:34px 13px 13px;gap:3px 10px;padding:10px 12px}
.participant-card .participant-logo{grid-row:1/4}.participant-identity{grid-column:2;min-width:0;display:flex;flex-direction:column;gap:2px}.participant-identity small{font-size:10px;line-height:13px;color:var(--muted)}.participant-identity strong{font-size:12px;line-height:17px}.participant-identity small,.participant-identity strong,.participant-league{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.participant-card .team-rank{grid-row:1/3;align-self:center}.participant-card .participant-league{grid-column:2/4;grid-row:3;font-size:10px;line-height:13px;color:var(--muted);min-width:0}

.bracket-stage .bracket-team a,.bracket-stage .bracket-sheet{cursor:pointer}
.bracket-team a{text-decoration:none}
.bracket-team a:hover,.bracket-team a:focus-visible{color:var(--accent);text-decoration:none}
.bracket-stage.is-dragging,.bracket-stage.is-dragging a{cursor:grabbing}

/* Each pool occupies a full row: compact results beside its fixture matrix. */
.competition-pools{grid-template-columns:minmax(0,1fr)}
.pool-layout{display:grid;grid-template-columns:minmax(330px,.85fr) minmax(0,1.35fr);gap:28px;align-items:start}.pool-summary{min-width:0}.pool-summary .panel{padding:0;border:0;background:none}.pool-summary table{font-size:11px}.pool-summary th,.pool-summary td{padding:8px 5px}.pool-summary td,.pool-summary th:not(:first-child){min-width:0!important;white-space:nowrap!important;text-align:right}.pool-summary th:first-child{min-width:120px}.pool-summary .muted,.pool-count-legend{font-size:10px;line-height:1.5;color:var(--muted)}.pool-count-legend{border-top:1px solid var(--line);padding-top:10px;margin-bottom:0}
.pool-matrix{min-width:0;margin:0;padding:0;border:0}.pool-matrix h3{font:600 17px Bahnschrift,"Segoe UI",sans-serif;margin:0 0 6px}.pool-matrix-help{font-size:11px;color:var(--muted);margin:0 0 12px}.pool-matrix .tablewrap{margin:0}.pool-matrix table{border-collapse:separate;border-spacing:5px;width:100%;min-width:calc(151px + var(--pool-columns) * 116px);table-layout:fixed}.pool-matrix th,.pool-matrix td{border:0;padding:3px!important;min-width:0!important;text-align:center;white-space:normal}.pool-matrix th:first-child{width:140px;min-width:140px!important;text-align:left}.pool-matrix tbody th{font-size:10px;line-height:1.3}.pool-matrix tbody th>span:last-child{display:block;margin-top:3px;overflow-wrap:anywhere}.pool-team-key{display:inline-grid;place-items:center;width:19px;height:19px;border-radius:6px;background:#64796d15;color:var(--ink);font:600 10px Consolas,monospace;margin-right:5px;vertical-align:middle}.pool-opponent{display:block;font-size:9px;line-height:1.25;max-height:34px;overflow:hidden;margin-top:5px;text-transform:none;letter-spacing:0}.pool-matrix td{background:#64796d08;border-radius:8px;vertical-align:middle}.pool-matrix .pool-matrix-self{background:repeating-linear-gradient(135deg,transparent,transparent 4px,#64796d0b 4px,#64796d0b 5px);color:var(--muted)}.pool-matrix .pool-fixture{display:block;padding:10px 3px;margin:3px 0;border:1px solid #bdc9c366;border-radius:7px;text-decoration:none;font:500 10px/1.3 "Segoe UI",sans-serif;color:var(--ink);background:linear-gradient(135deg,#fff,#eef2ed);white-space:nowrap}.pool-matrix a.pool-fixture:hover,.pool-matrix a.pool-fixture:focus-visible{border-color:var(--accent);background:var(--site-primary-soft);color:var(--accent);text-decoration:none;box-shadow:0 2px 7px #17292316}.pool-matrix .pool-fixture-score{font-weight:750;font-size:13px;background:linear-gradient(135deg,#e0efe5,#f4f8f1);color:#216b3c}.pool-matrix-empty{color:#9aa69f;font-size:11px}.pool-matrix .muted{font-size:10px;line-height:1.5}
@media(max-width:1050px){.pool-layout{grid-template-columns:minmax(0,1fr);gap:22px}}
.pool-fixture-missing{color:var(--muted);font-weight:600}
/* Compact phase navigation, shared by team and competition pages. */
.competition-phase-nav{display:flex;align-items:stretch;gap:14px;min-width:0;margin:22px 0 26px}
.competition-phase-track{display:flex;align-items:stretch;gap:6px;flex:1;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent;padding:3px 3px 8px}
.competition-phase-nav .phase-choice{display:flex;align-items:center;gap:9px;flex:0 0 auto;min-height:56px;max-width:210px;padding:10px 13px;border:1px solid transparent;border-radius:12px;background:var(--surface);color:var(--muted);text-decoration:none;transition:background .15s,color .15s,border-color .15s}
.competition-phase-nav .phase-choice:hover{color:var(--ink);background:var(--soft);border-color:var(--line)}
.competition-phase-nav .phase-choice:is([aria-current=page],[aria-pressed=true]){background:var(--soft);border-color:var(--accent);color:var(--accent);box-shadow:inset 0 -2px var(--accent)}
.competition-phase-nav .phase-choice:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.competition-phase-nav .phase-choice-overview{align-self:stretch;margin:3px 0 8px;padding-right:18px;border-color:var(--line);max-width:none}
.phase-choice-marker{display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;border-radius:8px;background:var(--bg);color:var(--muted);font:600 11px/1 Consolas,monospace}
.phase-choice:is([aria-current=page],[aria-pressed=true]) .phase-choice-marker{background:var(--accent);color:var(--surface)}
.phase-choice-marker svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.25}
.phase-choice-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.phase-choice-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.4;font-weight:600}
.competition-phase-nav .phase-choice-status{display:flex;align-items:center;gap:5px;font-size:10px;line-height:1.3;font-weight:400;color:var(--muted)}
.phase-choice-status:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--muted)}
.phase-choice-status[data-state=ongoing]:before{background:var(--accent)}
@media(max-width:640px){.competition-phase-nav{flex-direction:column;gap:5px;margin:18px 0 22px}.competition-phase-nav .phase-choice-overview{align-self:flex-start;margin:0;padding:9px 13px;min-height:42px}.competition-phase-nav .phase-choice{max-width:190px}.competition-phase-track{flex:none;width:100%}}

.competition-ties article+article{border-top:1px solid var(--line,#cbd0c5);margin-top:14px;padding-top:14px}

.format-coverage{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.4rem 1rem}.format-coverage dd{margin:0}.format-candidates{padding-left:1.2rem}.format-candidates p{overflow-wrap:anywhere}
.calendar-scope{display:block;min-width:0;max-width:100%}.calendar-scope select{max-width:100%}

/* Keep the observed matrix framed in team, competition and SEO views. */
.competition-observed-matrix.panel{min-width:0;max-width:100%;box-sizing:border-box;margin:28px 0;padding:24px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.pool-matrix .tablewrap{min-width:0;max-width:100%;overflow-x:auto}

/* Competition summary and observed schedule share the same reading level. */
.competition-results-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start;margin:20px 0}
.competition-components .competition-results-layout>.panel{min-width:0;margin:0;padding:22px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-sizing:border-box}
.competition-results-layout h2,.competition-observed-matrix h3{font:600 18px/1.3 Bahnschrift,"Segoe UI",sans-serif;margin:0 0 16px}
.competition-results-layout .pool-layout{display:block}
.competition-results-layout .tablewrap{max-width:100%;overflow-x:auto}
.competition-results-layout .muted{font-size:11px;line-height:1.6}
.pool-matrix .pool-fixture{display:flex;align-items:center;justify-content:space-between;gap:6px;box-sizing:border-box;min-height:32px;line-height:1.3;padding:6px;margin:3px 0;white-space:normal}
.pool-fixture-label{min-width:0;overflow-wrap:anywhere}
.pool-fixture-side{flex-shrink:0;margin-left:auto;font:italic 400 10px/1 Georgia,serif;color:var(--muted)}
.pool-matrix .pool-fixture-win{background:linear-gradient(135deg,#b8dec5,#d4ead7);border:0;color:#1b6033}
.pool-matrix .pool-fixture-loss{background:linear-gradient(135deg,#efb8b2,#f6d5cf);border:0;color:#8d302b}
.pool-matrix .pool-fixture-missing{background:linear-gradient(135deg,#efd780,#f7e8b4);border:0;color:#685014}
.pool-matrix .pool-fixture-draw{background:var(--surface);border-color:var(--line);color:var(--ink)}
.pool-matrix [data-matrix-fixture].pool-fixture-highlight,.pool-matrix [data-matrix-fixture].pool-fixture:hover,.pool-matrix [data-matrix-fixture].pool-fixture:focus-visible{background:#ffe0b2;color:#8a4300;border-color:transparent;box-shadow:none;text-decoration:none}
.competition-components .competition-format-proof{padding:22px 24px;margin:32px 0 16px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(120deg,#f2f5ef,#fffaf3);box-shadow:none;display:block}
.format-proof-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.8fr);gap:8px 32px}
.format-notice-header{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:4px}
.competition-format-proof .format-notice-header h2{font:600 19px/1.3 Bahnschrift,"Segoe UI",sans-serif;margin:0}
.format-notice-status{display:inline-flex;align-items:center;gap:7px;border:1px solid #80978535;border-radius:999px;padding:5px 10px;font-size:10px;color:var(--muted);background:#ffffff90}
.format-notice-status:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}
.format-proof-body>p{margin:0;font-size:11px;line-height:1.6;color:var(--muted);grid-column:1}
.competition-format-proof .format-coverage{grid-column:2;grid-row:2/span 3;align-content:start;margin:0;padding-left:24px;border-left:1px solid var(--line);font-size:11px;gap:10px 16px}
.format-coverage dd{font:600 12px Consolas,monospace;white-space:nowrap;color:var(--ink)}
.competition-format-proof .format-candidates{grid-column:1/-1;list-style:none;margin:8px 0 0;padding:12px 0 0;border-top:1px solid var(--line);display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));font-size:11px;color:var(--muted)}
.format-candidates p{margin:4px 0;line-height:1.6}.format-candidates strong{color:var(--ink);font-weight:600}.format-candidates a{color:inherit;text-underline-offset:3px}
@media(max-width:1100px){.competition-results-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){.competition-observed-matrix.panel{padding:16px}.competition-results-layout{gap:20px}.competition-components .competition-results-layout>.panel{padding:16px}.competition-components .competition-format-proof{padding:18px}.format-proof-body{grid-template-columns:minmax(0,1fr);gap:10px}.competition-format-proof .format-coverage{grid-column:1;grid-row:auto;border-left:0;padding:12px 0 0;border-top:1px solid var(--line)}.format-notice-header{align-items:flex-start;flex-direction:column}}

.calendar-filters{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin:8px 0 16px;padding:0;border:0;background:transparent}
.calendar-filters .calendar-scope{flex:1 1 180px;min-width:0;max-width:100%;padding:0;border:0;background:none}
.club .competition-funnel.calendar-filters{--calendar-columns:3;display:grid;grid-template-columns:repeat(var(--calendar-columns),minmax(0,1fr));align-items:end;gap:10px;margin:10px 0 0;padding:0;border:0;background:none}
.competition-funnel.calendar-filters:has(>label:nth-child(4)){--calendar-columns:4}
@media(max-width:1100px){.club .competition-funnel,.club .competition-funnel.calendar-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.club .competition-funnel,.club .competition-funnel.calendar-filters{grid-template-columns:minmax(0,1fr)}}
.calendar-reset:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.calendar-reset{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;border:0;padding:8px 0;background:none;color:var(--accent);font:11px/1.4 "Segoe UI",sans-serif;cursor:pointer;text-underline-offset:4px}.calendar-reset:hover{text-decoration:underline}.calendar-reset svg{width:17px;height:17px}
@media(max-width:600px){.calendar-filters{gap:10px}.calendar-filters .calendar-scope{flex-basis:100%}.calendar-reset{width:100%;border-radius:0;padding-bottom:0}}
.bracket-tie-junction{fill:#8b9994;opacity:.8}
.bracket-tie{height:104px}.bracket-tie>header{padding:4px 8px;font-size:8px}.bracket-tie-label{margin-left:auto;white-space:nowrap}.bracket-tie .bracket-team{min-height:22px;padding:1px 8px;font-size:10px;line-height:11px}.bracket-leg{display:grid;grid-template-columns:46px 1fr 45px;align-items:center;gap:5px;padding:0 8px;font-size:9px;line-height:14px;color:var(--muted)}.bracket-leg b{text-align:right;color:var(--ink);font:600 10px/14px Consolas,monospace}.bracket-leg a{text-decoration:underline;text-underline-offset:2px}.bracket-leg time{white-space:nowrap}

.observed-ties{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:12px}.observed-ties article{padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.observed-ties p{margin:6px 0;font-size:12px}.observed-ties small{display:block;color:var(--muted);margin-top:4px}.competition-observed-path h3{font-size:14px;margin:22px 0 10px}

/* Official future rounds and shared source supplements. */
.bracket-pending{padding:20px;border:1px dashed #8c9c96;border-radius:12px;display:grid;gap:8px;color:#52655e}.bracket-pending span{font-size:12px}.club-facilities{display:grid;gap:16px}.club-facilities li{display:grid;gap:4px}.team-native{display:flex;align-items:center;gap:12px}.team-native img{object-fit:contain}.source-statistics .table-scroll{overflow:auto}.source-statistics th,.source-statistics td{padding:10px;white-space:nowrap}.source-configuration{margin-top:16px}.source-configuration summary{cursor:pointer;font-weight:600}

.competition-season-nav{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}.competition-season-nav a,.competition-season-nav span{padding:6px 12px;border:1px solid #bcc9c3;border-radius:8px}.competition-season-nav [aria-current="page"]{background:#d9e9df;font-weight:700}

/* Responsive competition discovery; the principal site header is unchanged. */
@media(max-width:1100px){
 .club .competition-intro{min-height:0;padding:26px 30px}
}
@media(max-width:760px){
 .club .competition-intro{min-height:0;padding:24px}
 .competition-hero-content{width:68%}
 .competition-intro:before{background:linear-gradient(90deg,#081219cc,#08121955 70%,#08121911)}
 .club .competition-intro .eyebrow{font-size:8px;letter-spacing:.17em}
 .club .competition-intro h1{font-size:clamp(32px,6.6vw,48px)}
 .club .competition-hero-content>p:not(.eyebrow){font-size:13px}
 .competition-catalogue .competition-filter-body{padding:0}

 .competition-search-row>button{gap:10px;padding:12px 16px}
 .competition-card{padding:17px;min-height:210px}
 .competition-card h2{font-size:16px}
}
@media(max-width:520px){
 .club .competition-intro{min-height:0;padding:22px 18px;background-position:65% center}
 .competition-hero-content{width:100%}
 .competition-intro:before{background:linear-gradient(90deg,#081219e8,#08121977)}
 .club .competition-intro h1{font-size:clamp(28px,7.4vw,36px)}
 .club .competition-hero-content>p:not(.eyebrow){max-width:270px}
 .competition-search-row{gap:8px}
 .competition-query-field{flex-basis:auto}
 .competition-search input{font-size:16px;padding-top:12px;padding-bottom:12px}
 .competition-search-row>button{width:48px;min-width:48px;padding:12px;justify-content:center}.competition-submit-label{display:none}
 .competition-funnel label>span:first-child,.calendar-scope>span:first-child{font-size:9px}
 .competition-select-field select{font-size:11px;padding-left:30px;padding-right:17px}
 .competition-select-field>svg{left:8px;width:15px;height:15px}
 .competition-funnel>label:last-child{grid-column:1/-1}
 .competition-result-heading{font-size:11px;padding:10px 0}
 .competition-card{min-height:190px}
 .competition-explorer .competition-filter-body{padding:0 12px 16px}
}
@media(prefers-reduced-motion:reduce){.competition-card-art,.competition-card-bottom b,.competition-search-row>button{transition:none}}

/* Row headers share the team-cell styling across rankings and neutral balances. */
.standing-team-identity{display:inline-flex;align-items:center;gap:8px;max-width:100%;vertical-align:middle}
.standing-team-logo{flex:0 0 24px;width:24px;height:24px;object-fit:contain}
.standing-team-name{min-width:0;overflow-wrap:anywhere}
.club .standing-team-cell{font:inherit;font-size:12px;font-weight:500;text-transform:none;letter-spacing:normal;color:var(--ink);text-align:left;white-space:normal;overflow-wrap:anywhere}
.pool-summary .standing-team-cell{white-space:normal!important;text-align:left;min-width:120px!important}

.competition-phase-nav button.phase-choice{font-family:inherit;text-align:left;cursor:pointer}

/* Shared sheets keep long source labels inside their own column. */
.competition-format-proof>summary{cursor:pointer;font-weight:650}
.competition-format-proof[open]>summary{margin-bottom:18px}
.club .generic-match-heading{--ink:var(--dark-ink);--muted:var(--dark-muted);--line:var(--dark-line);background:var(--dark);color:var(--ink);border-radius:12px;padding:24px;align-items:center}
.generic-match-heading h1{font-size:clamp(1.2rem,2.2vw,2rem);overflow-wrap:anywhere}
.generic-match-heading .match-sheet-score{font-size:clamp(1.7rem,3vw,2.8rem);white-space:nowrap;flex:none}
.generic-match-heading a{color:inherit}
.club .generic-set-panel{--ink:var(--dark-ink);--muted:var(--dark-muted);--line:var(--dark-line);background:var(--dark);color:var(--ink);padding:20px 24px;margin:20px 0;border-radius:8px}
.generic-set-panel table td,.generic-set-panel table th{padding-block:8px}
#competitionResults,#competitionFixtures{scroll-margin-top:24px}
@media(max-width:480px){.generic-match-heading{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:18px}.generic-match-heading .match-sheet-score{justify-self:center}.generic-set-panel .tablewrap{max-width:100%}}

/* Names stay attached to their statistics during horizontal scrolling. */
.competition-ranking .tablewrap,.pool-matrix .tablewrap{isolation:isolate;overscroll-behavior-x:contain;scrollbar-width:thin}
.club .competition-ranking .standing-team-cell,.club .competition-ranking .standing-team-heading,.club .pool-matrix tr>th:first-child{position:sticky;left:0;z-index:2;background-color:var(--table-cell-bg,var(--surface));background-image:var(--podium-background,none);box-shadow:5px 0 8px #19202712}
.club .competition-ranking .standing-team-heading,.pool-matrix thead>tr>th:first-child{z-index:3}
.competition-ranking tr.selected{--table-cell-bg:#dfe5d7}
.competition-ranking tr.match-home{--table-cell-bg:#e9efde}
.competition-ranking tr.match-away{--table-cell-bg:#e2edf6}
.competition-ranking tr:has(.standing-team-link):hover{--table-cell-bg:var(--soft)}
.competition-ranking tr.match-home:has(.standing-team-link):hover{--table-cell-bg:#e9efde}
.competition-ranking tr.match-away:has(.standing-team-link):hover{--table-cell-bg:#e2edf6}
.competition-ranking tr[data-standing-route]{cursor:pointer}
.club .standings tr[data-standing-route] .standing-team-link::after{content:none}
.standing-retained{margin-top:12px;border-top:1px solid var(--line)}
.standing-retained>summary{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 0;font-size:12px;color:var(--muted);cursor:pointer;list-style:none}
.standing-retained>summary::-webkit-details-marker{display:none}
.standing-retained>summary::before{content:'+';font-size:18px;color:var(--ink)}
.standing-retained[open]>summary::before{content:'−'}
.club .set-scoreboard tr>th:first-child{position:sticky;left:0;z-index:2;background:var(--dark);box-shadow:5px 0 8px #0002}
.club .set-scoreboard thead>tr>th:first-child{z-index:3}

/* Multi-team ranking evolution. Native radio controls work without app handlers. */
.competition-ranking-tabs{display:flex;gap:4px;padding:4px;margin:12px 0 18px;width:fit-content;max-width:100%;border:1px solid var(--line);border-radius:10px;background:var(--bg)}
.competition-ranking-tabs button{min-height:40px;padding:9px 16px;border:0;border-radius:7px;background:transparent;color:var(--muted);font:600 12px/1.4 "Segoe UI",sans-serif;cursor:pointer}
.competition-ranking-tabs button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 2px 6px #17252b12}
.competition-ranking-tabs button:focus-visible{outline:2px solid var(--site-focus);outline-offset:2px}
.team-ranking-evolution,.ranking-evolution-all{min-width:0;max-width:100%}
.ranking-evolution-all{margin:0;color:var(--ink);font:12px/1.5 "Segoe UI",sans-serif}
.ranking-evolution-all>figcaption{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 16px;margin-bottom:6px}
.ranking-evolution-all>figcaption strong{font-size:15px}.ranking-evolution-all>figcaption span{color:var(--muted)}
.ranking-evolution-hint,.ranking-evolution-notes{margin:6px 0 14px;color:var(--muted);font-size:11px;line-height:1.65}
.ranking-evolution-end{cursor:pointer}
.ranking-evolution-end input{position:absolute;width:1px;height:1px;opacity:0}
.ranking-evolution-end>span{display:block;align-content:center;min-height:30px;padding:0 5px;border:1px solid transparent;border-radius:5px;box-sizing:border-box}
.ranking-evolution-end small{font-size:9px;color:var(--muted)}
.ranking-evolution-end input:checked+span{border-color:var(--series-color);background:color-mix(in srgb,var(--series-color) 8%,var(--surface))}
.ranking-evolution-end input:focus-visible+span{outline:2px solid var(--site-focus);outline-offset:1px}
.ranking-evolution-scroll{max-width:100%;max-height:460px;overflow:auto;border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:8px 12px;overscroll-behavior:contain;box-sizing:border-box}
.ranking-evolution-scroll:focus-visible,.ranking-evolution-values summary:focus-visible,.ranking-evolution-values>div:focus-visible{outline:2px solid var(--site-focus);outline-offset:3px}
.ranking-evolution-canvas{position:relative;isolation:isolate;display:grid;grid-template-columns:46px minmax(320px,1fr) 280px;gap:12px;min-width:670px;height:var(--chart-height)}
.ranking-evolution-podium{position:absolute;inset:0;z-index:-1;pointer-events:none}
.ranking-evolution-podium>span{position:absolute;left:0;right:0;height:28px;transform:translateY(-50%);border:0;border-radius:6px;background:color-mix(in srgb,currentColor 10%,transparent)}
.ranking-evolution-ranks .rank-badge{gap:4px;font-weight:700}
.ranking-evolution-ranks .podium-icon{width:18px;height:18px}
.ranking-evolution-ranks .rank-unit{font-size:8px}
.ranking-evolution-plot{display:block;width:100%;min-width:0;height:var(--chart-height);overflow:visible}
.ranking-evolution-path-layer{overflow:visible}
.ranking-evolution-ranks,.ranking-evolution-labels{position:relative;height:var(--chart-height);min-width:0}
.ranking-evolution-ranks>span{position:absolute;right:0;transform:translateY(-50%);color:var(--muted);font:11px/1 "Segoe UI",sans-serif}
.ranking-evolution-grid line{stroke:var(--line);stroke-width:1;stroke-dasharray:3 5}.ranking-evolution-grid text{fill:var(--muted);font:11px "Segoe UI",sans-serif}
.ranking-evolution-series{opacity:1;--curve-width:1.5;--point-radius:2.5px;--label-weight:500}
.ranking-evolution-series.is-consulted{--curve-width:2.8;--point-radius:3.5px;--label-weight:700}
.ranking-evolution-series path{fill:none;stroke:var(--series-color);stroke-linecap:round;stroke-linejoin:round;stroke-width:var(--curve-width);vector-effect:non-scaling-stroke}
.ranking-evolution-series .ranking-evolution-hit{stroke:transparent;stroke-width:14;pointer-events:stroke;cursor:pointer}
.ranking-evolution-series .ranking-evolution-path{pointer-events:none}
.ranking-evolution-series circle{cursor:pointer}
.ranking-evolution-series circle{fill:var(--series-color);stroke:var(--surface);stroke-width:1;r:var(--point-radius)}
.ranking-evolution-series .ranking-evolution-leader{stroke-width:1;stroke-dasharray:2 3;opacity:.65}
.ranking-evolution-end{position:absolute;left:0;right:0;transform:translateY(-50%);color:var(--series-color);font:var(--label-weight) 12px/14px "Segoe UI",sans-serif;overflow-wrap:anywhere}
.ranking-evolution-unranked{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:12px;padding:10px;border:1px solid var(--line);border-radius:8px}
.ranking-evolution-unranked>strong{color:var(--muted);font-size:11px}.ranking-evolution-unranked .ranking-evolution-end{position:relative;left:auto;right:auto;transform:none}.ranking-evolution-unranked .ranking-evolution-end>span{min-height:44px}
.ranking-evolution-values{margin-top:12px;border-top:1px solid var(--line)}
.ranking-evolution-values summary{min-height:44px;padding:12px 0;box-sizing:border-box;cursor:pointer;color:var(--muted);font-weight:600}
.ranking-evolution-values>div{max-width:100%;overflow:auto;max-height:360px}
.ranking-evolution-values table{border-collapse:collapse;width:100%;font-size:11px;white-space:nowrap}.ranking-evolution-values caption{text-align:left;padding:8px;font-weight:600}
.ranking-evolution-values th,.ranking-evolution-values td{padding:9px 12px;border-bottom:1px solid var(--line);text-align:center}
.ranking-evolution-values th:first-child{position:sticky;left:0;z-index:1;max-width:200px;white-space:normal;text-align:left;background:var(--surface)}
@media(max-width:760px){.ranking-evolution-podium>span{height:42px}.competition-ranking-tabs{width:100%;box-sizing:border-box}.competition-ranking-tabs button{flex:1;min-height:44px}.ranking-evolution-canvas{height:calc(var(--chart-height)*1.5)}.ranking-evolution-plot,.ranking-evolution-ranks,.ranking-evolution-labels{height:100%}.ranking-evolution-end>span{min-height:44px}.ranking-evolution-end small{display:none}.ranking-evolution-scroll{border-radius:9px}}

/* A native disclosure is shared by catalogue and match filters. */
.competition-filter-disclosure{min-width:0;margin:12px 0 16px;border:0;background:transparent}
.competition-filter-disclosure>summary,.competition-explorer .competition-filter-disclosure>summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:6px 12px;min-height:44px;padding:8px 0;margin:0;border:0;background:transparent;list-style:none;cursor:pointer}
.competition-filter-disclosure>summary::-webkit-details-marker{display:none}
.competition-filter-disclosure>summary::after{content:'';width:7px;height:7px;margin-left:auto;margin-right:2px;flex:none;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg)}
.competition-filter-disclosure[open]>summary::after{transform:rotate(225deg)}
.competition-filter-disclosure>summary>b{font:600 12px/1.5 "Segoe UI",sans-serif;color:var(--ink)}
.competition-filter-summary{flex:1;min-width:0;color:var(--muted);font:11px/1.5 "Segoe UI",sans-serif;overflow-wrap:anywhere;white-space:normal}
.competition-filter-disclosure>summary:focus-visible{outline:2px solid var(--site-focus);outline-offset:3px;border-radius:4px}
.competition-filter-controls{padding:4px 0 8px}
.competition-filter-controls .calendar-filters{margin-top:0}
.competition-filter-disclosure:not([open])>.competition-filter-controls{display:none}
/* Only dense spatial views extend beyond the shared reading column. */
@media(min-width:1600px){
 .club:not(.favorites-page) .competition-observed-matrix.panel,.club:not(.favorites-page) .competition-bracket.panel{
  width:calc(100vw - 2 * var(--site-page-gutter));max-width:none;
  margin-inline:calc((100% - (100vw - 2 * var(--site-page-gutter))) / 2);
 }
}
@media(max-width:760px){
 .competition-filter-disclosure{margin:8px 0 12px;border-bottom:1px solid var(--line)}
 .competition-filter-disclosure>summary,.competition-explorer .competition-filter-disclosure>summary{padding:10px 0;gap:6px 10px}
 .competition-filter-controls .competition-funnel{grid-template-columns:minmax(0,1fr);gap:10px;margin:4px 0}
 .competition-filter-controls .competition-select-field select{padding-left:12px;font-size:13px}
 .competition-filter-controls .competition-select-field>svg{display:none}
 .competition-ranking .standing-team-cell,.competition-ranking .standing-team-heading{width:clamp(120px,38vw,180px);min-width:120px}
 .club .generic-match-heading,.club .generic-set-panel{padding:18px}
}

/* Catalogue refresh: common banner, restrained artwork and soft filter panels. */
.club .competition-discovery{padding-top:0}
body.club main.shell .competition-hero{background:linear-gradient(90deg,#142332d9 0%,#192b3aa6 35%,#20324340 62%,transparent 85%),url('/assets/site/competition-abstract-37626c374dc4.png') center/cover no-repeat}
.club .competition-hero:before{content:none}
.club .competition-hero-content{width:100%;max-width:680px}
.club .competition-hero .competition-search{margin-top:22px}
.club .site-banner .competition-search-row{padding:6px;border-radius:16px;background:#ffffff12;border:1px solid #ffffff24;backdrop-filter:blur(6px)}
.club .site-banner .competition-search input{min-height:48px;border-radius:11px;border-color:#ffffff80;background:#fffffff2}
.club .site-banner .competition-search-row>button{border-radius:11px;padding-inline:20px}
.club .competition-discovery>.competition-catalogue{box-sizing:border-box;width:calc(100% - 2 * var(--site-page-gutter));max-width:var(--site-content-max);margin:26px auto 0}
.club .competition-catalogue .competition-filter-disclosure{padding:10px 22px 16px;border:1px solid #e8edf2;border-radius:18px;background:linear-gradient(145deg,#fff,#f7f9fb);box-shadow:0 6px 24px #25385206}
.club .competition-catalogue .competition-filter-disclosure>summary{padding:8px 0 12px}
.club .competition-catalogue .competition-filter-disclosure>summary>b{font-size:14px}
.club .competition-catalogue .competition-funnel{gap:14px}
.club .competition-catalogue label.competition-filter-field>span:first-child{font-size:11px;color:#526171;margin-bottom:8px}
.club .competition-catalogue .competition-select-field select{min-height:46px;border-radius:11px;border-color:#e1e7ed;background:#fff;font-size:13px}
.club .competition-catalogue .competition-search-tools{justify-content:flex-end;padding-top:10px}
.club .competition-catalogue .competition-search-tools button{padding:7px 12px;min-height:34px;border-radius:18px;background:#f0f3f6;color:#526171}
.club .competition-cards{gap:18px}
.club .competition-card{border:1px solid #e6ecf2;border-radius:18px;background:linear-gradient(140deg,#fff,#f7f9fb);box-shadow:0 5px 20px #25385207;overflow:hidden;transition:box-shadow .18s,border-color .18s}
.club .competition-card:hover{transform:none;border-color:#d5dfe8;box-shadow:0 10px 28px #25385212}
.club .competition-card h2{color:#273541;line-height:1.35;overflow-wrap:anywhere}
.club .competition-card-kicker{color:#64748b}
.club .competition-card-kicker>span:last-child{padding:4px 9px;border-radius:12px;background:#edf2f7;font-size:10px;color:#526171}
.club .competition-card-bottom{border-top:1px solid #e9eef3;padding-top:14px}
.club .competition-card-bottom b{border-radius:50%;background:#edf2f7;color:#526171;box-shadow:none}
@media(max-width:760px){.club .competition-catalogue .competition-filter-disclosure{padding:8px 14px 12px}.club .competition-hero-content{width:100%}.club .site-banner .competition-search-row>button{padding-inline:14px}.club .competition-discovery>.competition-catalogue{margin-top:18px}}
@media(prefers-reduced-motion:reduce){.club .competition-card{transition:none}}

.club .directory-hero .directory-search{display:block;max-width:680px;margin-top:22px}
.club .directory-hero .directory-clear{display:block;margin-top:8px;padding:3px 0;min-height:24px;border:0;border-radius:0;background:transparent;font-size:11px;color:#dae2e7;text-decoration:underline;text-underline-offset:3px}
.club .directory-hero .directory-clear:disabled{visibility:hidden}
.club .competition-hero-content>p.competition-banner-count{margin-top:12px;max-width:none;color:#e2e8ed;font-size:13px;font-weight:600}

/* Competition details: shared content width and light cards, across all formats.
   Matrix tables and cup phase visualisations deliberately keep their own styles. */
.club .competition-detail-page{padding-top:0}
.club .competition-detail-page .competition-detail{display:flex;flex-direction:column;gap:28px;min-width:0}
.club .competition-detail-page .competition-detail> :not(.competition-detail-banner){box-sizing:border-box;width:calc(100% - 2 * var(--site-page-gutter));max-width:var(--site-content-max);margin:0 auto}
body.club main.shell .competition-detail-banner{min-height:270px;margin:0;display:flex;align-items:center;padding-block:36px}
body.club main.shell .competition-detail-banner .site-banner-content{max-width:var(--site-content-max);width:100%}
.club .competition-detail-banner h1{font:750 clamp(25px,3vw,44px)/1.2 "Segoe UI",sans-serif;color:#fff;letter-spacing:-.8px;margin:16px 0;max-width:1100px;overflow-wrap:anywhere}
.club .competition-detail-banner .eyebrow{color:#eef3f8;font-size:11px;letter-spacing:1px}
.club .competition-detail-banner .competition-detail-subtitle{color:#e0e8f1;font-size:14px;max-width:1000px}
.club .competition-detail-banner>[data-agenda-trigger]{align-self:flex-end;flex:none}
.club .competition-detail-page .competition-explorer{border:0;border-radius:16px;background:#fff;box-shadow:0 6px 22px #29436b0c}
.club .competition-detail-page .competition-metrics{gap:14px}
.club .competition-detail-page .competition-metrics>div{--metric:78 132 205;align-items:flex-start;text-align:left;justify-content:flex-start;gap:12px;min-height:148px;padding:19px;border:1px solid rgb(var(--metric)/.2);border-radius:16px;background:radial-gradient(ellipse at top left,rgb(var(--metric)/.13),transparent 80%),#fff;box-shadow:0 4px 20px rgb(var(--metric)/.08);color:#43536b}
.club .competition-detail-page .competition-metrics>div:nth-child(2){--metric:218 98 105}.club .competition-detail-page .competition-metrics>div:nth-child(3){--metric:148 110 202}.club .competition-detail-page .competition-metrics>div:nth-child(4){--metric:52 164 118}.club .competition-detail-page .competition-metrics>div:nth-child(5){--metric:211 135 61}.club .competition-detail-page .competition-metrics>div:nth-child(6){--metric:63 160 174}
.club .competition-detail-page .competition-metrics dt{display:flex;align-items:center;gap:9px;color:#657b96;font:600 12px/1.4 "Segoe UI",sans-serif;text-transform:none;letter-spacing:0}
.club .competition-detail-page .competition-metrics dt svg{flex:none;width:28px;height:28px;padding:5px;box-sizing:content-box;border-radius:11px;background:rgb(var(--metric)/.1);color:rgb(var(--metric))}
.club .competition-detail-page .competition-metrics dd{font:750 32px/1.1 "Segoe UI",sans-serif;color:#43536b;letter-spacing:-.7px}
.club .competition-detail-page .competition-metrics small{color:#8290a3;font-size:10px}
.club .competition-detail-page :is(.competition-fixtures,.competition-participants,.competition-chart,.competition-format-notice,.source-configuration,.competition-edition-proof){border:1px solid #e6edf6;border-radius:18px;background:linear-gradient(135deg,#fff,#f8fbff);box-shadow:0 6px 24px #29436b0b;padding:22px;color:#43536b}
.club .competition-detail-page :is(.competition-fixtures,.competition-participants,.competition-chart)>h2,.club .competition-detail-page .competition-fixtures>header>h2{font:700 22px/1.35 "Segoe UI",sans-serif;color:#43536b}
.club .competition-detail-page .competition-charts{gap:24px}.club .competition-detail-page .competition-charts>.panel{margin:0}
.club .competition-detail-page .competition-chart li{border-color:#e7edf5;padding:12px 0;color:#60748e}
.club .competition-detail-page .competition-bar-track{background:#eaf0f8;overflow:visible;height:9px}
.club .competition-detail-page .competition-bar-track>span{background:linear-gradient(90deg,#a7c7f5,#528ad9);box-shadow:0 0 10px #528ad933}
.club .competition-detail-page .competition-chart .muted{color:#8190a4}
.club .competition-detail-page .competition-match-tabs{gap:6px;padding:5px;border-radius:14px;background:#eef3fa}
.club .competition-detail-page .competition-match-tabs button{border:0;border-radius:10px;padding:9px 14px;color:#71849f;background:transparent;font:600 12px "Segoe UI",sans-serif}
.club .competition-detail-page .competition-match-tabs button[aria-pressed=true]{background:#fff0e5;color:#b2592d;box-shadow:0 2px 8px #bf6d2512}
.club .competition-detail-page .competition-fixtures-list{display:grid;gap:10px}
.club .competition-detail-page .competition-fixture{padding:16px;border:1px solid #e6edf5;border-radius:12px;background:#fff;box-shadow:0 3px 12px #29436b08;color:#43536b}
.club .competition-detail-page .competition-fixture time,.club .competition-detail-page .competition-fixture small{color:#8291a7}
.club .competition-detail-page .competition-fixture>b{padding:9px;border-radius:9px;background:#eef3fa;color:#43536b;text-align:center;white-space:nowrap}
.club .competition-detail-page .competition-fixture:hover{border-color:#c9d9ed;box-shadow:0 5px 16px #29436b12}
.club .competition-detail-page .competition-participants .participant-card{border:0;border-radius:12px;background:#fff;box-shadow:0 3px 14px #29436b0d;color:#43536b}
.club .competition-detail-page .competition-participants a.participant-card:hover{transform:none;box-shadow:0 5px 18px #29436b1a}
.club .competition-detail-page .competition-season-nav{display:flex;flex-wrap:wrap;gap:8px}
.club .competition-detail-page .competition-season-nav :is(a,span){padding:10px 16px;border:1px solid #e0e8f2;border-radius:12px;background:#fff;color:#71849e;font:600 12px "Segoe UI",sans-serif;text-decoration:none}
.club .competition-detail-page .competition-season-nav [aria-current=page]{background:#fff0e5;border-color:#efcbb4;color:#ad5328}
.club .competition-detail-page .competition-filter-disclosure{padding:10px 14px;border-radius:12px;background:#f2f6fc;border:0}
.club .competition-detail-page .competition-select-field select{border:1px solid #dfe7f2;border-radius:10px;background:#fff;color:#60748e}
.club .competition-detail-page .competition-pagination button{border-color:#e1e8f2;background:#fff;border-radius:10px;color:#60748e}
.club .competition-detail-page .competition-coverage{padding:16px 20px;border-radius:12px;background:#f0f4f9;color:#8190a4}
.club .competition-detail-page .competition-observed-matrix.panel,.club .competition-detail-page .competition-bracket.panel{width:100%;max-width:100%;margin-inline:0}
@media(max-width:1100px){.club .competition-detail-page .competition-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.club .competition-detail-page .competition-detail{gap:22px}body.club main.shell .competition-detail-banner{min-height:240px;padding-block:28px;flex-wrap:wrap}.club .competition-detail-page :is(.competition-fixtures,.competition-participants,.competition-chart){padding:16px}.club .competition-detail-page .competition-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.club .competition-detail-page .competition-metrics>div{padding:14px}.club .competition-detail-page .competition-metrics dt svg{width:20px;height:20px}.club .competition-detail-page .competition-match-tabs{margin:16px 0}.club .competition-detail-page .competition-fixture{padding:12px}}

.club .competition-detail-page .competition-detail>:is(.competition-observed-matrix.panel,.competition-bracket.panel){width:calc(100% - 2 * var(--site-page-gutter));max-width:var(--site-content-max);margin-inline:auto}
.club .competition-detail-page :is(.competition-format-proof,.source-statistics){border:1px solid #e6edf6;border-radius:16px;background:#f8fbff;color:#637792;box-shadow:0 5px 18px #29436b08}
.club .competition-detail-page :is(.competition-format-proof,.source-configuration,.competition-edition-proof)>summary{font:650 13px/1.5 "Segoe UI",sans-serif;color:#60748e;cursor:pointer}
.club .competition-detail-page .competition-participants :is(.participant-identity small,.participant-league){color:#8291a6}
.club .competition-detail-page .competition-phase-nav .phase-choice{background:#fff;border-color:#e4ebf4;color:#70829c;box-shadow:0 3px 12px #29436b08}
.club .competition-detail-page .competition-phase-nav .phase-choice[aria-current=page]{background:#fff0e5;border-color:#efcbb4;color:#ad5328}

/* Calendar cards use the shared match-list renderer and layout. */
.club .competition-detail-page .competition-fixtures-list{padding:0;margin:18px 0 0;list-style:none;gap:12px}
.club .competition-match-logo{position:relative;display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:50%;background:#e6eefb;color:#55749d;font:700 12px "Segoe UI",sans-serif}
.club .competition-match-logo img.standing-team-logo{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#fff;border-radius:8px}
.club .competition-fixtures .match-list-row .home-recent-details small{line-height:1.5;color:#8090a5}
.club .competition-fixtures .match-list-row:not(a){cursor:default}
@media(max-width:600px){.club .competition-match-logo{width:28px;height:28px;flex-basis:28px;font-size:10px}}
/* Appearance only: retain all bracket geometry, phase data and interactions. */
.club .competition-detail-page .competition-observed-path{padding:22px;border:1px solid #e4ecf7;border-radius:20px;background:linear-gradient(135deg,#f2f7ff,#fff 70%);box-shadow:0 8px 26px #355b8c0c}
.club .competition-detail-page .competition-observed-path>h2{font:700 23px/1.35 "Segoe UI",sans-serif;color:#43536b;margin:0 0 10px}
.club .competition-detail-page .competition-observed-path>:is(.muted,.data-note){color:#8090a5;font-size:12px;line-height:1.6}
.club .competition-detail-page .competition-bracket.panel{border:0;border-radius:16px;background:#fff;box-shadow:0 5px 18px #355b8c09;margin-top:18px}
.club .competition-detail-page .bracket-preview,.club .bracket-dialog .bracket-stage{border-color:#e2eaf5;border-radius:14px;background:radial-gradient(circle,#9eb8db22 1px,transparent 1px) 0 0/20px 20px,#f7faff}
.club :is(.competition-detail-page,.bracket-dialog) .bracket-match{background:#fff;border-color:#dbe6f5;border-radius:10px;box-shadow:0 3px 10px #3c629c13;color:#50627d}
.club :is(.competition-detail-page,.bracket-dialog) .bracket-match>header{background:#eff4fb;border-color:#e4ebf6;color:#7c90ad}
.club :is(.competition-detail-page,.bracket-dialog) .bracket-match>small{color:#8293aa}
.club :is(.competition-detail-page,.bracket-dialog) .bracket-winner{background:#edf8f2;color:#27815a}
.club :is(.competition-detail-page,.bracket-dialog) .bracket-team-followed{background:#fff0e4}
.club :is(.competition-detail-page,.bracket-dialog) .bracket-match-followed{border-color:#d18a5e;box-shadow:0 0 10px #d18a5e25}
.club :is(.competition-detail-page,.bracket-dialog) .bracket-connectors path{stroke:#9bafcb;opacity:.85}
.club :is(.competition-detail-page,.bracket-dialog) .bracket-connectors .bracket-path-followed{stroke:#cb743e;opacity:1}
.club :is(.competition-detail-page,.bracket-dialog) .bracket-round-title{color:#43536b}
.club :is(.competition-detail-page,.bracket-dialog) .bracket-round-title :is(span,small){color:#8394ac}
.club .competition-detail-page .bracket-preview-hint{border-color:#e0e8f3;border-radius:10px;background:#fff;color:#637e9f;box-shadow:0 3px 12px #37578212}
.club .bracket-dialog{border:1px solid #e1e9f5;border-radius:20px;background:#f9fbff;box-shadow:0 20px 80px #1e365333;color:#43536b}
.club .bracket-dialog .bracket-toolbar{color:#43536b}.club .bracket-dialog .bracket-tools button{border-color:#e0e8f3;background:#fff;color:#607b9f;border-radius:10px}
.club .bracket-dialog .bracket-legend{color:#7f91aa}
@media(max-width:600px){.club .competition-detail-page .competition-observed-path{padding:16px}.club .competition-detail-page .competition-observed-path>h2{font-size:20px}}

.bracket-team>span.bracket-team-identity{display:flex;align-items:center;gap:6px;min-width:0;flex:1;overflow:hidden}
.bracket-team-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-width:0}
.bracket-team-logo{position:relative;display:grid;place-items:center;flex:0 0 20px;width:20px;height:20px;border-radius:50%;background:#e5edfa;color:#52729b;font:700 8px/1 "Segoe UI",sans-serif;font-style:normal}
.bracket-team-logo img.standing-team-logo{position:absolute;inset:0;width:20px;height:20px;object-fit:contain;background:#fff;border-radius:50%;margin:0}

.club .competition-banner-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:20px}
.club .competition-banner-actions:empty{display:none}
.club .competition-banner-actions .favorites-follow-bar{margin:0;justify-content:flex-start;order:0}
.club .competition-banner-actions>[data-agenda-trigger]{display:flex;order:1}

/* Secondary information shares the light card and disclosure vocabulary. */
.club :is(.source-statistics,.team-staff,.related-content).panel{box-sizing:border-box;min-width:0;padding:24px;border:1px solid #e4ecf6;border-radius:18px;background:linear-gradient(130deg,#f6f9ff,#fff 65%);box-shadow:0 6px 24px #29436b0a;color:#61758f;margin-block:24px}
.club :is(.source-statistics,.team-staff,.related-content)>h3{margin:0 0 18px;font:750 22px/1.3 "Segoe UI",sans-serif;color:#46556a;letter-spacing:-.02em}
.club .source-statistics .table-scroll{border:1px solid #e5ecf6;border-radius:13px;background:#fff;max-width:100%;overflow:auto}
.club .source-statistics .table-scroll+.table-scroll{margin-top:18px}
.club .source-statistics table{width:100%;border-collapse:collapse;font-size:12px}
.club .source-statistics thead th{background:#eef4fb;color:#7a8da7;padding:12px 15px;font-size:11px;font-weight:650}
.club .source-statistics tbody :is(th,td){padding:11px 15px;border-bottom:1px solid #e9eef6;color:#61758f;vertical-align:middle}
.club .source-statistics tbody th{font-weight:650;text-align:left;color:#4d607a}
.club .source-statistics tbody tr:last-child :is(th,td){border-bottom:0}
.club .source-statistics tbody tr:hover{background:#f5f9fe}
.club .team-staff ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:12px}
.club .team-staff ul+ul{margin-top:12px}
.club .team-staff li{display:flex;align-items:center;gap:12px;padding:14px;background:#fff;border-radius:13px;box-shadow:0 3px 14px #29436b09;min-width:0}
.club .staff-avatar{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:50%;background:#e7eefb;color:#6484b0;font:700 11px "Segoe UI",sans-serif}
.club .team-staff li strong{display:block;font-size:13px;color:#50627c;overflow-wrap:anywhere}.club .team-staff li small{display:block;margin-top:4px;color:#8595aa;font-size:11px}
.club .team-native{padding:14px 18px;border:1px solid #e3ecf8;border-radius:14px;background:#f1f6fd;color:#617c9f;font-size:12px;font-weight:650;box-shadow:0 4px 15px #29436b07}
.club .team-native img{border-radius:10px;background:#fff;padding:5px}
.club .related-content ul{padding:0;margin:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}
.club .related-content li{padding:12px 15px;border-radius:11px;background:#fff3e9;color:#9f6138;font-size:12px}
.club .related-content a{color:var(--site-primary);text-decoration:none;font-weight:650}
.club :is(.freshness-info,.source-configuration,.competition-edition-proof,.competition-format-proof,.bracket-text){box-sizing:border-box;border:1px solid #e3eaf4;border-radius:14px;background:#f7faff;box-shadow:0 3px 14px #29436b07;padding:16px 18px;color:#7588a1;font-size:12px;line-height:1.65}
.club :is(.freshness-info,.source-configuration,.competition-edition-proof,.competition-format-proof,.bracket-text)>summary{display:flex;align-items:center;gap:12px;list-style:none;cursor:pointer;font:650 13px/1.5 "Segoe UI",sans-serif;color:#5d728e;min-height:24px}
.club :is(.freshness-info,.source-configuration,.competition-edition-proof,.competition-format-proof,.bracket-text)>summary::-webkit-details-marker{display:none}
.club :is(.freshness-info,.source-configuration,.competition-edition-proof,.competition-format-proof,.bracket-text)>summary::after{content:'⌄';margin-left:auto;flex-shrink:0;width:26px;height:26px;display:grid;place-items:center;border-radius:8px;background:#eaf0f9;color:#748cab;font-size:17px}
.club :is(.freshness-info,.source-configuration,.competition-edition-proof,.competition-format-proof,.bracket-text)[open]>summary{margin-bottom:16px}
.club :is(.freshness-info,.source-configuration,.competition-edition-proof,.competition-format-proof,.bracket-text)[open]>summary::after{content:'⌃'}
.club .freshness-info dl{display:grid;grid-template-columns:minmax(130px,1fr) minmax(0,1.5fr);gap:9px 18px;margin:0;padding:14px;border-radius:10px;background:#fff;font-size:11px}
.club .freshness-info dt{color:#8b9aaf}.club .freshness-info dd{margin:0;color:#627892;overflow-wrap:anywhere}
.club :is(.source-statistics .table-scroll,.related-content a,details>summary):focus-visible{outline:3px solid var(--site-focus);outline-offset:3px}
@media(max-width:600px){.club :is(.source-statistics,.team-staff,.related-content).panel{padding:17px;margin-block:22px}.club .source-statistics :is(th,td){padding:10px}.club .freshness-info dl{grid-template-columns:1fr;gap:4px}.club .freshness-info dd{margin-bottom:8px}.club :is(.source-statistics,.team-staff,.related-content)>h3{font-size:20px}}

/* Local match sheets use the same comfortable content width and light cards. */
.club .competition-match-sheet{width:min(100% - 48px,1560px);margin:32px auto 48px;display:flex;flex-direction:column;gap:24px;min-width:0;box-sizing:border-box}
.club .competition-match-sheet>:is(header,section,p,details){margin:0}
.club .competition-match-sheet .generic-match-heading{--ink:#3d4c60;--muted:#667890;--line:#e5ecf5;display:block;color:var(--ink);background:radial-gradient(ellipse at top left,#eef5ff,transparent 70%),#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 10px 28px #2638490c;padding:26px}
.club .generic-match-teams{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:24px;margin:24px 0}
.club .generic-match-team{display:flex;align-items:center;justify-content:center;gap:14px;min-width:0;overflow-wrap:break-word}
.club .generic-match-team .competition-match-logo{width:48px;height:48px;flex:0 0 48px}
.club .generic-match-team .standing-team-logo{width:48px;height:48px}
.club .generic-match-heading .match-sheet-score{font-size:28px;border-radius:12px;padding:12px;background:#eef3f8;color:#344557}
.club .competition-match-sheet .panel{padding:24px;border:0;border-radius:18px;background:#fff;box-shadow:0 8px 25px #2538520c}
.club .competition-match-sheet dl{display:grid;grid-template-columns:minmax(80px,150px) minmax(0,1fr);gap:10px 20px}.club .competition-match-sheet dd{margin:0}
@media(max-width:600px){.club .competition-match-sheet{width:calc(100% - 24px);margin-top:24px;gap:20px}.club .competition-match-sheet .generic-match-heading,.club .competition-match-sheet .panel{padding:16px}.club .generic-match-teams{gap:10px;font-size:15px}.club .generic-match-team{flex-direction:column;gap:10px;text-align:center}.club .generic-match-heading .match-sheet-score{font-size:20px;padding:9px}.club .competition-match-sheet dl{grid-template-columns:1fr;gap:4px}.club .competition-match-sheet dd{margin-bottom:12px}}

.bracket-mobile-help{display:none}@media(max-width:760px){.bracket-toolbar .bracket-desktop-help{display:none}.bracket-toolbar .bracket-mobile-help{display:block}}

/* Matchup axes identify teams by their attested logo, or an initials fallback. */
.pool-team-logo{position:relative;display:inline-grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:50%;overflow:hidden;background:#e8eef7;color:#536985;font:700 10px/1 "Segoe UI",sans-serif;vertical-align:middle}
.pool-team-logo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#f8fafc}
.pool-matrix .pool-opponent{max-height:none;font-size:10px;line-height:1.35;white-space:normal;overflow:visible;overflow-wrap:anywhere}
.pool-matrix tbody th>span:last-child{font-size:11px;line-height:1.35}
.club .pool-matrix tr>th{vertical-align:middle;text-align:center;white-space:normal;overflow-wrap:anywhere}
.club .pool-matrix tr>th:first-child{box-shadow:none;text-align:center}

/* Personal view and follow controls only. Sporting palettes remain unchanged. */
div.favorites-page{min-width:0;padding:12px 0 32px;display:grid;gap:24px}
div.favorites-page :where(h1,h2,h3,p){margin:0}
.favorites-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;flex-shrink:0}
div.favorites-page :where(.favorites-button,.favorites-pagination button){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:9px 14px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font:600 12px/1.35 "Segoe UI",sans-serif;text-decoration:none;cursor:pointer}
div.favorites-page .favorites-button-primary{background:var(--site-primary);color:var(--site-primary-ink);border-color:transparent}
div.favorites-page .favorites-button-primary:hover{background:var(--site-primary-hover)}
div.favorites-page :where(.favorites-button,.favorites-pagination button):hover{border-color:var(--accent)}
div.favorites-page :where(button,a,summary,input):focus-visible,.favorite-follow:focus-visible{outline:3px solid var(--site-focus);outline-offset:3px}
div.favorites-page button:disabled{opacity:.45;cursor:default}
div.favorites-page .favorites-button svg{width:16px;height:16px;flex-shrink:0}
.favorites-meta{display:flex;align-items:center;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:12px}
.favorites-status{padding:12px 16px;border:1px solid var(--line);border-radius:9px;color:var(--muted);font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--surface)}
.favorites-status-warning{border-left:3px solid var(--site-primary)}
.favorites-status-text{min-width:0;overflow-wrap:anywhere}
.favorites-management{min-width:0;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.favorites-management>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 20px;cursor:pointer;font-size:14px;font-weight:650}
.favorites-management>summary::-webkit-details-marker{display:none}
.favorites-management>summary span:last-child{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px;font-weight:500}
.favorites-management>summary svg{width:17px;height:17px;transition:transform .15s}
.favorites-management[open]>summary svg{transform:rotate(180deg)}
.favorites-management[open]>summary{border-bottom:1px solid var(--line)}
.favorites-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:12px;padding:16px 20px;list-style:none;margin:0}
.favorites-card{min-width:0;display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--line);border-radius:9px;background:var(--bg)}
.favorites-card-heading{display:flex;align-items:flex-start;gap:12px}
.favorites-card-heading>div{min-width:0;flex:1}
.favorites-type{font-size:10px;font-weight:650;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:5px!important}
.favorites-card h3{font-size:15px;line-height:1.4;overflow-wrap:anywhere}
.favorites-card h3 a{color:var(--ink);text-decoration:none}
.favorites-card h3 a:hover{text-decoration:underline;text-underline-offset:3px}
.favorites-card-season{font-size:11px;color:var(--muted);overflow-wrap:anywhere}
.favorites-remove{width:32px;height:32px;flex-shrink:0;display:grid;place-items:center;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer}
.favorites-remove:hover{border-color:var(--line);background:var(--surface);color:var(--ink)}
.favorites-remove svg{width:16px;height:16px}
.favorites-scope{color:var(--muted);font-size:11px;line-height:1.5}
.favorites-reserve{display:flex;align-items:center;gap:8px;font-size:12px;margin-top:auto;padding-top:8px;border-top:1px solid var(--line);cursor:pointer}
.favorites-reserve input{accent-color:var(--site-focus);width:16px;height:16px;margin:0;flex-shrink:0}
.favorites-card-state{font-size:11px;color:var(--muted);display:flex;gap:6px;align-items:center}
.favorites-card-state svg{width:14px;height:14px;flex-shrink:0}
.favorites-empty{display:grid;justify-items:center;gap:16px;text-align:center;padding:clamp(28px,5vw,64px) 20px;border:1px dashed var(--line);border-radius:12px}
.favorites-empty>svg{width:36px;height:36px;color:var(--accent)}
.favorites-empty h2{font-size:22px;font-weight:700;letter-spacing:-.025em}
.favorites-empty p{max-width:440px;color:var(--muted);font-size:14px}
.favorites-empty .favorites-actions{justify-content:center}
.favorites-feed{min-width:0}
.favorites-feed-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.favorites-feed-tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);min-width:0}
.favorites-feed-tabs button{display:flex;align-items:center;gap:8px;padding:10px 0;border:0;border-bottom:3px solid transparent;background:none;color:var(--muted);font-size:15px;font-weight:600;cursor:pointer}
.favorites-feed-tabs button[aria-pressed=true]{border-bottom-color:var(--site-focus);color:var(--ink)}
.favorites-feed-tabs button span{display:grid;place-items:center;min-width:22px;height:20px;padding:0 5px;border-radius:5px;background:var(--soft);color:var(--muted);font-size:10px;font-weight:650}
.favorites-range{font-size:11px;color:var(--muted);white-space:nowrap}
.favorites-matches{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.favorites-match{display:grid;grid-template-columns:76px minmax(0,1fr) 82px;align-items:center;gap:18px;padding:15px 12px;border-bottom:1px solid var(--line);border-radius:6px;color:var(--ink);text-decoration:none;min-width:0;transition:background .15s}
a.favorites-match:hover{background:var(--surface)}
.favorites-match-date{font-size:12px;line-height:1.5;color:var(--muted)}
.favorites-match-date time{display:block;font-weight:650;color:var(--ink)}
.favorites-match-main{min-width:0;display:grid;gap:5px}
.favorites-match-teams{display:grid;gap:3px;font-size:14px;font-weight:600;line-height:1.35;overflow-wrap:anywhere}
.favorites-match-context{font-size:11px;color:var(--muted);overflow-wrap:anywhere}
.favorites-match-score{display:flex;justify-content:center;align-items:center;gap:8px;white-space:nowrap;font-size:23px;line-height:1;font-weight:700;letter-spacing:-.03em}
.favorites-match-score small{font-size:14px;color:var(--muted);font-weight:400}
.favorites-match-score>span{font-size:18px;font-weight:450}
.favorites-match-score>strong{font-size:23px;font-weight:750}
.favorites-match-status{font-size:11px;color:var(--muted);text-align:center;overflow-wrap:anywhere}
.favorites-feed-empty{padding:28px 12px;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}
.favorites-pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:18px;font-size:12px;color:var(--muted)}
.favorites-rankings{display:grid;gap:12px;min-width:0}
.favorites-rankings>h2{font-size:18px;font-weight:650;letter-spacing:-.015em}
.favorites-ranking-list{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;list-style:none;padding:0;margin:0}
.favorite-follow{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:8px 13px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font:600 12px/1.35 "Segoe UI",sans-serif;white-space:nowrap;cursor:pointer}
.favorite-follow svg{width:17px;height:17px;flex-shrink:0}
.favorite-follow small{font-size:10px;font-weight:400;opacity:.8;padding-left:7px;border-left:1px solid var(--line)}
.favorites-management-note{padding:0 20px 16px}
.favorites-ranking-disclosure{border:1px solid var(--line);border-radius:10px;min-width:0;background:var(--surface)}
.favorites-ranking-disclosure>summary{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;list-style:none;cursor:pointer;font-size:12px}
.favorites-ranking-disclosure>summary::-webkit-details-marker{display:none}
.favorites-ranking-disclosure>summary>span:first-child{min-width:0;display:grid;gap:3px}
.favorites-ranking-disclosure>summary strong{font-size:14px;overflow-wrap:anywhere}
.favorites-ranking-disclosure>summary small{font-size:11px;color:var(--muted)}
.favorites-ranking-disclosure>summary>span:last-child{display:flex;align-items:center;gap:10px;color:var(--muted);flex-shrink:0}
.favorites-ranking-disclosure>summary svg{width:16px;height:16px}
.favorites-ranking-disclosure[open]>summary svg{transform:rotate(180deg)}
.favorites-ranking-disclosure>.panel{margin:0;border:0;border-top:1px solid var(--line);border-radius:0 0 9px 9px}
.favorites-import-preview{display:grid;gap:14px;padding:20px;border:1px solid var(--site-primary);border-radius:12px;background:var(--surface)}
.favorites-import-preview h2{font-size:18px}
.favorites-import-preview>p{font-size:13px;color:var(--muted)}
.favorites-import-preview dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}
.favorites-import-preview dl>div{display:flex;flex-direction:column-reverse;gap:4px;padding:12px;background:var(--bg);border-radius:8px}
.favorites-import-preview dt{font-size:11px;color:var(--muted);overflow-wrap:anywhere}
.favorites-import-preview dd{margin:0;font-size:26px;font-weight:700;line-height:1.15}
.favorites-feed-tabs{overflow-x:auto;overscroll-behavior-x:contain}
.favorites-feed-tabs button{white-space:nowrap;flex-shrink:0}
@media(max-width:760px){.favorites-ranking-disclosure>summary{flex-wrap:wrap;gap:7px}.favorites-ranking-disclosure>summary>span:last-child{font-size:10px}.favorites-import-preview{padding:14px}.favorites-import-preview dl>div{padding:10px}.favorite-follow{flex-wrap:wrap;white-space:normal;max-width:100%}.favorites-match-date>span{display:block;overflow-wrap:anywhere}}
.favorite-follow[aria-pressed=true] svg{fill:var(--site-primary);color:var(--site-primary)}
.favorite-follow:hover{border-color:var(--site-focus)}
.favorite-follow:disabled{cursor:default;opacity:.5}
.favorites-follow-bar{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;margin:10px 0 16px}
.clubhead .favorites-follow-bar{margin:0;flex-shrink:0}
.teamtitle .favorites-follow-bar{margin:0}
@media(max-width:760px){.favorites-follow-bar{justify-content:flex-start}}
@media(max-width:760px){div.favorites-page{padding-top:0;gap:20px}.favorites-actions{gap:7px}div.favorites-page .favorites-button{padding:9px 11px;font-size:11px}.favorites-status{align-items:flex-start;flex-wrap:wrap}.favorites-management>summary{padding:14px}.favorites-list{padding:12px;grid-template-columns:minmax(0,1fr)}.favorites-feed-heading{display:block}.favorites-feed-tabs{gap:18px}.favorites-feed-tabs button{font-size:13px}.favorites-range{display:block;margin-top:10px}.favorites-match{grid-template-columns:58px minmax(0,1fr) 64px;gap:10px;padding:13px 4px}.favorites-match-teams{font-size:12px}.favorites-match-score{font-size:21px;gap:6px}.favorites-match-date{font-size:10px}.favorites-match-context{font-size:10px}.favorites-match-status{font-size:10px}.favorites-ranking-list{grid-template-columns:minmax(0,1fr)}.favorites-empty{padding:32px 14px}.favorites-pagination{gap:10px}.favorite-follow{min-height:38px;padding:8px 10px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.favorites-management>summary svg,.favorites-match{transition:none}}
.club-name-row,.team-name-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.club-name-row{margin-bottom:8px}
.team-name-row{margin-bottom:6px}
.clubhead .club-name-row>h1,.teamtitle .team-name-row>h2{min-width:0;margin-bottom:0;overflow-wrap:anywhere}
.club-name-row>.favorites-follow-bar,.team-name-row>.favorites-follow-bar{flex-shrink:0;flex-wrap:nowrap}
.favorite-follow.favorite-follow--icon{width:44px;height:44px;min-height:44px;padding:0;border-color:transparent;border-radius:50%;background:transparent;color:inherit;flex-shrink:0}
.favorite-follow--icon svg{width:24px;height:24px}
.favorite-follow--icon:hover{background:var(--soft);border-color:var(--line);color:var(--ink)}
.favorite-follow--icon[aria-pressed=true]{border-color:transparent}


/* Mon volley: favourite selection, fixtures and evidence form one dashboard. */
/* Only the content owns a grid. The body marker scopes its shell, never the header. */
body.club.favorites-page main.shell{display:block;width:100%;max-width:none;padding:0 0 30px}
body.club.favorites-page main.shell>.content{width:100%;min-width:0}
body.club.favorites-page #view.viewlayout{display:block;width:100%;min-width:0;gap:0}
div.favorites-page{gap:14px;padding-top:0}
.favorites-toolbar{display:flex;justify-content:flex-end;min-width:0}
.favorites-toolbar .favorites-actions{justify-content:flex-end}
.favorites-dashboard{display:grid;grid-template-columns:minmax(240px, .95fr) minmax(0,2.2fr) minmax(280px,1fr);gap:16px;align-items:start;min-width:0}
.favorites-sidebar,.favorites-center,.favorites-insights{min-width:0}
.favorites-center,.favorites-insights{display:grid;gap:14px}
.favorites-selector,.favorites-selected,.favorites-widget,.favorites-feed-panel{border:1px solid var(--line);border-radius:12px;background:var(--surface);min-width:0}
.favorites-selector>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:16px;list-style:none;cursor:pointer}
.favorites-selector>summary::-webkit-details-marker,.favorites-tree-club>summary::-webkit-details-marker{display:none}
.favorites-selector>summary h2{font-size:15px;font-weight:700;letter-spacing:-.02em}
.favorites-selector>summary>span{display:flex;gap:8px;align-items:center;font-size:11px;color:var(--muted)}
.favorites-selector>summary svg{width:14px;height:14px;display:none}
.favorites-local-search{display:block;margin:0 12px 12px}
.favorites-local-search input{width:100%;min-width:0;box-sizing:border-box;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);font:12px/1.4 "Segoe UI",sans-serif;padding:11px}
.favorites-local-search input::placeholder{color:var(--muted)}
.favorites-tree{padding:0 12px}
.favorites-tree-club{border-top:1px solid var(--line);padding:10px 0}
.favorites-tree-club>summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;min-height:44px}
.favorites-tree-club>summary>span:nth-child(2){flex:1;min-width:0;display:grid;gap:3px}
.favorites-tree-club>summary strong{font-size:12px;font-weight:700;overflow-wrap:anywhere;line-height:1.35}
.favorites-tree-club>summary small{font-size:10px;color:var(--muted);overflow-wrap:anywhere;line-height:1.4}
.favorites-tree-club>summary>svg{width:13px;height:13px;flex-shrink:0}
.favorites-tree-club:not([open])>summary>svg{transform:rotate(-90deg)}
.favorites-tree-club ul,.favorites-tree-others{list-style:none;padding:6px 0 0;margin:0;display:grid;gap:3px}
.favorites-tree-team{width:100%;display:flex;align-items:center;gap:9px;padding:10px 8px;min-height:44px;border:1px solid transparent;border-radius:7px;background:none;color:var(--ink);cursor:pointer;text-align:left;font-family:"Segoe UI",sans-serif}
.favorites-tree-team>span:not(.favorites-team-mark):not(.favorites-tree-star){display:grid;gap:3px;min-width:0;flex:1}
.favorites-tree-team strong{font-size:12px;font-weight:550;line-height:1.35;overflow-wrap:anywhere}
.favorites-tree-team small{font-size:10px;line-height:1.4;color:var(--muted);overflow-wrap:anywhere}
.favorites-tree-team[aria-pressed=true]{border-color:var(--line);border-left:3px solid var(--site-focus);background:var(--soft)}
.favorites-tree-team:hover{background:var(--bg)}
.favorites-team-mark{color:var(--muted);display:grid;place-items:center;width:25px;height:28px;flex-shrink:0}
.favorites-team-mark svg{width:16px;height:16px}
.favorites-tree-star{color:var(--site-focus);flex-shrink:0;display:grid;place-items:center}
.favorites-tree-star svg{width:15px;height:15px;fill:currentColor}
.favorites-tree-empty{font-size:11px;color:var(--muted);padding:12px 4px;line-height:1.5}
.favorites-add{display:flex;justify-content:center;align-items:center;gap:5px;border:1px dashed var(--line);border-radius:7px;min-height:44px;margin:12px;color:var(--ink);text-decoration:none;font-size:11px;text-align:center;padding:8px}
.favorites-add:hover{border-color:var(--site-focus)}
.favorites-logo{width:34px;height:34px;flex:0 0 34px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:var(--soft);color:var(--muted);font-size:11px;font-weight:650}
.favorites-logo img{width:100%;height:100%;object-fit:contain;background:var(--surface)}
.favorites-logo-large{width:60px;height:60px;flex-basis:60px;font-size:18px}
.favorites-selected{display:flex;align-items:center;gap:14px;padding:18px}
.favorites-selected>svg{width:32px;height:32px;flex-shrink:0;color:var(--site-focus)}
.favorites-selected-identity{min-width:0;flex:1;display:grid;gap:5px}
.favorites-selected-identity>p{font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.favorites-selected h1{font-size:20px;line-height:1.2;letter-spacing:-.025em;font-weight:750;overflow-wrap:anywhere}
.favorites-selected-tags{display:flex;flex-wrap:wrap;gap:5px}
.favorites-selected-tags>span{padding:4px 7px;background:var(--bg);border-radius:5px;font-size:10px;color:var(--muted);overflow-wrap:anywhere}
div.favorites-page .favorites-team-page{font-size:10px;padding:8px;min-height:38px;max-width:130px;text-align:center;flex-shrink:0}
.favorites-context-choice{display:grid;gap:4px;font-size:10px;color:var(--muted);margin-top:5px}
.favorites-context-choice select{max-width:100%;width:100%;min-width:0;border:1px solid var(--line);border-radius:6px;padding:6px;background:var(--surface);color:var(--ink);font:11px "Segoe UI",sans-serif}
.favorites-feed-heading{margin-bottom:10px;display:block}
.favorites-feed-tabs{gap:16px;overflow-x:auto}
.favorites-feed-tabs button{font-size:11px;gap:5px;padding:10px 0}
.favorites-feed-tabs button span{font-size:9px;min-width:17px;padding:0 3px}
.favorites-feed-panel{padding:14px}
.favorites-feed-panel>header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:12px}
.favorites-feed-panel h2,.favorites-widget h2,.favorites-rankings>h2{font-size:16px;line-height:1.35;font-weight:700;letter-spacing:-.025em}
.favorites-match{grid-template-columns:62px minmax(0,1fr) 65px;gap:10px;padding:12px 0;border-radius:0}
.favorites-match-date{font-size:10px}
.favorites-match-main{gap:8px}
.favorites-match-teams{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:11px}
.favorites-match-side{display:flex;align-items:center;justify-content:center;text-align:center;gap:7px;min-width:0;line-height:1.4}
.favorites-match-side>span:last-child{min-width:0;overflow-wrap:anywhere}
.favorites-match-logo{width:28px;height:28px;flex-basis:28px;font-size:9px}
.favorites-match-context{font-size:10px}
.favorites-match-score>strong{font-size:20px}.favorites-match-score>span{font-size:18px}
.favorites-match-score{gap:5px}
.favorites-match-status{font-size:10px}
.favorites-feed-empty{padding:24px 0;border-bottom:0;line-height:1.6}
.favorites-widget{padding:14px}
.favorites-widget>h2{padding-bottom:10px;border-bottom:1px solid var(--line);margin-bottom:10px}
.favorites-widget>p{font-size:11px;color:var(--muted);line-height:1.5}
.favorites-widget-empty{padding:10px 0;line-height:1.6}
.favorites-inline-button{font:11px "Segoe UI",sans-serif;border:0;background:transparent;color:var(--accent);cursor:pointer;min-height:32px;padding:3px}
.favorites-rankings{gap:10px}
.favorites-rankings>h2{padding:14px 14px 0}
.favorites-ranking-disclosure>summary{padding:12px;gap:8px;flex-wrap:wrap}
.favorites-ranking-disclosure>summary strong{font-size:12px}
.favorites-ranking-disclosure>summary small{font-size:10px}
.favorites-ranking-disclosure>summary>span:last-child{font-size:10px}
.favorites-insights .competition-ranking{padding:12px}
.favorites-insights .competition-ranking>header{gap:6px;flex-wrap:wrap}
.favorites-insights .competition-ranking h2{font-size:13px}
.favorites-insights .competition-ranking .competition-status,.favorites-insights .competition-ranking>.muted,.favorites-insights .competition-ranking .data-note{font-size:10px;line-height:1.5}
.favorites-insights .competition-ranking table{font-size:10px}
.favorites-insights .competition-ranking :where(th,td){padding:8px 5px}
.favorites-insights .competition-ranking .rank-badge{gap:2px}.favorites-insights .competition-ranking .podium-icon{width:15px;height:15px}
.favorites-form-dots{display:flex;gap:8px;justify-content:flex-start;margin-top:12px;flex-wrap:wrap}
.favorites-form-dots .h2h-dot{width:30px;height:26px;border-radius:6px;font-size:12px;flex:0 0 auto}
.favorites-information dl{margin:0;display:grid}
.favorites-information dl>div{display:grid;grid-template-columns:80px minmax(0,1fr);gap:10px;padding:7px 0;border-bottom:1px solid var(--line);font-size:10px;line-height:1.4}
.favorites-information dt{color:var(--muted)}
.favorites-information dd{margin:0;overflow-wrap:anywhere}
.favorites-information .favorites-information-note{font-size:10px;margin-top:10px}
.favorites-persistence{padding-top:3px}
.favorites-mobile-panels{display:none}
@media(min-width:761px) and (max-width:1100px){.favorites-dashboard{grid-template-columns:180px minmax(0,1fr) 245px;gap:10px}.favorites-selected{padding:12px;gap:10px;flex-wrap:wrap}div.favorites-page .favorites-team-page{margin-left:auto}.favorites-match-teams{grid-template-columns:1fr;gap:5px}.favorites-selected h1{font-size:18px}.favorites-logo-large{width:42px;height:42px;flex-basis:42px}.favorites-feed-tabs{gap:10px}.favorites-feed-panel{padding:10px}.favorites-range{white-space:normal;text-align:right}}
@media(max-width:760px){div.favorites-page{gap:12px;padding-top:0}.favorites-toolbar .favorites-actions{justify-content:flex-start}.favorites-toolbar{justify-content:flex-start}.favorites-toolbar .favorites-button{min-height:40px}.favorites-dashboard{display:flex;flex-direction:column;gap:12px}.favorites-sidebar,.favorites-center,.favorites-insights{width:100%}.favorites-selector>summary{padding:12px 14px}.favorites-selector>summary svg{display:block}.favorites-selector:not([open])>:not(summary){display:none}.favorites-tree{max-height:40vh;overflow-y:auto;overscroll-behavior-y:contain}.favorites-selected{padding:14px;gap:10px;flex-wrap:wrap}.favorites-selected h1{font-size:20px}.favorites-logo-large{width:46px;height:46px;flex-basis:46px}div.favorites-page .favorites-team-page{margin-left:auto;max-width:none;font-size:11px}.favorites-mobile-panels{display:flex;gap:8px}.favorites-mobile-panels .favorites-button{flex:1;min-height:44px}.favorites-mobile-panels [aria-pressed=true]{background:var(--soft);border-color:var(--site-focus)}.favorites-dashboard[data-dashboard-panel=matches] .favorites-insights{display:none}.favorites-dashboard[data-dashboard-panel=ranking] .favorites-center-matches{display:none}.favorites-feed-tabs{gap:14px;flex-wrap:wrap;overflow:visible}.favorites-feed-tabs button{font-size:11px;white-space:normal}.favorites-feed-panel{padding:12px}.favorites-feed-panel>header{flex-wrap:wrap}.favorites-range{font-size:10px;margin:0}.favorites-match{grid-template-columns:50px minmax(0,1fr) 52px;gap:8px;padding:13px 0}.favorites-match-teams{grid-template-columns:1fr;gap:6px}.favorites-match-side{font-size:12px}.favorites-match-date{font-size:10px}.favorites-match-logo{width:26px;height:26px;flex-basis:26px}.favorites-match-context{font-size:10px}.favorites-match-score{gap:3px}.favorites-insights .competition-ranking table{font-size:11px}.favorites-form-dots .h2h-dot{height:32px;width:38px}.favorites-information dl>div{font-size:12px;grid-template-columns:100px minmax(0,1fr)}.favorites-persistence .favorites-meta{font-size:10px}}
@media(prefers-reduced-motion:reduce){.favorites-form-dots .h2h-dot{transition:none}}

/* Reference layout: a readable selected team, underline navigation and fixture cards. */
.favorites-center{container-type:inline-size}
.favorites-selected{padding:20px;gap:18px;flex-wrap:wrap}
.favorites-selected-identity{flex-basis:180px}
.favorites-selected-identity>p{font-size:16px;font-weight:700;color:var(--ink);order:-1}
.favorites-selected h1{font-size:15px;font-weight:600;letter-spacing:-.01em}
.favorites-logo-large{width:68px;height:68px;flex-basis:68px}
.favorites-selected-tags>span{font-size:11px;padding:4px 8px}
div.favorites-page .favorites-team-page{font-size:11px;padding:10px 13px;max-width:none;margin-left:auto}
.favorites-context-choice{margin-top:8px;font-size:11px;gap:6px;max-width:380px}
.favorites-context-choice select{min-height:42px;padding:9px 12px;border-radius:8px;background:var(--bg);font-size:12px;cursor:pointer}
.favorites-feed-heading{margin-bottom:12px}
.favorites-feed-tabs{gap:8px;align-items:stretch}
div.favorites-page .favorites-feed-tabs button{min-height:48px;padding:12px 10px;gap:8px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--muted);font-size:12px;font-weight:500;flex-shrink:0}
div.favorites-page .favorites-feed-tabs button[aria-pressed=true]{border-bottom-color:var(--site-primary);color:var(--site-primary);font-weight:600}
div.favorites-page .favorites-feed-tabs button:hover{background:var(--bg);color:var(--ink)}
.favorites-feed-tabs button svg{width:18px;height:18px;flex-shrink:0}
.favorites-feed-tabs button span{font-size:10px;min-width:20px;background:var(--bg)}
.favorites-feed-panel{padding:16px}
.favorites-feed-panel h2{font-size:18px}
.favorites-matches{border:0;display:grid;gap:8px}
.favorites-match{grid-template-columns:68px minmax(0,1fr) 64px;gap:14px;padding:16px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
a.favorites-match:hover{background:var(--bg);border-color:var(--site-primary)}
.favorites-match-date{font-size:11px;line-height:1.6}
.favorites-match-date time{font-size:12px}
.favorites-match-main{gap:9px}
.favorites-match-teams{font-size:12px;gap:16px}
.favorites-match-logo{width:36px;height:36px;flex-basis:36px}
.favorites-match-context{font-size:11px;line-height:1.5}
.favorites-tree-team[aria-pressed=true]{background:color-mix(in srgb,var(--site-primary) 7%,var(--surface));border-color:transparent;border-left-color:var(--site-primary)}
.favorites-selector>summary h2{font-size:16px}
.favorites-information dl>div{font-size:12px;grid-template-columns:90px minmax(0,1fr)}
.favorites-form-dots{justify-content:space-between}
.favorites-form-dots .h2h-dot{width:calc((100% - 40px)/5);max-width:54px;height:28px}
@container (max-width:600px){.favorites-feed-tabs{gap:0}.favorites-feed-tabs button span{display:none}.favorites-match-teams{grid-template-columns:1fr;gap:8px}}
@media(min-width:761px) and (max-width:1200px){.favorites-dashboard{grid-template-columns:240px minmax(0,1fr);gap:16px}.favorites-insights{grid-column:2}.favorites-sidebar{grid-row:1 / span 2}.favorites-match-teams{grid-template-columns:1fr}}
@media(max-width:760px){.favorites-feed-tabs{flex-wrap:nowrap;overflow-x:auto}.favorites-feed-tabs button{white-space:nowrap!important}.favorites-selected{padding:16px;gap:12px}.favorites-selected-identity>p{font-size:15px}.favorites-logo-large{width:52px;height:52px;flex-basis:52px}.favorites-match{grid-template-columns:54px minmax(0,1fr) 48px;padding:12px 9px;gap:9px}.favorites-match-logo{width:28px;height:28px;flex-basis:28px}.favorites-feed-panel{padding:12px}.favorites-match-date,.favorites-match-context{font-size:10px}}

.favorites-match-details{display:grid;gap:5px;min-width:0}
.favorites-match-venue{font-size:10px}
@container (min-width:700px){.favorites-match-main{grid-template-columns:minmax(120px,.75fr) minmax(0,2fr);align-items:center;gap:18px}.favorites-match{min-height:82px}.favorites-match-teams{gap:24px}}

/* Dashboard surfaces and compact insights, isolated from club preview widgets. */
body.club.favorites-page{background:#f6f7f9}
.favorites-dashboard{gap:20px}
.favorites-center,.favorites-insights{gap:18px}
.favorites-selector,.favorites-selected,.favorites-widget,.favorites-feed-panel,.favorites-rankings{border-color:#e5e8ee;border-radius:16px;box-shadow:0 3px 16px #15233b05}
.favorites-selected{background:linear-gradient(115deg,#fff 65%,#fff4ed);border-top:3px solid var(--site-primary)}
.favorites-selector>summary{padding:20px 16px}
.favorites-tree-team{border-radius:10px;transition:background .16s}
.favorites-match{border-color:#e9ecf1;border-radius:12px;transition:border-color .16s,box-shadow .16s}
a.favorites-match:hover{box-shadow:0 4px 14px #15233b0a}
.favorites-rankings{border:1px solid #e5e8ee;background:var(--surface);gap:0;overflow:hidden}
.favorites-rankings>h2,.favorites-widget>h2{display:flex;align-items:center;gap:10px;font-size:15px;padding:18px 18px 14px;margin:0;border-bottom:1px solid #eef0f4}
.favorites-rankings>h2 svg,.favorites-widget>h2 svg{width:20px;height:20px;flex-shrink:0;color:var(--site-primary)}
.favorites-ranking-list{gap:0}
.favorites-ranking-disclosure{border:0;border-radius:0;background:transparent}
.favorites-ranking-disclosure+.favorites-ranking-disclosure{border-top:1px solid var(--line)}
.favorites-ranking-disclosure>summary{padding:16px 18px;flex-wrap:nowrap;align-items:start}
.favorites-ranking-disclosure>summary strong{font-size:13px;line-height:1.5}
.favorites-ranking-disclosure>summary small{font-size:11px}
.favorites-ranking-disclosure>summary>span:last-child{font-size:10px;max-width:100px;text-align:right;line-height:1.5}
.favorites-ranking-disclosure>.panel{border-top:0;border-radius:0}
.favorites-insights .competition-ranking{padding:0 12px 12px}
.favorites-insights .competition-ranking table{font-size:11px}
.favorites-insights .competition-ranking :where(th,td){padding:10px 5px}
.favorites-insights .competition-ranking .podium-row{--podium-background:none}
.favorites-insights .competition-ranking .selected{--table-cell-bg:#fff0e7;color:#a33a12}
.favorites-freshness{font-size:10px;color:var(--muted);padding:0 6px 10px;margin:0}
.favorites-form.favorites-widget{padding:0;overflow:hidden;background:linear-gradient(145deg,#fff,#f7faf9)}
.favorites-form>p{padding:14px 18px 0;font-size:12px}
.favorites-form .favorites-feed-empty,.favorites-form .favorites-widget-empty{padding:16px 18px 20px}
.club .favorites-form-dots{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:14px 18px 20px;margin:0}
.club .favorites-form-dots .h2h-dot{width:100%;max-width:none;height:62px;border-radius:12px;display:flex;flex-direction:column;justify-content:center;gap:5px;border:1px solid transparent;box-shadow:none;font-size:16px;transition:transform .16s,box-shadow .16s}
.club .favorites-form-dots .h2h-dot.won{color:#166347;background:#e1f4e9;border-color:#c6e8d5}
.club .favorites-form-dots .h2h-dot.lost{color:#b1402f;background:#fceae6;border-color:#f3cec5}
.club .favorites-form-dots .h2h-dot.unknown{color:#4f6073;background:#edf1f6;border-color:#d9e0e9}
.club .favorites-form-dots a.h2h-dot:hover{transform:translateY(-3px);box-shadow:0 5px 12px #15233b12}
.favorites-form-letter{font-size:17px;font-weight:750;line-height:1}
.favorites-form-score{font-size:11px;line-height:1;font-weight:550;opacity:.85}
.favorites-information.favorites-widget{padding:0 18px 14px}
.favorites-information>h2{padding-left:0;padding-right:0}
.favorites-information dl>div{padding:10px 0;border-bottom-color:#eef0f4}
@media(max-width:760px){.favorites-dashboard{gap:14px}.favorites-center,.favorites-insights{gap:14px}.favorites-rankings>h2,.favorites-widget>h2{padding-top:16px}.favorites-form-dots{gap:6px}}
@media(prefers-reduced-motion:reduce){.favorites-tree-team,.favorites-match,.club .favorites-form-dots .h2h-dot{transition:none}.club .favorites-form-dots a.h2h-dot:hover{transform:none}}


/* Personal page hero: independent, cascading selectors with no navigation tree. */
.favorites-dashboard{grid-template-columns:minmax(0,2.5fr) minmax(300px,1fr)}
.favorites-hero{position:relative;isolation:isolate;overflow:hidden;padding:clamp(24px,3vw,46px);border-radius:24px;background:radial-gradient(ellipse at 100% 0,#75452f55,transparent 60%),#17252b;color:#fff}
.favorites-hero::after{content:"";position:absolute;z-index:-1;width:360px;height:360px;right:-120px;top:-190px;border:1px solid #f18a6545;border-radius:50%;box-shadow:0 0 0 65px #f18a6509,0 0 0 130px #f18a6506;pointer-events:none}
.favorites-hero-top{display:flex;justify-content:space-between;align-items:start;gap:24px}
.favorites-hero-eyebrow{color:var(--site-primary-on-dark);font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:700}
div.favorites-page .favorites-hero h1{margin:12px 0;font-size:clamp(32px,4vw,52px);letter-spacing:-.045em;line-height:1.08}
.favorites-hero-intro{font-size:15px;color:#c4ced3}
.favorites-hero .favorites-actions{justify-content:flex-end;max-width:480px}
div.favorites-page .favorites-hero .favorites-button{background:#ffffff09;border-color:#ffffff28;color:#fff;font-size:11px}
div.favorites-page .favorites-hero .favorites-button-primary{background:var(--site-primary);border-color:transparent;color:var(--site-primary-ink);order:-1}
.favorites-hero-filters{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(0,1.2fr);align-items:start;gap:18px;margin-top:32px;padding-top:24px;border-top:1px solid #ffffff22}
.favorites-filter-label,.favorites-hero .favorites-context-choice{display:grid;gap:9px;min-width:0;font-size:11px;color:#c4ced3;margin:0;max-width:none}
.favorites-filter-control{display:flex;align-items:center;gap:8px;background:#fff;border-radius:10px;padding-left:10px;min-width:0}
.favorites-filter-control>svg{width:24px;height:24px;color:#52616b;flex-shrink:0}
.favorites-filter-control .favorites-logo{width:32px;height:32px;flex-basis:32px}
.favorites-hero select{width:100%;min-width:0;min-height:54px;border:0;border-radius:10px;padding:12px;font:600 13px/1.4 "Segoe UI",sans-serif;background:#fff;color:#17252b;cursor:pointer;text-overflow:ellipsis}
.favorites-filter-search{display:block;margin-top:8px}
.favorites-filter-search input{width:100%;min-width:0;background:#ffffff0c;border:1px solid #ffffff30;border-radius:8px;padding:10px 12px;color:#fff;font-size:13px}
.favorites-filter-search input::placeholder{color:#c4ced3}
.favorites-hero-link{grid-column:1/-1;justify-self:end;display:inline-flex;align-items:center;min-height:36px;box-sizing:border-box;padding:8px 12px;border:1px solid var(--site-primary-border);border-radius:9px;background:var(--site-primary-soft);color:var(--site-primary);font-size:12px;text-decoration:none;font-weight:600}
.favorites-hero-link:hover{background:#fff;color:var(--site-primary-hover);text-decoration:underline;text-underline-offset:3px}
.favorites-hero :where(select,input,a):focus-visible{outline:3px solid var(--site-primary-on-dark);outline-offset:3px}
@media(min-width:761px) and (max-width:1100px){.favorites-dashboard{grid-template-columns:minmax(0,1fr) 300px;gap:16px}.favorites-dashboard>.favorites-insights{grid-column:2}.favorites-hero-top{flex-wrap:wrap}}
@media(max-width:760px){.favorites-hero{padding:24px 18px;border-radius:18px}.favorites-hero-top{flex-direction:column;gap:18px}.favorites-hero .favorites-actions{justify-content:flex-start}.favorites-hero-filters{grid-template-columns:minmax(0,1fr);margin-top:24px;gap:16px}.favorites-hero select{font-size:16px;min-height:48px}.favorites-hero-link{justify-self:start}}

.favorites-match-teams{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px}
.favorites-match-versus{font-size:18px;font-weight:500;color:var(--muted);text-align:center}
@container (max-width:600px){.favorites-match-teams{gap:6px}.favorites-match-side{flex-direction:column;align-items:center;gap:5px}.favorites-match-versus{font-size:16px}}

/* Mobile sizing: grid children must shrink to the available viewport. */
.favorites-center,.favorites-insights{grid-template-columns:minmax(0,1fr)}
.favorites-center-matches,.favorites-mobile-panels,.favorites-feed-heading{min-width:0;max-width:100%}
.favorites-hero-top>div,.favorites-hero .favorites-actions{min-width:0;max-width:100%}
.favorites-filter-control select{flex:1;width:0}
@media(max-width:760px){
 .favorites-mobile-panels{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .favorites-mobile-panels .favorites-button{min-width:0;white-space:normal;overflow-wrap:anywhere}
 .favorites-feed-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;overflow:visible}
 div.favorites-page .favorites-feed-tabs button{min-width:0;white-space:normal!important;flex-direction:column;justify-content:center;text-align:center;padding:10px 4px;gap:5px;font-size:11px;line-height:1.35}
 .favorites-feed-tabs button span{display:none}
 .favorites-match{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:14px 12px}
 .favorites-match-date{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:11px}
 .favorites-match-date time{font-size:12px}
 .favorites-match-main{grid-column:1/-1;grid-row:2;gap:12px}
 .favorites-match-score,.favorites-match-status{grid-column:2;grid-row:1}
 .favorites-match-status{max-width:100px}
 .favorites-match-context{font-size:11px}
 .favorites-match-teams{gap:10px}
 .favorites-match-side{font-size:12px;line-height:1.45}
 .favorites-match-logo{width:32px;height:32px;flex-basis:32px}
 .favorites-pagination{gap:8px;flex-wrap:wrap}
 .favorites-hero .favorites-actions{gap:8px}
 div.favorites-page .favorites-hero .favorites-button{min-height:44px;white-space:normal}
 .favorites-ranking-disclosure>summary>span:last-child{min-width:0;flex-shrink:1}
}

/* Ranking history is scoped to the ranking card; match navigation stays independent. */
.favorites-ranking-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:10px 14px 0;min-width:0}
div.favorites-page .favorites-ranking-tabs button{min-width:0;min-height:44px;border:0;border-bottom:2px solid transparent;border-radius:8px 8px 0 0;background:transparent;color:var(--muted);font-size:12px;padding:9px 6px}
div.favorites-page .favorites-ranking-tabs button[aria-pressed=true]{background:var(--site-primary-soft);border-bottom-color:var(--site-primary);color:var(--site-primary)}
.favorites-ranking-evolution{min-width:0;padding:0 14px 16px}
.favorites-history-team{display:grid;gap:7px;margin:0 0 14px;min-width:0;font-size:11px;color:var(--muted)}
.favorites-history-team select{width:100%;min-width:0;min-height:44px;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font:inherit;text-overflow:ellipsis}
.ranking-history{min-width:0;max-width:100%;margin:0;padding:14px 0 0}
.ranking-history figcaption{display:grid;gap:5px;min-width:0;padding:0 4px;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.ranking-history figcaption strong{font-weight:650;color:var(--ink)}
.ranking-history figcaption>span{font-size:11px;color:var(--muted)}
.ranking-history svg{display:block;width:100%;height:auto;overflow:visible;margin:8px 0 0}
.ranking-history-grid line{stroke:#e8ecf0;stroke-width:1;stroke-dasharray:3 5;vector-effect:non-scaling-stroke}
.ranking-history-grid text{fill:#667381;font:12px "Segoe UI",sans-serif;font-variant-numeric:tabular-nums}
.ranking-history-line{fill:none;stroke:var(--site-primary);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.ranking-history-point{fill:var(--surface);stroke:var(--site-primary);stroke-width:2;vector-effect:non-scaling-stroke}
.ranking-history-dates{display:flex;justify-content:space-between;gap:12px;margin:0 0 0 10%;font-size:11px;line-height:1.5;color:var(--muted);font-variant-numeric:tabular-nums}
.ranking-history-dates time:last-child{text-align:right}
.ranking-history .ranking-history-note{margin:14px 4px 0;font-size:11px;line-height:1.6;color:var(--muted)}
.ranking-history-empty{padding:20px 4px;margin:0;font-size:12px;line-height:1.7;color:var(--muted)}
.favorites-ranking-evolution>.favorites-freshness{margin-top:14px;padding:12px 4px 0;border-top:1px solid var(--line)}
@media(max-width:760px){.favorites-history-team select{font-size:16px}.favorites-ranking-evolution{padding-inline:10px}.favorites-ranking-tabs{padding-inline:10px}}

/* Personal dashboard shares the site banner and recent-results row language. */
body.club main.shell .favorites-hero{background:linear-gradient(90deg,#2536428c,#25364214),url('/assets/site/favorites-team-ae996cb57238.png') center/cover no-repeat}
.club .favorites-hero::after{content:none}
.club .favorites-hero-content{max-width:none;width:100%}
.club div.favorites-page>.site-banner~*{box-sizing:border-box;width:calc(100% - 2 * var(--site-page-gutter));max-width:var(--site-content-max);margin-inline:auto}
.club .favorites-hero-filters{padding-top:20px;margin-top:24px;gap:14px}
.club .favorites-hero select{min-height:46px;border-radius:12px;background:#fffffff2}
.club .favorites-feed-panel,.club .favorites-widget,.club .favorites-rankings{border:1px solid #e8edf2;border-radius:18px;background:linear-gradient(145deg,#fff,#f7f9fb);box-shadow:0 6px 22px #25385206}
.club .favorites-feed-panel:has(.favorites-matches[data-view]){container-type:inline-size}
.club .favorites-matches[data-view]{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
.club .favorites-matches[data-view]>li{min-width:0;border:0;padding:0}
.club .favorites-matches[data-view] .favorites-match{position:relative;box-sizing:border-box;display:grid;grid-template-columns:54px minmax(140px,.7fr) minmax(0,2fr);gap:16px;align-items:center;min-height:90px;padding:16px 20px}
.club .favorites-matches[data-view] .favorites-match-date{grid-column:1;grid-row:1;display:flex;flex-direction:column;flex-wrap:nowrap;justify-content:center;align-items:center;gap:4px;border-right:1px solid var(--line);padding-right:10px;text-align:center;min-width:0}
.club .favorites-matches[data-view] time{display:flex;flex-direction:column;gap:3px;align-items:center}
.club .favorites-matches[data-view] time b{font:700 25px/1 Bahnschrift,"Segoe UI",sans-serif}
.club .favorites-matches[data-view] time small{font-size:10px;text-transform:uppercase;color:var(--muted)}
.club .favorites-matches[data-view] .favorites-match-date>span{font-size:11px;font-weight:700;border-radius:4px;background:#f2f4f6;padding:3px 4px;overflow-wrap:anywhere}
.club .favorites-matches[data-view] .favorites-match-main{display:contents}
.club .favorites-matches[data-view] .favorites-match-teams{grid-column:3;grid-row:1;display:grid;grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);align-items:center;gap:clamp(16px,2vw,36px)}
.club .favorites-matches[data-view] .favorites-match-side{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:12px;font-size:14px;font-weight:700;line-height:1.45;text-align:center}
.club .favorites-matches[data-view] .favorites-match-side>span{min-width:0;overflow-wrap:anywhere}
.club .favorites-matches[data-view] .favorites-match-logo{flex:0 0 44px;width:44px;height:44px;border-radius:50%;font-size:13px;background:linear-gradient(135deg,#eef4ff,#dceaff);color:#304b74}
.club .favorites-matches[data-view] .favorites-match-versus{display:grid;place-items:center;min-height:38px;border:1px solid #e3e9ee;border-radius:10px;background:linear-gradient(145deg,#f6f8fa,#eaf0f4);text-align:center;font-size:12px;font-weight:700;color:var(--muted)}
.club .favorites-matches[data-view] .favorites-match-details{grid-column:2;grid-row:1;gap:5px}
.club .favorites-matches[data-view] .favorites-match-context{margin:0;font-size:12px;line-height:1.45;color:#52627e;overflow-wrap:anywhere}
.club .favorites-matches[data-view] .favorites-match-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

@container (max-width:850px){
 .club .favorites-matches[data-view] .favorites-match{grid-template-columns:54px minmax(0,1fr);gap:16px;padding:16px}
 .club .favorites-matches[data-view] .favorites-match-teams{grid-column:1/-1;grid-row:2}
}
@container (max-width:480px){
 .club .favorites-matches[data-view] .favorites-match{padding:12px;gap:12px}
 .club .favorites-matches[data-view] .favorites-match-teams{grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);gap:10px}
 .club .favorites-matches[data-view] .favorites-match-side{flex-direction:column;align-self:start;gap:7px;font-size:12px}
 .club .favorites-matches[data-view] .favorites-match-side>span{overflow-wrap:break-word;hyphens:auto}
 .club .favorites-matches[data-view] .favorites-match-logo{flex-basis:28px;width:28px;height:28px;font-size:10px}
}

.club .favorites-matches[data-view] .favorites-match-score{grid-column:2;grid-row:1}
.club .favorites-matches[data-view] .favorites-match-score>strong{color:#187647;font-size:22px;font-weight:800}
.club .favorites-matches[data-view] .favorites-match-score>span{color:#b33c40;font-size:14px;font-weight:650}
.club .favorites-matches[data-view] .favorites-match-score>small{color:var(--muted);font-size:12px}
.club .favorites-matches[data-view=all] .favorites-match-status{position:static;clip-path:none;width:auto;height:auto;grid-column:2;grid-row:2;white-space:normal;font-size:11px;color:var(--muted);text-align:left}
.club .favorites-hero .favorites-hero-actions{display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px;max-width:none;margin-top:20px;padding-top:18px;border-top:1px solid #ffffff26}
div.favorites-page .favorites-hero-actions :is(.favorites-button,.agenda-trigger){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:10px 14px;border:1px solid #ffffff30;border-radius:10px;background:#f4f7fa;color:#344557;font:600 12px/1.35 "Segoe UI",sans-serif;box-shadow:0 2px 6px #16232e0d;cursor:pointer;order:0}
div.favorites-page .favorites-hero-actions :is(.favorites-button,.agenda-trigger):hover:not(:disabled){background:#fff;border-color:#fff}
div.favorites-page .favorites-hero-actions :is(.favorites-button,.agenda-trigger):focus-visible{outline:3px solid var(--site-primary-on-dark);outline-offset:3px}
div.favorites-page .favorites-hero-actions svg{width:16px;height:16px;flex-shrink:0}
@container (max-width:850px){.club .favorites-matches[data-view=all] .favorites-match-status{grid-column:1/-1;grid-row:3}}
@media(max-width:540px){.club .favorites-hero .favorites-hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.favorites-hero-actions>[data-agenda-trigger]{display:flex}div.favorites-page .favorites-hero-actions :is(.favorites-button,.agenda-trigger){width:100%;font-size:11px;padding:10px 8px}}

/* Shared labelled follow action; compact icon remains an explicit variant. */
.club-team-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:16px}
.club-team-actions[hidden]{display:none}
.club-team-actions .favorites-follow-bar{margin:0}
.club-team-actions .favorite-follow{min-height:42px;padding:10px 15px;border-radius:10px;background:#edf2f5;border-color:#d5dfe4;color:#243640}

.club-team-actions .favorite-follow small{display:none}
@media(max-width:760px){.club-team-actions{gap:8px;margin-top:12px}.club-team-actions :is(.favorite-follow,.agenda-trigger){min-height:44px}}

/* Shared followed state for clubs, teams and competitions. */
.favorite-follow small{display:none}
.favorite-follow[aria-pressed=true],.club-team-actions .favorite-follow[aria-pressed=true]{background:linear-gradient(120deg,#fffaf6,#ffecdde6);border-color:color-mix(in srgb,var(--site-primary) 28%,#d5dfe4);color:#243640}
.favorite-follow[aria-pressed=true] svg{filter:drop-shadow(0 0 4px color-mix(in srgb,var(--site-primary) 45%,transparent))}

/* Keep the full-width shell stable when content introduces a scrollbar. */
html{scrollbar-gutter:stable}
/* Global navigation is independent from the selected club's palette. */
.club .top.global-header{position:relative;display:grid;grid-template-columns:auto auto minmax(180px,1fr) auto auto;gap:26px;padding:12px 32px;margin:0 0 24px;min-height:72px;background:#fff;border-bottom:1px solid #e7e9ec;box-shadow:none;z-index:60}
.club .global-header .brand{display:inline-flex;align-items:center;align-self:center;justify-self:start;min-height:44px;font-size:31px;line-height:1;letter-spacing:-1.7px;border:0;padding:0;color:#11151a}
.club .global-header .brand b{color:#f45122}
.global-navigation{display:flex;align-items:center;gap:25px;white-space:nowrap;align-self:stretch}
.club .global-header .global-navigation a{position:relative;display:flex;align-items:center;color:#303844;text-decoration:none;font-size:13px;font-weight:650;padding:10px 0;border:0;background:transparent;border-radius:0;margin:0;min-height:44px}
.club .global-header .global-navigation a:hover{color:#e44b21}
.club .global-header .global-navigation a[aria-current=page]{color:#11151a}
.global-navigation a[aria-current=page]::after{content:"";position:absolute;bottom:3px;height:2px;background:#f45122;left:0;right:0;border-radius:2px}
.club .global-header .club-search{grid-column:auto;grid-row:auto;z-index:65}
.club .global-header .search-field{min-height:40px;background:#f7f8f9;border:1px solid #e5e8ec;border-radius:7px}
.club .global-header .search-field input{padding:10px 8px;font-size:13px;border-radius:7px}
.club .global-header .search-icon{width:18px;height:18px;margin-left:12px}
.club .global-header .search-field button{padding:7px;min-width:40px;border-radius:0 7px 7px 0}
.club .global-header .search-field button svg{width:18px;height:18px}
.club .global-header .language-picker{grid-column:auto;grid-row:auto;padding:0;border:0;font-size:12px;z-index:75}
.club .global-header .language-picker summary{min-height:42px;border:0;padding:8px 0;border-radius:6px;gap:8px}
.club .global-header .language-picker .language-chevron{width:14px;height:14px}
.club .global-header .search-results{position:absolute;top:calc(100% + 10px);left:0;right:0;max-height:min(65vh,560px);overflow:auto;min-width:min(420px,90vw);padding:8px;box-shadow:0 14px 40px #17243320;border-radius:10px;border:1px solid #e4e7eb;background:#fff;color:#1b2430}
.club .global-header .search-results[hidden],.volley-notification-panel[hidden]{display:none}
.club .global-header .search-results ul{list-style:none;padding:0;margin:0}
.club .global-header .search-results a{display:grid;grid-template-columns:32px minmax(0,1fr);align-items:start;gap:12px;padding:10px;border-radius:6px;text-decoration:none;color:#192331}
.club .global-header .search-results a:hover,.club .global-header .search-results a:focus{background:#fff1eb}
.global-search-content{display:flex;align-items:flex-start;gap:12px;min-width:0}
.global-search-identity{display:block;min-width:0;flex:1}
.global-search-identity strong{display:block;font-size:13px;overflow-wrap:anywhere}
.club .global-header .search-results small{display:block;color:#6a7280;font-size:11px;margin:3px 0 0;overflow-wrap:anywhere}
.global-search-type{flex:0 0 auto;border-radius:4px;padding:3px 6px;background:#f1f3f5;color:#66717c;font-size:10px;line-height:1.3}
.club .global-header .search-status,.club .global-header .search-no-result{padding:9px 10px;margin:0;font-size:12px;color:#66717c}
.volley-notification-slot{position:static}
.club .global-header .volley-notification-bell{position:relative;display:grid;place-items:center;min-height:44px;min-width:44px;padding:10px;border:0;border-radius:8px;background:#fff;color:#17202b}
.club .global-header .volley-notification-bell:hover,.club .global-header .volley-notification-bell[aria-expanded=true]{background:#fff1eb;color:#e34b22}
.volley-notification-count{position:absolute;right:4px;top:3px;background:#f45122;color:#fff;border:2px solid #fff;border-radius:12px;min-width:17px;font-size:9px;text-align:center;padding:0 3px;line-height:13px}
@media(min-width:1440px){.club .top.global-header{gap:34px;padding-left:44px;padding-right:44px}.global-navigation{gap:30px}.club .global-header .club-search{max-width:720px;justify-self:center}}
@media(max-width:1120px){.club .top.global-header{gap:16px;padding:12px 22px}.global-navigation{gap:17px}.club .global-header .brand{font-size:29px}.club .global-header .search-field input{font-size:12px}}
@media(max-width:850px){.club .top.global-header{grid-template-columns:minmax(0,1fr) auto auto;gap:8px 14px;padding:10px 18px;min-height:0}.club .global-header .brand{grid-column:1;grid-row:1;justify-self:start}.club .global-header .language-picker{grid-column:2;grid-row:1}.volley-notification-slot{grid-column:3;grid-row:1}.global-navigation{grid-column:1/-1;grid-row:2;justify-content:center;gap:32px}.club .global-header .global-navigation a{min-height:38px;padding:6px 0}.club .global-header .club-search{grid-column:1/-1;grid-row:3}.club .global-header .search-field input{font-size:16px;padding:10px 8px}.club .global-header .search-results{min-width:0;max-height:55vh}.volley-notification-panel{right:16px;top:54px}.club .global-header .language-picker summary{min-height:40px}.club .global-header .search-field{min-height:42px}}
@media(max-width:380px){.club .top.global-header{padding:8px 12px}.global-navigation{gap:25px}.club .global-header .global-navigation a{font-size:12px}.club .global-header .brand{font-size:27px}}

.club .global-header .search-results:empty{display:none}
/* Every result keeps its logo column, including missing or rejected logos. */
.global-search-logo{position:relative;display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;overflow:hidden;border-radius:4px;background:#f1f3f5;color:#66717c;font-size:11px}
.global-search-logo-empty{background:transparent}
.global-search-logo img{position:absolute;inset:0;width:32px;height:32px;object-fit:contain;background:#fff}
.global-search-logo img[hidden]{display:none}
.club .global-header .global-search-loading{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px}
.global-search-gear{display:block;flex:0 0 18px;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;transform-origin:50% 50%;animation:global-search-spin 1.4s linear infinite}
@keyframes global-search-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.global-search-gear{animation:none}}

/* Notifications: a compact match board anchored below the existing bell. */
.volley-notification-panel{position:absolute;top:calc(100% - 4px);right:24px;overflow:auto;z-index:70;box-sizing:border-box;width:min(920px,calc(100% - 32px));max-height:min(76vh,800px);max-height:min(800px,calc(100dvh - 92px));padding:18px;border:1px solid #e1e6ee;border-radius:20px;background:#fff;box-shadow:0 18px 60px #192c4a24;color:#14213b;overscroll-behavior:contain;scrollbar-width:thin;text-align:left;line-height:1.45}
.volley-notification-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px}
.volley-notification-heading h2{margin:0;color:#10213e;font:750 clamp(20px,2.1vw,28px)/1.2 "Segoe UI",sans-serif;letter-spacing:-.6px;overflow-wrap:anywhere}
.club .global-header .volley-notification-panel .volley-update-icon{display:block;width:20px;height:20px;flex:none}
.volley-notification-heading .volley-update-manage{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 14px;border-radius:24px;background:#edf3ff;color:#245ac2;text-decoration:none;font-size:12px;font-weight:650;white-space:nowrap}
.volley-update-manage:hover{background:#e0ebff}
.volley-update-tabs{display:flex;border-bottom:1px solid #e9edf3;margin:0 0 10px}
.volley-update-tabs a{position:relative;padding:0 3px 12px;min-height:38px;box-sizing:border-box;color:#245ac2;font-size:16px;font-weight:700;text-decoration:none}
.volley-update-tabs a::after{position:absolute;bottom:-1px;left:0;right:0;height:3px;border-radius:3px 3px 0 0;background:currentColor;content:""}
.volley-notification-list{display:grid;gap:0;list-style:none;padding:0;margin:0}
.volley-notification-list li+li{border-top:1px solid #edf0f3}
.volley-notification-item{display:block;position:relative;padding:10px 14px;border:0;border-radius:0;background:transparent;color:#152440;text-decoration:none;font-size:13px;transition:background .15s}
.volley-notification-list .is-unread .volley-notification-item{background:#fff8f3}
a.volley-notification-item:hover{background:#f7faff}
.volley-notification-panel a:focus-visible{outline:3px solid #245ac2;outline-offset:2px}
.volley-update-meta{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;margin-bottom:8px;min-width:0}
.volley-update-competition{font-size:10px;font-weight:600;letter-spacing:.25px;color:#506985;text-transform:uppercase;overflow-wrap:anywhere}
.volley-update-meta>time{justify-self:end;text-align:right;font-size:11px;color:#506985;white-space:nowrap}
.volley-update-status{display:inline-block;justify-self:center;border-radius:20px;background:#edf1f5;color:#445971;padding:4px 10px;font-size:10px;font-weight:650;line-height:1.5;text-align:center}
.volley-update-status--result{background:#e6f7ed;color:#1f7042}
.volley-update-status--schedule,.volley-update-status--resumed{background:#eaf1ff;color:#245ac2}
.volley-update-status--correction,.volley-update-status--forfeit{background:#fff0da;color:#865317}
.volley-update-status--cancelled,.volley-update-status--postponed{background:#fff0ee;color:#a53934}
.volley-update-content{display:grid;grid-template-columns:18px minmax(0,1fr) 18px;align-items:center;gap:10px;min-width:0}
.volley-update-match{grid-column:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,max-content) minmax(0,1fr);align-items:center;gap:14px;flex:1;min-width:0}
.volley-update-team{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;min-width:0}
.volley-update-team strong{display:block;text-align:center;font-size:15px;font-weight:700;line-height:1.35;overflow-wrap:anywhere;color:#10213e;min-width:0}
.volley-update-logo{position:relative;display:grid;place-items:center;flex:none;width:40px;height:40px;box-sizing:border-box;border-radius:50%;overflow:hidden;background:#f4f6f9;color:#64748b;border:1px solid #e6ebf1;font-size:13px;font-weight:650}
.volley-update-logo img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;padding:3px;box-sizing:border-box;background:#fff}
.volley-update-logo img[hidden]{display:none}
.volley-update-score{justify-self:center;display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:none;color:#10213e;font-variant-numeric:tabular-nums}
.volley-update-score>b{display:grid;place-items:center;min-width:34px;min-height:36px;box-sizing:border-box;padding:5px;border-radius:9px;background:#edf2f8;font-size:21px;line-height:1;font-weight:750}
.volley-update-score>b.is-winner{background:#10213e;color:#fff}
.volley-update-versus{justify-self:center;font-size:11px;color:#64748b;text-align:center}
.volley-update-chevron{grid-column:3;display:grid;place-items:center;justify-self:end;color:#68809b}
.club .global-header .volley-notification-panel .volley-update-chevron .volley-update-icon{width:18px;height:18px}
.volley-update-schedule{display:flex;flex-wrap:wrap;gap:8px 18px;min-width:0;margin-top:8px;color:#506985;font-size:12px}
.volley-update-schedule>span{display:inline-flex;align-items:center;gap:7px;min-width:0;max-width:100%;overflow-wrap:anywhere}
.club .global-header .volley-notification-panel .volley-update-schedule .volley-update-icon{width:17px;height:17px}
.volley-update-fallback{grid-column:2;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 14px;min-width:0;text-align:center}
.volley-update-fallback>strong{font-size:14px;line-height:1.5;overflow-wrap:anywhere;min-width:0}
.volley-notification-detail{display:block;color:#506985;font-size:11px;line-height:1.6;margin-top:6px;overflow-wrap:anywhere}
.volley-update-provenance{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:6px;color:#65758a;font-size:10px;line-height:1.5;overflow-wrap:anywhere}
.volley-update-unread{color:#995521;font-weight:700}
.volley-notification-empty,.volley-notification-state{padding:14px;border:1px solid #e7ecf2;border-radius:12px;background:#f7f9fc;font-size:13px;color:#506985;margin:12px 0;line-height:1.6}
.volley-notification-note{font-size:10px;line-height:1.6;color:#65758a;border-top:1px solid #e9edf3;margin:12px 0 0;padding-top:10px;overflow-wrap:anywhere}
@media(max-width:850px){.volley-notification-panel{right:12px;top:54px;width:calc(100% - 24px);max-height:calc(100dvh - 70px);padding:16px}}
@media(max-width:600px){.volley-notification-heading{align-items:flex-start;flex-direction:column;gap:12px}.volley-notification-heading h2{font-size:22px}.volley-notification-heading .volley-update-manage{white-space:normal;min-height:44px}.volley-update-meta{grid-template-columns:minmax(0,1fr) auto;gap:8px}.volley-update-competition{grid-column:1/-1}.volley-update-meta>time{grid-column:2;grid-row:2}.volley-update-status{grid-column:1;grid-row:2;justify-self:start}.volley-update-match{grid-template-columns:minmax(0,1fr) minmax(78px,max-content) minmax(0,1fr);gap:10px}.volley-update-team{gap:8px}.volley-update-team strong{font-size:13px}.volley-notification-item{padding:10px 12px}.volley-update-content{grid-template-columns:14px minmax(0,1fr) 14px;gap:6px}.club .global-header .volley-notification-panel .volley-update-chevron .volley-update-icon{width:14px;height:14px}.volley-update-score>b{min-width:30px;min-height:36px;font-size:20px}.volley-update-score{gap:5px}}
@media(max-width:480px){.volley-notification-panel{padding:12px;border-radius:16px}.volley-update-team{grid-template-columns:minmax(0,1fr);justify-items:center;align-items:center;text-align:center;gap:7px}.volley-update-logo{width:38px;height:38px}.volley-update-team strong{font-size:12px}.volley-update-content{align-items:center}.volley-update-match{grid-template-columns:minmax(0,1fr) minmax(70px,max-content) minmax(0,1fr);gap:7px}.volley-update-score>b{min-width:27px;min-height:34px;font-size:19px}.volley-update-score{gap:4px}.volley-update-fallback{flex-direction:column;align-items:center}.volley-update-schedule{gap:8px 12px}.volley-update-meta>time{font-size:10px}.volley-update-status{font-size:9px;padding:4px 8px}}
@media(prefers-reduced-motion:reduce){.volley-notification-item{transition:none}}

/* Search dropdown, owner mockup adapted to the real header. */
.club .global-header .search-field{min-height:46px;border:1px solid #d7dce2;border-radius:11px;background:#fff;box-shadow:0 1px 3px #17243308}
.club .global-header .search-field:focus-within{border-color:#971e2a;box-shadow:0 0 0 3px #971e2a12}
.club .global-header .search-field input{padding:11px 8px;font-size:14px}
.club .global-header .search-field input::-webkit-search-cancel-button{-webkit-appearance:none}
.club .global-header .search-field .search-icon{margin-left:14px;color:#6b7280}
.club .global-header .search-field .global-search-clear{align-self:center;flex:0 0 30px;min-width:30px;min-height:30px;padding:6px;margin:0 5px;border-radius:50%;background:#f2f3f5;color:#69717e}
.club .global-header .search-field .global-search-clear svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}
.club .global-header .search-field .global-search-submit{align-self:stretch;flex:0 0 44px;min-width:44px;margin:4px;padding:8px;border-radius:8px;background:#901c28;color:#fff}
.club .global-header .search-field .global-search-submit:hover{background:#741520}
.club .global-header .search-results{left:auto;right:0;width:min(720px,calc(100vw - 40px));min-width:0;max-height:min(70vh,640px);padding:0 10px 8px;border-radius:14px;border:1px solid #e4e6ea;box-shadow:0 14px 42px #20273724;background:#fff;overscroll-behavior:contain;scroll-padding-top:80px}
.global-search-filters{position:sticky;top:0;z-index:1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;padding:14px 4px 12px;border-bottom:1px solid #e3e6eb;background:#fff}
.club .global-header .global-search-filter{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:42px;border:0;border-radius:9px;padding:9px 7px;background:#f5f6f7;color:#475163;font-size:12px;line-height:1.3}
.club .global-header .global-search-filter svg{width:17px;height:17px;flex:0 0 17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.global-search-filter-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.global-search-filter-count{display:inline-grid;place-items:center;flex:0 0 auto;min-width:22px;min-height:23px;border-radius:12px;padding:2px 5px;background:#eaecf0;color:inherit;font-size:11px;font-variant-numeric:tabular-nums}
.club .global-header .global-search-filter[aria-pressed=true]{background:#fbecef;color:#8f1826;font-weight:700}
.global-search-filter[aria-pressed=true] .global-search-filter-count{background:#f6dade}
.club .global-header .global-search-filter:hover{background:#f4e5e9;color:#8f1826}
.club .global-header .search-results .global-search-list{padding:4px 0 0;margin:0}
.global-search-list li+li{border-top:1px solid #edf0f3}
.club .global-header .search-results .global-search-list a{position:relative;display:grid;grid-template-columns:32px minmax(0,1fr) 16px;align-items:center;gap:16px;min-height:64px;padding:10px 14px;border:0;border-radius:8px;background:transparent;color:#141b2a}
.club .global-header .search-results .global-search-list a:hover,.club .global-header .search-results .global-search-list a:focus{background:#fbeef0;color:#861c29}
.club .global-header .search-results .global-search-list a:hover:before,.club .global-header .search-results .global-search-list a:focus:before{content:"";position:absolute;inset:10px auto 10px 0;width:3px;border-radius:3px;background:#971e2a}
.club .global-header .search-results a:focus-visible,.club .global-header .global-search-filter:focus-visible{outline:2px solid #971e2a;outline-offset:-2px}
.global-search-list .global-search-content{display:grid;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:14px;min-width:0}
.global-search-list .global-search-type{justify-self:start;max-width:100%;padding:5px 8px;border-radius:7px;background:#f0f2f5;color:#525d6e;font-size:11px;line-height:1.3;overflow-wrap:anywhere}
.global-search-list [data-search-type=club] .global-search-type{background:#eaf5ef;color:#276348}
.global-search-list [data-search-type=team] .global-search-type{background:#edf3fc;color:#315e91}
.global-search-list [data-search-type=player] .global-search-type{background:#f2ebfb;color:#6a3fa0}
.global-search-list [data-search-type=competition] .global-search-type{background:#fff4df;color:#805717}
.global-search-list .global-search-identity strong{font-size:15px;font-weight:750;line-height:1.35;letter-spacing:-.15px}
.club .global-header .global-search-list small{margin-top:3px;font-size:12px;line-height:1.45;color:#687386}
.club .global-header .global-search-chevron{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;color:#677486}
.global-search-list a:hover .global-search-chevron,.global-search-list a:focus .global-search-chevron{color:#8f1826}
.global-search-list .global-search-logo{background:#fff;border-radius:4px}
.global-search-list .global-search-logo-empty{background:transparent}
.club .global-header .global-search-loading{min-height:100px;color:#687386}
.club .global-header .search-no-result{padding:24px 14px;font-size:13px}
.club .global-header .global-search-gear{width:18px;height:18px;flex:0 0 18px}
@media(max-width:850px){.club .global-header .search-results{width:100%;max-height:min(62vh,600px)}.club .global-header .search-field input{font-size:16px}}
@media(max-width:580px){.global-search-filters{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:10px 0}.club .global-header .global-search-filter{min-height:38px;padding:7px 5px;font-size:11px}.club .global-header .global-search-filter svg{width:15px;height:15px;flex-basis:15px}.global-search-list .global-search-content{grid-template-columns:minmax(0,1fr);gap:3px}.club .global-header .search-results .global-search-list a{gap:10px;padding:9px 8px;min-height:72px}.global-search-list .global-search-type{font-size:10px;padding:3px 6px}.global-search-list .global-search-identity strong{font-size:14px}.club .global-header .global-search-list small{font-size:11px}.club .global-header .search-results{padding-inline:7px;scroll-padding-top:110px}}

/* Frosted search surface; solid fallback keeps the field legible without blur. */
.club .global-header .search-field{min-height:46px;border:1px solid #dce3e9;border-radius:16px;background:linear-gradient(120deg,#ffffffed,#edf2f7d9);box-shadow:inset 0 1px 0 #fff, inset 0 -1px 0 #ffffff80,0 5px 18px #24374b0b;backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);transition:border-color .18s,box-shadow .18s}
.club .global-header .search-field:hover{border-color:#cad4df;box-shadow:inset 0 1px 0 #fff,0 6px 22px #24374b12}
.club .global-header .search-field:focus-within{border-color:#d7835d;box-shadow:inset 0 1px 0 #fff,0 0 0 3px #d86b3820,0 6px 22px #24374b12}
.club .global-header .search-field input{background:transparent;color:#344353;border:0;border-radius:16px;box-shadow:none}
.club .global-header .search-field input::placeholder{color:#667584;opacity:1}
.club .global-header .search-field .search-icon{color:#78899b}
.club .global-header .search-field .global-search-clear{background:#ffffff80;color:#647487;box-shadow:inset 0 1px 0 #fff}
.club .global-header .search-field .global-search-clear:hover{background:#fff;color:#37485a}
.club .global-header .search-field .global-search-submit{border:1px solid #ffffff70;border-radius:12px;background:linear-gradient(145deg,#e68c59,#c85329);box-shadow:inset 0 1px 0 #ffffff50,0 3px 9px #c66a3026;color:white}
.club .global-header .search-field .global-search-submit:hover{background:linear-gradient(145deg,#d97b48,#b84924)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.club .global-header .search-field{background:linear-gradient(120deg,#fff,#edf2f7)}}
@media(prefers-reduced-motion:reduce){.club .global-header .search-field{transition:none}}

/* Inline agenda controls only; global navigation and sporting tables are untouched. */
.agenda-panel{min-width:0;margin:20px 0;padding:26px;border:0;border-radius:22px;background:linear-gradient(135deg,#f5f9ff,#fff 65%);color:#45556b;box-shadow:0 10px 34px #29436b12}
.agenda-panel :where(h2,h3,p){margin:0}
.agenda-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 13px;border:1px solid var(--line);border-radius:12px;background:#fff;color:#536780;font:600 12px/1.4 "Segoe UI",sans-serif;cursor:pointer}
.agenda-button svg{width:17px;height:17px;flex-shrink:0}
.agenda-button:hover{border-color:var(--site-focus)}
.agenda-button:disabled{opacity:.45;cursor:default}
.agenda-button.agenda-trigger{max-width:100%;min-height:42px;padding:10px 15px;gap:9px;border:1px solid #d5dfe4;border-radius:10px;background:#edf2f5;color:#243640;font-size:12px;font-weight:650;box-shadow:0 2px 5px #17252b0a;transition:background .15s,border-color .15s,box-shadow .15s}
.agenda-button.agenda-trigger:hover:not(:disabled),.agenda-button.agenda-trigger[aria-expanded=true]{background:#dfe9ef;border-color:#aebfc9;color:#17252b;box-shadow:0 3px 9px #17252b12}
.agenda-button.agenda-trigger:active:not(:disabled){background:#d3e0e8;box-shadow:none}
[data-agenda-trigger]{display:inline-flex;min-width:0;max-width:100%}
.agenda-panel :where(button,input,select,summary):focus-visible,.agenda-trigger:focus-visible{outline:3px solid var(--site-focus);outline-offset:3px}
.agenda-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}
.agenda-heading>div{display:flex;align-items:center;gap:10px;min-width:0}
.agenda-heading>div>svg{width:24px;height:24px;padding:12px;border-radius:15px;background:#fff0e5;box-shadow:0 0 18px #db87451a;flex-shrink:0;color:var(--site-primary)}
.agenda-heading h2{font:750 23px/1.3 "Segoe UI",sans-serif;overflow-wrap:anywhere}
.agenda-close{width:40px;height:40px;min-height:40px;padding:0;flex-shrink:0;border-color:transparent;background:transparent}
.agenda-modes{display:flex;width:fit-content;max-width:100%;gap:5px;padding:5px;border:0;border-radius:15px;background:#eaf0f7;margin-bottom:22px;box-sizing:border-box}
.agenda-modes button{padding:9px 16px;min-height:38px;border:0;border-radius:11px;background:transparent;color:#73839a}
.agenda-modes button[aria-pressed=true]{background:#fff3e9;color:var(--site-primary);box-shadow:0 3px 10px #9c57201a}
.agenda-live{font-size:12px;line-height:1.5;color:var(--muted);display:flex;align-items:center;justify-content:space-between;gap:12px}
.agenda-live:not(:empty){margin-bottom:18px;padding:10px 12px;border-left:3px solid var(--site-primary);background:var(--bg)}
.agenda-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}
.agenda-options,.agenda-output{min-width:0;display:grid;gap:16px;align-content:start}
.agenda-options{padding:20px;border:1px solid #e4ecf6;border-radius:17px;background:#ffffffc9;box-shadow:0 4px 16px #29436b06}
.agenda-targets{min-width:0;margin:0;padding:0;border:0}
.agenda-targets legend,.agenda-venue>span{font-size:11px;font-weight:650;color:var(--muted);margin-bottom:8px}
.agenda-targets>div{display:flex;flex-wrap:wrap;gap:7px}
.agenda-targets button[aria-pressed=true]{background:#fff1e6;border-color:#edc6aa;color:var(--site-primary);box-shadow:0 2px 8px #c7763412}
.agenda-scope{display:grid;gap:4px;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.agenda-scope>span{color:var(--muted);font-size:11px}
.agenda-venue{display:grid;gap:0;min-width:0}
.agenda-venue select{width:100%;min-width:0;min-height:42px;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);font:12px "Segoe UI",sans-serif}
.agenda-check{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.5;cursor:pointer}
.agenda-check input{margin:3px 0 0;flex-shrink:0;width:17px;height:17px;accent-color:var(--site-primary)}
.agenda-check span{display:grid;gap:3px;min-width:0}
.agenda-check b{font-weight:600}
.agenda-check small{color:var(--muted);font-size:11px}
.agenda-preview h3{font-size:13px;font-weight:650;margin-bottom:12px}
.agenda-count{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.agenda-count strong{font-size:32px;line-height:1;font-weight:700;letter-spacing:-.035em;color:var(--ink)}
.agenda-count span{font-size:12px;color:var(--muted)}
.agenda-exclusions,.agenda-help{font-size:11px;line-height:1.6;color:var(--muted)}
.agenda-exclusions summary,.agenda-help summary{min-height:36px;display:flex;align-items:center;cursor:pointer;font-weight:600}
.agenda-exclusions ul{padding:0;list-style:none;margin:5px 0;max-height:180px;overflow:auto;overscroll-behavior:contain}
.agenda-exclusions li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0;border-top:1px solid var(--line);overflow-wrap:anywhere}
.agenda-exclusions li span{min-width:0}
.agenda-exclusions li b{flex-shrink:0;font:600 11px Consolas,monospace}
.agenda-exclusions summary::after,.agenda-help summary::after{content:'⌄';margin-left:auto;padding-left:8px}
.agenda-exclusions[open] summary::after,.agenda-help[open] summary::after{content:'⌃'}
.agenda-empty,.agenda-note{font-size:11px;line-height:1.6;color:var(--muted)}
.agenda-panel .agenda-notice{display:grid;gap:5px;width:100%;box-sizing:border-box;margin:12px 0;padding:13px 15px;border:1px solid var(--line);border-left:3px solid var(--site-primary);border-radius:8px;background:var(--bg);color:var(--ink);font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.agenda-notice strong{font-size:12px;font-weight:650}
.agenda-delivery{display:grid;justify-items:start;gap:12px;border:1px solid #e6edf6;border-radius:17px;background:#fff;padding:20px;min-width:0;box-shadow:0 4px 16px #29436b06}
.agenda-delivery>p{font-size:13px;line-height:1.6}
.agenda-delivery>small{font-size:11px;line-height:1.6;color:var(--muted)}
.agenda-button-primary{background:var(--site-primary);color:var(--site-primary-ink);border-color:transparent}
.agenda-button-primary:hover{background:var(--site-primary-hover)}
.agenda-url{display:grid;gap:7px;width:100%;min-width:0;color:var(--muted);font-size:11px}
.agenda-url input{width:100%;min-width:0;box-sizing:border-box;padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--bg);color:var(--ink);font:11px/1.5 Consolas,monospace}
.agenda-help p+p{margin-top:8px}
@media(max-width:760px){.agenda-panel{padding:16px}.agenda-layout{grid-template-columns:minmax(0,1fr);gap:20px}.agenda-options{padding:16px}.agenda-heading h2{font-size:18px}.agenda-modes{gap:18px}.agenda-modes button{font-size:11px}.agenda-live{align-items:flex-start}.agenda-targets button{flex:1;min-width:0}.agenda-delivery>.agenda-button{width:100%}.agenda-exclusions ul{max-height:150px}.agenda-button,.agenda-trigger,.agenda-check,.agenda-exclusions summary,.agenda-help summary{min-height:44px}}
@media(max-width:760px){.agenda-button.agenda-trigger{min-height:44px}}
@media(prefers-reduced-motion:reduce){.agenda-panel *,.agenda-trigger{scroll-behavior:auto;transition:none}}

/* Shared light cards, restrained glow and compact controls. */
.agenda-panel .agenda-button{transition:background .15s,box-shadow .15s,border-color .15s}
.agenda-panel .agenda-button:not(.agenda-button-primary){border-color:#dfe7f2}
.agenda-panel .agenda-close{border:0;background:#edf2f8;border-radius:50%;color:#71829a}
.agenda-panel .agenda-close:hover{background:#e1e9f3}
.agenda-scope{padding:13px 15px;background:#f2f6fc;border-radius:12px;color:#506783}
.agenda-panel .agenda-venue select,.agenda-panel .agenda-url input{box-sizing:border-box;border-color:#dfe7f2;border-radius:11px;background:#f9fbfe;color:#536780}
.agenda-check{padding:12px;border-radius:12px;background:#f6f8fc;box-sizing:border-box}
.agenda-check:has(input:checked){background:#fff3e9;box-shadow:inset 0 0 0 1px #edc6aa80}
.agenda-preview{padding:20px;border:1px solid #dce9f9;border-radius:17px;background:linear-gradient(120deg,#eaf3ff,#fff);box-shadow:0 0 22px #6299e313}
.agenda-count strong{font-size:42px;color:#497bb5;text-shadow:0 3px 18px #72a9ed30}
.agenda-preview h3{color:#536d8c}
.agenda-exclusions,.agenda-help{margin-top:10px;padding:4px 11px;border-radius:10px;background:#edf2f880}
.agenda-panel .agenda-live:not(:empty){border:1px solid #efd5bf;border-radius:12px;background:#fff6ee;color:#94633f}
.agenda-panel .agenda-button-primary{border:0;box-shadow:0 5px 15px #b85e2822;border-radius:12px}
.agenda-panel .agenda-button-primary:disabled{box-shadow:none}
@media(max-width:760px){.agenda-panel{padding:16px;border-radius:18px}.agenda-heading>div>svg{width:20px;height:20px;padding:10px}.agenda-preview,.agenda-delivery{padding:16px}.agenda-modes{gap:4px;width:100%}.agenda-modes button{flex:1;padding:9px 10px}.agenda-output{gap:14px}}
@media(prefers-reduced-motion:reduce){.agenda-panel .agenda-button{transition:none}}

.agenda-heading h2::before,.agenda-heading h2::after{content:none!important}
.agenda-subscription-actions{display:flex;flex-wrap:wrap;gap:8px;margin-block:12px}
.agenda-subscription-actions a{text-decoration:none}
.agenda-favorite-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;max-height:320px;overflow:auto}
.agenda-favorite-list li{display:grid;gap:4px;padding:10px 12px;border-radius:10px;background:#f3f6fb;overflow-wrap:anywhere}
.agenda-favorite-list strong{font-size:13px;color:#43536a}
.agenda-favorite-list span,.agenda-favorite-list small{font-size:11px;color:#718198}
@media(max-width:760px){.agenda-subscription-actions>.agenda-button{width:100%}}

/* Common geometry and appearance for both banner actions, on every page. */
body.club :is(button.favorite-follow,button.agenda-button.agenda-trigger){box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex-wrap:nowrap;gap:8px;min-height:44px;padding:11px 15px;border:1px solid #d5dfe4;border-radius:10px;background:#edf2f5;color:#243640;font:600 12px/20px "Segoe UI",sans-serif;box-shadow:0 2px 5px #17252b0a;vertical-align:middle;transition:background .15s,border-color .15s,box-shadow .15s}
body.club :is(button.favorite-follow,button.agenda-button.agenda-trigger) svg{width:18px;height:18px;flex:0 0 18px}
body.club :is(button.favorite-follow,button.agenda-button.agenda-trigger):hover:not(:disabled){background:#dfe9ef;border-color:#aebfc9;box-shadow:0 3px 9px #17252b12}
body.club button.favorite-follow[aria-pressed=true]{background:linear-gradient(120deg,#fffaf6,#ffecdde6);border-color:color-mix(in srgb,var(--site-primary) 28%,#d5dfe4)}
body.club button.favorite-follow[aria-pressed=true]:hover{background:linear-gradient(120deg,#fff5ed,#ffe5d1)}

/* Compact shared dropdown. The native select only measures its existing layout. */
.vselect{position:relative;display:inline-grid;grid-template-columns:minmax(0,1fr);vertical-align:middle;max-width:100%;min-width:0;flex:1 1 auto}
body.club .vselect>select.vselect-native{grid-area:1/1;visibility:hidden;pointer-events:none;min-width:0;max-width:100%;margin:0;min-height:36px}
body.club .vselect>button.vselect-button{grid-area:1/1;position:relative;display:flex;align-items:center;gap:10px;justify-content:space-between;box-sizing:border-box;min-width:0;width:100%;min-height:36px;margin:0;padding:8px 12px;border:1px solid #dce4ed;border-radius:10px;background:linear-gradient(145deg,#fff,#f2f6fa);color:#42516a;box-shadow:0 2px 6px #243b5608;font:600 12px/1.4 "Segoe UI",sans-serif;text-align:left;cursor:pointer;text-transform:none;letter-spacing:normal}
.vselect-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vselect-button:after{content:'';width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);flex:0 0 6px;margin:0 2px 3px 4px}
body.club .vselect>button.vselect-button:hover:not(:disabled),body.club .vselect>button.vselect-button[aria-expanded=true]{border-color:var(--site-primary,#ed683f);background:#fff8f2;box-shadow:0 0 0 3px #f4773510}
body.club .vselect>button.vselect-button:focus-visible{outline:2px solid var(--site-primary,#ed683f);outline-offset:3px}
body.club .vselect>button.vselect-button:disabled{opacity:.5;cursor:default}
.vselect-popup{position:fixed;z-index:10000;box-sizing:border-box;overflow:auto;overscroll-behavior:contain;padding:5px;border:1px solid #e3e8ef;border-radius:12px;background:#fffffff7;backdrop-filter:blur(16px);box-shadow:0 12px 36px #23395426,0 2px 6px #2339540b;scrollbar-width:thin;color:#42516a;font:500 12px/1.4 "Segoe UI",sans-serif;text-align:left}
.vselect-option{position:relative;min-height:34px;display:flex;align-items:center;padding:8px 30px 8px 10px;border-radius:7px;overflow-wrap:anywhere;cursor:pointer}
.vselect-option[aria-selected=true]{background:#fff0e5;color:#b34d25;font-weight:650}
.vselect-option[aria-selected=true]:after{content:'✓';position:absolute;right:10px;color:var(--site-primary,#ed683f)}
.vselect-option.is-active,.vselect-option:hover{background:#edf2f8;box-shadow:inset 0 0 0 1px #d7e1ee}
.vselect-option[aria-disabled=true]{opacity:.4;cursor:default}
.vselect-group{padding:8px 10px 4px;font-size:10px;font-weight:700;color:#8491a4}
@media(pointer:coarse){.vselect-option{min-height:44px}body.club .vselect>button.vselect-button{min-height:40px}}
/* Small-screen constraints shared by controls and statistical captions. */
body.club .vselect[hidden]{display:none}
@media(max-width:600px){
 body.club .vselect{max-width:100%;min-width:0}
 body.club .vselect>button.vselect-button{min-height:44px}
 .vselect-option{min-height:44px}
 body.club .performance-insight>header{gap:10px}
 body.club .analysis-sample{padding:10px 12px;font-size:12px}
 body.club .analysis-sample strong,body.club .season-identity,body.club .season-metric{min-width:0;overflow-wrap:anywhere}
 body.club .competition-banner-actions>:is(.favorites-follow-bar,[data-agenda-trigger]){flex:1 1 180px;min-width:0}
 body.club .competition-banner-actions :is(.favorite-follow,.agenda-trigger){width:100%;white-space:normal}
}
@media(prefers-reduced-motion:reduce){
 body.club :is(.vselect-button,.favorite-follow,.agenda-trigger,.overview-card),.vselect-popup{transition:none!important;animation:none!important;scroll-behavior:auto}
}
