*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;overflow-x:hidden;background:#101a26;color:#2e4f92;font-family:Pixelify Sans,monospace;-webkit-tap-highlight-color:transparent;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}#root{min-height:100vh;min-height:100dvh}.app,.dialogueBar,.sceneWrap{-webkit-user-select:none;user-select:none}button{font-family:inherit}@keyframes heroBob{0%,to{transform:translateY(0) rotate(-.7deg)}50%{transform:translateY(-12px) rotate(.7deg)}}@keyframes heroFlutterL{0%,to{transform:skewY(0) scaleX(1)}50%{transform:skewY(-3.5deg) scaleX(.96)}}@keyframes heroFlutterR{0%,to{transform:skewY(0) scaleX(1)}50%{transform:skewY(3.5deg) scaleX(.96)}}@keyframes heroFlow{0%{transform:translateY(-10px);opacity:0}18%{opacity:.85}to{transform:translateY(110px);opacity:0}}@keyframes heroShimmer{0%,to{opacity:.4}50%{opacity:.85}}@keyframes heroGlow{0%,to{transform:scale(1);opacity:.85}50%{transform:scale(1.07);opacity:1}}@keyframes heroPop{0%{transform:translateY(26px) scale(.94);opacity:0}62%{transform:translateY(-5px) scale(1.012);opacity:1}to{transform:translateY(0) scale(1);opacity:1}}@keyframes heroBlink{0%,55%{opacity:1}56%,to{opacity:0}}@keyframes heroSceneIn{0%{opacity:0;transform:scale(1.015)}to{opacity:1;transform:scale(1)}}@keyframes heroFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes heroFall{0%{transform:translateY(0)}to{transform:translateY(28px)}}@keyframes heroMist{0%,to{opacity:.25;transform:translateY(0)}50%{opacity:.5;transform:translateY(-6px)}}@keyframes heroSpin{to{transform:rotate(360deg)}}@keyframes heroWobble{0%,to{transform:rotate(-1.4deg)}50%{transform:rotate(1.4deg)}}@keyframes heroSweat{0%{opacity:0;transform:translateY(-4px) scale(.5)}28%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(34px) scale(.85)}}@keyframes heroSteam{0%{opacity:0;transform:translateY(8px) scaleY(.85)}35%{opacity:.7}to{opacity:0;transform:translateY(-20px) scaleY(1.15)}}@keyframes heroDrop{0%{transform:translateY(-26px)}60%{transform:translateY(6px)}to{transform:translateY(0)}}@keyframes heroCircleDraw{0%{stroke-dashoffset:380}to{stroke-dashoffset:0}}@keyframes heroPopIn{0%{opacity:0;transform:scale(.4)}70%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@keyframes heroYesPulse{0%,to{transform:scale(1)}50%{transform:scale(1.055)}}@keyframes heroBeacon{0%,to{opacity:.25;transform:scale(1)}50%{opacity:.6;transform:scale(1.25)}}@keyframes heroWave{0%,to{transform:rotate(0)}25%{transform:rotate(9deg)}75%{transform:rotate(-9deg)}}@keyframes heroFirework{0%{transform:scale(.15);opacity:0}22%{opacity:1}55%{transform:scale(1);opacity:.9}to{transform:scale(1.2);opacity:0}}@keyframes heroConfetti{0%{transform:translateY(-30px) rotate(0);opacity:0}12%{opacity:1}84%{opacity:1}to{transform:translateY(560px) rotate(250deg);opacity:0}}@keyframes heroWrite{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(2px,1px) rotate(2deg)}50%{transform:translate(-1px) rotate(-1deg)}75%{transform:translate(2px,1px) rotate(1deg)}}@keyframes heroTwinkle{0%,to{opacity:.35}50%{opacity:1}}@keyframes heroSparkle{0%,to{opacity:.3;transform:scale(.8) rotate(0)}50%{opacity:1;transform:scale(1.15) rotate(25deg)}}@keyframes heroWiggle{0%,to{transform:rotate(0)}20%{transform:rotate(7deg)}50%{transform:rotate(-7deg)}80%{transform:rotate(5deg)}}@keyframes heroBannerSway{0%,to{transform:rotate(-1.2deg)}50%{transform:rotate(1.2deg)}}.app{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;width:100%;background:#101a26}.stage{margin:auto;width:100%;max-width:min(900px,98dvh);display:flex;flex-direction:column}.app--egg .stage{margin:0 auto}.sceneWrap{width:100%;line-height:0;animation:heroSceneIn .45s ease both}.sceneWrap svg{display:block;width:100%;height:auto}.dialogueBar{position:relative;width:100%;box-sizing:border-box;padding:clamp(14px,4vw,26px) clamp(10px,3vw,18px) clamp(16px,4.5vw,30px);background:linear-gradient(#101a26,#0c1420);display:flex;flex-direction:column;align-items:center;gap:clamp(12px,3vw,16px)}.dlgClick{position:relative;width:min(920px,94%);cursor:pointer}.dialogueRing{background:linear-gradient(#5c8ac9,#3f6fb8);border-radius:28px;padding:7px;box-shadow:0 16px 34px #0816288c}.dialogueInner{background:#fbfdff;border:3px solid #bfd6f0;border-radius:21px;padding:clamp(16px,4vw,26px) clamp(16px,4.5vw,34px);min-height:clamp(150px,34vw,200px);box-sizing:border-box;display:flex;flex-direction:column}.dialogueTextWrap{flex:1;display:flex;align-items:center;justify-content:center;min-height:clamp(86px,22vw,120px)}.dialogueText{width:100%;text-align:center;color:#2e4f92;line-height:1.25;white-space:pre-wrap;overflow-wrap:break-word;font-weight:600;letter-spacing:.5px;text-wrap:balance}.btnRow{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;color:#fff;font-family:Pixelify Sans,monospace;font-weight:600;letter-spacing:.5px;border:none;cursor:pointer;-webkit-user-select:none;user-select:none;text-align:center;line-height:1.1;min-height:44px;box-sizing:border-box;transition:transform .16s ease,filter .16s ease}.btn--choice{background:linear-gradient(#5c8ac9,#3f6fb8);font-size:clamp(16px,4.6vw,24px);padding:11px 24px;border-radius:16px;box-shadow:0 4px #2c548f;max-width:100%}.btn--landing{background:linear-gradient(#e8995a,#d9772e);font-size:clamp(19px,5.6vw,28px);font-weight:700;padding:14px 36px;border-radius:18px;box-shadow:0 5px #a85a1e;white-space:nowrap}.askRow{position:relative;width:100%;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:22px;min-height:clamp(92px,26vw,104px)}.btn--yes{position:relative;z-index:2;background:linear-gradient(#3fb85e,#2e9e4c);font-size:clamp(26px,8vw,36px);font-weight:700;letter-spacing:1px;padding:16px clamp(40px,12vw,56px);border-radius:24px;box-shadow:0 6px #1f7a3e;white-space:nowrap;animation:heroYesPulse 1.8s ease-in-out infinite}.btn--no{position:absolute;right:6px;bottom:2px;z-index:1;background:linear-gradient(#e2584f,#c9382e);font-size:clamp(15px,4vw,17px);font-weight:600;padding:9px 16px;min-height:0;border-radius:13px;box-shadow:0 3px #9a271f;white-space:nowrap;transition:transform .16s ease,left .16s ease,top .16s ease}.btn--no-caught{position:static;font-size:clamp(15px,4.2vw,18px);padding:10px 20px;min-height:44px}.blinkArrow{display:inline-block;font-size:.86em;animation:heroBlink 1s steps(1) infinite}@media (hover: hover){.btn:hover{filter:brightness(1.08);transform:translateY(-1px)}.btn--yes:hover{filter:brightness(1.07)}}.btn:active{filter:brightness(.97)}.dots{display:flex;gap:11px;align-items:center}.dot{width:12px;height:12px;border-radius:50%;border:2px solid #3f6fb8;background:transparent}.dot--on{background:#3f6fb8}.milestoneMap{width:100%}
