.SpringBootGame_container__n6bm8{position:relative;min-height:100vh;overflow:hidden;background:linear-gradient(180deg,#0a0a0f,#0f0f1a 50%,#0a0a12)}.SpringBootGame_bgEffects__0Te_x{position:absolute;inset:0;pointer-events:none;z-index:0}.SpringBootGame_bgGradient1__Tm27u{position:absolute;inset:0;background:radial-gradient(circle at 30% 40%,rgba(5,150,105,.15) 0,transparent 50%);animation:SpringBootGame_pulse___oMoT 8s ease-in-out infinite}.SpringBootGame_bgGradient2__JnlMg{position:absolute;inset:0;background:radial-gradient(circle at 70% 60%,rgba(16,185,129,.1) 0,transparent 50%);animation:SpringBootGame_pulse___oMoT 8s ease-in-out infinite reverse}@keyframes SpringBootGame_pulse___oMoT{0%,to{opacity:.5}50%{opacity:.8}}.SpringBootGame_menuScreen__wJWWI{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;padding:6rem 1.5rem 3rem;text-align:center;gap:1rem}.SpringBootGame_menuIcon__9PNgQ{font-size:4.5rem;margin-bottom:.5rem;filter:drop-shadow(0 0 24px rgba(5,150,105,.6))}.SpringBootGame_menuTitle__YD6yW{font-size:clamp(2.5rem,6vw,4rem);font-weight:800;background:linear-gradient(135deg,#059669,#10b981,#34d399);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.03em}.SpringBootGame_menuSubtitle__B5_yr{color:rgba(255,255,255,.55);font-size:1.05rem;max-width:450px;line-height:1.6}.SpringBootGame_menuHighScore__hrwg_{padding:.5rem 1.25rem;background:rgba(251,191,36,.1);border:1px solid rgba(251,191,36,.2);border-radius:9999px;color:#fbbf24;font-size:.85rem;font-weight:600}.SpringBootGame_menuTowers__KiJnh{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin:.5rem 0}.SpringBootGame_menuTowerPreview__WkIoZ{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem .75rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:.75rem;min-width:60px}.SpringBootGame_menuTowerPreview__WkIoZ span:first-child{font-size:1.5rem}.SpringBootGame_menuTowerName__ygJe1{font-size:.6rem;color:rgba(255,255,255,.4);font-weight:500}.SpringBootGame_playBtn__fIvwE{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 2.5rem;background:linear-gradient(135deg,#059669,#10b981);color:white;border:none;border-radius:9999px;font-size:1.05rem;font-weight:600;cursor:pointer;margin-top:1rem;box-shadow:0 4px 20px rgba(5,150,105,.4);transition:box-shadow .3s ease}.SpringBootGame_playBtn__fIvwE:hover{box-shadow:0 6px 30px rgba(5,150,105,.5)}.SpringBootGame_backLink__znfQv{display:inline-flex;align-items:center;gap:.4rem;color:rgba(255,255,255,.45);font-size:.85rem;text-decoration:none;margin-top:.5rem;transition:color .2s}.SpringBootGame_backLink__znfQv:hover{color:rgba(255,255,255,.7)}.SpringBootGame_gameOverScreen__R7Xb_{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;padding:6rem 1.5rem 3rem;text-align:center;gap:1rem}.SpringBootGame_gameOverIcon__K6S2e{font-size:4rem;animation:SpringBootGame_heartBreak__z7Odw .5s ease}@keyframes SpringBootGame_heartBreak__z7Odw{0%{transform:scale(1)}30%{transform:scale(1.3)}60%{transform:scale(.9)}to{transform:scale(1)}}.SpringBootGame_gameOverTitle__K5Nm5{font-size:clamp(2rem,5vw,3rem);font-weight:800;color:#f87171}.SpringBootGame_gameOverStats__xxbNu{display:flex;gap:2rem;margin:.5rem 0}.SpringBootGame_gameOverStat__Pxg2E{display:flex;flex-direction:column;align-items:center;gap:.25rem}.SpringBootGame_gameOverStatValue__7_IO_{font-size:2rem;font-weight:800;background:linear-gradient(135deg,#059669,#10b981);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.SpringBootGame_gameOverStatLabel__5l9Md{font-size:.7rem;font-weight:600;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.05em}.SpringBootGame_newHighScore__UC_J3{padding:.5rem 1.25rem;background:rgba(251,191,36,.15);border:1px solid rgba(251,191,36,.3);border-radius:9999px;color:#fbbf24;font-size:.9rem;font-weight:600;animation:SpringBootGame_glowPulse__9dggJ 2s ease infinite}@keyframes SpringBootGame_glowPulse__9dggJ{0%,to{box-shadow:0 0 8px rgba(251,191,36,.2)}50%{box-shadow:0 0 20px rgba(251,191,36,.4)}}.SpringBootGame_gameOverBtns__rXLGG{display:flex;flex-direction:column;align-items:center;gap:.75rem;margin-top:.5rem}.SpringBootGame_gameArea__oSCs2{position:relative;z-index:10;max-width:800px;margin:0 auto;padding:5.5rem 1rem 2rem}@media (min-width:768px){.SpringBootGame_gameArea__oSCs2{padding:6.5rem 1.5rem 3rem}}.SpringBootGame_hud___HQk_{display:flex;align-items:center;gap:1rem;padding:.625rem 1rem;background:rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.06);border-radius:.875rem;margin-bottom:.75rem;backdrop-filter:blur(8px);flex-wrap:wrap}.SpringBootGame_hudBack__cb6XS{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:.5rem;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);color:rgba(255,255,255,.6);cursor:pointer;transition:all .2s}.SpringBootGame_hudBack__cb6XS:hover{border-color:rgba(5,150,105,.3);color:white}.SpringBootGame_hudStat___ZwKj{display:flex;align-items:center;gap:.35rem;font-size:.85rem;color:rgba(255,255,255,.7);font-weight:600}.SpringBootGame_hudGold__QVDvV{color:#fbbf24}.SpringBootGame_hudLives__tm1te{color:#f87171}.SpringBootGame_hudWave__uevEy{margin-left:auto;font-size:.75rem;font-weight:600;color:rgba(255,255,255,.5);display:flex;align-items:center;gap:.4rem}.SpringBootGame_hudWaveBoss__tHpyl{color:#ef4444}.SpringBootGame_bossLabel__bT4bC{padding:.15rem .4rem;background:rgba(239,68,68,.2);border:1px solid rgba(239,68,68,.3);border-radius:.25rem;font-size:.6rem;font-weight:700;letter-spacing:.06em;color:#ef4444;animation:SpringBootGame_bossPulse__sV_X7 1s ease infinite}@keyframes SpringBootGame_bossPulse__sV_X7{0%,to{opacity:1}50%{opacity:.6}}.SpringBootGame_canvasWrapper__SyM5a{position:relative;border:1px solid rgba(255,255,255,.06);border-radius:.875rem;overflow:hidden;background:rgba(0,0,0,.4);margin-bottom:.75rem;box-shadow:0 8px 32px rgba(0,0,0,.4);overflow-x:auto}.SpringBootGame_canvas__wRTXJ{display:block}.SpringBootGame_gridOverlay__dILYf{position:absolute;top:0;left:0;display:grid;grid-template-columns:repeat(9,72px);grid-template-rows:repeat(5,72px)}.SpringBootGame_gridCell__M7fYq{border:1px solid transparent;cursor:default;transition:all .15s ease}.SpringBootGame_gridCellActive__PpNaD{cursor:pointer;border-color:rgba(5,150,105,.15);background:rgba(5,150,105,.06)}.SpringBootGame_gridCellActive__PpNaD:hover{border-color:rgba(5,150,105,.35);background:rgba(5,150,105,.12)}.SpringBootGame_gridCellOccupied__8gyga{cursor:not-allowed}.SpringBootGame_waveStart__NHUdd{display:flex;justify-content:center;margin-bottom:.75rem}.SpringBootGame_waveStartBtn__QF_XN{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 2rem;background:linear-gradient(135deg,#059669,#10b981);color:white;border:none;border-radius:9999px;font-size:.9rem;font-weight:600;cursor:pointer;box-shadow:0 4px 16px rgba(16,185,129,.35);transition:all .3s ease}.SpringBootGame_waveStartBtn__QF_XN:hover{box-shadow:0 6px 24px rgba(16,185,129,.5);transform:translateY(-1px)}.SpringBootGame_victoryBanner__754P0{text-align:center;padding:1rem 2rem;background:rgba(251,191,36,.12);border:1px solid rgba(251,191,36,.25);border-radius:.75rem;color:#fbbf24;font-size:1.1rem;font-weight:700;margin-bottom:.75rem}.SpringBootGame_towerBar__39sOn{margin-bottom:.75rem}.SpringBootGame_towerBarLabel__DgBFw{font-size:.7rem;font-weight:600;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.5rem}.SpringBootGame_towerGrid__Pc3wG{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}@media (min-width:640px){.SpringBootGame_towerGrid__Pc3wG{grid-template-columns:repeat(5,1fr)}}@media (min-width:768px){.SpringBootGame_towerGrid__Pc3wG{grid-template-columns:repeat(9,1fr)}}.SpringBootGame_towerCard__z6syv{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.6rem .4rem;background:rgba(255,255,255,.03);border:1.5px solid;border-radius:.75rem;cursor:pointer;transition:all .2s ease}.SpringBootGame_towerCard__z6syv:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.3)}.SpringBootGame_towerCardSelected__aPgL2{background:rgba(255,255,255,.06);box-shadow:0 0 16px rgba(5,150,105,.2);transform:translateY(-2px)}.SpringBootGame_towerCardDisabled__gLcG0{opacity:.35;cursor:not-allowed}.SpringBootGame_towerEmoji__UjNx8{font-size:1.25rem}.SpringBootGame_towerName__b0tCK{font-size:.65rem;font-weight:600}.SpringBootGame_towerCost__uSqMh{font-size:.6rem;color:rgba(255,255,255,.4);font-weight:500}.SpringBootGame_towerInfo__609BP{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;background:rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.08);border-radius:.75rem;margin-bottom:.75rem;backdrop-filter:blur(8px)}.SpringBootGame_towerInfoEmoji__BUdS0{font-size:1.75rem;flex-shrink:0}.SpringBootGame_towerInfoContent__1Ctuw{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.SpringBootGame_towerInfoName__m7CaW{font-size:.9rem;font-weight:700}.SpringBootGame_towerInfoDesc__UrVYX{font-size:.75rem;color:rgba(255,255,255,.5);line-height:1.4}.SpringBootGame_towerInfoCode__0Spac{font-family:SF Mono,Fira Code,Cascadia Mono,monospace;font-size:.7rem;color:#10b981;background:rgba(0,0,0,.3);padding:.25rem .5rem;border-radius:.375rem;overflow-x:auto;white-space:nowrap}.SpringBootGame_towerInfoStats__Qrocv{display:flex;gap:.75rem;font-size:.7rem;color:rgba(255,255,255,.45);font-weight:500}.SpringBootGame_endlessLabel__bP0bn{padding:.15rem .4rem;background:rgba(16,185,129,.2);border:1px solid rgba(16,185,129,.3);border-radius:.25rem;font-size:.6rem;font-weight:700;letter-spacing:.06em;color:#10b981;animation:SpringBootGame_bossPulse__sV_X7 1s ease infinite}@media (max-width:768px){.SpringBootGame_gameOverScreen__R7Xb_,.SpringBootGame_menuScreen__wJWWI{padding:5rem 1.25rem 2.5rem}.SpringBootGame_gameArea__oSCs2{padding:5rem .875rem 2rem}}@media (max-width:480px){.SpringBootGame_gameOverScreen__R7Xb_,.SpringBootGame_menuScreen__wJWWI{padding:4.5rem 1rem 2rem}.SpringBootGame_gameArea__oSCs2{padding:5rem .75rem 2rem}.SpringBootGame_menuIcon__9PNgQ{font-size:3.5rem}.SpringBootGame_menuSubtitle__B5_yr{font-size:.95rem}.SpringBootGame_gameOverStats__xxbNu{gap:1.25rem}.SpringBootGame_gameOverStatValue__7_IO_{font-size:1.75rem}.SpringBootGame_hud___HQk_{gap:.6rem;padding:.6rem .75rem}.SpringBootGame_hudStat___ZwKj{font-size:.8rem}.SpringBootGame_towerGrid__Pc3wG{gap:.4rem}.SpringBootGame_towerName__b0tCK{font-size:.6rem}.SpringBootGame_towerInfo__609BP{padding:.75rem;gap:.6rem}}