*,:before,:after{box-sizing:border-box}body{color:#f3eefc;background:#1a1030;margin:0;font-family:system-ui,-apple-system,Segoe UI,Malgun Gothic,sans-serif}.hero{justify-content:center;align-items:center;height:100dvh;display:flex}.hero-stage{--stage-w:min(100vw, 177.577vh);width:var(--stage-w);aspect-ratio:1671/941;position:relative}@supports (height:100dvh){.hero-stage{--stage-w:min(100vw, 177.577dvh)}}.hero-intro{font-family:Segoe UI,system-ui,-apple-system,sans-serif;font-size:calc(var(--stage-w) * 16 / 1671);color:#ded4ff;white-space:nowrap;margin:0;font-weight:400;line-height:1.35;display:grid;position:absolute}.hero-intro__text{grid-area:1/1}.hero-intro__text>span{display:block}.hero-intro__text--ko{visibility:hidden;font-family:Malgun Gothic,Apple SD Gothic Neo,system-ui,sans-serif}@media (hover:hover){.hero-intro{cursor:default}.hero-intro__text--ko{visibility:visible}.hero-intro__text>span{transition:opacity .32s,filter .32s,transform .32s,letter-spacing .45s,text-shadow .6s}.hero-intro__text--en>span{transition-delay:calc(.12s + var(--i) * 50ms)}.hero-intro__text--ko>span{opacity:0;filter:blur(5px);letter-spacing:.25em;transform:translateY(.35em)}.hero-intro:hover .hero-intro__text--en>span{opacity:0;filter:blur(4px);transition-delay:calc(var(--i) * 60ms);transform:translateY(-.3em)}.hero-intro:hover .hero-intro__text--ko>span{opacity:1;filter:blur();letter-spacing:normal;animation:hero-intro-glow 1.1s ease-out calc(.14s + var(--i) * 90ms) both;transition-delay:calc(.14s + var(--i) * 90ms);transform:none}.hero-intro:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(90deg,#0000 46%,#5af0ff38 49%,#c8fcffd9 50%,#5af0ff38 51%,#0000 54%);position:absolute;inset:-12% -4%;transform:translate(-52%)}.hero-intro:hover:after{animation:.75s ease-in-out both hero-intro-scan}}@keyframes hero-intro-scan{0%{opacity:0;transform:translate(-52%)}15%,80%{opacity:1}to{opacity:0;transform:translate(52%)}}@keyframes hero-intro-glow{0%{text-shadow:0 0 .5em #5af0ffe6,0 0 .15em #c8fcffe6}to{text-shadow:0 0 .5em #5af0ff00,0 0 .15em #c8fcff00}}@media (hover:hover) and (prefers-reduced-motion:reduce){.hero-intro__text>span{transition:none}.hero-intro:hover .hero-intro__text--ko>span,.hero-intro:hover:after{animation:none}}.hero-image{width:100%;height:100%;display:block}.sign-layer{position:absolute;inset:0}.sign-hotspot{cursor:pointer;background:0 0;border:0;border-radius:3px;margin:0;padding:0;transition:box-shadow .35s,background-color .35s;position:absolute;box-shadow:0 0 #5af0ff00}.sign-hotspot:focus{outline:none}@media (hover:hover){.sign-hotspot:hover{background-color:#46dcff12;box-shadow:0 0 0 1.5px #6ef5ffe6,0 0 10px 1px #28d2ff8c,0 0 26px 4px #2882ff59,inset 0 0 16px #3cdcff47}}.sign-hotspot:focus-visible{background-color:#46dcff12;box-shadow:0 0 0 1.5px #6ef5ffe6,0 0 10px 1px #28d2ff8c,0 0 26px 4px #2882ff59,inset 0 0 16px #3cdcff47}@media (prefers-reduced-motion:reduce){.sign-hotspot{transition:none}}.sign-item{display:contents}.sign-text-cover,.sign-text-glow,.sign-text-scan{pointer-events:none;display:none;position:absolute}@media (hover:hover){.sign-text-cover,.sign-text-glow,.sign-text-scan{display:block}}.sign-text-cover{clip-path:inset(0);background-repeat:no-repeat;background-size:100% 100%;transition:clip-path .35s ease-in}.sign-text-glow{mix-blend-mode:screen;opacity:0;background:radial-gradient(#5aebff47,#3ca0ff14 60%,#0000 80%);border-radius:4px;transition:opacity .3s}.sign-text-scan{opacity:0;overflow:hidden}.sign-text-scan:before{content:"";filter:blur(1.5px);mix-blend-mode:screen;background:linear-gradient(90deg,#0000,#78f5ffd9 50%,#0000);width:14%;position:absolute;top:-10%;bottom:-10%;left:0;transform:translate(-120%)}@media (hover:hover){.sign-hotspot:hover~.sign-text-cover{clip-path:inset(0 0 0 100%);transition:clip-path .6s cubic-bezier(.3,.6,.3,1)}.sign-hotspot:hover~.sign-text-glow{opacity:1;transition:opacity .5s .35s}.sign-hotspot:hover~.sign-text-scan{opacity:1}.sign-hotspot:hover~.sign-text-scan:before{animation:.65s cubic-bezier(.3,.6,.3,1) forwards sign-scan}}.sign-hotspot:focus-visible~.sign-text-cover{clip-path:inset(0 0 0 100%);transition:clip-path .6s cubic-bezier(.3,.6,.3,1)}.sign-hotspot:focus-visible~.sign-text-glow{opacity:1;transition:opacity .5s .35s}.sign-hotspot:focus-visible~.sign-text-scan{opacity:1}.sign-hotspot:focus-visible~.sign-text-scan:before{animation:.65s cubic-bezier(.3,.6,.3,1) forwards sign-scan}@keyframes sign-scan{0%{opacity:1;transform:translate(-120%)}85%{opacity:1}to{opacity:0;transform:translate(720%)}}@media (prefers-reduced-motion:reduce){.sign-text-cover,.sign-hotspot:hover~.sign-text-cover,.sign-hotspot:focus-visible~.sign-text-cover{transition:none}.sign-text-scan{display:none!important}}.cleanup-layer{pointer-events:none;position:absolute;inset:0}.cleanup-patch{background-repeat:no-repeat;background-size:100% 100%;position:absolute}.city-lights{pointer-events:none;position:absolute;inset:0}.window-light{aspect-ratio:1;opacity:0;border-radius:50%;width:.36%;animation-timing-function:ease-in-out;animation-iteration-count:infinite;position:absolute;transform:translate(-50%,-50%)}.window-light--twinkle{background:radial-gradient(circle, #fff 0 18%, var(--light-color) 40%, transparent 72%);mix-blend-mode:screen;animation-name:window-twinkle}.window-light--off{background:#18123ae0;border-radius:1px;width:.24%;animation-name:window-off}@keyframes window-twinkle{0%,62%,to{opacity:0}72%{opacity:.85}80%{opacity:.35}86%{opacity:.8}94%{opacity:0}}@keyframes window-off{0%,55%,to{opacity:0}58%,88%{opacity:1}91%{opacity:0}}.tower-beacon{aspect-ratio:1;mix-blend-mode:screen;background:radial-gradient(circle,#fff 0 12%,#ff3b3b 32%,#ff282873 52%,#0000 72%);border-radius:50%;width:.5%;animation:3s ease-in-out infinite tower-blink;position:absolute;transform:translate(-50%,-50%)}@keyframes tower-blink{0%,to{opacity:.12}6%,30%{opacity:1}38%{opacity:.12}}.rooftop-beacon{aspect-ratio:1;opacity:.1;background:radial-gradient(circle,#ffd0d0 0 8%,#ff2a3a 26%,#ff142d73 46%,#0000 72%);border-radius:50%;width:.34%;animation-name:rooftop-blink;animation-timing-function:ease-in-out;animation-iteration-count:infinite;position:absolute;transform:translate(-50%,-50%)}@keyframes rooftop-blink{0%,to{opacity:.1}8%,30%{opacity:1}42%{opacity:.1}}.river-glint{background:radial-gradient(ellipse, #fff 0 8%, var(--light-color) 34%, transparent 70%);filter:blur(.5px);mix-blend-mode:screen;opacity:0;border-radius:50%;width:1.9%;height:.26%;animation-name:river-glint;animation-timing-function:ease-in-out;animation-iteration-count:infinite;position:absolute;transform:translate(-50%,-50%)}@keyframes river-glint{0%,to{opacity:0;transform:translate(-50%,-50%)scaleX(.5)}30%{opacity:1;transform:translate(-36%,-50%)scaleX(1.1)}50%{opacity:.6;transform:translate(-54%,-50%)scaleX(.85)}65%{opacity:.9;transform:translate(-64%,-50%)scaleX(1.25)}88%{opacity:0;transform:translate(-50%,-50%)scaleX(.7)}}.bridge-car{aspect-ratio:1;background:radial-gradient(circle, #fff 0 15%, var(--light-color) 40%, transparent 72%);mix-blend-mode:screen;border-radius:50%;width:.42%;animation-name:bridge-car;animation-timing-function:linear;animation-iteration-count:infinite;position:absolute;transform:translate(-50%,-50%)}@keyframes bridge-car{0%{left:var(--from);opacity:0}8%,92%{opacity:.9}to{left:var(--to);opacity:0}}.lamp-glow{aspect-ratio:1;mix-blend-mode:screen;opacity:.5;background:radial-gradient(circle,#ffd68c8c 0,#ffaa4638 30%,#0000 62%);border-radius:50%;animation-timing-function:ease-in-out;animation-iteration-count:infinite;position:absolute;transform:translate(-50%,-50%)}.lamp-glow--breathe{animation-name:lamp-breathe}.lamp-glow--flicker{animation-name:lamp-flicker}@keyframes lamp-breathe{0%,to{opacity:.45}50%{opacity:.85}}@keyframes lamp-flicker{0%,70%,to{opacity:.65}72%{opacity:.25}74%{opacity:.7}76%{opacity:.35}79%{opacity:.65}}.robot-sprite{pointer-events:none;transform-origin:50% 100%;animation:5.2s ease-in-out infinite robot-idle;position:absolute;overflow:hidden;-webkit-mask:url(/images/derived/robot-3f-mask.png) 0 0/100% 100% no-repeat;mask:url(/images/derived/robot-3f-mask.png) 0 0/100% 100% no-repeat}.robot-sprite__image{max-width:none;position:absolute}@keyframes robot-idle{0%,to{transform:translate(0)scaleY(1)}30%{transform:translate(1%)scaleY(1.011)}55%{transform:translate(0)scaleY(1.004)}80%{transform:translate(-1%)scaleY(1.011)}}.robot-light{aspect-ratio:1;mix-blend-mode:screen;opacity:.3;background:radial-gradient(circle,#fff 0 14%,#7fe9ff 36%,#3caaff73 55%,#0000 74%);border-radius:50%;animation-name:robot-light-pulse;animation-timing-function:ease-in-out;animation-iteration-count:infinite;position:absolute;transform:translate(-50%,-50%)}.robot-light--eye{animation-duration:2.6s}.robot-light--chest{animation-duration:3.4s;animation-delay:-1.1s}@keyframes robot-light-pulse{0%,to{opacity:.25}50%{opacity:1}}.workers-layer{pointer-events:none;contain:paint;position:absolute;inset:0}.panorama-sprite{--ipx:calc(100% / 1671);--ipy:calc(100% / 941);animation-timing-function:ease-in-out;animation-iteration-count:infinite;position:absolute;inset:0;-webkit-mask-image:radial-gradient(closest-side,#000 68%,#0000 100%);mask-image:radial-gradient(closest-side,#000 68%,#0000 100%);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.panorama-sprite__image{width:100%;height:100%;display:block}.worker-head--a{animation-name:head-look-a}.worker-head--b{animation-name:head-look-b}.worker-head--c{animation-name:head-look-c}.worker-head--d{animation-name:head-look-d}@keyframes head-look-a{0%,10%{transform:rotate(0)translate(0)}16%,36%{transform:rotate(-4deg) translate(calc(var(--ipx) * -.85), 0)}42%,50%{transform:rotate(0)translate(0)}56%,72%{transform:rotate(4deg) translate(calc(var(--ipx) * .85), 0)}78%,86%{transform:rotate(0) translate(0, calc(var(--ipy) * .75))}92%,to{transform:rotate(0)translate(0)}}@keyframes head-look-b{0%,18%{transform:rotate(0)translate(0)}24%,30%{transform:rotate(0) translate(0, calc(var(--ipy) * .85))}36%,60%{transform:rotate(4.5deg) translate(calc(var(--ipx) * 1), 0)}66%,70%{transform:rotate(0)translate(0)}76%,90%{transform:rotate(-3deg) translate(calc(var(--ipx) * -.6), 0)}96%,to{transform:rotate(0)translate(0)}}@keyframes head-look-c{0%,6%{transform:rotate(0)translate(0)}12%,22%{transform:rotate(3.5deg) translate(calc(var(--ipx) * .7), 0)}28%,52%{transform:rotate(-4deg) translate(calc(var(--ipx) * -.85), 0)}58%,68%{transform:rotate(0) translate(0, calc(var(--ipy) * .75))}74%,to{transform:rotate(0)translate(0)}}@keyframes head-look-d{0%,26%{transform:rotate(0)translate(0)}32%,44%{transform:rotate(-3.5deg) translate(calc(var(--ipx) * -.65), 0)}50%,54%{transform:rotate(0)translate(0)}60%,66%{transform:rotate(0) translate(0, calc(var(--ipy) * .85))}72%,88%{transform:rotate(4deg) translate(calc(var(--ipx) * .8), 0)}94%,to{transform:rotate(0)translate(0)}}.worker-hands{animation-name:typing;animation-timing-function:linear}@keyframes typing{0%{transform:translate(0)}4%{transform:translate(calc(var(--ipx) * .35), calc(var(--ipy) * -.7))}8%{transform:translate(0)}12%{transform:translate(calc(var(--ipx) * -.35), calc(var(--ipy) * -.6))}16%{transform:translate(0)}20%{transform:translate(calc(var(--ipx) * .45), calc(var(--ipy) * -.8))}24%{transform:translate(0)}28%{transform:translate(calc(var(--ipx) * -.25), calc(var(--ipy) * -.5))}32%{transform:translate(0)}36%{transform:translate(calc(var(--ipx) * .35), calc(var(--ipy) * -.7))}40%{transform:translate(0)}46%{transform:translate(calc(var(--ipx) * -.45), calc(var(--ipy) * -.6))}50%,to{transform:translate(0)}}.foliage-layer{pointer-events:none;contain:paint;position:absolute;inset:0}.foliage-sway--a{animation-name:foliage-sway-a}.foliage-sway--b{animation-name:foliage-sway-b}@keyframes foliage-sway-a{0%,to{transform:rotate(0)}18%{transform:rotate(.7deg)}32%{transform:rotate(-.16deg)}52%{transform:rotate(.9deg)}64%{transform:rotate(.24deg)}80%{transform:rotate(.56deg)}}@keyframes foliage-sway-b{0%,to{transform:rotate(0)}22%{transform:rotate(-.6deg)}40%{transform:rotate(.2deg)}58%{transform:rotate(-.84deg)}76%{transform:rotate(-.12deg)}88%{transform:rotate(-.4deg)}}.cat-layer{pointer-events:none;contain:paint;position:absolute;inset:0}.cat{aspect-ratio:60/34;transform-origin:0 0;will-change:transform;filter:drop-shadow(0 0 1.2px #ffaf5f66);position:absolute;top:0;left:0}.cat:after{content:"";background:radial-gradient(#00000080,#0000 70%);border-radius:50%;height:12%;position:absolute;bottom:-4%;left:18%;right:18%}.cat__pose{fill:#0c0a12;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.cat__tail path{fill:none;stroke:#0c0a12;stroke-width:2.6px;stroke-linecap:round}.cat[data-state=sit] .cat__pose--walk,.cat:not([data-state=sit]) .cat__pose--sit{display:none}.cat__leg,.cat__tail,.cat__head,.cat__body{transform-box:fill-box}.cat__leg{transform-origin:50% 0;animation:.56s ease-in-out infinite alternate cat-leg}.cat__leg--b{animation-delay:-.56s}.cat__body{animation:.28s ease-in-out infinite alternate cat-bob}.cat[data-state=pause] .cat__leg,.cat[data-state=pause] .cat__body,.cat[data-state=alert] .cat__leg,.cat[data-state=alert] .cat__body{animation-play-state:paused}.cat[data-state=chase] .cat__leg{animation-duration:.2s}.cat[data-state=chase] .cat__leg--b{animation-delay:-.2s}.cat[data-state=chase] .cat__body{animation-duration:.1s}@keyframes cat-leg{0%{transform:rotate(-24deg)}to{transform:rotate(24deg)}}@keyframes cat-bob{0%{transform:translateY(0)}to{transform:translateY(.7px)}}.cat__tail{transform-origin:100% 100%;animation:2.4s ease-in-out infinite alternate cat-tail}.cat__tail--sit{transform-origin:100% 100%;animation:3.7s ease-in-out infinite cat-tail-sit}@keyframes cat-tail{0%{transform:rotate(-10deg)}to{transform:rotate(12deg)}}@keyframes cat-tail-sit{0%,60%,to{transform:rotate(0)}70%{transform:rotate(-14deg)}80%{transform:rotate(4deg)}}.cat__head--sit{transform-origin:40% 100%;animation:6.3s ease-in-out infinite cat-look}@keyframes cat-look{0%,18%,to{transform:rotate(0)}26%,44%{transform:rotate(-10deg)}52%,70%{transform:rotate(7deg)}78%{transform:rotate(0)translateY(.6px)}}.cat__eye{fill:#e6f27a;opacity:.15;animation:4.6s ease-in-out infinite cat-eye}@keyframes cat-eye{0%,70%,to{opacity:.15}78%,86%{opacity:.95}}.neon-sign{pointer-events:none;position:absolute;inset:0}.neon-sign__off{mix-blend-mode:darken;opacity:0;background:#071e6c;border-radius:3px;animation-timing-function:step-end;animation-iteration-count:infinite;position:absolute}.neon-sign__off--faulty{animation-name:neon-faulty}.neon-sign__off--weak{animation-name:neon-weak}.neon-sign__off--rare{animation-name:neon-rare}@keyframes neon-faulty{0%{opacity:0}31%{opacity:1}31.6%{opacity:0}32.3%{opacity:.85}32.8%{opacity:0}33.6%{opacity:1}34.1%{opacity:0}71%{opacity:1}80%{opacity:.5}80.6%{opacity:1}81.4%{opacity:.3}82%{opacity:1}82.5%{opacity:0}to{opacity:0}}@keyframes neon-weak{0%{opacity:0}54%{opacity:.6}55.2%{opacity:.2}56%{opacity:.7}57.5%{opacity:0}88%{opacity:1}88.6%{opacity:0}to{opacity:0}}@keyframes neon-rare{0%{opacity:0}46%{opacity:1}46.5%{opacity:0}47.3%{opacity:1}47.7%{opacity:0}to{opacity:0}}@media (prefers-reduced-motion:reduce){.cat__leg,.cat__body,.cat__tail,.cat__head,.cat__eye{animation:none}.neon-sign__off{opacity:0;animation:none}.panorama-sprite,.robot-sprite,.robot-light{animation:none}.robot-light{opacity:0}.rooftop-beacon,.river-glint,.bridge-car,.lamp-glow,.window-light,.tower-beacon{opacity:0;animation:none}}.street-layer{pointer-events:none;position:absolute;inset:auto 0 0}.projects{gap:16px;max-width:960px;margin:0 auto;padding:32px 16px;display:grid}.project{background:#ffffff0f;border-radius:12px;padding:20px}.project h2{margin:0 0 4px}.project-floor{color:#f6c56b;margin:0 0 8px;font-size:.85rem}.top-nav{z-index:2;pointer-events:none;position:absolute;inset:0}.top-nav__item{border-radius:calc(var(--stage-w) * 6 / 1671);cursor:pointer;pointer-events:auto;-webkit-tap-highlight-color:transparent;background:0 0;border:0;margin:0;padding:0;position:absolute}.top-nav__item:after{content:"";left:var(--ul-l);right:var(--ul-r);height:calc(var(--stage-w) * 3 / 1671);box-shadow:0 0 calc(var(--stage-w) * 8 / 1671) #5af0ffcc;opacity:0;background:#5ae8ff;border-radius:999px;transition:transform .25s,opacity .25s;position:absolute;bottom:17%;transform:scaleX(0)}.top-nav__item:hover:after,.top-nav__item:focus-visible:after,.top-nav__item.is-active:after{opacity:1;transform:scaleX(1)}.top-nav__item[data-nav=home][aria-current=page]:after{opacity:0}.top-nav__item:focus{outline:none}.top-nav__item:focus-visible{outline-offset:-2px;outline:2px solid #5af0ffd9}.info-panel{overscroll-behavior:contain;box-sizing:border-box;width:27.5284%;max-height:76.5143%;font-family:Segoe UI,Malgun Gothic,Apple SD Gothic Neo,system-ui,sans-serif;font-size:max(12px, calc(var(--stage-w) * 15 / 1671));color:#e8e4ff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:3;opacity:0;visibility:hidden;transform-origin:top;background:linear-gradient(160deg,#101638e0,#081e32d6);border:1px solid #5af0ff52;border-radius:.9em;padding:1.2em 1.4em 1.3em;line-height:1.55;transition:opacity .28s,transform .28s,visibility 0s linear .28s;position:absolute;top:10.2019%;left:68.8211%;overflow-y:auto;transform:translateY(-.6em)scale(.98);box-shadow:inset 0 0 0 1px #5af0ff0f,0 1em 3em #00000073,0 0 1.6em #5af0ff1f}.info-panel.is-open{opacity:1;visibility:visible;transition:opacity .28s,transform .28s,visibility;transform:none}.info-panel__head{justify-content:space-between;align-items:center;gap:1em;margin-bottom:.7em;display:flex}.info-panel h2{letter-spacing:.08em;color:#8ff3ff;text-shadow:0 0 .6em #5af0ff73;margin:0;font-size:1.35em;font-weight:600}.info-panel h2:focus{outline:none}.info-panel__close{color:#cfeffd;cursor:pointer;background:0 0;border:1px solid #5af0ff59;border-radius:50%;flex:none;place-items:center;width:2em;height:2em;margin:0;padding:0;font-size:1em;line-height:1;transition:background-color .2s,border-color .2s;display:grid}.info-panel__close span{font-size:1.4em;transform:translateY(-.05em)}.info-panel__close:hover{background:#5af0ff24;border-color:#5af0ffb3}.info-panel__close:focus-visible{outline-offset:2px;outline:2px solid #5af0ffd9}.info-panel__body{animation:.35s both info-panel-in}.info-panel__body p{margin:0 0 .7em}.info-panel__lead{color:#f3f0ff}.info-panel__kicker{letter-spacing:.25em;color:#8ff3ff;font-size:.8em}.info-panel__projects{margin:0 0 .8em;padding:0;list-style:none}.info-panel__projects li{border-top:1px solid #ffffff14;grid-template-columns:auto 1fr;align-items:start;gap:.85em;padding:.65em 0;display:grid}.info-panel__floor{text-align:center;color:#8ff3ff;border:1px solid #5af0ff66;border-radius:.4em;min-width:2.2em;padding:.12em .4em;font-size:.82em;font-weight:600}.info-panel__project strong,.info-panel__sub,.info-panel__tagline{display:block}.info-panel__project strong{color:#fff;font-size:1.05em;font-weight:600}.info-panel__sub{color:#b8b2e0;font-size:.88em}.info-panel__tagline{color:#dcd6ff;margin-top:.15em;font-size:.9em}.info-panel__topics{margin:0 0 .8em;padding:0;list-style:none}.info-panel__topics li{border-top:1px solid #ffffff14;padding:.55em 0}.info-panel__topics strong{color:#fff;font-weight:600;display:block}.info-panel__topics a{color:inherit;text-decoration:none}.info-panel__topics a:hover strong,.info-panel__topics a:focus-visible strong{color:#8ff3ff}.info-panel__desc{color:#d6d1f4;word-break:keep-all;margin-top:.2em;font-size:.9em;line-height:1.6;display:block}.info-panel__about p{word-break:keep-all;margin:0 0 .95em}.info-panel__about .info-panel__kicker{margin-bottom:.35em}.info-panel__slogan{color:#fff;font-size:1.12em;font-weight:600;line-height:1.45}.info-panel__about .info-panel__slogan{margin-bottom:1.1em}.info-panel__about p:not([class]){color:#d6d1f4;font-size:.94em;line-height:1.72}.info-panel__about .info-panel__closing{color:#8ff3ff;text-shadow:0 0 .6em #5af0ff59;border-top:1px solid #5af0ff38;margin:1.2em 0 0;padding-top:.9em;font-weight:600}.info-panel__note{color:#9d97c8;font-size:.85em}.info-panel__status{color:#cfcaf0}.info-panel__badge{color:#8ff3ff;background:#5af0ff1f;border:1px solid #5af0ff61;border-radius:999px;margin-right:.5em;padding:.1em .6em;font-size:.78em;display:inline-block}@keyframes info-panel-in{0%{opacity:0;transform:translateY(.4em)}to{opacity:1;transform:none}}@media (width<=700px){.info-panel{transform-origin:bottom;width:auto;max-height:55dvh;font-size:14px;position:fixed;inset:auto 12px 12px;transform:translateY(.8em)}.info-panel.is-open{transform:none}.info-panel__close{width:44px;height:44px}}@media (prefers-reduced-motion:reduce){.top-nav__item:after,.info-panel,.info-panel.is-open{transition:none}.info-panel__body{animation:none}}.project-popup-layer{z-index:20;pointer-events:none;visibility:hidden;opacity:0;place-items:center;transition:opacity .24s,visibility 0s linear .24s;display:grid;position:fixed;inset:0}.project-popup-layer.is-open{visibility:visible;opacity:1;transition-delay:0s}.project-popup{color:#f3eefc;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);word-break:keep-all;overflow-wrap:anywhere;background:#0d1630f2;border:1px solid #5af0ff61;border-radius:18px;flex-direction:column;width:min(900px,100vw - 32px);min-height:0;max-height:85dvh;font-size:16px;line-height:1.7;transition:transform .24s;display:flex;overflow:hidden;transform:translateY(8px);box-shadow:0 20px 60px #00000073,0 0 24px #5af0ff1a}.project-popup-layer.is-open .project-popup{pointer-events:auto;transform:none}.project-popup__head{flex:none;justify-content:space-between;align-items:flex-start;gap:16px;padding:24px 28px 12px;display:flex}.project-popup__field{color:#aac8d9;margin:0 0 4px;font-size:14px}.project-popup h2{color:#8ff3ff;margin:0;font-size:clamp(22px,2.2vw,30px);line-height:1.3}.project-popup h2:focus{outline:none}.project-popup__close{border-radius:50%;flex:none;width:44px;height:44px;font-size:28px;line-height:1}.project-popup button{color:#cfeffd;cursor:pointer;background:0 0;border:1px solid #5af0ff61}.project-popup button:hover,.project-popup button[aria-pressed=true]{background:#5af0ff24;border-color:#8ff3ff}.project-popup button:focus-visible,.project-popup__body:focus-visible{outline-offset:-3px;outline:2px solid #8ff3ff}.project-popup__floors{border-bottom:1px solid #5af0ff33;flex:none;gap:8px;padding:0 28px 16px;display:flex}.project-popup__floors button{min-width:48px;min-height:44px;font:inherit;border-radius:8px;padding:6px 12px}.project-popup__body{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#52778b #101a30;min-height:0;padding:20px 28px 28px;overflow-y:auto}.project-popup__body section+section{margin-top:24px}.project-popup h3{color:#8ff3ff;margin:0 0 8px;font-size:17px}.project-popup__body p{margin:0}.project-popup__pending{color:#b7b3c9}.project-popup__image-placeholder{color:#b7b3c9;border:1px dashed #5af0ff4d;border-radius:10px;place-items:center;min-height:110px;display:grid}@media (width<=600px){.project-popup{border-radius:14px;width:calc(100vw - 24px);font-size:15px}.project-popup__head{gap:10px;padding:18px 18px 12px}.project-popup__floors{padding:0 18px 12px}.project-popup__body{padding:18px}}@media (prefers-reduced-motion:reduce){.project-popup-layer,.project-popup{transition:none;transform:none}}:is(.hero-stage:has(.project-popup-layer.is-open)>.info-panel,.hero-stage:has(.info-panel.is-open)>.project-popup-layer){visibility:hidden;opacity:0;transition:none}.project-popup__figure{margin:0}.project-popup__figure img{border-radius:10px;width:100%;height:auto;display:block}.project-popup__figure figcaption{color:#aac8d9;margin-top:8px;font-size:14px}.project-popup__figure--portrait img{max-width:420px;margin-inline:auto}.project-popup__figure--portrait figcaption{text-align:center}.project-popup__gallery{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));align-items:start;gap:20px;display:grid}.book-intro__status{color:#9ff0d7;background:#379d8d29;border-radius:20px;padding:4px 12px;font-size:14px;display:inline-block}.project-popup .book-intro__title{color:#f4eee0;margin:18px 0 8px;font-size:clamp(25px,4vw,34px)}.book-intro__subtitle{color:#dfdbd1}.project-popup .book-intro__author{color:#b7c9da;margin-top:10px}.book-intro__description{margin-top:24px}.book-intro__description p+p{margin-top:12px}.book-intro__actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.book-action{color:#c6f7f5;min-height:44px;font:inherit;cursor:pointer;background:#142b40;border:1px solid #74e0e78c;border-radius:9px;padding:10px 17px;text-decoration:none}.book-action:hover:not(:disabled){background:#1c3d53}.book-action:focus-visible{outline-offset:3px;outline:2px solid #8bedf6}.book-action:disabled{opacity:.55;cursor:not-allowed}.project-popup .book-intro__note{color:#b8c6d5;margin-top:12px;font-size:14px}.book-reader__toolbar{z-index:1;background:#111d32;padding:0 0 16px;position:sticky;top:-20px}.book-reader__pages{color:#e4e1d9;word-break:keep-all;overflow-wrap:anywhere;max-width:660px;margin:0 auto;padding:12px 8px 32px;font-family:Georgia,Noto Serif KR,Malgun Gothic,serif;font-size:18px;line-height:1.95}.book-reader__source-block{white-space:pre-line}.project-popup .book-reader h3{color:#f4e6cd;margin:14px 0;font-size:clamp(24px,4vw,32px);line-height:1.5}.book-reader__subtitle{color:#bacece}.book-reader h4{color:#b8e2de;margin:28px 0 14px;font-size:21px;line-height:1.6}.book-reader__space{height:.45em}.book-reader__pages>section+section{border-top:1px solid #b8e2de2e;margin-top:48px;padding-top:36px}.book-reader__pages p+p{margin-top:.9em}.book-reader__titlepage{text-align:center;padding:28px 0 12px}.book-reader__eng{letter-spacing:.28em;color:#9fb7c4;font-size:14px}.book-reader__titlepage .book-reader__subtitle{margin:18px 0 30px;line-height:1.7}.project-popup .book-reader__author{color:#e4e1d9;font-size:18px}.project-popup .book-reader__editor{color:#9fb0bf;margin-top:4px;font-size:14px}.book-reader__chapter-title{margin-top:0}.project-popup .book-reader__imprint{color:#8fa0ad;margin:4px 0 22px;font-size:13px}.book-reader h5{color:#b8e2de;margin:24px 0 10px;font-size:18px;line-height:1.6}.book-reader__toc h4{text-align:center}.book-reader__toc ol{margin:0;padding:0;font-size:16px;line-height:1.5;list-style:none}.book-reader__toc li{border-bottom:1px solid #b8e2de1f;gap:12px;padding:9px 2px;display:flex}.book-reader__toc li:last-child{border-bottom:0}.book-reader__toc-number{color:#9fb7c4;flex:0 0 4.6em;font-size:14px}@media (width<=600px){.book-reader__pages{padding:8px 0 24px;font-size:17px;line-height:1.9}.book-reader__toolbar{top:-18px}.book-intro__actions{gap:10px}}.project-detail__features{margin:0;padding-left:22px}.project-detail__features li+li{margin-top:5px}.fireworks-layer{pointer-events:none;position:absolute;inset:0}.fireworks{display:block;position:absolute}.jukebox__button{z-index:1;cursor:pointer;background:0 0;border:0;border-radius:40% 40% 4% 4%/30% 30% 3% 3%;margin:0;padding:0;position:absolute}.jukebox__art{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.jb-base{filter:brightness(.92)saturate(.92);transition:filter .9s}.jb-glow{opacity:0;transition:opacity .9s}.jukebox.is-on .jb-base{filter:brightness()saturate()}.jukebox.is-on .jb-glow{opacity:calc(.62 + var(--jb-level,.5) * .38);transition:opacity .12s linear}.jukebox.is-on .jb-glow__halo{opacity:calc(.45 + var(--jb-level,.5) * .55)}.jukebox.is-on .jb-glow__tubes,.jukebox.is-on .jb-glow__band{animation:9s linear infinite jb-hue}.jukebox.is-on .jb-glow__keys rect{animation:2.4s ease-in-out infinite jb-key}.jukebox.is-on .jb-glow__star{animation:1.8s ease-in-out infinite jb-star}.jb-bubble{fill:#ffffe6d9;opacity:0}.jukebox.is-on .jb-bubble{animation:3.6s linear infinite jb-bubble}.jukebox__floor{opacity:0;pointer-events:none;background:radial-gradient(closest-side,#ffaa508c,#ff5a3c33 55%,#0000);border-radius:50%;height:16%;transition:opacity .9s;position:absolute;bottom:-6%;left:-30%;right:-30%}.jukebox.is-on .jukebox__floor{opacity:calc(.35 + var(--jb-level,.5) * .65);transition:opacity .12s linear}@keyframes jb-hue{0%,to{filter:hue-rotate()}50%{filter:hue-rotate(40deg)}}@keyframes jb-key{0%,to{opacity:.35}50%{opacity:1}}@keyframes jb-star{0%,to{opacity:.7}50%{opacity:1}}@keyframes jb-bubble{0%{opacity:0;transform:translateY(0)}12%{opacity:1}80%{opacity:.9}to{opacity:0;transform:translateY(-150px)}}@media (hover:hover){.jukebox__button:hover .jb-base{filter:brightness()saturate(.95)}}.jukebox__button:focus{outline:none}.jukebox__button:focus-visible{box-shadow:0 0 0 1.5px #6ef5ffe6,0 0 14px 2px #28d2ff73}.jukebox__controls{z-index:2;font-size:max(12px, calc(var(--stage-w) * 14 / 1671));color:#f3eaff;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transform-origin:0;opacity:0;visibility:hidden;background:linear-gradient(120deg,#1416389e,#0a22348c);border:1px solid #ffc88259;border-radius:999px;align-items:center;gap:.45em;padding:.4em .7em;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .25s,visibility 0s linear .35s;display:flex;position:absolute;transform:translateY(-50%)scaleX(.2);box-shadow:0 .4em 1.4em #00000059,0 0 1em #ffaa5026}.jukebox.is-open .jukebox__controls{opacity:1;visibility:visible;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .25s,visibility;transform:translateY(-50%)scaleX(1)}.jukebox__ctl{width:2.3em;height:2.3em;color:inherit;cursor:pointer;background:#ffffff14;border:1px solid #ffdcaa73;border-radius:50%;place-items:center;padding:0;transition:background-color .2s,box-shadow .2s;display:grid}.jukebox__ctl svg{fill:currentColor;width:1.15em;height:1.15em}.jukebox__ctl:hover:not([aria-disabled=true]),.jukebox__ctl:focus-visible{background:#ffbe6e38;outline:none;box-shadow:0 0 .8em #ffaa5073}.jukebox__ctl[aria-disabled=true]{opacity:.4;cursor:default}.jukebox__ctl--play[aria-pressed=true]{background:#ffaa504d;box-shadow:0 0 .9em #ffaa508c}.jukebox__volume{align-items:center;gap:.3em;display:flex}.jukebox__volume svg{fill:currentColor;stroke:currentColor;width:1.15em;height:1.15em}.jukebox__volume input{accent-color:#ffb85c;width:5.5em}.jukebox__note{white-space:nowrap;opacity:.85;font-size:.85em}@media (width<=700px){.jukebox__controls{transform-origin:50%;font-size:14px;position:fixed;bottom:16px;transform:translate(-50%)scale(.9);top:auto!important;left:50%!important}.jukebox.is-open .jukebox__controls{transform:translate(-50%)scale(1)}.jukebox__ctl{width:44px;height:44px}.jukebox__button:before{content:"";position:absolute;inset:-14px}}@media (prefers-reduced-motion:reduce){.jb-base,.jb-glow,.jukebox__floor,.jukebox__controls,.jukebox.is-open .jukebox__controls{transition:none}.jukebox.is-on .jb-glow__tubes,.jukebox.is-on .jb-glow__band,.jukebox.is-on .jb-glow__keys rect,.jukebox.is-on .jb-glow__star,.jukebox.is-on .jb-bubble{animation:none}}.info-panel__status a,.info-panel__status a:visited{color:#fff}.tower-egg{z-index:1;cursor:pointer;background:0 0;border:0;border-radius:45%;margin:0;padding:0;position:absolute}.tower-egg__glow{mix-blend-mode:screen;opacity:0;pointer-events:none;background:radial-gradient(at 50% 55%,#ffd6ec52,#be96ff1f 45%,#0000 70%);border-radius:50%;transition:opacity .5s;position:absolute;inset:-12% -60%}.tower-egg:hover .tower-egg__glow,.tower-egg:focus-visible .tower-egg__glow{opacity:1}.tower-egg:focus-visible{outline-offset:2px;outline:1px dashed #ffdcf08c}.mouse-egg{pointer-events:none;position:absolute;inset:0}.mouse-hole{z-index:1;cursor:pointer;pointer-events:auto;background:0 0;border:0;margin:0;padding:0;position:absolute}.mouse-hole__art{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.mouse-hole__shard{fill:#1610228c}.mouse-hole__chip{fill:none;stroke:#e2d8f61f;stroke-width:.4px;stroke-linejoin:round}.mouse-hole__crack{fill:none;stroke:#1a122880;stroke-width:.32px;stroke-linecap:round;stroke-linejoin:round}.mouse-hole__crack--thin{stroke-width:.22px;stroke:#1a122861}.mouse-hole__crumb{fill:#8f86a3;opacity:.55}.mouse-hole__eyes{fill:#fff7c8;opacity:0;transition:opacity .25s}.mouse-hole__peek{fill:#8b8796;transition:transform .35s;transform:translateY(6px)}.mouse-hole__peek-eye{fill:#120d16}.mouse-hole__alert{font:700 max(10px, calc(var(--stage-w,1671px) * 11 / 1671)) / 1 system-ui, sans-serif;color:#ffe9a8;text-shadow:0 0 4px #000000e6;opacity:0;pointer-events:none;transition:opacity .2s,transform .25s cubic-bezier(.3,1.6,.5,1);position:absolute;bottom:52%;left:50%;transform:translate(-50%,40%)scale(.6)}.mouse-hole:hover .mouse-hole__eyes,.mouse-hole:focus-visible .mouse-hole__eyes,.mouse-egg[data-phase=alert] .mouse-hole__eyes{opacity:1}.mouse-hole:hover .mouse-hole__alert,.mouse-hole:focus-visible .mouse-hole__alert,.mouse-egg[data-phase=alert] .mouse-hole__alert{opacity:1;transform:translate(-50%)scale(1)}.mouse-egg[data-phase=run] .mouse-hole__alert,.mouse-egg[data-phase=run] .mouse-hole__eyes{opacity:0}.mouse-egg[data-phase=peek] .mouse-hole__peek{transform:translateY(0)}.mouse-hole:focus-visible{outline-offset:2px;outline:1px dashed #ffe9a880}.mouse-runner{aspect-ratio:32/16;transform-origin:0 0;opacity:0;pointer-events:none;filter:drop-shadow(0 0 .6px #ffc48c80);position:absolute;top:0;left:0}.mouse-egg[data-phase=run] .mouse-runner{opacity:1}.mouse-runner__art{fill:#3a2418;width:100%;height:100%;display:block;overflow:visible}.mouse-runner__tail{fill:none;stroke:#4a2f22;stroke-width:.7px;stroke-linecap:round}.mouse-runner__ear{fill:#4b2e21}.mouse-runner__ear-in{fill:#7c4a3d}.mouse-runner__eye{fill:#0d0806}.mouse-runner__eye-light{fill:#f4e6d2}.mouse-runner__nose{fill:#a8676a}.mouse-runner__whisker{fill:none;stroke:#ecd6be59;stroke-width:.18px}.mouse-runner__leg,.mouse-runner__body{transform-box:fill-box}.mouse-runner__leg{transform-origin:50% 0;animation:.14s ease-in-out infinite alternate cat-leg}.mouse-runner__leg--b{animation-delay:-.14s}.mouse-runner__body{animation:70ms ease-in-out infinite alternate mouse-bob}@keyframes mouse-bob{0%{transform:translateY(0)}to{transform:translateY(.6px)}}@media (prefers-reduced-motion:reduce){.mouse-hole__alert,.mouse-hole__peek{transition:none}}.robot-egg{pointer-events:none;position:absolute;inset:0}.robot-egg__button{z-index:1;cursor:pointer;pointer-events:auto;background:0 0;border:0;border-radius:40% 40% 30% 30%;margin:0;padding:0;position:absolute}.robot-egg__button:focus-visible{outline-offset:2px;outline:1px dashed #a0dcff99}.robot-egg__lid{z-index:1;transform-origin:50% 0;pointer-events:none;background:linear-gradient(#0d2fb0,#0a26a0);border-radius:45%;position:absolute;transform:scaleY(0)}.robot-egg__button:hover~.robot-egg__lid,.robot-egg__button:focus-visible~.robot-egg__lid{animation:1.7s ease-in-out infinite robot-blink}.robot-egg.is-talking .robot-egg__lid{animation:.5s ease-in-out robot-blink-once}@keyframes robot-blink{0%,30%,to{transform:scaleY(0)}36%{transform:scaleY(1)}42%{transform:scaleY(0)}56%{transform:scaleY(0)}61%{transform:scaleY(1)}66%{transform:scaleY(0)}}@keyframes robot-blink-once{0%,to{transform:scaleY(0)}40%{transform:scaleY(1)}}.robot-egg__bubble{z-index:2;transform-origin:12% 100%;white-space:pre;font:700 max(11px, calc(var(--stage-w,1671px) * 12 / 1671)) / 1.2 "Trebuchet MS", "Segoe UI", system-ui, sans-serif;letter-spacing:.02em;color:#1c2a6b;opacity:0;pointer-events:none;background:#f4fbff;border:1.5px solid #8fd8ff;border-radius:1.1em;margin:0;padding:.35em .75em .4em;transition:opacity .2s,transform .35s cubic-bezier(.3,1.7,.5,1);position:absolute;transform:translate(-12%,-100%)scale(.4);box-shadow:0 0 .6em #78d2ff8c,0 2px 6px #00000059}.robot-egg__bubble:after{content:"";background:#f4fbff;border-bottom:1.5px solid #8fd8ff;border-right:1.5px solid #8fd8ff;width:.7em;height:.7em;position:absolute;bottom:-.45em;left:10%;transform:rotate(45deg)skew(8deg,8deg)}.robot-egg.is-talking .robot-egg__bubble{opacity:1;transform:translate(-12%,-100%)scale(1)}.robot-egg__bubble--right{transform-origin:0;transform:translateY(-50%)scale(.4)}.robot-egg__bubble--right:after{border-bottom:1.5px solid #8fd8ff;border-left:1.5px solid #8fd8ff;border-right:0;margin-top:-.35em;top:50%;bottom:auto;left:-.42em}.robot-egg.is-talking .robot-egg__bubble--right{transform:translateY(-50%)scale(1)}.robot-egg__hint{z-index:2;font:800 max(12px, calc(var(--stage-w,1671px) * 15 / 1671)) / 1 "Trebuchet MS", "Segoe UI", system-ui, sans-serif;color:#eaf8ff;text-shadow:0 0 4px #5ac8fff2,0 0 9px #5ac8ff99;opacity:0;pointer-events:none;transition:opacity .2s,transform .3s cubic-bezier(.3,1.7,.5,1);position:absolute;transform:translate(-50%,-60%)scale(.5)}.robot-egg__button:hover~.robot-egg__hint,.robot-egg__button:focus-visible~.robot-egg__hint{opacity:1;animation:1.4s ease-in-out .3s infinite robot-hint-bob;transform:translate(-50%,-100%)scale(1)}.robot-egg.is-talking .robot-egg__hint{opacity:0;animation:none}@keyframes robot-hint-bob{0%,to{transform:translate(-50%,-100%)scale(1)}50%{transform:translate(-50%,-125%)scale(1)}}.robot-egg__bubble{font-family:Consolas,Cascadia Mono,Courier New,ui-monospace,monospace}.robot-egg__ghost{visibility:hidden}.robot-egg__typed{white-space:pre;position:absolute;top:.35em;left:.75em}.robot-egg__cursor{vertical-align:-.12em;background:#2fd38a;width:.5em;height:1em;margin-left:.06em;animation:.8s step-end infinite robot-cursor;display:inline-block}@keyframes robot-cursor{50%{opacity:0}}.robot-egg__sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.robot-egg__button:hover~.robot-egg__lid,.robot-egg__button:focus-visible~.robot-egg__lid,.robot-egg.is-talking .robot-egg__lid{animation:none}.robot-egg__bubble,.robot-egg__hint{transition:none}.robot-egg__button:hover~.robot-egg__hint,.robot-egg__button:focus-visible~.robot-egg__hint{animation:none}}.robot-egg--dex .robot-egg__bubble{color:#8dfff0;text-shadow:0 0 3px #50ffe6e6,0 0 8px #28c8ff8c;letter-spacing:.05em;background:repeating-linear-gradient(0deg,#78fff012 0 1px,#0000 1px 3px),linear-gradient(135deg,#041622e6,#060c1ce0);border:1px solid #3ff0e0;border-radius:2px;box-shadow:0 0 7px #3cf0e18c,inset 0 0 10px #3cf0e124}.robot-egg--dex .robot-egg__bubble:after{display:none}.robot-egg--dex .robot-egg__bubble:before{content:"";background:#3ff0e0;width:.6em;height:1px;position:absolute;top:50%;left:-.6em;box-shadow:0 0 4px #3ff0e0}.robot-egg--dex .robot-egg__cursor{background:#3ff0e0;box-shadow:0 0 6px #3ff0e0}.robot-egg__noise{color:#d6fffa;opacity:.85}.robot-egg--dex.is-talking .robot-egg__typed{animation:2.6s step-end infinite dex-glitch}@keyframes dex-glitch{0%,18%,22%,61%,64%,to{text-shadow:0 0 3px #50ffe6e6,0 0 8px #28c8ff8c;transform:none}19%{text-shadow:-1px 0 #ff3ca0cc,1px 0 #3cfff0e6;transform:translate(1px)}20%{transform:translate(-1px)}62%{text-shadow:1px 0 #ff3ca0b3,-1px 0 #3cfff0e6;transform:translate(-1px,.5px)}}@media (prefers-reduced-motion:reduce){.robot-egg--dex.is-talking .robot-egg__typed{animation:none}}.pce-egg,.roof-egg{pointer-events:none;position:absolute;inset:0}.pce-egg__button,.roof-egg__button{z-index:1;cursor:pointer;pointer-events:auto;background:0 0;border:0;border-radius:6px;margin:0;padding:0;position:absolute}.pce-egg__button:focus-visible,.roof-egg__button:focus-visible{outline-offset:2px;outline:1px dashed #8ce6ff99}.pce-egg__spark{aspect-ratio:1;opacity:0;pointer-events:none;background:#e8fbff;border-radius:50%;width:.18%;margin:-.09% 0 0 -.09%;position:absolute;box-shadow:0 0 4px 1px #78dcfff2}.pce-egg__button--brain:hover~.pce-egg__spark,.pce-egg__button--brain:focus-visible~.pce-egg__spark,.pce-egg--brain.is-on .pce-egg__spark{animation:1.2s ease-in-out infinite pce-spark}@keyframes pce-spark{0%,to{opacity:0;transform:scale(.5)}45%{opacity:1;transform:scale(1.2)}}.pce-egg__beam{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.pce-egg__beam path{fill:none;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;opacity:0;transition:stroke-dashoffset .7s ease-out,opacity .5s}.pce-egg__beam-glow{stroke:#50dcff59;stroke-width:5px}.pce-egg__beam-core{stroke:#c9f7ff;stroke-width:1.2px}.pce-egg--brain.is-on .pce-egg__beam path{stroke-dashoffset:0;opacity:1}.pce-egg__row{mix-blend-mode:screen;opacity:0;transform-origin:0;pointer-events:none;background:linear-gradient(90deg,#46d2ff8c,#46d2ff2e 70%,#0000);border-radius:3px;transition:opacity .25s,transform .3s;position:absolute;transform:scaleX(.3);box-shadow:0 0 8px #46d2ff80}.pce-egg__row.is-lit{opacity:1;transform:none}.pce-egg__check{font:800 max(11px, calc(var(--stage-w,1671px) * 14 / 1671)) / 1 system-ui, sans-serif;color:#7dffcf;text-shadow:0 0 6px #5affc8f2;opacity:0;pointer-events:none;transition:opacity .2s,transform .35s cubic-bezier(.3,1.8,.5,1);position:absolute;transform:translateY(-50%)scale(.3)}.pce-egg__check.is-lit{opacity:1;transform:translateY(-50%)scale(1)}.pce-egg__sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.pce-egg__button--map:after{content:"";mix-blend-mode:screen;opacity:0;background:#82beff24;border-radius:4px;transition:opacity .3s;position:absolute;inset:0}.pce-egg__button--map:hover:after,.pce-egg__button--map:focus-visible:after{opacity:1}.pce-egg__ping{aspect-ratio:1;opacity:0;pointer-events:none;border:1px solid #ffe08a;border-radius:50%;width:.55%;margin:-.275% 0 0 -.275%;position:absolute;box-shadow:0 0 6px #ffdc78e6,inset 0 0 4px #ffdc78b3}.pce-egg__ping--home{border-color:#6ff6ff;box-shadow:0 0 8px #6ef6ff,inset 0 0 5px #6ef6ffcc}.pce-egg--map.is-on .pce-egg__ping{animation:1.4s ease-out 2 pce-ping}@keyframes pce-ping{0%{opacity:1;transform:scale(.2)}to{opacity:0;transform:scale(2.6)}}.robot-egg--pc .robot-egg__button:hover,.robot-egg--pc .robot-egg__button:focus-visible{background:#c8f0ff14;box-shadow:0 0 8px #a0e6ff8c}.robot-egg--pc .robot-egg__bubble{color:#7dff9a;text-shadow:0 0 3px #5aff8ccc;font-size:max(10px, calc(var(--stage-w,1671px) * 10 / 1671));background:#040a08e6;border:1px solid #3a6b4a;border-radius:3px;box-shadow:0 0 6px #50ff8c59,0 2px 6px #00000080}.robot-egg--pc .robot-egg__bubble:after{background:#040a08f2;border-color:#3a6b4a}.robot-egg--pc .robot-egg__cursor{background:#7dff9a}.roof-egg__button--moon{border-radius:50%}.roof-egg__moonglow{mix-blend-mode:screen;opacity:0;pointer-events:none;background:radial-gradient(circle,#ffdcf580 30%,#ffc8f02e 52%,#0000 70%);border-radius:50%;transition:opacity .6s;position:absolute;inset:-45%}.roof-egg__button--moon:hover .roof-egg__moonglow,.roof-egg__button--moon:focus-visible .roof-egg__moonglow,.roof-egg--moon.is-on .roof-egg__moonglow{opacity:1}.roof-egg__sky{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.roof-egg__star{stroke-width:1.6px;stroke-linecap:round;stroke-dasharray:.28 1;stroke-dashoffset:.28px;filter:drop-shadow(0 0 3px #dcf0ffe6);animation:1.1s cubic-bezier(.3,.1,.4,1) forwards roof-star}@keyframes roof-star{0%{stroke-dashoffset:.28px;opacity:1}80%{opacity:1}to{stroke-dashoffset:-1px;opacity:0}}.roof-egg__button--neon{border-radius:4px}.roof-egg__letter{mix-blend-mode:darken;opacity:0;pointer-events:none;background:#071e6c;border-radius:3px;position:absolute}.roof-egg__letter.is-off{opacity:1}.roof-egg__flash{mix-blend-mode:screen;opacity:0;pointer-events:none;background:radial-gradient(at 55% 55%,#96f0ff66,#96f0ff1a 60%,#0000 75%);border-radius:6px;position:absolute}.roof-egg--neon.is-flash .roof-egg__flash{animation:.9s ease-out roof-flash}@keyframes roof-flash{0%{opacity:0}20%{opacity:1}to{opacity:0}}.roof-bird{aspect-ratio:30/22;pointer-events:none;filter:drop-shadow(0 0 .7px #ffbef08c);position:absolute}.roof-bird__art{fill:#0c0a10;width:100%;height:100%;display:block;overflow:visible}.roof-bird__leg{fill:none;stroke:#0c0a10;stroke-width:.8px;stroke-linecap:round}.roof-bird__sheen{fill:none;stroke:#788cff66;stroke-width:.6px;stroke-linecap:round}.roof-bird__beak-line{fill:none;stroke:#968cb473;stroke-width:.3px}.roof-bird__eye{fill:#d8d2e6}.roof-bird__wing{transform-box:fill-box;transform-origin:30% 90%}.roof-bird__wing--far{fill:#07060b}.roof-egg__button--bird:hover~.roof-bird,.roof-egg__button--bird:focus-visible~.roof-bird{animation:.9s ease-in-out infinite roof-bird-hop}@keyframes roof-bird-hop{0%,60%,to{transform:translateY(0)rotate(0)}20%{transform:translateY(-14%)rotate(-6deg)}35%{transform:translateY(0)rotate(4deg)}}.roof-egg--bird[data-phase=away] .roof-bird{animation:1.6s ease-in forwards roof-bird-away}.roof-egg--bird[data-phase=back] .roof-bird{animation:1.3s ease-out forwards roof-bird-back}.roof-egg--bird[data-phase=away] .roof-bird__wing,.roof-egg--bird[data-phase=back] .roof-bird__wing{animation:.12s ease-in-out infinite alternate roof-bird-flap}.roof-egg--bird[data-phase=away] .roof-bird__leg,.roof-egg--bird[data-phase=back] .roof-bird__leg{opacity:0}@keyframes roof-bird-flap{0%{transform:rotate(-35deg)scaleY(1.1)}to{transform:rotate(30deg)scaleY(.6)}}@keyframes roof-bird-away{0%{opacity:1;transform:translate(0)}15%{transform:translate(-30%,-60%)}to{opacity:0;transform:translate(-900%,-1500%)}}@keyframes roof-bird-back{0%{opacity:0;transform:translate(700%,-1300%)scaleX(-1)}20%{opacity:1}85%{transform:translate(20%,-40%)scaleX(-1)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.pce-egg__button--brain:hover~.pce-egg__spark,.pce-egg__button--brain:focus-visible~.pce-egg__spark,.pce-egg--brain.is-on .pce-egg__spark,.pce-egg--map.is-on .pce-egg__ping,.roof-egg__button--bird:hover~.roof-bird,.roof-egg__button--bird:focus-visible~.roof-bird{animation:none}.pce-egg__beam path,.pce-egg__row,.pce-egg__check{transition:none}}.egg-counter{z-index:30;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#e8f4ff;text-align:center;background:#0a1228d1;border:1px solid #8cdcff73;border-radius:14px;min-width:150px;padding:10px 14px 12px;font:500 13px/1.35 system-ui,Malgun Gothic,sans-serif;animation:.45s cubic-bezier(.3,1.5,.5,1) egg-counter-in;position:fixed;bottom:16px;right:16px;box-shadow:0 6px 22px #00000073,0 0 12px #5ac8ff33}@keyframes egg-counter-in{0%{opacity:0;transform:translateY(16px)scale(.85)}to{opacity:1;transform:none}}.egg-counter__title{letter-spacing:.06em;color:#9fd7ff;margin:0;font-size:12px}.egg-counter__count{color:#fff;text-shadow:0 0 8px #78d2ff99;margin:2px 0 0;font:800 22px/1.2 Trebuchet MS,system-ui,sans-serif;animation:.5s cubic-bezier(.3,1.8,.5,1) egg-count-bump}@keyframes egg-count-bump{0%{color:#ffe27a;transform:scale(1.5)}to{transform:scale(1)}}.egg-counter__hint{color:#b9cbe0;margin:2px 0 8px;font-size:11.5px}.egg-counter__gift{color:#ffecbe8c;cursor:not-allowed;background:#ffdc7814;border:1px solid #ffdc7866;border-radius:10px;width:100%;min-height:34px;padding:6px 10px;font:700 13px/1.2 system-ui,Malgun Gothic,sans-serif}.egg-counter__gift:not(:disabled){color:#3a2108;cursor:pointer;background:linear-gradient(#ffd56e,#f2a93a);border-color:#ffd36b;animation:1.6s ease-in-out infinite egg-gift-glow;box-shadow:0 0 14px #ffc85aa6}.egg-counter__gift:not(:disabled):focus-visible{outline-offset:2px;outline:2px solid #fff}@keyframes egg-gift-glow{0%,to{box-shadow:0 0 10px #ffc85a80}50%{box-shadow:0 0 20px #ffd26ef2}}.egg-counter.is-done{border-color:#ffd66ebf}@media (width<=700px){.egg-counter{min-width:128px;padding:8px 10px 10px;bottom:84px;right:10px}.egg-counter__count{font-size:19px}}.gift-reader{z-index:40;background:#040610b8;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.gift-reader__panel{background:#0f1a2e;border:1px solid #8cdcff59;border-radius:18px;flex-direction:column;width:min(760px,100%);max-height:min(88vh,900px);animation:.35s ease-out egg-counter-in;display:flex;overflow:hidden;box-shadow:0 18px 50px #0009}.gift-reader__head{border-bottom:1px solid #8cdcff2e;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.gift-reader__badge{color:#ffd98a;margin:0;font:700 14px/1.3 system-ui,Malgun Gothic,sans-serif}.gift-reader__close{color:#e8f4ff;cursor:pointer;background:0 0;border:1px solid #8cdcff66;border-radius:50%;width:40px;height:40px;font-size:22px;line-height:1}.gift-reader__body{padding:18px 26px 34px;overflow-y:auto}.gift-reader__book{color:#9fb7c4;margin:0 0 4px;font-size:15px}.gift-reader h3{color:#f4e6cd;margin:4px 0 6px;font-size:clamp(22px,4vw,30px);line-height:1.45}.gift-reader h4{color:#b8e2de;margin:26px 0 10px;font-size:20px;line-height:1.55}.gift-reader .book-reader__subtitle{margin:0 0 22px}@media (width<=600px){.gift-reader__body{padding:14px 16px 26px}}@media (prefers-reduced-motion:reduce){.egg-counter,.egg-counter__count,.egg-counter__gift:not(:disabled),.gift-reader__panel{animation:none}}
