/* MATCHDAY — independent Moroccan football identity. No external font or image dependency. */
:root{--bg:#f3f4ef;--ink:#152c36;--muted:#61716f;--green:#087e62;--lime:#daf1bb;--border:#dfe6df;--navy:#102535;--gold:#c6a66c}
body{background:var(--bg);color:var(--ink);font-family:'Segoe UI',Tahoma,sans-serif}button,a,input,select{touch-action:manipulation}button,a{transition:background .15s,color .15s,box-shadow .15s}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #b99853;outline-offset:3px}button:disabled{cursor:not-allowed}
.sidebar{min-height:88px;background:var(--navy);border:0;padding-inline:max(24px,calc((100vw - 1440px)/2));gap:30px;box-shadow:0 6px 30px #10253513}.brand{gap:12px}.brandmark{border:1px solid #c6a66c88;background:#ffffff08;color:#e6c994;border-radius:12px;width:40px;height:45px}.brand strong{font-size:14px;letter-spacing:2px}.brand small{color:#c6a66c;font-size:9px;letter-spacing:2.5px}.nav{gap:2px;scrollbar-width:thin;scrollbar-color:#586958 transparent}.nav button{font-size:12px;padding:24px 12px;color:#bac8cf;gap:7px}.nav button.active{color:#e6f4d3;background:#ffffff07}.nav button.active:after{background:var(--gold);height:3px;border-radius:3px;inset-inline:14px}.nav button svg{width:17px;height:17px;flex-shrink:0}
.topbar{background:#fbfcf8;border-bottom:1px solid var(--border);min-height:58px;height:auto;padding:10px max(24px,calc((100vw - 1380px)/2));gap:16px}.toplabel{color:var(--muted);font-size:12px}.topright{gap:8px;flex-wrap:wrap;justify-content:flex-end}.topright .secondary{padding:7px 11px;min-height:34px;font-size:12px;border-radius:8px;background:transparent}.topright .avatar{background:#e4eee6;color:var(--green)}.topright .language{border:1px solid var(--border);background:#fff}.account-status{background:#edf2e9;color:#53665b;font-size:11px;text-align:end;padding:5px max(24px,calc((100vw - 1380px)/2));border:0}
.content{max-width:1440px;padding:28px 30px 32px}.intro{margin-bottom:22px;align-items:center}.intro .eyebrow{color:#987a41;font-size:10px;font-weight:800;letter-spacing:2.4px}.intro h1{font-size:36px;line-height:1.2;letter-spacing:-1.2px;margin-top:8px}.intro p{font-size:14px;color:#62746e;margin-top:6px}.demo{font-size:10px;letter-spacing:1px;text-transform:uppercase;background:transparent;border:1px solid #cab993;color:#79643f;padding:8px 12px;border-radius:30px}.panel{border:1px solid var(--border);border-radius:18px;box-shadow:0 5px 22px #132d2604;overflow:hidden}.panelhead{padding:20px 24px}.panelhead h2{font-size:18px;font-weight:750;letter-spacing:-.4px}.panelhead p{font-size:12px;color:var(--muted)}
.matchday-workspace{display:grid;grid-template-columns:minmax(0,1fr) 326px;gap:22px;align-items:start}.matchday-workspace>.squad-panel{grid-column:1;grid-row:3;min-width:0}.matchday-workspace>.aside{grid-column:2;grid-row:3;display:flex;flex-direction:column;gap:18px;min-width:0}.matchday-workspace>.game-panel{grid-column:1 / -1;grid-row:1;margin:0}.squad-panel>.panelhead{display:flex;flex-direction:column;align-items:stretch;padding:22px 24px 17px;gap:14px}.squad-panel>.panelhead>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.squad-panel>.panelhead h2{font-size:22px}.squad-panel>.panelhead p{font-size:11px;text-align:end;max-width:210px}.squad-panel h2 button{font-size:15px;color:#78887f;margin-inline-start:5px}.toolbar{display:flex;width:100%;padding:10px;background:#f5f7f2;border:1px solid #e4e9e1;border-radius:12px;gap:10px}.toolbar .seg{margin-inline-start:auto;background:#e7ece4;border-radius:8px}.seg button{border-radius:7px;font-size:12px;padding:8px 12px}.seg button.on{box-shadow:0 2px 6px #152c3612;background:white;color:var(--green)}.toolbar .secondary{font-size:12px;min-height:34px;background:white;border:1px solid #d9e2d6;border-radius:8px;padding:7px 11px}.formation{background:#fff;color:var(--green);border:1px solid #d9e2d6;border-radius:8px;font-size:13px;font-weight:750;min-height:35px}
.pitchwrap{padding:0 18px}.pitch{position:relative;min-height:548px;padding:16px 10px;border-radius:14px;background:radial-gradient(ellipse at 50% 25%,#ffffff0b,transparent 65%),repeating-linear-gradient(0deg,#187454 0,#187454 68px,#1c7a59 68px,#1c7a59 136px);box-shadow:inset 0 0 90px #063d3566;border:1px solid #17654c}.pitch:after{content:'BOTOLATEAM / MATCHDAY';position:absolute;bottom:9px;inset-inline:0;text-align:center;font-size:8px;font-weight:800;letter-spacing:4px;color:#ddf1db50;pointer-events:none}.pitchlines{inset:24px 26px;border-color:#e5f5de40;border-width:1px}.pitchlines:before,.pitchlines:after,.pitchlines .box{border-color:#e5f5de40}.pitchrow{height:128px;position:relative;z-index:1;gap:8px}.player{width:112px;min-width:0;position:relative;padding:3px;transition:transform .15s}.player:hover{transform:translateY(-3px)}
.token.kit,.player .token.kit,.bench .token.kit,.who .token.kit{display:inline-flex;position:relative;align-items:center;justify-content:center;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important;width:58px;height:63px;color:white}.kit-shape{display:block;width:100%;height:100%;filter:drop-shadow(0 5px 3px #052f3540)}.kit-initials{position:absolute;top:44%;inset-inline:0;font-size:9px;font-weight:900;text-shadow:0 1px 3px #0009;line-height:1;text-align:center;letter-spacing:.6px}.player .name{background:#fff;color:#142f36;padding:5px 4px 4px;font-size:11px;line-height:1.4;max-width:100%;display:block;border-radius:6px 6px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-shadow:0 3px 10px #062a2922;font-weight:700}.player .meta{display:block;padding:4px;font-size:9px;border-radius:0 0 6px 6px;background:#eaf1e4;color:#45604d;white-space:nowrap;line-height:1.5}.player .meta b{color:#0b523d;float:inline-end;margin-inline-start:3px}.player .meta small{font-size:8px;font-weight:500}.badge{background:var(--gold);color:#102535;border:2px solid #fff;box-shadow:0 2px 5px #0002;top:7px;right:-4px;inset-inline-end:-4px;inset-inline-start:auto;width:21px;height:21px;font-size:10px;font-weight:900}.badge.vice{background:#fff;color:#344c48;border-color:#d0ddcf}
.bench{background:#f4f6ef;margin:14px 18px 16px;padding:14px 12px 12px;border:1px solid #e1e7dc;border-radius:12px}.benchhead{font-size:10px;letter-spacing:1px;font-weight:750;color:#617057;display:flex;justify-content:space-between;margin-bottom:10px}.benchhead span:last-child{font-weight:400;letter-spacing:0}.benchrow{gap:12px;justify-content:space-around}.bench .token.kit{width:40px;height:44px}.bench .kit-initials{font-size:7px}.bench .player{width:110px}.bench .player .name{background:#fff;font-size:10px}.bench .player .meta{background:#e5ebdf;font-size:9px}.bench .badge{width:17px;height:17px;font-size:8px;top:3px}.panelbottom{border-top:1px solid var(--border);background:#fff;padding:16px 22px;gap:14px}.panelbottom span{color:#718276;font-size:11px}.primary{border-radius:10px;background:var(--green);font-size:13px;font-weight:700;min-height:40px;padding:11px 18px;box-shadow:0 3px 7px #087e6212}.primary.lime{background:var(--lime);color:#184b38;box-shadow:none}.secondary{border-radius:9px}.textlink{font-size:12px;color:var(--green)}
.manager-summary{background:#e9eee4;padding:18px;border:1px solid #dce4d7;border-radius:18px}.summary-heading{display:flex;align-items:center;justify-content:space-between;font-size:9px;font-weight:800;letter-spacing:1.7px;color:#4e6955;margin-bottom:15px}.summary-heading i{width:7px;height:7px;background:#088160;border-radius:50%;box-shadow:0 0 0 4px #08816010}.manager-summary .stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}.manager-summary .stat,.manager-summary .stat:first-child,.manager-summary .stat:last-child{background:#ffffffc9;border:1px solid #dfe7d8;border-radius:11px;padding:14px 12px;box-shadow:none}.manager-summary .statlabel{font-size:10px;line-height:1.5}.manager-summary .statvalue{font-size:26px;letter-spacing:-1px;margin-top:6px}.manager-summary .statvalue small{font-size:10px;margin-inline-start:4px}.manager-summary .stattag{font-size:9px;line-height:1.6;margin-top:6px}.ranking-summary .panelhead{padding:18px 17px 10px;display:flex;justify-content:space-between}.ranking-summary h2{font-size:14px}.ranking-summary .ranking-cards{grid-template-columns:1fr 1fr;gap:8px;padding:0 14px 14px;margin:0}.ranking-summary .ranking-card{padding:11px 10px;border-radius:9px;gap:5px;background:#fafbf7}.ranking-summary .ranking-card>span{font-size:8px;letter-spacing:.4px}.ranking-summary .ranking-card strong{font-size:21px}.ranking-summary .ranking-card small{font-size:9px;line-height:1.5}.roundcard{border:1px solid #1f3947;border-top:0;border-radius:18px;background:linear-gradient(145deg,#102b35,#122638);padding:22px;position:relative;overflow:hidden}.roundcard:after{content:'';position:absolute;width:140px;height:140px;border:1px solid #c6a66c20;transform:rotate(45deg);top:-75px;inset-inline-end:-50px;pointer-events:none}.roundcard .eyebrow{color:#d0b27b;font-size:9px;letter-spacing:1.3px}.roundcard h2{font-size:20px;margin:10px 0}.roundcard .token.kit{width:43px;height:49px;flex-shrink:0}.captaincard{gap:13px;margin:12px 0}.captaincard strong{font-size:14px}.captaincard small{font-size:10px}.captainmeta{font-size:11px;padding:13px 0 15px;margin-top:12px}.captainmeta b{font-size:19px}.aside .help{display:none}.aside>.panel .panelhead{padding:16px}.aside>.panel .panelhead h2{font-size:15px}.match{padding:14px 16px;gap:8px}.matchtime{font-size:10px;background:#f0f3e9;color:#5d6d58;padding:5px 7px;border-radius:6px}.matchtime b{font-size:13px;color:#1b4939}.crest{border-radius:8px}.club{font-size:11px}
.game-panel{padding:22px}.game-panel .panelhead{padding:0 0 15px}.game-panel h2{font-size:18px}.game-help{font-size:11px;margin:12px 0;line-height:1.7}.chip-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.chip-card{background:#f7f8f2;border:1px solid #e2e7db;padding:15px 12px;border-radius:12px;gap:9px;position:relative}.chip-card:before{content:'✦';color:#a28753;font-size:21px;line-height:1.2}.chip-card h3{font-size:13px;letter-spacing:-.2px}.chip-card p{font-size:10px;line-height:1.7;color:#61715e}.chip-card button{font-size:10px;min-height:33px;padding:8px 5px;border:1px solid #d8e1cf;border-radius:7px;background:#fff}.chip-active{background:#e5f1dd;border-color:#8eaf7e}.chip-active button{background:#087e62;color:white}.chip-card button:disabled{opacity:.75}.game-panel .field{font-size:12px}.deadline-panel{background:#fff;border:1px solid #dbe5d6;border-inline-start:3px solid var(--green);border-radius:14px;grid-template-columns:230px 1fr;gap:22px;padding:16px 22px;margin-bottom:22px;align-items:center}.deadline-panel .field{margin:0;font-size:10px;font-weight:750;letter-spacing:.4px;gap:7px}.deadline-panel select{background:#f4f7ee;padding:9px 10px;border:1px solid #d8e3d2;font-size:12px}.deadline-panel strong{font-size:13px}.deadline-panel p{font-size:11px;margin:4px 0;line-height:1.6}.deadline-panel>div:last-child>p:last-child{color:#72816a}.deadline-panel.round-locked{background:#fff9ed;border-inline-start-color:var(--gold)}
.filters{gap:12px}.filters input,.filters select,.field input,.profile-grid select{border:1px solid #dce4d7;border-radius:10px;background:#fbfcf8;padding:12px}.list th{background:#f2f5ec;color:#667b61;font-size:10px;letter-spacing:.7px;font-weight:750}.list td{font-size:13px;border-color:#edf0e8}.who .token.kit{width:33px;height:39px;flex-shrink:0}.who .kit-initials{font-size:6px}.who .badge{width:14px;height:14px;font-size:7px;border-width:1px;top:4px}.list tbody tr:hover{background:#f8faf4}.viewcards .leaguecard{border-radius:18px;border-top:3px solid var(--gold)}.leaguecode{border-radius:8px}.info{background:#eaf0e5;color:#486447;border-inline-start-color:#9cb48b;border-radius:10px;font-size:13px}.rules h3{color:#1c4d3a}.rules p{font-size:14px;color:#617060}.footnote{color:#8a9688;font-size:10px;text-align:center;margin-top:22px;border-top:1px solid #dfe6d8;padding-top:18px}
.auth-layout{background:#f3f5ee}.auth-brand{background:radial-gradient(ellipse at 30% 40%,#184333,transparent 75%),#112a35;position:relative;overflow:hidden;color:#fff}.auth-brand:after{content:'';position:absolute;inset:0;pointer-events:none;opacity:.075;background:repeating-linear-gradient(45deg,transparent 0 49px,#d4b97a 49px 50px,transparent 50px 99px),repeating-linear-gradient(-45deg,transparent 0 49px,#d4b97a 49px 50px,transparent 50px 99px);mask-image:linear-gradient(transparent,#000)}.auth-brand>*{position:relative;z-index:1}.auth-brand .eyebrow{color:#d4b97a;font-size:10px;letter-spacing:3px}.auth-brand h1{font-size:clamp(40px,4.6vw,70px);font-weight:750;line-height:1.05;letter-spacing:-2px}.auth-brand p{color:#bdcbbf;line-height:1.9}.auth-main{background:#f8faf4}.auth-card{background:#fff;border:1px solid #e1e8dc;border-radius:22px;box-shadow:0 20px 60px #132e2710;padding:32px}.auth-card h2{font-size:28px;letter-spacing:-.8px;color:#13362c}.auth-lead{font-size:13px;color:#76816e}.auth-submit{min-height:46px;margin-top:14px}.auth-notice{border-radius:10px;background:#eaf4e2;color:#365f3c;line-height:1.7}.auth-small{font-size:11px;color:#7b8674}.auth-card .field{font-size:11px;font-weight:650;color:#4e6148}.club-option{border-radius:11px;background:#fafcf5;border-color:#dde6d5;padding:12px}.club-option:has(input:checked){border-color:#188565;background:#eaf5e2}.auth-links button{font-size:12px}.auth-divider{color:#8b9783;font-size:11px}.auth-main footer{font-size:12px}dialog{border-radius:20px;box-shadow:0 25px 100px #10253540}.dialoghead{background:#f5f8ef;border-bottom:1px solid #e1e8db}.dialoghead h2{font-size:20px}.dialogbody{padding:24px}.dialogactions{gap:10px}.playerprofile .token.kit{width:65px;height:72px}.playerprofile .kit-initials{font-size:10px}#toast{border-radius:12px;background:#122b35;border:1px solid #b79b6470;font-size:13px}
@media(min-width:1550px){.pitch{min-height:564px}.pitchrow{height:132px}}
@media(max-width:1100px){.sidebar{flex-wrap:wrap;gap:0;padding:0 24px}.brand{padding:14px 0 8px}.brand strong br{display:none}.brand strong{font-size:14px}.brandmark{width:28px;height:31px;font-size:23px}.brand small{display:none}.nav{flex-basis:100%;justify-content:flex-start}.nav button{padding:15px 13px}.content{padding:24px 20px}.matchday-workspace{grid-template-columns:minmax(0,1fr) 280px;gap:16px}.squad-panel>.panelhead{padding:18px}.squad-panel>.panelhead>div:first-child{display:block}.squad-panel>.panelhead p{text-align:start;max-width:none;margin-top:5px}.pitch{padding-inline:5px}.pitchrow{gap:3px}.player{width:100px}.player .meta{font-size:8px}.manager-summary{padding:14px}.manager-summary .stat{padding:12px 9px}.chip-grid{grid-template-columns:1fr 1fr}}
@media(max-width:850px){.matchday-workspace{display:flex;flex-direction:column;gap:18px}.matchday-workspace>.squad-panel,.matchday-workspace>.game-panel,.matchday-workspace>.aside{width:100%}.matchday-workspace>.squad-panel{order:1}.matchday-workspace>.game-panel{order:-1}.matchday-workspace>.aside{order:3;display:grid;grid-template-columns:1fr 1fr;gap:16px}.manager-summary .statvalue{font-size:28px}.manager-summary .stattag{font-size:10px}.ranking-summary .ranking-card small{font-size:10px}.pitchrow{gap:10px}.player{width:120px}.player .meta{font-size:10px}.chip-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.topbar{flex-wrap:wrap}.account-status{padding-inline:20px;font-size:10px}.toplabel{display:none}.topright{width:100%;justify-content:flex-end}.squad-panel>.panelhead>div:first-child{display:flex}.auth-card{padding:25px}.auth-brand h1{font-size:44px}}
@media(max-width:600px){.sidebar{padding:0 14px}.nav button{padding:14px 10px;font-size:11px}.brand{padding:12px 0 4px}.brand strong{letter-spacing:1px}.nav button svg{width:14px;height:14px}.topbar{padding:9px 12px;min-height:48px}.topright .username,.topright .avatar{display:none}.topright{gap:5px;justify-content:space-between}.topright .secondary{font-size:10px;padding:6px 7px;min-height:31px}.topright .language{font-size:11px}.account-status{padding:5px 12px;font-size:9px;text-align:start;overflow-wrap:anywhere}.content{padding:20px 12px}.intro{margin-bottom:16px}.intro h1{font-size:29px}.intro .eyebrow{font-size:8px;letter-spacing:1.5px}.intro p{font-size:12px}.demo{font-size:8px;padding:7px 9px}.deadline-panel{grid-template-columns:1fr;gap:9px;padding:13px 15px;margin-bottom:16px;border-radius:12px}.deadline-panel .field{display:flex;align-items:center;justify-content:space-between;gap:12px}.deadline-panel select{width:auto;max-width:68%;font-size:11px}.deadline-panel p{font-size:10px}.deadline-panel strong{font-size:12px}.squad-panel>.panelhead{padding:16px 12px 12px}.squad-panel>.panelhead h2{font-size:19px}.squad-panel>.panelhead>div:first-child{display:block}.squad-panel>.panelhead p{font-size:10px;margin-top:5px}.toolbar{gap:6px;padding:7px;border-radius:9px}.toolbar .secondary{font-size:10px;padding:6px;min-height:33px;max-width:43%}.toolbar .seg{margin-inline-start:auto}.seg button{padding:8px;font-size:10px}.formation{font-size:11px;max-width:85px;padding:7px}.pitchwrap{padding:0 7px}.pitch{min-height:504px;padding:12px 2px;border-radius:10px}.pitchrow{height:118px;gap:1px}.pitchlines{inset:18px 12px}.player{width:94px;padding:2px;flex-shrink:1}.token.kit,.player .token.kit{width:45px;height:50px}.kit-initials{font-size:7px}.player .name{font-size:9px;padding:4px 2px;font-weight:650}.player .meta{font-size:8px;padding:3px 2px}.player .meta b{float:none;display:block;line-height:1.2;font-size:9px;margin:2px 0 0}.player .meta small{font-size:7px}.badge{width:18px;height:18px;font-size:8px;top:5px}.bench{margin:10px 8px;padding:12px 6px;border-radius:9px}.benchhead{font-size:8px;letter-spacing:.6px}.benchrow{gap:2px}.bench .player{width:88px}.bench .token.kit{width:34px;height:39px}.bench .name{font-size:9px}.bench .meta{font-size:8px}.bench .player .meta b{display:none}.panelbottom{padding:13px;gap:10px;align-items:center}.panelbottom span{font-size:10px}.panelbottom .primary{width:100%;min-height:43px}.matchday-workspace>.aside{grid-template-columns:1fr}.manager-summary .stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.manager-summary{padding:13px}.manager-summary .stat,.manager-summary .stat:first-child{padding:10px 7px}.manager-summary .statvalue{font-size:21px;letter-spacing:-.7px}.manager-summary .statlabel{font-size:8px}.manager-summary .statvalue small{display:block;font-size:8px;margin:4px 0 0}.manager-summary .stattag{font-size:8px;line-height:1.5}.ranking-summary .ranking-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.ranking-summary .ranking-card>span{font-size:9px}.game-panel{padding:18px 14px}.chip-grid{grid-template-columns:1fr 1fr;gap:9px}.chip-card{padding:13px}.chip-card h3{font-size:13px}.chip-card p{font-size:10px}.chip-card button{font-size:10px}.game-panel .panelhead h2{font-size:18px}.game-panel .panelhead p{font-size:11px}.auth-card{padding:22px 17px;border-radius:17px}.auth-card h2{font-size:26px}.auth-brand h1{font-size:37px;letter-spacing:-1px}.auth-brand .eyebrow{font-size:9px}.profile-grid{gap:0}.list td,.list th{padding:12px 10px}.list td{font-size:12px}.rules{padding:21px}.footnote{font-size:9px}html[dir=rtl] h1{font-size:29px;letter-spacing:0}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}.player:hover{transform:none}}

.deadline-countdown{display:inline-block;margin-inline-start:12px;padding:4px 8px;background:#ecf3e5;border-radius:6px;font-size:10px;color:#376b40;font-weight:750;font-variant-numeric:tabular-nums}.deadline-countdown:empty{display:none}.deadline-details{font-size:10px;color:#72816a;margin-top:5px}.deadline-details summary{cursor:pointer;width:fit-content}.deadline-details[open]{margin-top:9px}.deadline-details[open] summary{margin-bottom:6px;color:#376b40}
@media(max-width:850px){.matchday-workspace>.aside{display:contents}.matchday-workspace>.aside>*{order:3;width:100%}.matchday-workspace>.aside>.manager-summary{order:0}.manager-summary .stats{grid-template-columns:repeat(4,minmax(0,1fr))}.ranking-summary .ranking-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){.deadline-countdown{font-size:9px;margin-inline-start:8px;padding:3px 6px}.ranking-summary .ranking-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}

@media(max-width:600px){.manager-summary .stattag{display:none}.manager-summary .statlabel{font-size:10px}.manager-summary .statvalue small{font-size:10px}.player .name{font-size:10px}.bench .player .name{font-size:10px}}

.deadline-heading{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px}.deadline-heading .deadline-countdown{margin-inline-start:0}
.live-badge{display:inline-block;padding:4px 8px;border-radius:6px;background:#eef2f6;color:#5b6b80;font-size:10px;font-weight:750;font-variant-numeric:tabular-nums;white-space:nowrap}
.live-badge.on{background:#fdecec;color:#a12b2b}
.live-badge.on::before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:#e5484d;margin-inline-end:6px;vertical-align:middle;animation:livePulse 1.2s ease-in-out infinite}
@keyframes livePulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.75)}}
.gap-note{font-size:10.5px;line-height:1.5;color:#8a6d3b;background:#fdf6e3;border:1px solid #f0e0b2;border-radius:6px;padding:6px 8px;margin-top:6px}
@media(max-width:600px){.live-badge{font-size:9px;padding:3px 6px}.gap-note{font-size:10px}}

/* Contrast for club initials on light and striped shirts. */
.token.kit .kit-initials{background:#102535e8;color:#fff;padding:2px 3px;border-radius:3px;line-height:1.1;letter-spacing:0;text-shadow:none;white-space:nowrap}
.who .token.kit .kit-initials{padding:1px 2px}

/* Club kits in the fixtures and Au programme panel. */
.fixture-kit{display:inline-flex;flex:0 0 34px;align-items:center;justify-content:center}.fixture-kit .token.kit{width:34px;height:38px;margin:0}.fixture-kit .kit-initials{font-size:6px;letter-spacing:.2px}.fixture-kit .kit-shape{filter:drop-shadow(0 2px 2px #052f3525)}

/* Equal team columns keep every season fixture date on the same centre line. */
.match.season-match{display:grid;grid-template-columns:minmax(0,1fr) 160px minmax(0,1fr);align-items:center;gap:18px}
.season-match>.matchtime{width:100%;box-sizing:border-box;text-align:center}
.season-match>.club{min-width:0;overflow-wrap:anywhere}
.season-match>.club:last-child{justify-content:flex-end;text-align:end}
@media(max-width:700px){.match.season-match{grid-template-columns:minmax(0,1fr) 108px minmax(0,1fr);gap:8px}.season-match>.club{flex-direction:column;text-align:center;gap:5px}.season-match>.club:last-child{flex-direction:column-reverse;text-align:center}}

/* Compact one-line opponent, price and cumulative points. */
.player .player-fixture-meta{display:flex;align-items:center;justify-content:center;text-align:center;gap:4px;white-space:nowrap;padding:4px 3px;font-size:9px;line-height:1.4}
.player-opponent{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:inherit;font-weight:700;line-height:inherit;margin:0}
.player-cost-points{display:flex;flex-shrink:0;align-items:center;gap:4px;font-size:inherit;white-space:nowrap}
.player .player-cost-points b{float:none;margin:0;white-space:nowrap}
.player .player-cost-points small{font-size:inherit}
/* The cumulative sits apart from the day's points: two different figures, never one number standing for both. */
.player .player-cost-points .player-cumulated{color:var(--lime);font-weight:800;padding-inline-start:3px;border-inline-start:1px solid rgba(255,255,255,.18)}
.player .player-cost-points .player-cumulated small{color:#9fc0a8;font-weight:650}
@media(max-width:700px){.player .player-fixture-meta{font-size:8px;gap:3px;padding-inline:2px}.player-cost-points{gap:3px}}

.player .name{text-align:center}


/* Empty formation slots: + button to add a player by position. */
.slot-add{background:#0a3d3133;border:2px dashed #daf1bb88;border-radius:12px;cursor:pointer;justify-content:center;gap:6px;color:#e8f5e0;min-height:118px;padding:8px 4px}
.slot-add:hover{background:#0a3d3166;border-color:#daf1bb;transform:translateY(-3px)}
.slot-add:disabled{opacity:.45;cursor:not-allowed;transform:none}
.slot-plus{display:grid;place-items:center;width:46px;height:46px;border:2px solid #daf1bb;border-radius:50%;background:#0a3d3199;font-size:28px;font-weight:300;line-height:1;color:#daf1bb;flex-shrink:0}
.slot-add .name{background:#0a3d31e6;color:#daf1bb;text-align:center;border-radius:7px;font-size:11px;font-weight:750;padding:5px 6px;letter-spacing:.5px;box-shadow:none}
.slot-add .meta{background:#0a3d31b3;color:#a8c5a0;text-align:center;border-radius:7px;font-size:9px;padding:4px 6px;letter-spacing:.4px}
@media(max-width:700px){.slot-add{min-height:100px}.slot-plus{width:38px;height:38px;font-size:22px}.slot-add .name{font-size:9px;padding:3px 4px}.slot-add .meta{font-size:8px;padding:3px 4px}}
.picker-heading{font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:#617057;font-weight:800;margin:14px 0 6px}
.picker-list{max-height:42vh;overflow:auto;border:1px solid #e1e7dc;border-radius:10px;background:#fafbf7}
.picker-list .swapoption:last-child{border-bottom:0}
.picker-note{font-size:12px;color:#61716f;margin-top:10px;line-height:1.6}
.picker-note .textlink{padding:0;margin-inline-start:4px}

/* Bench empty slots: + button to add a substitute by position. */
.bench .slot-add{min-height:100px;width:110px;background:#e8eee4;border:2px dashed #9bb89a;color:#2c4a3a;padding:8px 4px}
.bench .slot-add:hover{background:#dde8d8;border-color:#5f8a6a}
.bench .slot-add .slot-plus{width:40px;height:40px;font-size:24px;border-color:#5f8a6a;background:#f4f8f2;color:#2c4a3a}
.bench .slot-add .name{background:#d5e3d0;color:#2c4a3a;font-size:10px}
.bench .slot-add .meta{background:#c9d9c4;color:#3d5c48;font-size:9px}
@media(max-width:700px){.bench .slot-add{width:88px;min-height:90px}.bench .slot-add .slot-plus{width:34px;height:34px;font-size:20px}}

/* Points du banc : les quatre remplaçants cumulent leurs points de journée sous la formation. */
.bench-points{display:block;margin-top:5px;background:var(--navy);color:#daf1bb;border-radius:7px;padding:4px 6px;font-size:10px;font-weight:750;letter-spacing:.3px;white-space:nowrap;line-height:1.4}
.bench-points b{font-size:13px;color:#fff;font-weight:800}
.bench-points small{font-size:9px;color:#9fc0a8;font-weight:650}
.bench-points.is-counted{background:var(--lime);color:#1c4126;box-shadow:0 0 0 1px #a9c46a inset}
.bench-points.is-counted b{color:#0b3d20}
.bench-points.is-counted small{color:#2f5b39}
.bench-cumulated{display:block;margin-top:3px;background:rgba(0,0,0,.16);color:#daf1bb;border-radius:7px;padding:2px 6px;font-size:9px;font-weight:700;letter-spacing:.2px;white-space:nowrap;line-height:1.5}
.benchfoot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:7px 12px;margin-top:11px;padding-top:10px;border-top:1px dashed #cdd7c7;font-size:11px;color:#45604d}
.bench-total{font-weight:650}
.bench-total b{font-size:15px;color:#0b523d;font-weight:800;margin-inline-start:3px}
.bench-status{font-size:10px;font-weight:750;padding:4px 9px;border-radius:999px;background:#e6ebe1;color:#4a5f52;text-align:center}
.bench-status.bench-status-boost{background:var(--lime);color:#1c4126}
.bench-status.bench-status-auto{background:#dcecd9;color:#16543c}

@media(max-width:700px){.bench-points{font-size:9px;padding:3px 5px;margin-top:4px}
.bench-points b{font-size:12px}
.bench-points small{font-size:8px}
.benchfoot{font-size:10px}
.bench-status{font-size:9px;padding:3px 7px}
}

@media(max-width:600px){.benchfoot{flex-direction:column;align-items:flex-start;gap:5px;margin-top:9px;padding-top:9px}
.bench-total b{font-size:14px}
}

/* Actualisation manuelle des résultats (bouton de l'interface). */
.results-row{display:flex;align-items:center;gap:10px;margin-bottom:20px}
.results-row .info{flex:1;min-width:0;margin-bottom:0}
.results-refresh{flex:0 0 auto;padding:8px 14px;font-size:12px;min-height:0;white-space:nowrap}
.results-refresh.is-loading{opacity:.6;pointer-events:none;cursor:progress}
.deadline-heading .results-refresh{margin-inline-start:auto}
@media(max-width:700px){.results-refresh{font-size:11px;padding:7px 12px}}
@media(max-width:600px){.results-row{flex-direction:column;align-items:stretch;gap:8px}.results-row .results-refresh{width:100%}.deadline-heading .results-refresh{margin-inline-start:0}}

/* Consultation de toutes les journées : sélecteur et vue lecture seule. */
.round-picker-row{margin-bottom:18px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.round-picker{display:flex;align-items:center;gap:12px;margin-top:0;font-size:13px;font-weight:700;color:#4e6955}
.round-picker select{border:1px solid #dce4d7;border-radius:9px;background:#fbfcf8;padding:11px 12px;min-width:220px;color:var(--ink);font-size:14px;font-weight:600}
.round-nav{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}
.round-nav .secondary{padding:9px 14px;font-size:12px;min-height:0;white-space:nowrap}
.round-nav .secondary[disabled]{opacity:.45;cursor:not-allowed}
.round-selected{font-size:13px;font-weight:800;color:#1b4939;white-space:nowrap}
.row-day-points{text-align:center;font-weight:700}
.playerfigures b{color:var(--green)}
.round-archive-head .info{font-weight:600}
.round-archive-note{margin-bottom:10px;font-size:13px}
.missing-composition{margin:18px 22px 22px;padding:24px 22px;color:#8a6d3b;background:#fdf6e3;border:1px solid #f0e0b2;border-radius:9px;font-size:14px;line-height:1.7}
.round-archive h3{margin:20px 22px 8px;font-size:12px;text-transform:uppercase;letter-spacing:.7px;color:#667b61}
.stats.archive-stats{grid-template-columns:repeat(5,1fr)}
@media(max-width:850px){.stats.archive-stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.stats.archive-stats{grid-template-columns:repeat(2,1fr)}.round-picker{flex-direction:column;align-items:stretch;gap:6px}.round-picker select{width:100%;min-height:42px}.round-picker-row{flex-direction:column;align-items:stretch}.round-nav{width:100%}.round-nav .secondary{flex:1 1 auto}.missing-composition{margin:14px 12px 18px;padding:18px 14px}.round-archive h3{margin:16px 12px 6px}}

/* Fiches : un match se lit depuis le calendrier, un joueur depuis la journée consultée. */
.match[data-fixture]{cursor:pointer}
.match[data-fixture]:hover{background:#f7faf5}
.match[data-fixture]:focus-visible{outline:3px solid #d4993a;outline-offset:-3px}
.matchsheet{display:grid;gap:18px}
.matchsheet-head{text-align:center}
.matchsheet-score{display:flex;align-items:center;justify-content:space-between;gap:12px}
.matchsheet-club{display:flex;align-items:center;gap:9px;font-weight:700;min-width:0;overflow-wrap:anywhere}
.matchsheet-club:last-child{flex-direction:row-reverse}
.matchsheet-result{font:700 34px/1.1 'Barlow Condensed',sans-serif;color:var(--green);white-space:nowrap}
.matchsheet-status{margin-top:8px;font-size:13px;font-weight:700;color:#1b4939}
.matchsheet-meta{margin-top:5px;font-size:12px;color:var(--muted);line-height:1.7}
.matchsheet-note{margin:0;font-size:13px}
.matchsheet-section h4{font-size:12px;text-transform:uppercase;letter-spacing:.7px;color:#667b61;margin-bottom:10px}
.matchsheet-events{list-style:none;display:grid;gap:7px}
.matchsheet-events li{display:grid;grid-template-columns:54px 104px minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:baseline;font-size:13px}
.matchsheet-minute{font-weight:800;color:#1b4939;white-space:nowrap}
.matchsheet-kind{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#6c7f74}
.matchsheet-actor{font-weight:650}
.matchsheet-detail{color:var(--muted);overflow-wrap:anywhere}
.matchsheet-sheets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.matchsheet-sheet h5{display:flex;justify-content:space-between;gap:8px;align-items:baseline;font-size:15px}
.matchsheet-sheet h5 small{font-size:12px;font-weight:700;color:#087e62}
.matchsheet-sheet h6{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:#6c7f74;margin-top:12px}
.matchsheet-sheet p{font-size:12px;color:var(--muted);margin-top:4px}
.matchsheet-sheet ul{list-style:none;display:grid;gap:5px;margin-top:7px}
.matchsheet-sheet li{display:flex;gap:9px;align-items:baseline;font-size:13px}
.matchsheet-number{display:inline-grid;place-items:center;min-width:26px;height:21px;background:#eef2ef;border-radius:5px;font-size:11px;font-weight:700;color:#2c4a3c;flex-shrink:0}
.matchsheet-stats th{font-size:11px}
.matchsheet-stats td{font-size:12px}
.matchsheet .list .who{cursor:pointer}
.indisponible{margin:0;padding:14px 16px;text-align:center;font-size:13px;color:#6e7c80;background:#f2f4f1;border:1px dashed #cdd6d0;border-radius:8px}
@media(max-width:700px){.matchsheet-sheets{grid-template-columns:1fr}.matchsheet-events li{grid-template-columns:54px minmax(0,1fr)}.matchsheet-events .matchsheet-detail{grid-column:2}.matchsheet-result{font-size:27px}}
.stats.stats-totals{grid-template-columns:repeat(5,minmax(0,1fr))}
.stats.archive-stats.stats-totals{grid-template-columns:repeat(6,minmax(0,1fr))}
.manager-summary .stats.stats-totals{grid-template-columns:repeat(5,minmax(0,1fr))}
.manager-summary .stats.stats-totals .statlabel{font-size:9px}
.manager-summary .stats.stats-totals .statvalue{font-size:20px}
.manager-summary .stats.stats-totals .statvalue small{font-size:9px}
@media(max-width:850px){.stats.stats-totals,.stats.archive-stats.stats-totals,.manager-summary .stats.stats-totals{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.stats.stats-totals,.stats.archive-stats.stats-totals,.manager-summary .stats.stats-totals{grid-template-columns:repeat(2,1fr)}.manager-summary .stats.stats-totals .statvalue{font-size:24px}}

/* Calendrier : statut de chaque match et navigation entre les journées */
.fixture-phase{display:inline-block;font-size:9px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;padding:3px 7px;border-radius:6px;background:#eef2e8;color:#5d6d58;white-space:nowrap}
.fixture-phase.phase-live{background:#0b8f6b18;color:#07654c}
.fixture-phase.phase-done{background:#e6ebf2;color:#41536a}
.fixture-phase.phase-postponed{background:#fbedd9;color:#9a6417}
.fixture-phase.phase-other{background:#f2eef7;color:#5c4b7a}
.round-phase{display:inline-block;font-size:9px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;padding:4px 8px;border-radius:6px;background:#eef2e8;color:#5d6d58;white-space:nowrap}
.round-phase[data-round-phase=live],.round-phase[data-round-phase=ongoing]{background:#0b8f6b18;color:#07654c}
.round-phase[data-round-phase=done]{background:#e6ebf2;color:#41536a}
.round-phase[data-round-phase=postponed]{background:#fbedd9;color:#9a6417}
.panelhead-actions{display:flex;align-items:center;gap:8px}
.panelhead-actions .results-refresh,.panelhead>.results-refresh{min-height:32px;padding:7px 12px;font-size:12px}
.calendar-round-side{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.calendar-round.is-focused{box-shadow:inset 0 0 0 2px #d4993a66}
.calendar-nav{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:16px 24px 0}
.calendar-nav .secondary{min-height:34px;padding:7px 13px;font-size:12px;white-space:nowrap}
.calendar-nav .calendar-current{width:auto;padding:7px 4px;border-top:0;white-space:nowrap}
.calendar-picker{margin:0;font-size:10px;font-weight:750;gap:6px;color:#4e6955;text-transform:uppercase;letter-spacing:.5px}
.calendar-picker select{min-height:34px;padding:7px 10px;border:1px solid #dce4d7;border-radius:9px;background:#fbfcf8;color:var(--ink);font-size:13px;font-weight:650}
.calendar-nav .results-refresh{min-height:34px;padding:7px 13px;font-size:12px}
.aside .programme-panel .panelhead{gap:8px}
.aside .programme-panel .programme-round{font-size:11px;line-height:1.5}
.aside .programme-panel .fixture-phase{font-size:8px;padding:2px 6px}
@media(max-width:600px){.calendar-nav{padding:12px 12px 0;gap:7px}.calendar-nav .secondary{flex:1 1 auto}.calendar-picker{width:100%}.calendar-picker select{width:100%;min-height:40px}.calendar-round-side{justify-content:flex-start}}

.manager-link{padding:0;border:0;background:none;color:var(--green);font:inherit;font-weight:750;cursor:pointer;text-decoration:underline;text-decoration-color:#0881604d;text-underline-offset:3px}
.manager-link:hover,.manager-link:focus-visible{color:#05543f;text-decoration-color:var(--green)}
.manager-sheet .panelhead{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap}
.manager-sheet .who{cursor:default}
.manager-calc .panelhead p{font-size:12px;line-height:1.7}
.manager-calc .list td{padding:13px 16px}
.manager-calc .list td:last-child{color:#617060;font-size:12px}
.manager-calc-listed td{background:#f7f9f4}
.manager-calc-counted td{background:#eaf1e4;font-weight:750}
.manager-calc-included td{color:#617060;font-weight:600}
.manager-calc-included td b{font-weight:600}
@media(max-width:600px){.manager-sheet .panelhead{flex-direction:column}.manager-sheet .panelhead button{width:100%}.manager-calc .list td{padding:11px 10px}}

/* Points du onze : les onze titulaires totalisent sous le terrain, à la façon du pied du banc. */
.pitchfoot{margin:13px 0 2px}
.pitchfoot .bench-status{background:#eef2e8;color:#4a5f52}

/* Cumul de chaque joueur, rangé par joueur : onze titulaires puis quatre remplaçants. */
.playercumul{margin:0 18px 16px;padding-top:14px;border-top:1px solid #e1e7dc}
.playercumul-head h3{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#617057;font-weight:800}
.playercumul-head p{font-size:11px;color:#7b8a80;margin-top:4px;line-height:1.6}
.playercumul .tablewrap{margin-top:11px;border:1px solid #e1e7dc;border-radius:10px;background:#fff}
.playercumul .list th,.playercumul .list td{padding:8px 11px;font-size:12px;white-space:nowrap}
.playercumul .list th{font-size:10px;letter-spacing:.4px}
.playercumul .list th:first-child,.playercumul .list td:first-child{position:sticky;inset-inline-start:0;background:#fff;z-index:1;text-align:start}
.playercumul .list th:nth-child(2),.playercumul .list td:nth-child(2){font-size:11px;color:#617060;text-align:start}
.playercumul .list th:last-child,.playercumul .list td:last-child{text-align:end}
.playercumul .list tbody tr:hover td{background:#f8faf4}
.playercumul .playercumul-value{font-weight:800;color:#0b523d;background:#f4f8f2}
.playercumul .playercumul-value .row-cumulated{color:#0b523d}
.playercumul .playercumul-total td{background:#eef3e9;font-weight:800;color:#0b523d}
.playercumul .playercumul-total td:first-child{background:#eef3e9}
.playercumul .playercumul-total td:nth-child(2){color:#2f5b39}
@media(max-width:600px){.playercumul{margin:0 10px 14px}.playercumul .list th,.playercumul .list td{padding:7px 8px;font-size:11px}}

/* Tableau de bord immédiatement sous les choix tactiques. */
.matchday-workspace>.manager-summary{grid-column:1 / -1;grid-row:2;width:100%;margin:0}
@media(max-width:850px){.matchday-workspace>.manager-summary{order:0}}

/* Une navigation alignée, avec accès permanent aux journées déjà ouvertes. */
.round-picker-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,2fr);align-items:end;gap:16px;padding:16px;margin:0;background:#f5f7f2;border-bottom:1px solid #dce4d7}
.round-picker{display:flex;flex-direction:column;align-items:stretch;gap:7px;margin:0;min-width:0}
.round-picker select{width:100%;min-width:0;height:44px;margin:0}
.round-nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;min-width:0}
.round-nav .secondary{height:44px;min-height:44px;margin:0}
.round-selected{text-align:center;white-space:nowrap}
.round-history-links{display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px;margin-bottom:18px}
.round-history-links .is-selected{background:#087553;color:white;border-color:#087553}
.archive-workspace>.squad-panel{grid-column:1 / -1;grid-row:1}
.archive-pitch .player,.archive-bench .player{cursor:default}
@media(max-width:850px){.round-picker-row{grid-template-columns:1fr}.round-nav{width:100%}.round-nav .secondary{white-space:normal}}
@media(max-width:450px){.round-nav{grid-template-columns:1fr 1fr}.round-selected{grid-column:1 / -1;grid-row:1}.round-nav .secondary{font-size:11px;padding:8px}}

.squad-panel{container-type:inline-size}
@container(max-width:700px){.round-picker-row{grid-template-columns:1fr}.round-nav{width:100%;grid-template-columns:1fr auto 1fr}.round-nav .secondary{white-space:normal}}

/* Six indicateurs lisibles sans chiffres surdimensionnés. */
.stats.stats-totals:has(>.stat:nth-child(6)){display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;align-items:stretch}
.stats.stats-totals:has(>.stat:nth-child(6))>.stat{min-width:0;padding:14px 10px;border-radius:10px;overflow:visible}
.stats.stats-totals:has(>.stat:nth-child(6)) .statlabel{font-size:11px;line-height:1.4;letter-spacing:0;min-height:31px;overflow-wrap:anywhere}
.stats.stats-totals:has(>.stat:nth-child(6)) .statvalue,
.stats.stats-totals:has(>.stat:nth-child(6)) .scorebig{font:700 24px/1.25 'Segoe UI',Tahoma,Arial,sans-serif;letter-spacing:0;margin:5px 0;overflow-wrap:anywhere}
.stats.stats-totals:has(>.stat:nth-child(6)) .statvalue small,
.stats.stats-totals:has(>.stat:nth-child(6)) .scorebig small{font-size:10px;margin-inline-start:4px;letter-spacing:0}
.stats.stats-totals:has(>.stat:nth-child(6))>.stat>b{display:block;font-size:13px;line-height:1.5;overflow-wrap:anywhere;margin:5px 0}
.stats.stats-totals:has(>.stat:nth-child(6))>.stat:nth-child(4) .statvalue{font-size:15px;line-height:1.5}
.stats.stats-totals:has(>.stat:nth-child(6)) .stattag{font-size:10px;line-height:1.5;letter-spacing:0;margin-top:5px;overflow-wrap:anywhere}
@media(max-width:700px){.stats.stats-totals:has(>.stat:nth-child(6)){grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:420px){.stats.stats-totals:has(>.stat:nth-child(6)){grid-template-columns:repeat(2,minmax(0,1fr))}}

.player-match-detail{padding:14px 0;border-bottom:1px solid #dce4d7}.player-match-detail h4{font-size:14px;line-height:1.6}.player-event-list{padding-inline-start:20px;font-size:13px;line-height:1.8}

/* Mes points: a single day navigation above the comparison. */
.round-picker-row.round-picker-compact{grid-template-columns:1fr}
.round-picker-compact + .participant-points{margin:20px 0 24px}

/* Mes points: keep the five totals together at desktop and panel widths. */
.stats.stats-totals.points-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;align-items:stretch}
.points-summary>.stat{min-width:0;padding:14px 10px}
.points-summary>.stat:first-child{padding-top:12px}
.points-summary .statlabel{font-size:11px;line-height:1.4;letter-spacing:0;min-height:31px;overflow-wrap:anywhere}
.points-summary .statvalue,.points-summary .scorebig{font:700 24px/1.25 'Segoe UI',Tahoma,Arial,sans-serif;letter-spacing:0;margin:5px 0}
.points-summary .statvalue small,.points-summary .scorebig small{font-size:10px;margin-inline-start:4px}
.points-summary>.stat>b{display:block;font-size:13px;line-height:1.5;margin:5px 0;overflow-wrap:anywhere}
.points-summary .stattag{font-size:10px;line-height:1.5;letter-spacing:0;overflow-wrap:anywhere}
@media(max-width:550px){.stats.stats-totals.points-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:400px){.stats.stats-totals.points-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Previous rounds in Mes points: retain all six indicators on one row. */
.round-picker-compact ~ .stats.archive-stats.stats-totals:has(>.stat:nth-child(6)){grid-template-columns:repeat(6,minmax(0,1fr))}
@media(max-width:600px){.round-picker-compact ~ .stats.archive-stats.stats-totals:has(>.stat:nth-child(6)){grid-template-columns:repeat(6,minmax(110px,1fr));overflow-x:auto;padding-bottom:6px}}

/* Programme: a consistent centre column for status, date and kickoff time. */
.fixture-timing>.fixture-date{display:block}
.programme-panel .match{display:grid;grid-template-columns:minmax(0,1fr) 176px minmax(0,1fr);align-items:center;gap:8px}
.programme-panel .matchtime{width:100%;min-width:0;box-sizing:border-box}
.programme-panel .fixture-timing{display:flex;align-items:center;justify-content:center;gap:6px}
.programme-panel .fixture-date{white-space:nowrap;font-variant-numeric:tabular-nums}
.programme-panel .club{min-width:0;flex-wrap:wrap;overflow-wrap:anywhere}
.programme-panel .club:last-child{justify-content:flex-end;text-align:end}
.programme-panel .match-postponed .fixture-timing{flex-wrap:wrap}
.programme-panel .match-postponed .fixture-date{white-space:normal}

/* Matchs: align status and kickoff on a single line for every round. */
.match.season-match{grid-template-columns:minmax(0,1fr) 200px minmax(0,1fr)}
.season-match .fixture-timing{display:flex;align-items:center;justify-content:center;gap:6px}
.season-match .fixture-date{white-space:nowrap;font-variant-numeric:tabular-nums}
.season-match .matchtime{min-width:0}
.season-match.match-postponed .fixture-timing{flex-wrap:wrap}
.season-match.match-postponed .fixture-date{white-space:normal}

/* Phones: give team names half a row each, with the kickoff line underneath. */
@media(max-width:600px){
  .programme-panel .match,.match.season-match{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;padding:14px 12px}
  .programme-panel .match>.club,.season-match>.club{grid-row:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;text-align:center;font-size:12px;line-height:1.45;min-width:0;white-space:normal;overflow-wrap:break-word}
  .programme-panel .match>.club:first-child,.season-match>.club:first-child{grid-column:1}
  .programme-panel .match>.club:last-child,.season-match>.club:last-child{grid-column:2;flex-direction:column-reverse;text-align:center;justify-content:center}
  .programme-panel .match>.matchtime,.season-match>.matchtime{grid-column:1 / -1;grid-row:2;width:100%;padding:8px 10px}
  .programme-panel .fixture-date,.season-match .fixture-date{font-size:11px;line-height:1.5}
  .programme-panel .fixture-phase,.season-match .fixture-phase{font-size:9px}
}

/* Mes points on phones: readable labels and complete values. */
@media(max-width:600px){
  .stats.stats-totals.points-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .points-summary .statlabel,.round-picker-compact ~ .stats.archive-stats.stats-totals .statlabel{font-size:12px;line-height:1.45;min-height:35px;white-space:normal;overflow-wrap:break-word}
  .points-summary .stattag,.round-picker-compact ~ .stats.archive-stats.stats-totals .stattag{font-size:11px;line-height:1.5;white-space:normal;overflow-wrap:break-word}
  .round-picker-compact ~ .stats.archive-stats.stats-totals:has(>.stat:nth-child(6)){grid-template-columns:repeat(6,minmax(140px,1fr));overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scroll-padding-inline:2px}
  .round-picker-compact ~ .stats.archive-stats.stats-totals>.stat{scroll-snap-align:start}
}

/* API league table; Fantasy rankings retain their own page. */
.botola-standings .panelhead{justify-content:space-between}
.botola-source,.botola-legend,.botola-scroll-hint{padding:0 22px;color:var(--muted);font-size:12px;line-height:1.7}
.botola-source{margin:0 0 16px}.botola-legend{margin:16px 0 20px}.botola-scroll-hint{display:none}
.botola-group{padding:10px 22px}
.botola-table-scroll{overflow-x:auto;isolation:isolate;overscroll-behavior-inline:contain}
.botola-table{width:100%;min-width:640px;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:13px;font-variant-numeric:tabular-nums}
.botola-table caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.botola-table th,.botola-table td{padding:13px 9px;border-bottom:1px solid #e5eadf;text-align:center;background:#fff}
.botola-table thead th{background:#eef2e8;color:#4a604e;font-size:11px;font-weight:700}
.botola-table tr>:first-child{width:38px;position:sticky;inset-inline-start:0;z-index:2;color:#718273}
.botola-table tr>:nth-child(2){width:200px;position:sticky;inset-inline-start:38px;z-index:2;text-align:start;border-inline-end:1px solid #e5eadf}
.botola-table tr>:nth-child(3){width:52px}
.botola-table tbody tr:hover>*{background:#f6f9f2}
.botola-table .botola-league-points{color:var(--green);font-size:16px;background:#f3f8ee}
.botola-club{display:flex;align-items:center;gap:10px;font-weight:600;line-height:1.45;white-space:normal;overflow-wrap:break-word}
.botola-club>span{min-width:0}.botola-club small{display:block;font-size:10px;font-weight:400;color:var(--muted);margin-top:3px}
.botola-standings .results-refresh{flex-shrink:0}
@media(max-width:700px){.botola-scroll-hint{display:block}.botola-table{font-size:12px}.botola-table tr>:nth-child(2){width:160px}.botola-table th,.botola-table td{padding:11px 7px}.botola-club{gap:7px}.botola-source,.botola-legend,.botola-scroll-hint{padding-inline:14px}.botola-standings .panelhead .results-refresh{width:auto}}

.signup-pick-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.toolbar .signup-pick-actions .secondary{max-width:none;white-space:normal}
@media(max-width:600px){.toolbar .signup-pick-actions{flex-basis:100%;width:100%}.toolbar .signup-pick-actions .secondary{flex:1;min-height:38px;font-size:11px}}
