/* The world is the viewport; the controls are a game HUD. */
body.gym-mode{overflow:hidden;background:#182824}body.gym-mode main{margin:0;padding:0;max-width:none}body.gym-mode main>header,body.gym-mode main>footer,body.gym-mode>.sidebar,body.gym-mode #gym>.intro,body.gym-mode .game-bottom{display:none}
body.gym-mode #gym{position:fixed;inset:0;padding:0;margin:0;z-index:20}body.gym-mode .gym-world{position:absolute;inset:0;border:0;border-radius:0;background:#182824}body.gym-mode #scene{height:100dvh;width:100vw}
.game-toolbar{display:none}body.gym-mode .game-toolbar{display:flex;position:fixed;top:14px;left:16px;gap:7px;z-index:35}body.gym-mode .game-toolbar button,body.gym-mode .room-bar button{background:#182d29ee;color:#eff8df;border:1px solid #688470;border-radius:9px;font-size:13px;min-height:38px;padding:8px 12px;box-shadow:0 3px 12px #0002}body.gym-mode .room-bar{position:fixed;right:16px;top:14px;margin:0;z-index:35;gap:8px}body.gym-mode .room-bar .connection{display:none}
body.gym-mode .game-hud{top:68px;left:16px;max-width:calc(100% - 355px)}body.gym-mode .camera-controls{top:118px;right:338px}body.gym-mode .scene-location{left:16px;top:121px}body.gym-mode .scene-help{top:auto;bottom:108px;right:338px;background:#162c27ed;color:#edf5e4;max-width:240px}
body.gym-mode .multiplayer-panels{display:block;margin:0}body.gym-mode .upgrades{position:fixed;right:16px;top:68px;bottom:18px;width:300px;overflow-y:auto;padding:21px;background:#182d29f5;border:1px solid #69866b;color:#f2f8e8;box-shadow:0 12px 40px #0004;z-index:30;border-radius:15px}body.gym-mode .upgrades h2{font-size:19px;color:#f2f8e8;line-height:1.4}body.gym-mode .upgrades .eyebrow,body.gym-mode .upgrades .panel-intro,body.gym-mode .upgrades .upgrade-footnote,body.gym-mode .upgrades .muscle-title small,body.gym-mode .upgrades .muscle-value{color:#b8cdb5}body.gym-mode .upgrades .section-heading{align-items:flex-start;gap:10px}body.gym-mode .upgrades .panel-intro{font-size:13px}body.gym-mode .muscle-row{padding:11px 0;gap:8px;border-color:#40584b}body.gym-mode .muscle-title{width:83px;flex-shrink:0;font-size:14px}body.gym-mode .muscle-title small{display:block;font-size:10px}body.gym-mode .muscle-track{background:#3b5147}body.gym-mode .muscle-add{background:#c8f36b;color:#1e3b29;border:0;font-size:21px;width:32px;height:32px;flex-shrink:0}body.gym-mode .points-pill{white-space:nowrap;background:#c8f36b;color:#203c28;padding:8px}body.gym-mode.upgrades-collapsed .upgrades{display:none}
body.gym-mode .game-controls{position:fixed;bottom:18px;left:calc((100% - 320px)/2);transform:translateX(-50%);width:min(470px,calc(100% - 360px));z-index:28;padding:12px 18px;border:1px solid #729270;border-radius:15px;background:#172d28ef;color:#eff8df;gap:8px;box-shadow:0 6px 24px #0003}body.gym-mode .game-controls .eyebrow,body.gym-mode .game-status p{display:none}body.gym-mode .game-status h2{font-size:16px;margin:0 0 5px;color:#eef7df}body.gym-mode .game-action .primary{min-height:44px;padding:10px;font-size:13px;width:72%;background:#c8f36b;color:#223b23}body.gym-mode .game-action>strong{font-size:11px;color:#c4d8b9;left:-5px}body.gym-mode .game-action{min-height:44px}body.gym-mode .level-track{position:fixed;left:16px;bottom:18px;width:160px;background:#182d29e8;padding:12px;border-radius:10px;z-index:24}body.gym-mode .level-track>div:first-child{font-size:11px;color:#d9e8cd;line-height:1.6;display:block}body.gym-mode .level-track>div:first-child span{display:block}body.gym-mode .campus-map{right:auto;left:16px;bottom:103px;width:144px!important;height:108px!important}body.gym-mode .nearby-hint{left:calc((100% - 320px)/2);bottom:142px;max-width:38%;font-size:12px}body.gym-mode .movement-pad{bottom:230px}body.gym-mode #level-up{position:fixed;top:168px;left:16px;max-width:420px;z-index:40}
body.gym-mode.upgrades-collapsed .game-controls,body.gym-mode.upgrades-collapsed .nearby-hint{left:50%}body.gym-mode.upgrades-collapsed .game-controls{width:min(470px,calc(100% - 48px))}body.gym-mode.upgrades-collapsed .camera-controls,body.gym-mode.upgrades-collapsed .scene-help{right:18px}body.gym-mode.upgrades-collapsed .game-hud{max-width:75%}
#equipment-dialog{width:min(1000px,94vw);max-width:94vw;max-height:88dvh;padding:26px;overflow:auto}#equipment-dialog .campus-directory{margin-top:14px}#equipment-dialog .station-grid{grid-template-columns:repeat(4,1fr)}#equipment-dialog .room-players{margin-top:22px}#equipment-dialog>.primary{position:sticky;top:0;z-index:2}body.gym-mode.game-menu>.sidebar{display:block;position:fixed;left:16px;top:60px;width:260px;height:auto;bottom:auto;padding:20px;z-index:50;border-radius:12px;background:#1f352c}body.gym-mode.game-menu .sidebar .side-note,body.gym-mode.game-menu .sidebar .local,body.gym-mode.game-menu .sidebar .side-label,body.gym-mode.game-menu .sidebar .brand{display:none}body.gym-mode.game-menu .sidebar nav{display:flex;flex-direction:column;overflow:visible}body.gym-mode.game-menu .sidebar .nav{width:100%;color:#e3edd8}
@media(max-width:900px){body.gym-mode .game-toolbar button{font-size:11px;padding:8px}body.gym-mode .game-toolbar{left:10px;gap:4px;top:10px}body.gym-mode .room-bar{right:10px;top:10px}body.gym-mode .room-bar button{font-size:11px;padding:8px}body.gym-mode #share-room{display:none}body.gym-mode .upgrades{width:275px;top:60px;bottom:12px;right:10px}body.gym-mode .game-hud{top:60px;max-width:calc(100% - 310px);left:10px}body.gym-mode .game-controls{left:50%;width:min(440px,calc(100% - 32px));bottom:12px}body.gym-mode .nearby-hint{left:50%;bottom:132px;max-width:65%}body.gym-mode .camera-controls{top:108px;right:16px}body.gym-mode .scene-location{top:110px;left:10px;font-size:11px}body.gym-mode .scene-help{display:none}body.gym-mode .campus-map{left:auto;right:12px;bottom:166px;width:120px!important;height:90px!important}body.gym-mode .level-track{bottom:auto;top:155px;left:10px;width:145px}body.gym-mode .movement-pad{bottom:166px;left:12px}#equipment-dialog .station-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){body.gym-mode .game-toolbar button{font-size:10px;padding:7px 8px}body.gym-mode .room-bar button{font-size:10px;min-height:36px}body.gym-mode .game-hud{max-width:75%;gap:4px}body.gym-mode .game-hud>span{font-size:10px;padding:6px}body.gym-mode .scene-location{top:100px}body.gym-mode .camera-controls{top:141px}body.gym-mode .level-track{top:138px;width:125px;padding:8px}body.gym-mode .level-track>div:first-child{font-size:10px}body.gym-mode .upgrades{top:54px;bottom:135px;width:min(300px,calc(100% - 20px))}body.gym-mode .game-action>strong{font-size:10px}#equipment-dialog{padding:18px}#equipment-dialog .station-grid{grid-template-columns:1fr}.game-toolbar #gym-menu{font-size:16px;padding:4px 10px}}

@media(min-width:521px) and (max-width:900px){body.gym-mode:not(.upgrades-collapsed) .game-controls{left:calc((100% - 295px)/2);width:calc(100% - 330px)}body.gym-mode:not(.upgrades-collapsed) .nearby-hint{left:calc((100% - 295px)/2);max-width:45%}body.gym-mode:not(.upgrades-collapsed) .campus-map{display:none}}

.camera-controls .music-toggle{font-size:19px;line-height:1}.camera-controls .music-toggle[aria-pressed="true"]{background:#c8f36b;color:#203c28;border-color:#8ebd57}

span.equipment-choice{display:grid;place-items:center;cursor:default}span.equipment-choice.occupied{opacity:.45}
