:root{--ink: #f5f1e8;--muted: rgba(227, 233, 241, .72);--quiet: rgba(195, 208, 224, .48);--gold: #ffd77d;--cream: #f4ecda;--cream-hot: #fff9e9;--dragon-a: #8074ee;--dragon-b: #332c89;--dragon-c: #171644;--attr-0: #ff5a36;--attr-1: #2e7fff;--attr-2: #00e5a0;--attr-3: #ffd21e;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}*{box-sizing:border-box}html,body{width:100%;height:100%}body{margin:0;overflow:hidden;color:var(--ink);background:#02050b;font-family:Segoe UI,Yu Gothic UI,Hiragino Kaku Gothic ProN,system-ui,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.035em}button,input{font:inherit}button{color:inherit}[hidden]{display:none!important}#screen{position:relative;width:100vw;height:100vh;min-width:760px;min-height:560px;isolation:auto;overflow:hidden;background:transparent}.forest{position:absolute;z-index:0;top:-4%;right:-4%;bottom:-4%;left:-4%;background:radial-gradient(ellipse at 50% 38%,rgba(16,69,112,.7) 0,rgba(6,31,58,.72) 32%,transparent 65%),radial-gradient(ellipse at 74% 83%,rgba(221,132,48,.24),transparent 22%),linear-gradient(180deg,#020611,#061b32 47%,#101b20 74%,#06080d);background-position:center bottom;background-size:cover;transform-origin:50% 72%}.forest.has-image{background-image:url(/assets/bg-VQW-1Q0N.png),radial-gradient(ellipse at 50% 38%,rgba(16,69,112,.7) 0,rgba(6,31,58,.72) 32%,transparent 65%),radial-gradient(ellipse at 74% 83%,rgba(221,132,48,.24),transparent 22%),linear-gradient(180deg,#020611,#061b32 47%,#101b20 74%,#06080d)}.forest:before{content:"";position:absolute;top:-8%;right:-4%;bottom:0;left:-4%;opacity:.7;background:linear-gradient(111deg,transparent 0 7%,rgba(0,5,13,.9) 8% 14%,transparent 15% 35%,rgba(1,6,14,.65) 36% 40%,transparent 41%),linear-gradient(72deg,transparent 0 60%,rgba(0,4,12,.78) 61% 69%,transparent 70% 84%,rgba(0,4,12,.86) 85% 92%,transparent 93%),radial-gradient(ellipse at 50% 18%,rgba(14,63,103,.3),transparent 55%);filter:blur(2px);pointer-events:none}.forest:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(1,4,12,.58) 0,transparent 17%,transparent 62%,rgba(1,4,8,.58) 100%),radial-gradient(ellipse at 50% 48%,transparent 20%,rgba(0,3,10,.18) 67%,rgba(0,2,8,.84) 100%);pointer-events:none}.forest-breath{animation:forestBreath 40s ease-in-out infinite alternate}.atmosphere{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at 50% 62%,rgba(72,112,195,.13),transparent 33%),linear-gradient(90deg,rgba(0,3,10,.32),transparent 24% 76%,rgba(0,3,10,.34));mix-blend-mode:screen;animation:hazeDrift 18s ease-in-out infinite alternate}.top-shade{position:absolute;z-index:1;inset:0 0 auto;height:31vh;pointer-events:none;background:linear-gradient(180deg,rgba(0,3,10,.74),rgba(0,4,12,.25) 57%,transparent)}.fireflies{position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.firefly{position:absolute;left:var(--x);top:var(--y);width:var(--size, 5px);height:var(--size, 5px);border-radius:50%;background:var(--firefly-color, #79d6ff);box-shadow:0 0 7px 2px var(--firefly-color, #79d6ff),0 0 24px 5px color-mix(in srgb,var(--firefly-color, #79d6ff) 44%,transparent);opacity:.16;animation:fireflyDrift var(--duration, 10s) ease-in-out var(--delay, 0s) infinite alternate}.firefly:nth-child(3n){--firefly-color: #bca5ff}.firefly:nth-child(4n){--firefly-color: #ffe2a0}.top-ui{position:absolute;z-index:8;inset:0 0 auto;height:19vh;min-height:126px;padding:calc(2.8vh + var(--safe-top)) 3.4vw 0;pointer-events:none}.event-mark{position:absolute;left:3.4vw;top:calc(3.25vh + var(--safe-top));color:#f1efe9db;font-size:clamp(.74rem,1vw,1.08rem);font-weight:800;letter-spacing:.2em;text-shadow:0 2px 12px #000}.event-mark small{display:block;margin-top:9px;color:var(--quiet);font-size:clamp(.48rem,.58vw,.7rem);font-weight:650;letter-spacing:.22em}.countdown-block{position:absolute;left:50%;top:calc(1.8vh + var(--safe-top));min-width:170px;transform:translate(-50%);text-align:center;text-shadow:0 3px 20px rgba(0,0,0,.82),0 0 34px rgba(163,194,255,.35)}.countdown{display:block;color:#fffaf0;font-size:clamp(4.5rem,8.8vw,9.6rem);font-weight:780;line-height:.79;letter-spacing:-.085em}.countdown-label{display:flex;justify-content:center;gap:13px;margin-top:15px;color:#eeece2a8;font-size:clamp(.5rem,.66vw,.78rem);font-weight:760;letter-spacing:.2em}.countdown-label b{color:var(--gold)}.system-readout{position:absolute;right:3.4vw;top:calc(3.4vh + var(--safe-top));display:flex;align-items:center;gap:9px;color:#e1ebf4ab;font-size:clamp(.47rem,.6vw,.7rem);font-weight:700;letter-spacing:.14em;text-shadow:0 2px 10px #000;text-transform:uppercase}.status-dot{width:8px;height:8px;border-radius:50%;background:#72ffc0;box-shadow:0 0 9px #72ffc0,0 0 22px #72ffc099;animation:statusPulse 2.6s ease-in-out infinite}.status-dot.is-offline{background:#ffce54;box-shadow:0 0 9px #ffce54}.hero{position:absolute;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;pointer-events:none}.hero:before{content:"";position:absolute;left:50%;top:61%;width:min(38vw,720px);height:18vh;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(ellipse,rgba(255,203,101,.42) 0,rgba(99,121,246,.2) 34%,transparent 72%);filter:blur(18px);opacity:.65;animation:groundGlow 3.8s ease-in-out infinite}.ground-light{position:absolute;left:50%;top:66%;width:min(34vw,650px);height:17vh;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(ellipse,rgba(255,246,204,.85),rgba(255,177,70,.35) 23%,rgba(99,120,245,.15) 53%,transparent 74%);filter:blur(9px);mix-blend-mode:screen;opacity:.46;transition:opacity .4s ease,transform .4s ease;animation:groundGlow 3.2s ease-in-out infinite reverse}.glow-asset-layer{position:absolute;top:0;right:0;bottom:0;left:0}.glow-image{object-fit:contain}.four-lights{position:absolute;z-index:0;left:50%;top:48%;width:min(42vw,800px);height:30vh;transform:translate(-50%,-50%);pointer-events:none}.four-light{position:absolute;left:50%;top:50%;width:12px;height:12px;margin:-6px;border-radius:50%;background:var(--light-color);box-shadow:0 0 12px 3px var(--light-color),0 0 34px 10px color-mix(in srgb,var(--light-color) 45%,transparent);transform:rotate(var(--angle)) translateY(-190px);animation:orbitLight 5.2s ease-in-out var(--delay) infinite alternate}.egg-cluster{position:absolute;z-index:auto;left:50%;top:51%;width:min(36vw,600px);height:min(53vh,580px);min-width:280px;min-height:300px;transform:translate(-50%,-50%);mix-blend-mode:screen;transition:opacity .2s ease}.egg-cluster:after{content:"";position:absolute;z-index:0;left:50%;bottom:4%;width:54%;height:10%;transform:translate(-50%);border-radius:50%;background:radial-gradient(ellipse,rgba(2,2,7,.92),rgba(15,10,28,.56) 48%,transparent 75%);filter:blur(7px)}.egg-core{position:absolute;z-index:1;left:50%;top:50%;width:100%;height:100%;transform:translate(-50%,-50%);transform-origin:50% 62%}.egg-core.is-shaking{animation:eggShake var(--shake-period, .9s) ease-in-out infinite}.asset-layer{position:relative;width:100%;height:100%}.asset-image{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;object-fit:contain;opacity:0;mix-blend-mode:normal;pointer-events:none}.asset-layer.has-image .asset-image{opacity:1}.asset-layer.has-image .asset-fallback{opacity:0}.egg-asset.has-image~.egg-edge{display:none}.egg-fallback{position:absolute;top:7%;right:9%;bottom:7%;left:9%;overflow:hidden;border:2px solid rgba(255,249,229,.74);border-radius:49% 51% 46% 46%/42% 43% 57% 58%;background:radial-gradient(ellipse at 34% 20%,rgba(255,255,247,.96),transparent 12%),radial-gradient(ellipse at 56% 86%,rgba(255,179,66,.76),transparent 22%),radial-gradient(ellipse at 48% 54%,#f1e4c9 0,#d5bf9c 52%,#897656);box-shadow:inset -18px -20px 28px #5533194d,inset 16px 13px 23px #fffff5a6,0 0 24px #ffba493d;transition:opacity .45s ease}.egg-fallback:before{content:"";position:absolute;top:12%;right:9%;bottom:12%;left:9%;opacity:.38;background:radial-gradient(ellipse at 20% 20%,transparent 0 16%,rgba(123,97,69,.28) 17% 19%,transparent 20%),radial-gradient(ellipse at 70% 42%,transparent 0 19%,rgba(123,97,69,.22) 20% 22%,transparent 23%),radial-gradient(ellipse at 37% 75%,transparent 0 17%,rgba(123,97,69,.24) 18% 20%,transparent 21%);filter:blur(1px)}.egg-tint{position:absolute;top:18%;right:18%;bottom:13%;left:18%;border-radius:50%;background:radial-gradient(ellipse at 50% 66%,var(--leader-color, #ffb54d) 0,transparent 66%);mix-blend-mode:screen;opacity:var(--leader-opacity, .16);filter:blur(14px);transition:opacity .7s ease}.egg-edge{position:absolute;top:9%;right:11%;bottom:9%;left:11%;border-radius:49% 51% 46% 46%/42% 43% 57% 58%;box-shadow:inset 0 0 16px #fff5d666,0 0 24px #ffbf5726;opacity:.55;pointer-events:none}.crack-svg{position:absolute;top:7%;right:12%;bottom:5%;width:76%;height:88%;left:12%;overflow:visible;pointer-events:none}.crack-main,.crack-glow,.crack-preview{fill:none;stroke-linecap:round;stroke-linejoin:round}.crack-main{stroke:#fff4ccf5;stroke-width:1.7;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--crack, 0));transition:stroke-dashoffset .7s cubic-bezier(.2,.8,.2,1);filter:drop-shadow(0 0 4px #ffb841) drop-shadow(0 0 11px rgba(255,154,37,.8))}.crack-glow{stroke:#ff9723b8;stroke-width:5;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--crack, 0));transition:stroke-dashoffset .7s cubic-bezier(.2,.8,.2,1);filter:blur(3px)}.crack-preview{stroke:#ffdd9166;stroke-width:1.1;stroke-dasharray:3 3;opacity:var(--preview-opacity, .3);transition:opacity .45s ease}.dragon-layer{position:absolute;left:0;right:0;top:13vh;margin:0 auto;width:min(76vw,1320px);height:min(68vh,735px);min-width:620px;min-height:470px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease}.dragon-layer.is-visible{visibility:visible;opacity:1}.dragon-aura{position:absolute;left:50%;top:67%;width:72%;height:32%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(ellipse,rgba(255,179,80,var(--aura-gold-alpha, .16)),rgba(91,95,255,var(--aura-violet-alpha, .1)) 39%,transparent 73%);filter:blur(15px);animation:dragonAura 2.4s ease-in-out infinite}.dragon-body-wrap{position:absolute;z-index:3;left:50%;top:calc(55% + var(--tweet-lift-px, 0px));width:100%;height:100%;transform:translate(-50%,-50%);transition:top .6s cubic-bezier(.2,.75,.2,1);animation:creatureBreath 1.45s ease-in-out infinite}.body-asset{z-index:2;object-fit:contain;filter:brightness(var(--body-brightness, .84)) saturate(var(--body-saturation, 1.18)) drop-shadow(0 0 var(--body-glow-blur, 0px) rgba(143,167,255,var(--body-glow-alpha, 0)))}.body-fallback{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;transition:opacity .45s ease;filter:drop-shadow(0 17px 13px rgba(0,0,0,.52))}.dragon-skin{fill:url(#dragonSkin);stroke:#17143e;stroke-width:4}.dragon-skin-light{fill:url(#dragonSkinLight)}.dragon-shadow{fill:#17153f;opacity:.68}.dragon-belly{fill:url(#dragonBelly);stroke:#3f2c63;stroke-width:3}.dragon-scale{fill:none;stroke:#bbaeff3d;stroke-width:2}.dragon-eye{fill:#effbff;stroke:#302363;stroke-width:4}.dragon-iris{fill:url(#iris);stroke:#1b1745;stroke-width:3}.dragon-pupil{fill:#070a1a}.dragon-horn{fill:url(#horn);stroke:#17143e;stroke-width:3}.flight-stage,.flight-wing,.flight-wing-motion{position:absolute;top:0;right:0;bottom:0;left:0}.flight-stage{display:none}.flight-stage .flight-asset-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain}.flight-body-image{z-index:3;opacity:1}.flight-wing{z-index:1}.flight-wing-right{transform:scaleX(-1)}.flight-wing-motion{transform-origin:43.66% 48.672%}.flight-wing-image{opacity:0}.flight-body-fallback{position:absolute;left:38%;top:34%;width:35%;height:48%;border-radius:48% 52% 44% 45%;background:radial-gradient(circle at 63% 32%,#8e85f5 0,#8e85f5 8%,#3e36a0 9%,#3e36a0 48%,#171548 72%);box-shadow:inset 0 -20px 30px #00000075,0 14px 28px #0000007a}.flight-body-fallback:before{content:"";position:absolute;left:-62%;top:44%;width:85%;height:24%;border-radius:80% 0 0 75%;background:linear-gradient(90deg,#201d63,#5048ba);transform:rotate(-13deg);transform-origin:right center}.flight-wing-fallback{position:absolute;left:2%;top:9%;width:45%;height:48%;clip-path:polygon(0 8%,97% 45%,78% 100%,58% 70%,34% 92%,39% 59%,12% 56%);background:linear-gradient(145deg,#554cb5 0,#554cb5 13%,#b16fa7 16%,#b16fa7 70%,#372d82 74%);filter:drop-shadow(0 0 6px #746cff)}.wing-membrane{fill:#6a54bf;fill:url(#wingMembrane);stroke:#7567d8;stroke-width:4;stroke-linejoin:round}.wing-bone{fill:none;stroke:#9a8af1;stroke-width:5;stroke-linecap:round;opacity:.82}.wing-vein{fill:none;stroke:#cdaded94;stroke-width:2.5}.shell-remains{position:absolute;z-index:4;left:55%;top:84%;width:38%;height:25%;transform:translate(-50%,-50%);transform-origin:50% 82%;mix-blend-mode:screen;opacity:0;transition:opacity .6s ease .32s}.shell-remains.is-on-head{transform:translate(-50%,-50%) translate(18%,-245%) scale(1.3) rotate(-8deg)}.shell-remains.is-on-head .shell-image{clip-path:inset(24% 4% 17% 34%)}.shell-remains.is-dropping{animation:hatchShellDrop .78s cubic-bezier(.3,.72,.25,1) both}.shell-remains.is-dropping .shell-image{animation:hatchShellReveal .78s linear both}.shell-image{object-fit:contain}.shell-fallback{position:absolute;top:0;right:0;bottom:0;left:0}.shell-piece{position:absolute;bottom:0;width:41%;height:68%;border:2px solid rgba(255,237,196,.72);background:radial-gradient(ellipse at 50% 12%,#fff6d8 0,#d9b274,#5f4534);box-shadow:inset 0 6px 9px #ffd57c9e,0 0 18px #ffac4166;clip-path:polygon(4% 0,26% 17%,44% 6%,68% 18%,96% 0,90% 73%,72% 96%,25% 100%,7% 70%)}.shell-piece.left{left:3%;transform:rotate(9deg)}.shell-piece.right{right:3%;transform:scaleX(-1) rotate(9deg)}.scene-flash{position:absolute;z-index:12;top:-20%;right:-20%;bottom:-20%;left:-20%;opacity:0;pointer-events:none;background:radial-gradient(circle at 50% 52%,rgba(255,252,226,.95),rgba(255,203,93,.35) 18%,transparent 53%);mix-blend-mode:screen}.scene-flash.play{animation:hatchFlash .95s ease-out both}#particles{position:absolute;z-index:13;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:visible}.particle{position:absolute;width:12px;height:12px;margin:-6px;border-radius:50%;background:var(--particle-color);box-shadow:0 0 12px 3px var(--particle-color),0 0 30px 7px color-mix(in srgb,var(--particle-color) 45%,transparent);animation:particleToEgg .9s cubic-bezier(.2,.72,.35,1) forwards}.burst-particle{position:absolute;left:50%;top:55%;width:9px;height:9px;margin:-4px;border-radius:50%;background:var(--particle-color);box-shadow:0 0 10px 3px var(--particle-color);animation:burstParticle 1.2s cubic-bezier(.2,.7,.2,1) forwards}.join-qr{position:absolute;z-index:16;left:50%;top:46%;display:none;flex-direction:column;align-items:center;gap:clamp(10px,1.6vh,26px);transform:translate(-50%,-50%);pointer-events:none}#screen:not([data-phase=waiting]) .join-qr{display:none}#screen[data-phase=waiting] .join-qr{display:flex}.join-qr[hidden]{display:none}.join-qr-canvas{width:min(58vh,58vw,760px);height:auto;border-radius:clamp(10px,1.6vh,26px);background:#fff;image-rendering:pixelated;box-shadow:0 0 clamp(26px,4vh,74px) #ffe7a880,0 0 clamp(70px,11vh,190px) #7e70ff52,0 clamp(10px,1.6vh,26px) clamp(30px,5vh,80px) #03030a99;animation:joinQrGlow 4.4s ease-in-out infinite}.join-qr-label{margin:0;color:#fff8e4e6;font-size:clamp(.78rem,1.34vw,1.6rem);font-weight:800;letter-spacing:.16em;text-shadow:0 2px 12px rgba(0,0,0,.95)}.join-qr-url{color:#d6e0ff94;font-size:clamp(.48rem,.74vw,.88rem);letter-spacing:.06em;text-shadow:0 2px 10px rgba(0,0,0,.95)}#screen[data-phase=waiting] .egg-cluster{opacity:.3}#screen[data-phase=waiting] .gauge-deck{opacity:.42}#screen[data-phase=waiting] .four-lights{opacity:.55}#screen[data-phase=waiting] .phase-copy{top:86%}.phase-copy{position:absolute;z-index:14;left:50%;top:72%;width:min(70vw,580px);transform:translate(-50%);text-align:center;text-shadow:0 2px 11px rgba(0,0,0,.95);pointer-events:none}.phase-label{color:#fff8e4eb;font-size:clamp(.7rem,1.06vw,1.16rem);font-weight:800;letter-spacing:.23em}.phase-caption{margin-top:7px;color:#e6e6ec94;font-size:clamp(.48rem,.63vw,.72rem);letter-spacing:.15em}.tweet-callout{position:absolute;z-index:15;left:50%;top:80.5%;width:min(31vw,350px);transform:translate(-50%);opacity:0;transition:opacity .55s ease;pointer-events:none}.tweet-callout.is-open{opacity:1}.tweet-head{display:flex;justify-content:space-between;color:#fff5ddc7;font-size:clamp(.48rem,.65vw,.74rem);font-weight:760;letter-spacing:.13em;text-shadow:0 2px 10px #000}.tweet-value{color:var(--gold)}.tweet-track{height:4px;margin-top:8px;overflow:hidden;border-radius:99px;background:#ffedc12b;box-shadow:0 0 13px #ffb14133}.tweet-fill{width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#dc79ff,#ffd477);box-shadow:0 0 12px #ffbe66bf;transition:width .55s cubic-bezier(.2,.8,.2,1)}.gauge-deck{position:absolute;z-index:6;left:4vw;right:4vw;bottom:10.5vh;height:25vh;min-height:185px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(9px,1.6vw,34px);pointer-events:none}.gauge-column{--gauge-color: #fff;position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:7px;border-top:1px solid color-mix(in srgb,var(--gauge-color) 30%,transparent)}.gauge-column:before{content:"";position:absolute;left:50%;top:12%;width:42%;height:67%;transform:translate(-50%);background:radial-gradient(ellipse at 50% 100%,color-mix(in srgb,var(--gauge-color) 32%,transparent),transparent 72%);filter:blur(13px);opacity:.7;animation:pillarAura 2.6s ease-in-out infinite}.gauge-column.is-pulse:before{animation:pillarPulse .62s ease-out both}.crown{position:absolute;left:50%;top:-32px;transform:translate(-50%) scale(.86);color:#ffe49c;font-family:Georgia,serif;font-size:clamp(1.15rem,2vw,2rem);line-height:1;opacity:0;text-shadow:0 0 9px #ffbe45,0 0 22px rgba(255,168,44,.8);transition:opacity .3s ease,transform .3s ease}.gauge-column.is-leader .crown{opacity:1;transform:translate(-50%) scale(1)}.pillar-wrap{position:relative;width:clamp(20px,2vw,34px);height:65%;min-height:116px;display:flex;align-items:end;justify-content:center}#screen[data-phase=hatched] .gauge-column:nth-child(2) .pillar-wrap,#screen[data-phase=flown] .gauge-column:nth-child(2) .pillar-wrap{transform:translate(-58%)}#screen[data-phase=hatched] .gauge-column:nth-child(3) .pillar-wrap,#screen[data-phase=flown] .gauge-column:nth-child(3) .pillar-wrap{transform:translate(58%)}.pillar-track{position:absolute;left:50%;bottom:0;width:clamp(7px,.58vw,12px);height:100%;transform:translate(-50%);border-radius:99px;background:linear-gradient(180deg,color-mix(in srgb,var(--gauge-color) 12%,transparent),color-mix(in srgb,var(--gauge-color) 5%,transparent));box-shadow:0 0 7px color-mix(in srgb,var(--gauge-color) 23%,transparent)}.pillar-fill{position:absolute;left:50%;bottom:0;width:100%;height:0;transform:translate(-50%);border-radius:99px;background:linear-gradient(180deg,#fff9e4 0,var(--gauge-color) 34%,color-mix(in srgb,var(--gauge-color) 45%,#120e38) 100%);box-shadow:0 0 8px 2px var(--gauge-color),0 0 25px 7px color-mix(in srgb,var(--gauge-color) 52%,transparent);transition:height .7s cubic-bezier(.2,.8,.2,1),filter .25s ease}.gauge-column.is-pulse .pillar-fill{filter:brightness(1.9)}.pillar-fill:after{content:"";position:absolute;top:0;right:-4px;bottom:0;left:-4px;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.9),transparent 18% 77%,rgba(255,255,255,.2));opacity:.7}.gauge-info{position:relative;z-index:1;width:100%;margin-top:8px;text-align:center}.gauge-name{color:var(--gauge-color);font-size:clamp(.84rem,1.22vw,1.35rem);font-weight:850;letter-spacing:.17em;text-shadow:0 0 11px color-mix(in srgb,var(--gauge-color) 54%,transparent),0 2px 8px #000}.gauge-reps{margin-top:3px;color:#fff7e7;font-size:clamp(1.22rem,2.05vw,2.35rem);font-weight:780;line-height:1;text-shadow:0 2px 10px #000}.gauge-remaining{margin-top:6px;color:#ebe7df9e;font-size:clamp(.48rem,.65vw,.74rem);font-weight:650;letter-spacing:.08em;white-space:nowrap;text-shadow:0 2px 8px #000}.gauge-remaining b{color:#fff0be;font-weight:800}.corner-stats{position:absolute;z-index:7;right:3.5vw;bottom:15.7vh;min-width:135px;color:#dde2eba1;font-size:clamp(.48rem,.62vw,.72rem);line-height:1.85;letter-spacing:.14em;text-align:right;text-shadow:0 2px 10px #000}.corner-stats strong{color:#fff4d9;font-size:clamp(.92rem,1.34vw,1.48rem);font-weight:780}.corner-stats .tweet-stat{color:var(--gold)}.session-strip{position:absolute;z-index:9;left:4vw;right:4vw;bottom:calc(1.4vh + var(--safe-bottom));height:7.2vh;min-height:57px;display:grid;grid-template-columns:minmax(78px,1fr) repeat(4,minmax(0,3.8fr));gap:clamp(8px,1.1vw,22px);pointer-events:none}.sessions-caption{padding-top:7px;color:#e8ebeb94;font-size:clamp(.55rem,.73vw,.84rem);font-weight:800;letter-spacing:.16em;text-shadow:0 2px 8px #000}.sessions-caption small{display:block;margin-top:7px;color:#cfd6dd66;font-size:clamp(.42rem,.52vw,.6rem);font-weight:650;letter-spacing:.08em;white-space:nowrap}.session-lane{--lane-color: #fff;min-width:0;padding:6px 4px 0;border-top:1px solid color-mix(in srgb,var(--lane-color) 35%,transparent);text-shadow:0 2px 8px #000}.lane-head{display:flex;align-items:baseline;justify-content:space-between;gap:6px;color:var(--lane-color);font-size:clamp(.6rem,.85vw,.96rem);font-weight:800;letter-spacing:.12em;white-space:nowrap}.lane-count{color:#faf6ecd1;font-size:clamp(.49rem,.65vw,.74rem);font-weight:700;letter-spacing:.04em}.lane-dots{display:flex;align-items:center;gap:clamp(4px,.42vw,8px);height:19px;margin-top:7px;overflow:hidden}.session-dot{--dot-color: #fff;flex:0 0 auto;width:clamp(8px,.55vw,12px);height:clamp(8px,.55vw,12px);border:1.5px solid color-mix(in srgb,var(--dot-color) 72%,transparent);background:transparent;opacity:.58;box-shadow:inset 0 0 0 2px #00000047,0 0 4px color-mix(in srgb,var(--dot-color) 28%,transparent)}.session-dot.is-complete{opacity:1;background:var(--dot-color);box-shadow:0 0 7px var(--dot-color),0 0 15px color-mix(in srgb,var(--dot-color) 54%,transparent)}.shape-circle{border-radius:50%}.shape-diamond{border-radius:2px;transform:rotate(45deg) scale(.76)}.shape-hex{border-radius:3px;clip-path:polygon(25% 3%,75% 3%,100% 50%,75% 97%,25% 97%,0 50%)}.shape-square{border-radius:3px}.overflow-count{flex:0 0 auto;color:var(--lane-color);font-size:clamp(.48rem,.58vw,.68rem);font-weight:800}.control-panel{position:fixed;z-index:30;right:18px;bottom:18px;width:min(356px,calc(100vw - 36px));max-height:min(84vh,660px);overflow:auto;padding:14px;border:1px solid rgba(201,220,255,.3);border-radius:14px;background:#050b16e6;box-shadow:0 18px 70px #00000094,0 0 30px #4d79df24;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);scrollbar-width:thin}.control-panel.is-collapsed .control-content{display:none}.control-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid rgba(198,215,246,.16)}.control-head button{padding:3px 7px;border:1px solid rgba(201,220,255,.26);border-radius:7px;background:#30467761;cursor:pointer;font-size:.62rem}.control-title{color:#f1f3ff;font-size:.76rem;font-weight:800;letter-spacing:.13em}.control-subtitle{margin-top:4px;color:var(--quiet);font-size:.58rem;letter-spacing:.07em}.control-group{margin-top:12px}.control-label{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px;color:#dce5f7;font-size:.62rem;font-weight:700;letter-spacing:.08em}.control-label output{color:#b9caff;font-weight:800}input[type=range]{width:100%;accent-color:#b7caff}.phase-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.phase-button,.run-button{border:1px solid rgba(185,207,255,.28);border-radius:7px;background:#273b6387;padding:7px 4px;cursor:pointer;font-size:.59rem}.phase-button:hover,.phase-button.is-active{border-color:#dbe5ff;background:#6f93e24f}.run-button{width:100%;margin-top:12px;color:#090d18;border:0;background:linear-gradient(100deg,#b9d1ff,#ffe19c);font-weight:850;letter-spacing:.08em}.run-button:disabled{cursor:default;opacity:.58}.asset-note{margin-top:10px;color:#bfccdf7a;font-size:.55rem;line-height:1.5}@keyframes joinQrGlow{0%,to{filter:brightness(.97)}50%{filter:brightness(1.03)}}@keyframes forestBreath{0%{transform:scale(1)}to{transform:scale(1.04) translateY(1%)}}@keyframes hazeDrift{0%{transform:translate(-1.5%) scale(.98);opacity:.7}to{transform:translate(1.5%) scale(1.04);opacity:1}}@keyframes fireflyDrift{0%{opacity:.12;transform:translateZ(0) scale(.72)}45%{opacity:.88}to{opacity:.25;transform:translate3d(var(--dx, 22px),var(--dy, -30px),0) scale(1.12)}}@keyframes statusPulse{0%,to{opacity:.5;transform:scale(.76)}50%{opacity:1;transform:scale(1)}}@keyframes groundGlow{0%,to{opacity:.38;transform:translate(-50%,-50%) scale(.91)}50%{opacity:.78;transform:translate(-50%,-50%) scale(1.08)}}@keyframes orbitLight{0%{opacity:.25;transform:rotate(var(--angle)) translateY(-178px) scale(.7)}to{opacity:.95;transform:rotate(var(--angle)) translateY(-205px) scale(1.15)}}@keyframes eggShake{0%,to{transform:translate(calc(-50% + var(--shake-x, 0px)),-50%) rotate(calc(var(--shake-rot, 0deg) * -1))}25%{transform:translate(calc(-50% - var(--shake-x, 0px)),-50%) rotate(var(--shake-rot, 0deg))}50%{transform:translate(calc(-50% + var(--shake-x, 0px)),-50%) rotate(calc(var(--shake-rot, 0deg) * -1))}75%{transform:translate(calc(-50% - var(--shake-x, 0px)),-50%) rotate(var(--shake-rot, 0deg))}}@keyframes pillarAura{0%,to{opacity:.38;transform:translate(-50%) scaleY(.94)}50%{opacity:.82;transform:translate(-50%) scaleY(1.04)}}@keyframes pillarPulse{0%{opacity:.45;transform:translate(-50%) scaleY(.7)}45%{opacity:1;transform:translate(-50%) scaleY(1.2)}to{opacity:.38;transform:translate(-50%) scaleY(.94)}}@keyframes dragonAura{0%,to{opacity:.14;transform:translate(-50%,-50%) scale(.9)}50%{opacity:.34;transform:translate(-50%,-50%) scale(1.12)}}@keyframes creatureBreath{0%,to{transform:translate(-50%,-50%) translateY(0) scale(1)}42%{transform:translate(-50%,-50%) translateY(-2.3%) scaleY(.985)}68%{transform:translate(-50%,-50%) translateY(1%) scaleY(1.015)}}@keyframes flightBob{0%,to{transform:translateY(-1%) scale(1)}46%{transform:translateY(-5%) scale(1.01)}}@keyframes wingMotion{0%,10%{transform:rotate(14deg)}38%{transform:rotate(0)}56%,68%{transform:rotate(-16deg)}to{transform:rotate(0)}}@keyframes wingPoseDown{0%,24.9%{opacity:1}25%,to{opacity:0}}@keyframes wingPoseMid{0%,24.9%{opacity:0}25%,49.9%{opacity:1}50%,74.9%{opacity:0}75%,99.9%{opacity:1}to{opacity:0}}@keyframes wingPoseUp{0%,49.9%{opacity:0}50%,74.9%{opacity:1}75%,to{opacity:0}}@keyframes wingDeploy{0%{transform:translateY(19%) scale(.72)}28%{transform:translateY(8%) scale(.92)}67%{transform:translateY(-6%) scale(1.03)}to{transform:translateY(-1%) scale(1)}}@keyframes hatchReveal{0%{opacity:0;transform:translate(-50%,-45%) scale(.78,.88)}12%{opacity:1;transform:translate(-50%,-51%) scale(1.05,.94)}34%{transform:translate(-50%,-48%) scale(.96,1.06)}58%{transform:translate(-50%,-51%) scale(1.02,.98)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes eggHatchExit{0%,58%{opacity:1;transform:translate(-50%,-50%) scale(1)}73%{opacity:.88;transform:translate(-50%,-48%) scale(1.04,.92)}to{opacity:0;transform:translate(-50%,-53%) scale(.92)}}@keyframes hatchFlash{0%{opacity:0;transform:scale(.68)}11%{opacity:.92;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}@keyframes hatchShellDrop{0%{transform:translate(-50%,-50%) translate(18%,-245%) scale(1.3) rotate(-8deg)}18%{transform:translate(-50%,-50%) translate(14%,-198%) scale(1.22) rotate(8deg)}72%{transform:translate(-50%,-50%) translateY(3%) scale(1) rotate(20deg)}88%{transform:translate(-50%,-50%) translateY(-9%) scale(1) rotate(-5deg)}to{transform:translate(-50%,-50%) translate(0) scale(1) rotate(0)}}@keyframes hatchShellReveal{0%,70%{clip-path:inset(24% 4% 17% 34%)}90%,to{clip-path:inset(0)}}@keyframes burstParticle{0%{opacity:0;transform:translate(0) scale(.4)}12%{opacity:1}to{opacity:0;transform:translate(var(--burst-x),var(--burst-y)) scale(.06)}}@keyframes particleToEgg{0%{opacity:0;transform:translate(0) scale(.5)}12%{opacity:1}74%{opacity:1}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.12)}}@keyframes flightLift{0%{transform:translate(-50%,-50%) scale(1)}21%{transform:translate(-50%,-54%) scale(1.03)}55%{transform:translate(-50%,-64%) scale(1.06)}to{transform:translate(-50%,-61%) scale(1.02)}}#screen[data-phase=hatched] .egg-cluster,#screen[data-phase=flown] .egg-cluster{animation:eggHatchExit .92s ease-out both}#screen[data-phase=hatched] .shell-remains,#screen[data-phase=flown] .shell-remains{opacity:1}#screen[data-phase=flown] .dragon-body-wrap{display:none}#screen[data-phase=flown] .flight-stage{display:block;animation:wingDeploy 1.25s cubic-bezier(.16,.72,.2,1) both,flightBob 1.42s ease-in-out 1.25s infinite}#screen[data-phase=flown] .flight-wing-motion{animation:wingMotion .4s cubic-bezier(.35,0,.22,1) infinite}#screen[data-phase=flown] .flight-wing-right .flight-wing-motion{animation-delay:18ms}#screen[data-phase=flown] .flight-wing-image--down{animation:wingPoseDown .4s steps(1,end) infinite}#screen[data-phase=flown] .flight-wing-image--mid{animation:wingPoseMid .4s steps(1,end) infinite}#screen[data-phase=flown] .flight-wing-image--up{animation:wingPoseUp .4s steps(1,end) infinite}#screen[data-phase=flown] .flight-wing-right .flight-wing-image{animation-delay:18ms}#screen[data-phase=flown] .forest{animation:forestFlight 2.2s ease-out both,forestBreath 40s ease-in-out infinite alternate}#screen[data-phase=flown] .phase-copy{top:70%}#screen[data-phase=flown] .tweet-callout{top:80.5%}@keyframes forestFlight{0%{background-position:center bottom}to{background-position:center 4%}}@media (max-width: 1120px){#screen{min-width:680px}.egg-cluster{width:min(36vw,460px)}.dragon-layer{width:min(70vw,900px);min-width:560px}.gauge-deck{left:2.5vw;right:2.5vw;gap:5px}.session-strip{left:2.5vw;right:2.5vw}.corner-stats{right:2.5vw}}@media (max-height: 720px){.top-ui{min-height:112px}.countdown-block{top:1.3vh}.countdown-label{margin-top:10px}.gauge-deck{bottom:10vh;height:24vh;min-height:160px}.phase-copy{top:72%}.join-qr-canvas{width:min(52vh,52vw,620px)}.tweet-callout{top:78%}.corner-stats{bottom:15vh}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}#screen[data-phase=flown] .flight-wing-motion{transform:rotate(0)}#screen[data-phase=flown] .flight-wing-image--mid{opacity:1}#screen[data-phase=flown] .flight-wing-image--down,#screen[data-phase=flown] .flight-wing-image--up{opacity:0}}
