@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--paper:#f7f6ef;--ink:#193d31;--muted:#69746a;--line:#dcded2;--orange:#e97d4a;--green:#b9e8b0;--display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--body:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:15px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #dd5b28;outline-offset:5px}button:disabled{cursor:default}[hidden]{display:none!important}.site-header,main,footer{width:min(1200px,calc(100% - 96px));margin:auto}.site-header{height:100px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{font-size:20px;font-weight:800;letter-spacing:-.9px;display:flex;align-items:center;gap:6px;text-decoration:none}.brand-ball{font-size:30px;margin-right:5px}.brand-light{font-weight:400}.header-note{font-size:10px;font-weight:700;letter-spacing:1.6px;display:flex;align-items:center;gap:9px}.header-note i{height:7px;width:7px;background:#4b8254;border-radius:50%}.hero{display:grid;grid-template-columns:1fr 1fr;gap:55px;padding:65px 0 63px;align-items:center}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;display:flex;gap:9px;align-items:center;margin:0 0 18px}.eyebrow>span{display:inline-block;width:17px;height:2px;background:var(--orange)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);font-weight:700}h1{font-size:clamp(54px,5.6vw,78px);line-height:.99;letter-spacing:-1.2px;margin-bottom:23px}h1 em{font-style:normal;color:#63805b}.intro{color:var(--muted);font-size:14px;line-height:1.8;margin-bottom:24px}.text-link{font-size:12px;font-weight:700;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:7px;display:inline-flex;gap:38px}.text-link span{font-size:19px}.stadium{height:390px;position:relative;background:#173c32;overflow:hidden;border-radius:5px;color:#e7efcb;isolation:isolate}.stadium:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0,transparent 3px,#00000007 4px);pointer-events:none}.stadium-top,.stadium-bottom{position:absolute;display:flex;left:24px;right:24px;justify-content:space-between;font-size:8px;font-weight:700;letter-spacing:1.6px;z-index:2}.stadium-top{top:22px}.stadium-bottom{bottom:19px}.stadium-bottom>span:last-child{font-size:21px}.floodlight{position:absolute;width:125px;height:9px;top:72px;background:#e6efc8;box-shadow:0 0 30px 10px #dbe9a940;transform:rotate(-20deg);z-index:1}.light-left{left:-10px}.light-right{right:-10px;transform:rotate(20deg)}.crowd{position:absolute;top:80px;left:0;width:100%;height:120px;background-image:radial-gradient(#9cb38b90 1px,transparent 1.5px);background-size:11px 11px;mask-image:linear-gradient(transparent,#000,transparent)}.pitch{position:absolute;background:repeating-linear-gradient(0deg,#52794b 0,#52794b 45px,#426d43 45px,#426d43 90px);width:92%;height:330px;left:4%;top:139px;transform:perspective(450px) rotateX(47deg);border:1px solid #8caa73}.pitch-border{position:absolute;inset:20px;border:2px solid #c2d39a90}.halfway{position:absolute;left:20px;right:20px;top:50%;border-top:2px solid #c2d39a90}.center-circle{position:absolute;height:95px;width:95px;border:2px solid #c2d39a90;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%}.box{position:absolute;left:33%;width:34%;height:55px;border:2px solid #c2d39a90}.box-top{top:20px}.box-bottom{bottom:20px}.football{position:absolute;width:153px;left:50%;top:115px;transform:translateX(-50%) rotate(-15deg);filter:drop-shadow(15px 35px 14px #112b2490)}.football svg{width:100%;display:block}.ticket{background:#e6edc3;color:var(--ink);position:absolute;bottom:51px;left:24px;right:24px;padding:16px 20px;transform:rotate(-4deg);display:flex;gap:17px;align-items:center;border-right:2px dashed #6a8055;box-shadow:0 4px 6px #0002}.ticket-star{font-size:39px}.ticket strong{font-family:var(--display);font-size:21px;line-height:1}.ticket small{display:block;font-size:9px;margin-top:6px}.section-title{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:23px}.section-title .eyebrow{margin-bottom:8px}.section-title h2{font-size:36px;letter-spacing:-.4px;margin:0}.section-title h2 span{color:var(--orange)}.section-title>p{color:var(--muted);font-size:11px;margin:0 0 3px}.level-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.level-card{border:1px solid #d7d9cd;background:transparent;text-align:left;border-radius:5px;padding:22px 21px 15px;transition:transform .18s,box-shadow .18s;min-width:0}.level-card:hover{transform:translateY(-5px);box-shadow:0 9px 20px #193d3110}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.level-icon{display:grid;place-items:center;width:41px;height:41px;font-size:27px;background:var(--tint);border-radius:50%;font-family:Arial}.mint{--tint:#d9ebce;--accent:#537548}.yellow{--tint:#f4e7af;--accent:#9b7d20}.orange{--tint:#f3d3bd;--accent:#bb6335}.purple{--tint:#e5def1;--accent:#7c6597}.difficulty-bars{display:flex;gap:3px;align-items:flex-end;height:17px}.difficulty-bars i{width:4px;background:#dcded3;border-radius:1px}.difficulty-bars i:nth-child(1){height:5px}.difficulty-bars i:nth-child(2){height:9px}.difficulty-bars i:nth-child(3){height:13px}.difficulty-bars i:nth-child(4){height:17px}.difficulty-bars i.filled{background:var(--accent)}.card-label{font-size:8px;font-weight:700;letter-spacing:1.5px;color:var(--muted)}.level-card h3{font-size:32px;margin:7px 0 9px}.level-card p{font-size:11px;line-height:1.7;color:var(--muted);min-height:38px;margin-bottom:23px}.card-bottom{border-top:1px solid var(--line);padding-top:14px;display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:700}.card-arrow{font-size:21px;line-height:1}.how-to{display:flex;justify-content:center;gap:50px;margin:34px 0 47px;font-size:10px;color:var(--muted)}.how-to b{font-weight:500;margin-right:10px;color:#87927e}footer{border-top:1px solid var(--line);padding:23px 0 30px;display:flex;justify-content:space-between;gap:20px;font-size:8px;letter-spacing:1px;color:var(--muted)}.footer-ball{padding:0 9px}footer>span:last-child{letter-spacing:0}.game{max-width:740px;margin:40px auto 60px;min-height:65vh}.game-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:36px}.back-button{border:0;background:transparent;padding:10px 0;font-size:12px}.level-tag{padding:8px 14px;background:var(--tint);font-size:11px;border-radius:4px;font-weight:700}.scoreline{display:flex;justify-content:space-between;font-size:11px;letter-spacing:1px;margin-bottom:15px}.scoreline>b{font-size:17px}.progress{display:flex;gap:7px;margin-bottom:37px}.progress i{height:5px;background:#dde1d3;flex:1;border-radius:5px}.progress .done{background:#52784b}.progress .current{background:var(--orange)}.question-panel{border:1px solid var(--line);background:#fdfcf7;padding:36px;border-radius:7px}.question-panel h1{font-size:40px;line-height:1.12;letter-spacing:-.3px;margin:0 0 28px;outline:none}.answers{display:grid;grid-template-columns:1fr 1fr;gap:12px}.answer{border:1px solid #d6dccd;border-radius:5px;background:transparent;padding:17px 14px;display:flex;gap:12px;align-items:center;text-align:left;font-size:13px;min-height:68px}.answer:not(:disabled):hover{border-color:#66885a;background:#f0f4e8}.answer-letter{font-size:10px;border:1px solid #d6dccd;border-radius:3px;width:24px;height:24px;display:grid;place-items:center;flex-shrink:0}.answer-symbol{margin-left:auto;font-size:19px}.answer.correct{background:#e5f0dc;border-color:#5e894c;color:#284f23}.answer.wrong{background:#fbe6df;border-color:#b7624c;color:#853722}.answer:disabled:not(.correct):not(.wrong){opacity:.6}.feedback{margin-top:22px;border-left:3px solid #638951;padding:4px 0 4px 15px;font-size:13px}.feedback.miss{border-color:var(--orange)}.feedback p{margin:8px 0;font-size:12px;line-height:1.6}.feedback a{font-size:10px;color:var(--muted)}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:35px;padding:16px 23px;border:1px solid var(--ink);border-radius:4px;font-size:12px;font-weight:600}.primary{background:var(--ink);color:white}.primary:hover{background:#2c5742}.secondary{background:transparent}.secondary:hover{background:#e9ecdf}.next{margin-top:24px;min-width:180px}.game-note{text-align:center;color:var(--muted);font-size:11px;margin:23px 0}.results{max-width:760px;text-align:center;margin:50px auto 60px;min-height:65vh}.results>.eyebrow{justify-content:center}.result-medal{width:83px;height:83px;display:grid;place-items:center;font-size:43px;background:#e6edcc;color:#637448;border-radius:50%;margin:28px auto 20px}.results h1{font-size:48px;line-height:1.1;outline:none}.result-score{font-family:var(--display);font-size:100px;line-height:1;margin:20px 0;color:#3f6a3e}.result-score>span{font-size:35px;color:#8c9881;margin-left:9px}.result-copy{font-size:14px;line-height:1.7}.save-note{font-size:11px;color:var(--muted)}.result-actions{display:flex;gap:12px;justify-content:center;margin:26px 0 40px}.review{text-align:left;border-top:1px solid var(--line);padding-top:20px}.review summary{cursor:pointer;font-size:13px;font-weight:600;padding:10px}.review article{display:flex;gap:16px;border-bottom:1px solid var(--line);padding:22px 10px}.review-mark{font-size:20px}.review h3{font-family:var(--body);font-size:13px;line-height:1.6}.review p{font-size:12px;color:var(--muted);line-height:1.7;margin-bottom:7px}.review a{font-size:10px}
@media(min-width:1500px){.hero{padding-top:80px;padding-bottom:80px}.stadium{height:420px}}
@media(max-width:1000px){.site-header,main,footer{width:calc(100% - 48px)}.hero{gap:28px}.hero h1{font-size:61px}.stadium{height:365px}.level-card{padding:19px 15px 14px}.how-to{gap:25px}}
@media(max-width:700px){.site-header,main,footer{width:calc(100% - 36px)}.site-header{height:78px}.brand{font-size:16px;letter-spacing:-.7px;gap:4px}.brand-ball{font-size:25px}.header-note{display:none}.hero{grid-template-columns:1fr;gap:30px;padding:36px 0 39px}.hero h1{font-size:65px;line-height:.99}.hero-copy .eyebrow{font-size:9px}.intro{font-size:13px}.stadium{height:320px}.football{top:85px;width:140px}.pitch{top:112px}.ticket{bottom:44px;padding:11px 17px;left:21px;right:21px}.stadium-top,.stadium-bottom{left:20px;right:20px;font-size:7px}.ticket strong{font-size:19px}.section-title{display:block}.section-title h2{font-size:32px}.section-title>p{margin-top:12px}.level-cards{grid-template-columns:1fr 1fr;gap:12px}.level-card{padding:18px 16px 13px}.card-top{margin-bottom:20px}.level-card h3{font-size:30px}.level-card p{font-size:11px;min-height:56px;margin-bottom:16px}.card-label{font-size:7px;letter-spacing:1px}.how-to{align-items:flex-start;justify-content:space-between;gap:12px;margin:27px 0 33px;font-size:9px;line-height:1.7}.how-to span{flex:1}.how-to b{display:block;margin-bottom:2px}footer{flex-direction:column;gap:12px;font-size:7px;padding:20px 0}.game{margin:24px auto 40px}.game-toolbar{margin-bottom:25px}.question-panel{padding:23px 18px}.question-panel h1{font-size:34px}.answers{grid-template-columns:1fr}.answer{min-height:60px}.progress{margin-bottom:27px}.results{margin:35px auto}.results h1{font-size:40px}.result-actions{flex-direction:column}.result-copy{font-size:13px}.result-score{font-size:90px}}
.start-status{font-size:12px;color:#8b4d30;min-height:18px;margin:14px 0 0}.survival-bar{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:17px 0 24px;gap:15px}.survival-bar>span:last-child{font-size:11px;color:var(--muted)}.lives{display:flex;align-items:center;gap:7px;font-size:23px;color:#c76142}.lives .lost{color:#adb3a5}.lives small{font-size:10px;color:var(--muted);margin-left:6px}.leaderboard{padding:12px 0 45px;max-width:850px;margin:0 auto}.leaderboard-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.board-tab{border:1px solid var(--line);background:transparent;padding:10px 18px;border-radius:4px;font-size:12px}.board-tab.active{background:var(--ink);color:white;border-color:var(--ink)}.board-table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}.board-table th{font-size:9px;letter-spacing:1.3px;text-transform:uppercase;color:var(--muted);padding:14px 18px;border-bottom:1px solid var(--line)}.board-table td{padding:16px 18px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.board-table th:first-child{width:80px}.board-table td:last-child,.board-table th:last-child{text-align:right}.board-table td:nth-child(2){font-weight:600}.board-table small{font-size:10px;color:var(--muted)}.place{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#e5ebd6;font-size:11px}.empty-board{color:var(--muted);font-size:12px;line-height:1.7;text-align:center!important;padding:30px!important}.board-note{font-size:10px;color:var(--muted);line-height:1.8;margin-top:15px}.score-entry{margin:25px auto;max-width:480px;text-align:left;border:1px solid var(--line);border-radius:5px;padding:22px}.score-entry label{font-size:13px;font-weight:700}.score-entry p{font-size:11px;color:var(--muted);margin:10px 0;line-height:1.6}.score-entry>div{display:flex;gap:8px;margin-top:15px}.score-entry input{width:100%;min-width:0;border:1px solid var(--line);background:var(--paper);padding:13px;font:inherit;font-size:13px;border-radius:3px}.score-entry button{flex-shrink:0;padding:13px 16px}.score-entry input:focus-visible{outline:3px solid var(--orange);outline-offset:2px}.score-entry button:disabled{opacity:.6;cursor:default}
@media(max-width:500px){.survival-bar{gap:7px}.survival-bar>span:last-child{font-size:10px}.score-entry{padding:17px}.score-entry>div{flex-direction:column}.board-tab{padding:9px 12px;font-size:11px}.board-table td,.board-table th{padding:13px 8px}.leaderboard .section-title>p{line-height:1.7}.result-score>span{font-size:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.crimson{--tint:#f2d8d4;--accent:#a94438}.level-card.crimson{border-color:#c59b91;background:#f3e7df}.level-cards{grid-template-columns:repeat(5,minmax(0,1fr))}.difficulty-bars{height:21px}.difficulty-bars i:nth-child(5){height:21px}@media(min-width:701px) and (max-width:1000px){.level-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.level-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.level-card.crimson{grid-column:1 / -1}.level-card.crimson p{min-height:0}.level-card.crimson .card-top{margin-bottom:12px}}

.daily-challenge{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:28px 30px;margin:0 0 42px;background:#e9edda;border:1px solid #d1dbc0;border-radius:5px}.daily-challenge .eyebrow{margin-bottom:11px;font-size:9px;letter-spacing:1.3px;flex-wrap:wrap}.daily-challenge .eyebrow>span{width:auto;height:auto;background:transparent}.daily-challenge h2{font-size:33px;margin-bottom:10px;line-height:1.05}.daily-challenge p:not(.eyebrow){font-size:12px;line-height:1.7;margin-bottom:8px;max-width:580px}.daily-challenge small{font-size:10px;color:var(--muted);line-height:1.7}.daily-challenge button{flex-shrink:0}.gold{--tint:#ece4ae;--accent:#897726}@media(max-width:700px){.daily-challenge{align-items:stretch;flex-direction:column;padding:23px;gap:21px;margin-bottom:33px}.daily-challenge h2{font-size:30px}.daily-challenge button{align-self:flex-start;gap:15px}}

body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.site-header{gap:16px}.install-button{flex-shrink:0;background:var(--ink);color:white;border:0;border-radius:4px;font-size:11px;font-weight:600;padding:12px 15px}.install-button:hover{background:#2c5742}.connection-status{margin:0;padding:12px 18px;background:#f2e4c7;color:#694c23;font-size:12px;text-align:center;line-height:1.7}.install-dialog{color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:32px;max-width:460px;width:calc(100% - 32px);max-height:calc(100dvh - 40px);overflow:auto;font-family:var(--body)}.install-dialog::backdrop{background:#10251dcc}.install-dialog>img{border-radius:16px;margin-bottom:24px}.install-dialog .eyebrow{font-size:8px;margin-bottom:9px}.install-dialog h2{font-size:37px;line-height:1.1;margin-bottom:15px}.install-dialog p{font-size:12px;line-height:1.8}.dialog-close{position:absolute;right:17px;top:13px;background:transparent;border:0;font-size:28px;line-height:1;padding:8px}.install-instructions{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:19px 0 3px;margin:20px 0 15px}.install-instructions h3{font-family:var(--body);font-size:12px;margin-bottom:6px}.install-instructions p{font-size:11px;margin-bottom:18px}.install-dialog .install-note{color:var(--muted);font-size:10px}.install-dialog #install-status{font-size:11px;color:#527448}@media(max-width:700px){.install-button{padding:10px 11px;font-size:10px}.install-dialog{padding:27px 23px}.site-header{gap:8px}.brand{flex-wrap:nowrap;white-space:nowrap}}

.daily-challenge .daily-reset-line{margin:12px 0 0;font-size:11px;letter-spacing:.2px}.daily-reset-line strong{font-variant-numeric:tabular-nums;font-weight:700;margin-left:5px}.daily-challenge #daily-reset-note{font-size:11px;color:#47743e;margin:7px 0 0}.daily-challenge #daily-reset-note:empty{display:none}

.account-link{font-size:11px;font-weight:700;text-decoration:none;border:1px solid var(--line);padding:11px 15px;border-radius:4px;white-space:nowrap}.account-link:hover{background:#e9ecdf}.account-section{margin-bottom:35px;scroll-margin-top:20px}.account-panel{border:1px solid var(--line);border-radius:5px;padding:25px 29px;display:flex;justify-content:space-between;align-items:center;gap:30px}.account-panel>div:first-child{max-width:570px}.account-panel .eyebrow{margin-bottom:9px}.account-panel h2{font-size:31px;line-height:1.1;margin-bottom:10px}.account-panel p:not(.eyebrow){font-size:12px;line-height:1.7;margin-bottom:0;color:var(--muted)}.account-panel>a{flex-shrink:0;gap:15px}.account-settings{min-width:310px;max-width:400px}.account-settings label{font-size:11px;font-weight:700}.account-settings form>div{display:flex;gap:8px;margin:9px 0}.account-settings input{width:100%;min-width:0;font:inherit;font-size:12px;padding:12px;border:1px solid var(--line);border-radius:3px;background:#fdfcf7}.account-settings button{padding:12px;font-size:10px;white-space:nowrap}.account-settings .account-signout{font-size:10px;display:inline-block;margin-top:13px}.account-settings #account-status{font-size:10px}.site-header .header-note{margin-left:auto}@media(max-width:1000px){.site-header .header-note{display:none}.account-panel{align-items:flex-start}.account-settings{min-width:270px}}@media(max-width:700px){.account-panel{flex-direction:column;gap:20px;padding:22px}.account-panel h2{font-size:29px}.account-settings{min-width:0;width:100%;max-width:none}.account-panel>a{width:100%}.account-link{font-size:10px;padding:9px 11px}.site-header{flex-wrap:wrap;height:auto;min-height:78px;padding:17px 0;gap:10px}.site-header .brand{flex-basis:100%;margin-bottom:3px}.account-section{margin-bottom:28px}.account-settings form>div{flex-wrap:wrap}.account-settings input{flex:1 1 150px}}

.competition-picker{margin:0 0 28px;padding-top:4px}.competition-picker .eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:13px}.competition-tabs{display:inline-flex;border:1px solid #bdc9b5;border-radius:5px;padding:5px;gap:5px;background:#eef0e4}.competition-tabs button{border:0;border-radius:3px;padding:14px 27px;background:transparent;font-size:14px;font-weight:700}.competition-tabs button.active{background:var(--ink);color:white}.competition-tabs button:not(.active):hover{background:#dde5d0}.competition-picker #competition-note{font-size:11px;color:var(--muted);margin:12px 0 0}.competition-tabs #copa{scroll-margin-top:25px}@media(max-width:700px){.competition-tabs{display:flex}.competition-tabs button{flex:1;padding:13px 14px;font-size:13px}.competition-picker .eyebrow{font-size:8px}.section-title h2{font-size:30px}}

/* A correct answer becomes a shot on goal; milestones carry the bigger moment. */
.survival-bar{padding-bottom:12px}.run-rhythm{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 18px;color:#687561;font-size:11px;min-height:27px}.streak-count{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.streak-count svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linejoin:round}.streak-count b{font-weight:600;font-variant-numeric:tabular-nums}.run-rhythm.on-a-run{color:#356329}.on-a-run .streak-count{background:#e1eccf;padding:5px 9px;border-radius:3px}.run-rhythm>span:last-child{text-align:right;line-height:1.5}.feedback.success{display:grid;grid-template-columns:106px minmax(0,1fr);gap:18px;align-items:center;border-left:0;padding:5px 0}.goal-scene{color:#356329;width:106px;align-self:center}.goal-scene svg{width:100%;height:auto;display:block;overflow:visible}.shot-ball{transform:translate(82px,-8px) rotate(190deg);transform-box:fill-box;transform-origin:center}.feedback-copy{min-width:0}.feedback-copy strong{font-size:14px;line-height:1.5}.feedback-copy p{margin:7px 0;font-size:12px}.scoreline b{display:inline-block;font-variant-numeric:tabular-nums}.run-award{display:inline-flex;gap:10px;align-items:center;margin:4px auto 9px;padding:10px 16px;border:1px solid #c8b67e;background:#eee6c7;border-radius:4px;color:#685022;font-size:12px;font-weight:700}.run-award svg{width:24px;height:27px;flex-shrink:0}.result-streak{font-size:12px;color:#49643d;line-height:1.6;margin:8px 0 15px}.answer:not(:disabled):active{background:#e5edd9}.primary:active{background:#113326}::selection{background:#d8e8c3;color:#193d31}input{caret-color:#3e6c38}
@media(prefers-reduced-motion:no-preference){.goal-scored .shot-ball{animation:shot-on-goal 480ms cubic-bezier(.16,1,.3,1) both}.score-gained{animation:score-arrival 260ms cubic-bezier(.16,1,.3,1)}.streak-earned .streak-count{animation:streak-arrival 360ms cubic-bezier(.16,1,.3,1)}.life-spent{animation:life-settle 220ms ease-out}.best-earned{animation:award-stamp 580ms cubic-bezier(.16,1,.3,1)}@keyframes shot-on-goal{0%{transform:translate(0,0) rotate(0)}65%{transform:translate(79px,-13px) rotate(160deg)}100%{transform:translate(82px,-8px) rotate(190deg)}}@keyframes score-arrival{0%{transform:translateY(3px);color:#6c8c47}100%{transform:translateY(0);color:inherit}}@keyframes streak-arrival{0%{transform:scale(.96);background:#c6dfaa}100%{transform:scale(1);background:#e1eccf}}@keyframes life-settle{0%{transform:scale(1.12)}100%{transform:scale(1)}}@keyframes award-stamp{0%{transform:scale(1.08) rotate(-2deg);box-shadow:0 5px 14px #68502220}70%{transform:scale(1) rotate(0)}100%{transform:scale(1) rotate(0);box-shadow:none}}}
@media(max-width:700px){.feedback.success{grid-template-columns:77px minmax(0,1fr);gap:12px}.goal-scene{width:77px}.run-rhythm{font-size:10px;gap:10px;margin-bottom:14px}.streak-count svg{width:18px;height:18px}.feedback-copy strong{font-size:13px}.run-award{font-size:11px;padding:9px 13px}.result-streak{font-size:11px}}

/* Bright match-day palette. */
:root{--paper:#f4fbff;--ink:#123f48;--muted:#526b76;--line:#cbdfe8;--orange:#d64c24;--green:#a2e8d0}
body{background:linear-gradient(145deg,#e9faff 0%,#f8fcff 44%,#fff8eb 100%);background-attachment:fixed}h1 em{color:#078879}.header-note i{background:#078879}.site-header{border-bottom-color:#bfdce7}
.stadium{background:#145764;color:#f3fbd8}.pitch{background:repeating-linear-gradient(0deg,#42a885 0,#42a885 45px,#329574 45px,#329574 90px);border-color:#a2e0ba}.ticket{background:#fff0a9}.floodlight{background:#fff8d1;box-shadow:0 0 30px 10px #f8ffe25c}
.mint{--tint:#bfeedd;--accent:#13745b;--card:#e2f9ed;--edge:#9dd8bb}.yellow{--tint:#ffe699;--accent:#886211;--card:#fff4cf;--edge:#e6cb79}.orange{--tint:#ffceb6;--accent:#ac461f;--card:#ffe7d9;--edge:#e7b295}.purple{--tint:#d8ccff;--accent:#6949a0;--card:#eee7ff;--edge:#c2aee7}.crimson{--tint:#ffc6d3;--accent:#a23455;--card:#ffe4ed;--edge:#e8a5ba}.gold{--tint:#ffe699;--accent:#886211}
.level-card,.level-card.crimson{background:var(--card);border-color:var(--edge);border-top:4px solid var(--accent)}.level-card:hover{box-shadow:0 9px 20px #17677918}.level-card h3,.level-icon{color:var(--accent)}.level-card .card-label{color:#4c606b}.level-card p{color:#4e6470}.card-bottom{border-color:var(--edge)}.difficulty-bars i:not(.filled){background:#ffffffb3}
.account-panel{background:#fff;border-color:#c6e1ed}.daily-challenge{background:#fff2b9;border-color:#e6ce75}.competition-tabs{background:#e0f4fa;border-color:#afdae5}.competition-tabs button.active{background:#087b83}.competition-tabs button:not(.active):hover{background:#c9eaf3}
.primary,.install-button{background:#087b83;color:#fff;border-color:#087b83}.primary:hover,.install-button:hover{background:#09616a}.primary:active{background:#07545c}.secondary,.account-link{background:#fff;border-color:#bad8e3}.secondary:hover,.account-link:hover{background:#e1f3fa}
.board-tab{background:#fff;border-color:#bed9e6}.board-tab.active{background:#087b83;border-color:#087b83}.board-table{background:#ffffffb8}.board-table thead{background:#e0f3fa}.place{background:#d1eee8;color:#185c55}.board-table tbody tr:first-child .place{background:#ffe6a0;color:#725112}
.question-panel{background:#fff;border-color:#c5dfe9}.answer{background:#f6fbfe;border-color:#bfd8e3}.answer-letter{background:#fff;border-color:#bdd6e0}.answer:not(:disabled):hover{background:#e0f5f4;border-color:#18848b}.answer:not(:disabled):active{background:#c9ece9}.answer.correct{background:#d5f5de;border-color:#389357;color:#1c572e}.answer.wrong{background:#ffe0dc;border-color:#c46555;color:#813b30}.feedback{border-color:#389357}.feedback.miss{border-color:#db704c}.goal-scene{color:#237b49}.lives{color:#d45b65}.run-rhythm{color:#526b76}.run-rhythm.on-a-run{color:#156a58}.on-a-run .streak-count{background:#cbf1e3}.run-award{background:#fff0b3;border-color:#dbbd63;color:#705318}.result-medal{background:#c9f1e9}.result-score{color:#087b83}.result-score>span{color:#617d87}.result-streak{color:#226d59}.score-entry{background:#fff}.score-entry input,.account-settings input{background:#f6fbfe}::selection{background:#b9eee3;color:#123f48}input{caret-color:#087b83}

.competition-tabs{display:flex;flex-wrap:wrap;width:fit-content;max-width:100%}.competition-tabs button{flex:0 1 auto}.competition-picker [id]{scroll-margin-top:25px}@media(max-width:700px){.competition-tabs{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.competition-tabs button{min-height:46px;padding:12px 10px}.competition-tabs button:last-child{grid-column:1 / -1}}

@media(max-width:700px){.competition-tabs button:last-child{grid-column:auto}}

.competition-tabs #all:not(.active){background:#fff0b3;color:#705318}.competition-tabs #all:not(.active):hover{background:#ffe58b}@media(max-width:700px){.competition-tabs #all{grid-column:1 / -1}}

.trial-banner{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:20px 0 0;padding:13px 18px;border:1px solid #e6ce75;border-radius:5px;background:#fff2b9;font-size:12px}.trial-banner strong{font-variant-numeric:tabular-nums;color:#705318}.trial-banner>span:last-child{margin-left:auto;color:var(--muted)}.trial-ended{max-width:680px;margin:64px auto;text-align:center;min-height:65vh}.trial-ended .eyebrow{justify-content:center}.trial-ended h1{font-size:clamp(45px,7vw,68px);outline:none}.trial-ended>p{line-height:1.8}.trial-ended>.primary{margin:14px 0 22px}.trial-ended>.save-note{max-width:420px;margin:auto}@media(max-width:700px){.trial-banner{font-size:11px;gap:10px;padding:12px 14px}.trial-banner>span:last-child{margin-left:0;flex-basis:100%}.trial-ended{margin:35px auto}.trial-ended>.primary{width:100%}}

/* World Cup match-day artwork, with a light reading surface. */
body{background:#eff9ff;position:relative;isolation:isolate}
body::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#f4fbfff0,#f4fbffcf),url('/images/world-cup-stadium.jpg') 65% center/cover no-repeat}
.hero{display:block;min-height:500px;margin:30px 0 40px;padding:44px;position:relative;border:1px solid #cfdee5;border-radius:10px;overflow:hidden;background:linear-gradient(90deg,#f8fcfffa 0%,#f8fcffeb 32%,#f8fcff70 50%,#f8fcff00 66%),url('/images/world-cup-stadium.jpg') center center/cover no-repeat}
.hero-copy{max-width:520px}.hero h1{font-size:clamp(56px,5.4vw,74px)}.hero .intro{max-width:430px;color:#415e68}.hero .eyebrow{color:#315a64}.question-panel,.account-panel,.score-entry{background:#ffffffed}.board-table{background:#fffffff0}.competition-tabs{background:#e0f4faf5}.trial-ended{padding:35px;background:#f8fcfff0;border:1px solid #cfdee5;border-radius:10px}.results{padding:32px;background:#f8fcfff0;border:1px solid #cfdee5;border-radius:10px}.site-header{border-bottom-color:#b9d3de}
@media(max-width:1000px) and (min-width:701px){.hero{padding:34px}.hero-copy{max-width:410px}.hero h1{font-size:60px}.hero .intro{max-width:360px}}
@media(max-width:700px){.hero{margin:22px 0 30px;padding:27px 23px;min-height:730px;background-color:#f8fcff;background-image:linear-gradient(180deg,#f8fcff 0%,#f8fcff 40%,#f8fcffb0 47%,#f8fcff00 58%),url('/images/world-cup-stadium.jpg');background-position:center,72% bottom;background-size:100% 100%,auto 400px;background-repeat:no-repeat}.hero-copy{max-width:none}.hero h1{font-size:56px}.hero .intro{max-width:none;font-size:13px}.hero .eyebrow{font-size:8px;letter-spacing:1.5px}.trial-ended,.results{padding:25px 18px}body::before{background-position:center,70% center}}

/* The user's supplied World Cup trophy photo. */
body::before{background-image:linear-gradient(90deg,#f4fbffef,#f4fbffd1),url('/images/world-cup-stadium.jpg');background-position:center,center center}
.hero{background-color:#f8fcff;background-image:linear-gradient(90deg,#f8fcff 0%,#f8fcfff5 34%,#f8fcff88 48%,#f8fcff00 61%),url('/images/world-cup-stadium.jpg');background-position:center,right center;background-size:100% 100%,auto 100%;background-repeat:no-repeat}
@media(max-width:700px){.hero{background-image:linear-gradient(180deg,#f8fcff 0%,#f8fcff 42%,#f8fcffcc 47%,#f8fcff00 55%),url('/images/world-cup-stadium.jpg');background-position:center,center bottom;background-size:100% 100%,auto 380px}.hero h1{font-size:54px}body::before{background-position:center,center center}}

.sky{--tint:#c6e9fb;--accent:#24647f;--card:#e1f3ff;--edge:#a7cee3}.difficulty-bars{height:24px}.difficulty-bars i:nth-child(6){height:24px}.level-card{display:flex;flex-direction:column}.level-card .card-bottom{margin-top:auto}.level-card p{min-height:56px}@media(min-width:1001px){.level-cards{grid-template-columns:repeat(6,minmax(0,1fr))}.level-card{padding:20px 16px 15px}.level-card h3{font-size:30px}}@media(max-width:700px){.level-card.crimson{grid-column:auto}.level-card.crimson p{min-height:56px}.level-card.crimson .card-top{margin-bottom:20px}}

.sport-picker{padding:26px 0 8px}.sport-tabs{display:flex;gap:10px;flex-wrap:wrap}.sport-tabs button{font:inherit;font-weight:750;border:1px solid #bfd1c2;background:#fffdf3;padding:13px 21px;border-radius:30px;color:#153f32;cursor:pointer}.sport-tabs button.active{background:#153f32;color:white;border-color:#153f32;box-shadow:0 4px 0 #bddb99}.sport-tabs button:focus-visible,.hint-bar button:focus-visible{outline:3px solid #dc9b19;outline-offset:4px}.sport-art{font-size:180px;align-self:center;text-align:center;filter:drop-shadow(0 22px 14px #153f3220);z-index:1}.sport-art[hidden]{display:none}.hint-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:22px 0 8px}.hint-bar span{font-size:13px;font-weight:700;color:#476052}.hint-status{font-size:13px;min-height:18px;color:#476052}.hint-bar button:disabled{opacity:.55;cursor:default}.answer.hint-removed{opacity:.3;text-decoration:line-through;border-style:dashed}.sport-celebration{font-size:48px}body[data-sport="baseball"],body[data-sport="football"]{background-image:none;background-color:#f6f8ed}body[data-sport="baseball"] .hero,body[data-sport="football"] .hero{background-image:none;background:linear-gradient(120deg,#fffdf5,#d9efd9)}body[data-sport="baseball"] .hero:before,body[data-sport="football"] .hero:before{background:none}body[data-sport="football"] .hero{background:linear-gradient(120deg,#fffdf5,#f9dfbb)}@media(max-width:700px){.sport-tabs{gap:8px}.sport-tabs button{padding:10px 13px;font-size:13px}.sport-art{font-size:92px}.hint-bar{gap:10px}}
body[data-sport="baseball"]::before,body[data-sport="football"]::before{background:none}body[data-sport="baseball"] .sport-art,body[data-sport="football"] .sport-art{position:absolute;right:7%;top:25%;pointer-events:none}@media(max-width:700px){body[data-sport="baseball"] .hero,body[data-sport="football"] .hero{min-height:650px}body[data-sport="baseball"] .sport-art,body[data-sport="football"] .sport-art{top:auto;bottom:30px;right:calc(50% - 46px)}}
/* User-supplied sport photography. */
body[data-sport="baseball"]{--sport-photo:url('/images/baseball-team.webp')}
body[data-sport="football"]{--sport-photo:url('/images/american-football.jpeg')}
body[data-sport="baseball"]::before,body[data-sport="football"]::before{background:linear-gradient(90deg,#f4fbfff0,#f4fbffde),var(--sport-photo) center/cover no-repeat}
body[data-sport="baseball"] .hero,body[data-sport="football"] .hero{min-height:540px;background-color:#f8fcff;background-image:linear-gradient(90deg,#f8fcff 0%,#f8fcfff7 35%,#f8fcffb0 47%,#f8fcff00 65%),var(--sport-photo);background-position:center,right center;background-size:100% 100%,auto 100%;background-repeat:no-repeat}
body[data-sport="baseball"] .sport-art,body[data-sport="football"] .sport-art{display:none}
@media(max-width:700px){body[data-sport="baseball"] .hero,body[data-sport="football"] .hero{min-height:780px;background-image:linear-gradient(180deg,#f8fcff 0%,#f8fcff 47%,#f8fcffb0 55%,#f8fcff00 64%),var(--sport-photo);background-position:center,center bottom;background-size:100% 100%,auto 340px}body[data-sport="football"] .hero{min-height:850px;background-size:100% 100%,auto 340px}}

.brand-icon{border-radius:9px;margin-right:4px;flex-shrink:0}.sport-tabs button{white-space:nowrap}body[data-sport="basketball"]{background:#fff7eb}body[data-sport="basketball"]::before{background:linear-gradient(135deg,#fff8eb,#f4e6cc)}body[data-sport="basketball"] .hero{background:linear-gradient(105deg,#fffdf7 0%,#fff4e1 48%,#edb668 100%);min-height:540px}body[data-sport="basketball"] .sport-art{position:absolute;right:8%;top:25%;pointer-events:none;font-size:180px}body[data-sport="basketball"] .hero:after{content:'';position:absolute;border:2px solid #fff6df77;border-radius:50%;width:380px;height:380px;right:-25px;top:85px;pointer-events:none}body[data-sport="basketball"] .hero-copy{position:relative;z-index:2}@media(max-width:700px){.brand-icon{width:35px;height:35px}body[data-sport="basketball"] .hero{min-height:690px}body[data-sport="basketball"] .sport-art{font-size:120px;top:auto;bottom:28px;right:calc(50% - 60px)}body[data-sport="basketball"] .hero:after{width:270px;height:270px;top:auto;bottom:-100px;right:calc(50% - 135px)}}
/* User-supplied Basketball photo. */
body[data-sport="basketball"]{--sport-photo:url('/images/basketball-hoop.jpg')}
body[data-sport="basketball"]::before{background:linear-gradient(90deg,#f4fbfff0,#f4fbffde),var(--sport-photo) center/cover no-repeat}
body[data-sport="basketball"] .hero{min-height:540px;background-color:#f8fcff;background-image:linear-gradient(90deg,#f8fcff 0%,#f8fcfff7 35%,#f8fcffb0 47%,#f8fcff00 65%),var(--sport-photo);background-position:center,right center;background-size:100% 100%,auto 100%;background-repeat:no-repeat}
body[data-sport="basketball"] .sport-art,body[data-sport="basketball"] .hero:after{display:none}
@media(max-width:700px){body[data-sport="basketball"] .hero{min-height:780px;background-image:linear-gradient(180deg,#f8fcff 0%,#f8fcff 47%,#f8fcffb0 55%,#f8fcff00 64%),var(--sport-photo);background-position:center,67% bottom;background-size:100% 100%,auto 340px}}
