@font-face{font-family:Alibaba PuHuiTi;src:url(/assets/AlibabaPuHuiTi-3-55-Regular-CaTJ3M_Z.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Alibaba PuHuiTi;src:url(/assets/AlibabaPuHuiTi-3-85-Bold-CUh0gSiv.ttf) format("truetype");font-weight:700;font-style:normal}*{margin:0;padding:0;box-sizing:border-box}html,body{margin:0;padding:0;width:100%;height:100%;background:linear-gradient(135deg,#ffecd2,#fcb69f);color:#776e65;font-family:Alibaba PuHuiTi,Clear Sans,Helvetica Neue,Arial,sans-serif;font-size:18px}body{display:flex;flex-direction:column;min-height:100vh}.container{width:500px;margin:0 auto;padding:20px;flex:1}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.title{font-size:80px;font-weight:700;color:#776e65;margin:0}.scores-container{display:flex;gap:10px}.score-box{background:#bbada0;padding:10px 20px;border-radius:3px;text-align:center;min-width:70px}.score-label{font-size:13px;color:#eee4da;text-transform:uppercase;margin-bottom:5px}.score-container,.best-score-container{font-size:25px;font-weight:700;color:#fff}.above-game{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.game-intro{flex:1;font-size:14px;line-height:1.65}.restart-button{background:#8f7a66;color:#f9f6f2;border:none;border-radius:3px;padding:10px 20px;font-size:14px;font-weight:700;cursor:pointer;transition:background .3s}.restart-button:hover{background:#9f8a76}.restart-button:active{background:#7f6a56}.game-container{position:relative;width:460px;height:460px;margin:0 auto 20px;background:#bbada0;border-radius:6px;padding:10px;touch-action:none}.grid-container{position:absolute;top:15px;left:15px;z-index:1}.grid-row{display:flex;gap:10px;margin-bottom:10px}.grid-row:last-child{margin-bottom:0}.grid-cell{width:100px;height:100px;background:#eee4da59;border-radius:3px}.tile-container{position:absolute;top:15px;left:15px;z-index:2;width:440px;height:440px}.tile{position:absolute;width:100px;height:100px}.tile-inner{width:100%;height:100%;border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:48px;font-weight:700}.tile-inner.tile-new{animation:appear .2s ease-out}@keyframes appear{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.tile-inner.tile-merged{animation:pop .2s ease-out}@keyframes pop{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.tile-remove{animation:disappear .2s ease-out forwards}@keyframes disappear{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}.game-message{display:none;position:absolute;inset:0;background:#eee4dae6;z-index:100;text-align:center;border-radius:6px}.game-message.game-won,.game-message.game-over{display:flex;flex-direction:column;justify-content:center;align-items:center}.game-message p{font-size:60px;font-weight:700;color:#776e65;margin-bottom:30px}.game-message .lower{display:flex;gap:10px}.keep-playing-button,.retry-button{background:#8f7a66;color:#f9f6f2;border:none;border-radius:3px;padding:15px 30px;font-size:16px;font-weight:700;cursor:pointer;transition:background .3s}.keep-playing-button:hover,.retry-button:hover{background:#9f8a76}.game-message.game-over .keep-playing-button{display:none}.game-message.game-over .retry-button{background:#f67c5f;font-size:18px;padding:18px 40px;animation:pulse 1.5s ease-in-out infinite}.game-message.game-over .retry-button:hover{background:#f65e3b}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 0 #f67c5fb3}50%{transform:scale(1.05);box-shadow:0 0 20px 10px #f67c5f00}}.game-explanation{margin-top:20px;text-align:center;line-height:1.65}.game-explanation strong{font-weight:700;color:#776e65}.keyboard-hint,.touch-hint{display:none}.keyboard-device .keyboard-hint,.touch-device .touch-hint{display:inline}footer{text-align:center;padding:20px;font-size:14px;color:#776e65}footer a{color:#776e65;text-decoration:underline}footer a:hover{color:#8f7a66}@media screen and (max-width:520px){html{font-size:15px}.container{width:100%;padding:10px}.title{font-size:50px}.game-container{width:320px;height:320px;padding:7px}.grid-container{top:9.5px;left:9.5px}.grid-row{gap:7px;margin-bottom:7px}.grid-cell,.tile{width:70px;height:70px}.tile-inner{font-size:30px}.tile-container{top:9.5px;left:9.5px;width:306px;height:306px}.above-game{flex-direction:column;gap:10px}.game-intro{text-align:center}}
