.lobby__player-status--ready{background:#43c6ac;color:#fff;box-shadow:0 0 8px #f9d923}.lobby__ready-btn--held{background:linear-gradient(90deg,#43c6ac,#f9d923);color:#fff;box-shadow:0 0 32px #f9d923,0 0 24px #43c6ac;border:2px solid #f9d923;text-shadow:0 0 8px #191654;transform:scale(1.12);letter-spacing:.15em}.lobby__ready-btn{display:block;margin:2rem auto;font-size:1.5rem;padding:1rem 3rem;border-radius:16px;background:linear-gradient(90deg,#f9d923,#43c6ac);color:#191654;font-weight:700;box-shadow:0 0 16px #43c6ac;border:none;cursor:pointer;font-family:Orbitron,Arial Black,sans-serif;letter-spacing:.08em;transition:transform .15s,box-shadow .15s}.lobby__ready-btn:active,.lobby__ready-btn:focus{transform:scale(1.08);box-shadow:0 0 32px #f9d923,0 0 16px #43c6ac;outline:none}.lobby__player-status{margin-left:1rem;padding:.2rem .7rem;border-radius:6px;font-size:1rem;font-family:Orbitron,Arial Black,sans-serif;background:#191654;color:#f9d923;box-shadow:0 0 4px #43c6ac;font-weight:700;transition:background .2s,color .2s}.lobby__players{width:80vw;max-width:600px;margin:2rem auto 0;background:#191654d9;border-radius:12px;box-shadow:0 0 10px #f9d923;padding:1rem 1.5rem;text-align:center}.lobby__players-list{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;margin-top:1rem}.lobby__player{display:flex;align-items:center;background:linear-gradient(90deg,#43c6ac,#191654);border-radius:8px;padding:.5rem 1.2rem;box-shadow:0 0 8px #43c6ac;font-family:Orbitron,Arial Black,sans-serif;font-size:1.1rem;color:#f9d923;transition:transform .2s,box-shadow .2s}.lobby__player-icon{font-size:1.5rem;margin-right:.3rem}.lobby__player-name{font-weight:700;letter-spacing:.05em}.lobby{width:100vw;height:100vh;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;background:radial-gradient(ellipse at center,#191654,#43c6ac);color:#fff;padding-top:4rem}.lobby__messages{width:80vw;max-width:600px;min-height:200px;background:#191654b3;border-radius:12px;margin-bottom:2rem;padding:1rem;box-shadow:0 0 10px #43c6ac;overflow-y:auto}.lobby__message{margin-bottom:.5rem;font-family:Orbitron,Arial Black,sans-serif;font-size:1.1rem}.lobby__waiting{font-size:1.3rem;color:#f9d923;margin-top:2rem;text-shadow:0 0 10px #191654}.game-header{display:flex;align-items:flex-start;justify-content:center;width:100%;padding:1rem 0 2rem;position:relative;z-index:2;gap:2rem}.game-header__info-bar{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:.5rem;font-size:1.1rem;color:#fffbe6;gap:2rem}.game-header__score{color:#7ed957;font-weight:600}.game-header__round{color:gold;font-weight:600}.game-header__players{display:flex;flex-direction:column;gap:1rem;min-width:180px}.game-header__player{background:#23272f;border-radius:8px;padding:.5rem 1rem;box-shadow:0 2px 8px #00000014;min-width:140px}.game-header__player-name{font-weight:700;margin-bottom:.25rem;color:#fff}.game-header__player-hp-bar{background:#444b5a;border-radius:4px;height:10px;width:100%;margin-bottom:.25rem;overflow:hidden}.game-header__player-hp-bar-inner{background:#4caf50;height:100%;transition:width .3s}.game-header__player-hp-text{font-size:.85rem;color:#b0e6b0}.game-header__enemy{flex:1 1 340px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-width:220px;max-width:340px;margin:0;background:#23272f;border-radius:12px;padding:1rem 2rem;box-shadow:0 2px 12px #0000001f}.game-header__enemy-name{font-size:1.3rem;font-weight:700;color:#ffb347;margin-bottom:.5rem}.game-header__enemy-sprite{width:80px;height:80px;object-fit:contain;margin-bottom:.5rem}.game-header__enemy-hp-bar{background:#444b5a;border-radius:4px;height:14px;width:100%;margin-bottom:.25rem;overflow:hidden}.game-header__enemy-hp-bar-inner{background:#e74c3c;height:100%;transition:width .3s}.game-header__enemy-hp-text{font-size:1rem;color:#ffd6d6;margin-bottom:.5rem}.game-header__enemy-placeholder{color:#aaa;font-style:italic;margin-top:2rem}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;padding:2rem;min-width:300px;max-width:90vw;box-shadow:0 2px 16px #0003;position:relative}.modal-close{position:absolute;top:.5rem;right:.5rem;background:none;border:none;font-size:2rem;cursor:pointer;color:#888}.move-options-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}.move-option-card{background:#23272f;border:2px solid #444b5a;border-radius:10px;padding:1.2rem 2rem;color:#fff;font-size:1.1rem;font-weight:600;cursor:pointer;transition:border-color .2s,box-shadow .2s;box-shadow:0 2px 8px #0000001a;min-width:180px;display:flex;flex-direction:column;align-items:flex-start}.move-option-card:hover{border-color:#7ed957;box-shadow:0 4px 16px #7ed95726}.move-option-title{font-size:1.2rem;margin-bottom:.5rem;color:#7ed957}.move-option-description{font-size:.95rem;color:#ccc;margin-bottom:.3rem}.move-option-difficulty{font-size:.95rem;color:gold}.upgrade-modal{display:flex;flex-direction:column;align-items:center;padding:1.5rem 1rem;min-width:260px}.upgrade-modal__options{display:flex;gap:2rem;margin-top:1.5rem}.upgrade-modal__option{background:#23272f;border:2px solid #444b5a;border-radius:10px;padding:1.2rem 2rem;color:#fff;font-size:1.1rem;font-weight:600;cursor:pointer;transition:border-color .2s,box-shadow .2s;box-shadow:0 2px 8px #0000001a;min-width:140px;display:flex;flex-direction:column;align-items:center}.upgrade-modal__option:hover{border-color:#7ed957;box-shadow:0 4px 16px #7ed95726}.upgrade-modal__option-title{font-size:1.2rem;margin-bottom:.5rem;color:#7ed957}.upgrade-modal__option-desc{font-size:.95rem;color:#ccc;text-align:center}.control-panel{width:90%;display:flex;flex-wrap:wrap;gap:1rem;background:#222;padding:1.5rem;border-radius:12px;box-shadow:0 6px 12px #00000080;justify-items:center}.control{background:#333;border:2px solid #555;border-radius:8px;padding:.75rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;box-shadow:0 3px 6px #0006;height:fit-content}.control-label{font-size:.9rem;font-weight:700;color:#eee;text-align:center}.control-body{display:flex;justify-content:center;align-items:center}.button-control{background:#1976d2;color:#fff;padding:.75rem 1.5rem;border:none;border-radius:6px;font-weight:700;cursor:pointer;transition:background .2s,transform .1s}.button-control:hover{background:#1565c0}.button-control:active{transform:scale(.95);background:#0d47a1}.slider-wrapper{display:flex;align-items:center;gap:.75rem}.slider-control{-webkit-appearance:none;width:120px;height:6px;border-radius:4px;background:#555;outline:none;cursor:pointer}.slider-control::-webkit-slider-runnable-track{background:#1976d2;height:6px;border-radius:4px}.slider-control::-moz-range-track{background:#1976d2;height:6px;border-radius:4px}.slider-control::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:#fff;border:2px solid #1976d2;cursor:pointer;margin-top:-5px}.slider-control::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#fff;border:2px solid #1976d2;cursor:pointer}.slider-value{font-weight:700;color:#eee;min-width:24px;text-align:center}.toggle-switch{position:relative;display:inline-block;width:50px;height:26px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-switch .slider{position:absolute;cursor:pointer;inset:0;background-color:#555;transition:.3s;border-radius:26px}.toggle-switch .slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.slider{background-color:#1976d2}.toggle-switch input:checked+.slider:before{transform:translate(24px)}.inverted-progress-bar-outer{display:flex;flex-direction:column;align-items:center;width:340px;margin:0 auto;-webkit-user-select:none;user-select:none}.inverted-progress-bar-outer .ipb-frame{position:relative;width:320px;height:32px;background:linear-gradient(90deg,#23272e 60%,#2d323c);border:4px solid #00ffe7;border-radius:16px;box-shadow:0 2px 16px #00ffe733,0 0 0 4px #23272e inset;overflow:visible;display:flex;align-items:center;z-index:1}.inverted-progress-bar-outer .ipb-frame .ipb-track{position:absolute;inset:6px 16px;background:repeating-linear-gradient(135deg,#181c20 0 6px,#23272e 6px 12px);border-radius:8px;overflow:hidden;box-shadow:0 0 8px #00ffe744 inset}.inverted-progress-bar-outer .ipb-frame .ipb-track .ipb-fill{height:100%;background:linear-gradient(90deg,#ff5f6d,#ffc371);border-radius:8px 0 0 8px;box-shadow:0 0 12px #ff5f6d88 inset;transition:width .2s cubic-bezier(.4,2,.6,1)}.inverted-progress-bar-outer .ipb-frame .ipb-end-cap{position:absolute;right:0;top:0;width:16px;height:100%;background:linear-gradient(135deg,#00ffe7,#23272e);border-radius:0 12px 12px 0;box-shadow:0 0 8px #00ffe7cc;z-index:2}.inverted-progress-bar-outer .ipb-frame .ipb-bolts{position:absolute;top:-10px;width:16px;height:52px;background:none;z-index:3;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.inverted-progress-bar-outer .ipb-frame .ipb-bolts.ipb-bolts-left{left:-18px}.inverted-progress-bar-outer .ipb-frame .ipb-bolts.ipb-bolts-right{right:-18px}.inverted-progress-bar-outer .ipb-frame .ipb-bolts:before,.inverted-progress-bar-outer .ipb-frame .ipb-bolts:after{content:"";display:block;width:16px;height:8px;background:#00ffe7;border-radius:4px;box-shadow:0 0 6px #00ffe7cc;border:2px solid #23272e}.inverted-progress-bar-outer .ipb-label{margin-top:.5rem;font-family:"Press Start 2P",VT323,monospace,sans-serif;font-size:1.1rem;color:#00ffe7;text-shadow:0 2px 8px #23272e,0 0 2px #00ffe7,0 0 8px rgba(255,255,255,.1333333333);letter-spacing:.08em;background:#181c20;border-radius:8px;padding:.2em 1.2em;border:2px solid #00ffe7;box-shadow:0 2px 8px #00ffe744}.instruction-display{background:#ffeb3b;color:#000;font-weight:700;font-size:1.25rem;padding:1rem;border-radius:10px;text-align:center;box-shadow:0 4px 8px #0000004d}.modal-content{background:linear-gradient(135deg,#181c20,#23272e);border-radius:20px;box-shadow:0 8px 40px #000a,0 0 0 4px #00ffe722 inset;padding:3.5rem 2.5rem 3rem;max-width:900px;min-width:600px;margin:0 auto;overflow:visible}.move-options-list{display:flex;flex-direction:row;flex-wrap:nowrap;gap:1.5rem;justify-content:flex-start;align-items:stretch;margin:2rem 0 1rem;padding:1.5rem .5rem;list-style:none;overflow-x:auto;overflow-y:visible;scrollbar-width:thin;scrollbar-color:#00bfae #23272e;width:fit-content;overflow-x:hidden;position:relative;z-index:1}.ready-button-container{display:flex;justify-content:center;align-items:center;margin:2.5rem 0 1.5rem}.ready-button-container .ready-button{font-family:"Press Start 2P",VT323,monospace,sans-serif;font-size:1.25rem;color:#fff700;background:linear-gradient(90deg,#00ffe7,#ff5f6d);border:4px solid #fff700;border-radius:14px;padding:1.1em 2.5em;box-shadow:0 4px 24px #00ffe799,0 0 0 6px #ff5f6d33 inset,0 2px #fff700;text-shadow:0 2px 8px #00ffe7,0 0 2px #ff5f6d,0 0 8px #fff;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background .18s,color .18s,box-shadow .18s,border-color .18s,transform .14s cubic-bezier(.4,2,.6,1);position:relative;z-index:2;outline:none;-webkit-user-select:none;user-select:none}.ready-button-container .ready-button:hover,.ready-button-container .ready-button:focus{background:linear-gradient(90deg,#ff5f6d,#00ffe7);color:#23272e;border-color:#00ffe7;box-shadow:0 8px 32px #ff5f6dcc,0 0 0 8px #00ffe755 inset,0 4px #00ffe7;transform:translateY(-4px) scale(1.06) rotate(-2deg)}.ready-button-container .ready-button:active{background:linear-gradient(90deg,#00ffe7,#ff5f6d);color:#fff700;box-shadow:0 2px 8px #00ffe7cc;transform:scale(.97)}.move-options-list::-webkit-scrollbar{height:8px}.move-options-list::-webkit-scrollbar-thumb{background:#00bfae;border-radius:4px}.move-options-list::-webkit-scrollbar-track{background:#23272e}.move-option-card{background:linear-gradient(135deg,#23272e,#2d323c);border:2px solid #00bfae;border-radius:16px;box-shadow:0 4px 24px #0008,0 0 0 4px #00ffe71a inset;min-width:170px;min-height:90px;padding:1.2rem 2rem 2.5rem;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.5rem;font-size:1.1rem;font-family:"Press Start 2P",VT323,monospace,sans-serif;color:#e0f7fa;cursor:pointer;transition:transform .18s cubic-bezier(.4,2,.6,1),box-shadow .18s,border-color .18s,background .18s;position:relative;outline:none;z-index:2;-webkit-user-select:none;user-select:none;overflow:visible;clip-path:inset(-16px -16px -16px -16px round 16px)}.move-option-title{font-size:1.35rem;font-weight:700;color:#fff;margin-bottom:.2em;line-height:1.2;text-shadow:0 2px 8px rgba(0,191,174,.2666666667),0 0 2px #00ffe7,0 0 8px rgba(255,255,255,.1333333333);width:100%;text-align:center}.move-option-description{font-size:1rem;color:#b0bec5;opacity:.8;margin-bottom:.5em;line-height:1.3;font-weight:400;text-shadow:none;width:100%;text-align:center}.move-option-difficulty{position:absolute;left:1.2rem;bottom:1.2rem;font-size:.95rem;color:#00ffe7;background:#00bfae14;border-radius:8px;padding:.18em .7em;font-family:inherit;font-weight:600;letter-spacing:.04em;box-shadow:0 2px 8px #00bfae22;pointer-events:none}.move-option-card:hover,.move-option-card:focus{transform:translateY(-8px) scale(1.04) rotate(-2deg);box-shadow:0 8px 32px #00ffe7cc,0 0 0 6px #00bfae55 inset;border-color:#00ffe7;color:#00ffe7;background:linear-gradient(135deg,#23272e,#00bfae)}.move-option-card:active{transform:scale(.98);box-shadow:0 2px 8px #00bfaecc}.move-options-list li{margin:0}.modal-content h2{text-align:center;color:#00ffe7;font-family:"Press Start 2P",VT323,monospace,sans-serif;margin-bottom:1.5rem;letter-spacing:.08em;text-shadow:0 2px 8px #00bfae,0 0 2px #00ffe7,0 0 8px rgba(255,255,255,.1333333333)}.app{min-height:100vh;min-width:100%;display:flex;flex-direction:column;gap:2rem;align-items:center;justify-content:center;color:#fff}.app .status-bar{width:100%;max-width:600px;background:linear-gradient(90deg,#ff5f6d,#ffc371);border-radius:12px;padding:1rem 2rem;margin-bottom:1.5rem;box-shadow:0 4px 16px #00000040,0 0 0 4px #fff700 inset;display:flex;align-items:center;justify-content:center;border:3px solid #00ffe7;position:relative;overflow:hidden}.app .status-bar:before,.app .status-bar:after{content:"";position:absolute;top:0;bottom:0;width:12px;background:repeating-linear-gradient(135deg,#fff700 0 3px,#00ffe7 3px 6px,#ff5f6d 6px 9px);z-index:1}.app .status-bar:before{left:0;border-radius:12px 0 0 12px}.app .status-bar:after{right:0;border-radius:0 12px 12px 0}.app .status-text{font-size:1.25rem;font-weight:700;letter-spacing:.08em;color:#fff700;text-shadow:0 2px 8px #ff5f6d,0 0 2px #00ffe7,0 0 8px #fff;text-transform:uppercase;z-index:2;font-family:"Press Start 2P",VT323,monospace,sans-serif;filter:brightness(1.2) contrast(1.3);padding:.25em .5em}.main-menu__error{color:#e94560;font-size:1rem;margin-top:.3rem;font-family:Orbitron,Arial Black,sans-serif;text-shadow:0 0 4px #191654}.main-menu__volume{position:fixed;left:2rem;bottom:2rem;background:#191654cc;border:none;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 10px #43c6ac;cursor:pointer;z-index:10;transition:background .2s,box-shadow .2s}.main-menu__volume:hover{background:#43c6ace6;box-shadow:0 0 20px #f9d923}.main-menu__volume img{width:28px;height:28px}.main-menu__switch{display:flex;justify-content:center;margin-bottom:2rem;gap:2rem}.main-menu__switch-btn{font-family:Orbitron,Arial Black,sans-serif;font-size:1.2rem;padding:.7rem 2rem;border:2px solid #e94560;border-radius:8px;background:#191654;color:#f9d923;cursor:pointer;transition:background .2s,color .2s,border-color .2s}.main-menu__switch-btn--active{background:#43c6ac;color:#191654;border-color:#f9d923;box-shadow:0 0 10px #43c6ac}.main-menu__input-group{display:flex;flex-direction:column;align-items:center;margin-bottom:2rem}.main-menu__label{font-family:Orbitron,Arial Black,sans-serif;color:#f9d923;margin-bottom:.5rem;font-size:1.1rem}.main-menu__input{padding:.7rem 1.5rem;font-size:1.1rem;border-radius:8px;border:2px solid #43c6ac;background:#0f3460;color:#fff;outline:none;margin-bottom:.5rem;transition:border-color .2s}.main-menu__input:focus{border-color:#f9d923}.main-menu{width:100vw;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#1a1a2e,#0f3460);position:relative;overflow:hidden}.main-menu__title{font-family:Orbitron,Arial Black,sans-serif;font-size:3rem;color:#f9d923;text-shadow:0 0 20px #f9d923,0 0 40px #e94560;margin-bottom:2.5rem;letter-spacing:.15em}.main-menu__buttons{display:flex;justify-content:center;gap:2rem}.main-menu__button{font-family:Orbitron,Arial Black,sans-serif;font-size:1.5rem;padding:1rem 2.5rem;border:none;border-radius:12px;background:linear-gradient(90deg,#e94560,#0f3460);color:#fff;box-shadow:0 0 10px #e94560,0 0 20px #0f3460;cursor:pointer;transition:transform .2s,box-shadow .2s;outline:none}.main-menu__button:hover{transform:scale(1.08);box-shadow:0 0 20px #f9d923,0 0 40px #e94560}.main-menu__button--play{background:linear-gradient(90deg,#43c6ac,#191654);color:#f9d923;box-shadow:0 0 10px #43c6ac,0 0 20px #191654}.main-menu__button--options{background:linear-gradient(90deg,#e94560,#0f3460);color:#fff;box-shadow:0 0 10px #e94560,0 0 20px #0f3460}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body,#root{margin:0;width:100vw;height:100vh;min-width:0;min-height:0;box-sizing:border-box}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
