body,html{margin:0;padding:0;background:#faf8ef;color:#776e65;font-family:Helvetica Neue,Arial,sans-serif;font-size:18px}body{margin:80px 0}.heading:after{content:"";display:block;clear:both}h1.title{font-size:80px;font-weight:700;margin:0;display:block;float:left}@-webkit-keyframes move-up{0%{top:25px;opacity:1}to{top:-50px;opacity:0}}@keyframes move-up{0%{top:25px;opacity:1}to{top:-50px;opacity:0}}.scores-container{float:right;text-align:right}.best-container,.score-container{position:relative;display:inline-block;background:#bbada0;padding:15px 25px;font-size:25px;height:25px;line-height:47px;font-weight:700;border-radius:3px;color:#fff;margin:4px;text-align:center}.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;color:#eee4da}.best-container .score-addition,.score-container .score-addition{position:absolute;right:30px;color:red;font-size:25px;line-height:25px;font-weight:700;color:hsla(30,8%,43%,.9);z-index:100;-webkit-animation:move-up .6s ease-in;animation:move-up .6s ease-in;-webkit-animation-fill-mode:both;animation-fill-mode:both}.score-container:after{content:"Score"}.best-container:after{content:"Best"}.container{width:500px;margin:0 auto}@-webkit-keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@-webkit-keyframes slide-up{0%{margin-top:32%}to{margin-top:20%}}@keyframes slide-up{0%{margin-top:32%}to{margin-top:20%}}.game-container{margin-top:40px;position:relative;padding:15px;cursor:default;-webkit-touch-callout:none;-ms-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;touch-action:none;background:#bbada0;border-radius:6px;width:500px;height:500px;box-sizing:border-box}.game-message{display:none;position:absolute;top:0;right:0;bottom:0;left:0;background:hsla(30,37%,89%,.73);z-index:100;padding-top:40px;text-align:center;-webkit-animation:fade-in .8s ease 1.2s;animation:fade-in .8s ease 1.2s;-webkit-animation-fill-mode:both;animation-fill-mode:both}.game-message p{font-size:60px;font-weight:700;height:60px;line-height:60px;margin-top:222px}.game-message .lower{display:block;margin-top:29px}.game-message a{display:inline-block;background:#8f7a66;border-radius:3px;padding:0 20px;text-decoration:none;color:#f9f6f2;height:40px;line-height:42px;cursor:pointer;margin-left:9px}.game-message a.keep-playing-button{display:none}.game-message.game-won{background:rgba(237,194,46,.5);color:#f9f6f2}.game-message.game-won a.keep-playing-button{display:inline-block}.game-message.game-over,.game-message.game-won{display:block}.game-message.game-over p,.game-message.game-won p{-webkit-animation:slide-up 1.5s ease-in-out 2.5s;animation:slide-up 1.5s ease-in-out 2.5s;-webkit-animation-fill-mode:both;animation-fill-mode:both}.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:3px;background:hsla(30,37%,89%,.35)}.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{transform:translate(0)}.tile.tile-position-1-2{transform:translateY(121px)}.tile.tile-position-1-3{transform:translateY(242px)}.tile.tile-position-1-4{transform:translateY(363px)}.tile.tile-position-2-1{transform:translate(121px)}.tile.tile-position-2-2{transform:translate(121px,121px)}.tile.tile-position-2-3{transform:translate(121px,242px)}.tile.tile-position-2-4{transform:translate(121px,363px)}.tile.tile-position-3-1{transform:translate(242px)}.tile.tile-position-3-2{transform:translate(242px,121px)}.tile.tile-position-3-3{transform:translate(242px,242px)}.tile.tile-position-3-4{transform:translate(242px,363px)}.tile.tile-position-4-1{transform:translate(363px)}.tile.tile-position-4-2{transform:translate(363px,121px)}.tile.tile-position-4-3{transform:translate(363px,242px)}.tile.tile-position-4-4{transform:translate(363px,363px)}.tile{position:absolute;transition:.1s ease-in-out;transition-property:transform}.tile .tile-inner{border-radius:3px;background:#eee4da;text-align:center;font-weight:700;z-index:10;font-size:55px}.tile.tile-2 .tile-inner{background:#eee4da}.tile.tile-2 .tile-inner,.tile.tile-4 .tile-inner{box-shadow:0 0 30px 10px hsla(47,84%,70%,0),inset 0 0 0 1px hsla(0,0%,100%,0)}.tile.tile-4 .tile-inner{background:#ede0c8}.tile.tile-8 .tile-inner{color:#f9f6f2;background:#f2b179}.tile.tile-16 .tile-inner{color:#f9f6f2;background:#f59563}.tile.tile-32 .tile-inner{color:#f9f6f2;background:#f67c5f}.tile.tile-64 .tile-inner{color:#f9f6f2;background:#f65e3b}.tile.tile-128 .tile-inner{color:#f9f6f2;background:#edcf72;box-shadow:0 0 30px 10px hsla(47,84%,70%,.238),inset 0 0 0 1px hsla(0,0%,100%,.143);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;box-shadow:0 0 30px 10px hsla(47,84%,70%,.317),inset 0 0 0 1px hsla(0,0%,100%,.19);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;box-shadow:0 0 30px 10px hsla(47,84%,70%,.397),inset 0 0 0 1px hsla(0,0%,100%,.238);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;box-shadow:0 0 30px 10px hsla(47,84%,70%,.476),inset 0 0 0 1px hsla(0,0%,100%,.286);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;box-shadow:0 0 30px 10px hsla(47,84%,70%,.556),inset 0 0 0 1px hsla(0,0%,100%,.333);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;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes appear{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.tile-new .tile-inner{-webkit-animation:appear .2s ease .1s;animation:appear .2s ease .1s;-webkit-animation-fill-mode:backwards;animation-fill-mode:backwards}@-webkit-keyframes pop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes pop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.tile-merged .tile-inner{z-index:20;-webkit-animation:pop .2s ease .1s;animation:pop .2s ease .1s;-webkit-animation-fill-mode:backwards;animation-fill-mode:backwards}.above-game:after{content:"";display:block;clear:both}.game-intro{float:left;line-height:42px;margin-bottom:0}.restart-button{display:inline-block;background:#8f7a66;border-radius:3px;padding:0 20px;text-decoration:none;color:#f9f6f2;height:40px;line-height:42px;cursor:pointer;display:block;text-align:center;float:right}@media screen and (max-width:520px){body,html{font-size:15px}body{margin:0;padding:20px}h1.title{font-size:27px;margin-top:15px}.container{width:280px;margin:0 auto}.best-container,.score-container{margin-top:0;padding:15px 10px;min-width:40px}.heading{margin-bottom:10px}.game-intro{width:55%;line-height:1.65}.game-intro,.restart-button{display:block;box-sizing:border-box}.restart-button{width:42%;padding:0;margin-top:2px}.game-container{margin-top:17px;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;touch-action:none;background:#bbada0;border-radius:6px;width:280px;height:280px;box-sizing:border-box}.game-message{display:none;position:absolute;top:0;right:0;bottom:0;left:0;background:hsla(30,37%,89%,.73);z-index:100;padding-top:40px;text-align:center;-webkit-animation:fade-in .8s ease 1.2s;animation:fade-in .8s ease 1.2s;-webkit-animation-fill-mode:both;animation-fill-mode:both}.game-message p{font-size:60px;font-weight:700;height:60px;line-height:60px;margin-top:222px}.game-message .lower{display:block;margin-top:29px}.game-message a{display:inline-block;background:#8f7a66;border-radius:3px;padding:0 20px;text-decoration:none;color:#f9f6f2;height:40px;line-height:42px;cursor:pointer;margin-left:9px}.game-message a.keep-playing-button{display:none}.game-message.game-won{background:rgba(237,194,46,.5);color:#f9f6f2}.game-message.game-won a.keep-playing-button{display:inline-block}.game-message.game-over,.game-message.game-won{display:block}.game-message.game-over p,.game-message.game-won p{-webkit-animation:slide-up 1.5s ease-in-out 2.5s;animation:slide-up 1.5s ease-in-out 2.5s;-webkit-animation-fill-mode:both;animation-fill-mode:both}.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:3px;background:hsla(30,37%,89%,.35)}.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{transform:translate(0)}.tile.tile-position-1-2{transform:translateY(67px)}.tile.tile-position-1-3{transform:translateY(135px)}.tile.tile-position-1-4{transform:translateY(202px)}.tile.tile-position-2-1{transform:translate(67px)}.tile.tile-position-2-2{transform:translate(67px,67px)}.tile.tile-position-2-3{transform:translate(67px,135px)}.tile.tile-position-2-4{transform:translate(67px,202px)}.tile.tile-position-3-1{transform:translate(135px)}.tile.tile-position-3-2{transform:translate(135px,67px)}.tile.tile-position-3-3{transform:translate(135px,135px)}.tile.tile-position-3-4{transform:translate(135px,202px)}.tile.tile-position-4-1{transform:translate(202px)}.tile.tile-position-4-2{transform:translate(202px,67px)}.tile.tile-position-4-3{transform:translate(202px,135px)}.tile.tile-position-4-4{transform:translate(202px,202px)}.tile .tile-inner{font-size:35px}.game-message{padding-top:0}.game-message p{font-size:30px!important;height:30px!important;line-height:30px!important;margin-top:32%!important;margin-bottom:0!important}.game-message .lower{margin-top:10px!important}}