.shuttle-game{color:#293e32;min-height:100vh;font-family:var(--font-sans),system-ui,sans-serif;background:#f3e8cf;padding:0 24px 44px}.shuttle-top{border-bottom:1px solid #35543d25;justify-content:space-between;align-items:center;max-width:1120px;min-height:62px;margin:auto;display:flex}.shuttle-top a{color:inherit;align-items:center;gap:6px;font-size:14px;font-weight:850;text-decoration:none;display:flex}.shuttle-top svg{width:18px}.shuttle-top>span{letter-spacing:1.5px;font-size:13px;font-weight:950}.shuttle-top small{color:#71806e;font-weight:600}.shuttle-shell{max-width:1120px;margin:auto}.shuttle-heading{justify-content:space-between;align-items:center;padding:25px 0 20px;display:flex}.shuttle-heading p{color:#a24435;margin:0 0 5px;font-size:13px;font-weight:900}.shuttle-heading h1{margin:0;font-size:38px;font-weight:950;line-height:1}.shuttle-heading>button{color:#a24435;cursor:pointer;background:#fffaf0;border:1px solid #35543d25;border-radius:50%;place-items:center;width:46px;height:46px;display:grid}.shuttle-heading>button:disabled{opacity:.3}.shuttle-layout{grid-template-columns:minmax(0,760px) minmax(260px,1fr);align-items:start;gap:34px;display:grid}.shuttle-board{background:#fffaf0;border:1px solid #35543d20;border-radius:24px;overflow:hidden;box-shadow:0 18px 42px #594a311c}.shuttle-hud{grid-template-columns:repeat(5,1fr);padding:11px 15px;display:grid}.shuttle-hud>div:not(:first-child){border-left:1px solid #35543d18;padding-left:13px}.shuttle-hud small{color:#6b776a;font-size:11px;display:block}.shuttle-hud strong{font-variant-numeric:tabular-nums;font-size:19px;font-weight:950;line-height:1.35;display:block}.shuttle-hud em{font-size:11px;font-style:normal;font-weight:550}.shuttle-progress{background:#d8cda5;height:5px}.shuttle-progress i{background:linear-gradient(90deg,#39785a,#e7b541,#b84635);height:100%;transition:width .2s;display:block}.shuttle-court{aspect-ratio:720/440;touch-action:none;cursor:pointer;isolation:isolate;background:linear-gradient(#9dd6cb 0 41%,#d8bd73 41% 100%);min-height:390px;position:relative;overflow:hidden}.shuttle-sky{background:radial-gradient(circle at 18% 15%,#fff9 0 4%,#0000 4.5%),linear-gradient(165deg,#0000 0 61%,#53794a30 61% 64%,#0000 64%);position:absolute;inset:0}.shuttle-wall{color:#a13b31;background:#efe1bc;border:5px solid #7c5d3d;border-radius:4px 4px 14px 14px;place-items:center;width:13%;height:33%;font-family:serif;font-size:24px;font-weight:950;display:grid;position:absolute;top:8%;left:4%;box-shadow:inset 0 0 0 4px #b44535}.shuttle-net{filter:drop-shadow(0 4px 2px #263d2930);background:repeating-linear-gradient(90deg,#fff9 0 2px,#0000 2px 26px),repeating-linear-gradient(0deg,#fff9 0 2px,#0000 2px 17px);border-top:4px solid #f8f1dd;border-bottom:3px solid #f8f1dd;height:11%;position:absolute;top:46%;left:4%;right:4%}.shuttle-opponent{grid-template-columns:repeat(3,1fr);align-items:end;height:19%;display:grid;position:absolute;top:20%;left:13%;right:13%}.shuttle-opponent .lane{background:#293e3244;border-radius:99px;height:9px;margin:0 11%}.shuttle-opponent .lane-0{grid-column:1}.shuttle-opponent .lane-1{grid-column:2}.shuttle-opponent .lane-2{grid-column:3}.shuttle-opponent .lane:after{content:"";background:#7b3e32;border-radius:50% 50% 35% 35%;width:30px;height:46px;margin:-44px auto 0;display:block;box-shadow:0 -14px 0 -6px #263b30}.shuttle-opponent span{text-align:center;color:#6d3b33;width:100%;font-size:11px;font-weight:900;position:absolute;top:-16px}.shuttle-opponent .lane-0,.shuttle-opponent .lane-1,.shuttle-opponent .lane-2{background:#b93d31;box-shadow:0 0 0 7px #f6cb5d55}.shuttle-player{text-align:center;width:14%;position:absolute;bottom:9%;left:43%}.shuttle-player i{background:#276a52;border-radius:50% 50% 38% 38%;width:42px;height:58px;margin:auto;display:block;box-shadow:0 -18px 0 -8px #2d4437,16px 17px 0 -13px #d8e4bc,-16px 17px 0 -13px #d8e4bc}.shuttle-player span{font-size:11px;font-weight:950}.shuttlecock{z-index:3;color:#b84232;background:#fff7df;border-radius:50%;place-items:center;width:42px;height:42px;margin:-21px;transition:left 80ms linear,top 80ms linear;display:grid;position:absolute;box-shadow:0 6px 12px #30452f44}.shuttlecock svg{width:24px}.timing-rail{color:#fff;background:#324b3d;border-radius:99px;height:20px;position:absolute;bottom:8%;left:10%;right:10%;box-shadow:0 8px 18px #324b3d44}.timing-rail i{background:#e9bd47;border-radius:99px;position:absolute;top:0;bottom:0}.timing-rail b{background:#fff;border-radius:5px;width:5px;height:30px;margin-left:-2px;position:absolute;top:-5px;box-shadow:0 0 0 2px #273d31}.timing-rail span{color:#31483a;font-size:12px;font-weight:950;position:absolute;top:-26px;left:50%;transform:translate(-50%)}.lane-hints{grid-template-columns:repeat(3,1fr);gap:8px;display:grid;position:absolute;bottom:6%;left:10%;right:10%}.lane-hints span{text-align:center;color:#7e4338;background:#fff7dfdc;border-radius:10px;padding:8px;font-size:12px;font-weight:950}.shuttle-overlay{z-index:5;background:#31493978;place-items:center;padding:20px;display:grid;position:absolute;inset:0}.shuttle-dialog{text-align:center;background:#fffaf0f6;border:1px solid #fff;border-radius:21px;max-width:540px;padding:25px 26px;box-shadow:0 16px 40px #34443244}.shuttle-dialog>span,.shuttle-overline{letter-spacing:1.7px;color:#a24435;font-size:12px;font-weight:950}.shuttle-dialog h2{margin:12px 0 10px;font-size:31px;font-weight:950;line-height:1.22}.shuttle-dialog p{color:#667364;margin:0 0 17px;font-size:15px;line-height:1.62}.shuttle-dialog>button,.shuttle-upgrades button,.shuttle-controls button{color:#fff;cursor:pointer;touch-action:manipulation;background:#a74638;border:0;border-radius:14px;font-weight:900}.shuttle-dialog>button{align-items:center;gap:8px;min-height:54px;padding:0 22px;display:inline-flex}.shuttle-dialog small{color:#6a7767;margin-top:14px;line-height:1.5;display:block}.shuttle-upgrades{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.shuttle-upgrades button{flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:116px;padding:10px 8px;display:flex}.shuttle-upgrades button:nth-child(2){background:#36735a}.shuttle-upgrades button:nth-child(3){background:#b88632}.shuttle-upgrades small{color:#fff7df;margin:0}.shuttle-controls{grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 14px 0;display:grid}.shuttle-controls button{min-height:50px}.shuttle-controls .tap-control{grid-column:1/-1;justify-content:center;align-items:center;gap:8px;display:flex}.shuttle-controls button:nth-child(2){background:#36735a}.shuttle-controls button:nth-child(3){background:#b88632}.shuttle-notice{text-align:center;color:#667364;min-height:32px;margin:9px 15px;font-size:13px}.shuttle-side{padding-top:10px}.shuttle-side h2{margin:10px 0 13px;font-size:28px;font-weight:950;line-height:1.25}.shuttle-side>p{color:#667364;margin:0 0 20px;font-size:15px;line-height:1.7}.shuttle-tip{border-top:1px solid #35543d20;align-items:flex-start;gap:12px;padding:14px 0;display:flex}.shuttle-tip>svg{color:#a24435;flex:none;margin-top:2px}.shuttle-tip p{margin:0}.shuttle-tip b{margin-bottom:4px;font-size:14px;display:block}.shuttle-tip span{color:#667364;font-size:13px;line-height:1.55;display:block}.shuttle-side details{border-top:1px solid #35543d20;margin-top:12px;padding-top:13px}.shuttle-side summary{cursor:pointer;font-size:14px;font-weight:900}.shuttle-side details p{color:#667364;font-size:13px;line-height:1.65}.shuttle-batch{display:none}.shuttle-game button:focus-visible{outline-offset:3px;outline:3px solid #e5b63e}.shuttle-game a:focus-visible{outline-offset:3px;outline:3px solid #e5b63e}.shuttle-game summary:focus-visible{outline-offset:3px;outline:3px solid #e5b63e}.shuttle-court:focus-visible{outline-offset:3px;outline:3px solid #e5b63e}.shuttle-game .game-session{margin-top:24px}@media (max-width:820px){.shuttle-game{padding:0 12px 30px}.shuttle-top{min-height:50px}.shuttle-heading{padding:16px 0 13px}.shuttle-heading h1{font-size:30px}.shuttle-layout{flex-direction:column;gap:28px;max-width:760px;margin:auto;display:flex}.shuttle-board{border-radius:19px;width:100%}.shuttle-side{padding:0 7px}.shuttle-side h2{font-size:24px}.shuttle-game .game-session{max-width:760px;margin:22px auto 0}.shuttle-court{min-height:360px}.shuttle-dialog>button,.shuttle-upgrades button,.shuttle-controls button{min-height:60px}}@media (max-width:520px){.shuttle-game{padding-inline:7px}.shuttle-top>span{font-size:10px}.shuttle-top small{display:none}.shuttle-heading h1{font-size:27px}.shuttle-hud{padding:8px 6px}.shuttle-hud>div:not(:first-child){padding-left:5px}.shuttle-hud small{font-size:9px}.shuttle-hud strong{font-size:15px}.shuttle-hud em{font-size:9px}.shuttle-court{min-height:290px}.shuttle-overlay{padding:10px}.shuttle-dialog{padding:19px 14px}.shuttle-dialog h2{font-size:27px}.shuttle-dialog p{font-size:14px}.shuttle-upgrades{grid-template-columns:1fr}.shuttle-upgrades button{flex-direction:row;min-height:64px}.shuttle-upgrades small{margin:0}.shuttle-notice{font-size:12px}}@media (max-width:360px){.shuttle-heading p{font-size:11px}.shuttle-heading h1{font-size:24px}.shuttle-heading>button{width:42px;height:42px}.shuttle-hud em{display:none}.shuttle-court{min-height:245px}.shuttle-dialog h2{font-size:24px}.shuttle-controls{margin-inline:7px}}@media (prefers-reduced-motion:reduce){.shuttle-progress i,.shuttlecock{transition:none}}
