.gx-rhythm{isolation:isolate;width:100%;max-width:960px;margin:20px auto;color:#e9f6ff;font:14px/1.4 system-ui,sans-serif}.gx-rhythm *{box-sizing:border-box}.gx-rhythm [hidden]{display:none!important}.gx-rhythm p{margin:0}.gx-rhythm button,.gx-rhythm select{font:inherit;min-width:44px;min-height:44px;padding:8px 10px;color:#eefaff;border:1px solid #6e9db8;border-radius:8px;background:linear-gradient(#203e5a,#142a45);cursor:pointer;touch-action:manipulation}.gx-rhythm button:focus-visible,.gx-rhythm select:focus-visible{outline:3px solid #ffcf77;outline-offset:2px}.gx-rhythm button:disabled,.gx-rhythm select:disabled{cursor:default;opacity:.5}.gx-rhythm button:hover:not(:disabled){border-color:#b7f2ff}
.gx-rhythm .rz-shell{position:relative;display:flex;flex-direction:column;gap:8px;padding:12px;border:2px solid #3e91ad;border-radius:15px;background:linear-gradient(140deg,#15294b,#080e25 70%,#17324a);box-shadow:0 10px 30px #04122955;overflow:hidden}.gx-rhythm .rz-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.gx-rhythm .rz-brand small{display:block;font-size:9px;letter-spacing:.13em;color:#8ed9eb;font-weight:800}.gx-rhythm .rz-brand strong{display:block;font-size:28px;line-height:1.1;font-weight:950;color:#fff3cc;text-shadow:0 2px #763c1c}.gx-rhythm .rz-tools{display:flex;gap:5px}.gx-rhythm .rz-tools button{font-size:11px;padding:5px 7px}.gx-rhythm .rz-hud{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:6px}.gx-rhythm .rz-hud>div{min-width:0;border:1px solid #47788e;border-radius:7px;padding:4px 8px;background:#07182b}.gx-rhythm .rz-hud span{display:block;font-size:10px;color:#b4d7e7}.gx-rhythm .rz-hud strong{display:block;font-size:24px;line-height:1.2;white-space:nowrap;color:#f1fcff;font-variant-numeric:tabular-nums}.gx-rhythm .rz-song{display:grid;grid-template-columns:1fr auto;gap:3px 6px;padding:0 3px}.gx-rhythm .rz-song strong{font-size:12px;color:#d6efff}.gx-rhythm .rz-song span{font-size:11px;color:#ffda99}.gx-rhythm .rz-bar{grid-column:1/-1;height:5px;border-radius:5px;background:#253e56;overflow:hidden}.gx-rhythm .rz-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#65dafa,#f9ca78)}
.gx-rhythm .rz-stage{position:relative;height:510px;min-height:0;border:1px solid #36758e;border-radius:12px;overflow:hidden;background:#090f29}.gx-rhythm .rz-canvas{display:block;width:100%;height:100%;touch-action:none}.gx-rhythm .rz-pad{touch-action:none;min-height:68px;background:linear-gradient(#2a617c,#173b59);border:2px solid #76e0f2;border-radius:50% / 22%;box-shadow:inset 0 3px #b8f2ff44,0 3px #020d1b;color:#ecfcff;font-size:22px;font-weight:950;letter-spacing:.04em;user-select:none}.gx-rhythm .rz-pad.is-down{border-color:#ffe0a0;background:linear-gradient(#7f4d26,#4f321e);color:#fff0c9;box-shadow:inset 0 2px 12px #fff1ad44,0 0 18px #e7a34366}.gx-rhythm .rz-footer{display:flex;justify-content:space-between;gap:6px;color:#bddeeb;font-size:10px}.gx-rhythm .rz-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.gx-rhythm .rz-panel{position:absolute;inset:8px;display:flex;flex-direction:column;justify-content:center;gap:12px;padding:20px;border:1px solid #70bad2;border-radius:12px;background:linear-gradient(145deg,#142942fa,#0b142bfc 75%,#244354fc);overflow:auto;overscroll-behavior:contain;z-index:5}.gx-rhythm .rz-panel>*{flex-shrink:0}.gx-rhythm .rz-panel-bar{display:flex;align-items:center;gap:10px;min-height:44px}.gx-rhythm h2.rz-title{flex:1;min-width:0;font:900 25px/1.3 system-ui,sans-serif;color:#fff1c9!important;text-align:center;background:none!important;border:0!important;padding:0!important;margin:0!important;box-shadow:none!important}.gx-rhythm h2.rz-title:before,.gx-rhythm h2.rz-title:after{display:none!important;content:none!important}.gx-rhythm .rz-back{flex:0 0 44px;width:44px;height:44px;padding:4px;font-size:11px}.gx-rhythm .rz-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.gx-rhythm .rz-modes button{min-width:0;font-size:13px;font-weight:800;padding:8px 4px}.gx-rhythm .rz-modes button[aria-pressed=true]{background:linear-gradient(#38758e,#244d66);border-color:#9ceafd;box-shadow:inset 0 0 0 1px #b8f2ff}.gx-rhythm .rz-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gx-rhythm .rz-options>label{display:block;min-width:0;color:#cce6f4;font-size:11px}.gx-rhythm .rz-options>label:first-child{grid-column:1/-1}.gx-rhythm .rz-options select{display:block;width:100%;margin-top:3px;min-width:0;color:#eafbff;background:#142b43;font-size:14px}.gx-rhythm .rz-options option{background:#142b43;color:#effaff}.gx-rhythm .rz-note{text-align:center;font-size:12px;color:#c5dfec}.gx-rhythm button.rz-primary{min-height:48px;border:1px solid #ffdb94;background:linear-gradient(#9b4d24,#864b22);color:#fff7df;font-size:17px;font-weight:950;box-shadow:0 3px #3b200e}.gx-rhythm .rz-points{text-align:center;color:#ffde9f}.gx-rhythm .rz-points strong{display:block;font-size:50px;line-height:1.1;font-weight:950;letter-spacing:-.03em}.gx-rhythm .rz-points span{font-size:10px;letter-spacing:.15em}.gx-rhythm .rz-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.gx-rhythm .rz-stats>div{min-width:0;padding:7px 9px;border:1px solid #527a92;border-radius:6px;background:#081a30}.gx-rhythm .rz-stats span{display:block;font-size:10px;color:#bbdbe9}.gx-rhythm .rz-stats strong{display:block;font-size:22px;color:#effcff;white-space:nowrap}.gx-rhythm .rz-actions{display:flex;gap:8px}.gx-rhythm .rz-actions button{flex:1}
.gx-rhythm .rz-shell:fullscreen,.gx-rhythm .rz-expanded{position:fixed;inset:0;width:100vw;width:100dvw;height:100vh;height:100dvh;max-width:none;margin:0;padding:8px;padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));border:0;border-radius:0;z-index:2147483647;gap:6px}.gx-rhythm .rz-shell:fullscreen .rz-stage,.gx-rhythm .rz-expanded .rz-stage{height:auto;flex:1;min-height:0}.gx-rhythm.rz-portal{position:fixed;inset:0;max-width:none;margin:0;z-index:2147483647}
@media(max-width:600px){.gx-rhythm .rz-shell{padding:8px;gap:7px}.gx-rhythm .rz-brand strong{font-size:23px}.gx-rhythm .rz-brand small{font-size:7px}.gx-rhythm .rz-hud strong{font-size:21px}.gx-rhythm .rz-hud>div{padding:4px 6px}.gx-rhythm .rz-stage{height:480px}.gx-rhythm .rz-panel{padding:14px;gap:10px}.gx-rhythm h2.rz-title{font-size:22px}.gx-rhythm .rz-modes button{font-size:11px}.gx-rhythm .rz-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.gx-rhythm .rz-stats strong{font-size:20px}.gx-rhythm .rz-points strong{font-size:42px}.gx-rhythm .rz-pad{min-height:64px;font-size:20px}.gx-rhythm .rz-footer{font-size:9px}}
@media(max-width:359px){.gx-rhythm .rz-brand strong{font-size:19px}.gx-rhythm .rz-brand small{font-size:6px}.gx-rhythm .rz-tools button{font-size:10px;padding:5px}.gx-rhythm .rz-hud strong{font-size:18px}.gx-rhythm .rz-panel{padding:10px}.gx-rhythm h2.rz-title{font-size:19px}.gx-rhythm .rz-modes button{font-size:10px}.gx-rhythm .rz-note{font-size:11px}.gx-rhythm .rz-options select{font-size:13px}}
@media(max-height:650px){.gx-rhythm .rz-shell:fullscreen .rz-brand small,.gx-rhythm .rz-expanded .rz-brand small{display:none}.gx-rhythm .rz-shell:fullscreen .rz-hud strong,.gx-rhythm .rz-expanded .rz-hud strong{font-size:18px}.gx-rhythm .rz-shell:fullscreen .rz-pad,.gx-rhythm .rz-expanded .rz-pad{min-height:54px}.gx-rhythm .rz-shell:fullscreen .rz-panel,.gx-rhythm .rz-expanded .rz-panel{gap:8px;padding:12px}.gx-rhythm .rz-shell:fullscreen .rz-stats>div,.gx-rhythm .rz-expanded .rz-stats>div{padding:5px 7px}}
@media(max-height:500px) and (orientation:landscape){.gx-rhythm .rz-shell:fullscreen,.gx-rhythm .rz-expanded{display:grid;grid-template-columns:185px minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr) auto auto;gap:5px}.gx-rhythm .rz-shell:fullscreen .rz-head,.gx-rhythm .rz-expanded .rz-head{grid-column:1;grid-row:1;display:block}.gx-rhythm .rz-shell:fullscreen .rz-brand strong,.gx-rhythm .rz-expanded .rz-brand strong{font-size:21px}.gx-rhythm .rz-shell:fullscreen .rz-tools,.gx-rhythm .rz-expanded .rz-tools{margin-top:5px}.gx-rhythm .rz-shell:fullscreen .rz-hud,.gx-rhythm .rz-expanded .rz-hud{grid-column:1;grid-row:2;gap:3px}.gx-rhythm .rz-shell:fullscreen .rz-hud strong,.gx-rhythm .rz-expanded .rz-hud strong{font-size:13px}.gx-rhythm .rz-shell:fullscreen .rz-hud span,.gx-rhythm .rz-expanded .rz-hud span{font-size:8px}.gx-rhythm .rz-shell:fullscreen .rz-hud>div,.gx-rhythm .rz-expanded .rz-hud>div{padding:3px}.gx-rhythm .rz-shell:fullscreen .rz-song,.gx-rhythm .rz-expanded .rz-song{grid-column:1;grid-row:3;align-content:center}.gx-rhythm .rz-shell:fullscreen .rz-song strong,.gx-rhythm .rz-expanded .rz-song strong{font-size:11px}.gx-rhythm .rz-shell:fullscreen .rz-song span,.gx-rhythm .rz-expanded .rz-song span{font-size:9px}.gx-rhythm .rz-shell:fullscreen .rz-stage,.gx-rhythm .rz-expanded .rz-stage{grid-column:2;grid-row:1/-1;min-width:0}.gx-rhythm .rz-shell:fullscreen .rz-pad,.gx-rhythm .rz-expanded .rz-pad{grid-column:1;grid-row:4;min-height:58px;font-size:17px}.gx-rhythm .rz-shell:fullscreen .rz-footer,.gx-rhythm .rz-expanded .rz-footer{grid-column:1;grid-row:5;display:block;font-size:8px}.gx-rhythm .rz-shell:fullscreen .rz-footer span,.gx-rhythm .rz-expanded .rz-footer span{display:block}.gx-rhythm .rz-shell:fullscreen .rz-panel,.gx-rhythm .rz-expanded .rz-panel{position:fixed;inset:5px;padding:8px 12px;gap:6px;justify-content:center}.gx-rhythm .rz-shell:fullscreen .rz-options,.gx-rhythm .rz-expanded .rz-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.gx-rhythm .rz-shell:fullscreen .rz-options>label:first-child,.gx-rhythm .rz-expanded .rz-options>label:first-child{grid-column:auto}.gx-rhythm .rz-shell:fullscreen .rz-options select,.gx-rhythm .rz-expanded .rz-options select{font-size:12px}.gx-rhythm .rz-shell:fullscreen .rz-modes button,.gx-rhythm .rz-expanded .rz-modes button{font-size:12px}.gx-rhythm .rz-shell:fullscreen .rz-stats,.gx-rhythm .rz-expanded .rz-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.gx-rhythm .rz-shell:fullscreen .rz-stats>div,.gx-rhythm .rz-expanded .rz-stats>div{padding:3px 6px}.gx-rhythm .rz-shell:fullscreen .rz-stats strong,.gx-rhythm .rz-expanded .rz-stats strong{font-size:18px}.gx-rhythm .rz-shell:fullscreen .rz-points strong,.gx-rhythm .rz-expanded .rz-points strong{font-size:33px}.gx-rhythm .rz-shell:fullscreen h2.rz-title,.gx-rhythm .rz-expanded h2.rz-title{font-size:20px}.gx-rhythm .rz-shell:fullscreen .rz-note,.gx-rhythm .rz-expanded .rz-note{font-size:11px}}
@media(prefers-reduced-motion:reduce){.gx-rhythm *{animation:none!important;transition:none!important}}
