@font-face{font-family:Rubik;src:url(./fonts/Rubik-VariableWeight.woff2) format("woff2");font-weight:900;font-style:normal}@font-face{font-family:Rubik;src:url(./fonts/Rubik-VariableWeight.woff2) format("woff2");font-weight:900;font-style:italic}@font-face{font-family:Rubik;src:url(./fonts/Rubik-VariableWeight.woff2) format("woff2");font-weight:800;font-style:normal}@font-face{font-family:Rubik;src:url(./fonts/Rubik-VariableWeight.woff2) format("woff2");font-weight:800;font-style:italic}@font-face{font-family:Rubik;src:url(./fonts/Rubik-VariableWeight.woff2) format("woff2");font-weight:700;font-style:normal}@font-face{font-family:Rubik;src:url(./fonts/Rubik-VariableWeight.woff2) format("woff2");font-weight:700;font-style:italic}@font-face{font-family:Rubik;src:url(./fonts/Rubik-VariableWeight.woff2) format("woff2");font-weight:600;font-style:normal}@font-face{font-family:Rubik;src:url(./fonts/Rubik-VariableWeight.woff2) format("woff2");font-weight:600;font-style:italic}@font-face{font-family:Rubik;src:url(./fonts/Rubik-VariableWeight.woff2) format("woff2");font-weight:500;font-style:normal}@font-face{font-family:Rubik;src:url(./fonts/Rubik-VariableWeight.woff2) format("woff2");font-weight:500;font-style:italic}@font-face{font-family:Rubik;src:url(./fonts/Rubik-VariableWeight.woff2) format("woff2");font-weight:400;font-style:normal}@font-face{font-family:Rubik;src:url(./fonts/Rubik-VariableWeight.woff2) format("woff2");font-weight:400;font-style:italic}@font-face{font-family:Rubik;src:url(./fonts/Rubik-VariableWeight.woff2) format("woff2");font-weight:300;font-style:normal}@font-face{font-family:Rubik;src:url(./fonts/Rubik-VariableWeight.woff2) format("woff2");font-weight:300;font-style:italic}.game{padding:40px 0;width:100%;background:var(--game-section-bg);color:var(--game-section-txt);font-size:18px;font-family:Rubik,Arial,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}hr{border:none;border-bottom:1px solid #d8d4d0;margin-top:20px;margin-bottom:30px}.play-container .heading{display:flex;justify-content:space-between;align-items:center;gap:8px}.game .modal{display:none;position:fixed;top:0;bottom:0;left:0;right:0;z-index:99;background:#33312bb3;justify-content:center;align-items:center}.game .modal .dialog{background:var(--game-section-bg);border-radius:1.5rem;max-width:450px}.game .modal .dialog .info{padding:1.5rem;display:flex;justify-content:center;align-items:center;flex-direction:column;text-align:center;gap:8px}.game .modal h1{margin:0;font-size:32px;font-weight:500}.game .modal p{margin:0;line-height:1.2;font-size:15px}.game .modal .actions{padding:1.5rem;padding-top:0;display:flex;flex-direction:column;gap:8px}.game .modal button.new-game{font-family:inherit;background:var(--start-new-game-btn);border:none;border-radius:8px;padding:12px 20px;font-size:16px;color:#f9f6f2;text-align:center;box-shadow:rgba(0,0,0,.15) 0 2px 8px;cursor:pointer;font-weight:400}.game .modal button.cancel{font-family:inherit;background:0 0;border:2px solid var(--start-new-game-btn);border-radius:8px;padding:10px 20px;font-size:16px;color:var(--start-new-game-btn);text-align:center;cursor:pointer;line-height:1;font-weight:400}@-webkit-keyframes move-up{0%{top:25px;opacity:1}100%{top:-50px;opacity:0}}@-moz-keyframes move-up{0%{top:25px;opacity:1}100%{top:-50px;opacity:0}}@keyframes move-up{0%{top:25px;opacity:1}100%{top:-50px;opacity:0}}.scores-container{display:flex;gap:4px}.best-container,.score-container{position:relative;background:0 0;padding:15px 25px;font-size:25px;height:25px;line-height:47px;font-weight:700;border:2px solid var(--score-bg);border-radius:10px;color:var(--score-txt);text-align:center}.score-container{background:var(--score-bg)}.best-container:after,.score-container:after{position:absolute;width:100%;top:10px;left:0;text-transform:uppercase;font-size:13px;line-height:13px;text-align:center;font-weight:500}.best-container .score-addition,.score-container .score-addition{position:absolute;right:30px;font-size:25px;line-height:25px;font-weight:700;color:rgba(119,110,101,.9);z-index:100;-webkit-animation:move-up .6s ease-in;-moz-animation:move-up .6s ease-in;animation:move-up .6s ease-in;-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;animation-fill-mode:both}.score-container:after{content:"Score"}.best-container:after{content:"Best"}.restart-button-mobile{display:none}.play-container{width:500px;margin:0 auto}@-webkit-keyframes fade-in{0%{opacity:0}100%{opacity:1}}@-moz-keyframes fade-in{0%{opacity:0}100%{opacity:1}}@keyframes fade-in{0%{opacity:0}100%{opacity:1}}.game-container{margin:20px 0;position:relative;padding:10px;cursor:default;-webkit-touch-callout:none;-ms-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-ms-touch-action:none;touch-action:none;background:var(--game-bg);border-radius:16px;width:490px;height:490px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.game-container .game-message{display:none;position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(238,228,218,.5);z-index:100;text-align:center;-webkit-animation:fade-in .8s ease 1.2s;-moz-animation:fade-in .8s ease 1.2s;animation:fade-in .8s ease 1.2s;-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;animation-fill-mode:both}.game-container .game-message p{font-size:60px;font-weight:700;height:60px;line-height:60px;margin-top:222px}.game-container .game-message .lower{display:block;margin-top:59px}.game-container .game-message a{display:inline-block;background:var(--start-new-game-btn);border-radius:3px;padding:0 20px;text-decoration:none;color:#f9f6f2;height:40px;line-height:42px;margin-left:9px}.game-container .game-message a.keep-playing-button{display:none}.game-container .game-message.game-won{background:rgba(237,194,46,.5);color:#f9f6f2}.game-container .game-message.game-won a.keep-playing-button{display:inline-block}.game-container .game-message.game-over,.game-container .game-message.game-won{display:block}.grid-container{position:absolute;z-index:1}.grid-row{margin-bottom:15px}.grid-row:last-child{margin-bottom:0}.grid-row:after{content:"";display:block;clear:both}.grid-cell{width:106.25px;height:106.25px;margin-right:15px;float:left;border-radius:10px;background:#bdac97;box-shadow:rgba(0,0,0,.06) 0 2px 4px 0 inset}.grid-cell:last-child{margin-right:0}.tile-container{position:absolute;z-index:2}.tile,.tile .tile-inner{width:107px;height:107px;line-height:107px}.tile.tile-position-1-1{-webkit-transform:translate(0,0);-moz-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.tile.tile-position-1-2{-webkit-transform:translate(0,121px);-moz-transform:translate(0,121px);-ms-transform:translate(0,121px);transform:translate(0,121px)}.tile.tile-position-1-3{-webkit-transform:translate(0,242px);-moz-transform:translate(0,242px);-ms-transform:translate(0,242px);transform:translate(0,242px)}.tile.tile-position-1-4{-webkit-transform:translate(0,363px);-moz-transform:translate(0,363px);-ms-transform:translate(0,363px);transform:translate(0,363px)}.tile.tile-position-2-1{-webkit-transform:translate(121px,0);-moz-transform:translate(121px,0);-ms-transform:translate(121px,0);transform:translate(121px,0)}.tile.tile-position-2-2{-webkit-transform:translate(121px,121px);-moz-transform:translate(121px,121px);-ms-transform:translate(121px,121px);transform:translate(121px,121px)}.tile.tile-position-2-3{-webkit-transform:translate(121px,242px);-moz-transform:translate(121px,242px);-ms-transform:translate(121px,242px);transform:translate(121px,242px)}.tile.tile-position-2-4{-webkit-transform:translate(121px,363px);-moz-transform:translate(121px,363px);-ms-transform:translate(121px,363px);transform:translate(121px,363px)}.tile.tile-position-3-1{-webkit-transform:translate(242px,0);-moz-transform:translate(242px,0);-ms-transform:translate(242px,0);transform:translate(242px,0)}.tile.tile-position-3-2{-webkit-transform:translate(242px,121px);-moz-transform:translate(242px,121px);-ms-transform:translate(242px,121px);transform:translate(242px,121px)}.tile.tile-position-3-3{-webkit-transform:translate(242px,242px);-moz-transform:translate(242px,242px);-ms-transform:translate(242px,242px);transform:translate(242px,242px)}.tile.tile-position-3-4{-webkit-transform:translate(242px,363px);-moz-transform:translate(242px,363px);-ms-transform:translate(242px,363px);transform:translate(242px,363px)}.tile.tile-position-4-1{-webkit-transform:translate(363px,0);-moz-transform:translate(363px,0);-ms-transform:translate(363px,0);transform:translate(363px,0)}.tile.tile-position-4-2{-webkit-transform:translate(363px,121px);-moz-transform:translate(363px,121px);-ms-transform:translate(363px,121px);transform:translate(363px,121px)}.tile.tile-position-4-3{-webkit-transform:translate(363px,242px);-moz-transform:translate(363px,242px);-ms-transform:translate(363px,242px);transform:translate(363px,242px)}.tile.tile-position-4-4{-webkit-transform:translate(363px,363px);-moz-transform:translate(363px,363px);-ms-transform:translate(363px,363px);transform:translate(363px,363px)}.tile{position:absolute;-webkit-transition:.1s ease-in-out;-moz-transition:.1s ease-in-out;transition:.1s ease-in-out;-webkit-transition-property:-webkit-transform;-moz-transition-property:-moz-transform;transition-property:transform}.tile .tile-inner{border-radius:10px;background:#eee4da;text-align:center;font-weight:700;z-index:10;font-size:55px;box-shadow:rgba(0,0,0,.15) 0 3px 3px 0}@media screen and (max-width:520px){.tile .tile-inner{border-radius:8px}}.tile.tile-2 .tile-inner{background:#eee4da;box-shadow:0 0 30px 10px rgba(243,215,116,0),inset 0 0 0 1px rgba(255,255,255,0)}.tile.tile-4 .tile-inner{background:#ebd8b6;box-shadow:0 0 30px 10px rgba(243,215,116,0),inset 0 0 0 1px rgba(255,255,255,0)}.tile.tile-8 .tile-inner{color:#f9f6f2;background:#f2b076}.tile.tile-16 .tile-inner{color:#f9f6f2;background:#f6925f}.tile.tile-32 .tile-inner{color:#f9f6f2;background:#f77e62}.tile.tile-64 .tile-inner{color:#f9f6f2;background:#f7613f}.tile.tile-128 .tile-inner{color:#f9f6f2;background:#f2cf56;font-size:45px}@media screen and (max-width:520px){.tile.tile-128 .tile-inner{font-size:25px}}.tile.tile-256 .tile-inner{color:#f9f6f2;background:#edcc61;font-size:45px}@media screen and (max-width:520px){.tile.tile-256 .tile-inner{font-size:25px}}.tile.tile-512 .tile-inner{color:#f9f6f2;background:#edc850;font-size:45px}@media screen and (max-width:520px){.tile.tile-512 .tile-inner{font-size:25px}}.tile.tile-1024 .tile-inner{color:#f9f6f2;background:#edc53f;font-size:35px}@media screen and (max-width:520px){.tile.tile-1024 .tile-inner{font-size:15px}}.tile.tile-2048 .tile-inner{color:#f9f6f2;background:#edc22e;font-size:35px}@media screen and (max-width:520px){.tile.tile-2048 .tile-inner{font-size:15px}}.tile.tile-super .tile-inner{color:#f9f6f2;background:#3c3a32;font-size:30px}@media screen and (max-width:520px){.tile.tile-super .tile-inner{font-size:10px}}@-webkit-keyframes appear{0%{opacity:0;-webkit-transform:scale(0);-moz-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}100%{opacity:1;-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@-moz-keyframes appear{0%{opacity:0;-webkit-transform:scale(0);-moz-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}100%{opacity:1;-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@keyframes appear{0%{opacity:0;-webkit-transform:scale(0);-moz-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}100%{opacity:1;-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.tile-new .tile-inner{-webkit-animation:appear .2s ease .1s;-moz-animation:appear .2s ease .1s;animation:appear .2s ease .1s;-webkit-animation-fill-mode:backwards;-moz-animation-fill-mode:backwards;animation-fill-mode:backwards}@-webkit-keyframes pop{0%{-webkit-transform:scale(0);-moz-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}50%{-webkit-transform:scale(1.2);-moz-transform:scale(1.2);-ms-transform:scale(1.2);transform:scale(1.2)}100%{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@-moz-keyframes pop{0%{-webkit-transform:scale(0);-moz-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}50%{-webkit-transform:scale(1.2);-moz-transform:scale(1.2);-ms-transform:scale(1.2);transform:scale(1.2)}100%{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}@keyframes pop{0%{-webkit-transform:scale(0);-moz-transform:scale(0);-ms-transform:scale(0);transform:scale(0)}50%{-webkit-transform:scale(1.2);-moz-transform:scale(1.2);-ms-transform:scale(1.2);transform:scale(1.2)}100%{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.tile-merged .tile-inner{z-index:20;-webkit-animation:pop .2s ease .1s;-moz-animation:pop .2s ease .1s;animation:pop .2s ease .1s;-webkit-animation-fill-mode:backwards;-moz-animation-fill-mode:backwards;animation-fill-mode:backwards}.restart-button{background:var(--new-game-btn-bg);border-radius:8px;padding:10px 20px;text-decoration:none!important;color:var(--new-game-btn-txt);text-align:center;font-weight:400;box-shadow:rgba(0,0,0,.15) 0 2px 8px}.restart-button:hover{color:var(--new-game-btn-txt)}.power-ups{display:flex;padding:10px 20px;border-radius:16px;width:fit-content;margin:0 auto;background:var(--undo-bg);color:var(--undo-txt);gap:16px;align-items:center}.power-ups .undo-button{padding:8px;border-radius:10px;line-height:0;font-weight:400;border:none;background:var(--undo-btn-bg);color:var(--undo-btn-icon);box-shadow:transparent 0 0 0 0,transparent 0 0 0 0,rgba(140,100,60,.12) 0 5px 15px 0,rgba(140,100,60,.09) 0 2px 3px 0,rgba(0,0,0,.1) 0 -1px 0 0 inset;cursor:pointer}.undo-button svg{scale:.8}.undo-button:active,.undo-button:focus,.undo-button:hover{border:none}@media screen and (max-width:520px){.game{font-size:15px}.play-container{width:280px;margin:0 auto}.play-container .heading{flex-direction:column}.restart-button-mobile{display:block;background:0 0;border:none;color:#776e65;text-align:center;padding:0 12px}.restart-button-mobile:hover{background:0 0;background-color:transparent}.scores-container{width:100%}.best-container,.score-container{margin-top:0;padding:10px 5px;min-width:40px;width:50%;font-size:20px;line-height:40px}.best-container:after,.score-container:after{top:5px;font-size:11px;line-height:11px}.heading{margin-bottom:10px}.restart-button{display:none}.game-container{margin:16px 0;position:relative;padding:10px;cursor:default;-webkit-touch-callout:none;-ms-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-ms-touch-action:none;touch-action:none;width:280px;height:280px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.game-container .game-message{display:none;position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(238,228,218,.5);z-index:100;text-align:center;-webkit-animation:fade-in .8s ease 1.2s;-moz-animation:fade-in .8s ease 1.2s;animation:fade-in .8s ease 1.2s;-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;animation-fill-mode:both}.game-container .game-message p{font-size:60px;font-weight:700;height:60px;line-height:60px;margin-top:222px}.game-container .game-message .lower{display:block;margin-top:59px}.game-container .game-message a{display:inline-block;background:var(--start-new-game-btn);border-radius:3px;padding:0 20px;text-decoration:none;color:#f9f6f2;height:40px;line-height:42px;margin-left:9px}.game-container .game-message a.keep-playing-button{display:none}.game-container .game-message.game-won{background:rgba(237,194,46,.5);color:#f9f6f2}.game-container .game-message.game-won a.keep-playing-button{display:inline-block}.game-container .game-message.game-over,.game-container .game-message.game-won{display:block}.grid-container{position:absolute;z-index:1}.grid-row{margin-bottom:10px}.grid-row:last-child{margin-bottom:0}.grid-row:after{content:"";display:block;clear:both}.grid-cell{width:57.5px;height:57.5px;margin-right:10px;float:left;border-radius:8px}.grid-cell:last-child{margin-right:0}.tile-container{position:absolute;z-index:2}.tile,.tile .tile-inner{width:58px;height:58px;line-height:58px}.tile.tile-position-1-1{-webkit-transform:translate(0,0);-moz-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.tile.tile-position-1-2{-webkit-transform:translate(0,67px);-moz-transform:translate(0,67px);-ms-transform:translate(0,67px);transform:translate(0,67px)}.tile.tile-position-1-3{-webkit-transform:translate(0,135px);-moz-transform:translate(0,135px);-ms-transform:translate(0,135px);transform:translate(0,135px)}.tile.tile-position-1-4{-webkit-transform:translate(0,202px);-moz-transform:translate(0,202px);-ms-transform:translate(0,202px);transform:translate(0,202px)}.tile.tile-position-2-1{-webkit-transform:translate(67px,0);-moz-transform:translate(67px,0);-ms-transform:translate(67px,0);transform:translate(67px,0)}.tile.tile-position-2-2{-webkit-transform:translate(67px,67px);-moz-transform:translate(67px,67px);-ms-transform:translate(67px,67px);transform:translate(67px,67px)}.tile.tile-position-2-3{-webkit-transform:translate(67px,135px);-moz-transform:translate(67px,135px);-ms-transform:translate(67px,135px);transform:translate(67px,135px)}.tile.tile-position-2-4{-webkit-transform:translate(67px,202px);-moz-transform:translate(67px,202px);-ms-transform:translate(67px,202px);transform:translate(67px,202px)}.tile.tile-position-3-1{-webkit-transform:translate(135px,0);-moz-transform:translate(135px,0);-ms-transform:translate(135px,0);transform:translate(135px,0)}.tile.tile-position-3-2{-webkit-transform:translate(135px,67px);-moz-transform:translate(135px,67px);-ms-transform:translate(135px,67px);transform:translate(135px,67px)}.tile.tile-position-3-3{-webkit-transform:translate(135px,135px);-moz-transform:translate(135px,135px);-ms-transform:translate(135px,135px);transform:translate(135px,135px)}.tile.tile-position-3-4{-webkit-transform:translate(135px,202px);-moz-transform:translate(135px,202px);-ms-transform:translate(135px,202px);transform:translate(135px,202px)}.tile.tile-position-4-1{-webkit-transform:translate(202px,0);-moz-transform:translate(202px,0);-ms-transform:translate(202px,0);transform:translate(202px,0)}.tile.tile-position-4-2{-webkit-transform:translate(202px,67px);-moz-transform:translate(202px,67px);-ms-transform:translate(202px,67px);transform:translate(202px,67px)}.tile.tile-position-4-3{-webkit-transform:translate(202px,135px);-moz-transform:translate(202px,135px);-ms-transform:translate(202px,135px);transform:translate(202px,135px)}.tile.tile-position-4-4{-webkit-transform:translate(202px,202px);-moz-transform:translate(202px,202px);-ms-transform:translate(202px,202px);transform:translate(202px,202px)}.tile .tile-inner{font-size:28px}.game-message p{font-size:30px!important;height:30px!important;line-height:30px!important;margin-top:90px!important}.game-message .lower{margin-top:30px!important}.power-ups{padding:5px 10px;font-size:14px}.power-ups .undo-button{padding:4px}.game .modal h1{font-size:24px}.game .modal p{font-size:12px}}