.app-root{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;background:#080212}.app-root:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1000;opacity:.12;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:200px 200px}.game-screen{position:fixed;top:0;right:0;bottom:0;left:0}.card-table{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;background:radial-gradient(ellipse at center,#161e28,#000);overflow:hidden;transform:translateY(40%);transition:transform .65s cubic-bezier(.23,1,.32,1)}.card-table.revealed{transform:translateY(0)}.card-table:before{content:none}.card-table.fail{animation:tableShake .5s ease-out}@keyframes tableShake{0%,to{transform:translate(0)}15%{transform:translate(-8px) rotate(-.5deg)}30%{transform:translate(8px) rotate(.5deg)}45%{transform:translate(-6px)}60%{transform:translate(6px)}75%{transform:translate(-3px)}90%{transform:translate(3px)}}.card{position:absolute;cursor:pointer;border-radius:8px;background:#fdf6e3;border:8px solid #ffffff;box-shadow:3px 5px 14px #00000080;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .18s,transform .18s ease-out;transform-origin:center center;transform:rotate(var(--rot));will-change:transform;-webkit-tap-highlight-color:transparent}.card--active:hover{box-shadow:3px 5px 20px #0009,0 0 0 2px #fff;z-index:50!important;transform:rotate(calc(var(--rot) + 6deg)) translateY(-10px) scale(1.05)}.card--active:active{transform:scale(.94) rotate(var(--rot));transition:transform .08s}.card-part{flex:1;overflow:hidden;margin-bottom:-1px}.card-part:last-child{margin-bottom:0}.card-part img{width:100%;height:100%;display:block;object-fit:cover;pointer-events:none}.card--slapped{animation:cardSlapped .35s ease-out forwards}@keyframes cardSlapped{0%{transform:rotate(var(--rot)) scale(1);filter:brightness(1)}20%{transform:rotate(calc(var(--rot) + 8deg)) scale(.92);filter:brightness(2) saturate(2)}50%{transform:rotate(calc(var(--rot) - 12deg)) scale(1.1) translateY(-10px);filter:brightness(1.5)}to{transform:rotate(calc(var(--rot) + 180deg)) scale(.6) translateY(20px);filter:brightness(.8);opacity:0}}.card--wrong{animation:cardWrong .4s ease-out forwards}@keyframes cardWrong{0%{transform:rotate(var(--rot));filter:brightness(1)}20%{transform:rotate(var(--rot)) scale(1.08);filter:brightness(1) sepia(1) saturate(3) hue-rotate(300deg)}to{transform:rotate(var(--rot)) scale(.85);filter:brightness(.5) sepia(1) saturate(3) hue-rotate(300deg);opacity:.4}}.card--fail-dim{animation:cardDim .4s ease-out .15s forwards}@keyframes cardDim{to{opacity:.25;filter:brightness(.5) saturate(.2)}}.card--fly-away{animation:cardFlyAway .55s cubic-bezier(.2,0,.7,1) forwards;pointer-events:none}@keyframes cardFlyAway{0%{transform:rotate(var(--rot)) translate(0) scale(1);opacity:1}to{transform:rotate(calc(var(--rot) + var(--fly-spin, 25deg))) translate(calc(var(--fly-dx) * 1px),calc(var(--fly-dy) * 1px)) scale(.4);opacity:0}}.timer-track{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;animation:timerFadeIn 1s ease-out both;pointer-events:none;opacity:1;mix-blend-mode:hard-light;opacity:.6}.timer-bar{width:100%;height:100%;transform-origin:left;background:#4f8;opacity:.6}.generator-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#3d1570,#1a0840 55%,#080212);transform:translateY(0);transition:transform .7s cubic-bezier(0,0,.2,1);box-shadow:0 20px 60px 10px #000c}.generator-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,#472c00,#000);opacity:0;transition:opacity .4s ease-out;pointer-events:none;z-index:-1}.generator-panel.active:before{opacity:1}.generator-panel:after{content:"";position:absolute;left:50%;top:50%;width:160vmax;aspect-ratio:1;background:conic-gradient(from 0deg,transparent 0deg,rgba(140,80,255,.5) 70deg,transparent 140deg,rgba(120,60,240,.35) 210deg,transparent 280deg,transparent 360deg);border-radius:50%;pointer-events:none;filter:blur(28px);-webkit-mask-image:radial-gradient(circle,transparent 4%,white 22%,white 55%,transparent 80%);mask-image:radial-gradient(circle,transparent 4%,white 22%,white 55%,transparent 80%);opacity:0;z-index:-1}.generator-panel.active:after{animation:vortexSpin 2.5s linear infinite,vortexShuffleLifecycle 2.5s ease-in-out forwards}@keyframes vortexSpin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes vortexShuffleLifecycle{0%{opacity:0}18%{opacity:1}68%{opacity:1}to{opacity:0}}.generator-panel.revealed{transform:translateY(-100%);transition:transform .45s cubic-bezier(.4,0,1,1)}.generator-machine{--machine-w: min(90vw, calc(90vh * 680 / 720.67), 680px);--machine-h: calc(var(--machine-w) * 720.67 / 680);position:relative;width:var(--machine-w);height:var(--machine-h);flex-shrink:0}.generator-machine-img{width:100%;height:100%;display:block;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 40px 60px rgba(0,0,0,.7)) drop-shadow(0 20px 30px rgba(0,0,0,.5))}.generator-tiles-overlay{position:absolute;left:28.08%;top:10.38%;width:43.81%;height:57.33%;display:flex;flex-direction:column;padding:1.92% 1.28%;gap:calc(var(--machine-h) * .018);overflow:hidden;background:radial-gradient(50% 50% at 50% 50%,#000,#832400)}.segment-window{--seg-h: calc(var(--machine-h) * .167);--prism-r: calc(var(--seg-h) * .2887);flex:1;overflow:hidden;position:relative;border-radius:5px}.segment-window:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,rgba(255,255,255,.15) 0%,transparent 20%,transparent 80%,rgba(0,0,0,.3) 100%);pointer-events:none;z-index:2}.prism-scene{width:100%;height:100%;perspective:calc(var(--seg-h) * 4)}.prism-container{width:100%;height:100%;transform-style:preserve-3d;will-change:transform}.prism-face{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;-webkit-backface-visibility:hidden}.prism-face img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.generator-button{position:absolute;left:32.52%;top:65%;width:35%;height:17%;border:none;z-index:100;border-radius:50%;cursor:pointer;padding:0;background:radial-gradient(ellipse at 40% 35%,#e87070,#cc3030 40%,#8b0f0f);box-shadow:0 calc(var(--machine-h) * .028) 0 #5a0808,0 calc(var(--machine-h) * .035) 20px #0000008c,inset 0 2px 5px #ff969673,0 0 #cc3030b3;transition:transform .3s cubic-bezier(.4,0,.2,1.2),box-shadow .3s cubic-bezier(.4,0,.2,1.2),background .4s ease-out;-webkit-tap-highlight-color:transparent;touch-action:manipulation;animation:buttonPulse 1.1s ease-in-out infinite}@keyframes buttonPulse{0%,to{box-shadow:0 calc(var(--machine-h) * .028) 0 #5a0808,0 calc(var(--machine-h) * .035) 20px #0000008c,inset 0 2px 5px #ff969673,0 0 10px 4px #dc1e1e66}50%{box-shadow:0 calc(var(--machine-h) * .028) 0 #5a0808,0 calc(var(--machine-h) * .035) 20px #0000008c,inset 0 2px 5px #ff969673,0 0 40px 18px #dc1e1ed9}}.generator-button:hover{transform:translateY(calc(var(--machine-h) * -.003));box-shadow:0 calc(var(--machine-h) * .035) 0 #5a0808,0 calc(var(--machine-h) * .042) 24px #0009,inset 0 2px 5px #ff969673}.generator-button:active,.generator-button.pressed{transform:translateY(calc(var(--machine-h) * .02));background:radial-gradient(ellipse at 40% 35%,#fff9c4,#ffd416 45%,#fff41b);box-shadow:0 calc(var(--machine-h) * .014) 0 #e69d14,0 calc(var(--machine-h) * .018) 2px #0003,inset 0 1px 4px #0003;cursor:default;animation:none}.generator-level-label{position:absolute;bottom:3%;left:50%;transform:translate(-50%);font-family:Knewave,cursive;font-size:clamp(13px,calc(var(--machine-w) * .062),38px);color:#5a0a0a;letter-spacing:.05em;white-space:nowrap;pointer-events:none;opacity:1;text-shadow:2px 2px 2px rgba(255,255,255,.8)}.generator-level-label--fade{animation:levelLabelFadeIn .6s ease-out forwards}@keyframes levelLabelFadeIn{0%{opacity:0}to{opacity:1}}.generator-locked-badge{position:absolute;bottom:17%;left:50%;transform:translate(-50%);font-family:Creepster,sans-serif;font-size:clamp(12px,calc(var(--machine-w) * .04),26px);color:#fdd835;letter-spacing:.12em;text-shadow:0 0 12px rgba(253,216,53,.8);white-space:nowrap;pointer-events:none;animation:lockedPop .3s cubic-bezier(.2,2,.4,1) forwards}@keyframes lockedPop{0%{transform:translate(-50%) scale(.5);opacity:0}to{transform:translate(-50%) scale(1);opacity:1}}.generator-machine.shaking{animation:machineThud .6s ease-out}@keyframes machineThud{0%,to{transform:translate(0) rotate(0)}8%{transform:translate(-7px,-4px) rotate(-.6deg)}18%{transform:translate(8px,5px) rotate(.6deg)}30%{transform:translate(-6px,-3px) rotate(-.45deg)}42%{transform:translate(6px,3px) rotate(.45deg)}55%{transform:translate(-4px,-2px) rotate(-.25deg)}68%{transform:translate(4px,2px) rotate(.25deg)}82%{transform:translate(-2px,-1px) rotate(-.1deg)}92%{transform:translate(2px,1px) rotate(.1deg)}}.button-thud-ring{position:absolute;left:50%;top:74%;width:34%;aspect-ratio:1;border-radius:50%;pointer-events:none}.button-thud-ring--1{border:3px solid rgba(253,216,53,.9);animation:thudRing .55s ease-out 0s forwards}.button-thud-ring--2{border:2px solid rgba(253,216,53,.75);animation:thudRing .55s ease-out .1s forwards}.button-thud-ring--3{border:2px solid rgba(253,216,53,.6);animation:thudRing .55s ease-out .21s forwards}.button-thud-ring--4{border:1px solid rgba(253,216,53,.45);animation:thudRing .55s ease-out .33s forwards}.button-thud-ring--5{border:1px solid rgba(253,216,53,.3);animation:thudRing .55s ease-out .46s forwards}@keyframes thudRing{0%{transform:translate(-50%,-50%) scale(.9);opacity:1}40%{opacity:.55}to{transform:translate(-50%,-50%) scale(4.2);opacity:0}}.gold-sparks{position:absolute;top:42%;transform:translate(-50%,-50%);pointer-events:none}.gold-sparks--left{left:calc(50% - (min(90vw,calc(90vh * 680 / 720.67),680px)*.32))}.gold-sparks--right{left:calc(50% + min(90vw,calc(90vh * 680 / 720.67),680px)*.32)}.gold-spark{position:absolute;transform-origin:center;animation:goldSparkFly ease-out forwards}@keyframes goldSparkFly{0%{transform:rotate(var(--angle)) translate(0) rotate(0) scale(1.2);opacity:1}50%{opacity:1}to{transform:rotate(var(--angle)) translate(var(--dist)) rotate(var(--spin)) scale(.3);opacity:0}}.generator-starburst{position:absolute;left:50%;top:50%;width:140vmax;aspect-ratio:1;background:repeating-conic-gradient(rgba(180,120,255,.22) 0deg 9deg,transparent 9deg 22deg);border-radius:50%;pointer-events:none;filter:blur(8px);animation:starburstFade 3s ease-out forwards,starburstSpin 3s ease-in forwards}@keyframes starburstFade{0%{opacity:0}10%{opacity:.6}to{opacity:0}}@keyframes starburstSpin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(60deg)}}.generator-countdown{position:absolute;left:83.5%;top:50%;transform:translate(-50%,-50%);font-family:Creepster,sans-serif;font-size:clamp(80px,17vw,160px);color:#fff;text-shadow:3px 3px 0 rgba(0,0,0,.4);pointer-events:none;z-index:5;white-space:nowrap;animation:countdownPop .35s cubic-bezier(.2,2.2,.4,1) forwards}.generator-countdown--mash{font-size:clamp(70px,14vw,140px)}@media (orientation: portrait){.generator-countdown{left:50%;top:86%;transform:translate(-50%,-50%);font-size:clamp(60px,20vw,120px)}.generator-countdown--mash{font-size:clamp(80px,30vw,160px)}}@keyframes countdownPop{0%{transform:translate(-50%,-50%) scale(.3) rotate(-10deg);opacity:0}to{transform:translate(-50%,-50%) scale(1) rotate(0);opacity:1}}.panel-hint{position:absolute;right:min(calc(50% + min(90vw,calc(90vh * 680 / 720.67),680px)*.54),calc(100% - 16px));max-width:calc(50% - (min(90vw,calc(90vh * 680 / 720.67),680px)*.54) - 8px);top:30%;transform:translateY(-50%);display:flex;flex-direction:row;align-items:center;gap:12px;pointer-events:none;z-index:5;animation:fadeIn .5s ease-out both}.panel-hint--overlay{position:fixed;z-index:51}.panel-hint--fading{opacity:0;transition:opacity .5s ease-out;pointer-events:none}.panel-hint--find{top:38%;flex-direction:row;align-items:center}@media (orientation: portrait){.panel-hint{left:0;right:0;top:auto;bottom:8%;transform:none;width:100%;max-width:100%;justify-content:center;align-items:center;text-align:center;flex-direction:column}.panel-hint--find{bottom:auto;top:8%;transform:none}.panel-hint-text{text-align:center}}.hint-arrow--portrait-down{display:none;width:clamp(28px,8vw,48px);margin-top:8px}@media (orientation: portrait){.hint-arrow--portrait-down{display:block}}.panel-hint-text{font-family:Knewave,cursive;font-size:clamp(22px,3.5vw,44px);color:#fff;margin:0;line-height:1.05;text-shadow:2px 2px 10px rgba(0,0,0,.7)}@media (max-height: 500px){.panel-hint-text,.start-hint-text{font-size:clamp(18px,3.5vw,36px)}}.hint-arrow--up{display:none;width:clamp(28px,8vw,48px);height:auto;filter:drop-shadow(0 1px 4px rgba(0,0,0,.5))}.hint-arrow--right{display:block;width:clamp(70px,12vw,130px);height:auto;filter:drop-shadow(0 1px 4px rgba(0,0,0,.5))}.hint-arrow--down{margin-top:80px;width:clamp(80px,13vw,140px)}@media (orientation: portrait){.hint-arrow--up{display:block}.hint-arrow--right,.hint-arrow--down,.panel-hint--find .hint-arrow--up{display:none}}@media (orientation: portrait) and (max-width: 768px){.hint-arrow--up path,.start-hint .hint-arrow--up path,.hint-arrow--portrait-down path{stroke-width:5}}.goo-burst{transform:translate(-50%,-50%);filter:url(#splat-goo)}.goo-central{position:absolute;width:200px;height:200px;left:-100px;top:-100px;background:#00c853;clip-path:polygon(50% 0%,58% 14%,72% 5%,68% 20%,84% 16%,78% 30%,96% 32%,84% 42%,100% 50%,84% 58%,94% 70%,78% 70%,82% 85%,66% 78%,60% 95%,50% 82%,40% 95%,34% 78%,18% 85%,22% 70%,6% 70%,16% 58%,0% 50%,16% 42%,4% 32%,22% 30%,16% 16%,32% 20%,28% 5%,42% 14%);pointer-events:none;animation:gooCentral 1s cubic-bezier(.2,0,.5,1) forwards;transform-origin:center}@keyframes gooCentral{0%{transform:scale(.05) rotate(-20deg);opacity:1}15%{transform:scale(1.35) rotate(10deg);opacity:1}50%{transform:scale(1.1) rotate(-5deg);opacity:1}to{transform:scale(1.2) rotate(3deg);opacity:0}}.goo-piece{position:absolute;left:0;top:0;border-radius:50%;transform-origin:0 0;animation:gooFly ease-out forwards}@keyframes gooFly{0%{transform:rotate(var(--angle)) translate(0);opacity:1}15%{transform:rotate(var(--angle)) translate(20px);opacity:1}to{transform:rotate(var(--angle)) translate(var(--dist));opacity:0}}.goo-piece--drip{border-radius:50% 50% 40% 40%/60% 60% 40% 40%;transform-origin:50% 0}@keyframes gooDrip{0%{transform:rotate(var(--angle)) translate(0) scaleY(1);opacity:1}30%{transform:rotate(var(--angle)) translate(calc(var(--dist)*.4)) scaleY(1.8);opacity:1}to{transform:rotate(var(--angle)) translate(var(--dist)) scaleY(.6);opacity:0}}.goo-piece--drip{animation-name:gooDrip}.slap-impact{position:fixed;z-index:33;font-family:Creepster,sans-serif;font-size:clamp(28px,9vw,60px);color:#ffd54f;text-shadow:3px 3px 0 rgba(0,0,0,.5),0 0 24px rgba(255,213,79,.9);pointer-events:none;white-space:nowrap;animation:impactPop .7s cubic-bezier(.2,2.2,.4,1) forwards;transform-origin:center}.slap-impact--wrong{color:#ff5252;text-shadow:3px 3px 0 rgba(0,0,0,.5),0 0 24px rgba(255,82,82,.9)}@keyframes impactPop{0%{transform:scale(.1) rotate(-20deg);opacity:0}25%{transform:scale(1.4) rotate(6deg);opacity:1}55%{transform:scale(.85) rotate(-3deg);opacity:1}80%{transform:scale(1.05) rotate(1deg);opacity:1}to{transform:scale(.9) rotate(0);opacity:0}}.impact-flash{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--flash-color, rgba(255,255,255,.3));pointer-events:none;z-index:29;animation:flashFade .18s ease-out forwards}@keyframes flashFade{0%{opacity:1}to{opacity:0}}.impact-burst{pointer-events:none;animation:burstPop .45s cubic-bezier(.2,2,.4,1) forwards;transform-origin:center}@keyframes burstPop{0%{transform:scale(.1);opacity:0}25%{transform:scale(1.2);opacity:1}70%{transform:scale(.95);opacity:.8}to{transform:scale(1.3);opacity:0}}.start-screen{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#3d1570,#000);gap:16px;overflow:hidden;transform:translateY(0);transition:transform 1s cubic-bezier(.23,1,.32,1)}.start-screen.entering{transform:translateY(-100%);transition:none}.start-green-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,#472c00,#000);opacity:0;transition:opacity .4s ease-out;pointer-events:none;z-index:0}.start-screen.start-active .start-green-overlay{opacity:1}.start-screen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,#3d1570,#000);pointer-events:none;z-index:0}.start-screen:after{content:"";position:absolute;left:50%;top:50%;width:220vmax;aspect-ratio:1;background:repeating-conic-gradient(rgba(180,120,255,.1) 0deg 9deg,transparent 9deg 22deg);border-radius:50%;pointer-events:none;filter:blur(8px);animation:lcStarSpin 24s linear infinite,startStarFadeIn 1s ease-out forwards;z-index:0}.start-screen.start-active:after{animation:lcStarSpin 24s linear infinite,startStarFadeOut .6s ease-out forwards}@keyframes startStarFadeIn{0%{opacity:0}to{opacity:1}}@keyframes startStarFadeOut{0%{opacity:1}to{opacity:0}}.start-screen .generator-machine{position:relative;z-index:1}.start-hint{position:absolute;right:min(calc(50% + min(90vw,calc(90vh * 680 / 720.67),680px)*.54),calc(100% - 16px));max-width:calc(50% - (min(90vw,calc(90vh * 680 / 720.67),680px)*.54) - 8px);top:30%;transform:translateY(-50%);display:flex;flex-direction:row;align-items:center;gap:12px;pointer-events:none;opacity:1;transition:opacity .35s ease-out;z-index:5;animation:fadeIn .5s 1.4s ease-out both}@media (orientation: portrait){.start-hint{flex-direction:column;align-items:center;justify-content:center;left:0;right:0;top:auto;bottom:8%;transform:none;width:100%;max-width:100%;text-align:center}}.start-hint--out{animation:none;opacity:0}.start-hint-text{font-family:Knewave,cursive;font-size:clamp(22px,3.5vw,44px);color:#fff;margin:0;line-height:1.05;text-shadow:2px 2px 10px rgba(0,0,0,.7)}@media (orientation: portrait){.hint-arrow--up{order:1}.start-hint-text,.panel-hint-text{order:2}.panel-hint--find .panel-hint-text{order:1}.panel-hint--find .hint-arrow--portrait-down{order:2}.start-hint-text br,.panel-hint-text br,br.landscape-br{display:none}.start-hint-text,.panel-hint-text{font-size:clamp(28px,8vw,58px);white-space:nowrap}}.gameover-screen{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(160deg,#1a0a00,#0d0600);gap:20px;overflow:hidden;animation:fadeIn .4s ease-out}.gameover-title{font-family:Creepster,sans-serif;font-size:clamp(40px,13vw,88px);color:#ff5722;text-shadow:4px 4px 0 #b71c1c,0 0 40px rgba(255,87,34,.6);text-align:center;animation:titleSlam .5s cubic-bezier(.2,2,.4,1) forwards}@keyframes titleSlam{0%{transform:scale(2) translateY(-40px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.gameover-level{font-family:Nunito,sans-serif;font-size:clamp(16px,4vw,26px);color:#ffffffb3;text-align:center;animation:fadeIn .4s .3s ease-out both}.gameover-time{font-family:Creepster,sans-serif;font-size:clamp(14px,3.5vw,22px);color:#ffd54fcc;animation:fadeIn .4s .5s ease-out both}.replay-button{font-family:Creepster,sans-serif;font-size:clamp(20px,5vw,32px);color:#1a0a2e;background:linear-gradient(135deg,#ff7043,#ff5722);border:none;border-radius:50px;padding:12px 44px;margin-top:16px;cursor:pointer;letter-spacing:.08em;box-shadow:0 5px #bf360c,0 8px 20px #bf360c80;transition:transform .1s,box-shadow .1s;animation:fadeIn .4s .7s ease-out both;touch-action:manipulation}.replay-button:active{transform:translateY(3px);box-shadow:0 2px #bf360c}.win-screen{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 20px;background:radial-gradient(ellipse at center,#000505,#011a1a 55%,#022e2e);gap:4px;overflow:hidden;animation:lcFadeIn .25s ease-out forwards}.win-screen:before{content:"";position:absolute;left:50%;top:50%;width:220vmax;aspect-ratio:1;background:repeating-conic-gradient(rgba(0,180,160,.14) 0deg 10deg,transparent 10deg 26deg);border-radius:50%;pointer-events:none;filter:blur(8px);animation:lcStarSpin 18s linear infinite}.win-title{font-family:Creepster,sans-serif;font-size:clamp(80px,24vw,200px);padding:0 16px;color:#ffd54f;text-shadow:4px 4px 0 #e65100,0 0 60px rgba(255,213,79,.5);text-align:center;line-height:1;animation:lcSlam .45s cubic-bezier(.15,2.2,.4,1) .18s both;position:relative;z-index:1}.win-player-title{font-family:Knewave,cursive;font-size:clamp(26px,8vw,56px);color:#ffffffd9;text-align:center;max-width:80vw;animation:lcSlideUp .4s ease-out .5s both;position:relative;z-index:1}.win-time{font-family:Knewave,cursive;font-size:clamp(16px,4vw,28px);color:#ffffffa6;animation:lcSlideUp .4s ease-out .65s both;position:relative;z-index:1;margin-bottom:8px}.confetti-container{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:0}.confetti-piece{position:absolute;width:10px;height:14px;border-radius:2px;animation:confettiFall linear forwards;transform-origin:center}@keyframes confettiFall{0%{transform:translateY(-120px) rotate(0);opacity:1}75%{opacity:1}to{transform:translateY(110vh) rotate(var(--spin));opacity:0}}.level-clear{position:fixed;top:0;right:0;bottom:0;left:0;z-index:35;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:radial-gradient(ellipse at center,#000505,#011a1a 55%,#022e2e);animation:lcFadeIn .25s ease-out forwards;pointer-events:none;overflow:hidden}.level-clear:before{content:"";position:absolute;left:50%;top:50%;width:220vmax;aspect-ratio:1;background:repeating-conic-gradient(rgba(0,180,160,.14) 0deg 10deg,transparent 10deg 26deg);border-radius:50%;pointer-events:none;filter:blur(8px);animation:lcStarSpin 18s linear infinite}@keyframes lcStarSpin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes lcFadeIn{0%{opacity:0}to{opacity:1}}.level-clear-level{font-family:Knewave,cursive;font-size:clamp(18px,5vw,38px);color:#ffffffbf;animation:lcSlideUp .4s cubic-bezier(.2,1.4,.4,1) .1s both;position:relative;z-index:1}.level-clear-cleared{font-family:Creepster,sans-serif;font-size:clamp(80px,24vw,200px);padding:0 16px;color:#ffd54f;text-shadow:4px 4px 0 #e65100,0 0 60px rgba(255,213,79,.5);line-height:1;animation:lcSlam .45s cubic-bezier(.15,2.2,.4,1) .18s both;position:relative;z-index:1}.level-clear-time{font-family:Knewave,cursive;font-size:clamp(20px,5.5vw,42px);color:#fffc;animation:lcSlideUp .4s ease-out .5s both;position:relative;z-index:1}.level-clear-bonus{font-family:Knewave,cursive;font-size:clamp(18px,4vw,34px);color:#fff;text-shadow:0 0 16px rgba(105,240,174,.8);letter-spacing:.1em;animation:lcSlideUp .4s ease-out .7s both;position:relative;z-index:1}@keyframes lcSlam{0%{transform:scale(.2) rotate(-8deg);opacity:0}70%{transform:scale(1.08) rotate(1deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}@keyframes lcSlideUp{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.mashed-burst{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:0}.mashed-burst-piece{position:absolute;animation:burstFly ease-out forwards}@keyframes burstFly{0%{transform:rotate(var(--angle)) translate(0);opacity:1}to{transform:rotate(var(--angle)) translate(var(--dist));opacity:0}}.compare-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(10px,2.5vw,24px);padding:16px;background:radial-gradient(ellipse at center,#161e28,#000);animation:compareFadeIn .35s ease-out forwards}@keyframes compareFadeIn{0%{opacity:0}to{opacity:1}}.compare-overlay-title{font-family:Creepster,sans-serif;white-space:nowrap;font-size:clamp(80px,18vw,200px);padding:0 16px;color:#ffd54f;text-shadow:4px 4px 0 #e65100,0 0 40px rgba(255,213,79,.5);line-height:1;animation:titleSlam .5s cubic-bezier(.2,2,.4,1) forwards;position:relative;z-index:1}.compare-overlay-message{font-family:Knewave,cursive;font-size:clamp(18px,5vw,32px);color:#fffc;text-align:center;padding:0 12px;animation:fadeIn .4s .3s ease-out both}.compare-overlay-cards{display:flex;align-items:center;gap:clamp(12px,4vw,36px);animation:fadeIn .45s .1s ease-out both}.compare-card{display:flex;flex-direction:row;align-items:center;gap:10px}.compare-card-inner{width:clamp(70px,13vw,130px);aspect-ratio:1370 / 2088;border-radius:8px;overflow:hidden;display:flex;flex-direction:column;border:3px solid rgba(255,255,255,.5);box-shadow:0 8px 32px #000000b3}.compare-card--wrong .compare-card-inner{border-color:#ff5252;box-shadow:0 8px 32px #ff525266}.compare-card--correct .compare-card-inner{width:clamp(95px,18vw,180px);border:6px solid #ffffff;box-shadow:0 8px 40px #ffffff59}.compare-card-part{flex:1;overflow:hidden}.compare-card-part img{width:100%;height:100%;display:block;object-fit:cover;pointer-events:none}.compare-card-icon{width:clamp(28px,6vw,44px);height:clamp(28px,6vw,44px);flex-shrink:0}.timeout-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:radial-gradient(ellipse at center,#161e28,#000);animation:compareFadeIn .3s ease-out forwards}.timeout-title{font-family:Creepster,sans-serif;white-space:nowrap;font-size:clamp(80px,18vw,200px);padding:0 16px;color:#ffd54f;text-shadow:4px 4px 0 #e65100,0 0 40px rgba(255,213,79,.5);text-align:center;line-height:1;animation:titleSlam .5s cubic-bezier(.2,2,.4,1) forwards}.timeout-message{font-family:Knewave,cursive;font-size:clamp(18px,4.5vw,32px);color:#fff;text-align:center;padding:0 24px;animation:fadeIn .4s .25s ease-out both}@keyframes timerFadeIn{0%{opacity:0}to{opacity:1}}.texture-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;background-repeat:no-repeat;mix-blend-mode:overlay;pointer-events:none;z-index:0}.texture-curtain{background-image:var(--tex-curtain);opacity:.3}.texture-card{background-image:var(--tex-card);opacity:.35}.texture-win{background-image:var(--tex-win);opacity:.4}.texture-lose{background-image:var(--tex-lose);opacity:.4}.info-button{position:absolute;top:16px;right:16px;z-index:100;width:36px;height:36px;border-radius:50%;border:2px solid rgba(255,255,255,.5);background:#ffffff1f;color:#fff;font-family:Knewave,cursive;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s;-webkit-tap-highlight-color:transparent}.info-button:hover{background:#ffffff38;border-color:#fffc}.info-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#000000b3;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s ease-out both}.info-panel{background:radial-gradient(ellipse at top,#1a0840,#080212);border:2px solid rgba(255,255,255,.2);border-radius:16px;padding:clamp(20px,5vw,36px);max-width:480px;width:100%;display:flex;flex-direction:column;gap:12px;box-shadow:0 20px 60px #000c}.info-title{font-family:Creepster,sans-serif;font-size:clamp(36px,10vw,60px);color:#ffd54f;text-shadow:3px 3px 0 #e65100;text-align:center;line-height:1}.info-body{font-family:Knewave,cursive;font-size:clamp(18px,5vw,26px);color:#fffc;margin:0;text-align:center}.info-list{font-family:Knewave,cursive;font-size:clamp(16px,4.5vw,22px);color:#ffffffa6;padding-left:20px;margin:0;display:flex;flex-direction:column;gap:8px}.info-close{font-family:Knewave,cursive;font-size:clamp(20px,5vw,28px);color:#080212;background:#ffd54f;border:none;border-radius:8px;padding:10px 24px;cursor:pointer;margin-top:4px;transition:background .15s;-webkit-tap-highlight-color:transparent}.info-close:hover{background:#ffea00}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (orientation: portrait){.card-table{background:radial-gradient(ellipse at center,#2a3348,#141c2e 55%,#0a1018)}.generator-panel{background:radial-gradient(ellipse at center,#5a20a0,#2a1068 55%,#120430)}.start-screen:before{background:radial-gradient(ellipse at center,#5a20a0,#2a1068 55%,#120430)}.level-clear{background:radial-gradient(ellipse at center,#012020,#033838 55%,#055050)}.compare-overlay,.timeout-screen{background:radial-gradient(ellipse at center,#1e2c40,#111c2e 55%,#080e18)}.win-screen{background:radial-gradient(ellipse at center,#012020,#033838 55%,#055050)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow:hidden;touch-action:none}body{font-family:Boogaloo,Nunito,sans-serif;background:#150b2e;color:#fff;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}
