:root{--green:#4CB849;--white:#FFFFFF;--black:#000000;--ink-soft:rgba(0,0,0,.57);--line:rgba(0,0,0,.12);font-family:Inter,Manrope,Arial,sans-serif;color:var(--black);background:var(--white);font-synthesis:none;color-scheme:light}
*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit;color:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}button,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,canvas:focus-visible{outline:3px solid var(--green);outline-offset:4px}button{border:0}a{color:inherit;text-decoration:none}button svg,svg.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}[hidden]{display:none!important}.app{max-width:1240px;margin:0 auto;padding:0 48px}.site-header{height:106px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:21px}.wordmark{font-family:Arial,sans-serif;font-size:53px;letter-spacing:-5px;font-weight:900;line-height:1}.brand-divider{width:1px;height:33px;background:var(--line)}.brand-name{font-size:15px;font-weight:800;letter-spacing:-.2px}.brand-name>span{display:block;font-size:10px;letter-spacing:2px;margin-top:6px;font-weight:500;opacity:.55}.header-actions{display:flex;gap:27px;align-items:center}.best-button{display:flex;align-items:center;gap:12px;background:transparent;padding:5px;text-align:left}.best-button>svg{width:24px;height:24px}.best-button>span{font-size:10px;letter-spacing:1px;color:var(--ink-soft)}.best-button strong{font-size:19px;display:block;color:var(--black);letter-spacing:-.5px;margin-top:2px}.icon-button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);background:var(--white);border-radius:50%;transition:transform .18s,background .18s}.icon-button:hover{background:var(--green);transform:rotate(-5deg)}.main-layout{display:grid;grid-template-columns:1fr minmax(340px,450px);gap:70px;align-items:center;padding:38px 15px 34px}.intro{padding-bottom:12px}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:700;display:flex;align-items:center;gap:10px;margin-bottom:23px}.eyebrow-line{width:22px;height:3px;background:var(--green)}h1{font-size:clamp(68px,7.9vw,109px);line-height:.88;letter-spacing:-7px;margin:0;font-weight:900}h1>span:first-child{color:var(--green)}h1 .title-period{color:var(--green)}.tagline{font-weight:800;font-size:26px;letter-spacing:-1.1px;margin:26px 0 14px}.tagline>span{color:var(--green)}.intro-copy{font-size:15px;line-height:1.65;color:var(--ink-soft);margin:0 0 26px}.intro-copy strong{color:var(--black);font-weight:700}.primary-button{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:16px 22px;border-radius:12px;background:var(--green);color:var(--black);font-weight:900;font-size:14px;letter-spacing:.4px;box-shadow:0 4px 0 var(--black);transition:transform .18s,box-shadow .18s}.primary-button:hover{transform:translateY(-2px) scale(1.015);box-shadow:0 6px 0 var(--black)}.primary-button:active{transform:translateY(3px);box-shadow:0 1px 0 var(--black)}.play-button{width:255px}.play-button svg{width:25px}.challenge{font-size:12px;color:var(--ink-soft);margin:14px 0 0 40px}.quick-rules{display:flex;gap:20px;margin-top:33px;flex-wrap:wrap}.quick-rules>span{display:flex;align-items:center;gap:7px;font-size:9px;font-weight:800;letter-spacing:.5px}.sample-token{width:22px;height:22px;border-radius:7px;display:grid;place-items:center;font-size:19px;font-style:normal;line-height:1}.green-token{background:var(--green)}.black-token{background:var(--black);color:var(--white)}.arcade{width:100%;max-width:450px;justify-self:center}.arcade-topline{font-size:9px;letter-spacing:.8px;display:flex;justify-content:space-between;align-items:center;margin:0 2px 12px;font-weight:700}.arcade-topline>span:first-child{display:flex;gap:6px;align-items:center}.arcade-topline>span:last-child{opacity:.4}.status-dot{width:5px;height:5px;background:var(--green);border-radius:50%}.game-shell{border:2px solid var(--black);border-radius:22px;overflow:hidden;box-shadow:8px 8px 0 rgba(0,0,0,.06);background:var(--white);transition:box-shadow .2s}.scoreboard{display:flex;justify-content:space-between;align-items:center;padding:18px 24px 16px;border-bottom:1px solid var(--line);position:relative;z-index:2}.metric{display:flex;flex-direction:column;gap:5px}.metric>span{font-size:9px;font-weight:700;letter-spacing:1.6px;opacity:.5}.metric>strong{font-size:26px;line-height:1;font-weight:900;letter-spacing:-1px;font-variant-numeric:tabular-nums}.score-metric{min-width:80px}.combo-metric{text-align:center}.combo-metric>strong{color:var(--green)}.timer-metric{text-align:right;min-width:76px}.court{position:relative;aspect-ratio:2/3;max-height:calc(100svh - 440px);min-height:360px;overflow:hidden;isolation:isolate}canvas{display:block;width:100%;height:100%;touch-action:none;user-select:none;-webkit-user-select:none}.controller{display:flex;align-items:center;justify-content:space-between;padding:12px 15px;background:var(--white);border-top:1px solid var(--line)}.direction-button{width:49px;height:42px;border-radius:10px;border:1px solid var(--line);background:var(--white);display:grid;place-items:center;touch-action:none;user-select:none}.direction-button:hover,.direction-button.pressed{background:var(--green);border-color:var(--green)}.control-hint{text-align:center;display:flex;flex-direction:column;gap:7px}.desktop-hint{display:flex;align-items:center;justify-content:center;gap:4px;font-size:10px;opacity:.65}kbd{font-family:inherit;display:inline-grid;place-items:center;min-width:20px;height:19px;border:1px solid var(--line);border-radius:4px;font-size:10px}.control-hint>span:last-child{font-size:8px;font-weight:700;letter-spacing:.7px;opacity:.45}.mobile-hint{display:none}.under-court{display:flex;align-items:center;justify-content:space-between;margin:18px 0 0;gap:8px}.under-court>span{display:flex;align-items:center;gap:7px;font-size:9px;font-weight:700;letter-spacing:.3px}.mini-mo{font-size:10px;font-weight:900;letter-spacing:-1px;background:var(--green);color:var(--white);width:25px;height:23px;border-radius:6px;display:grid;place-items:center;font-style:normal}.text-button{background:transparent;padding:5px 0;font-size:10px;font-weight:800;letter-spacing:.3px;text-underline-offset:4px}.text-button:hover{text-decoration:underline}.text-button>span{margin-left:4px}.site-footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;padding:20px 0;font-size:9px;font-weight:700;letter-spacing:1.1px;color:var(--ink-soft)}.demo-label{position:absolute;left:25px;bottom:95px;display:flex;align-items:end;gap:15px;font-size:10px;font-weight:800;line-height:1.5;letter-spacing:1px;pointer-events:none;opacity:.5}.demo-label>svg{width:25px;height:25px;transform:rotate(40deg)}.mobile-start{display:none}.countdown-overlay,.pause-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;background:rgba(255,255,255,.96);z-index:7}.countdown-overlay strong{font-size:140px;font-weight:900;letter-spacing:-8px;color:var(--green);line-height:1;animation:count-in .85s cubic-bezier(.2,.8,.2,1)}.countdown-overlay>span{font-size:10px;font-weight:800;letter-spacing:2px;margin-top:20px}.pause-overlay h2{font-size:42px;margin:16px 0 0}.pause-overlay p{font-size:14px;opacity:.6;margin-bottom:25px}.pause-overlay .primary-button{width:225px}.court-pause{position:absolute;bottom:17px;right:15px;width:32px;height:32px;border:1px solid var(--line);border-radius:50%;background:var(--white);display:grid;place-items:center;z-index:4}.court-pause svg{width:14px;height:14px;stroke-width:3}.power-banner{position:absolute;left:16px;top:15px;right:16px;display:flex;align-items:center;justify-content:center;gap:5px;background:var(--green);border:1.5px solid var(--black);border-radius:9px;padding:10px 10px 15px;font-weight:900;font-size:16px;letter-spacing:-.3px;z-index:4;overflow:hidden}.power-banner>svg{width:20px;height:20px}.power-banner>span{border-left:1px solid rgba(0,0,0,.3);margin-left:8px;padding-left:12px;font-size:10px;letter-spacing:.5px}.power-meter{position:absolute;bottom:0;height:4px;left:0;right:0;background:rgba(0,0,0,.15)}.power-meter>i{display:block;height:100%;background:var(--black);transform-origin:left center}.game-shell.powered{border-color:var(--green);animation:power-pulse 1s ease-in-out infinite}.reaction{position:absolute;left:8px;right:8px;top:23%;text-align:center;pointer-events:none;font-size:22px;font-weight:900;letter-spacing:-.5px;z-index:5}.reaction.active{animation:reaction 1.6s both}.live-title{font-size:24px;font-weight:900;letter-spacing:-1px}.live-guide>p{font-size:14px;opacity:.6;margin:8px 0 16px}.combo-ladder{display:flex;gap:7px}.combo-ladder>span{border:1px solid var(--line);border-radius:10px;padding:10px;font-size:10px;line-height:1.6;transition:background .2s}.combo-ladder strong{display:block;font-size:24px;line-height:1.1}.combo-ladder span.active{background:var(--green);border-color:var(--green)}.score-pop{animation:score-pop .25s}.combo-pop{animation:score-pop .4s}.timer-urgent{animation:timer-beat .85s infinite}.timer-final{animation:timer-beat .45s infinite}.shake{animation:shake .25s}.playing .intro-copy{margin-bottom:24px}.playing .quick-rules{margin-top:25px}
dialog{width:min(460px,calc(100vw - 28px));max-height:calc(100svh - 32px);overflow:auto;border:2px solid var(--black);border-radius:22px;padding:25px 28px;background:var(--white);color:var(--black);box-shadow:9px 9px 0 rgba(0,0,0,.15)}dialog::backdrop{background:rgba(0,0,0,.35)}dialog h2{font-size:48px;font-weight:900;line-height:.97;letter-spacing:-2.5px;margin:14px 0 18px}dialog h2>span{color:var(--green)}dialog h3{font-size:13px;font-weight:900;letter-spacing:.5px;margin:18px 0 12px}.mini-label{font-size:10px;letter-spacing:1.7px;font-weight:800;opacity:.55}.result-top{display:flex;justify-content:space-between;align-items:center}.result-mo{font-size:25px;font-weight:900;letter-spacing:-2px;color:var(--green)}.results-dialog{text-align:center}.results-dialog h2{margin:6px 0 18px;font-size:46px}.final-score{font-size:65px;line-height:1.15;font-weight:900;letter-spacing:-4px;font-variant-numeric:tabular-nums}.player-title{display:inline-block;border:1px solid var(--green);border-radius:30px;background:rgba(76,184,73,.12);padding:6px 13px;font-weight:800;font-size:12px;margin:5px 0 0}.result-copy{font-size:13px;line-height:1.5;margin:12px 0 16px}.round-stats{display:flex;justify-content:center;gap:22px;border-block:1px solid var(--line);padding:12px 0;margin-bottom:18px}.round-stats>span{font-size:8px;font-weight:700;letter-spacing:.7px;display:flex;align-items:center;gap:7px}.round-stats strong{font-size:18px;letter-spacing:-.5px}form{text-align:left}label{font-size:10px;font-weight:800;letter-spacing:1px;display:block;margin-bottom:8px}.name-row{display:flex;gap:8px}input,textarea{width:100%;min-width:0;border:1px solid var(--black);background:var(--white);border-radius:8px;padding:12px;font-size:16px}input::placeholder{color:rgba(0,0,0,.4);font-size:11px}input:focus,textarea:focus{outline:2px solid var(--green);outline-offset:2px}input[readonly]{background:rgba(0,0,0,.045);font-weight:800;cursor:default}.save-button{display:flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;background:var(--black);color:var(--white);border-radius:8px;padding:12px 14px;font-size:11px;font-weight:800}.save-button>svg{width:15px;height:15px}.form-status{font-size:11px;line-height:1.45;margin:7px 0 0;min-height:0}.form-status:empty{display:none}.leaderboard-heading{display:flex;justify-content:space-between;align-items:center;margin-top:9px}.leaderboard-heading h3{margin:15px 0 8px}.leaderboard-heading>span{font-size:8px;letter-spacing:.5px;opacity:.5}.leaderboard-list{list-style:none;padding:0;margin:7px 0 20px}.leaderboard-list li{display:flex;align-items:center;gap:12px;padding:9px 12px;text-align:left;border-bottom:1px solid var(--line);font-size:12px}.leaderboard-list .rank{width:18px;opacity:.5;font-weight:700}.leaderboard-list .entry-name{font-weight:800;overflow-wrap:anywhere;flex:1}.leaderboard-list .entry-score{font-weight:800;font-variant-numeric:tabular-nums}.leaderboard-list li.current{background:rgba(76,184,73,.14);border-radius:7px;border-bottom-color:transparent}.leaderboard-list .empty-score{padding:15px 0;line-height:1.6;text-align:center;justify-content:center;opacity:.6;font-size:13px}.result-actions{display:flex;gap:9px}.result-actions>button{flex:1;min-height:47px;padding:12px;font-size:10px;letter-spacing:.1px}.result-actions>button svg{width:17px;height:17px}.secondary-button{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--black);background:var(--white);border-radius:10px;padding:14px;font-size:12px;font-weight:800;transition:background .18s}.secondary-button:hover{background:rgba(76,184,73,.12)}.back-home{margin-top:20px;opacity:.6}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.dialog-heading .icon-button{width:34px;height:34px}.dialog-heading svg{width:16px;height:16px}.dialog-copy{font-size:15px;line-height:1.6;opacity:.65}.admin-controls{margin-top:25px;border-top:1px solid var(--line);padding-top:18px;font-size:12px;line-height:1.6}.admin-controls summary{font-size:10px;font-weight:800;letter-spacing:1px;cursor:pointer}.confirm-actions{display:flex;gap:15px}.help-controls{display:flex;flex-direction:column;gap:10px;font-size:13px;border-block:1px solid var(--line);padding:14px 0}.help-controls kbd{margin-right:4px}.item-list{display:grid;grid-template-columns:1fr 1fr;gap:7px 16px}.item-list>span{display:flex;justify-content:space-between;gap:7px;font-size:12px;padding:5px 0}.item-list strong{color:var(--black)}#help-dialog>p{font-size:13px;line-height:1.7}.help-power{display:flex;gap:12px;background:rgba(76,184,73,.12);border-radius:12px;padding:15px;margin-top:18px}.help-power>b{display:grid;place-items:center;font-weight:900;letter-spacing:-2px;font-size:21px;background:var(--green);color:var(--white);width:46px;height:46px;flex-shrink:0;border-radius:12px}.help-power>span{font-size:12px;line-height:1.5}.help-power strong{display:block;margin-bottom:4px}.help-note{opacity:.6}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#share-fallback{margin-top:15px;text-align:left}
@keyframes count-in{0%{transform:scale(1.5);opacity:0}25%{opacity:1}85%{transform:scale(1);opacity:1}100%{transform:scale(.85);opacity:0}}@keyframes score-pop{50%{transform:scale(1.18)}}@keyframes power-pulse{50%{box-shadow:0 0 0 5px rgba(76,184,73,.2)}}@keyframes timer-beat{50%{transform:scale(1.1)}}@keyframes shake{25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}@keyframes reaction{0%{opacity:0;transform:translateY(10px) scale(.85)}15%,75%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-15px)}}
@media(min-width:1400px) and (min-height:880px){.main-layout{padding-top:54px;padding-bottom:45px}.court{max-height:590px}.intro{padding-right:20px}}
@media(max-height:800px) and (min-width:761px){.site-header{height:82px}.main-layout{padding-top:25px;gap:60px}.court{max-height:calc(100svh - 390px);min-height:320px}h1{font-size:82px;letter-spacing:-5px}.eyebrow{margin-bottom:17px}.tagline{font-size:24px;margin-top:18px}.intro-copy{font-size:14px;margin-bottom:20px}.quick-rules{margin-top:22px}.site-footer{padding:16px 0}.arcade{max-width:400px}.scoreboard{padding-top:14px;padding-bottom:13px}}
@media(max-width:1000px) and (min-width:761px){.app{padding:0 30px}.main-layout{gap:35px;padding-inline:0;grid-template-columns:1fr minmax(315px,400px)}h1{font-size:80px;letter-spacing:-5px}.eyebrow{font-size:8px}.tagline{font-size:23px}.quick-rules{gap:10px}.quick-rules>span{font-size:8px}}
@media(max-width:760px){.app{padding:0 18px}.site-header{height:73px;max-width:470px;margin:auto;border-bottom:0}.brand{gap:12px}.wordmark{font-size:38px;letter-spacing:-4px}.brand-divider{height:25px}.brand-name{font-size:12px}.brand-name>span{font-size:8px;letter-spacing:1.1px;margin-top:4px}.header-actions{gap:12px}.best-button{gap:7px}.best-button>span{font-size:7px;letter-spacing:.5px}.best-button>svg{width:18px;height:18px}.best-button strong{font-size:15px}.icon-button{width:36px;height:36px}.icon-button>svg{width:17px;height:17px}.main-layout{display:block;padding:0 0 16px}.intro{display:none}.arcade{max-width:430px;margin:0 auto}.arcade-topline{margin:0 4px 9px;font-size:8px}.game-shell{border-radius:19px;box-shadow:5px 5px 0 rgba(0,0,0,.06)}.scoreboard{padding:15px 20px 14px}.metric>strong{font-size:24px}.metric>span{font-size:8px}.court{aspect-ratio:2/3;max-height:calc(100svh - 288px);min-height:305px}.controller{padding:10px 12px}.direction-button{width:55px;height:44px}.desktop-hint{display:none}.mobile-hint{display:block;font-size:10px;letter-spacing:1.1px;font-weight:800}.control-hint>span:last-child{font-size:7px}.under-court{margin-top:15px;padding:0 2px}.under-court>span,.text-button{font-size:8px}.site-footer{display:none}.demo-label{display:none}.mobile-start{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:rgba(255,255,255,.92);z-index:5;padding:15px}.mobile-title{font-size:49px;font-weight:900;line-height:.95;letter-spacing:-3px}.mobile-title::first-line{color:var(--green)}.mobile-title>span{color:var(--green)}.mobile-start>p{font-size:17px;letter-spacing:-.5px;font-weight:800;margin:13px 0}.mobile-description{font-size:12px;line-height:1.5;opacity:.6;margin-bottom:20px}.mobile-start .play-button{width:225px;min-height:52px;font-size:12px}.mobile-start>small{font-size:10px;opacity:.6;margin-top:17px}.court-pause{right:10px;bottom:10px}.reaction{font-size:19px}.playing{overscroll-behavior:none;overflow:hidden}.playing .main-layout{padding-bottom:0}dialog{padding:21px;max-height:calc(100svh - 24px)}.results-dialog h2{font-size:40px}.final-score{font-size:56px}.round-stats{margin-bottom:14px}.results-dialog{padding-top:16px;padding-bottom:16px}.leaderboard-list li{padding-block:8px}}
@media(max-width:370px){.app{padding:0 10px}.brand-name{font-size:10px}.header-actions{gap:7px}.best-button svg{display:none}.mobile-title{font-size:43px}.mobile-description{margin-bottom:14px}.court{min-height:285px}.mobile-start>small{margin-top:12px}.under-court>span,.text-button{font-size:7px}.power-banner{font-size:14px}.power-banner>span{font-size:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.primary-button:hover{transform:none}}

/* Keep essential game controls readable and reachable on compact screens. */
.intro-copy{font-size:16px}.court-pause{width:44px;height:44px}.metric>span{font-size:10px}.quick-rules>span{font-size:10px}.under-court>span,.under-court>.text-button{font-size:10px}.mobile-hint{font-size:12px}.control-hint>span:last-child{font-size:9px}.results-dialog .mini-label,.leaderboard-heading>span,label{font-size:11px}.result-actions>button{font-size:12px}.round-stats>span{font-size:10px}.leaderboard-list li{font-size:14px}.form-status{font-size:13px}.save-button{min-height:44px;font-size:12px}.back-home{font-size:11px}.item-list>span{font-size:13px}
@media(max-width:760px){.under-court>span,.under-court>.text-button{font-size:9px}.mobile-hint{font-size:11px}.control-hint>span:last-child{font-size:8px}.mobile-description{font-size:14px}.mobile-start>small{font-size:12px}.mobile-start .play-button{font-size:14px}.metric>span{font-size:10px}.mobile-title{font-size:48px}.mobile-start>p{margin:11px 0}.mobile-description{margin-bottom:16px}.result-actions>button{font-size:11px}.round-stats>span{font-size:9px}}
@media(max-width:370px){.mobile-title{font-size:40px}.mobile-start>p{font-size:16px;margin:10px 0}.mobile-description{font-size:13px;margin-bottom:13px}.mobile-start>small{font-size:11px;margin-top:12px}.under-court>span,.under-court>.text-button{font-size:8px}.result-actions>button{font-size:10px}}
@media(max-height:480px) and (min-width:761px){.playing{overflow:hidden}.playing .site-header,.playing .intro,.playing .arcade-topline,.playing .under-court,.playing .site-footer{display:none}.playing .main-layout{display:block;padding:8px 0}.playing .arcade{max-width:620px}.playing .scoreboard{padding:8px 16px}.playing .metric>strong{font-size:20px}.playing .metric{gap:3px}.playing .court{min-height:0;height:calc(100svh - 121px);max-height:none;aspect-ratio:auto}.playing .controller{padding:7px 12px}.playing .game-shell{border-radius:14px}.playing .direction-button{height:38px}.playing .countdown-overlay>strong{font-size:100px}.playing .countdown-overlay>span{margin-top:8px}}

.court{width:100%}::selection{background:#4CB849;color:#000000}input,textarea{caret-color:#000000}
@media(max-width:760px){.main-layout{padding-bottom:8px}}
