:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;background:radial-gradient(circle at 50% 0%,#4c1d95,#1e1b4b,#000);color:#ffffffde;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;user-select:none;-webkit-user-select:none;touch-action:none;overflow:hidden}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh;min-height:100dvh;justify-content:center;background:#000}#app{width:100%;max-width:500px;height:100vh;height:100dvh;position:relative;overflow:hidden;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#ffffff0d}::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}@keyframes comboZoom{0%{transform:translate(-50%,-50%) scale(.5);opacity:0}50%{transform:translate(-50%,-50%) scale(1.2);opacity:1}to{transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes floatUp{0%{transform:translate(-50%,-50%) scale(.8);opacity:0}20%{transform:translate(-50%,-100%) scale(1.2);opacity:1}to{transform:translate(-50%,-200%) scale(1);opacity:0}}.app-container{width:100%;height:100%;max-width:500px;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 0 50px #00000080}.glass-panel{background:#ffffff08;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 32px #0000004d}.glass-card{background:linear-gradient(135deg,#ffffff14,#ffffff05);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:16px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 10px 30px #0000004d,inset 0 1px #fff3;transition:transform .1s cubic-bezier(.4,0,.2,1),box-shadow .1s}.glass-card:active{transform:scale(.98);background:#ffffff14}button{font-family:Inter,sans-serif;cursor:pointer;border:none;outline:none;-webkit-tap-highlight-color:transparent;display:inline-flex;align-items:center;justify-content:center;font-weight:700;letter-spacing:.5px;position:relative;overflow:hidden}button:after{content:"";position:absolute;top:50%;left:50%;width:100%;height:100%;background:#fff3;border-radius:50%;transform:translate(-50%,-50%) scale(0);opacity:0;pointer-events:none;transition:transform .4s,opacity .4s}button:active:after{transform:translate(-50%,-50%) scale(2);opacity:1;transition:0s}.btn-primary{background:linear-gradient(135deg,gold,orange);color:#1a0b2e;border-radius:12px;box-shadow:0 4px 15px #fa06,inset 0 1px #fff6;transition:transform .1s,box-shadow .2s,filter .2s;text-transform:uppercase;font-size:.9em}.btn-primary:active{transform:scale(.96);box-shadow:0 2px 8px #ffaa004d;filter:brightness(.95)}.booster-btn.suggested{animation:boosterGlow 1.2s infinite alternate;border:3px solid gold;z-index:100}@keyframes boosterGlow{0%{box-shadow:0 0 10px gold;transform:scale(1);filter:brightness(1)}to{box-shadow:0 0 30px gold,0 0 50px orange;transform:scale(1.15);filter:brightness(1.5)}}.suggestion-arrow{position:absolute;top:-45px;font-size:2.2em;animation:arrowBounce .5s infinite alternate;pointer-events:none;filter:drop-shadow(0 0 8px gold);z-index:101}@keyframes arrowBounce{0%{transform:translateY(0)}to{transform:translateY(-12px)}}.on-fire-vignette{position:fixed;inset:0;pointer-events:none;z-index:1000;background:radial-gradient(circle at center,transparent 40%,rgba(255,69,0,.4) 100%);opacity:0;transition:opacity .5s}.on-fire-active .on-fire-vignette{opacity:1;animation:firePulseSimple 1s infinite alternate}@keyframes firePulseSimple{0%{opacity:.4}to{opacity:1}}.fire-text{animation:textHot .3s infinite alternate;color:gold!important;text-shadow:0 0 20px #FF4500,0 0 40px #FF0000}@keyframes textHot{0%{transform:scale(1);filter:brightness(1)}to{transform:scale(1.1);filter:brightness(1.5)}}.btn-secondary{background:#ffffff1a;border:1px solid rgba(255,255,255,.15);color:#fff;border-radius:12px;padding:8px 16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:.2s}.btn-secondary:active,.btn-secondary:hover{background:#fff3;border-color:#ffffff4d;transform:scale(.96)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:fadeInUp .4s cubic-bezier(.165,.84,.44,1) forwards}@keyframes block-placed-pop{0%{transform:scale(.6);box-shadow:0 0 50px #fff;filter:brightness(2)}50%{transform:scale(1.15);box-shadow:0 0 20px #ffffff80;filter:brightness(1.5)}to{transform:scale(1);box-shadow:0 0 0 transparent;filter:brightness(1)}}.placed-pop{animation:block-placed-pop .15s cubic-bezier(.175,.885,.32,1.275) forwards}@keyframes spawn-block{0%{transform:scale(0) translateY(20px);opacity:0}60%{transform:scale(1.1) translateY(-5px);opacity:1}to{transform:scale(1) translateY(0);opacity:1}}.spawned-block{animation:spawn-block .3s cubic-bezier(.34,1.56,.64,1) backwards}.board-wrapper{display:flex;justify-content:center;align-items:center;padding:10px}.board-grid{display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);gap:3px;width:100%;aspect-ratio:1;background:#14141e99;padding:6px;box-shadow:0 20px 50px #00000080,inset 0 0 0 1px #ffffff0d;position:relative}.cell{background:#ffffff05;border-radius:4px;position:relative}.cell:after{content:"";position:absolute;inset:0;border-radius:4px;border:1px solid var(--cell-border-color, rgba(255, 255, 255, .08));opacity:1}.block-slot{width:85px;height:85px;display:flex;align-items:center;justify-content:center;background:#ffffff08;border-radius:16px;border:1px solid rgba(255,255,255,.05)}.block-cell-filled,.cell.filled{width:100%;height:100%;border-radius:4px;box-shadow:inset 3px 3px 5px #ffffff80,inset -3px -3px 6px #0009,0 4px 6px #00000080;border:1px solid rgba(0,0,0,.4);transform:translateZ(0);transition:filter .1s,transform .1s;position:relative;box-sizing:border-box}.block-cell-filled:after,.cell.filled:after{content:"";position:absolute;inset:20%;background:inherit;border-radius:2px;box-shadow:inset -1px -1px 2px #fff6,inset 1px 1px 2px #0006;filter:brightness(1.2)}.block-cell-filled:hover{filter:brightness(1.2)}.cell.filled{width:auto;height:auto}.feedback-float{font-family:Outfit,sans-serif;text-shadow:0 4px 10px rgba(0,0,0,.5);filter:drop-shadow(0 0 10px rgba(255,255,255,.3))}.loader{border:3px solid rgba(255,255,255,.1);border-top:3px solid gold;border-radius:50%;width:24px;height:24px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes combo-pulse{0%{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.05);filter:brightness(1.5) drop-shadow(0 0 10px gold)}to{transform:scale(1);filter:brightness(1)}}@keyframes combo-shake{0%,to{transform:translate(0)}25%{transform:translate(-2px,2px)}50%{transform:translate(2px,-2px)}75%{transform:translate(-2px,-2px)}}.combo-container.active{animation:combo-pulse 1s infinite ease-in-out}.fire-active{animation:combo-shake .1s infinite linear}@keyframes combo-text-pop{0%{transform:translate(-50%,-50%) scale(.5);opacity:0}20%{transform:translate(-50%,-50%) scale(1.3);opacity:1}to{transform:translate(-50%,-100%) scale(1);opacity:0}}#combo-feedback-floating{animation:combo-text-pop 1s cubic-bezier(.19,1,.22,1) forwards}.skin-neon{box-shadow:inset 0 0 0 1px #ffffff80,0 0 10px currentColor!important;border-radius:2px!important}.skin-wood{background-image:repeating-linear-gradient(45deg,rgba(0,0,0,.1) 0px,rgba(0,0,0,.1) 2px,transparent 2px,transparent 4px)!important;border:1px solid rgba(0,0,0,.2)!important;box-shadow:inset 2px 2px #ffffff1a,inset -2px -2px #0000004d!important}.skin-metal{background-image:linear-gradient(135deg,#fff6,#0003)!important;border:1px solid rgba(255,255,255,.4)!important}.skin-emerald{background-image:radial-gradient(circle at 30% 30%,rgba(255,255,255,.4),transparent),linear-gradient(135deg,#065f46,#064e3b)!important;box-shadow:inset 0 0 10px #00ff8080,0 0 15px #065f4666!important;border:1px solid #10b981!important}.skin-ruby{background-image:radial-gradient(circle at 30% 30%,rgba(255,255,255,.4),transparent),linear-gradient(135deg,#991b1b,#7f1d1d)!important;box-shadow:inset 0 0 10px #ff000080,0 0 15px #991b1b66!important;border:1px solid #ef4444!important}.skin-gold{background-image:linear-gradient(135deg,#fef3c7,#f59e0b,#b45309)!important;box-shadow:inset 1px 1px #fffc,0 4px 10px #b4530980!important;border:1px solid #d97706!important}.skin-candy{border-radius:50%!important;box-shadow:inset 3px 3px 5px #fff9,inset -3px -3px 5px #0000004d!important}.skin-diamond{background-image:linear-gradient(135deg,#fffc,#fff0 50%),linear-gradient(45deg,#e0f2fe,#7dd3fc)!important;box-shadow:0 0 15px #7dd3fc99!important;clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%)}.profile-title-badge{background:linear-gradient(90deg,gold,orange);color:#000;font-weight:900;padding:4px 10px;border-radius:20px;font-size:.7em;letter-spacing:.5px;box-shadow:0 2px 5px #0003}.pulse-gold{animation:pulseGold 2s infinite}@keyframes pulseGold{0%{box-shadow:0 0 #ffd70066}70%{box-shadow:0 0 0 10px #ffd70000}to{box-shadow:0 0 #ffd70000}}.shine-effect{position:relative;overflow:hidden}.shine-effect:after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transform:skew(-20deg);animation:shine 3s infinite}@keyframes shine{0%{left:-100%}20%{left:200%}to{left:200%}}#auth-username{display:none}#google-login-footer,#toggle-auth-mode-btn,#auth-submit-btn,#open-auth-modal-btn,#logout-btn,.auth-separator{display:none!important}@keyframes clearRGBFast{0%{transform:scale(1);filter:hue-rotate(0deg) brightness(2) drop-shadow(0 0 10px white);opacity:1}20%{transform:scale(1.2);filter:hue-rotate(90deg) brightness(2.5) drop-shadow(0 0 20px cyan);opacity:1}50%{transform:scale(.8);filter:hue-rotate(180deg) brightness(3) drop-shadow(0 0 30px magenta);opacity:.8}to{transform:scale(0);filter:hue-rotate(360deg) brightness(1);opacity:0}}.clearing-rgb{animation:clearRGBFast .35s cubic-bezier(.25,1,.5,1) forwards!important;z-index:100!important;position:relative!important;will-change:transform,opacity,filter;border-radius:50%!important}@keyframes okeyBlink{0%,to{opacity:0;transform:translate(-50%,-50%) scale(.5)}25%,75%{opacity:1;transform:translate(-50%,-50%) scale(1.2);text-shadow:0 0 10px #10B981,0 0 20px #10B981}}.okey-tick{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:1.6rem;font-weight:900;pointer-events:none;z-index:101;animation:okeyBlink .15s ease-in-out 2}@keyframes block-hover-pulse{0%{filter:brightness(1);transform:scale(1)}50%{filter:brightness(1.3);transform:scale(1.05)}to{filter:brightness(1);transform:scale(1)}}.block-slot>div{animation:block-hover-pulse 3s infinite ease-in-out}.booster-btn{width:62px!important;height:62px!important;min-width:62px!important;min-height:62px!important;padding:0!important;border-radius:18px!important;background:#ffffff1f!important;border:1.5px solid rgba(255,255,255,.2)!important;color:#fff!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;position:relative!important;transition:all .2s cubic-bezier(.175,.885,.32,1.275)!important;cursor:pointer!important;box-shadow:0 6px 15px #0006!important;overflow:visible!important}.booster-btn .icon{font-size:2em!important;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.booster-btn .badge{position:absolute;bottom:-6px;right:-6px;font-size:13px!important;font-weight:900!important;color:#fff!important;background:red;padding:2px 8px;border-radius:10px;line-height:1!important;border:1.5px solid #fff;box-shadow:0 3px 6px #00000080;min-width:14px;text-align:center;z-index:10}.booster-btn:active{transform:scale(.9)!important;background:#fff3!important}@keyframes mission-toast-in{0%{transform:translate(-50%,-50px) scale(.8);opacity:0}15%{transform:translate(-50%) scale(1.1);opacity:1}25%{transform:translate(-50%) scale(1);opacity:1}85%{transform:translate(-50%) scale(1);opacity:1}to{transform:translate(-50%,-100px) scale(.9);opacity:0}}.mission-toast{position:fixed;top:80px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:15px 30px;border-radius:50px;font-weight:900;z-index:999999;box-shadow:0 10px 30px #10b98180;border:2px solid rgba(255,255,255,.3);display:flex;align-items:center;gap:12px;pointer-events:none;animation:mission-toast-in 3.5s cubic-bezier(.175,.885,.32,1.275) forwards;white-space:nowrap}@keyframes ghost-pulse{0%{opacity:.3;transform:scale(1)}50%{opacity:.5;transform:scale(1.02)}to{opacity:.3;transform:scale(1)}}.ghost-block-active{animation:ghost-pulse 1.5s infinite ease-in-out;filter:brightness(1.2) drop-shadow(0 0 5px rgba(255,255,255,.3))}@keyframes danger-pulse{0%{opacity:0}50%{opacity:.4}to{opacity:0}}.danger-vignette{position:fixed;inset:0;pointer-events:none;z-index:8888;background:radial-gradient(circle,transparent 40%,rgba(239,68,68,.4) 110%);opacity:0;transition:opacity .5s}.danger-vignette.active{animation:danger-pulse 1.2s infinite ease-in-out}@keyframes shockwave{0%{transform:scale(1);opacity:1;border:2px solid white}to{transform:scale(1.5);opacity:0;border:10px solid gold}}.shockwave{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100px;height:100px;border-radius:50%;z-index:9999;pointer-events:none;animation:shockwave .6s ease-out forwards}
