:root{font-family:"Exo 2",sans-serif;--panel-bg: rgba(255, 255, 255, .03);--panel-bg-dark: rgba(0, 0, 0, .2);--panel-border: rgba(255, 255, 255, .1);--panel-radius: 24px;--text-color: #f1f5f9;--text-dark: #94a3b8;--accent-green: #10b981;--accent-green-shade: #047857;--accent-blue: #06b6d4;--accent-blue-shade: #0891b2;--accent-red: #f43f5e;--accent-red-shade: #be123c;--accent-magenta: #d946ef;--accent-magenta-shade: #a21caf;--accent-yellow: #fbbf24;--accent-yellow-shade: #b45309;--accent-orange: #fb923c;--accent-orange-shade: #c2410c;--accent-cyan: #22d3ee;--accent-cyan-shade: #0e7490;--sat: env(safe-area-inset-top);--sab: env(safe-area-inset-bottom);--sal: env(safe-area-inset-left);--sar: env(safe-area-inset-right);background-color:#0f172a}body.theme-day,.theme-day{--bg-start: #334155;--bg-end: #020617}body.theme-dusk,.theme-dusk{--bg-start: #4338ca;--bg-end: #1e1b4b}body.theme-night,.theme-night{--bg-start: #172554;--bg-end: #000000}body.theme-desert,.theme-desert{--bg-start: #9a3412;--bg-end: #2a1205}body.theme-alpine,.theme-alpine{--bg-start: #64748b;--bg-end: #0f172a}body.theme-crystal,.theme-crystal{--bg-start: #155e75;--bg-end: #083344}body.theme-sunset,.theme-sunset{--bg-start: #be123c;--bg-end: #4c0519}body.theme-cyber,.theme-cyber{--bg-start: #059669;--bg-end: #022c22}body.theme-volcanic,.theme-volcanic{--bg-start: #7f1d1d;--bg-end: #450a0a}body.theme-galaxy,.theme-galaxy{--bg-start: #4c1d95;--bg-end: #2e1065}body.theme-sunrise,.theme-sunrise{--bg-start: #134e4a;--bg-end: #042f2e}body.theme-my-world,.theme-my-world{--bg-start: #1e3a8a;--bg-end: #172554}body.theme-builder,.theme-builder{--bg-start: #3b82f6;--bg-end: #1e3a8a}.pt-safe{padding-top:var(--sat)}.pb-safe{padding-bottom:var(--sab)}.pl-safe{padding-left:var(--sal)}.pr-safe{padding-right:var(--sar)}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{width:100%;height:100%;margin:0;padding:0;overflow:hidden;overscroll-behavior:none;touch-action:none;position:fixed}.app-container{width:100%;height:100%;position:absolute;top:0;left:0;background:radial-gradient(circle at center,var(--bg-start) 0%,var(--bg-end) 100%);transition:background 3s ease-in-out;overflow:hidden}input,textarea{-webkit-user-select:text;user-select:text;touch-action:manipulation}body{color:var(--text-color);font-family:"Exo 2",sans-serif;font-weight:700;-webkit-font-smoothing:antialiased}body.is-dragging{cursor:grabbing}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.liquid-glass{background:#ffffff08;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 30px #0000001a,inset 0 0 0 1px #ffffff0d}.modern-panel{@apply liquid-glass rounded-3xl;color:var(--text-color)}.inset-panel{background-color:#0003;border:1px solid rgba(255,255,255,.05);border-radius:var(--panel-radius);color:var(--text-color)}.sharp-indicator{background-color:#0003;border:1px solid rgba(255,255,255,.05);border-radius:16px;color:var(--text-color)}.modern-button{background:linear-gradient(180deg,#ffffff14,#ffffff08);border:1px solid rgba(255,255,255,.1);color:var(--text-color);border-radius:14px;box-shadow:0 4px 12px #0000001a;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:all .2s cubic-bezier(.25,.8,.25,1);text-transform:uppercase;font-family:"Exo 2",sans-serif;font-weight:800;font-size:.75rem;letter-spacing:.05em;position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.modern-button:not(:disabled):active{transform:scale(.96);background:#ffffff1a}.modern-button:not(:disabled):hover{border-color:#ffffff40;background:#ffffff1a;box-shadow:0 8px 24px #00000026}.modern-button:disabled{background:#ffffff05!important;color:#fff3!important;border-color:#ffffff0d!important;cursor:not-allowed;transform:none}.run-button{background:linear-gradient(135deg,#10b981cc,#10b98166)!important;border-color:#10b98180!important;color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.2)}.run-button:hover:not(:disabled){background:linear-gradient(135deg,#10b981e6,#10b98180)!important;box-shadow:0 0 20px #10b98166}.game-title{font-family:Orbitron,sans-serif;font-weight:900;text-transform:uppercase;color:var(--text-color);letter-spacing:.1em}.score-value{font-family:Orbitron,sans-serif;font-weight:700;font-size:1.3rem;color:var(--text-color)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes zoomIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInBottomSmall{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInBottomFull{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideInRightSmall{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInLeftSmall{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}.animate-in{animation-duration:.3s;animation-fill-mode:both;animation-timing-function:cubic-bezier(.16,1,.3,1);will-change:transform,opacity;backface-visibility:hidden}.fade-in{animation-name:fadeIn}.zoom-in,.zoom-in-95{animation-name:zoomIn}.slide-in-from-bottom-2,.slide-in-from-bottom-4,.slide-in-from-bottom-8,.slide-in-from-bottom-10{animation-name:slideInBottomSmall}.slide-in-from-bottom-full{animation-name:slideInBottomFull}.slide-in-from-right-4{animation-name:slideInRightSmall}.slide-in-from-left-2{animation-name:slideInLeftSmall}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.duration-500{animation-duration:.5s}.duration-700{animation-duration:.7s}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-500{animation-delay:.5s}.delay-700{animation-delay:.7s}.bot-eye-group{transform-box:fill-box}.bot-eye-sclera{fill:#fff}.bot-eye-pupil{fill:#333}.bot-eye-angry{animation:angry-shake-anim .3s infinite}@keyframes angry-shake-anim{0%{transform:translate(0)}25%{transform:translate(-.5px)}50%{transform:translate(.5px)}75%{transform:translate(-.5px)}to{transform:translate(0)}}@keyframes eye-sad-tremble-anim{0%,to{transform:translateY(0)}50%{transform:translateY(.5px)}}.move-item-anim{width:44px;height:44px;background-color:#ffffffe6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:12px;border:1px solid rgba(255,255,255,.5);color:#1e293b;display:flex;align-items:center;justify-content:center;transition:transform .1s,background-color .2s;box-shadow:0 4px 6px #0000001a}.move-item-anim.executing{background-color:var(--accent-green);color:#fff;border-color:#ffffff80;transform:scale(1.1);z-index:10;box-shadow:0 0 15px var(--accent-green)}.move-item-anim.failed{background-color:var(--accent-red);border-color:#ffffff80;color:#fff;animation:shake .4s cubic-bezier(.36,.07,.19,.97) both}.move-item-anim.success-finish{background:linear-gradient(135deg,#fbbf24,#d97706);color:#fff;border-color:#fde68a;box-shadow:0 0 20px #fbbf2499;transform:scale(1.15);z-index:20}.move-item-anim.accepting{background-color:var(--accent-cyan);color:#fff;border-color:#ffffff80}.move-item-anim.faded-out{opacity:.4;filter:grayscale(.5);transform:scale(.9)}@keyframes move-enter-rotate{0%{opacity:0;transform:scale(.5) rotate(var(--enter-rot))}50%{opacity:1;transform:scale(1.15) rotate(calc(var(--enter-rot) * .2))}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes color-flash{0%{background-color:var(--accent-cyan);border-color:var(--accent-cyan);color:#fff}80%{background-color:#06b6d41a;border-color:var(--accent-cyan)}}.move-enter-anim{animation:move-enter-rotate .5s cubic-bezier(.2,.8,.2,1.2),color-flash .5s ease-out;transform-origin:center}@keyframes loader-bar{0%{width:0%;opacity:1}20%{width:25%}50%{width:60%}to{width:100%;opacity:1}}.animate-loader-bar{animation:loader-bar 1.8s cubic-bezier(.22,1,.36,1) infinite}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}@keyframes cloud-float{0%{transform:translate(0)}50%{transform:translate(20px)}to{transform:translate(0)}}.cloud-anim{animation:cloud-float 20s ease-in-out infinite}.thought-bubble{background:#ffffffe6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#1e293b;padding:8px 12px;border-radius:12px;font-family:"Exo 2",sans-serif;font-weight:800;font-size:.7rem;letter-spacing:.02em;position:relative;transform:translateY(-8px) scale(1);pointer-events:none;z-index:10000!important;text-align:center;min-width:auto;width:max-content;max-width:160px;line-height:1.25;animation:bubble-pop-in .3s cubic-bezier(.175,.885,.32,1.275) forwards;box-shadow:0 4px 15px #00000026;white-space:normal;border:1px solid rgba(255,255,255,.8)}.thought-bubble.exiting{animation:bubble-pop-out .25s cubic-bezier(.4,0,1,1) forwards}.thought-bubble:after{content:"";position:absolute;bottom:-5px;left:50%;transform:translate(-50%) rotate(45deg);width:10px;height:10px;background-color:#ffffffe6;z-index:1;border-right:1px solid rgba(255,255,255,.8);border-bottom:1px solid rgba(255,255,255,.8)}.element-hint-bubble{background:#fffcebf5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#334155;padding:10px 14px;border-radius:14px;border:1px solid rgba(251,191,36,.4);font-family:"Exo 2",sans-serif;font-weight:600;font-size:.7rem;letter-spacing:.02em;position:relative;transform:translateY(0) scale(1);pointer-events:none;z-index:10000!important;text-align:center;width:max-content;max-width:160px;line-height:1.35;animation:bubble-pop-in .4s cubic-bezier(.175,.885,.32,1.275) forwards;box-shadow:0 8px 20px #00000026}.element-hint-bubble:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%) rotate(45deg);width:12px;height:12px;background-color:#fffcebf5;z-index:1;border-right:1px solid rgba(251,191,36,.4);border-bottom:1px solid rgba(251,191,36,.4);border-radius:0 0 2px}.element-hint-title{display:block;color:#d97706;font-weight:900;text-transform:uppercase;font-size:.65rem;letter-spacing:.05em;margin-bottom:3px;border-bottom:1px solid rgba(251,191,36,.2);padding-bottom:3px}@keyframes bubble-pop-in{0%{opacity:0;transform:translateY(0) scale(.5)}to{opacity:1;transform:translateY(-8px) scale(1)}}@keyframes bubble-pop-out{0%{opacity:1;transform:translateY(-8px) scale(1)}40%{opacity:1;transform:translateY(-12px) scale(1.1)}to{opacity:0;transform:translateY(0) scale(0)}}.score-popup{position:absolute;font-family:Orbitron,sans-serif;font-weight:900;font-size:2rem;color:var(--accent-yellow);pointer-events:none;animation:score-float-up .7s ease-out forwards;white-space:nowrap;text-shadow:0 0 10px rgba(0,0,0,.5)}@keyframes score-float-up{0%{opacity:0;transform:translateY(0) scale(.5)}10%{opacity:1;transform:translateY(-20px) scale(1.2)}to{opacity:0;transform:translateY(-100px) scale(1)}}@keyframes intense-pulse{0%,to{opacity:1;transform:scale(1);filter:brightness(1.2)}50%{opacity:.2;transform:scale(1.3);filter:brightness(.8)}}.animate-intense-pulse{animation:intense-pulse 1s cubic-bezier(.4,0,.6,1) infinite}.greeting-container{position:relative;z-index:1000;left:auto;width:auto;text-align:center;pointer-events:none;white-space:nowrap;transform:translateY(0);letter-spacing:.15em;display:flex;justify-content:center;gap:8px}.greeting-char{display:inline-block;color:var(--char-color);font-size:clamp(1.4rem,5vw,2.8rem);font-family:Orbitron,sans-serif;font-weight:900;line-height:1;opacity:0;transform-origin:center center;animation-name:char-fly-center;animation-fill-mode:forwards;will-change:transform,opacity;text-shadow:0 4px 10px rgba(0,0,0,.3)}@keyframes char-fly-center{0%{opacity:0;transform:translateY(30px) scale(.5) rotate(var(--char-rot));animation-timing-function:cubic-bezier(.34,1.56,.64,1)}10%{opacity:1;color:#fff;transform:translate(var(--char-x-start)) scale(1) rotate(var(--char-rot))}20%{color:var(--char-color)}80%{opacity:1}to{opacity:0;transform:translate(var(--char-x-end),-30px) scale(1.1) rotate(calc(var(--char-rot) * 1.2))}}.tutorial-swipe-container{width:100px;height:100px;display:flex;align-items:center;justify-content:center}.tutorial-swipe-circle{width:40px;height:40px;border-radius:50%;background-color:#ffffffe6;box-shadow:0 0 20px #ffffff80;animation:simple-swipe-anim 2s infinite ease-in-out;opacity:0}@keyframes simple-swipe-anim{0%{opacity:0;transform:translateY(40px) scale(.5)}20%{opacity:.8;transform:translateY(20px) scale(1)}60%{opacity:.8;transform:translateY(-20px) scale(1)}85%{opacity:0;transform:translateY(-40px) scale(.5)}to{opacity:0;transform:translateY(-40px) scale(.5)}}.tap-gesture-container{width:80px;height:80px;position:relative;display:flex;align-items:center;justify-content:center}.tap-gesture-dot{width:24px;height:24px;background-color:#ffffffe6;border-radius:50%;box-shadow:0 0 10px #ffffff80;animation:tap-dot-anim 1.5s infinite}.tap-gesture-ring{position:absolute;width:100%;height:100%;border:4px solid rgba(255,255,255,.6);border-radius:50%;opacity:0;animation:tap-ring-anim 1.5s infinite}@keyframes tap-dot-anim{0%{transform:scale(1)}10%{transform:scale(.9)}20%{transform:scale(1)}to{transform:scale(1)}}@keyframes tap-ring-anim{0%{transform:scale(.4);opacity:0}10%{opacity:1}50%{transform:scale(1.1);opacity:0}to{opacity:0}}.screen-fog-layer{position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;width:200%;height:200%;background-image:radial-gradient(circle at center,transparent 30%,var(--fog-color) 70%);opacity:.3;pointer-events:none;animation:fog-pulse 10s ease-in-out infinite alternate}@keyframes fog-pulse{0%{transform:scale(1);opacity:.2}to{transform:scale(1.1);opacity:.4}}
