:root{color:#071840;font-synthesis:none;text-rendering:optimizelegibility;--navy:#071840;--blue:#075ff7;--coral:#ff4e45;--mint:#12a978;--pale-mint:#e3f7ef;--line:#d9dfeb;--muted:#4f5b75;--display:"Arial Rounded MT Bold", "Trebuchet MS", "Arial Black", sans-serif;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;color:var(--navy);background:#fff;margin:0}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}a:focus-visible{outline-offset:3px;outline:4px solid #075ff759}button:focus-visible{outline-offset:3px;outline:4px solid #075ff759}canvas:focus-visible{outline-offset:3px;outline:4px solid #075ff759}summary:focus-visible{outline-offset:3px;outline:4px solid #075ff759}.site-shell{min-height:100vh}.site-header{border-bottom:2px solid var(--navy);justify-content:space-between;align-items:center;gap:24px;min-height:72px;padding:12px clamp(20px,3vw,44px);display:flex}.brand,h1,h2,.round-label,.round-score{font-family:var(--display);letter-spacing:-.035em;font-weight:900}.brand{font-size:clamp(1.5rem,2.5vw,2.25rem);line-height:1;text-decoration:none}.site-header nav a{border:2px solid var(--navy);border-radius:8px;justify-content:center;align-items:center;min-height:44px;padding:10px 18px;font-size:.95rem;font-weight:800;text-decoration:none;transition:background-color .15s,color .15s;display:inline-flex}.site-header nav a:hover{color:#fff;background:var(--navy)}main{width:min(1440px,100%);margin:0 auto}.play-hero{padding:clamp(36px,4vw,58px) clamp(20px,3.4vw,52px) 44px}.hero-copy{margin-bottom:22px}h1{max-width:980px;margin:0;font-size:clamp(2.75rem,4.3vw,4.4rem);line-height:.98}.hero-copy>p{color:var(--navy);margin:16px 0 0;font-size:clamp(1.05rem,1.7vw,1.35rem);line-height:1.5}.game-layout{grid-template-columns:minmax(0,1fr) minmax(260px,340px);align-items:stretch;gap:clamp(28px,4vw,62px);display:grid}.play-column{min-width:0}.plot-frame{position:relative}.scatter-canvas{aspect-ratio:1.44;border:2px solid var(--navy);touch-action:none;cursor:grab;background:#fff;border-radius:10px;width:100%;display:block;box-shadow:0 8px 24px #0718400f}.scatter-canvas:active{cursor:grabbing}.plot-legend{border:1px solid var(--line);color:var(--navy);background:#fffffff0;border-radius:6px;gap:12px;padding:8px 10px;font-size:.72rem;font-weight:800;display:flex;position:absolute;bottom:14px;right:14px}.plot-legend span{align-items:center;gap:5px;display:inline-flex}.plot-legend i{background:currentColor;width:17px;height:3px;display:inline-block}.legend-player{color:var(--coral)}.legend-ols{color:var(--mint)}.legend-residual{color:#78cdb0;height:1px!important}.score-rail{border-left:1px solid var(--line);flex-direction:column;gap:18px;min-width:0;padding:18px 0 6px clamp(28px,3vw,48px);display:flex}.desktop-score{border-bottom:1px solid #9aa6bd;padding-bottom:24px}.round-label,.total-label{margin:0}.round-label{font-size:clamp(2rem,3vw,3rem);line-height:1.05}.total-label{margin-top:20px;font-size:1.65rem;font-weight:800}.total-label strong{color:var(--coral);margin-left:8px;font-size:1.12em}.button{border:2px solid var(--navy);width:100%;min-height:58px;color:var(--navy);text-align:center;cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;padding:12px 16px;font:800 1.05rem/1.1 ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;text-decoration:none;transition:transform .12s,box-shadow .12s,background-color .12s;display:inline-flex}.button:hover{transform:translateY(-1px);box-shadow:0 6px 14px #0718401f}.button:active{box-shadow:none;transform:translateY(1px)}.button-primary{border-color:var(--coral);background:var(--coral);color:#fff;font-size:1.18rem}.button-link{min-height:44px;color:var(--blue);text-underline-offset:4px;border-color:#0000;text-decoration:underline}.keyboard-hint{border:2px dashed #075ff78c;border-radius:8px;grid-template-columns:minmax(70px,auto) 1fr;align-items:center;gap:12px;margin:auto 0 0;padding:16px;font-size:.84rem;font-weight:700;line-height:1.4;display:grid}.key-cluster{border:1px solid var(--navy);letter-spacing:.1em;background:#fff;border-radius:6px;justify-content:center;align-items:center;min-height:42px;padding:10px;display:inline-flex}.round-result{border-bottom:1px solid var(--line);padding:14px 0 2px}.round-result>p{color:var(--muted);margin:0 0 12px;font-size:.95rem;font-weight:700}.round-result .round-score{color:var(--mint);margin-bottom:4px;font-size:3rem;line-height:1}.round-score span{color:var(--muted);margin-left:4px;font:800 1rem/1 ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.round-result dl{grid-template-columns:1fr 1fr;gap:10px;margin:0 0 12px;display:grid}.round-result dl div{background:var(--pale-mint);border-radius:6px;padding:10px}.round-result dt{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:800}.round-result dd{margin:3px 0 0;font-size:1rem;font-weight:900}.mobile-score{display:none}.content-band{border-top:1px solid var(--line);margin:0 clamp(20px,3.4vw,52px);padding:clamp(34px,4.5vw,66px) 0}.content-band h2{margin:0 0 18px;font-size:clamp(2rem,3vw,3.2rem);line-height:1}.content-band p,.content-band li{color:#2e3b59;font-size:1rem;line-height:1.75}.content-band p{max-width:780px}.content-band ol{margin:0;padding-left:1.3rem}.content-two-up{grid-template-columns:1fr 1fr;gap:clamp(42px,7vw,110px);display:grid}.explainer{padding-right:min(22vw,290px)}.faq details{border-top:1px solid var(--line);max-width:900px}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;padding:20px 34px 20px 0;font-size:1.05rem;font-weight:900;list-style:none;position:relative}.faq summary:after{content:"+";color:var(--coral);font-size:1.4rem;position:absolute;right:6px}.faq details[open] summary:after{content:"−"}.faq details p{margin-top:0}.site-footer{border-top:2px solid var(--navy);width:min(1440px,100%);color:var(--muted);justify-content:space-between;align-items:center;gap:30px;margin:0 auto;padding:28px clamp(20px,3.4vw,52px) 42px;font-size:.86rem;display:flex}.site-footer p{margin:0}.site-footer nav{flex-wrap:wrap;gap:16px;display:flex}.site-footer a{text-underline-offset:3px;font-weight:800}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:900px){.game-layout{grid-template-columns:minmax(0,1fr) 250px;gap:24px}.score-rail{padding-left:24px}.round-label{font-size:2rem}.keyboard-hint{grid-template-columns:1fr}}@media (max-width:680px){.site-header{min-height:58px;padding:10px 18px}.brand{font-size:1.42rem}.site-header nav a{border-width:1.5px;min-height:40px;padding:8px 10px;font-size:.78rem}.play-hero{padding:34px 15px 30px}h1{font-size:clamp(2.35rem,11.7vw,3.15rem);line-height:.98}.hero-copy{margin-bottom:26px}.hero-copy>p{margin-top:16px;font-size:1rem}.mobile-score{font-family:var(--display);justify-content:space-between;align-items:center;gap:18px;margin:0 0 16px;font-size:1.03rem;font-weight:900;display:flex}.mobile-score strong{color:var(--coral)}.game-layout{flex-direction:column;gap:16px;display:flex}.scatter-canvas{aspect-ratio:1;border-radius:5px;box-shadow:0 5px 16px #0718400d}.score-rail{border:0;gap:12px;padding:0}.desktop-score,.keyboard-hint{display:none}.button{border-radius:5px;min-height:56px;font-size:1.02rem}.button-primary{min-height:62px;font-size:1.16rem}.button-link{min-height:44px;margin-top:-2px}.round-result{padding:12px 0 0}.round-result .round-score{font-size:2.5rem}.plot-legend{gap:7px;max-width:calc(100% - 12px);padding:6px 7px;font-size:.62rem;bottom:6px;right:6px}.content-band{margin:0 18px;padding:38px 0}.content-two-up{grid-template-columns:1fr;gap:36px}.explainer{padding-right:0}.content-band h2{font-size:2rem}.content-band p,.content-band li{font-size:.98rem;line-height:1.68}.site-footer{flex-direction:column;align-items:flex-start;gap:18px;padding:26px 18px 36px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}}
