body{margin:0;overflow:hidden;background:#005013;display:flex;justify-content:center;align-items:center;height:100vh;font-family:"Press Start 2P",cursive;-webkit-user-select:none;-ms-user-select:none;user-select:none}body:-webkit-full-screen,body:-moz-full-screen,body:fullscreen{background-color:#005013}#gameContainer{position:relative;width:100%;height:100%;display:flex;justify-content:center;align-items:center;background-color:transparent}#gameCanvas{background:transparent;position:absolute;cursor:crosshair;top:0;left:0;width:100%;height:100%;z-index:0}#gameContainer>div{position:absolute;color:#fff;font-family:"Press Start 2P",cursive;z-index:1}button{margin-top:10px;padding:10px 20px;font-size:20px;background-color:#444;color:#fff;border:none;cursor:pointer;font-family:"Press Start 2P",cursive;transition:background-color .3s,transform .1s}button:hover{background-color:#555;transform:scale(1.05)}.info-group{position:absolute;top:20px;left:20px;display:flex;gap:20px;z-index:1}.info-left-column{width:fit-content}.info-right-column{display:flex;flex-direction:column;gap:10px;justify-content:flex-start;padding-top:5px}.counter-icon{height:24px;margin-right:10px}#foundLetters{top:20px;left:50%;transform:translate(-50%);white-space:nowrap;display:flex;gap:5px}#foundLetters span{display:inline-flex;justify-content:center;align-items:center;width:30px;height:30px}.uncollected-letter{border:2px solid transparent;background-color:#8b00004d;border-radius:5px;color:#ffffff4d}.collected-letter{border:2px solid transparent;background-image:linear-gradient(to bottom,#c62828,#d32f2f);border-radius:5px;color:#fff}#timerContainer{position:absolute;top:60px;left:50%;transform:translate(-50%);font-family:"Press Start 2P",cursive;color:#fff;font-size:24px;text-shadow:2px 2px 4px rgba(0,0,0,.5);white-space:nowrap;text-align:center;min-width:120px}.timer-warning{color:#f44;animation:timerPulse 1s infinite}@keyframes timerPulse{0%{opacity:1;text-shadow:2px 2px 4px rgba(0,0,0,.5)}50%{opacity:.5;text-shadow:2px 2px 4px rgba(0,0,0,.5),0 0 20px #ff4444,0 0 30px #ff4444}to{opacity:1;text-shadow:2px 2px 4px rgba(0,0,0,.5)}}#snowballCounter{margin-top:0}#boostContainer{display:flex;flex-direction:column;align-items:flex-start}#boostTitle{font-size:16px;margin-bottom:5px}#fuelBarContainer{width:100px;height:10px;background-color:#0000004d;border:2px solid #fff;border-radius:5px;overflow:hidden;box-shadow:0 2px 4px #0000004d,inset 0 1px 3px #0003}#fuelBar{height:100%;width:0%;background-image:linear-gradient(to right,#00e3ff,#00c2d1);transition:width .1s linear;box-shadow:2px 0 4px #0003;position:relative;overflow:hidden}#fuelBar:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to bottom,#ffffff4d,#fff6 50%,#ffffff1a 51%,#ffffff1a)}.virtual-joystick{position:fixed;bottom:50px;left:50px;z-index:1000;display:none}.joystick-base{width:120px;height:120px;background:#ffffff1a;border:2px solid rgba(255,255,255,.3);border-radius:50%;position:relative;touch-action:none}.joystick-handle{width:50px;height:50px;background:#ffffff4d;border:2px solid rgba(255,255,255,.5);border-radius:50%;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);transition:opacity .3s}.touch-buttons{position:fixed;bottom:50px;right:50px;display:none;flex-direction:column;gap:15px;z-index:1000}.touch-button{width:80px;height:80px;background:#ffffff1a;border:2px solid rgba(255,255,255,.3);border-radius:50%;position:relative;touch-action:none;overflow:hidden}.touch-button:active{background:#fff3}.touch-button-fill{position:absolute;bottom:0;left:0;width:100%;height:0%;background:linear-gradient(to top,#00e3ff4d,#00c2d14d);transition:height .1s linear;pointer-events:none}.touch-button-label{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#fff;font-family:"Press Start 2P",cursive;font-size:12px;text-shadow:2px 2px 4px rgba(0,0,0,.5);pointer-events:none;z-index:1}.touch-button.shield-active{background:#00ffff4d}#cookieBanner{position:fixed;bottom:0;left:0;width:100%;background-color:#000000e6;padding:20px;text-align:center;color:#fff;z-index:1001;font-size:clamp(8px,2.5vw,12px);font-family:"Press Start 2P",cursive;box-shadow:0 -4px 6px #0000004d}#cookieBanner p{margin:0 auto 10px;max-width:800px;padding:0 15px;line-height:1.5}#cookieBanner a{color:#00e3ff;text-decoration:underline}.cookie-content{display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:800px;margin:0 auto;padding:0 15px;width:100%;box-sizing:border-box}#acceptCookies{background-image:linear-gradient(to bottom,#c62828,#d32f2f);border:2px solid #fff;border-radius:10px;color:#fff;font-size:clamp(12px,3vw,14px);padding:8px min(16px,3vw);text-shadow:2px 2px 4px #000;box-shadow:0 4px 6px #0000004d,0 0 10px #fff3 inset;transition:background-color .3s,transform .1s;margin:0 auto;cursor:pointer}#acceptCookies:hover{background-image:linear-gradient(to bottom,#d32f2f,#e53935);transform:scale(1.05);box-shadow:0 6px 8px #0006,0 0 12px #ffffff4d inset}.error-message{color:#f44;font-size:clamp(14px,3vw,16px);margin:20px 0 10px;font-family:"Press Start 2P",cursive}.error-details{color:#fff;font-size:clamp(10px,2.5vw,12px);font-family:"Press Start 2P",cursive;max-width:80%;margin:10px auto}#loadingError{margin-top:20px}#loadingError #retryButton{background-image:linear-gradient(to bottom,#c62828,#d32f2f);border:2px solid #fff;border-radius:10px;color:#fff;font-size:clamp(12px,3vw,16px);padding:10px 20px;margin-top:15px;font-family:"Press Start 2P",cursive;cursor:pointer;transition:transform .1s}#loadingError #retryButton:hover{transform:scale(1.05);background-image:linear-gradient(to bottom,#d32f2f,#e53935)}@media (max-width: 768px){#cookieBanner{font-size:10px;padding:15px 0}#cookieBanner p{margin-bottom:12px;padding:0 10px}.cookie-content{padding:0 10px}#acceptCookies{padding:8px 16px;font-size:12px}}@media (max-width: 480px){#cookieBanner{font-size:9px;padding:12px 0}.cookie-content{padding:0 8px}#acceptCookies{padding:6px 14px;font-size:11px}}@media (hover: none) and (pointer: coarse){.game-active .virtual-joystick{display:block}.game-active .touch-buttons{display:flex}.info-left-column,#boostContainer{display:none}.info-group{gap:15px}.info-right-column{flex-direction:row;align-items:center;gap:15px;padding-top:0;position:relative}.info-right-column:before{content:"LV " attr(data-level);color:#fff;font-family:"Press Start 2P",cursive;font-size:12px;text-shadow:2px 2px 4px #000;margin-right:5px}#snowballCounter,#shieldCounter{display:flex;align-items:center}.counter-icon{height:20px;margin-right:8px}}@media (hover: hover){#boostContainer{display:flex}.touch-only{display:none}}@media (hover: none) and (pointer: coarse){.game-active .touch-buttons{display:flex}.game-active{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.touch-button{min-width:80px;min-height:80px;padding:0;margin:0}}#gameOverScreen,#startScreen,#pauseScreen,#winScreen,#aboutScreen{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#000c;display:none;flex-direction:column;justify-content:center;align-items:center;color:#fff;font-size:32px;text-align:center;z-index:2;-webkit-user-select:none;-ms-user-select:none;user-select:none}#aboutScreen{background-color:#000000f2;-webkit-user-select:text;-ms-user-select:text;user-select:text}#gameOverScreen,#winScreen{background-color:#0000004d}.game-over-content,.win-content{position:relative;z-index:3}#gameOverRestartButton,#resumeButton,#winRestartButton{margin-top:20px;padding:15px 30px;font-size:24px;background-image:linear-gradient(to bottom,#c62828,#d32f2f);border:2px solid #fff;border-radius:10px;color:#fff;text-shadow:2px 2px 4px #000;box-shadow:0 4px 6px #0000004d,0 0 10px #fff3 inset;transition:background-color .3s,transform .1s}#gameOverRestartButton:hover,#resumeButton:hover,#winRestartButton:hover{background-image:linear-gradient(to bottom,#d32f2f,#e53935);transform:scale(1.05);box-shadow:0 6px 8px #0006,0 0 12px #ffffff4d inset}#backButton{margin-top:30px;padding:15px 30px;font-size:24px;background-image:none;background-color:transparent;border:2px solid #fff;border-radius:10px;color:#fff;text-shadow:2px 2px 4px #000;box-shadow:0 0 10px #ffffff1a inset;transition:background-color .3s,transform .1s;justify-self:center;grid-column:2;-webkit-user-select:none;-ms-user-select:none;user-select:none}#backButton:hover{background-color:#0000001a;transform:scale(1.05);box-shadow:0 2px 4px #0003,0 0 5px #ffffff1a inset}#startScreen{background-color:#0000}.start-screen-content{display:flex;flex-direction:column;align-items:center;position:relative;max-width:90%;margin:0 auto;padding:20px}.header-area{display:flex;align-items:center;gap:30px;margin-bottom:30px;flex-wrap:wrap;justify-content:center}.title-instruction-area{display:flex;flex-direction:column;align-items:center;text-align:center}.game-title{font-family:"Press Start 2P",cursive;font-size:clamp(24px,5vw,40px);margin:0;-webkit-font-smoothing:none;font-smooth:never;text-rendering:geometricPrecision;image-rendering:pixelated;text-shadow:2px 2px 4px #000;white-space:pre-line;text-align:center}.collect-instruction{font-size:clamp(12px,3vw,14px);margin-top:20px;margin-bottom:10px;text-align:center;text-shadow:2px 2px 4px #000}.santa-image{width:152px;height:200px}.instructions{font-size:min(1.1vw,14px);background-color:#0003;border-radius:10px;text-align:left;text-shadow:2px 2px 4px #000;line-height:1.6;box-sizing:border-box;width:100%;margin-bottom:40px;padding:20px;display:flex;flex-direction:column;align-items:center;position:relative}.instruction-table{display:flex;width:100%;justify-content:center;max-width:400px;gap:20px;padding:15px;border-radius:10px;margin-top:10px}.instruction-col{display:flex;flex-direction:column;gap:12px}.instruction-col div{line-height:1.4;white-space:nowrap;text-shadow:2px 2px 4px rgba(0,0,0,.5);color:#fff}#startButton{background-image:linear-gradient(to bottom,#c62828,#d32f2f);border:2px solid #fff;border-radius:10px;color:#fff;font-size:clamp(18px,4vw,24px);padding:15px min(30px,5vw);text-shadow:2px 2px 4px #000;box-shadow:0 4px 6px #0000004d,0 0 10px #fff3 inset;transition:background-color .3s,transform .1s;margin-bottom:20px;margin-top:30px}#startButton:hover{background-image:linear-gradient(to bottom,#d32f2f,#e53935);transform:scale(1.05);box-shadow:0 6px 8px #0006,0 0 12px #ffffff4d inset}.monster-image{position:absolute;width:100px;bottom:-60px;animation-duration:3s;animation-timing-function:ease-in-out;animation-iteration-count:infinite}.monster-left{left:20px;animation-name:float}.flipped{transform:scaleX(-1)}.about-content{display:grid;grid-template-columns:minmax(100px,150px) 1fr;gap:20px;max-width:min(90%,700px);margin:0 auto;padding:20px;align-items:start}.about-content.minimal{max-width:min(90%,600px)}.vahid-image-wrapper{position:relative;width:100%;aspect-ratio:1}.vahid-image{width:100%;height:100%;object-fit:cover;margin:0;z-index:1}.vahid-image-wrapper:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(to bottom,rgba(255,255,255,.1) 1px,transparent 1px);background-size:100% 2px;pointer-events:none}.about-text{display:flex;flex-direction:column;flex:1 1 auto;gap:12px}.developer-name{font-size:clamp(16px,4vw,20px);margin-bottom:0;display:flex;align-items:center;gap:5px;justify-content:flex-start}.developer-name a{margin-left:auto}.developer-job{font-size:clamp(12px,3vw,14px);text-align:left}.developer-job span{display:block;margin-bottom:10px}.developer-description{margin-top:20px;font-size:clamp(10px,2.5vw,12px);text-align:left;max-width:600px;line-height:1.6;align-self:flex-start}.company-link{color:#fff;font-size:clamp(12px,3vw,14px)}.linkedin-icon{width:24px;height:24px;vertical-align:middle;margin-bottom:2px}.game-footer{position:absolute;bottom:10px;left:10px;display:flex;flex-direction:column;align-items:flex-end;z-index:2;font-size:clamp(8px,2.5vw,12px);color:#fff;text-shadow:2px 2px 4px #000}.game-footer a{color:#fff;text-decoration:none;cursor:pointer}.copyright-notice{font-size:12px;margin-top:5px;opacity:.7;text-align:right;font-family:"Press Start 2P",cursive}#loadingScreen{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#000000e6;display:none;justify-content:center;align-items:center;z-index:1000;font-family:"Press Start 2P",cursive;color:#fff}.loading-content{text-align:center}.loading-content h2{margin-bottom:20px;font-size:clamp(18px,4vw,24px)}.progress-container{width:min(300px,80vw);height:20px;background-color:#444;border:2px solid #fff;border-radius:10px;overflow:hidden;margin:10px auto}.progress-bar{width:0%;height:100%;background-image:linear-gradient(to right,#c62828,#d32f2f);transition:width .3s ease}.progress-text{font-size:clamp(12px,3vw,16px);margin-top:10px}#levelIndicator{display:flex;flex-direction:column;align-items:center;margin-bottom:10px;background:#0006;padding:15px;border-radius:8px;border:2px solid #fff;position:relative;overflow:hidden}#levelTitle{font-size:14px;margin-bottom:8px;text-shadow:2px 2px 4px #000;color:#fff}#levelDisplay{position:relative;width:60px;height:60px;display:flex;justify-content:center;align-items:center}#levelNumber{font-size:32px;font-weight:700;color:#00e3ff;text-shadow:0 0 10px #00e3ff;z-index:2}#levelAnimation{position:absolute;top:0;left:0;right:0;bottom:0;border-radius:50%;background:radial-gradient(circle,#00e3ff33,#00e3ff00 70%)}@keyframes levelUp{0%{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.5}to{transform:scale(2);opacity:0}}@keyframes numberPulse{0%{transform:scale(1);text-shadow:0 0 10px #00e3ff}50%{transform:scale(1.4);text-shadow:0 0 20px #00e3ff,0 0 40px #00e3ff}to{transform:scale(1);text-shadow:0 0 10px #00e3ff}}.level-change #levelNumber{animation:numberPulse .5s ease-out}.level-change #levelAnimation:before,.level-change #levelAnimation:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:50%;background:radial-gradient(circle,#00e3ff33,#00e3ff00 70%);animation:levelUp .5s ease-out}.level-change #levelAnimation:after{animation-delay:.15s}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.5}}@keyframes float{0%,to{transform:translateY(0) scaleX(-1)}50%{transform:translateY(-10px) scaleX(-1)}}@keyframes float-normal{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media (min-width: 769px){#startButton{margin-top:50px;margin-bottom:40px}}@media (max-width: 768px){.header-area{flex-direction:column;gap:20px}.title-instruction-area{order:2}.santa-image{order:1;margin-bottom:20px}.about-content{grid-template-columns:1fr;text-align:center}.vahid-image-wrapper{max-width:150px;margin:0 auto}.instructions{padding:15px;font-size:min(2.8vw,14px);margin-bottom:70px}.instruction-table{display:grid;grid-template-columns:1fr 1fr;gap:10px}.instruction-col{padding-right:0}#backButton{grid-column:1}.game-footer{right:0;left:0;align-items:center;bottom:20px;padding:10px}.copyright-notice{text-align:center;padding:0 10px}.monster-image{bottom:-70px;width:80px}}@media (max-width: 480px){.start-screen-content{padding:10px}.game-title{font-size:28px}.collect-instruction{font-size:min(3vw,12px)}.instructions{font-size:min(3vw,10px);padding:15px;margin-bottom:70px}.monster-image{bottom:-70px;width:70px}.santa-image{width:120px;height:158px}.developer-description{text-align:left}}@media screen and (max-height: 700px){.start-screen-content{padding:10px}.header-area{margin-bottom:20px;gap:15px}.game-title{font-size:24px}.collect-instruction{margin-top:15px;margin-bottom:5px}#startButton{margin-top:20px;margin-bottom:15px;padding:10px 20px}.santa-image{width:100px;height:132px}.instructions{margin-bottom:70px;padding:15px}.monster-image{width:60px;bottom:-65px}.game-footer{bottom:10px;padding:5px}}@media screen and (max-height: 667px){.game-title{font-size:22px}.collect-instruction{margin-top:10px;font-size:10px}#startButton{font-size:16px;padding:8px 16px;margin-top:15px;margin-bottom:10px}.santa-image{width:90px;height:119px}.instructions{margin-bottom:70px;padding:12px}.monster-image{width:50px;bottom:-65px}.copyright-notice{font-size:10px;margin-top:3px}.game-footer{bottom:10px;padding:5px}}@media screen and (max-height: 568px){.start-screen-content{padding:5px}.header-area{margin-bottom:15px;gap:10px}.game-title{font-size:20px}.santa-image{width:80px;height:106px}.collect-instruction{margin-top:8px;font-size:9px}.instructions{margin-bottom:60px;padding:10px;font-size:9px}#startButton{margin-top:10px;margin-bottom:8px}.game-footer{bottom:5px;padding:5px}.copyright-notice{font-size:8px}}@media (hover: hover) and (pointer: fine){.desktop-only{display:flex}.touch-only{display:none}}@media (hover: none),(pointer: coarse){.desktop-only{display:none}.touch-only{display:flex}}
