:root{color:#181716;background:#ece9df;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{width:100%;height:100%}body{margin:0;overflow:hidden}button{font:inherit}.app-shell,.entry-page,.main-page{position:relative;width:100%;min-height:100vh;min-height:100dvh;background:#ece9df;overflow:hidden}.entry-page{background:linear-gradient(90deg,rgba(24,23,22,.09) 0 1px,transparent 1px) 50% 50% / 4.25rem 4.25rem,linear-gradient(180deg,rgba(24,23,22,.065) 0 1px,transparent 1px) 50% 50% / 4.25rem 4.25rem,linear-gradient(180deg,#f3f1e9,#e5e1d6)}.live2d-entry-page{background:#fff7e7}.tone-warm .entry-page{background:linear-gradient(90deg,rgba(48,39,27,.08) 0 1px,transparent 1px) 50% 50% / 4.25rem 4.25rem,linear-gradient(180deg,rgba(48,39,27,.06) 0 1px,transparent 1px) 50% 50% / 4.25rem 4.25rem,linear-gradient(180deg,#f7efe4,#e7dece)}.tone-mist .entry-page{background:linear-gradient(90deg,rgba(70,43,58,.075) 0 1px,transparent 1px) 50% 50% / 4.25rem 4.25rem,linear-gradient(180deg,rgba(70,43,58,.055) 0 1px,transparent 1px) 50% 50% / 4.25rem 4.25rem,linear-gradient(180deg,#f8edf1,#e7dde2)}.scene-wrap{position:absolute;inset:0}.scene-wrap canvas{width:100%!important;height:100%!important;cursor:grab}.scene-wrap canvas:active{cursor:grabbing}.model-status{width:max-content;max-width:min(72vw,18rem);color:#18171694;font-size:.875rem;line-height:1.5;letter-spacing:0;text-align:center;white-space:nowrap;-webkit-user-select:none;user-select:none}.boot-overlay{pointer-events:auto;position:fixed;inset:0;z-index:12;background:#020202;overflow:hidden}.boot-overlay:before,.boot-overlay:after{position:absolute;inset:0;content:"";pointer-events:none}.boot-overlay:before{background:linear-gradient(90deg,transparent 0 49.95%,rgba(255,255,255,.12) 49.95% 50.05%,transparent 50.05%),linear-gradient(180deg,transparent 0 49.95%,rgba(255,255,255,.1) 49.95% 50.05%,transparent 50.05%);mask-image:radial-gradient(circle at center,#000 0 16rem,transparent 31rem);-webkit-mask-image:radial-gradient(circle at center,#000 0 16rem,transparent 31rem);opacity:.36}.boot-overlay:after{background:repeating-linear-gradient(0deg,rgba(255,255,255,.05) 0 1px,transparent 1px 5px);opacity:.22}.boot-grid{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.045) 0 1px,transparent 1px) 50% 50% / 4.8rem 4.8rem,linear-gradient(180deg,rgba(255,255,255,.035) 0 1px,transparent 1px) 50% 50% / 4.8rem 4.8rem;opacity:.28}.boot-vignette{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,transparent 0 15rem,rgba(0,0,0,.42) 32rem),radial-gradient(circle at 50% 62%,rgba(236,233,223,.08),transparent 18rem);pointer-events:none}.boot-reveal{position:absolute;left:50%;top:50%;width:16rem;height:16rem;border-radius:999px;background:radial-gradient(circle,rgba(246,244,236,1) 0 22%,rgba(246,244,236,.72) 38%,transparent 68%),radial-gradient(circle,rgba(255,255,255,.86),transparent 72%);opacity:0;pointer-events:none;transform:translate(-50%,-50%) scale(.08);filter:blur(6px)}.boot-revealing .boot-reveal{animation:boot-reveal-bloom .98s cubic-bezier(.12,.9,.18,1) forwards}.boot-revealing .boot-console,.boot-revealing .boot-grid,.boot-revealing .boot-sweep,.boot-revealing .boot-vignette{opacity:0;transition:opacity .42s ease}.boot-sweep{position:absolute;left:0;right:0;height:min(22vh,13rem);background:linear-gradient(180deg,transparent,rgba(255,255,255,.02),rgba(255,255,255,.12),rgba(255,255,255,.02),transparent);mix-blend-mode:screen;opacity:.6}.boot-console{position:fixed;left:50%;top:50%;z-index:1;display:grid;width:min(23rem,calc(100vw - 3rem));transform:translate(-50%,-50%);color:#ffffffeb;gap:.78rem}.boot-topline,.boot-meta{font-size:.64rem;letter-spacing:.2em}.boot-topline,.boot-meta{display:flex;justify-content:space-between;color:#ffffff85}.boot-percent{position:relative;display:flex;align-items:flex-start;justify-content:flex-end;color:#ffffffeb;font-variant-numeric:tabular-nums;line-height:.9}.boot-percent span{font-size:clamp(2.6rem,8vw,4.2rem);font-weight:500}.boot-percent em{margin-left:.28rem;color:#ffffff75;font-size:clamp(.92rem,2vw,1.1rem);font-style:normal;transform:translateY(.36rem)}.boot-segments{display:grid;grid-template-columns:repeat(18,1fr);gap:.16rem;opacity:.7}.boot-segments span{height:.24rem;background:#ffffff1c;transition:background .18s ease,transform .18s ease}.boot-segments span.is-active{background:#ffffffd6;transform:translateY(-1px)}.boot-track{height:1px;background:#ffffff2e;overflow:hidden}.boot-track span{display:block;height:100%;background:#fffffff0;box-shadow:0 0 1rem #ffffff8c}.boot-error{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.15rem;color:#ffffffc7;font-size:.78rem;letter-spacing:0}.boot-error button{border:1px solid rgba(255,255,255,.24);border-radius:999px;background:#ffffffe6;color:#000000e0;cursor:pointer;letter-spacing:.12em;padding:.55rem .9rem}@keyframes boot-reveal-bloom{0%{opacity:0;transform:translate(-50%,-50%) scale(.08)}18%{opacity:1}72%{opacity:1;transform:translate(-50%,-50%) scale(6.8)}to{opacity:.92;transform:translate(-50%,-50%) scale(10)}}.command-hub{position:fixed;left:clamp(4rem,8vw,7rem);bottom:clamp(5rem,14vh,8rem);z-index:6;width:3.3rem;height:3.3rem;opacity:0;pointer-events:none;transform:translate(-.75rem,.75rem) scale(.96);transition:opacity .42s ease,transform .42s cubic-bezier(.2,.8,.2,1)}.command-hub.is-ready{opacity:1;pointer-events:auto;transform:translate(0) scale(1)}.command-hub:before,.command-hub:after{position:absolute;inset:50%;width:10.8rem;height:10.8rem;border-radius:999px;content:"";opacity:0;pointer-events:none;transform:translate(-50%,-50%) scale(.45);transition:opacity .26s ease,transform .42s cubic-bezier(.2,.8,.2,1)}.command-hub:before{border:1px solid rgba(24,23,22,.08);background:linear-gradient(90deg,transparent 0 calc(50% - 1px),rgba(24,23,22,.08) calc(50% - 1px) calc(50% + 1px),transparent calc(50% + 1px)),linear-gradient(180deg,transparent 0 calc(50% - 1px),rgba(24,23,22,.08) calc(50% - 1px) calc(50% + 1px),transparent calc(50% + 1px))}.command-hub:after{width:7.2rem;height:7.2rem;border:1px dashed rgba(24,23,22,.16)}.command-hub.is-open:before,.command-hub.is-open:after,.command-hub:focus-within:before,.command-hub:focus-within:after{opacity:1;transform:translate(-50%,-50%) scale(1)}.command-hub-button{position:relative;z-index:2;display:grid;place-items:center;width:3.3rem;height:3.3rem;border:1px solid rgba(24,23,22,.16);border-radius:999px;background:#ffffffd1;color:#181716cc;cursor:pointer;outline:none;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 1rem 2.8rem #201e1b29;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .26s cubic-bezier(.2,.8,.2,1)}.command-hub-button:after{position:absolute;inset:.45rem;border:1px solid rgba(24,23,22,.1);border-radius:inherit;content:""}.command-hub.is-open .command-hub-button,.command-hub-button:hover,.command-hub-button:focus-visible{border-color:#18171642;background:#181716e6;color:#ffffffeb;transform:rotate(45deg)}.command-orbit{position:absolute;inset:0}.command-node{position:absolute;left:50%;top:50%;opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1);transform-origin:center;animation:command-pop .36s cubic-bezier(.18,.9,.18,1);transition:opacity .22s ease,transform .42s cubic-bezier(.18,.9,.18,1)}.command-option,.command-tone{display:grid;place-items:center;width:2.35rem;height:2.35rem;border:1px solid rgba(24,23,22,.12);border-radius:999px;color:#181716a6;cursor:pointer;outline:none;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 .85rem 2.2rem #201e1b1f;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.command-option{background:#fffc}.command-option:hover,.command-option:focus-visible,.command-tone:hover,.command-tone:focus-visible{transform:translateY(-2px)}.command-option.is-active{border-color:#18171633;background:#181716e6;color:#ffffffeb}.command-tone-paper{background:#f7f5ef}.command-tone-warm{background:#fff0d8}.command-tone-mist{background:#ffeaf2}.command-tone.is-active{border-color:#18171661;box-shadow:inset 0 0 0 1px #fff9,0 0 0 3px #18171614,0 .85rem 2.2rem #201e1b1f}@keyframes command-pop{0%{opacity:0}to{opacity:1}}.enter-overlay{pointer-events:none;position:fixed;inset:0;z-index:5;opacity:0;transform:translateY(.85rem);transition:opacity .42s ease,transform .42s cubic-bezier(.2,.8,.2,1)}.enter-overlay.is-ready{opacity:1;transform:translateY(0)}.enter-tether{position:absolute;left:50%;bottom:clamp(5.35rem,12vh,8.2rem);display:grid;justify-items:center;width:1px;height:clamp(5.3rem,15vh,8rem);transform:translate(-50%)}.enter-tether-line{width:1px;height:100%;background:linear-gradient(180deg,#18171600,#18171647,#1817160f)}.enter-tether-pulse{position:absolute;top:0;width:.42rem;height:.42rem;border-radius:999px;background:#181716d1;box-shadow:0 0 1.2rem #18171638;animation:tether-pulse 2.2s cubic-bezier(.3,.8,.3,1) infinite}.enter-target{position:absolute;top:-.95rem;width:1.8rem;height:1.8rem;border:1px solid rgba(24,23,22,.16);border-radius:999px;background:linear-gradient(90deg,transparent 0 calc(50% - 1px),rgba(24,23,22,.18) calc(50% - 1px) calc(50% + 1px),transparent calc(50% + 1px)),linear-gradient(180deg,transparent 0 calc(50% - 1px),rgba(24,23,22,.18) calc(50% - 1px) calc(50% + 1px),transparent calc(50% + 1px))}.enter-field{position:absolute;left:50%;bottom:max(.35rem,calc(env(safe-area-inset-bottom) - .75rem));width:15.8rem;height:5.55rem;transform:translate(-50%)}.enter-field-ring,.enter-field-bracket{position:absolute;pointer-events:none}.enter-field-ring{left:50%;top:50%;border-radius:999px;transform:translate(-50%,-50%)}.enter-field-ring-outer{width:100%;height:100%;border:1px solid rgba(24,23,22,.1);border-left-color:transparent;border-right-color:transparent;animation:enter-orbit 7.5s linear infinite}.enter-field-ring-inner{width:12.6rem;height:3.65rem;border:1px dashed rgba(24,23,22,.16);animation:enter-orbit 9.5s linear reverse infinite}.enter-field-bracket{top:50%;width:1.1rem;height:2.55rem;border-block:1px solid rgba(24,23,22,.22);transform:translateY(-50%)}.enter-field-bracket-left{left:1rem;border-left:1px solid rgba(24,23,22,.22)}.enter-field-bracket-right{right:1rem;border-right:1px solid rgba(24,23,22,.22)}.enter-button{pointer-events:auto;position:absolute;left:50%;bottom:max(1.3rem,env(safe-area-inset-bottom));display:inline-flex;align-items:center;justify-content:space-between;width:12.8rem;height:3.35rem;border:1px solid rgba(24,23,22,.18);border-radius:999px;background:linear-gradient(90deg,#fffffff5,#f6f4ecc7),linear-gradient(115deg,transparent 0 42%,rgba(24,23,22,.1) 42% 43%,transparent 43% 100%),#ffffffd6;color:#181716db;letter-spacing:.12em;padding:0 1rem 0 .46rem;cursor:pointer;outline:none;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 1.2rem 3.5rem #201e1b2e,0 0 0 .45rem #ffffff29,inset 0 0 0 1px #ffffff80;overflow:hidden;transform:translate(-50%);transition:border-color .18s ease,box-shadow .18s ease,transform .32s cubic-bezier(.2,.8,.2,1)}.enter-button:disabled{cursor:default}.enter-button:focus-visible{border-color:#1817166b;box-shadow:0 0 0 3px #1817161a,0 1.2rem 3.5rem #201e1b2e}.enter-button:hover{transform:translate(-50%) translateY(-3px)}.enter-button:active{transform:translate(-50%) translateY(-1px) scale(.985)}.enter-button-scan{position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(24,23,22,.1),transparent),linear-gradient(180deg,transparent 0 46%,rgba(24,23,22,.1) 46% 47%,transparent 47%);opacity:.42;transform:translate(-105%);animation:enter-scan 3.8s ease-in-out infinite}.enter-button-noise{position:absolute;inset:.42rem .7rem;border-radius:inherit;background:repeating-linear-gradient(90deg,rgba(24,23,22,.09) 0 1px,transparent 1px 13px),repeating-linear-gradient(0deg,rgba(24,23,22,.05) 0 1px,transparent 1px 9px);mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent);opacity:.2}.enter-button-orb{position:relative;z-index:2;display:grid;place-items:center;width:2.35rem;height:2.35rem;border-radius:999px;background:radial-gradient(circle at 62% 38%,rgba(255,255,255,.18),transparent 34%),#181716eb;color:#ffffffeb;box-shadow:inset 0 0 0 1px #ffffff29,0 0 1.2rem #1817162e;transition:transform .32s cubic-bezier(.2,.8,.2,1)}.enter-button-text{position:relative;z-index:1;font-size:.95rem;font-weight:500;transition:opacity .18s ease,transform .28s cubic-bezier(.2,.8,.2,1)}.enter-button-line{position:relative;z-index:1;width:2.55rem;height:1px;background:#1817162e;overflow:hidden;transition:opacity .18s ease,transform .28s cubic-bezier(.2,.8,.2,1)}.enter-button-line span{display:block;width:60%;height:100%;background:#181716c7;animation:enter-line 1.7s ease-in-out infinite}.enter-button:hover .enter-button-scan{opacity:.78;animation-duration:1.1s}.enter-button:hover .enter-button-orb{transform:translate(8.15rem) rotate(-18deg)}.enter-button:hover .enter-button-text{opacity:.72;transform:translate(-.85rem)}.enter-button:hover .enter-button-line{opacity:.18;transform:translate(.45rem)}@keyframes tether-pulse{0%{opacity:0;transform:translateY(0) scale(.72)}22%{opacity:1}to{opacity:0;transform:translateY(100%) scale(1)}}@keyframes enter-line{0%{transform:translate(-105%)}52%,to{transform:translate(175%)}}@keyframes enter-orbit{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes enter-scan{0%{transform:translate(-105%)}to{transform:translate(105%)}}.main-page{display:grid;place-items:center}.main-page h1{margin:0;color:#181716db;font-size:clamp(2rem,8vw,4.8rem);font-weight:500;letter-spacing:.08em}.webgl-fallback{position:fixed;inset:0;display:grid;place-items:center;gap:.75rem;align-content:center;color:#181716c2;background:#ece9df;text-align:center}.webgl-fallback span{font-size:.72rem;letter-spacing:.18em}.webgl-fallback strong{font-size:1rem;font-weight:500}.live2d-entry{position:absolute;inset:0;min-height:100dvh;background:radial-gradient(circle at 50% 66%,rgba(255,255,255,.92),transparent 27rem),radial-gradient(circle at 26% 24%,rgba(255,225,156,.28),transparent 22rem),radial-gradient(circle at 78% 22%,rgba(255,246,216,.68),transparent 22rem),linear-gradient(180deg,#fff9ec,#f4ead1 56%,#fffaf1);color:#2d261ce6;isolation:isolate;overflow:hidden}.live2d-entry:before,.live2d-entry:after{position:absolute;inset:0;content:"";pointer-events:none}.live2d-entry:before{background:linear-gradient(90deg,transparent 0 49.95%,rgba(74,60,37,.075) 49.95% 50.05%,transparent 50.05%),linear-gradient(180deg,transparent 0 49.95%,rgba(74,60,37,.052) 49.95% 50.05%,transparent 50.05%);mask-image:radial-gradient(circle at 50% 58%,#000 0 21rem,transparent 38rem);-webkit-mask-image:radial-gradient(circle at 50% 58%,#000 0 21rem,transparent 38rem);opacity:.44}.live2d-entry:after{background:repeating-linear-gradient(0deg,rgba(82,68,46,.022) 0 1px,transparent 1px 5px);opacity:.36}.live2d-entry-grid,.live2d-entry-vignette,.live2d-entry-ink,.live2d-stage,.live2d-character,.live2d-entry-status,.live2d-enter-button,.entry-poem,.live2d-entry-curtain{position:absolute}.live2d-entry-grid{inset:0;z-index:0;background:linear-gradient(90deg,rgba(79,63,36,.06) 0 1px,transparent 1px) 50% 55% / 4.8rem 4.8rem,linear-gradient(180deg,rgba(79,63,36,.047) 0 1px,transparent 1px) 50% 55% / 4.8rem 4.8rem,linear-gradient(90deg,rgba(79,63,36,.026) 0 1px,transparent 1px) 50% 55% / 1.2rem 1.2rem,linear-gradient(180deg,rgba(79,63,36,.023) 0 1px,transparent 1px) 50% 55% / 1.2rem 1.2rem;mask-image:radial-gradient(circle at 50% 60%,#000 0 30rem,transparent 47rem);-webkit-mask-image:radial-gradient(circle at 50% 60%,#000 0 30rem,transparent 47rem);opacity:.5}.live2d-entry-vignette{inset:0;z-index:1;background:radial-gradient(circle at 50% 60%,transparent 0 24rem,rgba(218,199,158,.32) 52rem),linear-gradient(90deg,rgba(255,250,238,.62),transparent 25%,transparent 75%,rgba(255,250,238,.62));pointer-events:none}.live2d-entry-ink{left:50%;top:63%;z-index:1;width:min(26rem,46vw);height:min(12rem,20vh);border-radius:999px;background:radial-gradient(circle at 42% 50%,rgba(255,255,255,.62),transparent 38%),radial-gradient(circle at 56% 55%,rgba(243,205,125,.24),transparent 44%);filter:blur(24px);opacity:.78;transform:translate(-50%,-50%)}.live2d-character{top:clamp(1rem,3.5vh,2.5rem);bottom:-3.5rem;z-index:2;opacity:1;transition:opacity .46s ease,transform .68s cubic-bezier(.2,.8,.2,1),filter .46s ease}.live2d-stage{inset:clamp(1rem,3.5vh,2.5rem) 0 0;z-index:2;opacity:1;transition:opacity .46s ease,transform .68s cubic-bezier(.2,.8,.2,1),filter .46s ease}.live2d-character-left{left:0;right:46%}.live2d-character-right{left:46%;right:0}.live2d-character.is-entering,.live2d-stage.is-entering{opacity:0;filter:blur(10px);transform:scale(.985) translateY(1.2rem)}.live2d-canvas{display:block;width:100%!important;height:100%!important}.live2d-character-left .live2d-canvas,.live2d-stage-canvas{filter:none}.live2d-status{position:absolute;left:50%;top:55%;z-index:2;color:#2d261c94;font-size:.78rem;letter-spacing:.12em;pointer-events:none;transform:translate(-50%,-50%);white-space:nowrap}.live2d-entry-status{left:50%;bottom:clamp(1.3rem,3vh,2rem);z-index:4;display:flex;align-items:center;border:1px solid rgba(72,58,36,.12);border-radius:999px;background:#ffffff57;color:#2d261c6b;gap:.7rem;letter-spacing:.18em;padding:.55rem .9rem;pointer-events:none;transform:translate(-50%)}.live2d-entry-status span{font-size:.58rem;font-weight:700;white-space:nowrap}.live2d-entry-status span+span:before{display:inline-block;width:.24rem;height:.24rem;margin-right:.72rem;border-radius:999px;background:#c29534c7;box-shadow:0 0 1rem #c2953461;content:"";vertical-align:middle}.live2d-enter-button{left:calc(50% - 6.7rem);top:calc(47% - 1.675rem);z-index:5;display:inline-flex;align-items:center;justify-content:space-between;width:13.4rem;height:3.35rem;border:1px solid rgba(74,60,37,.14);border-radius:999px;background:radial-gradient(circle at 24% 50%,rgba(255,255,255,.72),transparent 38%),#ffffff85;color:#2d261ce0;cursor:pointer;gap:.8rem;letter-spacing:.18em;overflow:hidden;padding:0 1rem 0 .56rem;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 1.15rem 3.4rem #5c492a29,inset 0 0 0 1px #ffffff9e}.live2d-enter-button:disabled{cursor:default}.live2d-enter-button:before,.live2d-enter-button:after{position:absolute;inset:0;content:"";pointer-events:none}.live2d-enter-button:before{background:linear-gradient(90deg,transparent,rgba(126,98,50,.26),transparent);opacity:0;transform:translate(-110%);transition:opacity .24s ease,transform .74s cubic-bezier(.2,.8,.2,1)}.live2d-enter-button:after{border-radius:inherit;box-shadow:inset 0 0 1.6rem #7e623200;transition:box-shadow .28s ease}.live2d-enter-button:hover:before{opacity:1;transform:translate(110%)}.live2d-enter-button:hover:after{box-shadow:inset 0 0 1.6rem #7e623229}.live2d-enter-mark{position:relative;z-index:2;display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:999px;background:#2d261ceb;color:#ffffffeb;transition:background .22s ease,transform .36s cubic-bezier(.2,.8,.2,1)}.live2d-enter-button:hover .live2d-enter-mark{background:#624c2af0;transform:translate(8.5rem) rotate(-18deg)}.live2d-enter-text,.live2d-enter-line{position:relative;z-index:2;transition:opacity .24s ease,transform .36s cubic-bezier(.2,.8,.2,1)}.live2d-enter-text{font-size:.95rem;font-weight:500;letter-spacing:.24em}.live2d-enter-line{width:2.35rem;height:1px;background:#2d261c3d;overflow:hidden}.live2d-enter-line:after{display:block;width:55%;height:100%;background:#2d261cb8;content:"";animation:enter-line 1.8s ease-in-out infinite}.live2d-enter-button:hover .live2d-enter-text{opacity:.68;transform:translate(-.75rem)}.live2d-enter-button:hover .live2d-enter-line{opacity:.18;transform:translate(.42rem)}.live2d-enter-ink{position:absolute;inset:-2.2rem;z-index:1;pointer-events:none}.live2d-enter-ink i{position:absolute;left:var(--ink-x);top:var(--ink-y);width:.34rem;height:.34rem;border-radius:999px;background:#7a5b2d80;filter:blur(1px);opacity:0;transform:translate(-50%,-50%) scale(.35)}.live2d-enter-button:hover .live2d-enter-ink i{animation:live2d-ink .9s cubic-bezier(.2,.8,.2,1) infinite;animation-delay:calc(var(--ink-index) * 42ms)}.live2d-entry-curtain{inset:0;z-index:9;background:radial-gradient(circle at 50% 44%,transparent 0 9rem,rgba(0,0,0,.72) 27rem),#000000db;pointer-events:none}@keyframes live2d-ink{0%{opacity:0;transform:translate(-50%,-50%) scale(.25)}28%{opacity:.72}to{opacity:0;transform:translate(calc(-50% + (var(--ink-index) - 9) * .22rem),calc(-50% - 1.7rem)) scale(2.8)}}@media(max-width:640px){.app-shell,.entry-page,.main-page{background:linear-gradient(90deg,rgba(24,23,22,.055) 0 1px,transparent 1px) 50% 50% / 3.2rem 3.2rem,linear-gradient(180deg,rgba(24,23,22,.04) 0 1px,transparent 1px) 50% 50% / 3.2rem 3.2rem,linear-gradient(180deg,#ffffffeb,#eeebe2e6)}.command-hub{left:3.15rem;bottom:auto;top:3.2rem;width:3rem;height:3rem}.command-hub-button{width:3rem;height:3rem}.command-hub:before{width:9.8rem;height:9.8rem}.command-hub:after{width:6.3rem;height:6.3rem}.command-option,.command-tone{width:2.08rem;height:2.08rem}.enter-tether{bottom:clamp(4.95rem,10vh,6.2rem);height:clamp(4.7rem,13vh,6rem)}.enter-field{width:13.4rem;height:4.85rem}.enter-field-ring-inner{width:10.9rem;height:3.18rem}.enter-field-bracket{height:2.2rem}.enter-button{width:11rem;height:3.08rem;bottom:max(1rem,env(safe-area-inset-bottom))}.enter-button-orb{width:2.14rem;height:2.14rem}.enter-button:hover .enter-button-orb{transform:translate(7rem) rotate(-18deg)}.live2d-character{top:4.2rem;bottom:calc(3.5rem + env(safe-area-inset-bottom))}.live2d-stage{inset:4.2rem 0 calc(3.5rem + env(safe-area-inset-bottom))}.live2d-character-left{left:-12%;right:48%}.live2d-character-right{left:48%;right:-12%}.live2d-enter-button{left:calc(50% - 5.9rem);top:calc(50% - 1.54rem);width:11.8rem;height:3.08rem}.live2d-enter-button:hover .live2d-enter-mark{transform:translate(7.2rem) rotate(-18deg)}.live2d-entry-status{bottom:max(.9rem,env(safe-area-inset-bottom))}}.main-page.main-experience{display:block;isolation:isolate;background:radial-gradient(circle at var(--cursor-x) var(--cursor-y),color-mix(in srgb,var(--accent) 18%,transparent),transparent 22rem),radial-gradient(circle at 50% 52%,rgba(255,255,255,.08),transparent 28rem),linear-gradient(180deg,#070707,#0e0e0d 44%,#080807);color:#ffffffe6}.main-light-field,.main-grid,.main-scene,.main-node-map,.main-panel{position:absolute}.main-light-field{inset:0;z-index:0;background:linear-gradient(115deg,transparent 0 22%,rgba(255,255,255,.05) 22.2%,transparent 22.7%),radial-gradient(circle at 78% 18%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 18rem);opacity:.92;pointer-events:none}.main-light-field:before,.main-light-field:after{position:absolute;content:"";pointer-events:none}.main-light-field:before{left:50%;top:50%;width:34rem;height:34rem;border:1px solid color-mix(in srgb,var(--accent) 32%,transparent);border-radius:999px;transform:translate(-50%,-50%);opacity:.34}.main-light-field:after{left:50%;top:50%;width:62rem;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent) 58%,transparent),transparent);transform:translate(-50%,-50%) rotate(-18deg);opacity:.38}.main-grid{inset:0;z-index:0;background:linear-gradient(90deg,rgba(255,255,255,.05) 0 1px,transparent 1px) 50% 50% / 4.5rem 4.5rem,linear-gradient(180deg,rgba(255,255,255,.04) 0 1px,transparent 1px) 50% 50% / 4.5rem 4.5rem;mask-image:radial-gradient(circle at 50% 50%,#000 0 30rem,transparent 46rem);-webkit-mask-image:radial-gradient(circle at 50% 50%,#000 0 30rem,transparent 46rem);opacity:.42;pointer-events:none}.main-grid:after{position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 6px);content:""}.main-scene{inset:0;z-index:1}.main-scene canvas{cursor:crosshair}.main-model-status{color:#ffffff9e;font-size:.72rem;letter-spacing:.18em;white-space:nowrap}.main-node-map{left:clamp(1.2rem,4vw,4rem);top:50%;z-index:3;display:grid;gap:.8rem;transform:translateY(-50%)}.main-node-map:before{position:absolute;left:1.32rem;top:1.3rem;bottom:1.3rem;width:1px;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--accent) 45%,rgba(255,255,255,.2)),transparent);content:""}.main-node{position:relative;display:grid;grid-template-columns:2.65rem minmax(0,1fr);align-items:center;min-width:10.4rem;height:2.65rem;border:0;background:transparent;color:#ffffff6b;cursor:pointer;gap:.72rem;letter-spacing:.18em;padding:0;text-align:left;transition:color .22s ease,transform .32s cubic-bezier(.2,.8,.2,1)}.main-node svg{position:relative;z-index:1;justify-self:center}.main-node span:last-child{font-size:.68rem;font-weight:600}.main-node:before{position:absolute;left:0;width:2.65rem;height:2.65rem;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:#ffffff0e;box-shadow:inset 0 0 0 1px #ffffff08;content:"";transition:background .22s ease,border-color .22s ease,box-shadow .22s ease,transform .32s cubic-bezier(.2,.8,.2,1)}.main-node-pulse{position:absolute;left:1.325rem;top:50%;width:.36rem;height:.36rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 80%,white);opacity:0;transform:translate(-50%,-50%) scale(.4);transition:opacity .22s ease,transform .32s cubic-bezier(.2,.8,.2,1)}.main-node:hover,.main-node.is-active{color:#ffffffeb;transform:translate(.45rem)}.main-node:hover:before,.main-node.is-active:before{border-color:color-mix(in srgb,var(--accent) 52%,rgba(255,255,255,.16));background:color-mix(in srgb,var(--accent) 14%,rgba(255,255,255,.08));box-shadow:inset 0 0 0 1px #ffffff0d,0 0 1.8rem color-mix(in srgb,var(--accent) 28%,transparent)}.main-node.is-active .main-node-pulse{opacity:1;transform:translate(-50%,-50%) scale(1)}.main-panel{right:clamp(1.2rem,4.4vw,4.5rem);bottom:clamp(1.2rem,5vw,4rem);z-index:3;display:grid;width:min(26rem,34vw);min-width:19rem;gap:1.1rem;padding-left:1.2rem}.main-panel-rule{position:absolute;left:0;top:.2rem;bottom:.2rem;width:1px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 78%,white),transparent);box-shadow:0 0 1.2rem color-mix(in srgb,var(--accent) 42%,transparent)}.main-panel-index{display:inline-flex;margin-bottom:.58rem;color:color-mix(in srgb,var(--accent) 76%,white);font-size:.68rem;font-weight:600;letter-spacing:.2em}.main-panel h1{margin:0;color:#fffffff2;font-size:clamp(2.2rem,4vw,4rem);font-weight:500;letter-spacing:0;line-height:.94}.main-panel p{max-width:25rem;margin:1rem 0 0;color:#ffffff9e;font-size:.95rem;line-height:1.8}.main-panel-action{position:relative;display:inline-flex;align-items:center;justify-content:space-between;justify-self:start;min-width:10.6rem;height:2.8rem;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:#ffffff0f;color:#ffffffe6;cursor:pointer;gap:1.5rem;letter-spacing:.16em;overflow:hidden;padding:0 .95rem 0 1.1rem}.main-panel-action:before{position:absolute;inset:0;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent) 24%,transparent),transparent);content:"";transform:translate(-100%);transition:transform .52s cubic-bezier(.2,.8,.2,1)}.main-panel-action span,.main-panel-action svg{position:relative;z-index:1}.main-panel-action span{font-size:.68rem;font-weight:700}.main-panel-action:hover:before{transform:translate(100%)}.main-panel-action:hover{border-color:color-mix(in srgb,var(--accent) 44%,rgba(255,255,255,.16))}.has-node-open .main-panel{opacity:.28;transform:translate(-1.2rem);transition:opacity .26s ease,transform .42s cubic-bezier(.2,.8,.2,1)}.scene-hotspots{position:absolute;inset:0;z-index:2;pointer-events:none}.scene-hotspot{position:absolute;left:var(--hotspot-left);top:var(--hotspot-top);width:2.6rem;height:2.6rem;border:0;border-radius:999px;background:transparent;color:#ffffffad;cursor:pointer;pointer-events:auto;transform:translate(-50%,-50%)}.scene-hotspot:before,.scene-hotspot:after,.scene-hotspot span{position:absolute;left:50%;top:50%;border-radius:999px;content:"";transform:translate(-50%,-50%)}.scene-hotspot:before{width:2rem;height:2rem;border:1px solid rgba(255,255,255,.16);opacity:0;transition:opacity .22s ease,transform .32s cubic-bezier(.2,.8,.2,1)}.scene-hotspot:after{width:.42rem;height:.42rem;background:#ffffffad;box-shadow:0 0 1rem color-mix(in srgb,var(--accent) 64%,transparent)}.scene-hotspot span{width:3.4rem;height:3.4rem;border:1px solid color-mix(in srgb,var(--accent) 42%,transparent);opacity:0;animation:hotspot-pulse 2.4s ease-out infinite}.scene-hotspot:hover:before,.scene-hotspot.is-active:before{opacity:1;transform:translate(-50%,-50%) scale(1.12)}.scene-hotspot.is-active:after{background:color-mix(in srgb,var(--accent) 82%,white)}.node-detail{position:absolute;right:clamp(1rem,3.6vw,3.4rem);top:clamp(1rem,7vh,4rem);z-index:5;display:grid;width:min(34rem,38vw);max-height:calc(100vh - clamp(2rem,10vh,6rem));border:1px solid rgba(255,255,255,.12);border-radius:1.35rem;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 10%,transparent),transparent 42%),#080808c7;box-shadow:0 1.4rem 5rem #0000006b,inset 0 0 0 1px #ffffff09;overflow:hidden;padding:1.1rem;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.node-detail:before{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px) 50% 50% / 2.8rem 2.8rem,linear-gradient(180deg,rgba(255,255,255,.028) 0 1px,transparent 1px) 50% 50% / 2.8rem 2.8rem;content:"";opacity:.46;pointer-events:none}.node-detail-header,.node-detail-grid,.dodge-game{position:relative;z-index:1}.node-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.node-detail-header span{display:inline-flex;margin-bottom:.42rem;color:color-mix(in srgb,var(--accent) 76%,white);font-size:.64rem;font-weight:700;letter-spacing:.2em}.node-detail-header h2{margin:0;color:#fffffff0;font-size:clamp(1.75rem,3vw,3rem);font-weight:500;letter-spacing:0;line-height:.96}.node-detail-header button{display:grid;flex:0 0 auto;place-items:center;width:2.4rem;height:2.4rem;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:#ffffff0f;color:#ffffffdb;cursor:pointer}.node-detail-grid{display:grid;gap:.72rem}.node-detail-card{position:relative;min-height:7.8rem;border:1px solid rgba(255,255,255,.09);border-radius:.95rem;background:#ffffff0b;overflow:hidden;padding:1rem}.node-detail-card:before{position:absolute;inset:0;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent) 16%,transparent),transparent);content:"";opacity:0;transform:translate(-100%);transition:opacity .18s ease,transform .52s cubic-bezier(.2,.8,.2,1)}.node-detail-card:hover:before{opacity:1;transform:translate(100%)}.node-detail-card span,.node-detail-card h3,.node-detail-card p{position:relative;z-index:1}.node-detail-card span{display:inline-flex;color:#ffffff6b;font-size:.62rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.node-detail-card h3{margin:.58rem 0 0;color:#ffffffe6;font-size:1.08rem;font-weight:600;letter-spacing:.04em}.node-detail-card p{margin:.62rem 0 0;color:#ffffff94;font-size:.88rem;line-height:1.65}.dodge-game{height:min(28rem,calc(100vh - 12rem));min-height:22rem;border:1px solid rgba(255,255,255,.1);border-radius:1rem;background:#050505;overflow:hidden}.dodge-canvas{display:block;width:100%;height:100%;cursor:none;touch-action:none}.dodge-hud{position:absolute;left:1rem;right:1rem;top:.9rem;z-index:2;display:flex;align-items:center;justify-content:space-between;color:#ffffffb8;pointer-events:none}.dodge-hud span{font-size:.62rem;font-weight:700;letter-spacing:.18em}.dodge-hud strong{color:#fffffff0;font-size:1.05rem;font-variant-numeric:tabular-nums;font-weight:600}.dodge-start{position:absolute;left:50%;top:50%;z-index:3;display:inline-flex;align-items:center;height:2.8rem;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:#ffffffeb;color:#000000e6;cursor:pointer;gap:.7rem;letter-spacing:.16em;padding:0 1rem;transform:translate(-50%,-50%)}.dodge-start span{font-size:.72rem;font-weight:800}.dodge-game.is-over .dodge-canvas{animation:game-fail .36s steps(2,end)}.tech-strip{position:absolute;left:50%;bottom:1.1rem;z-index:2;display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:#0000003d;color:#ffffff57;gap:.7rem;letter-spacing:.16em;padding:.54rem .85rem;pointer-events:none;transform:translate(-50%)}.tech-strip span{font-size:.58rem;font-weight:700;white-space:nowrap}@keyframes hotspot-pulse{0%{opacity:0;transform:translate(-50%,-50%) scale(.25)}34%{opacity:.42}to{opacity:0;transform:translate(-50%,-50%) scale(1.28)}}@keyframes game-fail{0%,to{filter:invert(0)}50%{filter:invert(1)}}@media(max-width:820px){.main-page.main-experience{background:radial-gradient(circle at var(--cursor-x) var(--cursor-y),color-mix(in srgb,var(--accent) 16%,transparent),transparent 18rem),linear-gradient(180deg,#070707,#0f0f0e 48%,#080807)}.main-node-map{left:50%;top:max(1rem,env(safe-area-inset-top));display:grid;grid-template-columns:repeat(4,2.7rem);gap:.55rem;transform:translate(-50%)}.main-node-map:before{display:none}.main-node{display:grid;width:2.7rem;min-width:0;grid-template-columns:1fr;gap:0}.main-node span:last-child{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}.main-node:hover,.main-node.is-active{transform:translateY(.28rem)}.main-panel{left:1rem;right:1rem;bottom:max(1rem,env(safe-area-inset-bottom));width:auto;min-width:0;padding:0 0 0 1rem}.main-panel h1{font-size:clamp(2rem,12vw,3.3rem)}.main-panel p{max-width:100%;font-size:.88rem;line-height:1.62}.main-panel-action{height:2.7rem}.scene-hotspots,.tech-strip{display:none}.has-node-open .main-panel{opacity:0;pointer-events:none;transform:translateY(1rem)}.node-detail{left:.82rem;right:.82rem;top:auto;bottom:max(.82rem,env(safe-area-inset-bottom));width:auto;max-height:calc(100vh - 5.8rem);border-radius:1.1rem;padding:.9rem}.node-detail-header{margin-bottom:.78rem}.node-detail-header h2{font-size:clamp(1.65rem,9vw,2.7rem)}.node-detail-grid{max-height:calc(100vh - 15rem);overflow:auto;padding-right:.12rem}.node-detail-card{min-height:auto;padding:.88rem}.dodge-game{height:min(26rem,calc(100vh - 13rem));min-height:20rem}}
