@import"https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&display=swap";:root{color-scheme:dark;font-family:Fredoka,ui-sans-serif,system-ui,sans-serif;line-height:1.4;--bg: #1a0e2e;--bg-card: #2a1a4e;--accent: #ffb347;--accent2: #ff6b6b;--accent3: #4ecdc4;--text: #fef3e2;--text-dim: rgba(254, 243, 226, .6);--cell-size: clamp(36px, 10vw, 56px);--board-gap: 3px;--board-radius: 16px}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100vh;background:var(--bg);color:var(--text);overflow-x:hidden}body{background:radial-gradient(ellipse at 20% 0%,rgba(255,179,71,.15) 0%,transparent 50%),radial-gradient(ellipse at 80% 100%,rgba(78,205,196,.12) 0%,transparent 50%),var(--bg)}.app{max-width:520px;margin:0 auto;padding:12px 12px 24px;display:flex;flex-direction:column;gap:12px;min-height:100vh;position:relative}.header{display:flex;justify-content:space-between;align-items:center;padding:8px 4px}.header-left{display:flex;align-items:center;gap:12px}.game-title{display:flex;align-items:center;gap:6px}.title-emoji{font-size:1.6rem;filter:drop-shadow(0 2px 4px rgba(255,179,71,.5))}h1{margin:0;font-size:1.4rem;font-weight:700;background:linear-gradient(135deg,#ffb347,#ff6b6b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em}.level-badge{font-size:.7rem;font-weight:600;padding:3px 10px;border-radius:20px;background:linear-gradient(135deg,var(--accent3),#2ecc71);color:#1a0e2e;letter-spacing:.05em;text-transform:uppercase}.header-right{display:flex;gap:16px}.stat{display:flex;flex-direction:column;align-items:center;gap:0}.stat-label{font-size:.6rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim)}.stat-value{font-size:1.3rem;font-weight:700;color:var(--accent);line-height:1}.moves-low{color:var(--accent2)!important;animation:pulse .8s ease-in-out infinite}.progress-container{display:flex;align-items:center;gap:8px;padding:0 4px}.progress-bar{flex:1;height:12px;border-radius:8px;background:#ffffff14;position:relative;overflow:visible}.progress-fill{height:100%;border-radius:8px;background:linear-gradient(90deg,var(--accent),#ff6b6b,var(--accent2));transition:width .4s cubic-bezier(.34,1.56,.64,1);box-shadow:0 0 12px #ff6b6b66}.progress-star{position:absolute;top:-6px;transform:translate(-50%) scale(1);font-size:1.1rem;transition:left .4s cubic-bezier(.34,1.56,.64,1);filter:drop-shadow(0 0 4px rgba(255,215,0,.6));animation:starFloat 2s ease-in-out infinite}.progress-label{font-size:.7rem;color:var(--text-dim);white-space:nowrap;min-width:60px;text-align:right}.combo-banner{text-align:center;animation:comboIn .4s cubic-bezier(.34,1.56,.64,1)}.combo-text{font-size:1.6rem;font-weight:700;background:linear-gradient(135deg,#ffb347,#ff6b6b,#4ecdc4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:none;filter:drop-shadow(0 2px 8px rgba(255,107,107,.4))}.board-wrapper{display:flex;justify-content:center}.board{display:grid;grid-template-columns:repeat(8,var(--cell-size));grid-template-rows:repeat(8,var(--cell-size));gap:var(--board-gap);padding:10px;border-radius:var(--board-radius);background:linear-gradient(145deg,#2a1a4ee6,#1a0e2ef2);border:2px solid rgba(255,179,71,.15);box-shadow:0 8px 32px #0006,inset 0 1px #ffffff0d;position:relative}.board:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:calc(var(--board-radius) + 2px);background:linear-gradient(145deg,#ffb34733,#4ecdc41a);z-index:-1;filter:blur(8px)}.cell{width:var(--cell-size);height:var(--cell-size);border-radius:10px;border:2px solid transparent;background:#ffffff0a;cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative;transition:all .15s ease;padding:0;outline:none;font-family:inherit}.cell:hover{background:#ffffff14;transform:scale(1.06);border-color:#ffb3474d}.cell:active{transform:scale(.94)}.cell.selected{border-color:var(--accent);background:#ffb34726;box-shadow:0 0 16px #ffb3474d,inset 0 0 8px #ffb3471a;animation:selectedPulse 1s ease-in-out infinite}.cell.hint{animation:hintWiggle .6s ease-in-out infinite}.select-ring{position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:12px;border:2px solid var(--accent);animation:ringPulse 1.2s ease-in-out infinite;pointer-events:none}.fruit{font-size:calc(var(--cell-size) * .6);line-height:1;filter:drop-shadow(0 2px 3px rgba(0,0,0,.3));transition:transform .2s ease;-webkit-user-select:none;user-select:none}.cell:hover .fruit{transform:scale(1.1)}.boosters{display:flex;gap:8px;justify-content:center;padding:4px}.booster-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 14px;border-radius:14px;border:2px solid rgba(255,255,255,.1);background:#ffffff0a;cursor:pointer;transition:all .2s ease;color:var(--text);font-family:inherit;outline:none}.booster-btn:hover:not(.disabled){border-color:var(--accent);background:#ffb3471a;transform:translateY(-2px)}.booster-btn.active{border-color:var(--accent);background:#ffb34733;box-shadow:0 0 16px #ffb3474d;animation:boosterGlow 1s ease-in-out infinite}.booster-btn.disabled{opacity:.3;cursor:not-allowed}.booster-emoji{font-size:1.4rem}.booster-name{font-size:.55rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim)}.booster-count{font-size:.65rem;font-weight:700;color:var(--accent)}.overlay,.tutorial-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0514d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:grid;place-items:center;z-index:100;animation:fadeIn .3s ease}.tutorial-card,.result-card{background:linear-gradient(145deg,var(--bg-card),#1a0e2e);border:2px solid rgba(255,179,71,.2);border-radius:20px;padding:32px 28px;text-align:center;max-width:340px;width:90%;box-shadow:0 16px 48px #00000080;animation:popIn .4s cubic-bezier(.34,1.56,.64,1)}.tutorial-card h2,.result-card h2{margin:0 0 16px;font-size:1.5rem;font-weight:700}.tutorial-card ul{text-align:left;padding-left:20px;margin:0 0 20px;display:flex;flex-direction:column;gap:8px}.tutorial-card li{color:var(--text-dim);font-size:.85rem}.result-emoji{font-size:3rem;margin-bottom:8px}.result-card.won .result-emoji{animation:celebrateBounce .6s ease infinite alternate}.result-score{font-size:1.8rem;font-weight:700;color:var(--accent);margin:8px 0}.result-msg{color:var(--text-dim);margin:0 0 20px;font-size:.9rem}.btn-primary{background:linear-gradient(135deg,var(--accent),#ff6b6b);color:#1a0e2e;border:none;padding:12px 28px;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer;font-family:inherit;transition:all .2s ease;box-shadow:0 4px 16px #ff6b6b4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 24px #ff6b6b66}.btn-primary:active{transform:translateY(0)}.particles-layer{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:200}.particle{position:absolute;font-size:1.2rem;-webkit-user-select:none;user-select:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes selectedPulse{0%,to{box-shadow:0 0 12px #ffb3474d}50%{box-shadow:0 0 24px #ffb34780}}@keyframes ringPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.08)}}@keyframes hintWiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-8deg)}75%{transform:rotate(8deg)}}@keyframes comboIn{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}@keyframes starFloat{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-3px)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes celebrateBounce{0%{transform:translateY(0) scale(1)}to{transform:translateY(-8px) scale(1.1)}}@keyframes boosterGlow{0%,to{box-shadow:0 0 12px #ffb3474d}50%{box-shadow:0 0 24px #ffb34780}}
