:root{font-family:Arial,Helvetica,sans-serif;color:#f4f7ef;background:#111b29;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #ff8d69;outline-offset:4px}[hidden]{display:none!important}.game{height:100svh;min-height:550px;max-width:1600px;margin:auto;display:flex;flex-direction:column;overflow:hidden}header{height:74px;flex-shrink:0;padding:0 36px;display:flex;align-items:center;justify-content:space-between}.brand{font-size:21px;letter-spacing:-1px;font-weight:900;text-decoration:none;color:#c7ff61}.tools{display:flex;align-items:center;gap:12px}.tools button{width:37px;height:37px;border:1px solid #445064;border-radius:50%;background:transparent;color:#fff;font-size:18px}.best-label{font-size:10px;letter-spacing:1px;color:#94a4b5;margin-right:8px}.best-label b{color:#fff;margin-left:5px;font-size:14px}#scene{position:relative;flex:1;min-height:260px;margin:0 20px;border-radius:22px;overflow:hidden;background:#a8d3d2;isolation:isolate}canvas{display:block;width:100%;height:100%}.hud{position:absolute;z-index:1;inset:26px 30px auto;display:flex;justify-content:space-between;pointer-events:none;color:#183b3d}.hud>div:first-child{display:flex;flex-direction:column;align-items:flex-start;gap:3px}#exercise{font-size:10px;font-weight:900;letter-spacing:2px}#score{font-size:60px;line-height:1;letter-spacing:-4px;font-variant-numeric:tabular-nums}#combo{background:#173f40;color:#c7ff61;padding:4px 9px;border-radius:5px;font-size:12px;font-weight:900}.timer{font-size:32px;font-weight:900;letter-spacing:-1px}.timer span{font-size:13px;margin-left:3px}.progress{position:absolute;z-index:1;right:30px;top:84px;display:flex;align-items:center;gap:7px;color:#183b3d;font-size:8px;font-weight:900;letter-spacing:1px}.progress>div{height:4px;width:65px;border-radius:4px;background:#ffffff70;overflow:hidden}#rank-fill{display:block;height:100%;width:0;background:#183b3d}#feedback{position:absolute;top:22%;left:0;right:0;text-align:center;font-size:clamp(20px,4vw,38px);font-weight:900;letter-spacing:-1px;text-shadow:0 2px #ffffff90;pointer-events:none;z-index:2}#energy{position:absolute;bottom:25px;left:50%;transform:translateX(-50%);display:flex;gap:7px}#energy i{font-style:normal;width:30px;height:30px;display:grid;place-items:center;border:1px solid #35565b70;border-radius:50%;color:#35565b80;font-weight:900;background:#ffffff30}#energy i.charged{background:#d2ff65;border-color:#d2ff65;color:#254336;box-shadow:0 0 20px #d2ff6590}#fever-label{position:absolute;bottom:65px;left:0;right:0;text-align:center;font-size:12px;letter-spacing:3px;font-weight:900;color:#23433b}.overlay{position:absolute;z-index:3;inset:0;display:flex;align-items:center;padding:40px 7%;background:linear-gradient(90deg,#c1dfdcf2,#c1dfdcaa 32%,transparent 67%);color:#183b3d}.start-card{max-width:360px}#card-label{font-size:9px;font-weight:900;letter-spacing:2px}h1{font-size:clamp(56px,7vw,102px);font-weight:900;letter-spacing:-6px;line-height:.85;margin:22px 0}h1 em{font-style:normal;color:#f5ffdd;text-shadow:3px 3px #183b3d}#card-copy{font-size:13px;margin:18px 0;color:#35565b}#start{border:0;border-radius:12px;background:#c7ff61;color:#153a32;padding:19px 24px;width:235px;display:flex;justify-content:space-between;font-size:17px;font-weight:900;box-shadow:0 5px 0 #7ea43c}#start:hover{background:#dbff9a}#card-foot{display:block;font-size:10px;margin-top:18px;color:#35565b}#share{border:0;background:transparent;color:#183b3d;text-decoration:underline;margin-top:15px;padding:0;font-size:12px}#share-status{font-size:11px;max-width:300px;overflow-wrap:anywhere}.controls{width:min(500px,90%);margin:20px auto 0;flex-shrink:0}.meter-heading{display:flex;justify-content:space-between;font-size:9px;font-weight:800;letter-spacing:1.5px;color:#a6b5c5;margin-bottom:10px}.meter{position:relative;height:24px;background:#293646;border-radius:7px;overflow:hidden}.zone{position:absolute;left:37%;width:26%;height:100%;background:#85b941;display:flex;justify-content:center}.zone div{width:31%;background:#d6ff91}#marker{position:absolute;left:50%;width:5px;height:100%;background:white;transform:translateX(-50%);box-shadow:0 0 9px #ffffff70}#rep{width:100%;background:#c7ff61;color:#1c342a;border:0;border-radius:12px;font-size:19px;font-weight:900;letter-spacing:3px;padding:16px;margin-top:12px;box-shadow:0 4px 0 #6a9130;touch-action:manipulation}#rep span{float:right}#rep:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 #6a9130}#rep:disabled{opacity:.3;cursor:default}footer{display:flex;justify-content:space-between;padding:20px 36px 16px;flex-shrink:0;font-size:9px;color:#8092a8;letter-spacing:.3px}footer a{color:inherit;text-decoration:none}body.overdrive #scene{box-shadow:0 0 0 3px #c7ff61,0 0 40px #c7ff6130}body.overdrive .zone{background:#ffb05f}body.overdrive .zone div{background:#ffe9b1}@media(max-width:600px){header{padding:0 20px;height:60px}.brand{font-size:18px}.best-label{font-size:8px}.tools{gap:8px}#scene{margin:0 10px;border-radius:16px}.hud{inset:20px 20px auto}#score{font-size:43px;letter-spacing:-2px}#exercise{font-size:8px;letter-spacing:1px}.progress{right:20px;top:64px;font-size:7px;gap:4px}.progress>div{width:40px}.timer{font-size:26px}.overlay{padding:30px;background:linear-gradient(90deg,#c1dfdce6,#c1dfdc80 50%,#c1dfdc00)}h1{font-size:70px;letter-spacing:-4px}#card-label{font-size:8px}#card-copy{font-size:12px}#start{width:195px;padding:17px 20px}.controls{margin-top:17px}footer{padding:18px 20px 14px;font-size:8px}#feedback{top:28%;font-size:24px}#energy{bottom:18px}#fever-label{bottom:56px}#card-title.result{font-size:52px}}

#app-link{display:block;width:fit-content;margin-top:20px;padding-top:12px;border-top:1px solid #183b3d25;font-size:11px;color:#35565b;text-decoration:none}#app-link:hover{text-decoration:underline}

.brand-block{display:flex;align-items:center;gap:22px}.creator{display:flex;align-items:center;gap:9px;color:#f4f7ef;text-decoration:none;font-size:24px;font-weight:800;letter-spacing:-.6px}.creator img{border-radius:8px;flex-shrink:0}.creator small{font-size:14px;font-weight:500;color:#a6b5c5;letter-spacing:0}.creator:hover{color:#c7ff61}@media(max-width:600px){header{height:88px;padding:0 16px}.brand-block{align-items:flex-start;flex-direction:column;gap:6px}.brand-block .brand{font-size:11px;letter-spacing:.4px}.creator{font-size:22px;gap:7px}.creator img{width:29px;height:29px}.creator small{font-size:13px}.tools{gap:6px}.tools button{width:33px;height:33px}.best-label{margin-right:0}}
