.vd-sway-layer,.vd-twinkles{pointer-events:none;position:absolute;inset:0}.vd-sway-layer{z-index:0}.vd-twinkles{z-index:2}.vd-sway{will-change:transform;-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;background-repeat:no-repeat;position:absolute;-webkit-mask-composite:source-in;mask-composite:intersect}.vd-sway-stems{transform-origin:50% 100%;animation:7s ease-in-out infinite alternate vd-sway-stems;-webkit-mask-image:linear-gradient(#0000,#000 42%),linear-gradient(90deg,#0000,#000 18% 82%,#0000);mask-image:linear-gradient(#0000,#000 42%),linear-gradient(90deg,#0000,#000 18% 82%,#0000)}.vd-sway-hanging{transform-origin:50% 0;animation:5.5s ease-in-out infinite alternate vd-sway-hang;-webkit-mask-image:linear-gradient(#000 65%,#0000),linear-gradient(90deg,#0000,#000 20% 80%,#0000);mask-image:linear-gradient(#000 65%,#0000),linear-gradient(90deg,#0000,#000 20% 80%,#0000)}@keyframes vd-sway-stems{0%{transform:rotate(-.7deg)}to{transform:rotate(.7deg)}}@keyframes vd-sway-hang{0%{transform:rotate(.9deg)}to{transform:rotate(-.9deg)}}.vd-twinkle{aspect-ratio:1;opacity:0;background:radial-gradient(circle,var(--card) 25%,color-mix(in oklch,var(--sun) 50%,transparent) 60%);clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%);width:.9%;animation:9s ease-in-out infinite vd-twinkle;display:block;position:absolute;transform:translate(-50%,-50%)scale(.3)}@keyframes vd-twinkle{0%,86%,to{opacity:0;transform:translate(-50%,-50%)scale(.3)rotate(0)}92%{opacity:.95;transform:translate(-50%,-50%)scale(1)rotate(45deg)}}.vd-discovery{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0;position:absolute}.vd-discovery:before{content:"";position:absolute;inset-block:min(0px,50% - 28px);inset-inline:min(0px,50% - 28px)}.vd-discovery:focus-visible{outline:3px dashed var(--card);outline-offset:4px;border-radius:12px}.vd-discovery:disabled{cursor:default}.vd-discovery img,.vd-discovery svg{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}.vd-owl{z-index:1;transition:transform .55s cubic-bezier(.3,1.3,.5,1);transform:translateY(100%)}.vd-owl[data-phase=peeking],.vd-owl[data-phase=waving]{transform:none}.vd-owl[data-phase=hidden]{transition-duration:.4s;transition-timing-function:cubic-bezier(.5,0,.8,.4)}.vd-owl img{transform-origin:50% 85%;filter:drop-shadow(0 3px 3px color-mix(in oklch,var(--foreground) 35%,transparent))}.vd-owl[data-phase=peeking] img{animation:4s ease-in-out infinite vd-owl-look}.vd-owl[data-phase=waving] img{animation:.42s ease-in-out 3 vd-owl-wave}.vd-owl-leaves{z-index:2;pointer-events:none;-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;background-repeat:no-repeat;position:absolute;-webkit-mask-image:linear-gradient(#0000,#000 15%),linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(#0000,#000 15%),linear-gradient(90deg,#0000,#000 12% 88%,#0000);-webkit-mask-composite:source-in;mask-composite:intersect}@keyframes vd-owl-look{0%,to{transform:rotate(0)}30%{transform:rotate(-5deg)}60%{transform:rotate(4deg)}}@keyframes vd-owl-wave{0%,to{transform:rotate(0)scale(1)}50%{transform:rotate(9deg)scale(1.06)}}.vd-drum{z-index:2}.vd-drum img{transform-origin:50% 100%;filter:drop-shadow(0 4px 3px color-mix(in oklch,var(--foreground) 45%,transparent))}.vd-drum:active img{transform:scale(.94)}.vd-drum[data-phase=playing] img{animation:.5s cubic-bezier(.3,1.4,.5,1) vd-drum-bop}@keyframes vd-drum-bop{0%{transform:scale(1)}30%{transform:scale(1.14,.84)}65%{transform:scale(.93,1.1)}to{transform:scale(1)}}.vd-music-burst{z-index:3;pointer-events:none;position:absolute;inset:0}.vd-note{aspect-ratio:1;width:1.5%;color:var(--sun);opacity:0;filter:drop-shadow(0 0 5px color-mix(in oklch,var(--sun) 75%,transparent));animation:1.05s ease-out forwards vd-note-pop;display:block;position:absolute;transform:translate(-50%,-50%)scale(.4)}.vd-note svg{width:100%;height:100%;display:block}.vd-note-horn{--drift:45%;width:1.3%}@keyframes vd-note-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)}25%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--drift,0%)),-280%) scale(1.1) rotate(10deg)}}.vd-xylophone{mix-blend-mode:screen;filter:blur(2px);background:linear-gradient(100deg,transparent 35%,color-mix(in oklch,var(--card) 55%,transparent) 50%,transparent 65%) no-repeat;background-size:300% 100%;border-radius:8px;animation:1s ease-in-out .2s both vd-xylophone;position:absolute}@keyframes vd-xylophone{0%{background-position:110% 0}to{background-position:-10% 0}}.vd-butterfly{z-index:3}.vd-butterfly-art{filter:drop-shadow(0 2px 2px color-mix(in oklch,var(--foreground) 35%,transparent));overflow:visible}.vd-wing{transform-origin:30px 26px;animation:.16s ease-in-out infinite alternate vd-flap}.vd-butterfly[data-phase=resting] .vd-wing{animation:2.8s ease-in-out infinite vd-rest}.vd-wing-fore{fill:url(#vd-fore)}.vd-wing-hind{fill:url(#vd-hind)}.vd-wing-dot{fill:color-mix(in oklch,var(--card) 85%,var(--sun))}.vd-body{fill:color-mix(in oklch,var(--foreground) 75%,var(--grape))}.vd-antennae{fill:none;stroke:color-mix(in oklch,var(--foreground) 75%,var(--grape));stroke-width:1.4px;stroke-linecap:round}.vd-butterfly[data-phase=arriving]{animation:2.4s ease-out both vd-fly-in}.vd-butterfly[data-phase=leaving]{animation:1.5s ease-in both vd-fly-out}@keyframes vd-flap{0%{transform:scaleX(1)}to{transform:scaleX(.3)}}@keyframes vd-rest{0%,55%,to{transform:scaleX(1)}75%{transform:scaleX(.45)}}@keyframes vd-fly-in{0%{opacity:0;transform:translate(-320%,-380%)rotate(-12deg)}15%{opacity:1}45%{transform:translate(-150%,-260%)rotate(8deg)}75%{transform:translate(-40%,-90%)rotate(-6deg)}to{opacity:1;transform:none}}@keyframes vd-fly-out{0%{transform:none}35%{transform:translate(60%,-160%)rotate(10deg)}70%{opacity:1;transform:translate(-30%,-340%)rotate(-8deg)}to{opacity:0;transform:translate(120%,-560%)rotate(6deg)}}@media (prefers-reduced-motion:reduce){.vd-sway,.vd-twinkle{display:none!important}.vd-owl{transition:none!important}.vd-owl img,.vd-drum img,.vd-wing,.vd-butterfly,.vd-xylophone{animation:none!important}.vd-owl[data-phase=waving] img{transform:scale(1.06)}.vd-note{opacity:1;transform:translate(-50%,-150%);animation:none!important}}.village-home{background:var(--background);touch-action:manipulation;height:100dvh;min-height:320px;position:relative;overflow:hidden}.village-surround{object-fit:cover;filter:blur(30px)brightness(.62);pointer-events:none;width:calc(100% + 240px);max-width:none;height:calc(100% + 240px);position:absolute;inset:-120px}.village-home-scroll{scrollbar-width:none;overscroll-behavior:contain;display:flex;position:absolute;inset:0;overflow:auto}.village-home-scroll::-webkit-scrollbar{display:none}.village-home-scene{flex:none;margin:auto;position:relative}.village-plane{aspect-ratio:1920/1088;width:min(100vw,176.47dvh);box-shadow:0 18px 50px color-mix(in oklch,var(--foreground) 30%,transparent);-webkit-user-select:none;user-select:none;border-radius:clamp(0px,1.2vw,22px);position:relative;overflow:hidden}.village-home-controls{z-index:30;gap:8px;display:flex;position:absolute;top:12px;left:12px}.village-control{width:48px;height:48px;box-shadow:var(--shadow-soft);border-radius:999px;background:color-mix(in oklch,var(--card) 92%,transparent)!important}.village-control svg{width:22px;height:22px}.village-skip{animation:.3s ease-out village-skip-in}@keyframes village-skip-in{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}.village-home-adults{z-index:30;position:absolute;top:12px;right:12px}.village-landmark{z-index:3}.village-painted{border-radius:42% 42% 18% 18%}.village-cutout{cursor:pointer;transform-origin:50% 100%;border:0;border-radius:24px;transition:transform .35s cubic-bezier(.3,1.5,.6,1);background:0 0!important;padding:0!important;position:absolute!important;overflow:visible!important}.village-cutout:before{content:"";position:absolute;inset-block:min(0px,50% - 30px);inset-inline:min(0px,50% - 30px)}.village-cutout>img{object-fit:contain;pointer-events:none;width:100%;height:100%;filter:drop-shadow(0 8px 8px color-mix(in oklch,var(--foreground) 38%,transparent));position:absolute;inset:0}.village-cutout:hover,.village-cutout:focus-visible{transform:translateY(-3%)scale(1.04)}.village-cutout:active{transform:scale(.96)}.village-cutout:focus-visible{outline:4px solid var(--sun);outline-offset:4px}.village-cutout[data-selected]{transform:translateY(-5%)scale(1.08)}.village-cutout[data-selected]>img{filter:drop-shadow(0 0 18px color-mix(in oklch,var(--sun) 80%,transparent)) drop-shadow(0 8px 8px color-mix(in oklch,var(--foreground) 30%,transparent))}.village-painted[data-selected] .treehouse-station-glow{opacity:1}.village-cutout:disabled,.village-painted:disabled{opacity:1!important}.village-envelope{width:44%;height:auto;color:var(--sun);opacity:0;pointer-events:none;filter:drop-shadow(0 2px 4px color-mix(in oklch,var(--foreground) 40%,transparent));position:absolute;top:22%;left:28%}.village-cutout[data-landmark=mailbox][data-selected] .village-envelope{animation:.65s ease-out forwards village-envelope}@keyframes village-envelope{0%{opacity:0;transform:translateY(0)scale(.6)}40%{opacity:1}to{opacity:1;transform:translateY(-70%)scale(1.15)rotate(-8deg)}}.village-tap-burst{z-index:5;aspect-ratio:1;pointer-events:none;width:8%;position:absolute;transform:translate(-50%,-50%)}.village-tap-burst:before{content:"";border:4px solid color-mix(in oklch,var(--sun) 85%,transparent);box-shadow:0 0 24px color-mix(in oklch,var(--sun) 60%,transparent),inset 0 0 18px color-mix(in oklch,var(--sun) 45%,transparent);border-radius:50%;animation:.6s ease-out forwards village-burst-ring;position:absolute;inset:0}.village-tap-burst i{aspect-ratio:1;background:var(--sun);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);opacity:0;width:14%;animation:.65s ease-out forwards village-burst-ray;position:absolute;top:50%;left:50%}.village-tap-burst i:first-child{--a:0deg}.village-tap-burst i:nth-child(2){--a:60deg}.village-tap-burst i:nth-child(3){--a:120deg}.village-tap-burst i:nth-child(4){--a:180deg}.village-tap-burst i:nth-child(5){--a:240deg}.village-tap-burst i:nth-child(6){--a:300deg}@keyframes village-burst-ring{0%{opacity:1;transform:scale(.3)}to{opacity:0;transform:scale(1.25)}}@keyframes village-burst-ray{0%{opacity:1;transform:translate(-50%,-50%) rotate(var(--a)) translateY(0) scale(.6)}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--a)) translateY(-420%) scale(1)}}.village-plane[data-entering]{transform-origin:var(--go-x,50%) var(--go-y,50%);animation:village-enter .38s ease-in var(--go-delay,0s) forwards}@keyframes village-enter{to{opacity:.3;transform:scale(1.12)}}.village-plane[data-welcome-cue=treehouse] [data-landmark$=-treehouse] .treehouse-station-glow{opacity:1}.village-plane[data-welcome-cue=map] .village-map-window>span,.village-map-window[data-discovery-intro]>span{background:radial-gradient(circle,color-mix(in oklch,var(--discovery-light) 32%,transparent),transparent 72%);box-shadow:0 0 14px 4px color-mix(in oklch,var(--discovery-light) 45%,transparent)}.village-decor{z-index:2;pointer-events:none;position:absolute}.village-decor>img{object-fit:contain;width:100%;height:100%;filter:drop-shadow(0 6px 6px color-mix(in oklch,var(--foreground) 34%,transparent));position:absolute;inset:0}.village-map-window{z-index:4;aspect-ratio:1;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:50%;padding:0;position:absolute;transform:translate(-50%,-50%)}.village-map-window>span{pointer-events:none;border-radius:50%;transition:background .25s,box-shadow .25s,transform .25s;position:absolute;inset:14%}.village-map-window:hover>span,.village-map-window:focus-visible>span{background:radial-gradient(circle,color-mix(in oklch,var(--discovery-light) 26%,transparent),transparent 72%);box-shadow:0 0 10px 2px color-mix(in oklch,var(--discovery-light) 38%,transparent)}.village-map-window:focus-visible{outline:none}.village-map-window:focus-visible>span{box-shadow:0 0 0 2px color-mix(in oklch,var(--discovery-light) 80%,transparent),0 0 12px 3px color-mix(in oklch,var(--discovery-light) 45%,transparent)}.village-map-window:disabled{cursor:default}.village-map-window[data-opening]>span{animation:.38s ease-out both village-window-open}@keyframes village-window-open{0%{box-shadow:0 0 0 0 color-mix(in oklch,var(--sun) 0%,transparent);transform:scale(.9)}55%{background:radial-gradient(circle,color-mix(in oklch,var(--sun) 60%,transparent),transparent 72%);box-shadow:0 0 26px 10px color-mix(in oklch,var(--sun) 60%,transparent);transform:scale(1.3)}to{background:radial-gradient(circle,color-mix(in oklch,var(--sun) 45%,transparent),transparent 72%);box-shadow:0 0 18px 6px color-mix(in oklch,var(--sun) 45%,transparent);transform:scale(1.15)}}.village-map-overlay{z-index:70;background:color-mix(in oklch,var(--foreground) 55%,transparent);justify-content:center;align-items:center;padding:clamp(8px,3vmin,32px);animation:.25s ease-out both village-map-fade;display:flex;position:fixed;inset:0}.village-map-sheet{background:var(--background);width:min(100%,175.439dvh - 3.50877*clamp(8px,3vmin,32px));box-shadow:var(--shadow-soft);border-radius:24px;animation:.32s cubic-bezier(.3,1.4,.6,1) both village-map-pop;position:relative;overflow:hidden}.village-map-sheet .adventure-map[data-overlay]{min-height:0}.village-map-sheet .map-close{width:64px!important;height:64px!important}.village-map-sheet .map-close svg{width:32px!important;height:32px!important}@keyframes village-map-fade{0%{opacity:0}}@keyframes village-map-pop{0%{opacity:0;transform:scale(.92)}}.village-pip.village-home-pip{z-index:4;pointer-events:auto;cursor:pointer;transform-origin:50% 100%;background:0 0;border:0;width:10%;min-width:56px;padding:0;position:absolute}.village-home-pip:focus-visible{outline:4px solid var(--sun);outline-offset:6px;border-radius:20px}.village-home-pip:disabled{cursor:default}.village-pip-shadow{background:color-mix(in oklch,var(--foreground) 28%,transparent);filter:blur(4px);z-index:-1;border-radius:50%;height:5%;position:absolute;bottom:-1%;left:22%;right:22%}.village-scenery{z-index:2;cursor:pointer;background:0 0;border:0;border-radius:50%;padding:0;position:absolute}.village-scenery:focus-visible{outline:4px solid var(--sun);outline-offset:2px}.village-scenery>span{aspect-ratio:1;opacity:0;pointer-events:none;border-radius:50%;width:30%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(0)}.village-stream{width:17%;height:12%;top:75%;left:14%}.village-stream>span{border:3px solid color-mix(in oklch,var(--card) 85%,transparent);box-shadow:0 0 0 6px color-mix(in oklch,var(--card) 30%,transparent)}.village-flowers{width:11.5%;height:18%;top:82%;left:88.5%}.village-flowers>span{background:radial-gradient(circle,color-mix(in oklch,var(--sun) 80%,transparent) 10%,transparent 60%);box-shadow:-30px -20px 0 -8px var(--bubble),26px -26px 0 -9px var(--sun),30px 18px 0 -9px var(--grape),-24px 24px 0 -9px var(--sky)}.village-plane[data-splash=stream] .village-stream>span,.village-plane[data-splash=flowers] .village-flowers>span{animation:.9s ease-out village-splash}@keyframes village-splash{0%{opacity:1;transform:translate(-50%,-50%)scale(.2)}to{opacity:0;transform:translate(-50%,-50%)scale(2.6)}}.village-window{aspect-ratio:1;background:radial-gradient(circle,color-mix(in oklch,var(--sun) 45%,transparent),transparent 70%);width:2.6%;animation:6.5s ease-in-out infinite village-window}@keyframes village-window{0%,to{opacity:.25}50%{opacity:.85}}.village-leaf{aspect-ratio:1.6;background:var(--garden-leaf,oklch(62% .14 140));opacity:0;width:.9%;animation:19.5s linear infinite village-leaf;border-radius:0 100%!important}@keyframes village-leaf{0%{opacity:0;transform:translate(-50%,-50%)rotate(0)}4%{opacity:.9}26%{opacity:.85;transform:translate(220%,1200%)rotate(260deg)}32%,to{opacity:0;transform:translate(160%,1500%)rotate(320deg)}}.village-butterfly{aspect-ratio:1;opacity:0;gap:1px;width:1.4%;animation:22s ease-in-out infinite village-butterfly;display:flex!important}.village-butterfly b{background:var(--bubble);box-shadow:inset 0 0 0 2px color-mix(in oklch,var(--sun) 60%,transparent);transform-origin:100%;border-radius:60% 60% 40% 40%;flex:1;animation:.28s ease-in-out infinite alternate village-flap}.village-butterfly b+b{transform-origin:0;background:var(--bubble)}.village-butterfly:nth-child(2n) b{background:var(--sky)}@keyframes village-flap{0%{transform:scaleX(1)}to{transform:scaleX(.35)}}@keyframes village-butterfly{0%,60%,to{opacity:0;transform:translate(-50%,-50%)}64%{opacity:1}72%{transform:translate(260%,-320%)}80%{transform:translate(520%,-140%)}88%{opacity:1;transform:translate(780%,-420%)}92%{opacity:0;transform:translate(900%,-500%)}}@media (width<=600px){.village-control{width:44px;height:44px}.village-home-controls{gap:6px;top:8px;left:8px}.village-home-adults{top:8px;right:8px}}@media (orientation:portrait) and (width<=900px){.village-home-controls,.village-home-adults{top:auto;bottom:12px}}@media (width>=2560px){.village-control{width:72px;height:72px}.village-control svg{width:34px;height:34px}.village-home-controls{gap:14px;top:24px;left:24px}.village-home-adults{top:24px;right:24px}}@media (prefers-reduced-motion:reduce){.village-home *{transition:none!important}.village-window,.village-skip,.village-butterfly b{animation:none!important}.village-leaf,.village-butterfly,.village-scenery>span{display:none!important}.village-cutout[data-landmark=mailbox][data-selected] .village-envelope{opacity:1;animation:none}.village-plane[data-entering]{animation:none!important}.village-tap-burst{display:none!important}.village-map-window[data-opening]>span,.village-map-overlay,.village-map-sheet{animation:none!important}}.grownups-door{background:color-mix(in oklch,var(--foreground) 45%,transparent);height:40px;color:var(--card);letter-spacing:.01em;cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:0;border-radius:999px;align-items:center;gap:6px;padding:0 14px 0 10px;font-size:13px;font-weight:700;display:inline-flex;position:relative}.grownups-door>svg:not(.grownups-ring){width:16px;height:16px}.grownups-door:focus-visible{outline:3px solid var(--sun);outline-offset:3px}.grownups-ring{pointer-events:none;width:28px;height:28px;position:absolute;top:50%;left:4px;transform:translateY(-50%)rotate(-90deg)}.grownups-ring circle{fill:none;stroke:var(--sun);stroke-width:3px;stroke-dasharray:101;stroke-dashoffset:101px}.grownups-door[data-holding] .grownups-ring circle{stroke-dashoffset:0;transition:stroke-dashoffset 1.5s linear}@media (width>=2560px){.grownups-door{height:60px;padding:0 22px 0 16px;font-size:20px}.grownups-door>svg:not(.grownups-ring){width:24px;height:24px}.grownups-ring{width:42px;height:42px}}.grownups-backdrop{z-index:60;background:color-mix(in oklch,var(--foreground) 45%,transparent);place-items:center;padding:16px;display:grid;position:fixed;inset:0}.grownups-panel{background:var(--card);width:min(420px,100%);color:var(--foreground);box-shadow:var(--shadow-soft);border-radius:16px;padding:16px 18px 20px}.grownups-panel header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.grownups-panel h2{font-size:20px;font-weight:800}.grownups-panel nav{gap:8px;display:grid}.grownups-panel nav a{justify-content:flex-start;height:48px;font-size:16px}@media (prefers-reduced-motion:reduce){.grownups-door[data-holding] .grownups-ring circle{transition:stroke-dashoffset 1.5s steps(3,end)}}
