@import url(https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;700;900&family=Press+Start+2P&display=swap);*{box-sizing:border-box;padding:0}*,body{margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#4facfe;color:#333;font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;overflow:hidden}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#0000001a}::-webkit-scrollbar-thumb{background:#ffd70099;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffd700cc}.App,.mario-game{height:100vh;overflow:hidden;position:relative;width:100vw}.mario-game{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;-webkit-backface-visibility:hidden;backface-visibility:hidden;background:linear-gradient(180deg,#4facfe 0,#5c94fc);image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;perspective:1000px;transform:translateZ(0)}.mario-game,.mario-game img{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.mario-game img{-webkit-user-drag:none}.mario-game:before{animation:skyGlow 8s ease-in-out infinite alternate;background:radial-gradient(ellipse at top,#ffffff1a 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}@keyframes skyGlow{0%{opacity:.3;transform:scale(1)}to{opacity:.6;transform:scale(1.1)}}.alternative-link{background:#141414cc;border:1px solid #ffd70080;border-radius:30px;box-shadow:inset -2px -2px 0 #e6c200,inset 2px 2px 0 #ffe44d,0 0 0 2px #000,0 4px 8px #00000080,0 0 15px #ffd70033;color:gold;cursor:pointer;display:inline-block;font-family:Courier New,monospace;font-size:14px;font-weight:900;image-rendering:pixelated;letter-spacing:1.5px;max-width:none;overflow:hidden;padding:12px 24px;pointer-events:auto;position:relative;text-align:center;text-decoration:none;text-transform:uppercase;transition:all .2s ease;white-space:nowrap;width:auto}.alternative-link.desktop-only{bottom:30px;display:inline-block;left:90px;position:fixed;z-index:250}.alternative-link.mobile-only{bottom:auto;display:none;font-size:12px;left:auto;margin-top:5px;padding:8px 16px;position:relative;top:auto;transform:none;z-index:auto}.alternative-link:before{background:linear-gradient(90deg,#0000,#ffd7004d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.alternative-link:hover:before{left:100%}.alternative-link:hover{background:linear-gradient(135deg,#2a2a2a,#1a1a1a);box-shadow:inset -2px -2px 0 #c90,inset 2px 2px 0 #fc0,0 0 0 2px #000,0 8px 16px #000000b3,0 0 25px #ffd70066;text-shadow:0 0 10px #ffd700cc;transform:translateY(-2px)}.alternative-link:active{background:linear-gradient(135deg,#0a0a0a,#000);box-shadow:inset 2px 2px 0 #c90,inset -2px -2px 0 #fc0,0 0 0 2px #000,0 2px 4px #00000080;transform:translateY(0)}.ui-layer-top{align-items:flex-end;display:flex;flex-direction:column;gap:15px;justify-content:center;left:0;padding-right:20px;padding-top:15px;pointer-events:none;position:fixed;top:0;transition:opacity .3s ease;width:100%;z-index:200}.ui-layer-top .welcome-text{align-self:auto!important;margin:0!important;position:fixed!important}.ui-layer-top.hidden{opacity:0;pointer-events:none}.score-display{animation:fadeInDown .8s ease-out;margin-bottom:5px;pointer-events:none;position:relative;text-align:center}.score-text{animation:scorePulse 2s ease-in-out infinite;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#14141499;border:2px solid #ffd70080;border-radius:16px;box-shadow:0 8px 32px 0 #1f26875e;color:gold;font-family:Courier New,monospace;font-size:26px;font-weight:900;image-rendering:auto;letter-spacing:3px;padding:8px 18px;position:relative;text-shadow:4px 4px 0 #000,-2px -2px 0 #000,2px -2px 0 #000,-2px 2px 0 #000,0 0 15px #ffd700cc,0 0 30px #ffd70066;text-transform:uppercase;white-space:nowrap}@keyframes scorePulse{0%,to{box-shadow:inset -3px -3px 0 #e6c200,inset 3px 3px 0 #ffe44d,0 0 0 2px #000,0 6px 12px #0009,0 0 20px #ffd7004d;transform:scale(1)}50%{box-shadow:inset -3px -3px 0 #e6c200,inset 3px 3px 0 #ffe44d,0 0 0 2px #000,0 8px 16px #000000b3,0 0 30px #ffd70080;transform:scale(1.02)}}.welcome-text{left:50%;margin:0!important;max-width:90%;padding:0!important;pointer-events:none;position:fixed;text-align:center;top:35%;transform:translate(-50%,-50%);transition:transform 2s cubic-bezier(.33,0,.2,1),left 2s cubic-bezier(.33,0,.2,1),top 2s cubic-bezier(.33,0,.2,1),opacity .8s ease-out;width:auto;z-index:200}.welcome-text.game-started{left:4%!important;max-width:520px;opacity:.85;position:fixed;text-align:center;top:13%!important;transform:translate(0)!important;width:520px}.mario-welcome{word-wrap:break-word;animation:welcomePulse 3s ease-in-out infinite,textGlow 3s ease-in-out infinite;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:linear-gradient(135deg,#ffffff26,#ffffff0d);border:2px solid #ffd70066;border-radius:24px;box-shadow:0 8px 32px 0 #1f268740,0 0 40px #ffd70033,inset 0 1px 0 #ffffff4d;color:gold;display:block;font-family:Courier New,monospace;font-size:48px;font-weight:900;image-rendering:pixelated;letter-spacing:4px;line-height:1.2;margin:0 0 15px;padding:30px 40px;position:relative;text-align:center;text-shadow:4px 4px 0 #000c,-2px -2px 0 #000c,2px -2px 0 #000c,-2px 2px 0 #000c,0 0 20px gold,0 0 40px #ffd70099,0 0 60px #ffd7004d;text-transform:uppercase;white-space:normal}.welcome-text.game-started .mario-welcome{font-size:46px;letter-spacing:3px;line-height:1.15;margin:0;padding:32px 34px;text-align:center}.mario-subtitle{animation:subtitleBlink 2s ease-in-out infinite;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);background:#0000004d;border:1px solid #fff3;border-radius:12px;color:#fff;font-family:Courier New,monospace;font-size:18px;font-weight:700;letter-spacing:2px;margin:0;padding:10px 20px;position:relative;text-align:center;text-shadow:2px 2px 0 #000c,0 0 10px #ffffff80;transition:opacity .5s ease}.welcome-text.game-started .mario-subtitle{display:none}@keyframes welcomePulse{0%,to{box-shadow:0 8px 32px 0 #1f268740,0 0 40px #ffd70033,inset 0 1px 0 #ffffff4d;opacity:1;transform:scale(1)}50%{box-shadow:0 12px 40px 0 #1f268759,0 0 60px #ffd70066,inset 0 1px 0 #fff6;opacity:1;transform:scale(1.02)}}@keyframes textGlow{0%,to{text-shadow:4px 4px 0 #000c,-2px -2px 0 #000c,2px -2px 0 #000c,-2px 2px 0 #000c,0 0 20px gold,0 0 40px #ffd70099,0 0 60px #ffd7004d}50%{text-shadow:4px 4px 0 #000c,-2px -2px 0 #000c,2px -2px 0 #000c,-2px 2px 0 #000c,0 0 30px gold,0 0 60px #ffd700cc,0 0 90px #ffd70080}}@keyframes subtitleBlink{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.98)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}.sky{-webkit-backface-visibility:hidden;backface-visibility:hidden;background:linear-gradient(180deg,#4facfe 0,#5c94fc);height:100%;left:0;overflow:hidden;top:0;transform:translateZ(0);width:400vw}.cloud,.sky{position:absolute;will-change:transform}.cloud{animation:float 25s linear infinite;height:60px;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;opacity:.9;width:120px}@keyframes float{0%{transform:translateX(-100px)}to{transform:translateX(calc(400vw + 100px))}}.ground{-ms-interpolation-mode:nearest-neighbor;-webkit-backface-visibility:hidden;backface-visibility:hidden;bottom:0;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;left:0;overflow:hidden;transform:translateZ(0);will-change:transform}.ground,.pipe-wrapper{position:absolute}.pipe{display:block;height:140px;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;object-fit:contain;width:140px}.grass-wrapper{position:absolute}.grass{display:block;height:100px;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;object-fit:contain;width:260px}.thanks-wrapper{position:absolute}.thanks{height:120px;width:260px}.grass2,.thanks{display:block;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;object-fit:contain}.grass2{height:60px;width:156px}.end-wall{-webkit-backface-visibility:hidden;backface-visibility:hidden;background-image:repeating-linear-gradient(90deg,#0000,#0000 7px,#00000026 0,#00000026 8px),repeating-linear-gradient(0deg,#0000,#0000 7px,#0000001a 0,#0000001a 8px);image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;position:absolute;transform:translateZ(0);will-change:transform}.sound-toggle{align-items:center;background:linear-gradient(135deg,#1a1a1a,#000);border:2px solid gold;border-radius:50%;bottom:auto;box-shadow:inset -3px -3px 0 #e6c200,inset 3px 3px 0 #ffe44d,0 0 0 2px #000,0 4px 8px #00000080,0 0 15px #ffd70033;cursor:pointer;display:flex;font-family:Courier New,monospace;font-size:24px;height:50px;image-rendering:pixelated;justify-content:center;left:20px;min-height:50px;min-width:50px;overflow:visible;position:fixed;right:auto;top:20px;transition:all .2s ease;width:50px;z-index:1001}.sound-toggle:before{background:#ffd7004d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease;width:0}.sound-toggle:hover:before{height:100%;width:100%}.sound-toggle:hover{background:linear-gradient(135deg,#2a2a2a,#1a1a1a);box-shadow:inset -3px -3px 0 #c90,inset 3px 3px 0 #fc0,0 0 0 2px #000,0 8px 16px #000000b3,0 0 25px #ffd70066;filter:drop-shadow(0 0 8px rgba(255,215,0,.6));transform:translateY(-2px) scale(1.05)}.sound-toggle:active{background:linear-gradient(135deg,#0a0a0a,#000);box-shadow:inset 3px 3px 0 #c90,inset -3px -3px 0 #fc0,0 0 0 2px #000,0 2px 4px #00000080;transform:translateY(0) scale(1)}.instructions-overlay{align-items:flex-start;animation:fadeInLeft 1.2s ease-out .3s both;display:flex;justify-content:flex-start;left:20px;max-width:300px;pointer-events:none;position:fixed;top:20.5%;transform:translateY(-50%);z-index:100}.instructions{backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:linear-gradient(135deg,#000000d9,#141414d9);border:2px solid #ffd70080;border-radius:20px;box-shadow:0 8px 32px 0 #00000080,0 0 30px #ffd70033,inset 0 1px 0 #ffffff1a;color:gold;font-family:Outfit,sans-serif;font-size:14px;image-rendering:auto;max-width:280px;padding:24px;pointer-events:auto;position:relative;transition:transform .3s ease,box-shadow .3s ease}.instructions:hover{box-shadow:0 12px 40px 0 #0009,0 0 40px #ffd7004d,inset 0 1px 0 #fff3;transform:translateY(-2px)}.instructions:before{background:linear-gradient(180deg,#ffd7000d,#0000);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:0}.instructions>*{position:relative;z-index:1}.instructions h3{align-items:center;color:gold;display:flex;font-size:20px;font-weight:900;gap:8px;justify-content:center;letter-spacing:2px;margin-bottom:16px;text-align:center;text-shadow:2px 2px 0 #000c,-1px -1px 0 #000c,1px -1px 0 #000c,-1px 1px 0 #000c,0 0 15px #ffd70099;text-transform:uppercase}.instructions p{color:#fff;font-size:13px;font-weight:600;line-height:1.6;margin:10px 0;text-shadow:1px 1px 2px #000c,0 0 5px #fff3;transition:color .3s ease}.instructions p:hover{color:gold;text-shadow:1px 1px 2px #000c,0 0 10px #ffd70080}.arrow-indicators{pointer-events:auto;position:absolute;z-index:400}.arrow-key{animation:pulse 2s infinite;color:gold;filter:drop-shadow(0 0 5px rgba(255,215,0,.5));font-size:48px;font-weight:700;text-shadow:3px 3px 0 #000,-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000,0 0 10px #ffd70099,0 0 20px #ffd7004d}.mobile-jump-arrow{-webkit-tap-highlight-color:transparent;cursor:pointer;pointer-events:auto!important;touch-action:manipulation}.mobile-jump-arrow:active{opacity:.8;transform:scale(.9)}@keyframes pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.mario{-webkit-backface-visibility:hidden;backface-visibility:hidden;position:absolute;transform:translateZ(0);transition:none;will-change:transform,bottom;z-index:250}.mario,.mario-sprite{image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.mario-sprite{-ms-interpolation-mode:nearest-neighbor;display:block;height:100%;object-fit:contain;width:100%}.mario.facing-left{transform:scaleX(-1)}.mario.facing-left.facing-right{transform:scaleX(1)}.box-label{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:linear-gradient(135deg,#000000f2,#141414f2);border:3px solid gold;border-radius:0;bottom:-25px;box-shadow:inset -2px -2px 0 #e6c200,inset 2px 2px 0 #ffe44d,0 0 0 1px #000,0 4px 8px #0009,0 0 15px #ffd7004d;box-sizing:border-box;-webkit-clip-path:none;clip-path:none;color:#fff;display:block;flex-shrink:0;font-family:Courier New,monospace;font-size:18px;font-weight:900;image-rendering:pixelated;left:50%;letter-spacing:1px;line-height:1.2;margin-top:-8px;min-width:-webkit-max-content;min-width:max-content;overflow:visible;padding:6px 10px;position:absolute;text-align:center;text-overflow:clip;text-shadow:3px 3px 0 #000,-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000,0 0 8px #ffffff80;text-transform:uppercase;transform:translateX(-50%);white-space:nowrap;width:auto;z-index:2}.mario-box-wrapper{position:absolute;z-index:50}.mario-box,.mario-box-wrapper{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0);will-change:transform}.mario-box{aspect-ratio:1/1;background:#0000;border:none;box-shadow:none;box-sizing:border-box;cursor:pointer;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;object-fit:contain;overflow:visible;position:relative}.mario-box.broken{animation:breakBox .5s ease-out forwards;overflow:hidden;pointer-events:none}@keyframes breakBox{0%{filter:brightness(1) blur(0);opacity:1;transform:scale(1) translateY(0) rotate(0deg)}15%{filter:brightness(2) blur(2px);opacity:1;transform:scale(1.5) translateY(-15px) rotate(-15deg)}30%{filter:brightness(1.8) blur(3px);opacity:.9;transform:scale(1.2) translateY(-5px) rotate(20deg)}50%{filter:brightness(1.2) blur(5px);opacity:.5;transform:scale(.6) translateY(10px) rotate(-30deg)}70%{filter:brightness(.6) blur(8px);opacity:.2;transform:scale(.3) translateY(25px) rotate(45deg)}to{filter:brightness(0) blur(10px);opacity:0;transform:scale(0) translateY(50px) rotate(60deg)}}.mario-box.broken:before{animation:shockwave .5s ease-out forwards;background:radial-gradient(circle,#ffd700cc 0,#ffa50099 30%,#0000 70%);border-radius:50%;content:"";height:0;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:0;z-index:1}@keyframes shockwave{0%{height:0;opacity:1;width:0}50%{height:100%;opacity:.8;width:100%}to{height:100%;opacity:0;width:100%}}.box-particles{height:100%;left:0;overflow:hidden;pointer-events:none;position:absolute;top:0;width:100%;z-index:10}.box-particles:after,.box-particles:before{animation:particleBlast .8s ease-out forwards;background:gold;border-radius:50%;box-shadow:-15px -10px 0 orange,15px -10px 0 gold,-20px 5px 0 #ff8c00,20px 5px 0 orange,-10px 15px 0 gold,10px 15px 0 #ff8c00,-25px -5px 0 orange,25px -5px 0 gold,-5px -20px 0 #ff8c00,5px -20px 0 orange,-15px 20px 0 gold,15px 20px 0 #ff8c00;content:"";height:6px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:6px}.box-particles:after{animation-delay:.1s;box-shadow:-12px -8px 0 #ff8c00,12px -8px 0 gold,-18px 8px 0 orange,18px 8px 0 #ff8c00,-8px 18px 0 gold,8px 18px 0 orange,-22px -3px 0 gold,22px -3px 0 #ff8c00,-3px -18px 0 orange,3px -18px 0 gold,-12px 22px 0 #ff8c00,12px 22px 0 orange}@keyframes particleBlast{0%{opacity:1;transform:translate(-50%,-50%) scale(0) rotate(0deg)}20%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) scale(2.5) rotate(2turn)}}.mario-box.broken .box-particles{animation:particlesExplode .8s ease-out forwards;background:radial-gradient(circle at 20% 20%,gold 6px,#0000 0),radial-gradient(circle at 80% 20%,orange 6px,#0000 0),radial-gradient(circle at 20% 80%,gold 6px,#0000 0),radial-gradient(circle at 80% 80%,orange 6px,#0000 0),radial-gradient(circle at 50% 50%,gold 8px,#0000 0),radial-gradient(circle at 10% 50%,#ff8c00 5px,#0000 0),radial-gradient(circle at 90% 50%,gold 5px,#0000 0),radial-gradient(circle at 50% 10%,orange 5px,#0000 0),radial-gradient(circle at 50% 90%,#ff8c00 5px,#0000 0);background-size:100% 100%}@keyframes particlesExplode{0%{filter:brightness(1);opacity:1;transform:scale(0) rotate(0deg)}30%{filter:brightness(1.5);opacity:.9;transform:scale(1.2) rotate(180deg)}60%{filter:brightness(1.2);opacity:.5;transform:scale(1.5) rotate(1turn)}to{filter:brightness(.8);opacity:0;transform:scale(1.8) rotate(540deg)}}.mobile-controls{align-items:center;bottom:20px;display:none;flex-direction:row;gap:15px;position:fixed;right:20px;z-index:200}.mobile-button{-webkit-tap-highlight-color:transparent;align-items:center;background:linear-gradient(135deg,#1a1a1a,#000);border:4px solid gold;border-radius:0;box-shadow:inset -3px -3px 0 #e6c200,inset 3px 3px 0 #ffe44d,0 0 0 2px #000,0 4px 8px #00000080,0 0 15px #ffd70033;color:gold;cursor:pointer;display:flex;font-family:Courier New,monospace;font-size:32px;font-weight:900;height:60px;image-rendering:pixelated;justify-content:center;min-height:60px;min-width:60px;overflow:hidden;position:relative;touch-action:manipulation;transition:all .15s ease;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;width:60px}.mobile-button:before{background:#ffd7004d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease;width:0}.mobile-button:active:before{height:100%;width:100%}.mobile-button:active{background:linear-gradient(135deg,#0a0a0a,#000);box-shadow:inset 3px 3px 0 #c90,inset -3px -3px 0 #fc0,0 0 0 2px #000,0 2px 4px #00000080;transform:scale(.92)}.mobile-jump{order:2}.mobile-left{order:1}.mobile-right{order:3}@media (min-width:769px) and (max-width:1024px){.mario{height:90px!important;width:90px!important}.mario-box,.mario-box-wrapper{height:70px!important;width:70px!important}.mario-box{max-height:70px!important;max-width:70px!important;min-height:70px!important;min-width:70px!important}.welcome-text{left:50%!important;max-width:70%!important;right:auto!important;text-align:center!important;top:3%!important;transform:translateX(-50%)!important}.welcome-text.game-started{left:15px!important;max-width:200px!important;text-align:left!important;top:60px!important;transform:translate(0)!important}.mario-welcome{font-size:36px;letter-spacing:3px;line-height:1.2;text-align:center!important}.welcome-text.game-started .mario-welcome{font-size:24px!important;text-align:left!important}.instructions-overlay{align-items:flex-start!important;bottom:auto!important;justify-content:center!important;left:50%!important;margin-top:150px!important;right:auto!important;top:auto!important;transform:translateX(-50%)!important;width:100%!important}.instructions{font-size:14px;left:auto!important;margin:0 auto!important;max-width:320px;padding:18px 22px;position:relative!important;right:auto!important}.alternative-link{bottom:30px!important;font-size:14px;left:100px!important;max-width:none!important;padding:10px 20px;text-align:center!important;top:auto!important;transform:none!important;width:auto}.sound-toggle{bottom:auto;font-size:22px;height:50px;left:20px;min-height:50px;min-width:50px;overflow:visible;right:auto;top:20px;width:50px}.arrow-indicators,.mobile-controls{display:none!important}}@media (max-width:768px){.ui-layer-top .welcome-text,.ui-layer-top .welcome-text.game-started,.welcome-text,.welcome-text.game-started{transition:none!important;-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important}.ui-layer-top .welcome-text.game-started,.welcome-text.game-started{left:50%!important;margin-left:0!important;margin-right:0!important;max-width:90%!important;opacity:1!important;padding-left:0!important;padding-right:0!important;position:fixed!important;right:auto!important;top:70px!important;transform:translateX(-50%)!important;width:calc(100% - 40px)!important}.mario-game{-webkit-overflow-scrolling:touch;font-size:14px;touch-action:pan-y}.mario-game,.mario-game *{-webkit-touch-callout:none!important;-webkit-tap-highlight-color:transparent!important;-webkit-user-select:none!important;user-select:none!important}.mario{height:80px!important;width:80px!important}.platform{border-width:2px}.box-label{bottom:-20px;font-size:10px;padding:4px 6px}.mario-box,.mario-box-wrapper{height:60px!important;width:60px!important}.mario-box{max-height:60px!important;max-width:60px!important;min-height:60px!important;min-width:60px!important}.instructions-overlay{align-items:flex-start!important;bottom:auto!important;justify-content:center!important;left:50%!important;margin-top:0!important;right:auto!important;top:30%!important;transform:translateX(-50%)!important;width:100%!important}.instructions{border-radius:18px;box-shadow:0 8px 32px 0 #0009,0 0 40px #ffd70040,inset 0 1px 0 #ffffff26;font-size:12px;left:auto!important;margin:0 auto!important;max-width:96%;padding:10px 18px;position:relative!important;right:auto!important;width:96%}.instructions h3{color:gold;font-size:16px;font-weight:900;letter-spacing:1.2px;line-height:1.3;margin-bottom:8px;text-shadow:2px 2px 0 #000000e6,-1px -1px 0 #000000e6,1px -1px 0 #000000e6,-1px 1px 0 #000000e6,0 0 15px #ffd700b3,0 0 30px #ffd70066;text-transform:uppercase}.instructions p{color:#fff;font-size:12px;font-weight:600;letter-spacing:.4px;line-height:1.5;margin:6px 0;text-shadow:1px 1px 2px #000000e6,0 0 8px #ffffff4d,0 0 15px #ffd70033;transition:all .3s ease}.instructions p:hover{color:gold;text-shadow:1px 1px 2px #000000e6,0 0 12px #ffd70099,0 0 20px #ffd70066;transform:translateX(2px)}.alternative-link.mobile-only{display:inline-block}.alternative-link.desktop-only{display:none}.score-display{left:50%!important;position:fixed!important;top:10px!important;transform:translateX(-50%)!important;z-index:200}.score-text{font-size:20px;letter-spacing:2px;padding:8px 16px}.welcome-text{max-width:90%;padding-top:4px;width:calc(100% - 40px);z-index:100}.welcome-text,.welcome-text.game-started{left:50%!important;margin-left:0!important;margin-right:0!important;position:fixed!important;right:auto!important;text-align:center!important;top:70px!important;transform:translateX(-50%)!important;transition:none!important}.welcome-text.game-started{max-width:90%!important;min-width:auto!important;opacity:1!important;padding-left:0!important;padding-right:0!important;width:calc(100% - 40px)!important}.mario-welcome{font-size:20px;letter-spacing:1.5px;line-height:1.2;padding:16px 20px;text-align:center!important}.welcome-text.game-started .mario-welcome{font-size:16px!important;text-align:center!important}.sound-toggle{bottom:auto;font-size:20px;height:45px;left:10px!important;min-height:45px;min-width:45px;overflow:visible;right:auto;top:10px!important;width:45px}.mobile-controls{align-items:flex-end;bottom:calc(15% - 52px);display:flex;gap:0;justify-content:space-between;left:0;padding:0 15px;position:fixed;right:0;width:100%;z-index:200}.mobile-button{border-width:2px;font-size:22px;height:40px;min-height:40px;min-width:40px;width:40px}.mobile-button.mobile-left{margin-right:auto;order:1}.mobile-button.mobile-jump{left:50%;order:2;position:absolute;transform:translateX(-50%)}.mobile-button.mobile-right{margin-left:auto;order:3}.arrow-indicators{display:none!important}.arrow-key{font-size:36px}.mobile-jump-arrow{pointer-events:auto!important}}@media (max-width:480px){.ui-layer-top .welcome-text,.ui-layer-top .welcome-text.game-started,.welcome-text,.welcome-text.game-started{transition:none!important;-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important}.ui-layer-top .welcome-text.game-started,.welcome-text.game-started{left:50%!important;margin-left:0!important;margin-right:0!important;max-width:90%!important;opacity:1!important;padding-left:0!important;padding-right:0!important;position:fixed!important;right:auto!important;top:60px!important;transform:translateX(-50%)!important;width:calc(100% - 32px)!important}.mario{height:70px!important;width:70px!important}.box-label{bottom:-18px;font-size:9px;padding:3px 5px}.mario-box,.mario-box-wrapper{height:50px!important;width:50px!important}.mario-box{max-height:50px!important;max-width:50px!important;min-height:50px!important;min-width:50px!important}.instructions-overlay{align-items:center!important;bottom:auto!important;justify-content:center!important;left:50%!important;margin-top:0!important;right:auto!important;top:35%!important;transform:translate(-50%,-50%)!important;width:100%!important}.instructions{box-shadow:0 8px 32px 0 #0009,0 0 40px #ffd70040,inset 0 1px 0 #ffffff26;font-size:11px;left:auto!important;margin:0 auto!important;max-width:95%;padding:8px 14px;position:relative!important;right:auto!important;width:100%}.instructions h3{color:gold;font-size:14px;font-weight:900;letter-spacing:1px;line-height:1.3;margin-bottom:6px;text-shadow:2px 2px 0 #000000e6,-1px -1px 0 #000000e6,1px -1px 0 #000000e6,-1px 1px 0 #000000e6,0 0 15px #ffd700b3,0 0 30px #ffd70066;text-transform:uppercase}.instructions p{color:#fff;font-size:11px;font-weight:600;letter-spacing:.3px;line-height:1.4;margin:5px 0;text-shadow:1px 1px 2px #000000e6,0 0 8px #ffffff4d,0 0 15px #ffd70033;transition:all .3s ease}.instructions p:hover{color:gold;text-shadow:1px 1px 2px #000000e6,0 0 12px #ffd70099,0 0 20px #ffd70066;transform:translateX(2px)}.score-display{align-items:center;left:50%!important;position:fixed!important;top:8px!important;transform:translateX(-50%)!important;z-index:200}.score-text{font-size:16px;letter-spacing:1px;padding:6px 12px}.welcome-text{max-width:90%;padding-top:3px;width:calc(100% - 32px);z-index:100}.welcome-text,.welcome-text.game-started{left:50%!important;margin-left:0!important;margin-right:0!important;position:fixed!important;right:auto!important;text-align:center!important;top:60px!important;transform:translateX(-50%)!important;transition:none!important}.welcome-text.game-started{max-width:90%!important;min-width:auto!important;opacity:1!important;padding-left:0!important;padding-right:0!important;width:calc(100% - 32px)!important}.mario-welcome{font-size:16px;letter-spacing:1px;line-height:1.1;text-align:center!important}.welcome-text.game-started .mario-welcome{font-size:14px!important;text-align:center!important}.sound-toggle{bottom:auto;font-size:18px;height:40px;left:8px;min-height:40px;min-width:40px;overflow:visible;right:auto;top:8px!important;width:40px}.mobile-button{font-size:28px;height:50px;min-height:50px;min-width:50px;width:50px}.mobile-controls{align-items:flex-end;bottom:calc(15% - 48px);gap:0;justify-content:space-between;left:0;padding:0 10px;position:fixed;right:0;width:100%;z-index:200}.mobile-button{border-width:2px;font-size:20px;height:36px;min-height:36px;min-width:36px;width:36px}.mobile-button.mobile-left{margin-right:auto;order:1}.mobile-button.mobile-jump{left:50%;order:2;position:absolute;transform:translateX(-50%)}.mobile-button.mobile-right{margin-left:auto;order:3}.arrow-key{font-size:32px}}@media (prefers-reduced-motion:reduce){.cloud,.mario.running .mario-arm-left,.mario.running .mario-arm-right,.mario.running .mario-leg-left,.mario.running .mario-leg-right,.question-mark{animation:none}}@media (prefers-contrast:high){.mario-sprite{border:3px solid #000}.platform{border-width:4px}.mario-box{border-width:5px}}.portfolio-section{align-items:center;animation:fadeIn .3s ease-out;display:flex;height:100%;justify-content:center;left:0;pointer-events:none;position:fixed;top:0;touch-action:none;width:100%;z-index:300}.section-panel{-webkit-overflow-scrolling:touch;animation:slideDown .4s ease-out;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#ffffff1a;border:1px solid #fff3;border-radius:24px;box-shadow:0 8px 32px 0 #1f26875e;display:flex;flex-direction:column;font-family:Outfit,sans-serif;height:calc(80vh - 100px);image-rendering:auto;margin:0 0 0 auto;max-height:calc(80vh - 100px);max-width:720px;min-height:calc(80vh - 100px);overflow:hidden;pointer-events:auto;position:relative;touch-action:pan-y;width:720px}.section-panel:before{background:linear-gradient(180deg,#ffffff1a,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.panel-header{align-items:center;background:#ffffff1a;background-image:url(/static/media/coin.2548921ebb982cd2f779.png);background-repeat:repeat;background-size:60px 60px;border-bottom:1px solid #ffffff1a;display:flex;flex-shrink:0;image-rendering:pixelated;justify-content:space-between;padding:20px 24px;position:relative;text-align:center}.panel-header:before{background:#8b451366;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}.panel-header>*{position:relative;z-index:2}.mario-header{justify-content:space-between;position:relative;width:100%}.header-content,.mario-header{align-items:center;display:flex}.header-content{flex:1 1;gap:15px;justify-content:center;margin-right:auto}.section-icon{filter:drop-shadow(2px 2px 4px rgba(0,0,0,.5));font-size:36px}.panel-header h1{font-size:24px;font-weight:700;letter-spacing:1px;margin:0;text-shadow:0 2px 4px #0003;text-transform:uppercase}.close-button,.panel-header h1{color:#fff;font-family:Outfit,sans-serif;image-rendering:auto}.close-button{align-items:center;background:#fff3;border:1px solid #ffffff4d;border-radius:50%;box-shadow:0 2px 8px #0000001a;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;font-weight:500;height:32px;justify-content:center;line-height:1;margin-left:auto;overflow:hidden;padding:0;position:relative;transition:all .2s ease;width:32px}.close-button:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease;width:0}.close-button:hover:before{height:100%;width:100%}.close-button:hover{background:#ffffff4d;box-shadow:0 4px 12px #0003;transform:scale(1.05)}.close-button:active{background:linear-gradient(135deg,#c00,#900);box-shadow:inset 2px 2px 0 #a00,inset -2px -2px 0 #f33,0 0 0 1px #000,0 1px 2px #0006;transform:scale(.95)}.panel-body{-webkit-overflow-scrolling:touch;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#fff9;flex:1 1;image-rendering:auto;min-height:0;overflow-x:hidden;overflow-y:auto;padding:24px;touch-action:pan-y;-webkit-user-select:text;user-select:text}.section-content{color:#333;font-family:Outfit,sans-serif}.section-content h2{color:#1a1a1a;font-size:28px;font-weight:700;letter-spacing:-.5px;margin-bottom:20px;text-align:center;text-shadow:none;text-transform:none}.section-content p{color:#444;font-size:16px;font-weight:400;line-height:1.6;margin-bottom:16px;text-align:center}.education-list{display:flex;flex-direction:column;gap:15px;margin-top:15px}.education-item{background:#ffffffb3;border:1px solid #0000000d;border-radius:12px;box-shadow:0 2px 8px #0000000d;image-rendering:auto;padding:16px;position:relative;transition:transform .2s ease,box-shadow .2s ease}.education-logo{height:48px;object-fit:contain;position:absolute;right:12px;top:12px;width:48px}.education-item:hover{background:#ffffffe6;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.education-item h3{color:#0056b3;font-size:18px;font-weight:600;margin-bottom:8px;text-shadow:none}.education-item p{color:#555;font-size:14px;font-weight:400;line-height:1.5;margin:4px 0;text-align:left}.experience-list{display:flex;flex-direction:column;gap:15px;margin-top:15px}.experience-item{background:#ffffffb3;border:1px solid #0000000d;border-radius:12px;box-shadow:0 2px 8px #0000000d;image-rendering:auto;padding:16px;position:relative;transition:transform .2s ease,box-shadow .2s ease}.experience-logo{height:48px;object-fit:contain;position:absolute;right:12px;top:12px;width:48px}.experience-item:hover{background:#ffffffe6;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.experience-item h3{color:#e65100;font-size:18px;font-weight:600;margin-bottom:8px;text-shadow:none}.experience-item p{color:#555;font-size:14px;font-weight:400;line-height:1.5;margin:4px 0;text-align:left}.project-grid{align-items:flex-start;display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-top:15px}.project-card{background:#ffffffb3;border:1px solid #0000000d;border-radius:12px;box-shadow:0 2px 8px #0000000d;cursor:pointer;flex:1 1 320px;image-rendering:auto;max-width:420px;padding:16px;text-align:center;transition:transform .2s ease,box-shadow .2s ease}.project-logo{height:56px;margin-bottom:8px;object-fit:contain;width:56px}.project-card:hover{background:#ffffffe6;box-shadow:0 8px 16px #0000001a;transform:translateY(-4px)}.project-card h3{color:#0056b3;font-size:16px;font-weight:600;margin-bottom:8px;text-shadow:none}.project-card p{color:#555;font-size:13px;font-weight:400;line-height:1.5;margin:0}.skills-container{margin-top:20px}.skill-category{background:#ffffffb3;border:1px solid #0000000d;border-radius:12px;box-shadow:0 2px 8px #0000000d;image-rendering:auto;margin-bottom:20px;padding:16px}.skill-category h3{color:#e65100;font-size:18px;font-weight:600;margin-bottom:12px;text-align:center;text-shadow:none}.skill-tags{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.skill-tag{background:linear-gradient(135deg,#ff9800,#f57c00);border:none;border-radius:20px;box-shadow:0 2px 4px #0000001a;color:#fff;font-family:Outfit,sans-serif;font-size:13px;font-weight:500;image-rendering:auto;padding:6px 14px;transition:transform .2s ease}.skill-tag:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.contact-info{margin-top:30px}.contact-item{align-items:center;background:#ffffffb3;border:1px solid #0000000d;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;font-family:Outfit,sans-serif;font-size:15px;font-weight:500;gap:12px;image-rendering:auto;margin:8px 0;padding:16px;transition:transform .2s ease}.contact-item:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.contact-item a{color:#000;text-decoration:none}.contact-item a:hover{color:#9c27b0}.contact-icon{font-size:20px}.social-links{display:flex;gap:15px;justify-content:center;margin-top:20px}.social-button{background:linear-gradient(135deg,#9c27b0,#7b1fa2);border:none;border-radius:24px;box-shadow:0 4px 12px #9c27b04d;color:#fff;cursor:pointer;font-family:Outfit,sans-serif;font-size:14px;font-weight:600;image-rendering:auto;letter-spacing:1px;padding:12px 28px;text-decoration:none;text-transform:uppercase;transition:all .2s ease}.social-button:hover{box-shadow:0 6px 16px #9c27b066;filter:brightness(1.1);transform:translateY(-2px)}.social-button:active{box-shadow:0 2px 8px #9c27b04d;transform:translateY(0)}.panel-body::-webkit-scrollbar{width:10px}.panel-body::-webkit-scrollbar-track{background:#f1f1f1;border-radius:5px}.panel-body::-webkit-scrollbar-thumb{background:#8b4513;border-radius:5px}.panel-body::-webkit-scrollbar-thumb:hover{background:#654321}.section-panel{-webkit-backface-visibility:hidden;backface-visibility:hidden;will-change:transform,opacity}.panel-body,.section-panel{transform:translateZ(0)}@media (min-width:1025px){.portfolio-section{align-items:flex-start;justify-content:flex-end;padding-bottom:20vh;padding-right:20px;padding-top:100px}.section-panel{height:calc(80vh - 100px)!important;margin-left:auto!important;margin-right:0!important;max-height:calc(80vh - 100px)!important;max-width:720px!important;min-height:calc(80vh - 100px)!important;width:720px!important}}@media (min-width:769px) and (max-width:1024px){.portfolio-section{align-items:flex-start;justify-content:center;padding:15vh 0 0}.section-panel{height:50vh!important;margin:0 auto!important;max-height:50vh!important;max-width:70%!important;min-height:50vh!important;width:70%!important}.panel-header{padding:14px 18px}.panel-header h1{font-size:24px;letter-spacing:1.5px}.section-icon{font-size:32px}.close-button{font-size:19px;height:34px;width:34px}.panel-body{flex:1 1;font-size:14px;min-height:0;padding:18px}.section-content h2{font-size:20px;margin-bottom:14px}.project-grid{gap:15px;grid-template-columns:repeat(2,1fr)}.skill-tags{gap:10px}.skill-tag{font-size:12px;padding:6px 12px}.education-item,.experience-item,.project-card{padding:12px}.education-item h3,.experience-item h3,.project-card h3{font-size:16px}.education-item p,.experience-item p,.project-card p{font-size:13px}.contact-item{font-size:14px;padding:12px}.social-button{font-size:13px;padding:10px 20px}}@media (max-width:768px){.portfolio-section{align-items:flex-start;justify-content:center;padding:20vh 0 0}.section-panel{height:45vh!important;margin:0 auto;max-height:45vh!important;max-width:85%!important;min-height:45vh!important;width:85%!important}.panel-header{padding:12px 15px}.panel-header h1{font-size:20px;letter-spacing:1px}.section-icon{font-size:28px}.close-button{font-size:18px;height:32px;width:32px}.panel-body{flex:1 1;font-size:13px;min-height:0;padding:15px}.section-content h2{font-size:18px;margin-bottom:12px}.project-grid{gap:12px;grid-template-columns:1fr}.skill-tags{gap:8px}.skill-tag{font-size:11px;padding:5px 10px}.education-item,.experience-item,.project-card{padding:10px}.education-item h3,.experience-item h3,.project-card h3{font-size:14px}.education-item p,.experience-item p,.project-card p{font-size:11px}.contact-item{font-size:12px;padding:10px}.social-button{font-size:12px;padding:8px 16px}}@media (max-width:480px){.portfolio-section{justify-content:center;padding:18vh 0 0}.section-panel{height:45vh!important;margin-left:auto;margin-right:auto;max-height:45vh!important;max-width:90%!important;min-height:45vh!important;width:90%!important}.panel-header{padding:10px 12px}.panel-header h1{font-size:18px;letter-spacing:.5px}.section-icon{font-size:24px}.close-button{font-size:16px;height:30px;width:30px}.panel-body{flex:1 1;font-size:12px;min-height:0;padding:12px}.section-content h2{font-size:16px;margin-bottom:10px}.section-content p{font-size:11px;margin-bottom:12px}.education-item,.experience-item,.project-card{padding:8px}.education-item h3,.experience-item h3,.project-card h3{font-size:13px}.education-item p,.experience-item p,.project-card p{font-size:10px}.skill-category{margin-bottom:15px;padding:12px}.skill-category h3{font-size:16px;margin-bottom:10px}.skill-tag{font-size:10px;padding:4px 8px}.contact-item{font-size:11px;margin:6px 0;padding:8px}.contact-icon{font-size:18px}.social-links{gap:10px;margin-top:15px}.social-button{font-size:11px;padding:8px 14px}}@media (max-width:768px) and (orientation:landscape){.portfolio-section{justify-content:center;padding-left:0;padding-right:0;padding-top:5vh}.section-panel{height:60vh!important;margin-left:auto;margin-right:auto;max-height:60vh!important;max-width:70%!important;min-height:60vh!important;width:70%!important}.panel-body{flex:1 1;min-height:0}}@media (prefers-reduced-motion:reduce){.section-panel{animation:none}.project-card,.social-button{transition:none}}@media (prefers-contrast:high){.section-panel{border-width:6px}.project-card{border-width:4px}.skill-tag{border-width:3px}}
/*# sourceMappingURL=main.2ed2e56d.css.map*/