@font-face{font-family:Shojumaru;src:url(/fonts/shojumaru-title.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Yuji Boku;src:url(/fonts/yuji-boku-title.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e5edff;font-synthesis:none;-webkit-font-smoothing:antialiased;background:#07132d;font-family:Inter,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}.wallpaper{isolation:isolate;background:#07132d;width:100%;height:100svh;position:relative;overflow:hidden}.scene{--drift-x:0px;--drift-y:0px;--pointer-x:0px;--pointer-y:0px;aspect-ratio:1919/1080;pointer-events:none;width:max(112vw,199.007svh);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.layer,.layer img,.wind{width:100%;height:100%;position:absolute;inset:0}.layer{will-change:transform}.layer img{object-fit:fill;-webkit-user-select:none;user-select:none;display:block}.layer--sky{transform:translate(calc(var(--drift-x) * -.12 + var(--pointer-x) * .08), calc(var(--drift-y) * -.12 + var(--pointer-y) * .08))}.layer--mountains{transform:translate(calc(var(--drift-x) * -.2 + var(--pointer-x) * .18), calc(var(--drift-y) * -.2 + var(--pointer-y) * .18))}.layer--valley{transform:translate(calc(var(--drift-x) * -.48 + var(--pointer-x) * .45), calc(var(--drift-y) * -.4 + var(--pointer-y) * .45))}.layer--samurai{transform:translate(calc(var(--drift-x) * -.9 + var(--pointer-x)), calc(var(--drift-y) * -.65 + var(--pointer-y)))}.layer--samurai img{transform-origin:50% 100%;animation:6.8s ease-in-out infinite breathing}.moonlight{mix-blend-mode:screen;background:radial-gradient(10% 18% at 72.5% 23%,#b7d1ff18,#0000 75%);animation:12s ease-in-out infinite alternate moon-glow;position:absolute;inset:0}.mist{pointer-events:none;filter:blur(12px);mix-blend-mode:screen;will-change:transform, opacity;background:radial-gradient(24% 16% at 20% 48%,#b5ccf23d,#0000 100%),radial-gradient(30% 20% at 64% 60%,#91b5eb2e,#0000 100%),radial-gradient(17% 12% at 87% 42%,#c5d9fa29,#0000 100%);width:120%;height:30%;animation:24s ease-in-out infinite alternate drifting-mist;position:absolute;left:-10%}.mist--far{opacity:.5;top:49%}.mist--near{opacity:.38;animation-duration:19s;animation-delay:-11s;top:69%}.mist--far{translate:calc(var(--pointer-x) * .3) calc(var(--pointer-y) * .25)}.mist--near{translate:calc(var(--pointer-x) * .7) calc(var(--pointer-y) * .6)}.vignette{pointer-events:none;background:radial-gradient(at 50% 45%,#0000 48%,#02081745 100%);position:absolute;inset:0}.x-logo{top:max(32px, env(safe-area-inset-top));right:max(32px, env(safe-area-inset-right));color:#f4f7ff;filter:drop-shadow(0 2px 8px #02081780);width:26px;height:26px;position:absolute}.x-logo svg{width:100%;height:100%;display:block}.x-logo:after{content:"";position:absolute;inset:-10px}.x-logo:focus-visible{outline-offset:10px;outline:2px solid}.scene{opacity:0;transition:opacity 3.6s ease-in-out .2s}.x-logo{opacity:0;transition:opacity 2s 1.5s}[data-entered=true] .scene,[data-entered=true] .x-logo{opacity:1}.entrance{z-index:5;color:#b9c3d3;width:100%;height:100%;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0;position:absolute;inset:0;overflow:hidden}.entrance__veil{background:#020409;transition:opacity 4s ease-in-out;position:absolute;inset:0}.entrance__cloud{filter:blur(24px);opacity:.65;pointer-events:none;background:radial-gradient(36% 22% at 18% 42%,#26303cd9,#0000 75%),radial-gradient(30% 18% at 62% 60%,#1d2633e6,#0000 80%),radial-gradient(40% 26% at 85% 30%,#222b38b3,#0000 75%),radial-gradient(35% 20% at 45% 85%,#151c28,#0000 80%);transition:translate 4s cubic-bezier(.2,.65,.3,1),opacity 3.8s ease-in-out;animation:15s ease-in-out infinite alternate entrance-clouds;position:absolute;inset:-25%}.entrance__cloud--right{opacity:.45;animation-direction:alternate-reverse;animation-delay:-7s;rotate:180deg}.entrance__prompt{flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:24px;transition:opacity .7s,transform 1.2s;display:flex;position:absolute;inset:0}.entrance__kanji{color:#c9c7c0;text-shadow:0 3px 30px #000;font-family:Yuji Boku,Yu Mincho,serif;font-size:clamp(84px,12vw,140px);line-height:1;rotate:-5deg}.entrance__line{clip-path:polygon(0 45%,96% 0,100% 60%,6% 100%);background:#963d3b;width:36px;height:3px;margin:-2px 0 12px;rotate:-7deg}.entrance__title{letter-spacing:.055em;color:#d2d0c9;text-shadow:0 2px 20px #000;text-wrap:balance;font-family:Shojumaru,Yuji Boku,serif;font-size:clamp(19px,3.2vw,36px);line-height:1.45}.entrance__hint{color:#90949b;letter-spacing:.2em;text-transform:uppercase;margin-top:4px;font-size:10px;line-height:1.6}.entrance:hover .entrance__title{color:#e5edff}.entrance:focus-visible{outline-offset:-12px;outline:1px solid #9cacc4}[data-entered=true] .entrance{pointer-events:none}[data-entered=true] .entrance__veil{opacity:0}[data-entered=true] .entrance__prompt{opacity:0;transform:translateY(-10px)}[data-entered=true] .entrance__cloud--left{opacity:0;translate:-28% -8%}[data-entered=true] .entrance__cloud--right{opacity:0;translate:28% 8%}@keyframes entrance-clouds{0%{transform:translate(-3%,2%)scale(1)}to{transform:translate(3%,-2%)scale(1.08)}}[data-motion=paused] .scene *{animation-play-state:paused!important}.asset-error{background:#07132dee;border:1px solid #c3d6ff30;border-radius:12px;width:min(90%,460px);margin:0;padding:16px 20px;font-size:1rem;position:absolute;top:24px;left:50%;transform:translate(-50%)}@keyframes breathing{0%,to{transform:scale(1)}50%{transform:scale(1.001,1.004)}}@keyframes drifting-mist{0%{opacity:.3;transform:translate(-2%,1%)}to{opacity:.6;transform:translate(3%,-2%)}}@keyframes moon-glow{0%{opacity:.5}to{opacity:1}}@media (width<=600px){.x-logo{top:max(24px, env(safe-area-inset-top));right:max(24px, env(safe-area-inset-right));width:24px;height:24px}}@media (prefers-reduced-motion:reduce){.scene *{animation:none!important}.layer{transform:none!important}.mist{translate:none!important}.entrance__cloud{animation:none;translate:none!important}.entrance__prompt{transform:none!important}.scene,.x-logo,.entrance *{transition-duration:.2s;transition-delay:0s}}
