html{overflow-x:clip}body{background-color:#f0f0f0;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:100%;min-height:100vh;margin:0;padding:0;display:flex;overflow-x:clip}#game-container{flex-direction:column;display:flex;position:relative}#level-display{color:#333;text-align:center;text-shadow:2px 2px #aaa;background-color:#ffffffe6;border:2px solid #333;border-radius:8px;margin-bottom:15px;padding:10px 20px;font-family:"Press Start 2P",cursive;font-size:18px;display:inline-block}#welcome-screen{justify-content:center;align-items:center;margin-top:20px;margin-left:auto;margin-right:auto;display:flex}#instructions-container{text-align:center;background-color:#fffffff2;border:3px solid #333;border-radius:15px;max-width:500px;padding:40px;box-shadow:0 5px 20px #0003}#instructions-container h2{color:#333;text-shadow:2px 2px #aaa;margin-bottom:30px;font-family:"Press Start 2P",cursive;font-size:24px}#instructions-content{margin-bottom:30px}#instructions-content p{color:#555;text-align:left;margin:15px 0;font-family:"Press Start 2P",cursive;font-size:12px;line-height:1.8}.play-button{cursor:pointer;color:#fff;text-shadow:1px 1px #2e7d32;background-color:#4caf50;border:3px solid #333;border-radius:10px;padding:15px 40px;font-family:"Press Start 2P",cursive;font-size:18px;transition:all .1s;box-shadow:0 4px #2e7d32,0 6px 10px #0000004d}.play-button:hover{background-color:#45a049;transform:translateY(2px);box-shadow:0 2px #2e7d32,0 4px 8px #0000004d}.play-button:active{transform:translateY(4px);box-shadow:0 0 #2e7d32,0 2px 5px #0000004d}#game-title-container{justify-content:center;align-items:center;margin:20px auto;display:flex}#game-title{text-align:center;color:#333;text-shadow:3px 3px #aaa;letter-spacing:2px;margin-bottom:20px;font-family:"Press Start 2P",cursive;font-size:36px}#game-board-fit-outer{display:contents}#game-board-viewport{box-sizing:content-box;background-color:#e8e8e8;border:2px solid #333;flex-shrink:0;align-self:center;margin:0 auto;overflow:hidden}#game-board-content{transform-origin:0 0;touch-action:none;cursor:grab;width:max-content;display:block}#game-board-content:active{cursor:grabbing}#gameCanvas{cursor:inherit;background-color:#fff;display:block}#gameOver{text-align:center;background-color:#fffffff2;border:3px solid #333;border-radius:15px;max-width:500px;padding:40px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 5px 20px #0003}#gameOver h2{color:#d32f2f;text-shadow:2px 2px #aaa;margin-bottom:25px;font-family:"Press Start 2P",cursive;font-size:20px}#gameOver p{color:#555;margin-bottom:30px;font-family:"Press Start 2P",cursive;font-size:12px;line-height:1.8}#levelComplete{text-align:center;background-color:#4caf50f2;border:3px solid #2e7d32;border-radius:10px;padding:30px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 20px #0006}#levelComplete h2{color:#fff;text-shadow:2px 2px #2e7d32;margin-bottom:15px;font-family:"Press Start 2P",cursive}#levelComplete p{color:#fff;margin-bottom:20px;font-family:"Press Start 2P",cursive;font-size:12px}#gameWin{text-align:center;background-color:#ffd700f2;border:4px solid #ff8c00;border-radius:15px;padding:40px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 30px #ffd70099}#gameWin h2{color:#ff8c00;text-shadow:2px 2px #fff;margin-bottom:20px;font-family:"Press Start 2P",cursive;font-size:20px}#gameWin p{color:#ff8c00;margin-bottom:25px;font-family:"Press Start 2P",cursive;font-size:12px;line-height:1.5}.hidden{display:none}#playAgain{cursor:pointer;color:#fff;text-shadow:1px 1px #2e7d32;background-color:#4caf50;border:3px solid #333;border-radius:10px;padding:15px 40px;font-family:"Press Start 2P",cursive;font-size:16px;transition:all .1s;box-shadow:0 4px #2e7d32,0 6px 10px #0000004d}#playAgain:hover{background-color:#45a049;transform:translateY(2px);box-shadow:0 2px #2e7d32,0 4px 8px #0000004d}#playAgain:active{transform:translateY(4px);box-shadow:0 0 #2e7d32,0 2px 5px #0000004d}#startOver{cursor:pointer;color:#fff;text-shadow:1px 1px #c62828;background-color:#f44336;border:3px solid #333;border-radius:10px;margin-top:10px;padding:15px 40px;font-family:"Press Start 2P",cursive;font-size:16px;transition:all .1s;box-shadow:0 4px #c62828,0 6px 10px #0000004d}#startOver:hover{background-color:#e53935;transform:translateY(2px);box-shadow:0 2px #c62828,0 4px 8px #0000004d}#startOver:active{transform:translateY(4px);box-shadow:0 0 #c62828,0 2px 5px #0000004d}#nextLevel{cursor:pointer;color:#fff;text-shadow:1px 1px #1b5e20;background-color:#2e7d32;border:2px solid #1b5e20;border-radius:8px;padding:12px 25px;font-family:"Press Start 2P",cursive;font-size:14px;transition:all .1s;box-shadow:0 3px #1b5e20,0 5px 8px #0000004d}#nextLevel:hover{background-color:#388e3c;transform:translateY(1px);box-shadow:0 2px #1b5e20,0 4px 6px #0000004d}#nextLevel:active{transform:translateY(3px);box-shadow:0 0 #1b5e20,0 2px 4px #0000004d}#playAgainWin{cursor:pointer;color:#fff;text-shadow:1px 1px #f60;background-color:#ff8c00;border:3px solid #f60;border-radius:10px;padding:15px 30px;font-family:"Press Start 2P",cursive;font-size:16px;transition:all .1s;box-shadow:0 4px #f60,0 6px 10px #0000004d}#playAgainWin:hover{background-color:#ff9500;transform:translateY(2px);box-shadow:0 2px #f60,0 4px 8px #0000004d}#playAgainWin:active{transform:translateY(4px);box-shadow:0 0 #f60,0 2px 5px #0000004d}#mobile-warning{color:#fff;z-index:1000;background-color:#ff9800;border-radius:8px;justify-content:space-between;align-items:center;width:80%;max-width:400px;padding:15px;font-family:"Press Start 2P",cursive;font-size:10px;font-weight:700;display:none;position:fixed;top:10px;left:50%;transform:translate(-50%);box-shadow:0 2px 5px #0003}#mobile-warning span{text-align:center;flex:1}.close-btn{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;margin-left:10px;padding:0;font-size:24px;font-weight:700;line-height:1;transition:background-color .3s;display:flex}.close-btn:hover{background-color:#fff3}.close-btn:active{background-color:#ffffff4d}@media screen and (width<=900px){html{overscroll-behavior-x:none;overflow-x:hidden}body{overscroll-behavior-x:none;justify-content:center;align-items:flex-start;width:100%;max-width:100%;padding-top:50px;padding-bottom:20px;padding-left:0;overflow-x:hidden}#game-title-container,#welcome-screen,#game-container,#footer{box-sizing:border-box;width:100%;max-width:100%}#game-container{min-width:0;margin-top:20px;margin-left:auto;margin-right:auto;padding:0;container:game/inline-size}#game-title-container{min-width:0;padding:0 8px}#mobile-warning{box-sizing:border-box;width:auto;max-width:400px;margin-left:auto;margin-right:auto;display:flex;left:8px;right:8px;transform:none}#game-board-fit-outer{--board-fit:min(1, calc(100% / var(--board-w,604px)), calc((100vh - 120px) / var(--board-h,404px)));width:calc(var(--board-w,604px) * var(--board-fit));height:calc(var(--board-h,404px) * var(--board-fit));flex-shrink:1;align-self:center;min-width:0;max-width:100%;margin:0 auto;display:block;overflow:hidden}@supports (width:1cqw){#game-board-fit-outer{--board-fit:min(1, calc(100cqw / var(--board-w,604px)), calc((100vh - 120px) / var(--board-h,404px)))}}#game-board-viewport{transform-origin:0 0;max-width:none;transform:scale(var(--board-fit))}#gameCanvas{max-width:none;height:auto;display:block}#level-display{box-sizing:border-box;max-width:100%;margin-bottom:10px;margin-left:10px;margin-right:10px;padding:8px 16px;font-size:14px}#gameOver,#levelComplete,#gameWin{box-sizing:border-box;max-width:min(100% - 20px,34rem);padding:20px}#gameOver h2,#levelComplete h2,#gameWin h2{font-size:16px}#gameOver p,#levelComplete p,#gameWin p{font-size:10px}#instructions-container{box-sizing:border-box;max-width:min(100% - 20px,34rem);padding:20px}#instructions-container h2{font-size:18px}#instructions-content p{font-size:10px;line-height:1.6}#game-title{margin-bottom:10px;font-size:24px}}#footer{text-align:center;background-color:#ffffffe6;border:2px solid #333;border-radius:8px;margin-top:40px;margin-left:auto;margin-right:auto;padding:20px;box-shadow:0 2px 10px #0000001a}#footer p{color:#555;margin:0;font-family:"Press Start 2P",cursive;font-size:10px;line-height:1.5}#footer a{color:#333;text-decoration:none;transition:color .3s}#footer a:hover{color:#4caf50;text-shadow:1px 1px #aaa}@media screen and (width<=900px){#footer{box-sizing:border-box;margin-top:20px;padding:15px}#footer p{font-size:8px}}
