*{box-sizing:border-box}body{margin:0;color:#19251f;background:#f6f8f5;font:15px Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,select{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #399e52;outline-offset:3px}header{background:#111e18;color:white}.bar,main,footer{max-width:1300px;margin:auto;padding:0 5%}.bar{display:flex;align-items:center;gap:56px;height:76px}.brand{display:flex;align-items:center;font-size:34px;font-weight:850;letter-spacing:-2px;color:white;text-decoration:none}.brand span,h1 span{color:#b6ef5f}.brand i{display:flex;align-items:end;gap:3px;transform:skew(-16deg);margin-right:11px}.brand b{background:#b6ef5f;width:6px;height:14px}.brand b:nth-child(2){height:23px}.brand b:nth-child(3){height:31px}nav{display:flex;align-self:stretch;gap:26px}nav button{background:none;color:#b7c2ba;border:0;border-bottom:3px solid transparent;padding:3px 0 0;font-weight:600;font-size:14px}nav button.active{color:white;border-color:#b6ef5f}small{font-size:11px;background:#35453b;border-radius:5px;padding:2px 5px}.bar time{margin-left:auto;color:#d9e5d9;font:13px monospace}main{padding-top:28px}.hero{background:linear-gradient(104deg,#162b20 14%,#22482e 60%,#356941);height:226px;border-radius:18px;position:relative;overflow:hidden;color:white}.hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(106deg,transparent 0 57px,#b7f69b08 59px 114px)}.heroCopy{position:relative;padding:39px 42px}.eyebrow,.kicker{letter-spacing:2px;font-size:10px;font-weight:800}.eyebrow{color:#c5ef9b;display:flex;align-items:center;gap:9px}.eyebrow i{width:8px;height:8px;border-radius:50%;background:#b3e96a}h1{font-size:clamp(42px,5vw,69px);line-height:1;margin:20px 0 14px;letter-spacing:-3.5px}.hero p{color:#d2ded2;margin:0}.pitch{position:absolute;width:420px;height:234px;border:2px solid #a9d49a73;right:1%;top:16%;transform:perspective(570px) rotateX(31deg) rotateZ(-19deg);background:repeating-linear-gradient(90deg,#83af7820 0 42px,transparent 43px 84px);box-shadow:0 0 0 13px #91c08712}.mid,.mid:after,.box{position:absolute}.mid{height:100%;left:50%;border-left:2px solid #a9d49a88}.mid:after{content:'';width:65px;height:65px;border:2px solid #a9d49a88;border-radius:50%;top:35%;left:-34px}.box{height:54%;width:15%;top:23%;left:-2px;border:2px solid #a9d49a88}.box.right{left:auto;right:-2px}.spot{position:absolute;border-radius:50%;width:17px;height:17px;background:#c1f46d;border:3px solid #f2ffcf;box-shadow:0 0 0 5px #c8ff8c28;z-index:1}.one{top:70%;left:24%}.two{top:24%;left:53%}.three{top:51%;left:72%}.four{top:18%;left:84%}.run{position:absolute;left:25%;top:50%;width:35%;border-top:2px dashed #d9f9bb;transform:rotate(-39deg)}.layout{display:grid;grid-template-columns:minmax(0,2.22fr) minmax(255px,1fr);gap:26px;margin:31px 0 40px}.heading,.filters,.grouphead,.row,.railHead,.sectionhead{display:flex;align-items:center;justify-content:space-between;gap:10px}h2{font-size:25px;margin:0;letter-spacing:-1px}.muted,.footnote,.sub{color:#65746a;font-size:12px}.filters{margin:17px 0}#tabs{display:flex;background:#e6ebe5;padding:4px;border-radius:9px;gap:2px}#tabs button,select{border:0;border-radius:6px;font-size:13px;font-weight:650}#tabs button{background:transparent;padding:9px 13px;color:#647168}#tabs .chosen{background:white;color:#16281d;box-shadow:0 1px 4px #16281d17}select{border:1px solid #d9e1d7;background:white;padding:9px;color:#38483c;max-width:45%}.group,.card,dialog{background:white;border:1px solid #dbe2d9;border-radius:13px;overflow:hidden}.group{margin-bottom:16px}.grouphead{background:#edf2eb;padding:12px 16px;font-size:13px;font-weight:750;justify-content:flex-start}.grouphead em{font-style:normal;background:#244435;color:#c6ef9f;border-radius:5px;font-size:10px;padding:5px}.grouphead span{margin-left:auto;font-size:11px;color:#69766b}.row{padding:0 13px;border-top:1px solid #e7ebe5}.match{display:flex;align-items:center;gap:16px;width:100%;padding:15px 0;text-align:left;border:0;background:none;color:inherit}.row:hover{background:#f7fbf4}.hour{font:600 13px monospace;color:#526459;padding-right:13px;border-right:1px solid #dbe2d9}.teams{display:grid;gap:6px;font-weight:650;font-size:14px}.team{display:flex;gap:8px;align-items:center}.flag{font-family:"Apple Color Emoji","Segoe UI Emoji",sans-serif;font-size:17px}.score{margin-left:auto;white-space:nowrap;text-align:center;color:#264622;background:#edf5e6;border-radius:7px;padding:6px 10px;font-size:16px;font-weight:800}.score small{display:block;background:none;padding:0;font-size:9px;letter-spacing:.4px;color:#5e7657;font-weight:600}.save{background:none;border:0;color:#758478;font-size:21px;padding:7px}.save.on{color:#377a30}.card{margin-bottom:18px;padding:20px}.kicker{color:#49723a}.card h3{font-size:21px;letter-spacing:-.7px;margin:9px 0 17px}.featured{border-top:4px solid #93bc58}.duel{display:flex;align-items:center;justify-content:space-around;text-align:center;margin:20px 0}.duel b{display:block;font-size:33px}.duel label{font-size:12px;font-weight:650}.duel strong{font:750 30px monospace;letter-spacing:-2px}.action{width:100%;background:#233e2e;color:white;border:0;padding:12px;border-radius:7px;font-weight:650}.railHead{font-weight:750}.factor{border-top:1px solid #e4e9e2;padding:12px 0;font-size:13px;display:flex;align-items:center;gap:10px}.factor i{background:#edf3e8;border-radius:6px;width:27px;text-align:center;padding:5px;font-style:normal;color:#49723a}.card a,dialog a{color:#3b6a41}.footnote{line-height:1.5}footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #dce3d9;padding-top:20px;padding-bottom:24px;color:#718074;font-size:12px}footer strong{font-size:20px;letter-spacing:-1px}.empty{padding:26px;background:white;border-radius:12px;color:#647468}dialog{position:fixed;width:min(590px,94vw);max-height:88vh;overflow:auto;color:inherit;padding:28px}dialog::backdrop{background:#0d1915aa}#close{position:absolute;right:12px;top:9px;font-size:26px;color:#657268;background:none;border:0}dialog h2{margin:18px 0 8px}dialog p{font-size:14px;line-height:1.55}dialog .results{display:flex;gap:8px}.results div{flex:1;background:#eef4eb;padding:10px;border-radius:7px;font-size:12px}.results b{display:block;font-size:20px}details{padding:12px 0;border-top:1px solid #e0e7df}summary{cursor:pointer;font-weight:650;font-size:14px}.history{line-height:1.8;font-size:13px}.footnote a{color:inherit}@media(max-width:800px){.pitch{right:-110px;opacity:.5}.heroCopy{background:linear-gradient(90deg,#182e21 20%,transparent);height:100%}.layout{grid-template-columns:1fr}.bar{gap:25px}.layout aside{display:grid;grid-template-columns:1fr 1fr;gap:14px}}@media(max-width:560px){.bar,main,footer{padding-left:16px;padding-right:16px}.bar{height:64px;gap:18px}.brand{font-size:26px}nav{gap:12px}nav button{font-size:12px}.bar time{display:none}.hero{height:190px}.heroCopy{padding:30px 20px}.hero p{max-width:230px;font-size:13px}.pitch{right:-230px}.layout{margin-top:24px}.layout aside{display:block}.filters{flex-wrap:wrap}select{font-size:12px;max-width:100%}.hour{padding-right:8px}.match{gap:9px}.row{padding:0 8px}.teams{font-size:13px}.heading{align-items:baseline}.muted{font-size:11px}}
[hidden]{display:none!important}dialog{width:min(710px,94vw)}.analysis{margin-top:22px}.chartControls{display:flex;gap:5px;flex-wrap:wrap;margin:10px 0}.chartControls button{border:1px solid #d6e1d4;border-radius:7px;padding:7px 12px;background:#fff;color:#34533b}.chartControls button[aria-pressed=true]{background:#294b36;color:white}.chartControls.minor button{font-size:12px;padding:5px 11px}.legend,.counts{display:flex;gap:15px;flex-wrap:wrap;font-size:12px}.legend{margin:18px 0 6px}.legend span:first-child{color:#27633c}.legend span:last-child{color:#93612b}.barplot{display:flex;width:100%;gap:3px;padding-top:8px;background:repeating-linear-gradient(to top,transparent 0 25px,#e8eee7 26px 27px);border-bottom:1px solid #dce3db}.barplot button{min-width:0;flex:1;background:transparent;border:0;border-radius:5px;padding:0 2px 3px;display:grid;justify-items:center}.barplot button[aria-pressed=true]{background:#d9e9d8aa}.bars{display:flex;height:82px;align-items:end;gap:2px;width:75%;justify-content:center}.bars i{width:38%;max-width:16px;background:#418458;border-radius:3px 3px 0 0}.bars i+i{background:#c19465}.mark{display:inline-block;font-size:11px;border-radius:4px;padding:2px 5px;margin:5px 0 3px}.r0{background:#d3ebcf;color:#244a28}.r1{background:#e7e8df;color:#4e5448}.r2{background:#f4d1c6;color:#743523}.wdl{display:flex;height:9px;overflow:hidden;border-radius:9px;margin-top:14px}.counts{margin:8px 0 15px}.chartTip{background:#f3f6f0;border-radius:6px;padding:8px 12px;margin:7px 0}.scrollTable{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px;margin:10px 0}td,th{text-align:left;padding:7px 5px;border-bottom:1px solid #e4ebe2}th{font-size:11px;color:#54675b}td:first-child{white-space:nowrap}.analysis h3{margin:24px 0 10px}
#archive{margin-top:22px}.winsGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.winCard{background:white;border:1px solid #dae3d7;border-radius:13px;padding:17px 20px}.winHead{display:flex;align-items:center;gap:9px}.winHead h2{font-size:18px;letter-spacing:-.5px}.winHead b{font-size:16px;margin-left:auto}.winIcon{display:grid;place-items:center;width:31px;height:31px;border-radius:8px;background:#e6f4d9;color:#345a2c;font-size:21px}.noWins{border-top:1px solid #e8ece6;padding-top:10px;color:#68776c;font-size:12px}.winRow{display:grid;gap:4px;padding:9px 0;border-top:1px solid #e5ebe3}.winRow span,.winRow small{font-size:12px;color:#526755;background:none;padding:0}.paging{display:flex;gap:7px}.paging button{border:1px solid #dbdfd7;border-radius:5px;background:#f3f7f0;padding:5px 8px}.winHead b{color:#34583b} @media(max-width:680px){.winsGrid{grid-template-columns:1fr;gap:8px}.winCard{padding:14px}}
:root{--lime:#c8fa48;--ink:#151b17}html{scroll-behavior:smooth}body{background:#f5f6f1;color:var(--ink)}main{padding-top:20px}.hero{height:clamp(365px,34vw,475px);background:#152320 url('assets/stadium.webp') center 40%/cover no-repeat;border-radius:24px;isolation:isolate;display:flex;flex-direction:column}.hero:before{z-index:-1;background:linear-gradient(90deg,#0b1414dd 0%,#10191891 36%,transparent 75%),linear-gradient(180deg,#090f1199 0%,transparent 30%)}header,.heroCopy{background:transparent}.hero header{position:relative}.bar{padding:0 clamp(20px,4vw,52px);height:73px;gap:42px}.bar time{color:white}.brand span,h1 span{color:var(--lime)}.brand b{background:var(--lime)}.heroCopy{padding:12px clamp(20px,4vw,52px) 30px;margin:auto 0;height:auto;max-width:55%}.hero h1{font-size:clamp(50px,5.8vw,83px);letter-spacing:-.067em;line-height:.97;margin:17px 0}.heroCopy p{font-size:clamp(14px,1.3vw,18px);line-height:1.45;color:#f2f5ec;max-width:390px}.eyebrow{color:#e3f0d7}.heroLink{display:inline-flex;align-items:center;gap:20px;text-decoration:none;border-radius:40px;font-weight:750;color:#16220b;background:var(--lime);padding:12px 18px;margin-top:21px;font-size:14px}.heroLink:hover{background:#dbff83}.heroLink span{font-size:20px}.winHead .winIcon,.kicker{color:#3b5718}.winHead .winIcon{background:#eaf6d2}.winCard,.card,.group{border-radius:16px}#spotlight{margin-top:32px}.pictureGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:15px 0 28px}.pictureCard{position:relative;isolation:isolate;text-align:left;color:white;border:0;padding:16px;min-height:180px;overflow:hidden;border-radius:15px;background:#23302a;display:flex;align-items:end}.pictureCard:before,.pictureCard:after{content:'';position:absolute;inset:0;z-index:-1}.pictureCard:before{background:var(--picture) center/cover no-repeat;transition:transform .3s}.pictureCard:after{background:linear-gradient(0deg,#081013e8 0%,#10181560 45%,transparent 75%)}.pictureCard:hover:before{transform:scale(1.045)}.pictureText small{background:none;padding:0;color:#e1edd9;font-size:12px}.pictureText strong{display:block;margin-top:5px;font-size:clamp(16px,1.7vw,23px);line-height:1.08;letter-spacing:-.7px}.pictureArrow{position:absolute;right:12px;top:12px;border-radius:50%;background:#f4f6e9;color:#131c16;width:31px;height:31px;display:grid;place-items:center;font-size:19px}.pic0{--picture:url('assets/stands.webp')}.pic1{--picture:url('assets/strike.webp')}.pic2{--picture:url('assets/ball.webp')}.pic3{--picture:url('assets/squad.webp')}#calendar{scroll-margin-top:12px}.action{background:#24322a}.featured{border-top-color:#b2de45}@media(max-width:680px){main{padding-top:10px}.hero{height:383px;border-radius:17px;background-position:68% center}.bar{padding:0 15px;gap:22px;height:57px}.heroCopy{max-width:75%;margin:auto 0 0;padding:15px 17px 24px}.hero:before{background:linear-gradient(90deg,#08120fc2,transparent 88%),linear-gradient(0deg,#08120fe8,transparent 70%)}.hero h1{font-size:49px}.heroCopy p{max-width:235px}.pictureGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pictureCard{min-height:150px;padding:12px}.pictureText strong{font-size:18px}#spotlight{margin-top:24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pictureCard:before{transition:none}}
dialog{width:min(900px,95vw)}.reportBlock{margin:18px 0;padding:16px;border:1px solid #dfe6dc;border-radius:12px;background:#fbfcf9}.reportBlock h3{margin:0 0 12px;font-size:18px}.reportBlock h4{margin:12px 0 5px;font-size:15px}.reportBlock p{margin:9px 0}.teamReportGrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.teamReport{min-width:0;background:white;border-radius:8px;padding:12px}.sampleCount{color:#49643c;font-size:12px!important}.reportBlock table{font-size:12px}.reportBlock td{vertical-align:top;white-space:normal}.reportBlock th{min-width:90px}.personnelReport{margin-top:10px}.personnelReport details{padding:8px 0}.reportBlock .sub{font-size:12px!important;line-height:1.5}@media(max-width:600px){.teamReportGrid{grid-template-columns:1fr}.reportBlock{padding:12px}dialog{padding:20px 14px}.reportBlock th{min-width:70px}}

.pendingForecast{font-size:11px;font-weight:600;color:#60735b;white-space:nowrap}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.layout>*{min-width:0}main,header,footer,#list,.group,.filters{min-width:0;max-width:100%}
.match{min-width:0}.teams{min-width:0}.team{overflow-wrap:anywhere}.flag{flex-shrink:0}
#league{min-width:0;width:100%;text-overflow:ellipsis}
#analysisTotal{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#eaf1e1;border:1px solid #dce5d3;border-radius:14px;padding:16px 20px;margin-top:20px}
#analysisTotal>div{display:flex;align-items:center;gap:16px}.counterLabel{font-size:14px;font-weight:650}#analysisTotal strong{font-size:31px;line-height:1;font-variant-numeric:tabular-nums}#analysisTotal p{font-size:12px;color:#596c51;margin:0}
@media(max-width:680px){
 .layout{grid-template-columns:minmax(0,1fr)}
 .layout aside{display:block}
 .bar{gap:12px;justify-content:space-between}.brand{flex-shrink:0}
 nav{gap:10px;min-width:0}nav button{white-space:nowrap;font-size:11px}.bar time{display:none}
 .heroCopy{max-width:90%}.hero h1{font-size:clamp(36px,10.2vw,46px)}
 .heroCopy p{font-size:14px;max-width:245px}
 #league{font-size:16px;max-width:100%}.filters{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
 #tabs{width:max-content;max-width:100%}.heading{flex-wrap:wrap}
 .match{gap:8px}.score{flex-shrink:0;font-size:15px;padding:6px 7px}
 .teams{flex:1;font-size:12px}.team{gap:5px}.save{padding:5px}
 #analysisTotal{align-items:flex-start;flex-direction:column;gap:8px;padding:14px}
 #analysisTotal>div{width:100%;justify-content:space-between}
 dialog{width:calc(100% - 20px);max-width:calc(100% - 20px);max-height:90dvh}
 #body{min-width:0}.reportBlock,.scrollTable,.analysis{min-width:0;max-width:100%}
 .chartControls{min-width:0}.reportBlock h3{overflow-wrap:anywhere}
 footer{gap:10px;flex-wrap:wrap}
}
@media(max-width:360px){.bar{padding:0 10px;gap:8px}.brand{font-size:23px}.brand i{margin-right:7px}nav{gap:7px}nav button{font-size:10px}.teams{font-size:11px}.hour{font-size:12px}}

.loadMore{display:block;width:100%;border:1px solid #d7e1d0;border-radius:9px;padding:12px;background:#edf4e5;color:#294b2c;font-weight:650;margin-top:14px}

/* Matchday */
:root{--lime:#c6ff05;--ink:#f4f5ed;--panel:#20221d;--edge:#383c31;--soft:#b6bcaa}
body{background:radial-gradient(ellipse at 12% 0,#2b321b,transparent 640px),#11130f;color:var(--ink)}
.hero{background-image:url(matchday.webp);background-position:center 55%}
.heroCopy h1{font-style:italic}
#spotlight{margin:25px 0}.pictureGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.fixtureTile{background:linear-gradient(145deg,#34392b,#20221c 66%);border:1px solid var(--edge);border-radius:21px;color:var(--ink);display:flex;flex-direction:column;justify-content:space-between;gap:22px;padding:16px;min-width:0;text-align:left}
.tile0{background:linear-gradient(135deg,#d8ff58,#bcf400 75%);color:#162000;border-color:transparent}
.tileHead{display:flex;align-items:center;justify-content:space-between;gap:8px;font-weight:700;font-size:12px}.tileHead i{font-style:normal;border:1px solid currentColor;border-radius:50%;padding:3px 6px}
.tileDuel{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:5px;width:100%}
.tileDuel .team{display:grid;justify-items:center;text-align:center;gap:8px;line-height:1.2;font-size:13px;overflow-wrap:anywhere}
.crest{position:relative;display:inline-grid;place-items:center;width:32px;height:32px;flex:0 0 auto;border-radius:50%;overflow:hidden;background:#e2e6d6;color:#334026;font-size:11px;font-weight:850}
.crest img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#e2e6d6;padding:2px}.nation img{padding:0;object-fit:cover}
.tileDuel .crest,.detailMarks .crest,.duel .crest{width:48px;height:48px;box-shadow:0 0 0 2px #ffffff32}
.tileScore{text-align:center}.tileScore small{background:none;color:inherit}.tileScore b{display:block;font-size:24px;white-space:nowrap;font-variant-numeric:tabular-nums}
.tileTime{border-top:1px solid #ffffff25;padding-top:10px;font-size:12px}.tile0 .tileTime{border-color:#242a1833}
.detailMarks{display:flex;gap:10px;margin:14px 0}
.winCard,.card,.group,.empty,#analysisTotal,.loadMore,select,#tabs{background:var(--panel);border-color:var(--edge);color:var(--ink)}
#analysisTotal strong,.winHead b,.kicker,.save.on,.score,.featured .kicker{color:var(--lime)}
#analysisTotal p,.counterLabel,.noWins,.sub,.footnote,.muted,.winRow span,.winRow small,.hour,.grouphead span,#tabs button,.pendingForecast{color:var(--soft)}
.row,.winRow,.noWins,.factor,.hour{border-color:var(--edge)}
.grouphead,#tabs,.score,.factor i,.winHead .winIcon{background:#323729}.score small,.factor i{color:#d0d9bb}
.row:hover{background:#2a2f23}.action,#tabs .chosen,.winHead .winIcon{background:var(--lime);color:#192100}
.paging button{background:#30352a;color:var(--ink);border-color:var(--edge)}
dialog{color:#19251f}.duel label b{display:grid;place-items:center}
@media(max-width:950px){.pictureGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.hero{height:300px;background-position:65% center}.pictureGrid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 0 8px;scrollbar-width:thin}.fixtureTile{flex:0 0 86%;min-height:175px;scroll-snap-align:start}.crest{width:29px;height:29px}.tileScore b{font-size:29px}.tileDuel .crest{width:50px;height:50px}.team{min-width:0}.sectionhead h2{font-size:21px}}

.homeShell{max-width:1230px;margin:auto;padding:0 clamp(16px,4vw,54px) 32px}
body:has(.homeShell){background:radial-gradient(ellipse 75% 540px at 8% 0%,#30391b 0%,#181d12 42%,#10120f 90%)}
.appHead{display:flex;align-items:center;gap:20px;padding:20px 0;border-bottom:1px solid #ffffff12;background:none}
.appHead .brand{font-size:25px;letter-spacing:-1.4px}.brand img{width:40px;height:40px;border-radius:50%;margin-right:9px}
.appHead nav{margin-left:auto;align-self:center;gap:8px}.appHead button{background:#252922;border:1px solid #424739;color:white;padding:8px 14px;border-radius:30px;font-size:13px}.appHead button.active{border-color:#9ba975}.appHead time{color:#bbc0ad;font-size:12px}
.homeColumns{display:grid;grid-template-columns:minmax(280px,.92fr) minmax(0,1.35fr);gap:clamp(25px,4vw,55px)}
.homeTitle{font-style:italic;font-size:clamp(42px,5vw,66px);font-weight:360;letter-spacing:-.055em;line-height:1.02;margin:25px 0 18px}.homeTitle em{font-weight:720}
.homeEvents #tabs{background:transparent;padding:0;gap:6px;flex-wrap:wrap}.homeEvents #tabs button{border:1px solid #373c30;background:#23271f;color:#e2e4dc;border-radius:30px;padding:9px 13px}.homeEvents #tabs .chosen{background:#273018;border-color:#bded21;color:#e3ff93}
.homeEvents #spotlight{margin:23px 0}.sectionhead a{font-size:12px;color:#bdc3b4;text-decoration:none}.sectionhead h2{font-size:21px}
.homeEvents .pictureGrid{display:grid;grid-template-columns:1fr;gap:10px;overflow:visible;margin:10px 0;padding:0}
.fixtureTile{position:relative;min-height:148px;padding:18px 22px;border-radius:21px;gap:12px;background:#22241e}.fixtureTile.tile0{background:#c1fa07;color:#152000;z-index:1}.tile0:after{content:'';position:absolute;left:39%;bottom:-7px;width:22%;height:17px;background:#c1fa07;clip-path:ellipse(50% 85% at 50% 0)}
.tileHead{font-size:15px}.tileHead i{background:#0e100fde;color:white;padding:5px 10px;border:none;font:600 11px monospace}.tileDuel{align-items:center}.tileScore b{font-size:32px;letter-spacing:-1px}.tileDuel .team{font-size:14px}.tileDuel .crest{width:54px;height:54px}
.homeColumns #calendar{display:block;margin:25px 0}.homeColumns #side{display:none}.homeColumns .winsGrid{grid-template-columns:1fr}
@media(max-width:750px){.homeColumns{display:block}.appHead{padding:13px 0;border:0;gap:8px}.appHead .brand{font-size:22px}.appHead .brand img{width:32px;height:32px}.appHead nav button{font-size:11px;padding:7px 10px}.appHead time{font-size:10px}.homeTitle{margin:12px 0 14px;font-size:42px}.homeEvents #spotlight{margin:18px 0}.fixtureTile{min-height:145px}.homeColumns .layout{scroll-margin-top:10px}}
@media(max-width:380px){.appHead time{display:none}}
.calendarGroup{display:grid;gap:10px;margin:18px 0 26px}
.calendarGroup h3{margin:0 0 2px;font-size:14px;font-weight:650;color:#ccd1c0}
.calendarCard{position:relative;min-width:0}
.calendarCard .fixtureTile{width:100%;min-height:134px;gap:10px}
.calendarCard .tileHead{padding-right:42px}
.calendarCard .save{position:absolute;z-index:2;top:10px;right:10px;width:44px;height:44px;padding:0;color:#cbd2bb;background:none;border:0}
.calendarCard:has(.tile0) .save{color:#26320d}
.calendarCard .save[aria-pressed=true]{color:#c1fa07}
.calendarCard:has(.tile0) .save[aria-pressed=true]{color:#26320d}
.noScore{display:block;max-width:80px;font-size:12px;font-weight:650}

#detail{padding:0;background:#101518;color:#edf3f5;border:1px solid #344247;border-radius:20px;overscroll-behavior:contain;color-scheme:dark}
#detail::backdrop{background:#050a10cb;backdrop-filter:blur(6px)}
#detail #close{z-index:3;position:sticky;float:right;top:9px;margin:9px 10px -50px 0;width:40px;height:40px;border-radius:50%;background:#111a20dc;color:white}
.pitchPreview{position:relative;isolation:isolate;display:grid;justify-items:center;align-content:start;text-align:center;aspect-ratio:1.9;min-height:270px;background:#101f29 url(assets/prediction-pitch.webp) center 62%/cover;color:white;padding:23px 12px;text-shadow:0 2px 10px #000}
.pitchPreview small{letter-spacing:.09em;font-weight:700;max-width:75%}
#detail .pitchPreview h2{margin:10px 0 0;font-size:13px;color:#dee6e9}
.pitchScore{font:750 clamp(40px,7vw,72px)/1.05 system-ui;font-variant-numeric:tabular-nums;letter-spacing:-.055em}
.pitchSides{position:absolute;inset:46% 8% auto;display:flex;justify-content:space-between}
.pitchSide{width:34%;display:grid;justify-items:center;gap:5px;line-height:1.1}
.pitchSide .crest{width:clamp(48px,8vw,80px);height:clamp(48px,8vw,80px);border-radius:10px;background:#17252d;box-shadow:0 8px 20px #0006}
.pitchSide .crest img{background:#17252d;object-fit:contain}
.pitchSide strong,.pitchPreview time{background:#081519d9;padding:4px 8px;border-radius:6px}
.pitchPreview time{position:absolute;bottom:8px;font-size:11px}
.matchReadout{padding:clamp(12px,3vw,28px)}
.chanceTiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.chanceTiles article,#detail :is(#chart,#meetingChart),#detail .reportBlock{background:#090d10;border:1px solid #303940;border-radius:16px;padding:clamp(10px,2vw,20px)}
.chanceTiles article{--accent:#4dd8ff}.chanceTiles article:nth-child(2){--accent:#ffbc58}.chanceTiles article:nth-child(3){--accent:#96ec77}
.chanceTiles strong{display:block;color:var(--accent);font-size:clamp(25px,4vw,40px);font-variant-numeric:tabular-nums}
.ticks{height:12px;margin-top:10px;background:#31393d;mask:repeating-linear-gradient(90deg,#000 0 4px,transparent 4px 7px)}
.ticks i{display:block;height:100%;background:var(--accent);transform-origin:left}
#detail .teamReport,#detail .chartTip,#detail .chartControls button{color:#edf6fa;background:#20292e;border-color:#37454d}
#detail .chartControls button[aria-pressed=true]{background:#b1f280;color:#142315}
#detail .barplot{background:repeating-linear-gradient(to top,transparent 0 24px,#27343c 25px 26px)}
#detail .barplot button[aria-pressed=true]{background:#253338}
#detail .bars i{background:#59d4ff;transform-origin:bottom;border-radius:8px}#detail .bars i+i{background:#ffa651}
#detail .legend span:first-child{color:#59d4ff}#detail .legend span:last-child{color:#ffa651}
#detail td,#detail th,#detail details{border-color:#354148}#detail th,#detail .sub,#detail .footnote{color:#b9cbd0}#detail a{color:#89dff7}
@media(prefers-reduced-motion:no-preference){#detail[open]{animation:matchEnter .38s ease-out}.pitchScore,.pitchSide{animation:matchEnter .65s both}.pitchSide:last-child{animation-delay:.08s}.ticks i{animation:meterIn .7s ease-out both}#detail .bars i{animation:barsIn .45s ease-out both}}
@keyframes matchEnter{from{opacity:0;transform:translateY(14px)}}
@keyframes meterIn{from{transform:scaleX(0)}}@keyframes barsIn{from{transform:scaleY(0)}}
.formStrip{display:flex;gap:4px;flex-wrap:wrap;margin:10px 0 15px}.formStrip span{display:grid;place-items:center;width:21px;height:21px;border-radius:5px;background:#445057;color:white;font:700 10px system-ui}.formStrip [data-result=Q]{background:#266543}.formStrip [data-result=M]{background:#793647}
#detail .sampleCount{color:#a9c0c9}

#detail :is(#chart,#meetingChart){background:#08090b;padding:clamp(12px,2vw,22px);border-radius:22px}
:is(#chart,#meetingChart) .chartControls{display:flex;width:fit-content;max-width:100%;padding:3px;background:#202226;border-radius:18px;gap:2px;margin:0 0 10px}
#detail :is(#chart,#meetingChart) .chartControls button{border:none;background:transparent;color:#bdc0c7;border-radius:16px}
#detail :is(#chart,#meetingChart) .chartControls button[aria-pressed=true]{color:#fff;background:#44484d}
:is(#chart,#meetingChart) .formStats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
:is(#chart,#meetingChart) .tone0{--tone:#98ed5c}:is(#chart,#meetingChart) .tone1{--tone:#ffbd60}:is(#chart,#meetingChart) .tone2{--tone:#ff72b6}
.formStat{min-width:0;padding:12px 9px;border-radius:14px;background:linear-gradient(150deg,color-mix(in srgb,var(--tone) 16%,#111316),#131518 78%)}
.formStat>span{font-size:clamp(10px,2.7vw,13px);color:#e4e5e6}
.formStat>b{display:block;color:var(--tone);font:600 clamp(28px,5vw,42px)/1.25 system-ui;font-variant-numeric:tabular-nums}
.pixels{display:flex;gap:2px;margin-top:7px}.pixels i{width:8%;aspect-ratio:1;border-radius:2px;background:#38393f}.pixels .lit{background:var(--tone)}
.formPlot{border-radius:16px;background:#16181b;padding:12px;margin:9px 0}
:is(#chart,#meetingChart) .formPlot .legend{margin:0 0 7px}
#detail :is(#chart,#meetingChart) .barplot{border:0;gap:2px}
#detail :is(#chart,#meetingChart) .barplot button[aria-pressed=true]{box-shadow:inset 0 -2px #e2f3fd;background:#353b43}
#detail :is(#chart,#meetingChart) .bars i{border-radius:6px 6px 2px 2px;min-height:0}
:is(#chart,#meetingChart) .formFixture{background:linear-gradient(115deg,#212428,#131517);padding:12px 14px;border-radius:15px;margin-bottom:10px}
.fixtureMeta,.formScore{display:flex;align-items:center;justify-content:space-between;gap:8px}.fixtureMeta{color:#bdc0c5;font-size:12px}.fixtureMeta b{color:var(--tone)}
.formScore{margin:9px 0 2px}.formScore span{flex:1;overflow-wrap:anywhere}.formScore span:last-child{text-align:right}.formScore strong{font:650 clamp(24px,4vw,36px)/1.1 system-ui;white-space:nowrap}
@media(prefers-reduced-motion:no-preference){.pixels .lit,.formScore strong{animation:matchEnter .32s ease-out both}}

.goalPanel{--up:#64e4ff;--down:#ff84bc;margin:12px 0;background:#08090c;border:1px solid #2c3038;border-radius:22px;padding:16px 12px 11px}
.goalKey{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:14px;font-size:12px;font-weight:650;color:#e1e5eb}
.goalKey span:before{content:'';display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%;background:var(--up)}.goalKey span+span:before{background:var(--down)}
.goalDots{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:1px}
.goalDots button{appearance:none;min-width:0;padding:8px 0 4px;background:transparent;border:1px solid transparent;border-radius:12px;color:#9ca5b4;cursor:pointer}
.goalDots button[aria-pressed=true]{background:#1f252d;border-color:#546371;color:white}.goalDots button:focus-visible{outline:2px solid white;outline-offset:1px}
.dotLane{display:flex;align-items:center;gap:3px}.dotLane.scored{flex-direction:column-reverse}.dotLane.conceded{flex-direction:column}
.dotLane i{width:8px;height:8px;border-radius:50%;background:#22272f}.scored i.on{background:var(--up)}.conceded i.on{background:var(--down)}
.dotAxis{display:block;height:1px;background:#505761;margin:4px 0}.goalDots small{display:block;margin-top:6px;font-size:10px}.dotUnit{font-size:10px;color:#acb3bf;margin-top:8px}
@media(prefers-reduced-motion:no-preference){.dotLane .on{animation:dotLight .22s ease-out}@keyframes dotLight{from{opacity:.4;transform:scale(.65)}}}

.matchBrief{padding:14px 16px;margin:16px 0;border-radius:14px;background:#161e22;border-left:3px solid #98df77}.matchBrief h4{font-size:13px;color:#c9ebbd;margin:12px 0 4px}.matchBrief h4:first-child{margin-top:0}.matchBrief ul{list-style:none;padding:0;margin:0}.matchBrief li,.matchBrief p{font-size:14px;line-height:1.5;margin:4px 0}.matchBrief a{font-size:12px}.matchBrief details{padding:5px 0}
.introPitch{position:relative;isolation:isolate;overflow:hidden;background:#121c17 url(assets/stadium.webp) center/cover;border-radius:22px;padding:clamp(18px,3vw,34px);margin:18px 0;color:#f7f9ef}
.introPitch:before{content:'';position:absolute;inset:0;background:linear-gradient(115deg,#09120ff5,#111b18c9);z-index:-1}
.introPitch .homeTitle{margin:0 0 12px}.introPitch em{color:#ceff60}.introPitch p{max-width:40ch;line-height:1.45;margin:0}.introPitch small{display:block;font-size:12px;line-height:1.5;color:#d1d9d1;max-width:60ch}
.introFactors{display:flex;gap:6px;flex-wrap:wrap;margin:16px 0}.introFactors span{font-size:12px;border:1px solid #7d966077;padding:5px 9px;border-radius:16px;background:#172218;color:#e6f9be}
#savedPanel{position:fixed;inset:0 0 0 auto;margin:0;width:min(430px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:18px 0 0 18px;background:#141a17;color:#edf4ec;padding:20px;box-sizing:border-box}
#savedPanel::backdrop{background:#061009ab}#savedPanel header{display:flex;align-items:center;justify-content:space-between}#savedPanel h2{margin:0}#savedPanel button{border:0;border-radius:9px;background:#2b3829;color:#ceef9b;padding:8px 11px}#savedPanel #dismissSaved{font-size:22px}
#savedRows article{position:relative;padding:17px 40px 17px 0;border-bottom:1px solid #394139}#savedRows small{color:#bcd4b3}#savedRows h3{margin:6px 0 10px}#savedRows .removeSaved{position:absolute;right:0;top:15px}
@media(prefers-reduced-motion:no-preference){#savedPanel[open]{animation:drawerIn .26s ease-out}.introFactors span{animation:matchEnter .7s backwards}.introFactors span:nth-child(2){animation-delay:.18s}.introFactors span:nth-child(3){animation-delay:.36s}}@keyframes drawerIn{from{transform:translateX(100%)}}

.outcomePanel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0;color:#f8f8fa}
.outcomeTile{--accent:#9aee64;padding:clamp(9px,2vw,17px);border:1px solid #383a38;border-radius:18px;background:linear-gradient(145deg,#202120,#101110 76%);min-width:0}
.outcomeTile.kind1{--accent:#ffd27a}.outcomeTile.kind2{--accent:#ff777f}
.outcomeHead,.outcomeCount,.outcomeFoot{display:flex;align-items:center;gap:7px}
.outcomeHead{font-size:clamp(11px,1.8vw,14px);font-weight:650}.outcomeHead svg{width:25px;height:27px;flex:none;filter:drop-shadow(0 0 5px color-mix(in srgb,var(--accent) 28%,transparent))}.kind0 .outcomeHead svg{filter:drop-shadow(0 0 6px #ff521975)}
.outcomeCount{align-items:baseline;margin:8px 0}.outcomeCount strong{font:650 31px/1.1 system-ui}.outcomeCount small,.outcomeFoot b{color:#bcbdba;font:500 11px/1.2 system-ui}
.outcomeDots{display:flex;gap:3px;border-top:1px solid #343633;padding-top:10px}.outcomeDots i{flex:1;max-width:16px;aspect-ratio:1;border-radius:50%;background:#333533}.outcomeDots .hit{background:var(--accent);box-shadow:inset 0 1px 2px #ffffff85,0 0 4px color-mix(in srgb,var(--accent) 35%,transparent)}
.outcomeFoot{margin-top:10px}.outcomeFoot span{flex:1;height:4px;border-radius:10px;background:#30332e}.outcomeFoot i{display:block;height:100%;background:var(--accent);border-radius:inherit;transform-origin:left;box-shadow:0 0 7px color-mix(in srgb,var(--accent) 40%,transparent)}
@media(prefers-reduced-motion:no-preference){.outcomeFoot i{animation:outcomeFill .35s ease-out}@keyframes outcomeFill{from{transform:scaleX(0)}}}
@media(max-width:600px){.outcomePanel{grid-template-columns:1fr}.outcomeTile{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:14px;padding:12px 16px}.outcomeCount{margin:0}.outcomeCount strong{font-size:23px}.outcomeHead{font-size:14px}.outcomeDots{border:0}.outcomeFoot{min-width:72px}}

.chancePanel .kind2{--accent:#8ecbff}
.chancePanel .outcomeHead svg{filter:drop-shadow(0 0 5px color-mix(in srgb,var(--accent) 30%,transparent))}
.chancePanel .outcomeFoot{border-top:1px solid #343633;padding-top:10px}
@media(max-width:600px){.chancePanel .outcomeFoot{grid-column:1/-1}}

#detail .matchReadout{font-family:system-ui,sans-serif;font-variant-numeric:tabular-nums}
#detail .matchReadout :is(h3,h4){text-wrap:balance;line-height:1.24}
#detail .matchReadout h3{font-size:clamp(19px,2.6vw,24px);letter-spacing:-.025em;font-weight:700;color:#f5f8f4}
#detail .forecastNote,#detail .matchBrief{padding:clamp(15px,2.4vw,23px);border:1px solid #33433e;border-radius:18px;background:linear-gradient(130deg,#19251f,#11191b 75%);margin:16px 0}
#detail .forecastNote h3{margin:0 0 9px}
#detail .matchReadout :is(.forecastNote,.reportBlock,.matchBrief) p,#detail .matchBrief li{font-size:15px;line-height:1.65;color:#d4dede;max-width:76ch;overflow-wrap:break-word}
#detail .forecastNote p{margin:0 0 16px}#detail .forecastNote p strong{color:#bcf39c}
.forecastColumns{display:grid;grid-template-columns:1fr 1fr;gap:18px;border-top:1px solid #34433d;padding-top:14px}
#detail .forecastColumns h4{font-size:14px;color:#d1e1d5;margin:0 0 8px}
.forecastColumns dl,.forecastColumns ol{margin:0;padding:0;list-style:none}
.forecastColumns dl div{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:3px 0}
.forecastColumns dd{margin:0;color:#b6eb98;font-weight:700}
.forecastColumns ol{display:flex;flex-wrap:wrap;gap:6px}.forecastColumns li{display:grid;gap:2px;padding:6px 10px;background:#25312d;border-radius:9px}.forecastColumns li strong{font-size:17px}.forecastColumns li span{font-size:13px;color:#c3d4cc}
#detail .matchBrief h4{font-size:17px;color:#b6ed99;margin:18px 0 6px}
#detail .matchBrief h4:first-child{margin-top:0}
#detail .matchBrief li+li{border-top:1px solid #31403a;padding-top:8px;margin-top:8px}
#detail .matchBrief a{display:block;font-size:13px;text-underline-offset:3px}
#detail .reportBlock>h3{padding-bottom:10px;border-bottom:1px solid #31413c}
#detail .reportBlock table{font-size:14px;line-height:1.45}
#detail .reportBlock tbody tr:nth-child(even){background:#17201f}
#detail .reportBlock .sub{font-size:14px!important;color:#bdccca}
#detail .matchReadout summary{font-size:14px;font-weight:650;line-height:1.5}
#detail .matchReadout a:focus-visible,#detail .matchReadout summary:focus-visible{outline:2px solid #ace98d;outline-offset:3px}
@media(max-width:550px){.forecastColumns{grid-template-columns:1fr;gap:14px}}
@media(prefers-reduced-motion:no-preference){.forecastColumns li{animation:matchEnter .35s ease-out both}.forecastColumns li:nth-child(2){animation-delay:.06s}.forecastColumns li:nth-child(3){animation-delay:.12s}}

.pitchPreview::after{content:"";position:absolute;inset:auto 0 0;height:35%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 106%,rgba(155,255,176,.35),rgba(89,220,165,.13) 42%,transparent 72%)}

#detail .rankHeading{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.rankHeading span{color:#d3f6ad;background:#243222;border:1px solid #40513b;border-radius:16px;padding:4px 9px;font-size:13px}
.rankHeading small{color:#becbc4;font-size:12px;font-weight:500}

.matchIntro{position:relative;isolation:isolate;overflow:hidden;min-height:clamp(370px,39vw,480px);display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:28px;margin:16px 0 0;padding:clamp(26px,4vw,52px);border-radius:28px;color:#fff;background:#101816 url(matchday.webp) center 42%/cover no-repeat}
.matchIntro::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#07100feb,transparent 76%),linear-gradient(0deg,#09140de0,transparent 30%)}
.introCopy{max-width:54%}.matchIntro h1{font:750 clamp(47px,5.5vw,78px)/.99 system-ui,sans-serif;letter-spacing:-.068em;margin:0;text-wrap:balance}
.matchIntro .introCopy p{font:450 clamp(15px,1.4vw,18px)/1.52 system-ui,sans-serif;max-width:38ch;color:#e5ede6;margin:18px 0 20px}
.introAction{display:inline-flex;align-items:center;gap:22px;min-height:44px;padding:10px 20px;background:#cbfa4d;color:#132007;border-radius:30px;text-decoration:none;font-weight:730}.introAction span{font-size:21px;transition:transform .2s}.introAction:hover span{transform:translateX(3px)}
.matchIntro .introNotice{margin:0;max-width:74ch;font-size:12px;line-height:1.55;color:#e4eae2}
@media(max-width:650px){.matchIntro{padding:25px 20px 18px;min-height:430px;background-position:67% center;border-radius:20px}.matchIntro::before{background:linear-gradient(90deg,#07120fe6,#07120f63 72%,transparent),linear-gradient(0deg,#07120ff5,transparent 38%)}.introCopy{max-width:86%}.matchIntro h1{font-size:clamp(39px,9vw,55px)}.matchIntro .introCopy p{max-width:24ch}.matchIntro .introNotice{font-size:11px}.matchMethods{margin:15px 0}}

/* Compact match forecast explorer */
@font-face {
  font-family: "Qolmetr Playfair";
  src: url("playfair-italic.ttf") format("truetype");
  font-style: italic;
  font-display: swap;
}
.factorAtlas {
  --ink: #f1f5ee;
  --muted: #b4c4b9;
  --lime: #c8f56a;
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  grid-template-areas: "heading field" "controls field" "detail field" "fallback fallback";
  align-content: center;
  column-gap: clamp(16px, 4vw, 52px);
  margin: 14px 0 18px;
  padding: clamp(14px, 2.15vw, 26px);
  border: 1px solid #304039;
  border-radius: 20px;
  background: radial-gradient(ellipse at 75% 60%, #172923, transparent 55%), #0b1315;
  color: var(--ink);
  font-family: system-ui, sans-serif;
  scroll-margin-top: 10px;
}
.factorAtlas [hidden] {display: none}
.factorHeading {grid-area: heading}
.factorEyebrow {margin: 0 0 4px; color: #a8d6c6; font: italic 16px/1.2 "Qolmetr Playfair", Georgia, serif}
.factorAtlas h2 {margin: 0; font-size: clamp(23px, 2.5vw, 34px); font-weight: 660; letter-spacing: -.045em; line-height: 1.08; text-wrap: balance}
.factorIntro {margin: 5px 0 0; color: var(--muted); font-size: 13px; line-height: 1.4}
.factorControls {grid-area: controls; margin-top: 12px}
.factorGroups {display: flex; flex-wrap: wrap; gap: 4px}
.factorGroups button, .factorPicker select {border: 1px solid #3d5045; border-radius: 20px; color: #d0dbd3; background: #101d17; font-size: 12px; font-weight: 600}
.factorGroups button {padding: 6px 10px; line-height: 1.3}
.factorGroups button[aria-pressed=true] {background: var(--lime); border-color: var(--lime); color: #15200e}
.factorPicker {display: none}
.factorField {
  grid-area: field;
  align-self: center;
  position: relative;
  isolation: isolate;
  display: grid;
  place-items: center;
  min-height: 164px;
}
.factorField::before, .factorField::after {content: ""; position: absolute; z-index: -1; pointer-events: none; border-radius: 50%}
.factorField::before {inset: 7% 9%; border: 1px dashed #496551b3; transform: rotate(-6deg)}
.factorField::after {inset: 15% 18%; border: 1px solid #38544680; transform: rotate(7deg)}
.factorBall {grid-area: 1/1; display: grid; place-items: center; width: clamp(68px, 8vw, 104px); aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle at 43% 32%, #3e5d49, #1a3427 54%, #12221b 80%); box-shadow: 0 0 24px #7398551f}
.factorBall img {width: 53%; height: auto; border-radius: 50%; filter: drop-shadow(0 4px 5px #08120c)}
.factorNodes {
  grid-area: 1/1;
  align-self: stretch;
  width: 100%;
  display: grid;
  align-content: center;
  grid-template-columns: minmax(0,1fr) clamp(64px, 7vw, 96px) minmax(0,1fr);
  gap: 6px 0;
}
.factorNodes button {justify-self: center; max-width: 100%; min-height: 38px; padding: 4px 11px; border-radius: 30px; border: 1px solid #385944; background: #101e18; color: #e1eae3; line-height: 1.22; overflow-wrap: anywhere}
.factorNodes button:nth-child(odd) {grid-column: 1}
.factorNodes button:nth-child(even) {grid-column: 3}
.factorNodes strong, .factorNodes span {display: block}
.factorNodes strong {font-size: 14px; font-weight: 640}
.factorNodes span {margin-top: 2px; color: #afc4b6; font-size: 11px}
.factorNodes button[aria-pressed=true] {border-color: #b3ce82; background: #223521; color: #ecf7d4}
.factorAtlas :is(button,select,summary):focus-visible {outline: 2px solid var(--lime); outline-offset: 2px}
@media(hover:hover) {.factorNodes button:hover, .factorGroups button:hover {border-color: #aac57f}}
.factorDetail {grid-area: detail; align-self: start; margin: 12px 0 0; padding-left: 10px; border-left: 2px solid #90b57a; color: var(--muted); font-size: 13px; line-height: 1.45}
.factorDetail strong {color: var(--ink); margin-right: .4em}
.factorDetail p {display: inline; margin: 0}
.factorIndex {grid-area: fallback}
.factorIndex details {margin-top: 8px; color: var(--ink)}
.factorIndex summary {cursor: pointer}
.factorIndex dt {margin-top: 10px; font-weight: 650}
.factorIndex dd {margin: 3px 0; color: var(--muted)}
@keyframes factorAppear {from {opacity: .25; transform: translateY(3px)} to {opacity: 1; transform: none}}
@keyframes factorFloat {0%,100% {transform: translateY(1px) rotate(-2deg)} 50% {transform: translateY(-2px) rotate(2deg)}}
@media(prefers-reduced-motion:no-preference) {
  .factorNodes button {animation: factorAppear .24s ease-out backwards}
  .factorBall img {animation: factorFloat 3s ease-in-out 1}
}
@media(max-width:740px) {
  .factorAtlas {grid-template-columns: minmax(0,1fr); grid-template-areas: "heading" "controls" "field" "detail" "fallback"; padding: 12px 14px; border-radius: 16px}
  .factorAtlas h2 {font-size: clamp(20px, 5.5vw, 26px)}
  .factorEyebrow {margin-bottom: 3px; font-size: 15px}
  .factorIntro {font-size: 12px}
  .factorControls {margin-top: 7px}
  .factorGroups {display: none}
  .factorPicker {display: inline-flex; align-items: center; gap: 7px; color: var(--muted); font-size: 12px}
  .factorPicker select {max-width: 100%; min-height: 32px; padding: 4px 8px; color-scheme: dark}
  .factorField {min-height: 114px; width: min(100%, 480px); margin: 4px auto 0}
  .factorBall {width: 62px}
  .factorNodes {grid-template-columns: minmax(0,1fr) 52px minmax(0,1fr); row-gap: 4px}
  .factorNodes button {min-height: 32px; width: 100%; padding: 3px 5px}
  .factorNodes strong {font-size: 12.5px}
  .factorNodes span {display: none}
  .factorDetail {margin-top: 6px; font-size: 13px}
}

.appHead .brand .qolmetrLogo {display:block; width:clamp(120px, 25vw, 180px); height:auto; margin:0; border-radius:0}
.matchIntro .searchJump{display:inline-block;margin-left:12px;color:#e5f1d8;font-size:14px;text-underline-offset:4px}
.gameSearch{display:block;margin:16px 0;scroll-margin-top:14px}
.gameSearch label{display:block;font-weight:700;color:#d8e4cc;margin-bottom:6px}
.queryBox{display:flex;align-items:center;background:#17231d;border:1px solid #435644;border-radius:12px;padding:2px 10px}
.queryBox:focus-within{border-color:#bdde84}
.queryBox input{min-width:0;flex:1;width:100%;padding:10px 3px;background:transparent;border:0;color:#fff;font:inherit;outline:none}
.queryBox input::placeholder{color:#acbaae}
.queryBox input::-webkit-search-cancel-button{display:none}
.queryBox button{background:transparent;color:#dfedda;border:0;font-size:22px;padding:2px 8px}
#searchStatus:not(:empty){margin:10px 0;color:#bbcdbd;font-size:13px}
.queryMatch{display:grid;gap:4px;text-align:left;background:#17221c;color:#edf6e9;border:1px solid #354439;border-radius:10px;width:100%;margin:3px 0;padding:10px 12px}
.queryMatch span{font-size:12px;color:#bbcbbd}
.gameSearch.searching ~ :is(.filters,#list){display:none}
.filters .leaguePicker{position:relative;margin:0;padding:0;border:0;min-width:0;width:100%;color:#edf5e9}
.leaguePicker summary{cursor:pointer;padding:10px 14px;border:1px solid #435644;border-radius:10px;background:#17231d;font-size:14px;font-weight:650}
.leagueMenu{position:absolute;z-index:5;inset:calc(100% + 4px) 0 auto;padding:8px;background:#17231d;border:1px solid #435644;border-radius:12px;box-shadow:0 8px 20px #0006}
.leagueMenu input{width:100%;padding:9px 12px;border:1px solid #6d855f;border-radius:8px;background:#101913;color:white;font:inherit}
.leagueChoices{max-height:min(36vh,280px);overflow:auto;margin-top:5px;overscroll-behavior:contain}
.leagueChoices button{display:block;width:100%;padding:9px 10px;text-align:left;background:transparent;border:0;color:#ecf4e9;border-radius:6px;font:inherit}
.leagueChoices button[aria-pressed=true],.leagueChoices button:hover,.leagueChoices button:focus-visible{background:#334531;color:#d8f6a3}
.filters select[hidden]{display:none}

@media (pointer:coarse), (max-width:767px){
 .queryBox input,.leagueMenu input{font-size:max(16px,1em)}
}

@media (pointer:coarse), (max-width:767px){
 html,body{overflow-x:hidden;overflow-x:clip;overscroll-behavior-x:none}
 .homeEvents .pictureGrid,.calendarGroup,.homeColumns .winsGrid{grid-template-columns:minmax(0,1fr)}
 .tileHead>span,.calendarGroup h3{min-width:0;overflow-wrap:anywhere}
 .scrollTable{overscroll-behavior-x:contain}
}
