.gym-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.gym-top h1{font-size:clamp(28px,4vw,44px);letter-spacing:-1px;margin:12px 0}.gym-room{position:relative;aspect-ratio:16/9;background:#242a23 url('/gym-hangar-v1.webp') center/cover;border:1px solid #84734b;border-radius:8px;overflow:hidden;isolation:isolate}.gym-shade{position:absolute;inset:0;background:linear-gradient(90deg,#050c0970,transparent 55%),linear-gradient(#0007,transparent 30%,transparent 70%,#0008);pointer-events:none}.gym-room-brand{position:absolute;top:26px;left:28px;letter-spacing:3px;font-weight:750;color:#e9dec0;font-size:clamp(10px,1.5vw,18px);z-index:3;text-shadow:0 2px 12px #000}.gym-room-brand small{display:block;font-size:8px;letter-spacing:2px;margin-top:8px;color:#d0c197}.gym-operator{position:absolute;height:78%;aspect-ratio:3/4;bottom:7%;left:45%;transform:translateX(-50%);background:url('/gym-operator-v1.webp') 0 0/200% 100% no-repeat;z-index:2;filter:drop-shadow(2px 8px 5px #0005)}.gym-operator-shadow{position:absolute;left:45%;bottom:6%;width:17%;height:4%;transform:translateX(-50%);border-radius:50%;background:#0008;filter:blur(8px)}.gym-active .gym-operator{animation:gym-curl 2.4s steps(1,end) infinite}.gym-room-title{position:absolute;left:28px;bottom:28px;z-index:3;pointer-events:none;text-shadow:0 3px 15px #000}.gym-room-title .eyebrow{font-size:9px;letter-spacing:2px}.gym-room-title h2{font-size:clamp(20px,3.6vw,46px);line-height:1.05;letter-spacing:2px;color:#f0e3bc;margin:12px 0 0}.gym-session-hud{position:absolute;right:25px;bottom:26px;width:30%;max-width:330px;z-index:3;padding:21px;background:#0c130fe8;border:1px solid #d2b16770;border-radius:5px;box-shadow:0 8px 25px #0005;backdrop-filter:blur(8px)}.gym-status{display:block;font-size:9px;letter-spacing:1.5px;color:#dfc485}.gym-session-hud>b{display:block;font-size:15px;margin:13px 0 6px;overflow-wrap:anywhere;color:#f2ead7}.gym-session-hud strong{display:block;font-size:clamp(16px,3vw,36px);font-variant-numeric:tabular-nums;color:#f0d18c;line-height:1.2;margin:5px 0 14px}.gym-session-hud small{display:block;color:#bfc5b5;font-size:11px;line-height:1.6}.gym-track,.gym-cap-track{height:4px;background:#414936;margin:14px 0;overflow:hidden}.gym-track i,.gym-cap-track i{display:block;height:100%;background:#d7b868;transition:width 1s linear}.gym-ready{color:#b3d0a4}.gym-controls{display:grid;grid-template-columns:1fr 1.5fr;gap:50px;margin-top:25px}.gym-controls h2{font-size:38px;margin:10px 0}.gym-controls h2 span{font-size:17px;color:var(--muted);font-weight:400}.gym-action p{color:var(--muted);line-height:1.7}.gym-action .button{min-width:220px}.gym-history{margin-top:24px}@keyframes gym-curl{0%,49.99%{background-position:0 0}50%,100%{background-position:100% 0}}@media(max-width:800px){.gym-room{aspect-ratio:4/3}.gym-operator{height:71%;left:38%;bottom:7%}.gym-session-hud{width:34%;padding:14px;right:14px;bottom:16px}.gym-room-brand{left:18px;top:18px}.gym-room-title{left:18px;bottom:18px}.gym-room-title .eyebrow{display:none}.gym-room-title h2{font-size:20px}.gym-controls{gap:24px}}@media(max-width:550px){.gym-top{align-items:flex-start}.gym-top .button{font-size:11px;padding:11px}.gym-room{aspect-ratio:4/5}.gym-room-brand{font-size:11px;letter-spacing:2px}.gym-operator{height:62%;left:46%;bottom:27%}.gym-operator-shadow{bottom:26%;left:46%;width:28%}.gym-room-title{display:none}.gym-session-hud{bottom:12px;left:12px;right:12px;width:auto;max-width:none;padding:14px}.gym-session-hud>b{margin:8px 0 0;font-size:12px}.gym-session-hud strong{font-size:27px;margin:5px 0}.gym-session-hud small{font-size:10px}.gym-track{margin:9px 0}.gym-controls{grid-template-columns:1fr;gap:12px}.gym-status{font-size:8px}.gym-controls h2{font-size:34px}}@media(prefers-reduced-motion:reduce){.gym-active .gym-operator{animation:none}.gym-track i{transition:none}}

.gym-scene{position:absolute;inset:8% 0 0;z-index:2;pointer-events:none}.gym-scene canvas,.gym-scene svg{width:100%;height:100%;display:block}.gym-has-3d .gym-operator,.gym-has-3d .gym-operator-shadow{display:none}.gym-has-3d .gym-session-hud{bottom:auto;top:24px;width:25%;padding:16px}.gym-has-3d .gym-room-title h2{font-size:clamp(18px,2.4vw,32px)}@media(max-width:550px){.gym-scene{inset:12% 0 32%}.gym-has-3d .gym-session-hud{top:auto;bottom:12px;width:auto;padding:14px}}

.gym-stations{position:absolute;left:24px;right:24px;bottom:14px;z-index:4;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;pointer-events:none}.gym-stations span{padding:8px 12px;background:#0d1510cf;border-top:1px solid #bda05b70;color:#bdc6b4;font-size:10px;letter-spacing:1px}.gym-stations b{display:block;font-size:9px;color:#e0ce9f;margin-bottom:4px}.gym-has-3d .gym-room-title{display:none}@media(max-width:550px){.gym-stations{display:none}}

.gym-level-up{position:fixed;z-index:9999;pointer-events:none;isolation:isolate;left:50%;top:22%;transform:translateX(-50%);padding:1rem 2rem;text-align:center;color:#ffeabe;background:#201b10;border:1px solid #dfb65f;box-shadow:0 0 32px #dca93c66;animation:gym-level-impact .42s ease-out}
.gym-level-up small,.gym-level-up strong{display:block;white-space:nowrap}.gym-level-up small{letter-spacing:.18em;font-size:.7rem}.gym-level-up strong{font-size:2.6rem}.gym-level-up:before{content:"";position:absolute;inset:-3px;border:2px solid #efc771;opacity:0;animation:gym-level-wave .65s ease-out}
@keyframes gym-level-impact{from{transform:translateX(-50%) scale(.7)}65%{transform:translateX(-50%) scale(1.08)}}@keyframes gym-level-wave{from{opacity:.9;transform:scale(.95)}to{opacity:0;transform:scale(1.55)}}
@media(prefers-reduced-motion:reduce){.gym-level-up,.gym-level-up:before{animation:none}}
