.stage{--top-zone:calc(var(--inset) + 12px);--bottom-zone:calc(var(--inset) + 52px + 16px + env(safe-area-inset-bottom,0px));--entry-h:230px;--word-w:clamp(240px, min(600px, 100vw - 48px, (100dvh - var(--top-zone) - var(--bottom-zone) - var(--entry-h)) * 2.2), 600px);isolation:isolate;height:100dvh;padding:var(--top-zone) 16px var(--bottom-zone);box-sizing:border-box;cursor:crosshair;touch-action:none;place-items:center;display:grid;position:relative;overflow:hidden}html:has(.stage),html:has(.stage) body{overscroll-behavior:none;height:100%;overflow:hidden}.scene{z-index:-1;pointer-events:none;opacity:0;visibility:hidden;transition:opacity 1.4s,visibility 0s linear 1.4s;position:absolute;inset:0}.scene.active{opacity:1;visibility:visible;transition:opacity 1.4s}.stage:is([data-scene=sky],[data-scene=grass]) .col{opacity:0;pointer-events:none}.stage[data-ready]{cursor:pointer}.stage[data-ready] .scene.active .backdrop-words path{stroke:#ffffffd9;animation:2.4s ease-in-out infinite beckon}@keyframes beckon{50%{stroke:#ffffff59}}@media (prefers-reduced-motion:reduce){.stage[data-ready] .scene.active .backdrop-words path{animation:none}}.woods,.woods-canvas{z-index:-1;pointer-events:none;position:absolute}.woods{inset:calc(var(--inset) + 8px);opacity:0;transition:opacity 1.6s;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.woods.open{opacity:1}.woods video{object-fit:cover;width:100%;height:100%;display:block}.woods-canvas{width:100%;height:100%;inset:0}.backdrop-words{z-index:-1;inset:calc(var(--inset) + 8px);width:calc(100% - 2 * (var(--inset) + 8px));height:calc(100% - 2 * (var(--inset) + 8px));pointer-events:none;position:absolute}.backdrop-words path{fill:none;stroke:#ffffff6b;stroke-width:1.2px}:root.evening .backdrop-words path{stroke:#c9b2ff66}.stage .col,.stage .shopbar,.stage .tape{transition:opacity .9s,transform .9s}.stage[data-state=arriving] .shopbar,.stage[data-state=arriving] .tape{opacity:0;pointer-events:none;transform:translateY(14px)}.stage[data-state=arriving] .tape{transform:rotate(45deg)}.col{text-align:center;flex-direction:column;align-items:center;width:100%;display:flex;position:relative}.word{z-index:1;width:min(var(--word-w), 100%);pointer-events:none;height:auto;display:block;position:relative}.word .eve,:root.evening .word .day{display:none}:root.evening .word .eve{display:inline}.ink{z-index:2;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.entry{z-index:1;text-align:center;justify-items:center;gap:8px;display:grid;position:relative}.entry>p{margin:0}.scratch-card{width:min(var(--word-w), 100%);border-radius:20px;margin-bottom:6px;position:relative;overflow:hidden}.scratch-card .word{width:100%}.entry .def,.entry .found,.entry .ipa,.entry .pos{text-shadow:0 0 6px #eaf1faf2,0 0 16px #eaf1facc}:root.evening .entry .def,:root.evening .entry .found,:root.evening .entry .ipa,:root.evening .entry .pos{text-shadow:0 0 6px #0b0418f2, 0 0 16px #0b0418d9, var(--glow)}.hidden-words{z-index:1;font:700 clamp(13px, min(4.2vw, var(--word-w) * .0525), 32px) / 1.2 var(--mono);letter-spacing:.52em;text-transform:uppercase;white-space:nowrap;color:#ffffff29;text-shadow:0 1px #ffffff59,0 -1px #1e3c780d;margin:0 -.52em 0 0;position:relative}:root.evening .hidden-words{color:#eee4ff;opacity:calc(.45 + .55 * var(--near,0));text-shadow:0 0 6px #8b52fff2,0 0 18px #7a3cffb3;transition:opacity .25s}.pron{opacity:0;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.8em;transition:opacity .2s,transform .45s cubic-bezier(.2,1.5,.4,1);display:flex;transform:scale(1.14)rotate(-2.5deg)}.pron.on{opacity:1;transform:none}.ipa{z-index:1;letter-spacing:.03em;color:var(--text);text-shadow:var(--glow);white-space:nowrap;font-size:clamp(16px,3.6vw,21px);font-weight:700;position:relative}.pos{color:var(--muted);font-size:clamp(13px,2.8vw,15px);font-style:italic}.def{max-width:36ch;color:var(--text);text-shadow:var(--glow);text-wrap:balance;font-size:clamp(14px,3.3vw,17px);line-height:1.55}.def>span[aria-hidden]>span{opacity:0;transition:opacity 60ms}.def.on>span[aria-hidden]>span{opacity:1;transition-delay:calc(var(--i) * 28ms)}.found{min-height:1.6em;color:var(--text);text-shadow:var(--glow);font-size:clamp(14px,3.3vw,17px);font-weight:700}.found .caret{vertical-align:-.12em;background:currentColor;width:.55em;height:1em;margin-left:2px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.shopbar{z-index:3;left:0;right:0;bottom:calc(var(--inset) + 64px + env(safe-area-inset-bottom,0px));pointer-events:none;justify-content:center;padding-inline:16px;display:flex;position:absolute}.shop{--head:28px;--barb:11px;pointer-events:auto;cursor:pointer;color:#e4ff1a;padding:calc(var(--barb) + 8px) calc(var(--head) + 14px) calc(var(--barb) + 9px) 20px;clip-path:polygon(0 var(--barb), calc(100% - var(--head)) var(--barb), calc(100% - var(--head)) 0, 100% 50%, calc(100% - var(--head)) 100%, calc(100% - var(--head)) calc(100% - var(--barb)), 0 calc(100% - var(--barb)));letter-spacing:.01em;text-transform:uppercase;white-space:nowrap;background:#0b0b0c;border:0;align-items:center;gap:12px;font:italic 800 clamp(14px,4vw,24px)/1 Barlow Semi Condensed,Arial Narrow,sans-serif;text-decoration:none;transition:background-color .2s;animation:1.6s ease-in-out infinite sway;display:inline-flex;position:relative}.shop .foil{touch-action:none;cursor:crosshair;width:100%;height:100%;transition:opacity .45s;position:absolute;inset:0}.shop .foil.off{opacity:0;pointer-events:none}.shop.foiled{cursor:crosshair;animation:none}.shop.foiled .dots i{animation:none}.shop:hover,.shop:focus-visible{background:#0f1d4f;outline:none;animation-play-state:paused}.shop:focus-visible{background:var(--uv);color:#fff}@keyframes sway{0%,to{transform:translate(-5px)}50%{transform:translate(7px)}}.dots{gap:6px;margin-top:.1em;display:flex}.dots i{opacity:.25;background:currentColor;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite dot}.dots i:nth-child(2){animation-delay:.2s}.dots i:nth-child(3){animation-delay:.4s}@keyframes dot{0%,60%,to{opacity:.25;transform:scale(.8)}20%{opacity:1;transform:scale(1.25)}}:root.evening .shop{color:#0b0418;background:#8b52ff}:root.evening .shop:hover{background:#a57bff}.tape{z-index:4;pointer-events:none;-webkit-user-select:none;user-select:none;background:var(--tape);width:200px;height:34px;font:700 11px/1 var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--tape-text);clip-path:polygon(0 8%,3% 0,6% 10%,9% 2%,12% 6%,88% 4%,91% 0,94% 9%,97% 1%,100% 7%,100% 92%,97% 100%,94% 90%,91% 98%,88% 94%,12% 96%,9% 100%,6% 91%,3% 99%,0 93%);place-items:center;display:grid;position:absolute;top:30px;right:-46px;transform:rotate(45deg);box-shadow:inset 0 0 0 100px #ffffff0a}.tape.long{letter-spacing:.16em;width:240px;font-size:10px;top:34px;right:-62px}.foot{z-index:3;left:0;right:0;bottom:calc(var(--inset) + 12px + env(safe-area-inset-bottom,0px));pointer-events:none;flex-wrap:wrap;justify-content:center;gap:8px;padding-inline:16px;display:flex;position:absolute}.entry .hidden-words{transition:opacity .6s}.entry .hidden-words:not(.on){opacity:0}.card-foil{z-index:1;pointer-events:none;width:100%;height:100%;transition:opacity .6s;position:absolute;inset:0}.card-foil.off{opacity:0}.foot>.glass{pointer-events:auto;-webkit-backdrop-filter:none;backdrop-filter:none;background:#eaf1fab8;border-radius:999px;position:static;overflow:visible}:root.evening .foot>.glass{background:#140930b8}.foot>.glass:before{display:none}.foot>.glass>summary{padding:8px 34px 8px 14px}.foot>.glass>summary h2{font:400 12px/1 var(--mono);letter-spacing:.08em;text-transform:none}.foot>.glass .chevron{border-width:1.5px;width:7px;height:7px;margin-top:-6px;right:14px}.foot>.glass[open]>summary .chevron{margin-top:-2px}.foot>.glass>.glass-body{box-sizing:border-box;border:1px solid var(--glass-edge);-webkit-backdrop-filter:blur(16px)saturate(140%);backdrop-filter:blur(16px)saturate(140%);touch-action:pan-y;text-align:left;border-radius:18px;width:min(560px,100vw - 32px);max-height:min(64dvh,560px);position:absolute;bottom:calc(100% + 10px);left:50%;overflow:auto;transform:translate(-50%);box-shadow:0 24px 50px -24px #0b0b0c8c}.foot>.foot-link{pointer-events:auto;border:1px solid var(--glass-edge,#c9b2ff61);color:var(--text);font:400 12px/1 var(--mono);letter-spacing:.08em;background:#eaf1fab8;border-radius:999px;align-self:center;padding:8px 14px;text-decoration:none}:root.evening .foot>.foot-link{background:#140930b8;border-color:#c9b2ff61}.foot>.foot-link:hover{text-underline-offset:4px;text-decoration:underline}:root .foot>.shop-soon{--head:16px;--barb:6px;pointer-events:none;cursor:default;padding:calc(var(--barb) + 6px) calc(var(--head) + 10px) calc(var(--barb) + 6px) 12px;color:#e4ff1a;background:#0b0b0c;align-self:center;gap:8px;font-size:14px}.foot>.shop-soon .dots{gap:4px}.foot>.shop-soon .dots i{width:4px;height:4px}.foot>.foot-small{pointer-events:auto;font:400 11px/1 var(--mono);color:var(--text);text-shadow:0 0 6px #0b0418e6;align-self:center;padding:4px 6px}.foot>.foot-small a{text-underline-offset:3px}.foot .more{font-size:12px}.preview{z-index:5;left:calc(var(--inset) + 10px);top:calc(var(--inset) + 60px);flex-wrap:wrap;gap:6px;max-width:calc(100% - 150px);display:flex;position:absolute}.pv{font:400 10px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;background:var(--sheet);color:var(--muted);border:1px dashed var(--tag-line);cursor:pointer;padding:6px 7px}.pv:hover,.pv:focus-visible{color:var(--text);border-color:var(--text);outline:none}.preview[hidden]{display:none}.reveal-kb{z-index:5;background:var(--text);color:var(--sheet);font:700 12px/1 var(--mono);cursor:pointer;border:0;padding:10px 14px;position:absolute;top:12px;left:50%;transform:translate(-50%,-220%)}.reveal-kb:focus-visible{outline:3px solid var(--uv);outline-offset:3px;transform:translate(-50%)}@media (width<=480px){.stage{--bottom-zone:calc(var(--inset) + 96px + 16px + env(safe-area-inset-bottom,0px))}}@media (width<=420px){.shop{--head:22px;--barb:9px;padding-left:14px;padding-right:calc(var(--head) + 10px);gap:8px}.dots{gap:4px}.dots i{width:5px;height:5px}.tape{width:180px;top:24px;right:-54px}.foot{gap:12px}}@media (prefers-reduced-motion:reduce){.pron{transition:opacity .2s;transform:none}.def.on>span[aria-hidden]>span{transition-delay:0s}.shop{animation:none}.dots i{opacity:.8;animation:none}.found .caret{animation:none}}.backdrop{z-index:-2;background:var(--sheet);position:fixed;inset:0;overflow:hidden}.backdrop video{opacity:0;object-fit:cover;width:100%;height:100%;transition:opacity 1.4s;position:absolute;inset:0}.backdrop video.active{opacity:1}.backdrop-sheet{z-index:2;inset:var(--inset);border:3px solid var(--grid-outer);background-image:linear-gradient(to right, var(--grid-major) 1.5px, transparent 1.5px), linear-gradient(to bottom, var(--grid-major) 1.5px, transparent 1.5px), linear-gradient(to right, var(--grid-minor) 1px, transparent 1px), linear-gradient(to bottom, var(--grid-minor) 1px, transparent 1px);opacity:.8;background-position:-1px -1px;background-size:80px 80px,80px 80px,8px 8px,8px 8px;position:absolute}.backdrop:after{content:"";z-index:1;background:radial-gradient(90% 80% at 50% 45%,#eaf1fa14,#0f1d4f47);position:absolute;inset:0}:root.evening:not([data-scene=sky]):not([data-scene=grass]) .backdrop:after{background:radial-gradient(90% 80% at 50% 45%,#2e11701a,#08030f99)}:root.evening .backdrop video[data-for=door]{filter:saturate(.55)brightness(.78)contrast(1.08)}.backdrop:before{content:"";z-index:1;pointer-events:none;position:absolute;inset:0}:root.evening:not([data-scene=sky]):not([data-scene=grass]) .backdrop:before{mix-blend-mode:color;opacity:.55;background:#6a35e8}.backdrop-torch{z-index:3;pointer-events:none;display:none;position:absolute;inset:0}:root.evening:not([data-scene=sky]):not([data-scene=grass]) .backdrop-torch{mix-blend-mode:screen;background:radial-gradient(circle 260px at var(--mx,50%) var(--my,45%), #e1cdffe6, #a06eff73 35%, #7a3cff1f 65%, transparent 80%);display:block}body:has(.backdrop){background:0 0}.glass{--glass-tint:#eaf1fa6b;--glass-body:#eaf1fab8;--glass-edge:#ffffff8c;color:var(--text);background:linear-gradient(135deg, #ffffff57, #ffffff14 45%, #ffffff2e), var(--glass-tint);-webkit-backdrop-filter:blur(16px)saturate(140%);backdrop-filter:blur(16px)saturate(140%);border:1px solid var(--glass-edge);border-radius:18px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffb3,inset 0 -1px #ffffff26,0 24px 50px -24px #0b0b0c8c}.glass:before{content:"";pointer-events:none;background:linear-gradient(#ffffff47,#fff0);border-radius:18px 18px 0 0;height:48%;position:absolute;inset:0 0 auto}:root.evening .glass{--glass-tint:#1409306b;--glass-body:#140930bd;--glass-edge:#c9b2ff61;box-shadow:inset 0 1px #c9b2ff73,inset 0 -1px #c9b2ff1a,0 24px 60px -20px #7a3cff73}:root.evening .glass:before{background:linear-gradient(#c9b2ff29,#c9b2ff00)}.glass>summary{cursor:pointer;padding:16px 52px 16px 20px;list-style:none;position:relative}.glass>summary::-webkit-details-marker{display:none}.glass>summary h2{font:700 15px/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase;margin:0}.glass>summary:focus-visible{outline:2px solid var(--focus);outline-offset:-4px;border-radius:16px}.glass .chevron{opacity:.7;border-bottom:2px solid;border-right:2px solid;width:12px;height:12px;margin-top:-9px;transition:transform .3s;position:absolute;top:50%;right:20px;transform:rotate(45deg)}.glass[open]>summary .chevron{margin-top:-3px;transform:rotate(225deg)}.glass-body{border-top:1px solid var(--glass-edge);background:var(--glass-body);padding:18px 22px 22px;font-size:14px;line-height:1.8;position:relative}.glass-body>:first-child{margin-top:0}.glass-body>:last-child{margin-bottom:0}.glass-body label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);gap:2px;font-size:12px;line-height:1.4;display:grid}.glass-body input,.glass-body textarea{font:400 15px/1.5 var(--mono);color:var(--text);border:0;border-bottom:1px solid var(--muted);background:0 0;border-radius:0;padding:4px 0}.glass-body input:focus,.glass-body textarea:focus{border-bottom:2px solid var(--arrow);outline:none}.glass-body .consent{text-transform:none;letter-spacing:0;color:var(--text);align-items:flex-start;gap:8px;font-size:13px;display:flex}.glass-body .send{background:var(--text);color:var(--sheet);font:700 13px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:0;border-radius:999px;justify-self:start;padding:11px 18px}.glass-body .note{color:var(--muted);min-height:1.5em;margin:0;font-size:12px;line-height:1.5}.glass-body .note.error{color:#b3261e}:root.evening .glass-body .note.error{color:#ffb4ab}.sound{pointer-events:auto;color:var(--text);font:400 12px/1 var(--mono);letter-spacing:.08em;cursor:pointer;background:#eaf1fab8;border:1px solid #ffffff8c;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;display:inline-flex}:root.evening .sound{background:#140930b8;border-color:#c9b2ff61}.sound-icon{opacity:.6;background:linear-gradient(currentColor,currentColor) 0 4px/3px 4px no-repeat,linear-gradient(currentColor,currentColor) 4px 2px/3px 8px no-repeat;width:14px;height:12px;position:relative}.sound[aria-pressed=true] .sound-icon{opacity:1;background:linear-gradient(currentColor,currentColor) 0 4px/2px 4px no-repeat,linear-gradient(currentColor,currentColor) 4px 1px/2px 10px no-repeat,linear-gradient(currentColor,currentColor) 8px 3px/2px 6px no-repeat,linear-gradient(currentColor,currentColor) 12px 0/2px 12px no-repeat}.sound[hidden]{display:none}
