.mango-game-wrapper{--tile-size:80px;--tile-gap:12px;--board-size:calc(4 * var(--tile-size) + 3 * var(--tile-gap));--border-radius:6px;--transition-duration:0.15s;--font-family:"Segoe UI",Tahoma,Geneva,Verdana,sans-serif}.mango-game-wrapper *{box-sizing:border-box;margin:0;padding:0;font-family:var(--font-family)}.mango-game-wrapper body{background-color:#faf8ef;color:#776e65;line-height:1.5;min-height:100vh;display:flex;justify-content:center;align-items:flex-start;padding:20px 20px 60px;-webkit-tap-highlight-color:transparent}.mango-game-wrapper .container{max-width:600px;width:100%;margin:0 auto}.mango-game-wrapper .brand-title{font-weight:800;font-size:18px;letter-spacing:.5px;color:#8f7a66;margin-bottom:6px}.mango-game-wrapper .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.mango-game-wrapper h1{font-size:clamp(50px,8vw,80px);font-weight:700;color:#776e65;margin:0}.mango-game-wrapper .scores{display:flex;gap:10px}.mango-game-wrapper .score-box{background:#bbada0;color:#fff;padding:10px 15px;border-radius:5px;text-align:center;min-width:80px}.mango-game-wrapper .score-title{display:block;font-size:12px;text-transform:uppercase;font-weight:700}.mango-game-wrapper #best-score,.mango-game-wrapper #score{font-size:20px;font-weight:700}.mango-game-wrapper .game-intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.mango-game-wrapper .game-intro p{font-size:18px;margin:0}.mango-game-wrapper button{background:#8f7a66;color:#fff;border:none;border-radius:5px;padding:12px 20px;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s;white-space:nowrap}.mango-game-wrapper button:hover{background:#9f8b77;transform:translateY(-1px)}.mango-game-wrapper button:active{transform:translateY(0)}.mango-game-wrapper .game-area{position:relative;display:grid;grid-template-columns:var(--board-size) minmax(220px,280px);gap:24px;justify-content:center;align-items:start;margin-bottom:30px}.mango-game-wrapper .game-container{position:relative;background:#bbada0;border-radius:var(--border-radius);width:var(--board-size);height:var(--board-size);overflow:hidden;padding:0;border:0;box-sizing:content-box;box-shadow:0 4px 20px rgba(0,0,0,.1);touch-action:none;-webkit-user-select:none;user-select:none}.mango-game-wrapper .grid{position:absolute;z-index:1;width:100%;height:100%;display:grid;grid-template-columns:repeat(4,var(--tile-size));grid-template-rows:repeat(4,var(--tile-size));gap:var(--tile-gap);padding:0;user-select:none}.mango-game-wrapper .leaderboard-panel{background:#f9f6f2;border-radius:var(--border-radius);padding:12px 14px;color:#776e65;box-shadow:0 2px 10px rgba(0,0,0,.08);max-height:calc(var(--board-size));overflow:auto}.mango-game-wrapper .leaderboard-panel h3{margin-bottom:8px;font-size:18px;font-weight:700}.mango-game-wrapper .leaderboard-list{list-style:none;display:grid;gap:8px;margin:0;padding:0}.mango-game-wrapper .leaderboard-list li{background:#fff;border-radius:8px;padding:8px 10px;font-weight:600;display:flex;justify-content:space-between;align-items:center;box-shadow:0 1px 3px rgba(0,0,0,.06)}.mango-game-wrapper .leaderboard-list li span.label{opacity:.85}.mango-game-wrapper .leaderboard-panel .leaderboard-more{margin-top:10px;width:100%}@media (max-width:900px){.mango-game-wrapper .game-area{grid-template-columns:1fr;justify-items:center}.mango-game-wrapper .game-container{justify-self:center}.mango-game-wrapper .leaderboard-panel{max-height:none;width:min(100%,var(--board-size));justify-self:center}}.mango-game-wrapper .cell{background:hsla(30,37%,89%,.35)}.mango-game-wrapper .cell,.mango-game-wrapper .tile{border-radius:3px;width:var(--tile-size);height:var(--tile-size)}.mango-game-wrapper .tile{position:absolute;display:flex;align-items:center;justify-content:center;font-size:calc(var(--tile-size) * .8);line-height:var(--tile-size);white-space:nowrap;overflow:hidden;background:#eee4da;transition:all var(--transition-duration) ease-in-out;z-index:2;box-shadow:0 2px 8px rgba(0,0,0,.1);user-select:none}.mango-game-wrapper .tile-2{background:#ffebee}.mango-game-wrapper .tile-4{background:#e8f5e8}.mango-game-wrapper .tile-8{background:#fce4ec}.mango-game-wrapper .tile-16{background:#fff3e0}.mango-game-wrapper .tile-32{background:#f3e5f5}.mango-game-wrapper .tile-64{background:#fff9c4}.mango-game-wrapper .tile-128{background:#ffecb3}.mango-game-wrapper .tile-256{background:#e0f2f1}.mango-game-wrapper .tile-512{background:#fce4ec}.mango-game-wrapper .tile-1024{background:#e8f5e8}.mango-game-wrapper .tile-2048{background:#fff3e0}.mango-game-wrapper .tile-merge{animation:merge-bounce .3s ease-out}@keyframes merge-bounce{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.mango-game-wrapper .board-shake{animation:shake .3s ease-in-out}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.mango-game-wrapper .game-over{position:fixed;inset:0;background:hsla(30,37%,89%,.95);z-index:2000;display:none;border-radius:0}.mango-game-wrapper .game-over-content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;width:min(92vw,560px)}.mango-game-wrapper .game-over p{font-size:clamp(40px,6vw,60px);font-weight:700;color:#776e65;margin-bottom:20px}.mango-game-wrapper .leaderboard-actions{margin-top:16px;background:#fff;border:2px solid #8f7a66;border-radius:12px;padding:12px;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;box-shadow:0 8px 24px rgba(0,0,0,.12),0 2px 8px rgba(0,0,0,.08)}.mango-game-wrapper .leaderboard-actions input#player-name{width:min(320px,70vw);padding:12px 14px;border-radius:8px;border:2px solid #d8cfc4;background:#fefefe;color:#776e65;font-size:16px;outline:none}.mango-game-wrapper .leaderboard-actions input#player-name::placeholder{color:#b3a99e}.mango-game-wrapper .leaderboard-actions input#player-name:focus{border-color:#8f7a66;box-shadow:0 0 0 3px hsla(29,17%,48%,.2)}.mango-game-wrapper .leaderboard-actions button#submit-score{height:44px;padding:0 16px;font-size:16px;white-space:nowrap}@media (max-width:600px){.mango-game-wrapper .leaderboard-actions{grid-template-columns:1fr;justify-items:center;width:min(90vw,420px)}.mango-game-wrapper .leaderboard-actions button#submit-score,.mango-game-wrapper .leaderboard-actions input#player-name{width:100%}}.mango-game-wrapper .hint-arrow{position:absolute;top:-10px;right:-60px;display:none;flex-direction:column;align-items:center;background:#8f7a66;color:#fff;padding:8px 12px;border-radius:8px;font-size:14px;font-weight:700;box-shadow:0 2px 10px rgba(0,0,0,.2);animation:hint-pulse 1.5s infinite;z-index:50}.mango-game-wrapper .arrow-icon{font-size:20px;margin-bottom:4px}.mango-game-wrapper .hint-text{font-size:12px;white-space:nowrap}@keyframes hint-pulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.mango-game-wrapper .game-explanation{text-align:center;color:#776e65;font-size:16px;line-height:1.6;margin-bottom:30px}.mango-game-wrapper .fruit-legend{margin-top:20px;text-align:center}.mango-game-wrapper .fruit-legend h3{color:#776e65;margin-bottom:15px;font-size:18px}.mango-game-wrapper .legend-row{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;max-width:100%}.mango-game-wrapper .legend-item{display:flex;flex-direction:column;align-items:center;background:#f9f6f2;border-radius:6px;padding:8px 6px;min-width:50px;box-shadow:0 1px 3px rgba(0,0,0,.1)}.mango-game-wrapper .legend-item .fruit{font-size:20px;margin-bottom:4px}.mango-game-wrapper .legend-item .value{font-size:12px;font-weight:700;color:#776e65}@media (max-width:600px){.mango-game-wrapper{--tile-size:70px;--tile-gap:10px}.mango-game-wrapper body{padding:10px 10px 54px}.mango-game-wrapper .header{align-items:center}.mango-game-wrapper .game-intro,.mango-game-wrapper .header{flex-direction:column;gap:10px}.mango-game-wrapper .hint-arrow{right:-50px;font-size:12px}.mango-game-wrapper .legend-row{gap:6px}.mango-game-wrapper .legend-item{min-width:45px;padding:6px 4px}.mango-game-wrapper .legend-item .fruit{font-size:18px}.mango-game-wrapper .legend-item .value{font-size:11px}}@media (max-width:400px){.mango-game-wrapper{--tile-size:60px;--tile-gap:8px}.mango-game-wrapper .hint-arrow{right:-40px;top:0}}.mango-game-wrapper .leaderboard-ticker{position:fixed;left:0;right:0;bottom:0;background:#8f7a66;color:#fff;padding:8px 12px;font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:1000;box-shadow:0 -2px 10px rgba(0,0,0,.1)}@media (max-width:600px){.mango-game-wrapper .leaderboard-ticker{font-size:13px;padding:6px 10px}}