#root,body,html{-webkit-overflow-scrolling:touch;height:auto;min-height:100%;overflow-y:auto}*{-webkit-tap-highlight-color:transparent}body.gameplay-page .app-header,body.replay-page .app-header{display:none!important}.app-header{background-color:#d88a3c;border-bottom:3px solid #333;box-shadow:0 2px 8px #0000001a;left:0;padding-top:env(safe-area-inset-top);position:fixed;right:0;top:0;z-index:1000}.header-container{justify-content:space-between;margin:0 auto;max-width:1200px;padding:.75rem 1rem}.header-container,.header-logo{align-items:center;display:flex}.header-logo{color:#333;gap:.75rem;text-decoration:none}.header-logo img{border-radius:12px;height:60px;width:60px}.header-logo h1{font-family:Sartoshi,sans-serif;font-size:1.75rem;margin:0}.header-right{align-items:center;display:flex;gap:1rem}.user-info-outside{align-items:center;background-color:#000;border:2px solid #333;border-radius:8px;box-shadow:0 2px 4px #0003;color:#fff;cursor:pointer;display:flex;font-family:Sartoshi,sans-serif;font-size:.95rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:all .2s;white-space:nowrap}.user-info-outside:hover{background-color:#333;box-shadow:0 4px 8px #0000004d;transform:translateY(-2px)}.user-info-outside:active{box-shadow:0 2px 4px #0003;transform:translateY(0)}.x-logo-small{display:inline-block;height:16px;width:16px}.user-info-outside .x-logo-small{filter:invert(1)}.sign-in-btn-outside{align-items:center;background-color:#000;border:2px solid #333;border-radius:8px;box-shadow:0 2px 4px #0003;color:#fff;cursor:pointer;display:flex;font-family:Sartoshi,sans-serif;font-size:.95rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s;white-space:nowrap}.sign-in-btn-outside .x-logo-small{filter:invert(1)}.sign-in-btn-outside:hover{background-color:#333;box-shadow:0 4px 8px #0000004d;transform:translateY(-2px)}.sign-in-btn-outside:active{box-shadow:0 2px 4px #0003;transform:translateY(0)}.hamburger{background:#0000;border:none;cursor:pointer;display:flex;flex-direction:column;height:2rem;justify-content:space-around;margin:0;padding:0;width:2rem;z-index:1001}.hamburger span{background:#333;border-radius:10px;height:.25rem;position:relative;transform-origin:1px;transition:all .3s linear;width:2rem}.hamburger.open span:first-child{transform:rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0;transform:translateX(20px)}.hamburger.open span:nth-child(3){transform:rotate(-45deg)}.nav-menu{background-color:#feac64;border-left:3px solid #333;box-shadow:-2px 0 8px #0000001a;height:100vh;position:fixed;right:-100%;top:0;transition:right .3s ease-in-out;width:280px;z-index:999}.nav-menu.open{right:0}.menu-content{display:flex;flex-direction:column;gap:1rem;padding:5rem 1.5rem 1.5rem}.user-info{background-color:#ffffff4d;border-radius:8px;color:#333;font-size:1rem;font-weight:700;margin-bottom:1rem}.menu-item,.user-info{padding:1rem;text-align:center}.menu-item{border:2px solid #333;border-radius:8px;box-shadow:0 2px 4px #0003;cursor:pointer;font-family:Sartoshi,sans-serif;font-size:1.25rem;font-weight:600;transition:all .2s}.menu-item:hover{box-shadow:0 4px 8px #0000004d;transform:translateY(-2px)}.menu-item:active{box-shadow:0 2px 4px #0003;transform:translateY(0)}.home-btn{background-color:#1e8449;color:#fff}.about-btn{background-color:#9b59b6;color:#fff}.account-btn,.leaderboard-btn{background-color:#f39c12;color:#333}.leaderboard-btn{border-color:#333}.replay-btn{background-color:#3498db;color:#fff}.sign-in-btn,.sign-out-btn{background-color:#000;color:#fff}.sign-out-btn{align-items:center;display:flex;gap:.5rem;justify-content:center}.sign-out-btn .x-logo-small{filter:invert(1)}.refresh-btn{align-items:center;background-color:#52cdfe;color:#000;display:flex;flex-direction:column;gap:.25rem}.refresh-build-info{font-size:.65rem;font-weight:400;opacity:.8}.build-info-menu{color:#000;font-size:.75rem;font-weight:600;margin-top:auto;padding-top:2rem;text-align:center}.app-header .overlay{background-color:#00000080;display:block;inset:0;pointer-events:auto;position:fixed;z-index:998}@media (max-width:768px){.header-logo h1{font-size:1.5rem}.header-logo img{height:50px;width:50px}.nav-menu{width:250px}.sign-in-btn-outside,.user-info-outside{font-size:.85rem;padding:.4rem .75rem}.header-right{gap:.75rem}}@media (max-width:480px){.header-logo h1{font-size:1.25rem}.header-logo img{height:45px;width:45px}.nav-menu{width:220px}.menu-item{font-size:1.1rem;padding:.875rem}.user-info-outside{max-width:120px;overflow:hidden;text-overflow:ellipsis}.sign-in-btn-outside,.user-info-outside{font-size:.8rem;padding:.35rem .6rem}.header-right{gap:.5rem}}.signout-modal{text-align:center}.signout-modal h3{color:#333;font-size:1.5rem;margin-bottom:1rem;margin-top:0}.signout-modal p{color:#666;font-size:1rem;margin-bottom:1.5rem}.modal-buttons{gap:1rem}.modal-button{border:2px solid #333;border-radius:8px;box-shadow:0 2px 4px #0003;font-family:Sartoshi,sans-serif;font-size:1rem;padding:.75rem 1.5rem;transition:all .2s}.cancel-button{background-color:#1e8449}.cancel-button:hover{background-color:#186839}.cancel-button:hover,.confirm-button:hover{box-shadow:0 4px 8px #0000004d;transform:translateY(-2px)}.modal-button:active{box-shadow:0 2px 4px #0003;transform:translateY(0)}.signin-modal{min-width:280px;text-align:center}.signin-modal h3{color:#333;font-size:1.5rem;margin-bottom:1.5rem;margin-top:0}.signin-options{display:flex;flex-direction:column;gap:.75rem}.signin-option-btn{align-items:center;border:2px solid #333;border-radius:8px;box-shadow:0 2px 4px #0003;cursor:pointer;display:flex;font-family:Sartoshi,sans-serif;font-size:1rem;font-weight:600;gap:.75rem;justify-content:center;padding:.875rem 1.25rem;transition:all .2s}.signin-option-btn:hover:not(:disabled){box-shadow:0 4px 8px #0000004d;transform:translateY(-2px)}.signin-option-btn:active:not(:disabled){box-shadow:0 2px 4px #0003;transform:translateY(0)}.signin-option-btn:disabled{cursor:not-allowed;opacity:.5}.signin-option-btn.twitter-btn{background-color:#000;color:#fff}.signin-option-btn.metamask-btn{background-color:#f6851b;color:#fff}.signin-option-btn.coinbase-btn{background-color:#0052ff;color:#fff}.signin-option-btn.phantom-btn{background-color:#ab9ff2;color:#fff}.signin-icon{align-items:center;display:flex;height:20px;justify-content:center;width:20px}.signin-option-btn .signin-icon img{filter:invert(1)}.landingPageContainer{font-size:30px;padding-bottom:2rem;padding-top:5rem;text-align:center}.landingPageContainer button{font-size:40px}.games-container{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,350px));justify-content:center;margin:0 auto;max-width:1200px;padding:0 1rem}@media (max-width:768px){.games-container{grid-template-columns:1fr}}.game-item{align-items:center;display:flex;flex-direction:column;text-align:center}.game-item img{border:2px solid #000;border-radius:8px;box-shadow:0 2px 4px #0000001a;cursor:pointer;height:150px;object-fit:cover;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;width:300px}.game-item img:hover{box-shadow:0 6px 12px #00000026;transform:translateY(-5px)}.game-item p{margin-top:.5rem}.game-item a{color:inherit;text-decoration:none}.about-container{align-items:flex-start;display:flex;justify-content:center;min-height:calc(100vh - 80px);overflow-y:auto;padding:5rem 1rem 2rem}.about-content{border-radius:12px;max-width:800px;padding:2rem;width:100%}.about-logo{border-radius:12px;display:block;height:80px;margin:0 auto 1.5rem;width:80px}.about-content h1{font-family:Sartoshi,sans-serif;font-size:2.5rem;text-align:center}.about-content h1,.about-section{color:inherit;margin-bottom:2rem}.about-section h2{color:inherit;font-family:Sartoshi,sans-serif;font-size:1.75rem;margin-bottom:1rem}.about-section p{font-size:1.25rem;line-height:1.6;margin-bottom:1rem}.about-section ul{list-style:none;padding-left:0}.about-section li{font-size:1.25rem;line-height:1.8;padding-left:1.5rem;position:relative}.about-section li:before{content:"🎮";left:0;position:absolute}.external-link{color:inherit;font-weight:700;text-decoration:none;transition:color .2s}.external-link:hover{color:inherit;text-decoration:underline}.back-link{color:inherit;display:inline-block;font-size:1rem;margin-top:2rem;opacity:.8;text-decoration:none}.back-link:hover{opacity:1;text-decoration:underline}@media (max-width:768px){.about-content{padding:1.5rem}.about-content h1{font-size:2rem}.about-section h2{font-size:1.5rem}.about-section li,.about-section p{font-size:1rem}.about-logo{height:60px;width:60px}}@media (max-width:480px){.about-container{padding:4rem .5rem 2rem}.about-content{padding:1rem}.about-content h1{font-size:1.75rem}.about-section h2{font-size:1.25rem}}.changelog-container{align-items:flex-start;display:flex;justify-content:center;min-height:calc(100vh - 80px);overflow-y:auto;padding:5rem 1rem 2rem}.changelog-content{border-radius:12px;max-width:800px;padding:2rem;width:100%}.changelog-logo{border-radius:12px;display:block;height:80px;margin:0 auto 1.5rem;width:80px}.changelog-content h1{color:inherit;font-family:Sartoshi,sans-serif;font-size:2.5rem;margin-bottom:.5rem;text-align:center}.changelog-intro{color:inherit;font-size:1.1rem;margin-bottom:2rem;opacity:.8;text-align:center}.changelog-back-link{color:inherit;display:inline-block;font-size:1rem;margin-bottom:1.5rem;opacity:.8;text-decoration:none}.changelog-back-link:hover{opacity:1;text-decoration:underline}.changelog-toc{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.changelog-toc h2{color:inherit;font-family:Sartoshi,sans-serif;font-size:1.25rem;margin:0 0 1rem}.changelog-toc ul{list-style:none;margin:0;padding:0}.changelog-toc li{margin-bottom:.5rem}.changelog-toc a{border-radius:6px;color:inherit;display:flex;gap:1rem;padding:.5rem .75rem;text-decoration:none;transition:background .2s}.changelog-toc a:hover{background:#ffffff1a}.toc-date{font-size:.9rem;opacity:.6;white-space:nowrap}.toc-title{font-weight:600}.changelog-entry{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem}.changelog-entry.expanded{background:#0000;border:none;padding:0}.changelog-entry-header{margin-bottom:1rem}.changelog-date{font-size:.9rem;margin-bottom:.25rem;opacity:.7}.changelog-title{color:inherit;font-family:Sartoshi,sans-serif;font-size:1.5rem;margin:0 0 .5rem}.changelog-entry:not(.expanded) .changelog-title:hover{text-decoration:underline}.changelog-games{display:flex;flex-wrap:wrap;gap:.5rem}.game-tag{background:#ffffff26;border-radius:20px;font-size:.8rem;font-weight:600;padding:.25rem .75rem}.changelog-summary{font-size:1.25rem;line-height:1.5;margin-bottom:1rem;opacity:.9}.changelog-changes{list-style:none;margin:0 0 1rem;padding:0}.change-item{align-items:flex-start;display:flex;font-size:1.15rem;gap:.75rem;line-height:1.5;padding:.5rem 0}.change-icon{align-items:center;border-radius:4px;display:inline-flex;flex-shrink:0;font-size:14px;font-weight:700;height:24px;justify-content:center;width:24px}.change-icon.feature{background:#27ae60;color:#fff}.change-icon.fix{background:#e74c3c;color:#fff}.change-icon.improvement{background:#3498db;color:#fff}.change-icon.design{background:#9b59b6;color:#fff}.changelog-link{color:#52cdfe;font-weight:600;text-decoration:none}.changelog-link:hover{text-decoration:underline}.changelog-share{border-top:1px solid #ffffff26;margin-top:2rem;padding-top:1.5rem}.changelog-share h3{font-family:Sartoshi,sans-serif;font-size:1.1rem;margin-bottom:1rem}.share-button{border:none;border-radius:8px;cursor:pointer;font-family:Sartoshi,sans-serif;font-size:1rem;font-weight:600;margin-bottom:.75rem;margin-right:.75rem;padding:.75rem 1.5rem;transition:all .2s}.share-button.twitter{background:#000;color:#fff}.share-button.twitter:hover{background:#333}.share-button.copy{background:#ffffff26;border:1px solid #fff3;color:inherit}.share-button.copy:hover{background:#ffffff40}@media (max-width:768px){.changelog-content{padding:1.5rem}.changelog-content h1{font-size:2rem}.changelog-title{font-size:1.25rem}.changelog-summary{font-size:1rem}.change-item{font-size:.95rem}.changelog-logo{height:60px;width:60px}}@media (max-width:480px){.changelog-container{padding:4rem .5rem 2rem}.changelog-content,.changelog-entry{padding:1rem}.share-button{display:block;margin-right:0;width:100%}}.game-container{max-width:400px;padding:2em}.title{font-size:2em;margin-bottom:1em}section{border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:2em;padding:1em;width:100%}.games-list{border-collapse:collapse;width:100%}.create-game-button{width:250px}.view-games-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:10px 20px;transition:background-color .3s}.view-games-button:hover{background-color:#0056b3}input[type=text]{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:Sartoshi;margin-left:10px;max-width:250px;min-width:150px;padding-left:10px}.chess-games-container{font-family:Sartoshi,sans-serif;margin:0 auto;max-width:1200px;padding:20px}.title{font-size:2.5rem}.navigation-buttons,.title{margin-bottom:30px}.nav-button{font-size:16px}.loading{font-size:18px;margin:40px 0}.error,.loading{text-align:center}.error{margin:20px 0;padding:15px}.error button{margin-top:10px;padding:8px 16px}.no-games{color:#666;font-size:18px;margin:40px 0;text-align:center}.games-table-container{margin-bottom:30px;overflow-x:auto}.games-table{background-color:#feac64;border-collapse:collapse;box-shadow:0 2px 4px #0000001a;width:100%}.games-table td,.games-table th{border-bottom:1px solid #ddd;padding:12px 15px;text-align:left}.games-table th{color:#333;font-weight:700}.games-table th,.games-table tr:hover{background-color:#fd9a47}.game-name,.game-result{font-weight:500}.move-count{text-align:center}.completed-date{color:#666;font-size:14px}.replay-button{background-color:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .3s}.replay-button:hover{background-color:#218838}.pagination-controls{margin-top:20px}.pagination-button{background-color:#007bff;border:none;color:#fff;font-size:16px;padding:10px 20px;transition:background-color .3s,opacity .3s}.pagination-button:hover:not(:disabled){background-color:#0056b3}.pagination-button:disabled{background-color:#ccc;opacity:.6}.page-indicator{color:#333;font-size:16px;font-weight:500}@media (max-width:768px){.chess-games-container{padding:10px}.title{font-size:2rem}.navigation-buttons{align-items:center;flex-direction:column}.games-table{font-size:14px}.games-table td,.games-table th{padding:8px 10px}.completed-date{font-size:12px}}.replay-container{margin:0 auto;max-width:1400px;padding:20px}.replay-container,.title{color:#000;font-family:Sartoshi,sans-serif}.title{font-size:2rem;margin-bottom:20px;text-align:center}.navigation-buttons{display:flex;gap:10px;justify-content:center;margin-bottom:20px}.nav-button{background-color:#007bff;border:none;border-radius:4px;font-size:14px;padding:10px 20px}.nav-button:hover{background-color:#0056b3}.game-info{border-radius:4px;color:#000;font-family:Sartoshi,sans-serif;margin-bottom:20px;padding:15px;text-align:center}.game-info p{margin:5px 0}.replay-content{display:flex;gap:30px;justify-content:center;margin-bottom:30px}.board-section{flex:0 0 auto}.replay-container .chess-container{align-items:stretch;display:flex;margin:0 auto;max-width:632px;width:100%}.replay-container .chessboard-wrapper{flex:1 1;position:relative}.replay-container .column-labels{align-items:center;display:flex;flex-direction:row;justify-content:center;margin-bottom:2px;width:100%}.replay-container .column-label{align-items:center;display:flex;flex:1 1;font-size:18px;height:24px;justify-content:center;margin:0;text-align:center}.replay-container .row-labels{align-items:center;align-self:stretch;display:flex;flex-direction:column;justify-content:space-around;margin-top:26px}.replay-container .row-label{align-items:center;display:flex;flex:0 0 auto;font-size:18px;justify-content:center;margin:0;text-align:center;width:32px}.chess-replay-board-section{display:flex;justify-content:center;margin-bottom:30px;width:100%}.chess-replay-board-wrapper{box-sizing:border-box;max-width:632px;width:100%}.replay-container .chessboard{grid-gap:0;aspect-ratio:1;border:none;display:grid;gap:0;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);margin:0 auto;width:100%}.replay-container .square{align-items:center;display:flex;justify-content:center;position:relative}.replay-container .white-square{background-color:#f0d9b5}.replay-container .black-square{background-color:#b58863}.replay-container .from-square{background-color:#f7ec74!important;box-shadow:inset 0 0 0 2px #e0d060}.replay-container .to-square{background-color:#9fdf9f!important;box-shadow:inset 0 0 0 2px #7fca7f}.replay-container .piece-img{height:50px;width:50px}.chess-replay-moves-section{display:flex;justify-content:center;margin-bottom:30px;width:100%}.chess-replay-moves-wrapper{box-sizing:border-box;max-width:650px;width:100%}.moves-section{border-radius:4px;flex:1 1;max-height:600px;max-width:400px;overflow-y:auto;padding:15px}.moves-section,.moves-section h3{color:#000;font-family:Sartoshi,sans-serif}.moves-section h3{margin-bottom:15px;margin-top:0}.moves-list{display:flex;flex-direction:column;gap:5px}.move-item{align-items:center;border:1px solid #000;border-radius:4px;color:#000;cursor:pointer;display:flex;font-family:Sartoshi,sans-serif;gap:10px;padding:10px;transition:background-color .2s}.move-item:hover{background-color:#feac6433}.move-item.active-move{background-color:#feac644d;font-weight:700}.move-number{font-weight:700;min-width:30px}.move-notation{flex:1 1}.check-indicator{background-color:#ffc107;color:#000}.check-indicator,.checkmate-indicator{border-radius:3px;font-size:12px;padding:2px 6px}.checkmate-indicator{background-color:#dc3545;color:#fff}.replay-controls{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:20px}.replay-control-btn{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:8px 16px;transition:background-color .3s,opacity .3s}.replay-control-btn:hover:not(:disabled){background-color:#0056b3}.replay-control-btn:disabled{background-color:#ccc;cursor:not-allowed;opacity:.5}.controls{align-items:center;display:flex;gap:15px;justify-content:center;margin-top:20px}.controls button{background-color:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:10px 20px;transition:background-color .3s,opacity .3s}.controls button:hover:not(:disabled){background-color:#218838}.controls button:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.move-counter{align-items:center;color:#000;display:flex;font-family:Sartoshi,sans-serif;font-size:16px;font-weight:500;padding:8px 16px}.live-indicator{align-items:center;background-color:#dc3545;border-radius:20px;display:inline-flex;font-size:14px;gap:8px;margin-left:10px;padding:5px 15px}.live-dot{animation:pulse 1.5s ease-in-out infinite;background-color:#fff;border-radius:50%;height:10px;width:10px}.player-info{display:flex;gap:20px;justify-content:space-around;margin-bottom:15px}.player-card{border:2px solid #000;border-radius:8px;color:#000;flex:1 1;font-family:Sartoshi,sans-serif;padding:15px}.player-card.current-turn{border-color:#28a745;box-shadow:0 0 10px #28a7454d}.player-name{font-size:16px;font-weight:700;margin-bottom:5px}.player-color{color:#aaa;font-size:14px;margin-bottom:5px}.player-status{align-items:center;display:flex;font-size:12px;gap:5px;margin-top:5px}.status-dot{border-radius:50%;display:inline-block;height:8px;width:8px}.status-connected{background-color:#28a745}.status-disconnected{background-color:#dc3545}.error,.loading{font-size:18px;margin:40px 0;text-align:center}.error{background-color:#f8d7da;border-radius:4px;color:#721c24;padding:20px}.error button{background-color:#721c24;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:15px;padding:10px 20px}.error button:hover{background-color:#5a1519}@media (max-width:1024px){.chess-replay-board-wrapper,.chess-replay-moves-wrapper,.replay-container .chess-container{max-width:532px}.replay-content{align-items:center;flex-direction:column}.moves-section{max-width:100%;width:100%}.replay-container .piece-img{height:40px;width:40px}.replay-container .column-label,.replay-container .row-label{font-size:12px}.controls button{font-size:14px;padding:8px 15px}}@media (max-width:768px){.chess-replay-board-wrapper,.chess-replay-moves-wrapper,.replay-container .chess-container{max-width:calc(85vw + 25px)}.replay-container{padding:10px}.title{font-size:1.5rem}.replay-container .piece-img{height:32px;width:32px}.replay-container .row-label{font-size:14px;width:25px}.replay-container .column-label{font-size:14px}.replay-control-btn .btn-text{display:none}.replay-control-btn{font-size:20px;padding:8px 12px}.move-counter .move-label{display:none}.move-counter{min-width:auto;padding:8px 12px}.controls{flex-wrap:wrap;gap:10px}.controls button{font-size:12px;padding:8px 12px}}.last-move-self{background-color:#00ff004d!important}.last-move-opponent{background-color:#ff00004d!important}.second-last-move-self{background-color:#0080004d!important}.second-last-move-opponent{background-color:#8000004d!important}.legal-move{background-color:#00ffff4d!important;box-shadow:inset 0 0 0 2px #00c8c899;cursor:pointer}.piece-img-moves{height:30px;vertical-align:middle;width:30px}.legend-title{color:#000;font-family:Sartoshi,sans-serif}.moves-container{display:flex;flex-direction:column;height:100%;margin:0 auto;max-width:600px;width:100%}.moves-table-wrapper{border:1px solid #000;border-radius:4px;flex:1 1;max-height:300px;min-height:300px;overflow-y:auto}.moves-table{border-collapse:collapse;color:#000;font-family:Sartoshi,sans-serif;font-size:18px;margin:0 auto;width:100%}.moves-table thead{background-color:#000;position:-webkit-sticky;position:sticky;top:0;z-index:1}.moves-table th{color:#fff;font-weight:700;padding:10px}.moves-table td,.moves-table th{border:1px solid #000;text-align:left}.moves-table td{padding:8px}.moves-table tbody tr:hover{opacity:.8}.move-row-plain{background-color:#f0f0f080}.move-row-charcoal{background-color:#64646433}.move-number-cell{color:#666;font-weight:700;text-align:center}.player-cell{font-weight:700;text-transform:capitalize}.piece-cell,.position-cell{text-align:center}.position-cell{font-size:20px;min-width:80px}.captured-table,.position-cell{font-family:Sartoshi,sans-serif}.captured-table{border-collapse:collapse;color:#000;margin:0 auto;max-width:400px;width:100%}.captured-table td,.captured-table th{border:1px solid #000;padding:10px;text-align:left}.captured-table th{font-weight:700}.captured-table hr{border:none;border-top:2px solid #000;margin:0}.game-container{align-items:center;background-color:initial!important;border:none!important;display:flex;flex-direction:column;justify-content:center;margin:0 auto;max-width:1800px;outline:none!important;position:relative;text-align:center;width:98%;z-index:1}.game-container:after,.game-container:before{display:none!important}.loading-modal{background:#0000;color:#333;font-size:1.5rem;padding:20px}.chessboard{grid-gap:0;aspect-ratio:1/1;border:none;display:grid;gap:0;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);height:auto;margin:0 auto;width:100%}.square{align-items:center;display:flex;justify-content:center}.white-square{background-color:#f0d9b5}.legend-table img{height:30px;width:30px}.legend-section{margin-top:20px;text-align:center}.legend-title{font-size:24px;margin-bottom:10px}.legend-table{table-layout:fixed;width:400px}.legend-table th{width:66.66667px}.black-square{background-color:#b58863}.piece-img{max-height:90%;max-width:90%}.square.selected{background-color:#ffff004d}.chess-container{align-items:stretch;display:flex;margin:0 auto;max-width:632px;width:100%}.row-labels{align-self:stretch;flex-direction:column;justify-content:space-around;margin-top:26px}.column-labels,.row-labels{align-items:center;display:flex}.column-labels{flex-direction:row;justify-content:center;margin-bottom:2px;width:100%}.column-label{flex:1 1;height:24px}.column-label,.row-label{align-items:center;display:flex;font-size:18px;justify-content:center;margin:0;text-align:center}.row-label{flex:0 0 auto;width:32px}.chessboard-wrapper{flex:1 1;position:relative}.game-container .back-button,.game-container .share-button,button.back-button,button.share-button{align-items:center;cursor:pointer;display:flex;font-family:Sartoshi,sans-serif!important;font-size:16px;height:48px;justify-content:center;padding:12px 24px}.game-container .share-button,button.share-button{background-color:#000;border:none;border-radius:4px;color:#fff}.share-x-button .x-logo-small-button{filter:invert(1);height:16px;width:16px}.game-container .replay-button,button.replay-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:Sartoshi,sans-serif!important;font-size:14px;margin-top:10px;padding:8px 16px}.game-container .replay-button:hover,button.replay-button:hover{background-color:#0056b3}.modal-overlay{z-index:1000}.modal-content{color:#000;font-family:Sartoshi,sans-serif;text-align:center}.modal-content h3{color:#000;font-size:1.5rem;margin-bottom:15px;margin-top:0}.modal-content p{color:#000;margin-bottom:20px}.modal-buttons{display:flex;gap:10px;justify-content:center}.cancel-button,.confirm-button{border:none;border-radius:4px;cursor:pointer;font-family:Sartoshi,sans-serif;font-size:14px;padding:10px 20px;transition:opacity .3s}.confirm-button{background-color:#dc3545}.confirm-button:hover{opacity:.8}.cancel-button{background-color:#6c757d}.cancel-button:hover{opacity:.8}.title-section{margin-bottom:30px;text-align:center}.chess-live-player-status{display:flex;justify-content:center;margin-bottom:30px;width:100%}.chess-live-player-status .chess-live-box{box-sizing:border-box;display:flex;justify-content:center;max-width:650px;width:100%}.chess-live-box .chess-live-table{width:100%}.chess-live-table{background-color:#fff;border-collapse:collapse;border-radius:4px;font-size:18px;margin:0 auto;max-width:600px;overflow:hidden;width:100%}.chess-live-table th{background-color:#333;border-bottom:2px solid #666;color:#fff;font-weight:700;padding:15px;text-align:left}.chess-live-table td{border-bottom:1px solid #ddd;padding:15px 10px;text-align:left}.chess-live-table td:nth-child(2){font-size:30px;text-align:center}.chess-live-table td:nth-child(3){font-family:Sartoshi,sans-serif;font-size:22px;text-align:center}.chess-live-table td:nth-child(4){text-align:right}.chess-live-table button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:Sartoshi,sans-serif;font-size:18px;padding:8px 20px}.chess-live-table button:hover{background-color:#0056b3}.board-section{display:flex;justify-content:center;margin-bottom:30px;width:100%}.board-wrapper{box-sizing:border-box;max-width:650px;width:100%}.board-wrapper .chess-container,.board-wrapper .chessboard{max-width:600px;width:100%}.chess-new-moves-section{display:flex;justify-content:center;margin-bottom:30px;width:100%}.chess-new-moves-box{box-sizing:border-box;max-width:650px;width:100%}.chess-new-moves-table{background-color:#fff;border-collapse:collapse;border-radius:4px;font-size:18px;margin:0 auto;max-width:600px;overflow:hidden;width:100%}.chess-new-moves-table th{background-color:#000;border:1px solid #000;color:#fff;font-weight:700;padding:10px;text-align:left}.chess-new-moves-table td{border:1px solid #000;padding:8px;text-align:left}.row-bottom{align-items:flex-start;display:flex;flex-wrap:wrap;gap:30px;justify-content:center;margin-top:20px}.captured-wrapper,.legend-wrapper{flex:0 0 auto}@media (max-width:1024px){.board-wrapper,.chess-live-player-status .chess-live-box,.chess-new-moves-box{max-width:550px}.chess-live-table{max-width:500px}.board-wrapper .chess-container{max-width:532px}.moves-section .moves-section-wrapper .moves-container{max-width:500px;width:500px!important}}@media (max-width:768px){.board-wrapper,.chess-live-player-status .chess-live-box,.chess-new-moves-box{max-width:calc(85vw + 46px)}.chess-live-table{font-size:16px;max-width:85vw}.chess-live-table td,.chess-live-table th{padding:10px}.board-wrapper .chess-container{max-width:calc(85vw + 25px)}.moves-section .moves-section-wrapper .moves-container{max-width:85vw;width:85vw!important}.moves-table-wrapper{max-height:200px}.row-bottom{align-items:center;flex-direction:column}}.img-container{align-items:center;box-sizing:border-box;display:flex;height:max(min(12vw,8vh,80px),20px);justify-content:center;min-height:20px;overflow:hidden auto;position:relative;width:max(min(12vw,8vh,80px),20px)}.mfer-head{height:100%;width:100%}.mfer-head.level-tiny_dino{height:120%;object-fit:cover;width:120%}.mfer-head-transition{transition:all .3s ease-in-out}.img-container.selected{border:4px solid #000}.mfer-head-1{background-color:#fedd56}.mfer-head-2{background-color:#fe6767}.mfer-head-3{background-color:#dc6bfe}.mfer-head-4{background-color:#adfe62}.mfer-head-5{background-color:#52cdfe}.mfer-head-6{background-color:#feac64}.mfer-head-1.level-nakamigo_crush{background-color:#ff6b6b}.mfer-head-2.level-nakamigo_crush{background-color:#4ecdc4;filter:drop-shadow(0 0 0 3px #fff)}.mfer-head-3.level-nakamigo_crush{background-color:#ffd166;filter:drop-shadow(0 0 0 3px #fff)}.mfer-head-4.level-nakamigo_crush{background-color:#32a875;filter:drop-shadow(0 0 0 3px #fff)}.mfer-head-5.level-nakamigo_crush{background-color:#5e60ce;filter:drop-shadow(0 0 0 3px #fff)}.mfer-head-6.level-nakamigo_crush{background-color:#ff97b7;filter:drop-shadow(0 0 0 3px #fff)}.mfer-head-1.level-p2p_mfer_system{background-color:#f6e34d}.mfer-head-2.level-p2p_mfer_system{background-color:#ca3ca5}.mfer-head-3.level-p2p_mfer_system{background-color:#fff}.mfer-head-4.level-p2p_mfer_system{background-color:#ea3431}.mfer-head-5.level-p2p_mfer_system{background-color:#2250f3}.mfer-head-6.level-p2p_mfer_system{background-color:#ff8c00}.mfer-head-1001.level-p2p_mfer_system{background-color:#c2b335}.mfer-head-1002.level-p2p_mfer_system{background-color:#992f7f}.mfer-head-1003.level-p2p_mfer_system{background-color:#888}.mfer-head-1004.level-p2p_mfer_system{background-color:#b22a24}.mfer-head-1005.level-p2p_mfer_system{background-color:#1a3ca3}.mfer-head-1006.level-p2p_mfer_system{background-color:#cc7200}.mfer-head-1001,.mfer-head-1002,.mfer-head-1003,.mfer-head-1004,.mfer-head-1005,.mfer-head-1006{background-color:#717171}@keyframes wobble{0%{transform:perspective(600px) rotateX(20deg) rotateY(20deg)}25%{transform:perspective(600px) rotateX(20deg) rotateY(15deg)}50%{transform:perspective(600px) rotateX(20deg) rotateY(20deg)}75%{transform:perspective(600px) rotateX(20deg) rotateY(25deg)}to{transform:perspective(600px) rotateX(20deg) rotateY(20deg)}}.mfer-head-1001.level-nakamigo_crush,.mfer-head-1002.level-nakamigo_crush,.mfer-head-1003.level-nakamigo_crush,.mfer-head-1004.level-nakamigo_crush,.mfer-head-1005.level-nakamigo_crush,.mfer-head-1006.level-nakamigo_crush{animation:wobble 5s infinite;background-color:#6f99f8;box-shadow:0 10px 30px #00000080;transform:perspective(600px) rotateX(20deg) rotateY(20deg);transition:transform 5s}.mfer-head-1001.level-p2p_mfer_system,.mfer-head-1002.level-p2p_mfer_system,.mfer-head-1003.level-p2p_mfer_system,.mfer-head-1004.level-p2p_mfer_system,.mfer-head-1005.level-p2p_mfer_system,.mfer-head-1006.level-p2p_mfer_system{animation:wobble 5s infinite;box-shadow:0 10px 30px #00000080;transform:perspective(600px) rotateX(20deg) rotateY(20deg);transition:transform 5s}.mfer-head-1001.level-tiny_dino,.mfer-head-1002.level-tiny_dino,.mfer-head-1003.level-tiny_dino,.mfer-head-1004.level-tiny_dino,.mfer-head-1005.level-tiny_dino,.mfer-head-1006.level-tiny_dino{background-color:#fff;box-shadow:0 10px 30px #00000080;filter:grayscale(100%)}.mfer-head-1001.level-book_of_bee,.mfer-head-1002.level-book_of_bee,.mfer-head-1003.level-book_of_bee,.mfer-head-1004.level-book_of_bee,.mfer-head-1005.level-book_of_bee,.mfer-head-1006.level-book_of_bee{background-color:#333;box-shadow:0 10px 30px #00000080;filter:grayscale(100%)}.mfer-head-7{animation:shimmering 3s infinite;background:linear-gradient(45deg,#ffc7c7,red,#0f0,#c7ffc7);background-size:300% 300%}.selected .mfer-head-7{animation:shimmering .5s infinite;background:linear-gradient(45deg,#8b008b,#ff0);background-size:300% 300%;border:none}.mfer-head-1007{background-color:#717171}@keyframes flicker{0%{opacity:.9}50%{opacity:.7}to{opacity:.9}}.mfer-head-7.level-tiny_dino{animation:flicker .2s infinite alternate;background:radial-gradient(circle,orange,red,#0000);border-radius:0 0 25px 25px;margin:0 auto}.mfer-head-7.level-book_of_bee{animation:shimmering 3s infinite;background:linear-gradient(45deg,#ffc7c7,#246428,#2daf46,#c7ffc7);background-size:300% 300%}@keyframes shimmering{0%{background-position:100% 0}to{background-position:-100% 100%}}@keyframes strobe{0%,to{background-color:red}50%{background-color:green}}.rock-container{background-color:#708090}.rock-tile{border-radius:8px;cursor:pointer;height:100%;left:-15px;position:relative;width:100%}.rock-11{border-radius:8px;filter:drop-shadow(2px 2px 4px rgb(0 0 0/30%))}.rock-12{border-radius:8px;filter:drop-shadow(2px 2px 4px rgb(0 0 0/40%));position:relative}.rock-12:after{background:linear-gradient(135deg,#0000 28%,#000 30%,#000 36%,#0000 38%),linear-gradient(45deg,#0000 58%,#000 60%,#000 66%,#0000 68%),linear-gradient(90deg,#0000 43%,#000 45%,#000 51%,#0000 53%);border-radius:8px;content:"";inset:0;opacity:.8;pointer-events:none;position:absolute}.rock-13{align-items:center;animation:explode .6s ease-out infinite alternate;background:radial-gradient(circle,#ff6b35 0,#ff4500 30%,#dc143c 60%,#8b0000 100%);border:2px solid #8b0000;border-radius:50%;box-shadow:0 0 15px #ff4500cc,inset 0 0 10px #ffffff4d;display:flex;font-size:32px;justify-content:center;left:0}@keyframes explode{0%{box-shadow:0 0 15px #ff4500cc;transform:scale(1)}to{box-shadow:0 0 25px #ff4500,0 0 35px #ffa50099;transform:scale(1.1)}}.rock-tile.selected{filter:drop-shadow(0 0 8px #FFD700) brightness(1.2)}.rock-13.selected{border-color:gold;box-shadow:0 0 15px #ffd700cc}.coordinate-overlay{background-color:#000c;border-radius:3px;color:#fff;font-family:monospace;font-size:10px;left:50%;padding:2px 4px;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);white-space:nowrap;z-index:1000}.img-container.preview-swap{animation:preview-pulse 1.5s ease-in-out infinite;border:3px dashed #ffd700b3;box-shadow:0 0 10px #ffd70080}@keyframes preview-pulse{0%,to{border-color:#ffd700b3;box-shadow:0 0 10px #ffd70080}50%{border-color:gold;box-shadow:0 0 15px #ffd700cc}}.preview-direction-overlay{animation:direction-bounce .8s ease-in-out infinite;background-color:#000000b3;border-radius:50%;color:gold;font-size:24px;font-weight:700;left:50%;padding:4px 8px;pointer-events:none;position:absolute;text-shadow:0 0 5px #ffd700cc;top:50%;transform:translate(-50%,-50%);z-index:1001}@keyframes direction-bounce{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.2)}}.gameOverModalOverlay{align-items:center;background-color:#000000b3;display:flex;inset:0;justify-content:center;position:fixed;z-index:10000}.gameOverModalContent{background-color:#fe6767;border-radius:10px;max-width:500px;padding:20px;width:80%}.gameOverModalContent.level-p2p_mfer_system{font-family:Georgia,serif}.gameOverModalContent table{border-collapse:collapse;font-size:.8em;margin:20px 0;width:100%}.close-button{background-color:blue;border:2px solid #333;color:#fff}.creditsSection{padding-left:20px;text-align:left}td,th{vertical-align:top}.scoreContainer{align-items:left;display:flex;gap:10px}.equalWidthContainer{display:flex;flex-wrap:wrap;justify-content:space-between}.leftSection,.rightSection{flex:1 1;padding:10px}.scoreImage{display:block;margin:0 auto;max-width:150px;width:100%}@media (max-width:768px){.leftSection,.rightSection{flex-basis:100%}.scoreImage{display:block;margin:0 auto;max-width:75px;width:100%}.gameOverModalContent,.gameOverModalContent table{font-size:.9em}}.timerContainer{background-color:blue;border:none;border-radius:5px;color:#fff;font-size:min(3.2vw,3.2vh,20px);margin:5px;padding:min(1.2vw,1.2vh,6px) min(2.5vw,2.5vh,12px);transition:background-color .3s}.timerContainer.level-nakamigo_crush{background-color:#6f99f8;color:#000}.timerContainer.level-book_of_bee{background-color:#2daf46;color:#000}.movesContainer{background-color:#00000080;border-radius:5px;color:#fff;font-size:1.2em;font-weight:700;margin:5px 0;padding:5px;text-align:center;text-shadow:2px 2px 4px #000c}.movesContainer.level-limited_moves_demo{background-color:#ff6b6b33;border:2px solid #ff6b6b}.player-info.wallet-user{align-items:center;background-color:#000;box-shadow:0 2px 4px #0003;color:#fff;display:flex;gap:6px}.player-info .wallet-icon{font-size:.9em}@font-face{font-family:nakamigo;font-style:normal;font-weight:400;src:url(/static/media/slkscr.0db973473f3a1c1bdf29.ttf) format("truetype")}.action-button{background-color:red;border:none;border-radius:5px;color:#fff;cursor:pointer;margin:2px;padding:5px 10px;transition:background-color .3s}@keyframes blueShimmer{0%{background-color:#2353f6}25%{background-color:#1e90ff}50%{background-color:#00bfff}75%{background-color:#87ceeb}to{background-color:#2353f6}}.gameWiderContainer.level-p2p_mfer_system{animation:blueShimmer 10s ease infinite;background:linear-gradient(45deg,#2353f6,#1e90ff,#00bfff,#87ceeb,#2353f6);background-size:1000% 1000%;font-family:Georgia,serif}.action-button:hover{background-color:red}.buttonContainer{display:flex;flex-direction:row;gap:5px;justify-content:center;margin:10px}.buttonContainer button{font-size:min(3.2vw,3.2vh,20px);padding:min(1.2vw,1.2vh,6px) min(2.5vw,2.5vh,12px)}.buttonContainer.level-nakamigo_crush{font-family:nakamigo,sans-serif}.gameContainer{align-items:center;display:flex;flex-direction:column;margin:0 auto;touch-action:none}body.gameplay-page .gameWiderContainer{bottom:0!important;height:auto!important;overflow:hidden!important;overscroll-behavior:none!important;position:fixed!important;top:0!important;touch-action:none!important;width:100%!important}.gameWiderContainer{background-position:50%;background-repeat:repeat-x;background-size:cover;box-sizing:border-box;height:100vh;margin:0;overflow:hidden;padding:60px 0 env(safe-area-inset-bottom)}.gameWiderContainer.level-nakamigo_crush{background-color:#020048}.gameWiderContainer.level-p2p_mfer_system{background-color:#2353f6}.gameWiderContainer.level-tiny_dino{background-color:#004820}.gameContainer.level-nakamigo_crush{font-family:nakamigo,sans-serif}.levelContainer{background-color:#ff0;border:none;border-radius:5px;color:#000;font-size:min(6vw,6vh,36px);margin:5px;padding:min(1.5vw,1.5vh,8px) min(3vw,3vh,15px);transition:background-color .3s}.levelContainer.level-book_of_bee{background-color:#246428;color:#fff}.levelContainer.level-p2p_mfer_system{background-color:#fff;font-size:20px;font-weight:700}.levelContainer.level-house_songs{background-color:initial;background-position:top;background-repeat:no-repeat;color:#fff;font-weight:700;height:75px;text-shadow:2px 2px 4px #000c;width:475px}.header{align-items:center;display:flex;flex-direction:column}.statsContainer{align-items:left}.gameInfo,.statsContainer{display:flex;flex-direction:row;font-size:1em}.gameInfo{align-items:center}.scoreContainer{background-color:red;border:none;border-radius:5px;color:#fff;font-size:min(3.2vw,3.2vh,20px);margin:5px;padding:min(1.2vw,1.2vh,6px) min(2.5vw,2.5vh,12px);transition:background-color .3s}.scoreContainer.level-book_of_bee{background-color:#2daf46;color:#000}.scoreContainer.level-nakamigo_crush{background-color:#6f99f8;color:#000}.board{align-items:center;border:3px solid #fff;display:flex;flex-direction:column;touch-action:none}.board.level-book_of_bee{border:3px solid #246428}.gameContainer.level-house_songs{background-repeat:no-repeat;background-size:100% 100%;width:100%}.row{display:flex}.modalOverlay{align-items:center;background-color:#000000b3;box-sizing:border-box;display:flex;inset:0;justify-content:center;padding-top:60px;position:fixed;z-index:500}.modalContent{background-color:#0c84d2;border-radius:10px;max-width:500px;padding:20px;width:80%}button{font-size:min(3.2vw,3.2vh,20px);padding:min(1.2vw,1.2vh,6px) min(2.5vw,2.5vh,12px)}button.level-nakamigo_crush{font-family:nakamigo,sans-serif}button.level-p2p_mfer_system{font-family:Georgia,serif;font-size:.5em}.end-game{background-color:#52cdfe;color:#000}.end-game.level-book_of_bee{background-color:#2daf46;color:#000}.play-again{background-color:#52cdfe;color:#000}.play-again.level-book_of_bee{background-color:#2daf46;color:#000}.back-to-home{background-color:red;color:#fff}.back-to-home.level-book_of_bee{background-color:#2daf46;color:#000}.end-game.level-nakamigo_crush,.play-again.level-nakamigo_crush{background-color:#6f99f8;color:#000}.end-game.level-p2p_mfer_system,.play-again.level-p2p_mfer_system{font-family:Georgia,serif}.back-to-home.level-nakamigo_crush{background-color:#6f99f8;color:#000}.back-to-home.level-p2p_mfer_system{font-family:Georgia,serif}.instructions{background-color:#fedd56;color:#000}@keyframes scaleAnimation{0%{transform:scale(1)}50%{transform:scale(.95)}to{transform:scale(1)}}.back-to-home,.end-game,.musicButton,.play-again{border:none;cursor:pointer;outline:none;transition:all .2s ease-out}.musicButton{color:#000}.back-to-home:active,.end-game:active,.musicButton:active,.mute-btn:active,.play-again:active{animation:scaleAnimation .2s ease-out forwards}@keyframes flow{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.matrix-column{animation:flow 5s linear infinite;color:#fff;font-family:nakamigo,sans-serif;font-size:20px;height:200vh;overflow:hidden;position:absolute;writing-mode:vertical-rl}.leaderboard-container{align-items:flex-start;box-sizing:border-box;display:flex;font-size:1em;justify-content:center;margin-top:0;max-height:90vh;overflow-y:auto;padding:20px;width:100%}.leaderboard{box-shadow:0 0 10px #0000001a;margin:20px auto;padding:20px;width:80%}.leaderboard h2{margin-bottom:20px;text-align:center}.leaderboard-container table{border-collapse:collapse;margin:0 auto;width:100%}.leaderboard-container td,.leaderboard-container th{border:none;padding:10px;text-align:center;vertical-align:middle}.leaderboard-container tbody tr.clickable-row{cursor:pointer;transition:background-color .2s}.leaderboard-container tbody tr.clickable-row:hover{background-color:#0000000d}.leaderboard-container td:first-child{text-align:center}.button{cursor:pointer;margin:10px;padding:3px 10px;transition:background-color .3s ease}.button-selected{background-color:#007bff;color:#fff}.button:not(.button-selected):hover{background-color:green}.leaderboard-title{font-size:40px}.level-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:10px}.nav-button{color:#fff;font-family:Sartoshi,sans-serif}.level-button,.nav-button{border:2px solid #333;border-radius:3px;cursor:pointer;font-size:.8em;margin-top:3px;padding:5px 10px;transition:background-color .3s}.level-button{background-color:#3498db;color:#000}.agg-button{color:#fff}.agg-button,.recent-plays-button{border:2px solid #333;border-radius:3px;cursor:pointer;font-size:.8em;margin-top:3px;padding:5px 10px;transition:background-color .3s}.recent-plays-button{background-color:#3498db;color:#000;font-family:Sartoshi,sans-serif}.level-button:hover,.recent-plays-button:hover{background-color:#2980b9}.giveaway-button{background-color:purple}.giveaway-button,.my-scores-button{color:#fff;cursor:pointer;font-size:.8em;margin-top:3px;transition:background-color .3s}.my-scores-button{background-color:maroon}#tooltipBox{background-color:#333;border-radius:4px;color:#fff;padding:8px;pointer-events:none;position:absolute;z-index:1000}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#333;height:50px;width:50px}.x-logo-fallback{align-items:center;background-color:#000;border-radius:3px;cursor:pointer;display:flex;height:16px;justify-content:center;padding:3px;transition:opacity .2s;width:16px}.x-logo-fallback:hover{opacity:.8}.x-logo-fallback-img{filter:invert(1);height:10px;width:10px}@media (max-width:600px){.leaderboard-container .hide-mobile{display:none}.leaderboard-title{font-size:28px}.leaderboard-container td,.leaderboard-container th{font-size:14px;padding:8px 5px}.level-buttons{gap:5px}.agg-button,.level-button,.nav-button,.recent-plays-button{font-size:.7em;padding:4px 8px}}.replay-list{margin:0 auto;max-width:1200px;min-height:calc(100vh - 80px);overflow-y:auto;padding:20px}.replay-list.error,.replay-list.loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh}.replay-filters{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:15px 0}.filter-input{min-width:200px}.filter-input,.filter-select{border:2px solid #ddd;border-radius:4px;font-family:Sartoshi,sans-serif;font-size:14px;padding:8px 12px}.filter-select{cursor:pointer;min-width:150px}.filter-input:focus,.filter-select:focus{border-color:#6f99f8;outline:none}.replay-row:hover{background-color:#6f99f81a;transition:background-color .2s}.sortable{-webkit-user-select:none;user-select:none}.sortable:hover{background-color:#6f99f833}.pagination-controls{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:center;padding:20px}.pagination-button{background-color:#6f99f8;border:2px solid #333;border-radius:4px;color:#000;cursor:pointer;font-family:Sartoshi,sans-serif;font-size:14px;padding:8px 16px;transition:all .2s}.pagination-button:hover:not(:disabled){background-color:#5580d8;transform:translateY(-1px)}.pagination-button:disabled{cursor:not-allowed;opacity:.5}.pagination-info{color:#666;font-family:Sartoshi,sans-serif;font-size:14px}.live-indicator-container{align-items:center;display:flex;gap:8px;justify-content:center}.live-indicator{animation:pulse 1.5s ease-in-out infinite;background-color:#f44;border-radius:4px;color:#fff;display:inline-block;font-size:12px;padding:4px 12px}.live-indicator,.watch-button{font-family:Sartoshi,sans-serif;font-weight:700}.watch-button{background-color:#6f99f8;border:2px solid #333;border-radius:4px;color:#000;cursor:pointer;font-size:13px;padding:3px 16px;transition:all .2s;white-space:nowrap}.watch-button:hover{background-color:#5580d8;transform:translateY(-1px)}.watch-button.live-watch{background-color:#f66;border-color:#f44}.watch-button.live-watch:hover{background-color:#f55}@media (max-width:768px){.replay-filters{align-items:stretch;flex-direction:column}.filter-input,.filter-select{min-width:auto;width:100%}.pagination-controls{flex-direction:column;gap:10px}.pagination-button{width:100%}.live-indicator-container{flex-direction:column;gap:4px}.live-indicator{font-size:10px;padding:3px 8px}.watch-button{font-size:11px;padding:2px 12px}}.mferstetris-landing{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;font-family:Press Start\ 2P,cursive,monospace;justify-content:center;min-height:100vh;padding:20px}.landing-content{background:#000c;border:4px solid #0f0;border-radius:20px;box-shadow:0 0 30px #00ff0080;max-width:800px;padding:40px}.game-title{animation:glow 2s ease-in-out infinite alternate;color:#0f0;font-size:48px;margin-bottom:10px;text-shadow:0 0 10px #0f0,0 0 20px #0f0,0 0 30px #0f0}.game-subtitle{color:#ff6b35;font-size:14px;letter-spacing:2px;margin-bottom:30px;text-transform:uppercase}.game-description{line-height:1.8;margin:30px 0}.game-description p{color:#fff;font-size:14px;margin:15px 0}.tech-note{color:#ff0;font-size:11px!important;font-style:italic}.controls-section{background:#00ff001a;border:2px solid #0f0;border-radius:10px;margin:40px 0;padding:20px}.controls-section h3{color:#0f0;font-size:18px;margin-bottom:20px}.controls-grid{grid-gap:15px;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));text-align:left}.control-item{align-items:center;color:#fff;font-size:11px;gap:10px}.key{background:#333;border:2px solid #0f0;border-radius:5px;color:#0f0;font-weight:700;min-width:60px;padding:5px 10px;text-align:center}.button-group{flex-wrap:wrap;margin-top:40px}.back-button,.play-button{border:3px solid;border-radius:10px;cursor:pointer;font-family:Press Start\ 2P,cursive,monospace;font-size:16px;padding:15px 40px;text-transform:uppercase;transition:all .3s ease}.play-button{background:#0f0;border-color:#0f0}.play-button:hover{background:#0c0;box-shadow:0 0 20px #0f0;transform:scale(1.05)}.back-button{border-color:#fff}.wasm-badge{background:#ff6b3533;border:2px solid #ff6b35;border-radius:20px;color:#ff6b35;display:inline-block;font-size:10px;margin-top:30px;padding:10px 20px}@media (max-width:768px){.landing-content{padding:20px}.game-title{font-size:32px}.controls-grid{grid-template-columns:1fr}.button-group{flex-direction:column}.back-button,.play-button{font-size:12px;padding:12px 20px;width:100%}}.mferstetris-game{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e);box-sizing:border-box;color:#fff;display:flex;flex-direction:column;font-family:Press Start\ 2P,cursive,monospace;justify-content:center;min-height:100vh;padding:80px 20px 20px;position:relative}.mferstetris-game h1{color:#0f0;font-size:32px;margin-bottom:30px;text-align:center;text-shadow:0 0 20px #0f0}.wasm-test-container{background:#000c;border:3px solid #0f0;border-radius:20px;box-shadow:0 0 30px #00ff0080;max-width:800px;padding:40px;width:100%}.wasm-test-container h1{color:#0f0;font-size:24px;margin-bottom:30px;text-align:center;text-shadow:0 0 10px #0f0}.test-section{margin:20px 0}.test-section h2{color:#0f0;font-size:18px;margin-bottom:20px}.test-section h3{color:#ff0;font-size:14px;margin:20px 0 10px}.message-box{background:#00ff001a;border:2px solid #0f0;border-radius:10px;margin:20px 0;padding:20px;text-align:center}.message-box h3{color:#0f0;font-size:16px;line-height:1.6;margin:0}.test-results ul{list-style:none;margin:10px 0;padding:0}.test-results li{background:#00000080;border-left:3px solid #0f0;border-radius:5px;color:#fff;font-size:12px;line-height:1.6;margin:8px 0;padding:10px 15px}.info-box{background:#ffff001a;border:2px solid #ff0;border-radius:10px;margin:20px 0;padding:20px}.info-box p{font-size:11px;line-height:1.8;margin:8px 0}.info-box strong{color:#ff0}.next-steps{background:#ff6b351a;border:2px solid #ff6b35;border-radius:10px;margin:20px 0;padding:20px}.next-steps p{font-size:11px;line-height:1.8;margin:10px 0}.next-steps code{background:#000;border-radius:5px;color:#ff6b35;display:block;font-size:10px;margin-top:10px;padding:10px}.test-section.error{background:#ff00001a;border:2px solid red;border-radius:10px;padding:20px}.test-section.error h2{color:red}.error-help{font-size:11px;line-height:1.8;margin:20px 0}.error-help code{background:#000;border-radius:5px;color:red;display:block;font-size:10px;margin-top:10px;padding:10px}.board-container{background:#00000080;border:2px solid #0f0;border-radius:10px;margin:30px 0;padding:20px;text-align:center}.tetris-canvas{border:2px solid #0f0;box-shadow:0 0 20px #00ff004d;display:block;image-rendering:pixelated;image-rendering:crisp-edges;margin:20px auto}.board-controls{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:20px}.board-controls button{background:#0f0;border:2px solid #0f0;border-radius:5px;color:#000;cursor:pointer;font-family:Press Start\ 2P,cursive,monospace;font-size:11px;padding:10px 20px;transition:all .3s ease}.board-controls button:hover{background:#0c0;box-shadow:0 0 15px #00ff0080;transform:scale(1.05)}.board-controls button:active{transform:scale(.95)}.game-ui{margin-bottom:20px;max-width:800px;width:100%}.ui-top{align-items:center;background:#000c;border:2px solid #0f0;border-radius:10px;display:flex;justify-content:space-between;margin-bottom:10px;padding:15px 20px}.back-button{background:#0000;border:2px solid #fff;border-radius:5px;font-family:Press Start\ 2P,cursive,monospace;font-size:12px;padding:10px 20px;transition:all .3s ease}.back-button:hover{background:#ffffff1a;transform:scale(1.05)}.game-stats{gap:20px}.stat{color:#0f0;font-size:14px;text-shadow:0 0 10px #0f0}.controls-help{background:#0009;border-radius:5px;padding:10px 20px;text-align:center}.controls-help p{color:#ff0;font-size:10px;margin:0}.mferstetris-game .game-container{background:#000c;border:3px solid #0f0;border-radius:10px;box-shadow:0 0 30px #00ff0080;padding:20px}.game-canvas{display:block;image-rendering:pixelated;image-rendering:crisp-edges}.error-screen,.gameover-screen,.loading-screen{background:#000000f2;border:3px solid #0f0;border-radius:20px;box-shadow:0 0 50px #0f0c;left:50%;min-width:400px;padding:40px;position:fixed;text-align:center;top:50%;transform:translate(-50%,-50%);z-index:1000}.error-screen h2,.gameover-screen h2,.loading-screen h2{color:#0f0;font-size:24px;margin-bottom:20px;text-shadow:0 0 10px #0f0}.error-screen p,.gameover-screen p,.loading-screen p{color:#fff;font-size:14px;margin:10px 0}.tech-info{color:#ff6b35;font-size:10px!important;margin-top:20px!important}.error-detail{background:#ff00001a;border:1px solid red;border-radius:5px;font-size:11px!important;margin-top:20px;padding:15px}.error-detail code{background:#000;border-radius:3px;color:#0f0;display:block;margin-top:10px;padding:10px}.loader{animation:spin 1s linear infinite;border:4px solid #00ff004d;border-radius:50%;border-top-color:#0f0;height:50px;margin:20px auto;width:50px}.button-group{gap:20px;justify-content:center;margin-top:30px}.button-group button,.error-screen button{background:#0f0;border:2px solid #0f0;border-radius:5px;color:#000;cursor:pointer;font-family:Press Start\ 2P,cursive,monospace;font-size:12px;padding:12px 30px;transition:all .3s ease}.button-group button:hover,.error-screen button:hover{background:#0c0;box-shadow:0 0 20px #0f0;transform:scale(1.05)}.start-screen{background:#000c;border:3px solid #0f0;border-radius:20px;box-shadow:0 0 30px #00ff0080;max-width:600px;padding:40px;text-align:center;width:100%}.start-button{background:#0f0;border:3px solid #0f0;border-radius:10px;color:#000;cursor:pointer;font-family:Press Start\ 2P,cursive,monospace;font-size:16px;margin:20px 0;padding:15px 40px;text-transform:uppercase;transition:all .3s ease}.start-button:hover{background:#0c0;box-shadow:0 0 30px #0f0;transform:scale(1.1)}.start-button:active{transform:scale(.95)}.game-stats{background:#0009;border:2px solid #0f0;border-radius:10px;display:flex;justify-content:space-around;margin-bottom:20px;padding:15px}.stat{align-items:center;display:flex;flex-direction:column;gap:10px}.stat-value{color:#0f0;font-size:24px;text-shadow:0 0 10px #0f0}.final-stats{margin:20px 0}.final-stats p{color:#ff0;font-size:16px;margin:15px 0}@media (max-width:768px){.mferstetris-game{padding:10px}.mferstetris-game h1{font-size:20px}.game-container{padding:10px}.game-canvas{height:auto;max-width:100%}.error-screen,.gameover-screen,.loading-screen{max-width:400px;min-width:auto;padding:20px;width:90%}.start-screen{padding:20px}.stat{font-size:10px}.stat-value{font-size:18px}.controls-help p{font-size:8px}.start-button{padding:12px 25px}.final-stats p,.start-button{font-size:12px}}.alien2048-gameover-overlay{align-items:center;background-color:#000000b3;display:flex;inset:0;justify-content:center;position:fixed;z-index:100000}.alien2048-gameover-content{background-color:#52cdfe;border:3px solid #000;border-radius:15px;box-shadow:0 10px 40px #00000080;color:#000;max-width:500px;overflow:hidden;padding:30px;position:relative;width:90%}.alien2048-gameover-title{font-size:32px;font-weight:700;margin-bottom:10px;text-align:center}.alien2048-gameover-title.win{color:#0f0;text-shadow:2px 2px 4px #0000004d}.alien2048-gameover-title.lose{color:red;text-shadow:2px 2px 4px #0000004d}.alien2048-gameover-subtitle{font-size:18px;font-weight:600;margin-bottom:20px;text-align:center}.alien2048-gameover-stats{background-color:#ffffff4d;border:2px solid #000;border-radius:10px;margin-bottom:20px;padding:15px}.alien2048-gameover-stats table{border-collapse:collapse;width:100%}.alien2048-gameover-stats tr{border-bottom:2px solid #0003}.alien2048-gameover-stats tr:last-child{border-bottom:none}.alien2048-gameover-stats td{font-size:18px;font-weight:700;padding:10px 5px}.alien2048-gameover-stats td:first-child{text-align:left;width:60%}.alien2048-gameover-stats td:last-child{text-align:right;width:40%}.alien2048-save-status{margin-bottom:15px;min-height:40px;text-align:center}.alien2048-save-status-message{border:2px solid;border-radius:8px;font-size:14px;font-weight:700;padding:10px 15px}.alien2048-save-status-message.saving{background-color:#fc03;border-color:#fc0;color:#000}.alien2048-save-status-message.success{background-color:#4caf5033;border-color:#4caf50;color:#000}.alien2048-save-status-message.error{background-color:#f4433633;border-color:#f44336;color:#000}.alien2048-loading-overlay{align-items:center;background-color:#52cdfee6;border-radius:12px;display:flex;inset:0;justify-content:center;position:absolute;z-index:10}.alien2048-loading-overlay .spinner{animation:spin 1s linear infinite;border:4px solid #0003;border-radius:50%;border-top-color:#000;height:50px;width:50px}.alien2048-gameover-buttons{display:flex;flex-direction:column;gap:12px}.alien2048-gameover-button{border:2px solid #000;border-radius:8px;cursor:pointer;font-family:Sartoshi,sans-serif;font-size:18px;font-weight:700;padding:15px 25px;transition:all .2s}.alien2048-gameover-button:hover{box-shadow:0 4px 8px #0000004d;transform:translateY(-2px)}.alien2048-gameover-button:active{transform:translateY(0)}.alien2048-gameover-button:disabled{cursor:not-allowed;pointer-events:none}.alien2048-share-button{align-items:center;background-color:#000;color:#fff;display:flex;gap:8px;justify-content:center}.alien2048-share-button:hover{background-color:#333}.alien2048-play-again-button{background-color:#27ae60;color:#fff}.alien2048-play-again-button:hover{background-color:#229954}.alien2048-leaderboard-button{background-color:#3498db;color:#fff}.alien2048-leaderboard-button:hover{background-color:#2980b9}.alien2048-arcade-button{background-color:#e74c3c;color:#fff}.alien2048-arcade-button:hover{background-color:#c0392b}.alien2048-save-button{background-color:#2ecc71;color:#fff}.alien2048-save-button:hover:not(:disabled){background-color:#27ae60}.alien2048-save-button:disabled{cursor:not-allowed;opacity:.6}.alien2048-view-replay-button{background-color:#9b59b6;color:#fff}.alien2048-view-replay-button:hover{background-color:#8e44ad}.alien2048-share-button img{height:18px;width:18px}@media (max-width:768px){.alien2048-gameover-content{max-width:90%;padding:20px}.alien2048-gameover-title{font-size:28px}.alien2048-gameover-subtitle{font-size:16px}.alien2048-gameover-stats td{font-size:16px;padding:8px 5px}.alien2048-gameover-button{font-size:16px;padding:12px 20px}}.alien2048-endgame-overlay{align-items:center;background-color:#000000b3;display:flex;inset:0;justify-content:center;position:fixed;z-index:100000}.alien2048-endgame-content{background-color:#52cdfe;border:3px solid #000;border-radius:15px;box-shadow:0 10px 40px #00000080;color:#000;max-width:400px;padding:30px;width:90%}.alien2048-endgame-content h2{font-size:28px;font-weight:700;margin:0 0 15px;text-align:center}.alien2048-endgame-content p{font-size:18px;font-weight:600;margin:0 0 25px;text-align:center}.alien2048-endgame-buttons{display:flex;gap:12px}.alien2048-endgame-button{border:2px solid #000;border-radius:8px;cursor:pointer;flex:1 1;font-family:Sartoshi,sans-serif;font-size:18px;font-weight:700;padding:15px 25px;transition:all .2s}.alien2048-endgame-button:hover{box-shadow:0 4px 8px #0000004d;transform:translateY(-2px)}.alien2048-endgame-button:active{transform:translateY(0)}.cancel-button{background-color:#95a5a6;color:#fff}.cancel-button:hover{background-color:#7f8c8d}.confirm-button{background-color:#e74c3c;color:#fff}.confirm-button:hover{background-color:#c0392b}@media (max-width:768px){.alien2048-endgame-content{max-width:90%;padding:20px}.alien2048-endgame-content h2{font-size:24px}.alien2048-endgame-content p{font-size:16px}.alien2048-endgame-button{font-size:16px;padding:12px 20px}}@font-face{font-family:Sartoshi;font-style:normal;font-weight:400;src:url(/static/media/SartoshiScript-Regular.f301343b9a0fb01f4d40.otf) format("opentype")}#root,body,html{margin:0;overflow:hidden;padding:0}body.gameplay-page{-webkit-overflow-scrolling:auto!important;overflow:hidden!important;overscroll-behavior:none!important}body.gameplay-page,body.gameplay-page #root{height:100vh!important;position:fixed!important;touch-action:none!important;width:100%!important}body.gameplay-page #root{overflow:hidden!important}body.gameplay-page .alien2048-container{bottom:0!important;height:auto!important;overflow:hidden!important;overscroll-behavior:none!important;position:fixed!important;top:0!important;touch-action:none!important;width:100%!important}.alien2048-container{align-items:center;background:linear-gradient(135deg,#020408,#0a0e1f 50%,#050a1a);box-sizing:border-box;display:flex;flex-direction:column;font-family:Sartoshi,Clear Sans,Helvetica Neue,Arial,sans-serif;justify-content:center;margin:0;min-height:100vh;overflow:hidden;padding:20px 0 env(safe-area-inset-bottom);position:relative;touch-action:none;-webkit-user-select:none;user-select:none}.alien2048-container:before{background-image:radial-gradient(ellipse at 75% 25%,#4299e105 0,#48bb7803 20%,#0000 40%);z-index:0}.alien2048-container:after,.alien2048-container:before{content:"";inset:0;pointer-events:none;position:absolute}.alien2048-container:after{animation:sparkle-layer-1 4s ease-in-out infinite;background-image:radial-gradient(circle,#fff .5px,#0000 1px),radial-gradient(circle,#fff .5px,#0000 1px),radial-gradient(circle,#fffc 1px,#0000 1.5px),radial-gradient(circle,#ffffffb3 .5px,#0000 1px),radial-gradient(circle,#ffffffe6 1.5px,#0000 2px);background-position:0 0,40px 60px,130px 270px,70px 100px,180px 50px;background-repeat:repeat;background-size:200px 200px,300px 300px,250px 250px,180px 180px,350px 350px;z-index:1}@keyframes sparkle-layer-1{0%,to{opacity:.4}20%{opacity:.7}40%{opacity:.5}60%{opacity:.9}80%{opacity:.6}}@keyframes sparkle-layer-2{0%,to{opacity:.5}15%{opacity:.8}35%{opacity:.4}55%{opacity:1}75%{opacity:.6}}@keyframes sparkle-layer-3{0%,to{opacity:.6}25%{opacity:.9}50%{opacity:.5}75%{opacity:.8}}.star-field-layer-2{animation:sparkle-layer-2 5.5s ease-in-out 1.2s infinite;background-image:radial-gradient(circle,#ffffffd9 .8px,#0000 1.2px),radial-gradient(circle,#ffffffbf .6px,#0000 1px),radial-gradient(circle,#fff 1px,#0000 1.5px);background-position:50px 30px,140px 180px,90px 120px;background-size:280px 280px,220px 220px,400px 400px}.star-field-layer-2,.star-field-layer-3{background-repeat:repeat;inset:0;pointer-events:none;position:absolute;z-index:1}.star-field-layer-3{animation:sparkle-layer-3 6.8s ease-in-out 2.1s infinite;background-image:radial-gradient(circle,#fff9 .5px,#0000 .8px),radial-gradient(circle,#ffffff80 .4px,#0000 .7px),radial-gradient(circle,#ffffffb3 .6px,#0000 1px);background-position:20px 80px,110px 40px,200px 150px;background-size:150px 150px,230px 230px,320px 320px}.nebula-cloud{animation:nebula-drift 25s ease-in-out infinite;border-radius:50%;filter:blur(40px);pointer-events:none;position:absolute;z-index:0}@keyframes nebula-drift{0%,to{opacity:.5;transform:translate(0) scale(1)}25%{opacity:.7;transform:translate(10px,-5px) scale(1.05)}50%{opacity:.6;transform:translate(5px,5px) scale(1.02)}75%{opacity:.8;transform:translate(-5px) scale(1.08)}}.distant-galaxy{animation:galaxy-glow 12s ease-in-out infinite;background:radial-gradient(ellipse,#fff6 0,#c8c8ff33 40%,#0000 70%);border-radius:50%;filter:blur(8px);height:15px;opacity:0;pointer-events:none;position:absolute;width:40px;z-index:1}@keyframes galaxy-glow{0%,to{filter:blur(8px);opacity:.2}50%{filter:blur(6px);opacity:.5}}.twinkle-star{animation:twinkle 5s ease-in-out infinite;background:#fff;border-radius:50%;box-shadow:0 0 6px 2px #fff9;height:3px;opacity:0;pointer-events:none;position:absolute;width:3px;z-index:2}@keyframes twinkle{0%,to{opacity:.1;transform:scale(.8)}15%{opacity:.9;transform:scale(1.2)}30%{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}70%{opacity:.4;transform:scale(.9)}85%{opacity:.8;transform:scale(1.1)}}.alien2048-container .shooting-star{background:linear-gradient(90deg,#0000,#ffffffe6 30%,#fff9 70%,#0000);-webkit-clip-path:polygon(0 50%,100% 0,100% 100%);clip-path:polygon(0 50%,100% 0,100% 100%);height:6px;opacity:0;pointer-events:none;position:absolute;width:120px;z-index:1}.alien2048-container .shooting-star-1{animation:shooting-star-1 8s linear infinite;height:8px;left:10%;top:5%;transform:rotate(55deg);width:120px}.alien2048-container .shooting-star-2{animation:shooting-star-2 12s linear infinite;height:5px;left:60%;top:35%;transform:rotate(35deg);width:150px}.alien2048-container .shooting-star-3{animation:shooting-star-3 10s linear infinite;height:6px;left:15%;top:65%;transform:rotate(50deg);width:100px}.alien2048-container .shooting-star-4{animation:shooting-star-4 15s linear infinite;height:10px;left:75%;top:20%;transform:rotate(60deg);width:80px}.alien2048-container .shooting-star-5{animation:shooting-star-5 18s linear infinite;height:4px;left:5%;top:45%;transform:rotate(30deg);width:180px}@keyframes shooting-star-1{0%,75%{opacity:0;transform:translate(0) rotate(55deg)}77%{opacity:1}95%{opacity:.8}to{opacity:0;transform:translate(250px,350px) rotate(55deg)}}@keyframes shooting-star-2{0%,80%{opacity:0;transform:translate(0) rotate(35deg)}82%{opacity:1}96%{opacity:.7}to{opacity:0;transform:translate(400px,280px) rotate(35deg)}}@keyframes shooting-star-3{0%,70%{opacity:0;transform:translate(0) rotate(50deg)}73%{opacity:1}93%{opacity:.9}to{opacity:0;transform:translate(280px,330px) rotate(50deg)}}@keyframes shooting-star-4{0%,85%{opacity:0;transform:translate(0) rotate(60deg)}87%{opacity:1}97%{opacity:.6}to{opacity:0;transform:translate(180px,310px) rotate(60deg)}}@keyframes shooting-star-5{0%,65%{opacity:0;transform:translate(0) rotate(30deg)}68%{opacity:.9}90%{opacity:.5}to{opacity:0;transform:translate(500px,290px) rotate(30deg)}}.alien2048-container>:not(.shooting-star,.star-field-layer-2,.star-field-layer-3,.nebula-cloud,.distant-galaxy,.twinkle-star,.alien2048-name-modal-overlay,.alien2048-gameover-overlay,.alien2048-endgame-overlay){position:relative;z-index:2}.alien2048-board{background-color:initial!important}.alien2048-board:before{animation:sparkle-layer-1 4s ease-in-out infinite;background-image:radial-gradient(circle,#fff .5px,#0000 1px),radial-gradient(circle,#fff .5px,#0000 1px),radial-gradient(circle,#fffc 1px,#0000 1.5px);background-position:0 0,20px 30px,60px 80px;background-size:100px 100px,150px 150px,120px 120px;border-radius:12px;content:"";inset:0;pointer-events:none;position:absolute;z-index:0}.level-title{background-color:#ff0;border-radius:5px;color:#000;font-size:min(6vw,6vh,36px);font-weight:700;margin:10px 5px;padding:min(1.5vw,1.5vh,8px) min(3vw,3vh,15px);text-align:center}.stats-container{align-items:center;display:flex;flex-direction:row;gap:5px;justify-content:center;margin:10px 5px}.score-display{background-color:red;color:#fff}.moves-display,.score-display{border-radius:5px;font-size:min(3.2vw,3.2vh,20px);font-weight:700;margin:5px;padding:min(1.2vw,1.2vh,6px) min(2.5vw,2.5vh,12px)}.moves-display{background-color:#94c447;color:#000}.button-container{display:flex;flex-direction:row;gap:5px;justify-content:center;margin:10px}.button-container button{border:none;border-radius:5px;cursor:pointer;font-size:min(3.2vw,3.2vh,20px);font-weight:700;margin:0;padding:min(1.2vw,1.2vh,6px) min(2.5vw,2.5vh,12px);transition:transform .1s,background-color .2s}.button-container button:active{transform:scale(.95)}.back-btn{background-color:red;color:#fff}.back-btn:hover{background-color:#c00}.new-game-btn{background-color:#52cdfe;color:#000}.new-game-btn:hover{background-color:#3db8e8}.mute-btn{background-color:#f39c12;color:#fff;font-size:min(4vw,4vh,24px)}.mute-btn:hover{background-color:#e67e22}.muted-icon{display:inline-block;position:relative}.muted-icon:after{background-color:#c0392b;border-radius:2px;content:"";height:3px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%) rotate(-45deg);width:120%}.end-game-btn{background-color:#e74c3c;color:#fff}.end-game-btn:hover{background-color:#c0392b}.player-info{border-radius:5px;font-size:min(3.2vw,3.2vh,20px);font-weight:700;margin:5px;padding:min(1.2vw,1.2vh,6px) min(2.5vw,2.5vh,12px)}.player-info.anon{background-color:grey;color:#fff}.player-info.custom-name{background-color:#52cdfe;box-shadow:0 2px 4px #0003;color:#000}.player-info.twitter-user{align-items:center;background-color:#000;box-shadow:0 2px 4px #0003;color:#fff;display:flex;gap:8px}.player-info .x-logo{display:inline-block;filter:invert(1);height:15px;width:15px}.game-area{align-items:center;display:flex;justify-content:center;padding:30px;position:relative}.tap-hint{color:#ffffff4d;font-size:14px;pointer-events:none;position:absolute}.tap-up{top:0}.tap-down,.tap-up{left:50%;transform:translateX(-50%)}.tap-down{bottom:0}.tap-left{left:0}.tap-left,.tap-right{top:50%;transform:translateY(-50%)}.tap-right{right:0}.direction-arrow{align-items:center;animation:arrow-fade .2s ease-out;color:#fff6;display:flex;font-size:120px;font-weight:700;inset:0;justify-content:center;pointer-events:none;position:absolute;z-index:10}@keyframes arrow-fade{0%{opacity:0;transform:scale(.8)}50%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.1)}}.instructions{background:#ffffff1a;border-radius:8px;color:#eee4da;margin-top:20px;max-width:350px;padding:15px;text-align:center}.instructions p{font-size:14px;margin:5px 0}.win-banner{animation:pulse .5s ease-in-out infinite alternate;background:#00ff00f2;border-radius:12px;box-shadow:0 10px 40px #0f06;color:#fff;font-size:24px;font-weight:700;left:50%;padding:20px 40px;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:100}.alien2048-tile{box-shadow:0 2px 8px #0003}.tile-new{animation:tile-appear .2s ease-out}@keyframes tile-appear{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.tile-merged{animation:tile-merge .2s ease-out}@keyframes tile-merge{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}.alien2048-landing{align-items:center;background:linear-gradient(135deg,#0a0e27,#16213e 50%,#0f3460);display:flex;font-family:Sartoshi,Clear Sans,Helvetica Neue,Arial,sans-serif;justify-content:center;min-height:100vh;overflow:hidden;padding:20px;position:relative}.alien2048-landing:before{animation:twinkle 3s ease-in-out infinite;background-image:radial-gradient(2px 2px at 20px 30px,#fff,#0000),radial-gradient(2px 2px at 60px 70px,#fff,#0000),radial-gradient(1px 1px at 50px 50px,#fff,#0000),radial-gradient(1px 1px at 130px 80px,#fff,#0000),radial-gradient(2px 2px at 90px 10px,#fff,#0000),radial-gradient(1px 1px at 40px 120px,#fff,#0000),radial-gradient(2px 2px at 110px 150px,#fff,#0000),radial-gradient(1px 1px at 70px 180px,#fff,#0000),radial-gradient(2px 2px at 150px 40px,#fff,#0000),radial-gradient(1px 1px at 10px 90px,#fff,#0000),radial-gradient(2px 2px at 180px 120px,#fff,#0000),radial-gradient(1px 1px at 160px 160px,#fff,#0000);background-size:200px 200px}.alien2048-landing:after,.alien2048-landing:before{background-repeat:repeat;content:"";inset:0;pointer-events:none;position:absolute;z-index:1}.alien2048-landing:after{animation:twinkle 4s ease-in-out infinite reverse;background-image:radial-gradient(1px 1px at 80px 20px,#fffc,#0000),radial-gradient(1px 1px at 30px 100px,#fffc,#0000),radial-gradient(2px 2px at 140px 60px,#fff9,#0000),radial-gradient(1px 1px at 100px 140px,#fffc,#0000),radial-gradient(2px 2px at 45px 160px,#fff9,#0000),radial-gradient(1px 1px at 170px 100px,#fffc,#0000),radial-gradient(1px 1px at 25px 50px,#ffffffe6,#0000),radial-gradient(2px 2px at 190px 80px,#ffffffb3,#0000);background-size:180px 180px}.alien2048-landing>*{position:relative;z-index:2}.landing-content{max-width:500px;text-align:center;width:100%}.landing-title{color:#eee4da;font-size:48px;margin-bottom:10px;text-shadow:3px 3px 6px #0000004d}.landing-subtitle{color:#bbada0;font-size:18px;margin-bottom:30px}.tile-preview{background:#ffffff1a;border-radius:12px;margin-bottom:30px;padding:20px}.preview-row{align-items:center;display:flex;gap:10px;justify-content:center;margin-bottom:15px}.preview-row:last-child{margin-bottom:0}.preview-tile{align-items:center;border-radius:6px;display:flex;flex-direction:column;height:70px;justify-content:center;padding:5px;width:70px}.preview-tile img{height:40px;object-fit:contain;width:40px}.preview-tile span{color:#776e65;font-size:10px;font-weight:700;margin-top:2px}.alien-tile{animation:glow 1.5s ease-in-out infinite alternate}.alien-tile span{color:#f9f6f2!important}@keyframes glow{0%{box-shadow:0 0 10px #0f0,0 0 20px #0f0}to{box-shadow:0 0 20px #0f0,0 0 40px #0f0}}.arrow{color:#eee4da;font-size:20px;font-weight:700}.controls-section{margin-bottom:30px}.controls-section h3{color:#eee4da;font-size:20px;margin-bottom:15px}.controls-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr)}.control-item{background:#ffffff1a;border-radius:8px;display:flex;flex-direction:column;gap:5px;padding:12px}.control-item .key{color:#eee4da;font-size:16px;font-weight:700}.control-item span:last-child{color:#bbada0;font-size:12px}.button-group{display:flex;flex-direction:column;gap:15px}.play-button{background-color:#52cdfe;border:none;border-radius:12px;color:#000;cursor:pointer;font-size:20px;font-weight:700;padding:18px 40px;transition:transform .2s,background-color .2s}.play-button:hover{background-color:#3db8e8;transform:translateY(-2px)}.play-button:active{transform:translateY(0)}.leaderboard-button{background-color:#feac64;border:none;border-radius:10px;color:#000;cursor:pointer;font-size:18px;font-weight:700;padding:15px 30px;transition:transform .2s,background-color .2s}.leaderboard-button:hover{background-color:#fd9843;transform:translateY(-2px)}.leaderboard-button:active{transform:translateY(0)}.back-button{background-color:red;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:12px 24px;transition:background-color .2s}.back-button:hover{background-color:#c00}@media (max-width:400px){.game-title{font-size:28px}.landing-title{font-size:36px}.preview-tile{height:55px;width:55px}.preview-tile img{height:30px;width:30px}.preview-tile span{font-size:8px}.arrow{font-size:16px}}.alien2048-leaderboard-container{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;font-family:Sartoshi,Clear Sans,Helvetica Neue,Arial,sans-serif;margin:0 auto;max-width:1200px;padding:80px 20px 20px;width:100%}.alien2048-leaderboard-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:20px;width:100%}.alien2048-leaderboard-header h1{font-size:40px;margin:0}.alien2048-leaderboard-header .back-button{background-color:#e74c3c;border:2px solid #333;border-radius:3px;color:#fff;cursor:pointer;font-family:Sartoshi,sans-serif;font-size:16px;font-weight:700;padding:5px 10px;transition:background-color .3s}.alien2048-leaderboard-header .back-button:hover{background-color:#c0392b}.alien2048-filter-tabs{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:20px;width:100%}.alien2048-filter-tab{background-color:#3498db;border:2px solid #333;border-radius:3px;color:#000;cursor:pointer;font-family:Sartoshi,sans-serif;font-size:.8em;font-weight:700;padding:5px 10px;transition:background-color .3s}.alien2048-filter-tab:hover{background-color:#2980b9}.alien2048-filter-tab.active{background-color:#007bff;color:#fff}.alien2048-loading{padding:40px 20px;text-align:center}.alien2048-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#333;height:50px;margin:0 auto 20px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.alien2048-loading p{color:#776e65;font-size:18px}.alien2048-error{background:#fee;border:2px solid #e74c3c;border-radius:12px;padding:40px 20px;text-align:center}.alien2048-error p{color:#e74c3c;font-size:18px;margin-bottom:15px}.alien2048-error button{background-color:#3498db;border:2px solid #333;border-radius:3px;color:#000;cursor:pointer;font-family:Sartoshi,sans-serif;font-size:16px;padding:5px 10px;transition:background-color .3s}.alien2048-error button:hover{background-color:#2980b9}.alien2048-scores-table{overflow-x:auto;width:100%}.alien2048-scores-table table{border-collapse:collapse;margin:0 auto;width:100%}.alien2048-scores-table th{border:none;font-size:14px;font-weight:700;padding:10px;text-align:center;vertical-align:middle}.alien2048-scores-table tbody tr{transition:background-color .2s}.alien2048-scores-table tbody tr.clickable{cursor:pointer}.alien2048-scores-table tbody tr.clickable:hover{background:#0000000d}.alien2048-scores-table td{border:none;font-size:16px;padding:10px;text-align:center;vertical-align:middle}.alien2048-scores-table .player-name{font-weight:700}.alien2048-scores-table .score-value{font-size:18px;font-weight:700}.alien2048-scores-table .x-logo-fallback{align-items:center;background-color:#000;border-radius:3px;cursor:pointer;display:flex;height:16px;justify-content:center;padding:3px;transition:opacity .2s;width:16px}.alien2048-scores-table .x-logo-fallback:hover{opacity:.8}.alien2048-scores-table .x-logo-fallback-img{filter:invert(1);height:10px;width:10px}.alien2048-scores-table .tile-info{align-items:center;display:flex;gap:8px;justify-content:center}.alien2048-scores-table .tile-emoji{font-size:20px}.alien2048-scores-table .tile-name{color:#776e65;font-weight:600}.alien2048-scores-table .date-cell{color:#333;font-size:14px;font-weight:400}.alien2048-empty-state{padding:60px 20px;text-align:center}.alien2048-empty-state p{color:#776e65;font-size:20px;margin-bottom:20px}.alien2048-empty-state button{background-color:#3498db;border:2px solid #333;border-radius:3px;color:#000;cursor:pointer;font-family:Sartoshi,sans-serif;font-size:18px;font-weight:700;padding:10px 20px;transition:background-color .3s}.alien2048-empty-state button:hover{background-color:#2980b9}.alien2048-pagination{align-items:center;display:flex;gap:20px;justify-content:center;margin-top:30px;padding:20px}.alien2048-pagination .pagination-btn{background-color:#3498db;border:2px solid #333;border-radius:3px;color:#000;cursor:pointer;font-family:Sartoshi,sans-serif;font-size:16px;font-weight:700;padding:5px 10px;transition:background-color .3s}.alien2048-pagination .pagination-btn:hover:not(:disabled){background-color:#2980b9}.alien2048-pagination .pagination-btn:disabled{cursor:not-allowed;opacity:.3}.alien2048-pagination .page-info{color:#776e65;font-size:16px;font-weight:700}@media (max-width:768px){.alien2048-leaderboard-container{padding:70px 15px 15px}.alien2048-leaderboard-header{align-items:flex-start;flex-direction:column}.alien2048-leaderboard-header h1{font-size:32px}.alien2048-filter-tabs{width:100%}.alien2048-filter-tab{flex:1 1;min-width:0;text-align:center}.alien2048-scores-table td,.alien2048-scores-table th{font-size:14px;padding:8px 5px}.alien2048-scores-table .score-value,.alien2048-scores-table .tile-emoji{font-size:16px}.alien2048-scores-table td:nth-child(5),.alien2048-scores-table th:nth-child(5){display:none}}@media (max-width:480px){.alien2048-leaderboard-container{padding:70px 10px 10px}.alien2048-leaderboard-header h1{font-size:28px}.alien2048-filter-tab{font-size:.7em;padding:8px}.alien2048-scores-table td:nth-child(4),.alien2048-scores-table td:nth-child(6),.alien2048-scores-table th:nth-child(4),.alien2048-scores-table th:nth-child(6){display:none}}.combined-leaderboard-container{box-sizing:border-box;font-family:Sartoshi,Clear Sans,Helvetica Neue,Arial,sans-serif;padding:80px 20px 20px;width:100%}.combined-leaderboard-header{margin-bottom:30px;margin-left:auto;margin-right:auto;max-width:1200px;text-align:center}.combined-leaderboard-header h1{font-size:40px;margin:0}.game-tabs{flex-wrap:wrap;gap:15px;margin-bottom:30px;margin-left:auto;margin-right:auto;max-width:1200px}.game-tab,.game-tabs{display:flex;justify-content:center}.game-tab{align-items:center;background-color:#3498db;border:3px solid #333;border-radius:12px;color:#000;cursor:pointer;flex:1 1;font-family:Sartoshi,sans-serif;font-size:20px;font-weight:700;gap:12px;max-width:400px;min-width:250px;padding:20px 30px;transition:all .3s}.game-tab .tab-icon{height:32px;object-fit:contain;width:32px}.game-tab:hover{background-color:#2980b9;box-shadow:0 6px 12px #0000004d;transform:translateY(-3px)}.game-tab.active{background-color:#007bff;box-shadow:0 6px 16px #0006;color:#fff;transform:translateY(-3px)}.combined-leaderboard-container .alien2048-leaderboard-container,.combined-leaderboard-container .mfersbeheaded-leaderboard-page{min-height:auto;padding-top:0}.combined-leaderboard-container .alien2048-leaderboard-header,.combined-leaderboard-container .leaderboard-header{display:none}@media (max-width:768px){.combined-leaderboard-header h1{font-size:32px}.game-tabs{gap:10px;width:100%}.game-tab{font-size:18px;min-width:0;padding:15px 20px}.game-tab .tab-icon{height:28px;width:28px}}@media (max-width:480px){.combined-leaderboard-container{padding:70px 15px 15px}.combined-leaderboard-header h1{font-size:28px}.game-tab{font-size:16px;padding:12px 15px}.game-tab .tab-icon{height:24px;width:24px}}.replay-viewer.error,.replay-viewer.loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:20px;text-align:center}.replay-viewer.error h2,.replay-viewer.loading h2{color:#333;font-size:2em;margin-bottom:20px}.replay-viewer.error p{color:#666;font-size:1.2em;margin-bottom:30px}body.replay-page .app-header{display:none!important}body.replay-page{padding-top:0!important}body.replay-page,body.replay-page #root{height:auto!important;min-height:100vh!important;overflow-y:auto!important}body.replay-page .gameWiderContainer{height:auto!important;min-height:100vh!important;overflow-y:visible!important;padding-top:0!important}.replay-indicator{background-color:#ff6b6b;border:none;border-radius:5px;color:#fff;font-size:min(3.2vw,3.2vh,20px);font-weight:700;margin:5px;padding:min(1.2vw,1.2vh,6px) min(2.5vw,2.5vh,12px);transition:background-color .3s}.replay-indicator.level-nakamigo_crush{background-color:#6f99f8;color:#000}.replay-indicator.level-book_of_bee{background-color:#246428;color:#fff}.replay-timeline-section{background-color:#1a1a1a;border-radius:8px;color:#fff;font-family:Courier New,monospace;margin:20px auto;max-width:1200px;padding:20px}.timeline-container{background-color:#222;border:2px solid #333;border-radius:8px;margin-bottom:30px;padding:20px;width:100%}.timeline{align-items:center;display:flex;height:30px;margin-bottom:15px;position:relative}.timeline-slider{-webkit-appearance:none;appearance:none;background:#333;border-radius:4px;cursor:pointer;height:8px;outline:none;position:relative;width:100%;z-index:1}.timeline-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff;border:3px solid #4caf50;border-radius:50%;box-shadow:0 0 5px #4caf5080;cursor:pointer;height:18px;position:relative;width:18px;z-index:3}.timeline-slider::-moz-range-thumb{background:#fff;border:3px solid #4caf50;border-radius:50%;box-shadow:0 0 5px #4caf5080;cursor:pointer;height:18px;position:relative;width:18px;z-index:3}.timeline-progress{background:linear-gradient(90deg,#4caf50,#8bc34a);border-radius:4px;height:8px;left:0;transform:translateY(-50%);transition:width .1s linear;z-index:0}.timeline-playhead,.timeline-progress{pointer-events:none;position:absolute;top:50%}.timeline-playhead{background:#fff;box-shadow:0 0 10px #fffc;height:30px;transform:translate(-50%,-50%);transition:left .05s linear;width:3px;z-index:4}.timeline-playhead:before{border-top:8px solid #fff;top:-6px}.timeline-playhead:after,.timeline-playhead:before{border-left:6px solid #0000;border-right:6px solid #0000;content:"";height:0;left:50%;position:absolute;transform:translateX(-50%);width:0}.timeline-playhead:after{border-bottom:8px solid #fff;bottom:-6px}.event-markers{left:0;pointer-events:none;top:50%;transform:translateY(-50%);width:100%;z-index:2}.event-marker,.event-markers{height:20px;position:absolute}.event-marker{border-radius:3px;cursor:pointer;opacity:.7;pointer-events:all;transform:translateX(-50%);transition:all .2s;width:6px}.event-marker:hover{box-shadow:0 0 8px currentcolor;height:28px;opacity:1}.event-marker.active{border:2px solid #fff;box-shadow:0 0 12px currentcolor;height:28px;opacity:1}.replay-timeline{background-color:#ffffffe6;border:3px solid #333;border-radius:10px;box-shadow:0 4px 8px #0003;margin:20px auto 10px;max-width:min(90vw,90vh,500px);padding:10px;width:100%}.timeline-timer{color:#333;display:inline-block;font-family:Courier New,monospace;font-size:min(2.8vw,2.8vh,14px);font-weight:700;margin-bottom:8px;min-width:180px;text-align:center;width:100%}.events-panel{background-color:#222;border:2px solid #333;border-radius:8px;margin-bottom:30px;padding:20px}.events-panel h3{color:#fff;font-size:18px;margin-bottom:15px;margin-top:0}.events-list{display:flex;flex-direction:column;gap:8px;max-height:400px;overflow-y:auto}.events-list::-webkit-scrollbar{width:8px}.events-list::-webkit-scrollbar-track{background:#1a1a1a;border-radius:4px}.events-list::-webkit-scrollbar-thumb{background:#555;border-radius:4px}.events-list::-webkit-scrollbar-thumb:hover{background:#666}.event-item{align-items:center;background-color:#2a2a2a;border-left:4px solid;border-radius:6px;cursor:pointer;display:flex;gap:15px;padding:10px 15px;transition:all .2s}.event-item:hover{background-color:#333;transform:translateX(5px)}.event-item.active{background-color:#3a3a3a;border-left-width:6px;box-shadow:0 0 10px #4caf504d}.event-item .event-time{color:#4caf50;font-family:Courier New,monospace;font-weight:700;min-width:60px}.event-item .event-type{color:#fff;font-weight:700;min-width:80px}.event-item .event-details{color:#aaa;flex:1 1;font-size:14px}.final-stats{background-color:#222;border:2px solid #333;border-radius:8px;padding:20px}.final-stats h3{color:#fff;margin-bottom:15px;margin-top:0}.final-stats p{color:#ccc;margin:8px 0}@media (max-width:768px){.replay-header{align-items:flex-start;flex-direction:column}.replay-timer .timer-current{font-size:36px}.replay-timer .timer-separator,.replay-timer .timer-total{font-size:28px}.replay-stats{flex-wrap:wrap;gap:15px}.replay-stats .stat{flex:1 1 40%}.playback-buttons{flex-wrap:wrap}.playback-buttons button{flex:1 1;min-width:100px}.event-item{flex-wrap:wrap;gap:8px}.event-item .event-time{font-size:12px;min-width:50px}.event-item .event-type{font-size:14px;min-width:60px}.event-item .event-details{flex-basis:100%;font-size:12px}}.debug-panel{background-color:#1a1a1a;border:2px solid #f39c12;border-radius:8px;color:#fff;font-family:Courier New,monospace;margin:20px auto;max-width:1200px;padding:20px}.debug-panel h3{color:#f39c12;font-size:20px;margin-bottom:20px;margin-top:0;text-align:center}.debug-section{background-color:#222;border:1px solid #333;border-radius:6px;margin-bottom:20px;padding:15px}.debug-section h4{color:#4caf50;font-size:16px;margin-bottom:10px;margin-top:0}.debug-section pre{background-color:#2a2a2a;border-radius:4px;font-size:12px;line-height:1.5;margin:0;overflow-wrap:break-word;overflow-x:auto;padding:10px;white-space:pre-wrap}.debug-events-list{display:flex;flex-direction:column;gap:8px;max-height:500px;overflow-y:auto}.debug-events-list::-webkit-scrollbar{width:8px}.debug-events-list::-webkit-scrollbar-track{background:#1a1a1a;border-radius:4px}.debug-events-list::-webkit-scrollbar-thumb{background:#555;border-radius:4px}.debug-events-list::-webkit-scrollbar-thumb:hover{background:#666}.debug-event{background-color:#2a2a2a;border:2px solid #333;border-radius:6px;padding:10px;transition:all .2s}.debug-event:hover{background-color:#333;border-color:#4caf50;transform:translateX(3px)}.debug-event-active{background-color:#3a3a3a;border-color:#f39c12!important;box-shadow:0 0 10px #f39c124d}.debug-event-header{align-items:center;display:flex;font-weight:700;gap:15px;margin-bottom:5px}.debug-event-index{color:#888;min-width:40px}.debug-event-type{flex:1 1;font-weight:700}.debug-event-time{color:#4caf50;font-family:Courier New,monospace}.debug-event-details{margin-top:10px}.debug-event-details summary{color:#4a90e2;cursor:pointer;font-size:12px;padding:5px}.debug-event-details summary:hover{color:#66b3ff}.debug-event-details pre{background-color:#1a1a1a;border-radius:4px;font-size:11px;margin-top:5px;overflow-x:auto;padding:10px}.share-on-x-button{background-color:#000!important;border:none;border-radius:8px;box-shadow:0 2px 4px #0003;color:#fff!important;cursor:pointer;font-family:Sartoshi,sans-serif;font-size:.95rem;margin:5px;padding:.5rem 1rem;transition:all .2s;white-space:nowrap}.share-on-x-button:hover{background-color:#333!important;box-shadow:0 4px 8px #0000004d;transform:translateY(-2px)}.share-on-x-button:active{box-shadow:0 2px 4px #0003;transform:translateY(0)}.share-x-button{align-items:center;background-color:#000!important;border:2px solid #333!important;color:#fff!important;display:flex;gap:.5rem;justify-content:center}.x-logo-small-button{filter:invert(1);height:16px;width:16px}.debug-console{background-color:#000000f2;border-top:2px solid #333;bottom:0;color:#fff;display:flex;flex-direction:column;font-family:Courier New,monospace;font-size:12px;left:0;max-height:50vh;position:fixed;right:0;transition:all .3s ease;z-index:9999}.debug-console.minimized{max-height:40px}.debug-console-header{align-items:center;background-color:#1a1a1a;border-bottom:1px solid #333;display:flex;justify-content:space-between;min-height:40px;padding:8px 12px}.debug-console-title{color:#0f0;font-weight:700}.debug-console-status{align-items:center;display:flex;flex:1 1;gap:10px;margin-left:20px}.connection-status{align-items:center;display:flex;font-size:11px;gap:4px}.connection-status.connected{color:#0f0}.connection-status.disconnected{color:#f44}.debug-console-controls{display:flex;gap:8px}.debug-btn{background-color:#333;border:1px solid #555;border-radius:3px;color:#fff;cursor:pointer;font-size:11px;padding:4px 12px;transition:background-color .2s}.debug-btn:hover{background-color:#444}.debug-btn:active{background-color:#222}.debug-console-body{flex:1 1;max-height:calc(50vh - 40px);overflow:hidden auto;padding:8px}.debug-console-empty{color:#666;padding:20px;text-align:center}.log-entry{border-radius:2px;display:flex;flex-direction:column;gap:2px;margin-bottom:4px;overflow-wrap:break-word;padding:2px 4px}.log-entry:hover{background-color:#ffffff0d}.log-time{color:#888;margin-right:8px}.log-level{font-size:10px;font-weight:700;margin-right:8px;text-transform:uppercase}.log-message{color:#fff;flex:1 1}.log-data{background-color:#ffffff0d;border-radius:3px;color:#ccc;font-size:11px;margin:4px 0 0 20px;max-width:100%;overflow-x:auto;padding:4px 8px}.log-error .log-level{color:#f44}.log-error .log-message{color:#faa}.log-warn .log-level{color:#fa0}.log-warn .log-message{color:#fd8}.log-info .log-level{color:#0af}.log-debug .log-level{color:#888}.log-debug .log-message{color:#aaa}@media (max-width:768px){.debug-console{font-size:11px;max-height:40vh}.debug-console-body{max-height:calc(40vh - 40px)}.debug-btn{padding:6px 10px}.debug-btn,.log-data{font-size:10px}}.debug-console-body::-webkit-scrollbar{width:6px}.debug-console-body::-webkit-scrollbar-track{background:#1a1a1a}.debug-console-body::-webkit-scrollbar-thumb{background:#444;border-radius:3px}.debug-console-body::-webkit-scrollbar-thumb:hover{background:#555}.scroll-debug-panel{background:#000000f2;border:2px solid #0f0;border-radius:8px;box-shadow:0 4px 20px #00ff004d;color:#0f0;font-family:Courier New,monospace;font-size:12px;max-height:calc(100vh - 100px);overflow-y:auto;padding:15px;position:fixed;right:10px;top:90px;width:350px;z-index:99999}.scroll-debug-header{align-items:center;border-bottom:1px solid #0f0;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:10px}.scroll-debug-header h3{color:#0f0;font-size:14px;margin:0}.scroll-debug-header button{background:#0f0;border:none;border-radius:3px;color:#000;cursor:pointer;font-family:Courier New,monospace;font-size:11px;padding:4px 8px}.scroll-debug-header button:hover{background:#0c0}.scroll-debug-section{margin-bottom:15px}.scroll-debug-section h4{color:#ff0;font-size:13px;margin:0 0 8px;text-transform:uppercase}.debug-info{background:#00ff001a;border-radius:4px;margin-bottom:8px;padding:8px}.debug-info>div{padding:3px 0}.debug-element{background:#00ff000d;border:1px solid #00ff004d;border-radius:4px;margin-bottom:8px}.debug-element summary{cursor:pointer;font-weight:700;padding:8px;-webkit-user-select:none;user-select:none}.debug-element summary:hover{background:#00ff001a}.debug-details{border-top:1px solid #0f03;padding:8px}.debug-details>div{padding:3px 0}.debug-ok{color:#0f0}.debug-warn{color:#ff0}.debug-error{color:red}.scroll-debug-section button{background:#333;border:1px solid #0f0;border-radius:3px;color:#0f0;cursor:pointer;font-family:Courier New,monospace;font-size:11px;margin:4px 4px 4px 0;padding:6px 10px}.scroll-debug-section button:hover{background:#0f0;color:#000}@media (max-width:768px){.scroll-debug-panel{font-size:10px;left:10px;right:10px;top:70px;width:calc(100% - 20px)}}.error-boundary-fallback{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:400px;padding:2rem}.error-boundary-app{min-height:100vh}.error-boundary-route{min-height:60vh}.error-boundary-component{border-radius:8px;margin:1rem 0;min-height:300px}.error-boundary-content{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:600px;padding:2.5rem;text-align:center;width:100%}.error-boundary-icon{animation:bounce 2s infinite;font-size:4rem;margin-bottom:1rem}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.error-boundary-title{color:#1a202c;font-size:1.75rem;font-weight:700;margin-bottom:1rem}.error-boundary-message{color:#4a5568;font-size:1rem;line-height:1.6;margin-bottom:2rem}.error-boundary-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:1.5rem}.error-boundary-button{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s ease}.error-boundary-button-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.error-boundary-button-primary:hover{box-shadow:0 5px 20px #667eea66;transform:translateY(-2px)}.error-boundary-button-secondary{background:#e2e8f0;color:#2d3748}.error-boundary-button-secondary:hover{background:#cbd5e0;transform:translateY(-2px)}.error-boundary-button:active{transform:translateY(0)}.error-boundary-details{background:#f7fafc;border-radius:8px;margin-top:2rem;overflow:hidden;text-align:left}.error-boundary-details-summary{background:#edf2f7;color:#2d3748;cursor:pointer;font-weight:600;padding:1rem;transition:background .2s ease;-webkit-user-select:none;user-select:none}.error-boundary-details-summary:hover{background:#e2e8f0}.error-boundary-details-content{max-height:400px;overflow-y:auto;padding:1rem}.error-boundary-error-info h3{color:#2d3748;font-size:.875rem;font-weight:700;letter-spacing:.05em;margin-bottom:.5rem;margin-top:1rem;text-transform:uppercase}.error-boundary-error-info h3:first-child{margin-top:0}.error-boundary-error-info pre{background:#fff;border:1px solid #fc8181;border-radius:4px;color:#e53e3e;font-family:Monaco,Courier New,monospace;font-size:.75rem;line-height:1.5;overflow-wrap:break-word;overflow-x:auto;padding:1rem;white-space:pre-wrap}@media (max-width:640px){.error-boundary-fallback{padding:1rem}.error-boundary-content{padding:1.5rem}.error-boundary-icon{font-size:3rem}.error-boundary-title{font-size:1.5rem}.error-boundary-message{font-size:.875rem}.error-boundary-actions{flex-direction:column;gap:.75rem}.error-boundary-button{padding:.875rem 1.5rem;width:100%}.error-boundary-details-content{max-height:300px}.error-boundary-error-info pre{font-size:.625rem;padding:.75rem}}.game-error-boundary{align-items:center;background:linear-gradient(135deg,#1a202c,#2d3748);display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:2rem;position:relative}.game-error-boundary:before{animation:slide 20s linear infinite;background:repeating-linear-gradient(45deg,#0000,#0000 10px,#ffffff05 0,#ffffff05 20px);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}@keyframes slide{0%{transform:translate(0)}to{transform:translate(50%,50%)}}.game-error-content{background:#fffffff2;border:2px solid #667eea33;border-radius:16px;box-shadow:0 20px 60px #0006;max-width:600px;padding:3rem;position:relative;text-align:center;width:100%;z-index:1}.game-error-icon{animation:pulse 2s ease-in-out infinite;font-size:5rem;margin-bottom:1.5rem}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.game-error-title{color:#1a202c;font-size:2rem;font-weight:800;letter-spacing:.05em;margin-bottom:1rem;text-transform:uppercase}.game-error-message{color:#4a5568;font-size:1.125rem;line-height:1.7;margin-bottom:1.5rem}.game-error-retry-info{background:#f7fafc;border-left:4px solid #ed8936;border-radius:8px;color:#718096;font-size:.875rem;font-weight:600;margin-bottom:2rem;padding:.75rem}.game-error-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:1.5rem}.game-error-button{border:none;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:700;letter-spacing:.05em;overflow:hidden;padding:.875rem 1.75rem;position:relative;text-decoration:none;text-transform:uppercase;transition:all .3s ease}.game-error-button:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.game-error-button:hover:before{height:300px;width:300px}.game-error-button-primary{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 15px #667eea4d;color:#fff}.game-error-button-primary:hover{box-shadow:0 6px 25px #667eea80;transform:translateY(-3px)}.game-error-button-secondary{background:#e2e8f0;box-shadow:0 4px 15px #0000001a;color:#2d3748}.game-error-button-secondary:hover{background:#cbd5e0;box-shadow:0 6px 25px #00000026;transform:translateY(-3px)}.game-error-button:active{transform:translateY(0)}.game-error-button span{position:relative;z-index:1}.game-error-info{background:linear-gradient(135deg,#f7fafc,#edf2f7);border:1px solid #cbd5e0;border-radius:10px;margin-bottom:1.5rem;padding:1.25rem}.game-error-info-text{color:#4a5568;font-size:.875rem;line-height:1.6;margin:0}.game-error-details{background:#f7fafc;border:1px solid #cbd5e0;border-radius:10px;margin-top:2rem;overflow:hidden;text-align:left}.game-error-details-summary{background:#edf2f7;color:#2d3748;cursor:pointer;font-size:.875rem;font-weight:700;letter-spacing:.05em;padding:1.25rem;text-transform:uppercase;transition:background .2s ease;-webkit-user-select:none;user-select:none}.game-error-details-summary:hover{background:#e2e8f0}.game-error-details-content{max-height:400px;overflow-y:auto;padding:1.25rem}.game-error-error-info h3{color:#2d3748;font-size:.875rem;font-weight:800;letter-spacing:.1em;margin-bottom:.75rem;margin-top:1.5rem;text-transform:uppercase}.game-error-error-info h3:first-child{margin-top:0}.game-error-error-info pre{background:#fff;border:2px solid #fc8181;border-radius:6px;box-shadow:inset 0 2px 4px #0000000f;color:#c53030;font-family:Monaco,Courier New,monospace;font-size:.75rem;line-height:1.6;overflow-wrap:break-word;overflow-x:auto;padding:1rem;white-space:pre-wrap}@media (max-width:640px){.game-error-boundary{padding:1rem}.game-error-content{padding:2rem 1.5rem}.game-error-icon{font-size:4rem}.game-error-title{font-size:1.5rem}.game-error-message{font-size:1rem}.game-error-actions{flex-direction:column;gap:.75rem}.game-error-button{padding:1rem 1.75rem;width:100%}.game-error-details-content{max-height:300px}.game-error-error-info pre{font-size:.625rem;padding:.75rem}}.bug-report-modal-overlay{align-items:center;background:#000000b3;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:10000}.bug-report-modal{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000004d;color:#333;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.bug-report-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:24px}.bug-report-header h2{color:#333;font-size:24px;margin:0}.close-btn{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:32px;height:32px;justify-content:center;padding:0;transition:color .2s;width:32px}.close-btn:hover{color:#333}.bug-report-form{padding:24px}.form-group{margin-bottom:20px}.form-group label{color:#555;display:block;font-weight:600;margin-bottom:8px}.required{color:#ff6b6b}.form-group textarea{background:#f9f9f9;border:2px solid #ddd;border-radius:8px;box-sizing:border-box;color:#333;font-family:inherit;font-size:14px;padding:12px;resize:vertical;transition:border-color .2s;width:100%}.form-group textarea:focus{background:#fff;border-color:#999;outline:none}.form-group textarea:disabled{cursor:not-allowed;opacity:.5}.screenshot-dropzone{background:#f9f9f9;border:2px dashed #ccc;border-radius:8px;padding:20px;text-align:center;transition:border-color .2s}.screenshot-dropzone:hover{background:#f5f5f5;border-color:#999}.screenshot-placeholder p{color:#666;font-size:14px;margin:0 0 12px}.screenshot-preview{position:relative}.screenshot-preview img{border-radius:4px;display:block;max-width:100%}.remove-screenshot{background:#ff6b6b;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;margin-top:12px;padding:8px 16px;transition:background .2s}.remove-screenshot:hover{background:#ff5252}.remove-screenshot:disabled{cursor:not-allowed;opacity:.5}.bug-report-details{border:1px solid #e0e0e0;border-radius:8px;margin:20px 0;overflow:hidden}.details-toggle{align-items:center;background:#f5f5f5;border:none;color:#555;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px;text-align:left;transition:background .2s;width:100%}.details-toggle:hover{background:#ececec}.details-content{background:#f9f9f9;border-top:1px solid #e0e0e0;padding:16px}.detail-item{color:#666;font-size:13px;margin-bottom:8px}.detail-item strong{color:#333;margin-right:8px}.bug-report-error{background:#ff6b6b1a;border:1px solid #ff6b6b4d;border-radius:8px;color:#ff6b6b;font-size:14px;margin-bottom:20px;padding:12px}.bug-report-rate-limit-status{background:#4caf501a;border:1px solid #4caf504d;border-radius:8px;color:#4caf50;font-size:13px;margin-bottom:20px;padding:10px 12px;text-align:center}.bug-report-actions{display:flex;gap:12px;justify-content:flex-end}.bug-report-btn{border:none;border-radius:8px;cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s}.bug-report-btn.primary{background:#333;color:#fff}.bug-report-btn.primary:hover:not(:disabled){background:#555;box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.bug-report-btn.primary:disabled{cursor:not-allowed;opacity:.5}.bug-report-btn.secondary{background:#f5f5f5;border:1px solid #ddd;color:#555}.bug-report-btn.secondary:hover:not(:disabled){background:#ececec;border-color:#ccc}.bug-report-btn.secondary:disabled{cursor:not-allowed;opacity:.5}.bug-report-success{padding:48px 24px;text-align:center}.success-icon{align-items:center;background:#4caf50;border-radius:50%;color:#fff;display:flex;font-size:48px;height:80px;justify-content:center;margin:0 auto 24px;width:80px}.bug-report-success h2{color:#333;font-size:28px;margin:0 0 16px}.bug-report-success p{color:#666;font-size:16px;margin:0 0 12px}.bug-report-success button{margin-top:24px}@media (max-width:768px){.bug-report-modal{max-height:95vh}.bug-report-header{padding:16px}.bug-report-header h2{font-size:20px}.bug-report-form{padding:16px}.bug-report-actions{flex-direction:column}.bug-report-btn{width:100%}.bug-report-success{padding:32px 16px}.success-icon{font-size:36px;height:64px;width:64px}}.bug-report-modal::-webkit-scrollbar{width:8px}.bug-report-modal::-webkit-scrollbar-track{background:#f5f5f5;border-radius:0 12px 12px 0}.bug-report-modal::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.bug-report-modal::-webkit-scrollbar-thumb:hover{background:#999}.bug-report-button{align-items:center;background:#f0f0f0;border:1px solid #ddd;border-radius:50%;bottom:20px;box-shadow:0 2px 8px #00000026;color:#333;cursor:pointer;display:flex;height:48px;justify-content:center;position:fixed;right:20px;transition:all .3s ease;width:48px;z-index:9999}.bug-report-button:hover{background:#e8e8e8;box-shadow:0 4px 12px #00000040;transform:scale(1.05)}.bug-report-button:active{transform:scale(.95)}.bug-report-button svg{height:18px;width:18px}@media (max-width:768px){.bug-report-button{bottom:16px;height:44px;right:16px;width:44px}.bug-report-button svg{height:16px;width:16px}}.App{min-height:100vh;overflow-y:auto;text-align:center}.modal-overlay{align-items:center;background-color:#000000b3;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.modal-content{background:#feac64;border-radius:8px;box-shadow:0 4px 20px #0000004d;max-width:400px;padding:30px;width:90%}.error-modal h2{color:#d32f2f;margin-bottom:15px;margin-top:0}.error-modal p{color:#333;line-height:1.5;margin-bottom:20px}.modal-button{background-color:#1976d2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:10px 30px}.modal-button:hover{background-color:#1565c0}.App-logo{height:40vmin;pointer-events:none}html{background-color:#feac64;font-family:Sartoshi,sans-serif;height:auto;overflow-y:auto}h1.title{color:#000}body{height:auto;margin:0;min-height:100vh;overflow-y:auto;padding-top:calc(80px + env(safe-area-inset-top))}body.gameplay-page,body.replay-page{padding-top:0}@font-face{font-family:Sartoshi;font-style:normal;font-weight:400;src:local("Sartoshi"),url(/static/media/SartoshiScript-Regular.f301343b9a0fb01f4d40.otf) format("opentype")}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}button{background-color:red;border:none;border-radius:5px;color:#fff;cursor:pointer;font-family:Sartoshi,sans-serif;font-size:14px;margin:5px;padding:5px 10px;transition:background-color .3s}button:disabled{background-color:grey;color:#000;cursor:not-allowed}.depress-button{border-radius:4px;box-shadow:2px 2px 5px #0003;cursor:pointer;transition:all .2s}.depress-button:active{box-shadow:none;transform:translateY(2px)}.App-link{color:#61dafb}
/*# sourceMappingURL=main.a0db2efb.css.map*/