.styles_playground__PjsKr{position:relative;isolation:isolate}.styles_controllerSlot__1nys8{position:relative;display:flex;width:28px;height:28px;margin-bottom:8px}.styles_controller__dxtj4{position:absolute;inset:-8px;width:44px;height:44px;border:0;background:transparent;padding:8px;cursor:grab;touch-action:none;border-radius:12px}.styles_controller__dxtj4:active{cursor:grabbing}.styles_controller__dxtj4:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.styles_controllerFace___MQYd{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--peach);color:var(--clay);border-radius:50%;transition:transform .18s,box-shadow .18s}.styles_controller__dxtj4:focus-visible .styles_controllerFace___MQYd,.styles_controller__dxtj4:hover .styles_controllerFace___MQYd{transform:rotate(-12deg) scale(1.12);box-shadow:0 3px 10px #c96a5230}.styles_hint__FNk6p{position:absolute;left:50%;top:-42px;z-index:3;width:165px;padding:7px 10px;border-radius:8px;background:var(--primary);color:var(--primary-foreground);font-size:10px;line-height:1.4;text-align:center;pointer-events:none;opacity:0;transform:translate(-50%,4px);transition:opacity .18s,transform .18s}.styles_controllerSlot__1nys8:focus-within .styles_hint__FNk6p,.styles_controllerSlot__1nys8:hover .styles_hint__FNk6p{opacity:1;transform:translate(-50%)}.styles_ghost__YS2Q_{position:fixed;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--peach);color:var(--clay);box-shadow:0 9px 20px #69453630;pointer-events:none;z-index:100;transform:translate(var(--drag-x),var(--drag-y)) rotate(var(--drag-rotation)) scale(1.15)}.styles_returning__y1J77{animation:styles_return-home__GyLpD .56s both}.styles_throwing__tZBRz{animation:styles_throw-away__4XouR .28s ease-in both}@keyframes styles_return-home__GyLpD{0%{transform:translate(var(--drag-x),var(--drag-y)) rotate(var(--drag-rotation)) scale(1.15)}65%{transform:translate(calc(var(--drag-x) * -.07),calc(var(--drag-y) * -.07)) rotate(-3deg) scale(1)}84%{transform:translate(calc(var(--drag-x) * .025),calc(var(--drag-y) * .025)) rotate(1deg)}to{transform:translate(0) rotate(0) scale(.64)}}@keyframes styles_throw-away__4XouR{to{transform:translate(var(--end-x),var(--end-y)) rotate(240deg) scale(.7);opacity:0}}.styles_reveal__0zDDl{position:absolute;inset:0;overflow:hidden;border-radius:12px;background:#faf9f3;box-shadow:0 20px 40px #173d3020;animation:styles_reveal-court__VJ61n .55s cubic-bezier(.22,.7,.25,1) both}@keyframes styles_reveal-court__VJ61n{0%{clip-path:circle(0 at var(--reveal-x) var(--reveal-y))}to{clip-path:circle(150% at var(--reveal-x) var(--reveal-y))}}.styles_loading__QSw53{height:100%;display:grid;place-items:center;background:#faf9f3;color:var(--primary);font-size:14px}.styles_game__Syq3T{height:100%;display:flex;flex-direction:column;padding:20px;background:#faf9f3;color:var(--primary);border:1px solid var(--border);border-radius:12px;overflow:hidden}.styles_gameHeader__vcTyJ{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-shrink:0}.styles_back__dzN7l{height:36px;width:36px;flex-shrink:0;border:1px solid var(--input);border-radius:50%;display:grid;place-items:center;color:var(--primary);background:var(--background);cursor:pointer;transition:background .15s}.styles_back__dzN7l:hover{background:var(--secondary)}.styles_back__dzN7l:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.styles_eyebrow__dEJ_z{display:flex;align-items:center;gap:8px;font-size:10px;font-weight:600;letter-spacing:1.8px}.styles_eyebrow__dEJ_z>span{width:6px;height:6px;background:var(--apricot);border-radius:50%}.styles_headerBall__VjgP3{font-size:26px;color:var(--clay);width:36px;text-align:right}.styles_scores__pJeCp{display:flex;align-items:center;justify-content:center;gap:25px;flex-shrink:0;padding:16px 0 4px}.styles_currentScore__erOyu{display:flex;flex-direction:column;align-items:center;min-width:94px}.styles_currentScore__erOyu>span{font-size:10px;text-transform:uppercase;letter-spacing:2px;color:var(--muted-foreground)}.styles_currentScore__erOyu strong{font-size:58px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.1;letter-spacing:-3px}.styles_bestScore__YVBXs{display:flex;gap:7px;align-items:center;padding:9px 13px;border:1px solid var(--border);border-radius:30px;background:var(--warning);color:var(--warning-foreground);font-size:11px}.styles_bestScore__YVBXs strong{padding-left:5px;font-variant-numeric:tabular-nums}.styles_scene__HOA2P{position:relative;flex:1;min-height:0;display:flex}.styles_court__9DH_P{display:block;width:100%;height:100%;overflow:hidden}.styles_ballControl__rQxn6{position:absolute;left:0;top:0;width:56px;height:56px;padding:0;border:0;border-radius:50%;background:transparent;cursor:grab;touch-action:none;outline:none}.styles_ballControl__rQxn6:active{cursor:grabbing}.styles_ballControl__rQxn6[aria-disabled=true]{cursor:default}.styles_ballControl__rQxn6:focus-visible{outline:2px dashed var(--primary);outline-offset:3px}.styles_gameFooter__ViJH6{flex-shrink:0;text-align:center;padding-top:10px}.styles_feedback__CwWbw{font-size:12px;min-height:33px;color:var(--muted-foreground);line-height:1.5}.styles_success__85gRs{color:var(--primary);font-weight:600}.styles_instructions__NAeaD{display:flex;justify-content:center;align-items:center;gap:6px;padding-top:9px;border-top:1px solid var(--border);font-size:10px;line-height:1.5;color:var(--muted-foreground)}.styles_keyboardHint__gWcRZ{display:block;font-size:9px;opacity:.8}@media (max-width:639px){.styles_game__Syq3T{padding:14px}.styles_scores__pJeCp{padding-top:10px;gap:16px}.styles_currentScore__erOyu strong{font-size:48px}.styles_eyebrow__dEJ_z{font-size:9px;letter-spacing:1.3px}}@media (prefers-reduced-motion:reduce){.styles_controllerFace___MQYd,.styles_hint__FNk6p{transition:none}.styles_controller__dxtj4:focus-visible .styles_controllerFace___MQYd,.styles_controller__dxtj4:hover .styles_controllerFace___MQYd{transform:none}.styles_reveal__0zDDl{animation:styles_fade-in__ncjNQ .12s both}.styles_returning__y1J77,.styles_throwing__tZBRz{animation:styles_fade-out__A_I7y .12s both}}@keyframes styles_fade-in__ncjNQ{0%{opacity:0}to{opacity:1}}@keyframes styles_fade-out__A_I7y{to{opacity:0}}