@font-face{font-family:Clear Sans;src:url(./ClearSans-Light-webfont-CXhSe3W8.eot);src:url(./ClearSans-Light-webfont-CXhSe3W8.eot?#iefix) format("embedded-opentype"),url(./ClearSans-Light-webfont-CGIh6Rmw.svg#clear_sans_lightregular) format("svg"),url(./ClearSans-Light-webfont-D-fBsO37.woff) format("woff");font-weight:200;font-style:normal}@font-face{font-family:Clear Sans;src:url(./ClearSans-Regular-webfont-B0zMM_QR.eot);src:url(./ClearSans-Regular-webfont-B0zMM_QR.eot?#iefix) format("embedded-opentype"),url(./ClearSans-Regular-webfont-DS1TOs1A.svg#clear_sansregular) format("svg"),url(./ClearSans-Regular-webfont-AndVGWF5.woff) format("woff");font-weight:400;font-style:normal}@font-face{font-family:Clear Sans;src:url(./ClearSans-Bold-webfont-DbCvvRfy.eot);src:url(./ClearSans-Bold-webfont-DbCvvRfy.eot?#iefix) format("embedded-opentype"),url(./ClearSans-Bold-webfont-C3DmuDqY.svg#clear_sansbold) format("svg"),url(./ClearSans-Bold-webfont-CsJVQqIs.woff) format("woff");font-weight:700;font-style:normal}:root{--stage-scale: 1;--bg: #faf8ef;--fg: #776e65;--tile-bg: #bbada0;--cell-bg: rgba(238, 228, 218, .35);--btn-bg: #8f7a66;--btn-fg: #f9f6f2}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden}body{background:var(--bg);color:var(--fg);font-family:Clear Sans,Helvetica Neue,Arial,sans-serif;font-size:18px;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation}.stage{display:flex;flex-direction:row;align-items:stretch;gap:108px;padding:24px;transform:scale(var(--stage-scale));transform-origin:center center}.left-pane{display:flex;flex-direction:column;width:500px}.right-pane{display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:4px 0}.dpad-wrap{display:flex;flex-direction:column;align-items:center;gap:14px}.heading:after{content:"";display:block;clear:both}h1.title{font-size:80px;font-weight:700;margin:0;display:block;float:left;line-height:1}.scores-container{display:flex;flex-direction:row;gap:14px;justify-content:center}.score-container,.best-container{position:relative;display:inline-block;background:var(--tile-bg);padding:26px 22px 12px;font-size:26px;line-height:30px;font-weight:700;border-radius:3px;color:var(--fg);text-align:center;min-width:96px}.score-container:after,.best-container:after{position:absolute;width:100%;top:8px;left:0;text-transform:uppercase;font-size:11px;line-height:11px;letter-spacing:1px;text-align:center;color:#eee4da;font-weight:400}.score-container:after{content:"Score"}.best-container:after{content:"Best"}.score-container .score-addition,.best-container .score-addition{position:absolute;right:30px;color:#776e65e6;font-size:25px;line-height:25px;font-weight:700;z-index:100;animation:move-up .6s ease-in both}@keyframes move-up{0%{top:25px;opacity:1}to{top:-50px;opacity:0}}.above-game:after{content:"";display:block;clear:both}.game-intro{float:left;line-height:42px;margin-bottom:0}.restart-button{display:block;background:var(--btn-bg);border-radius:3px;padding:0 20px;text-decoration:none;color:var(--btn-fg);height:40px;line-height:42px;text-align:center;float:right;cursor:pointer}.restart-button:hover{background:#9f8a76}.game-container{margin-top:40px;position:relative;padding:15px;cursor:default;background:var(--tile-bg);border-radius:6px;width:500px;height:500px;box-sizing:border-box;touch-action:none}.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:var(--cell-bg)}.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{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-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.tile-2 .tile-inner{background:#eee4da;box-shadow:0 0 30px 10px #f3d77400,inset 0 0 0 1px #fff0}.tile.tile-4 .tile-inner{background:#ede0c8;box-shadow:0 0 30px 10px #f3d77400,inset 0 0 0 1px #fff0}.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 #f3d7743d,inset 0 0 0 1px #ffffff24;font-size:45px}.tile.tile-256 .tile-inner{color:#f9f6f2;background:#edcc61;box-shadow:0 0 30px 10px #f3d77451,inset 0 0 0 1px #ffffff31;font-size:45px}.tile.tile-512 .tile-inner{color:#f9f6f2;background:#edc850;box-shadow:0 0 30px 10px #f3d77465,inset 0 0 0 1px #ffffff3d;font-size:45px}.tile.tile-1024 .tile-inner{color:#f9f6f2;background:#edc53f;box-shadow:0 0 30px 10px #f3d77479,inset 0 0 0 1px #ffffff49;font-size:35px}.tile.tile-2048 .tile-inner{color:#f9f6f2;background:#edc22e;box-shadow:0 0 30px 10px #f3d7748e,inset 0 0 0 1px #fff5;font-size:35px}.tile.tile-super .tile-inner{color:#f9f6f2;background:#3c3a32;font-size:30px}@keyframes appear{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.tile-new .tile-inner{animation:appear .2s ease .1s backwards}@keyframes pop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.tile-merged .tile-inner{z-index:20;animation:pop .2s ease .1s backwards}.game-container .game-message{display:none;position:absolute;top:0;right:0;bottom:0;left:0;background:#eee4da80;z-index:100;text-align:center;animation:fade-in .8s ease 1.2s 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(--btn-bg);border-radius:3px;padding:0 20px;text-decoration:none;color:var(--btn-fg);height:40px;line-height:42px;margin-left:9px;cursor:pointer}.game-container .game-message a.keep-playing-button{display:none}.game-container .game-message.game-won{background:#edc22e80;color:var(--btn-fg)}.game-container .game-message.game-won a.keep-playing-button{display:inline-block}.game-container .game-message.game-won,.game-container .game-message.game-over{display:block}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.dpad{display:grid;grid-template-columns:72px 72px 72px;grid-template-rows:72px 72px 72px;gap:8px;background:var(--tile-bg);padding:16px;border-radius:10px}.arrow-button{display:flex;align-items:center;justify-content:center;font-family:Clear Sans,Helvetica Neue,Arial,sans-serif;font-size:28px;color:var(--btn-fg);background:var(--btn-bg);border:none;border-radius:8px;cursor:pointer;transition:background 80ms ease,transform 60ms ease;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.arrow-button:hover{background:#9f8a76}.arrow-button:active{transform:scale(.92);background:#7a6651}.arrow-up{grid-column:2;grid-row:1}.arrow-left{grid-column:1;grid-row:2}.arrow-right{grid-column:3;grid-row:2}.arrow-down{grid-column:2;grid-row:3}.author{font-size:12px;color:#9c9088;letter-spacing:.4px;text-align:center;pointer-events:none}.hint{position:fixed;bottom:12px;left:0;right:0;text-align:center;font-size:12px;color:#9c9088;pointer-events:none;-webkit-user-select:none;user-select:none}@media screen and (max-width: 800px){body{font-size:14px}.stage{gap:18px}h1.title{font-size:56px}}@media screen and (max-height: 560px){.hint{display:none}}
