:root{--text-white: #fff}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%;width:100%}body{font-family:Pretendard,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,sans-serif;background:#1e1c3b;overflow:hidden}.gameRoot{position:relative;width:100%;height:100dvh;margin:0 auto;display:flex;align-items:center;flex-direction:column;justify-content:center;color:#fff;overflow:hidden}.gameRoot.isSnake{background:url(https://ccdn.lezhin.com/files/assets/img/game/bg_snakesp.jpg) no-repeat 50% / cover}.soundToggle{position:absolute;top:14px;right:14px;z-index:40;width:44px;height:44px;border:none;border-radius:50%;background:#00000073;color:#fff;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center}.game-wrapper{display:flex;width:100%;height:100%;margin:0 auto;align-items:center;justify-content:center}.game-canvas{position:relative;display:flex;flex-direction:column;width:100%;height:100%;max-width:520px;margin:0 auto;align-items:center;padding-top:8px}.game-content{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:0}.game-topbar{display:flex;align-items:center;justify-content:center;width:100%;max-width:480px;padding:10px 12px;gap:12px}.scoreBox{display:flex;flex-direction:column;align-items:center;line-height:1}.scoreLabel{font-size:11px;letter-spacing:1px;opacity:.7}.scoreValue{font-size:26px;font-weight:800}.topbar-actions{display:flex;gap:8px}.topbar-actions button{border:none;border-radius:8px;padding:8px 12px;background:#ffffff26;color:#fff;font-size:14px;font-weight:600;cursor:pointer}.topbar-actions button:hover{background:#ffffff47}.splashScreen{display:flex;width:100%;justify-content:center;align-items:center;cursor:pointer}.splashContent{display:flex;flex-direction:column;width:100%;max-width:393px;text-align:center;gap:18px;padding:0 24px}.splashLogo{width:92%;height:auto;margin:auto;pointer-events:none;aspect-ratio:1 / 1;background:url(https://ccdn.lezhin.com/files/assets/img/game/logo_snake.png) no-repeat 50% / contain}.splashText{color:var(--text-white, #fff);text-align:center;font-size:18px;font-weight:600;line-height:1.2;text-shadow:0 0 12px rgba(0,0,0,.8)}.splashBest{font-size:14px;opacity:.85;text-shadow:0 0 12px rgba(0,0,0,.8)}.snake-game-wrap{position:relative;width:100%;max-width:min(480px,calc((100dvh - 100px)*.6));aspect-ratio:480 / 800;margin:0 auto}.snake-game-wrap canvas{display:block;width:100%;height:100%}.resultBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#0009;display:flex;align-items:center;justify-content:center;padding:24px}.resultModal{width:100%;max-width:340px;background:#26243f;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:24px;text-align:center;box-shadow:0 20px 60px #00000080}.resultTitle{margin:0 0 16px;font-size:20px;font-weight:800}.resultScore{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.resultScoreLabel{font-size:12px;opacity:.7}.resultScoreValue{font-size:44px;font-weight:900;color:#7ef1c6}.resultMeta{display:flex;justify-content:center;gap:24px;margin-bottom:16px}.resultMeta div{display:flex;flex-direction:column;gap:2px}.resultMeta span{font-size:12px;opacity:.7}.resultMeta strong{font-size:18px}.resultHint{font-size:13px;margin:6px 0;opacity:.85}.resultHint.good{color:#ffd166;font-weight:700}.resultButtons{display:flex;gap:10px;margin-top:16px}.btn{flex:1;border:none;border-radius:10px;padding:12px;font-size:15px;font-weight:700;cursor:pointer;background:#ffffff26;color:#fff}.btn:hover{background:#ffffff40}.btn-primary{background:#7ef1c6;color:#16302a;width:100%;margin-top:10px}.btn-primary:hover{background:#9bf6d6}.resultButtons .btn-primary{margin-top:0}@media (max-width: 520px){.game-canvas{max-width:100%}}
