@import"https://fonts.googleapis.com/css2?family=Quicksand:wght@400;500;600;700&family=Cinzel:wght@400;700&display=swap";:root{--bg-1: #0a0e2a;--bg-2: #1a2050;--text: #f0f2ff;--soft: rgba(255, 255, 255, .13);--panel: rgba(10, 14, 42, .55);--accent: #ff6fb6;--accent-2: #ffd166;--good: #7ef0b5;--neon: #c084fc;--radius: 20px}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden;font-family:Quicksand,Segoe UI,Inter,Arial,sans-serif;background:radial-gradient(ellipse at 50% 10%,#3b1f6a,#18224f 40%,#070c1f);color:var(--text)}body{touch-action:none;user-select:none;-webkit-user-select:none}#scene{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;z-index:0}#ui-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;pointer-events:none}#ui-root .hud,#ui-root .combo,#ui-root .powerup-tray,#ui-root .action-buttons,#ui-root .bottom-message{opacity:0;visibility:hidden;transition:opacity .5s ease,visibility .5s ease}#ui-root.in-game .hud,#ui-root.in-game .action-buttons,#ui-root.in-game .bottom-message,#ui-root.in-game .combo.active,#ui-root.in-game .powerup-tray.active{opacity:1;visibility:visible}#ui-root.photo-mode .hud,#ui-root.photo-mode .bottom-message,#ui-root.photo-mode #btn-day-night{opacity:0;pointer-events:none;transition:opacity .4s ease}#ui-root.photo-mode .action-buttons{pointer-events:auto}.glass{background:var(--panel);border:1px solid rgba(255,255,255,.14);box-shadow:inset 0 1px #ffffff1f,0 24px 64px #00000061;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.hud{position:absolute;top:16px;left:16px;width:min(340px,calc(100vw - 32px));border-radius:var(--radius);padding:14px 16px 12px;transition:opacity .4s ease}.hud-title{font-family:Cinzel,serif;font-size:16px;font-weight:700;letter-spacing:.5px;margin-bottom:12px;background:linear-gradient(90deg,#ff8bd0,#ffd166,#7ef0b5);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hud-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px 10px}.hud-stat{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:600;opacity:.92}.hud-icon{font-size:14px}.hud-val{font-weight:700;color:var(--accent-2);margin-left:auto;font-size:13px}.hud-unit{font-size:11px;opacity:.7}.energy-bar{width:100%;height:8px;margin-top:10px;border-radius:999px;overflow:hidden;background:#ffffff1a}.energy-bar-fill{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,#ff6fb6,#ffd166,#7ef0b5);transition:width .15s ease;box-shadow:0 0 8px #ff6fb699}.hud-time{display:flex;align-items:center;gap:5px;margin-top:8px;font-size:12px;font-weight:600;opacity:.8;color:#c0d8ff}.action-buttons{position:absolute;top:16px;right:16px;display:flex;flex-direction:column;gap:8px;pointer-events:auto;transition:opacity .4s ease}.action-btn{width:44px;height:44px;border-radius:14px;border:none;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;color:var(--text);transition:transform .15s ease,box-shadow .15s ease}.action-btn:hover{transform:scale(1.1);box-shadow:0 8px 24px #ff6fb666}.action-btn:active{transform:scale(.94)}.bottom-message{position:absolute;left:16px;right:16px;bottom:16px;min-height:48px;border-radius:16px;padding:12px 16px;font-size:14px;font-weight:500;line-height:1.5;pointer-events:none;transition:opacity .4s ease}.menu-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 40%,#50148c80,#050a1ca6);pointer-events:auto}.menu-card{width:min(620px,calc(100vw - 40px));padding:36px 38px 32px;border-radius:28px;text-align:center;animation:fadeScaleIn .6s cubic-bezier(.175,.885,.32,1.275) both}@keyframes fadeScaleIn{0%{opacity:0;transform:scale(.88) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.menu-logo{font-size:72px;line-height:1;margin-bottom:14px;filter:drop-shadow(0 0 24px rgba(255,150,200,.8));animation:pulse 2.4s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.menu-card h1{font-family:Cinzel,serif;margin:0 0 8px;font-size:clamp(28px,5vw,54px);font-weight:700;line-height:1.1;letter-spacing:.5px}.menu-card h1 span{background:linear-gradient(90deg,#ff8bd0,#ffd166);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.menu-card p{margin:0 0 18px;font-size:15px;opacity:.85;line-height:1.6}.menu-legend{display:flex;flex-wrap:wrap;gap:8px 14px;justify-content:center;margin-bottom:4px;font-size:13px;opacity:.7;font-weight:500}.btn-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.25),transparent 70%);pointer-events:none}.hud-progress{margin-top:8px}.hud-progress-label{display:block;font-size:11px;font-weight:600;opacity:.78;margin-bottom:4px;color:#c9f7df}.level-bar{width:100%;height:6px;border-radius:999px;overflow:hidden;background:#ffffff1a}.level-bar-fill{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,#7ef0b5,#8bdcff,#c084fc);transition:width .2s ease;box-shadow:0 0 8px #7ef0b599}.loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;align-content:center;gap:18px;background:radial-gradient(ellipse at 50% 40%,#2a1550,#0a0e2a 70%,#05060f);transition:opacity .5s ease}.loading-overlay[hidden]{display:none}.loading-overlay.fade-out{opacity:0;pointer-events:none}.loading-flower{font-size:64px;line-height:1;filter:drop-shadow(0 0 24px rgba(255,150,200,.8));animation:pulse 1.6s ease-in-out infinite}.loading-text{font-family:Cinzel,serif;font-size:16px;letter-spacing:.5px;opacity:.9}.loading-bar{width:min(240px,60vw);height:6px;border-radius:999px;overflow:hidden;background:#ffffff1f}.loading-bar-fill{width:40%;height:100%;border-radius:999px;background:linear-gradient(90deg,#ff8bd0,#ffd166,#7ef0b5);animation:loadingSlide 1.1s ease-in-out infinite}@keyframes loadingSlide{0%{transform:translate(-120%)}to{transform:translate(320%)}}.fx-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;pointer-events:none;overflow:hidden}.fx-pop{position:absolute;transform:translate(-50%,-50%);font-weight:700;font-size:22px;color:var(--accent-2);text-shadow:0 2px 10px rgba(0,0,0,.6),0 0 14px rgba(255,209,102,.8);animation:fxFloat .9s cubic-bezier(.2,.7,.3,1) forwards;will-change:transform,opacity}@keyframes fxFloat{0%{opacity:0;transform:translate(-50%,-50%) scale(.6)}25%{opacity:1;transform:translate(-50%,-90%) scale(1.1)}to{opacity:0;transform:translate(-50%,-190%) scale(1)}}.fx-pop.combo{font-size:28px;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.6),0 0 18px rgba(255,122,233,.9)}#start-button:focus-visible,.action-btn:focus-visible{outline:3px solid #ffe9a8;outline-offset:3px}@media(max-height:560px){.menu-overlay{place-items:center;overflow-y:auto}.menu-card{padding:18px 24px 16px}.menu-logo{font-size:44px;margin-bottom:6px}.menu-subtitle{margin-bottom:10px;font-size:13px}.menu-legend{margin-bottom:14px;gap:4px 10px}}@media(max-width:420px){.hud{top:10px;left:10px;padding:12px 13px 10px}.action-buttons{top:10px;right:10px}.bottom-message{left:10px;right:10px;bottom:10px;font-size:13px}}@media(prefers-reduced-motion:reduce){.menu-logo,.loading-flower,.loading-bar-fill{animation:none}}.menu-overlay{background:linear-gradient(135deg,#3a1466,#5b1d7a,#2a1c66,#142a6a,#0a1444);background-size:400% 400%;animation:menuGradient 18s ease infinite;overflow:hidden}@keyframes menuGradient{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.menu-petals{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.menu-petals .petal{position:absolute;top:-40px;font-size:22px;opacity:.8;will-change:transform;animation:petalFall linear infinite}@keyframes petalFall{0%{transform:translateY(-40px) translate(0) rotate(0);opacity:0}10%{opacity:.85}to{transform:translateY(110vh) translate(60px) rotate(360deg);opacity:0}}.menu-card{position:relative;z-index:2}.menu-buttons{display:flex;flex-direction:column;gap:10px;margin:6px 0 20px}.menu-btn{position:relative;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:16px;padding:14px 28px;font-size:16px;font-weight:700;font-family:Quicksand,sans-serif;cursor:pointer;color:#fff;letter-spacing:.3px;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease,background .2s ease}.menu-btn.primary{background:linear-gradient(135deg,#d63fc9,#ff6fb6,#ff9f43);box-shadow:0 10px 32px #d63fc96b,0 0 0 1px #ffffff1f}.menu-btn.primary:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 16px 44px #d63fc98f,0 0 0 1px #ffffff2e}#btn-continue.primary{background:linear-gradient(135deg,#3fd6a0,#6fd0ff,#c084fc);box-shadow:0 10px 32px #3fd6a06b,0 0 0 1px #ffffff1f}.menu-btn.ghost{background:#ffffff14;border:1px solid rgba(255,255,255,.16);font-size:14px;font-weight:600;padding:11px 20px}.menu-btn.ghost:hover{background:#ffffff29;transform:translateY(-1px)}.menu-btn:active{transform:scale(.97)}.menu-save{display:flex;justify-content:center;gap:18px;margin:4px 0 14px;font-size:14px;font-weight:600;color:#c9f7df}.menu-save b{color:#ffd166}.menu-save[hidden]{display:none}.combo{position:absolute;top:16px;left:50%;transform:translate(-50%);padding:8px 16px;border-radius:16px;text-align:center;min-width:120px}.combo-mult{font-family:Cinzel,serif;font-size:26px;font-weight:700;line-height:1;background:linear-gradient(90deg,#ffd166,#ff6fb6,#c084fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.combo-bar{width:100%;height:5px;margin:6px 0 3px;border-radius:999px;overflow:hidden;background:#ffffff1f}.combo-bar-fill{height:100%;width:100%;border-radius:999px;background:linear-gradient(90deg,#ff6fb6,#ffd166);transition:width .1s linear}.combo-label{font-size:10px;letter-spacing:2px;font-weight:700;opacity:.7}.combo.bump{animation:comboBump .25s ease}@keyframes comboBump{0%{transform:translate(-50%) scale(1)}50%{transform:translate(-50%) scale(1.12)}to{transform:translate(-50%) scale(1)}}.powerup-tray{position:absolute;bottom:76px;left:50%;transform:translate(-50%);display:flex;gap:10px;pointer-events:none}.powerup-badge{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:14px;background:var(--panel);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:13px;font-weight:700;color:var(--text);box-shadow:0 8px 24px #00000059;animation:badgeIn .3s ease}.powerup-badge .pb-icon{font-size:18px}.powerup-badge .pb-time{color:var(--accent-2);font-variant-numeric:tabular-nums}@keyframes badgeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.panel-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;background:#05081699;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);pointer-events:auto;padding:16px}.panel-overlay[hidden]{display:none}.panel{position:relative;width:min(440px,calc(100vw - 32px));max-height:calc(100vh - 64px);overflow-y:auto;border-radius:24px;padding:24px 24px 22px;animation:fadeScaleIn .4s cubic-bezier(.175,.885,.32,1.275) both}.panel.wide{width:min(560px,calc(100vw - 32px))}.panel[hidden]{display:none}.panel h2{font-family:Cinzel,serif;margin:0 0 16px;font-size:22px}.panel-subtitle{margin:18px 0 10px;font-size:14px;font-weight:700;opacity:.85}.panel-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:10px;border:1px solid rgba(255,255,255,.16);background:#ffffff14;color:var(--text);font-size:16px;cursor:pointer}.panel-close:hover{background:#ffffff2e}.panel-balance{display:flex;gap:18px;margin-bottom:14px;font-size:15px;font-weight:700}.panel-balance b{color:var(--accent-2)}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:15px;font-weight:600}.toggle{border:1px solid rgba(255,255,255,.18);background:#7ef0b52e;color:#c9f7df;border-radius:999px;padding:6px 16px;font-weight:700;cursor:pointer;font-family:Quicksand,sans-serif}.toggle[aria-pressed=false]{background:#ffffff14;color:#fff9}.panel-danger{margin-top:18px;width:100%;border:1px solid rgba(255,110,110,.4);background:#ff505024;color:#ffb0b0;border-radius:14px;padding:12px;font-weight:700;cursor:pointer;font-family:Quicksand,sans-serif}.panel-danger:hover{background:#ff50503d}.credits-body{font-size:14px;line-height:1.7;opacity:.9}.shop-list{display:flex;flex-direction:column;gap:10px}.shop-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1)}.shop-item .si-icon{font-size:26px}.shop-item .si-body{flex:1;min-width:0}.shop-item .si-name{font-weight:700;font-size:14px}.shop-item .si-desc{font-size:12px;opacity:.75;line-height:1.4}.shop-item .si-level{font-size:11px;opacity:.6}.shop-buy{border:0;border-radius:12px;padding:9px 14px;font-weight:700;font-size:13px;cursor:pointer;font-family:Quicksand,sans-serif;color:#fff;background:linear-gradient(135deg,#d63fc9,#ff6fb6);white-space:nowrap}.shop-buy:disabled{background:#ffffff1a;color:#fff6;cursor:not-allowed}.shop-buy.maxed{background:#7ef0b533;color:#c9f7df}.collection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:10px}.species-cell{text-align:center;padding:10px 4px;border-radius:14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1)}.species-cell.locked{opacity:.4;filter:grayscale(1)}.species-cell .sc-emoji{font-size:28px}.species-cell .sc-name{font-size:11px;font-weight:600;margin-top:4px}.achievement-list{display:flex;flex-direction:column;gap:8px}.achievement{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);font-size:13px}.achievement.locked{opacity:.45}.achievement .a-icon{font-size:20px}.achievement .a-name{font-weight:700}.achievement .a-desc{font-size:11px;opacity:.75}.achievement .a-check{margin-left:auto;font-size:16px}.toast-layer{position:fixed;top:84px;left:50%;transform:translate(-50%);z-index:45;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}.toast{padding:10px 18px;border-radius:14px;background:var(--panel);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);font-weight:700;font-size:14px;box-shadow:0 10px 30px #0006;animation:toastInOut 3s ease forwards}@keyframes toastInOut{0%{opacity:0;transform:translateY(-12px) scale(.9)}12%{opacity:1;transform:none}85%{opacity:1;transform:none}to{opacity:0;transform:translateY(-8px)}}.scene-fade{position:fixed;top:0;right:0;bottom:0;left:0;z-index:48;background:#05060f;opacity:0;pointer-events:none;transition:opacity .6s ease}.scene-fade.show{opacity:1}@media(max-width:480px){.action-btn{width:40px;height:40px;font-size:16px;border-radius:12px}.combo{top:10px;padding:6px 12px;min-width:100px}.combo-mult{font-size:22px}}.howto-body{text-align:left;max-height:56vh;overflow-y:auto;padding-right:6px}.howto-lead{margin:0 0 10px;font-weight:600;opacity:.95}.howto-loop{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;justify-content:center;margin:0 0 14px;padding:10px;background:#ffffff0f;border-radius:12px;font-weight:700;font-size:13px}.howto-arrow{opacity:.55}.howto-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}.howto-list li{padding:9px 12px;border-radius:11px;background:#ffffff0d;font-size:13.5px;line-height:1.45}.howto-list li b{color:#ffe0b0}.panel-cta{margin-top:14px;width:100%;padding:11px 16px;border:none;cursor:pointer;border-radius:12px;font-weight:700;font-size:14px;color:#1a0e22;background:linear-gradient(135deg,#ffd166,#ff8bd0);transition:transform .15s ease,box-shadow .2s ease}.panel-cta:hover{transform:translateY(-2px);box-shadow:0 10px 24px #ff8cc859}.tutorial-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:end center;padding:0 16px 96px;pointer-events:none}.tutorial-overlay[hidden]{display:none}.tutorial-card{pointer-events:auto;max-width:420px;width:100%;padding:18px 20px 16px;border-radius:18px;text-align:center;border:1px solid rgba(255,255,255,.2);box-shadow:0 18px 50px #00000080;animation:tutorialIn .35s ease}@keyframes tutorialIn{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:none}}.tutorial-emoji{font-size:40px;line-height:1;margin-bottom:6px;animation:floaty 3s ease-in-out infinite}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.tutorial-card h3{margin:0 0 6px;font-family:Cinzel,serif;font-size:20px;background:linear-gradient(90deg,#ffd166,#ff8bd0,#c084fc);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.tutorial-card p{margin:0 0 12px;font-size:14.5px;line-height:1.5;opacity:.95}.tutorial-dots{display:flex;gap:6px;justify-content:center;margin-bottom:12px}.tutorial-dots span{width:7px;height:7px;border-radius:50%;background:#ffffff40;transition:background .2s ease,transform .2s ease}.tutorial-dots span.on{background:#ffd166;transform:scale(1.3)}.tutorial-actions{display:flex;gap:10px;justify-content:center}.tutorial-skip,.tutorial-next{padding:9px 18px;border-radius:11px;cursor:pointer;font-weight:700;font-size:14px;border:1px solid rgba(255,255,255,.18)}.tutorial-skip{background:#ffffff14;color:#fff}.tutorial-skip:hover{background:#ffffff29}.tutorial-next{border:none;color:#1a0e22;background:linear-gradient(135deg,#ffd166,#ff8bd0)}.tutorial-next:hover{transform:translateY(-2px)}
