@font-face{font-family:Zen Kurenaido;src:url(/colorless-world/fonts/ZenKurenaido.ttf)format("truetype");font-display:swap}@font-face{font-family:FC Flower;src:url(/colorless-world/fonts/FCFlower.ttf)format("truetype");font-display:swap}@font-face{font-family:Caveat;src:url(/colorless-world/fonts/Caveat.ttf)format("truetype");font-display:swap}@font-face{font-family:Kaitou Yokoku Gothic;src:url(/colorless-world/fonts/KaitouYokokuGothic.ttf)format("truetype");font-display:swap}@font-face{font-family:Icing Soda;src:url(/colorless-world/fonts/IcingSoda.ttf)format("truetype");font-display:swap}*{box-sizing:border-box}:root{--world-saturation:0;--world-main-menu-saturation:0;color:var(--heading-color);background:var(--background-color);--gray-color:#7f7f7f;--primary-color:#60ccbb;--second-color:#ffa3c0;--primary-active-color:#4fa99b;--primary-unactive-color:#57b9a9;--link-active-color:#00796b;--link-unactive-color:#5c7773;--sub-primary-color:#e5fffa;--heading-color:#173b3a;--sub-heading-color:#315f5b;--background-color:#f8fffd;--description-color:#637c78;--border-color:#d8efeb;--font-lyric:"Zen Kurenaido", "Icing Soda", cursive;--font-dialog-jp:"FC Flower", "Icing Soda", cursive;--font-dialog-en:"Caveat", "Icing Soda", cursive;--font-menu:"Kaitou Yokoku Gothic", "Icing Soda", sans-serif;--font-general:"Icing Soda", "FC Flower", "Caveat", sans-serif;font-family:var(--font-general);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--background-color);min-width:320px;min-height:100svh;margin:0;overflow:hidden}#app{min-height:100svh}a{color:var(--link-unactive-color)}a:hover,a:focus-visible{color:var(--link-active-color)}::selection{background:var(--border-color);color:var(--heading-color)}button{font:inherit}:root{--world-ink:#1f2528;--world-muted:#697174;--world-line:#d7dcde;--world-top:#f4f5f5;--world-mid:#ebeeee;--world-bottom:#dedede;--world-utility:#d2d2d2;--world-control:#fff;--app-cursor-size:48px}html.app-cursor-ready,html.app-cursor-ready body,html.app-cursor-ready #app,html.app-cursor-ready .page-shell,html.app-cursor-ready button,html.app-cursor-ready a,html.app-cursor-ready [role=button],html.app-cursor-ready input,html.app-cursor-ready textarea,html.app-cursor-ready [contenteditable=true],html.app-cursor-ready .chat__text,html.app-cursor-ready .chat__content,html.app-cursor-ready .loading-element,html.app-cursor-ready [data-cursor],html.app-cursor-ready [aria-disabled=true],html.app-cursor-ready :disabled{cursor:none}.app-cursor{z-index:2147483647;width:var(--app-cursor-size);height:var(--app-cursor-size);pointer-events:none;opacity:0;will-change:transform, background-image;filter:saturate(var(--world-main-menu-saturation));background-position:0 0;background-repeat:no-repeat;background-size:contain;transition:filter 1.5s ease-out,opacity .3s;position:fixed;top:0;left:0;transform:translate(-999px,-999px)}.app-cursor.is-visible{opacity:1}@media (pointer:coarse){.app-cursor{display:none}html.app-cursor-ready,html.app-cursor-ready body,html.app-cursor-ready #app,html.app-cursor-ready .page-shell,html.app-cursor-ready button,html.app-cursor-ready a,html.app-cursor-ready [role=button],html.app-cursor-ready input,html.app-cursor-ready textarea,html.app-cursor-ready [contenteditable=true],html.app-cursor-ready .chat__text,html.app-cursor-ready .chat__content,html.app-cursor-ready .loading-element,html.app-cursor-ready [data-cursor],html.app-cursor-ready [aria-disabled=true],html.app-cursor-ready :disabled{cursor:auto}}.page-shell{width:100vw;min-height:100svh;padding:0;display:block;position:relative;overflow:hidden}.colorless-world{--utility-field-height:clamp(104px, 15svh, 132px);--playable-height:calc(100svh - var(--utility-field-height));--field-height:calc(var(--playable-height) / 3);--ground-line-y:calc(var(--playable-height) - (var(--field-height) * -.001));--world-background-scroll-duration:42s;background:var(--world-bottom);width:100vw;height:100svh;color:var(--world-ink);isolation:isolate;visibility:hidden;filter:saturate(var(--world-saturation));transition:filter 1.5s ease-out;position:relative;overflow:hidden}.colorless-world.is-active{visibility:visible}.world-background{z-index:0;height:calc(100svh - var(--utility-field-height));pointer-events:none;position:absolute;top:0;left:0;right:0;overflow:hidden}.world-background__track{width:max-content;height:100%;animation:world-background-scroll-left var(--world-background-scroll-duration) linear infinite;will-change:transform;animation-play-state:paused;display:flex;transform:translate(0)}.colorless-world.is-background-moving .world-background__track{animation-play-state:running}.colorless-world.is-background-paused .world-background__track{animation-play-state:paused}.world-background__segment{flex:none;height:100%;display:flex}.world-background__image{object-fit:cover;-webkit-user-select:none;user-select:none;flex:none;width:auto;height:100%;display:block}.world-field{z-index:1;height:calc((100svh - var(--utility-field-height)) / 3);border-top:1px solid var(--world-line);background:0 0;position:relative;overflow:hidden}.world-field:first-child{border-top:0}.world-field--top{background:linear-gradient(#ffffff52,#0000 72%)}.world-field--mid{background:repeating-linear-gradient(0deg,#0000 0 28px,#1f25280b 29px),0 0}.world-field--utility{z-index:20;height:var(--utility-field-height);background:linear-gradient(90deg, transparent 0, var(--sub-primary-color) 9%, color-mix(in srgb, var(--sub-primary-color) 80%, var(--sub-primary-color)) 50%, var(--sub-primary-color) 91%, transparent 100%)}.world-field--utility .world-field__label{display:none}.world-field__content{place-items:center;display:grid;position:absolute;inset:0}.world-field.is-current-field .world-field__label{color:var(--world-ink)}.world-traveler-layer{z-index:10;pointer-events:none;position:absolute;inset:0}.utility-controls{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:clamp(10px,2vw,24px);width:100%;min-height:100%;padding:12px clamp(16px,4vw,42px);display:grid}.utility-controls .dpad{--button-size:clamp(48px, 7svh, 62px);justify-self:start;align-items:center;gap:clamp(10px,2vw,16px);width:auto;height:auto;display:flex;position:relative}.utility-controls .dpad-button{transform-origin:50% 100%;position:relative;inset:auto;transform:translateY(0)scale(1)}.utility-controls .dpad-button:active,.utility-controls .dpad-button.is-pressed{transform:translateY(var(--dpad-pull-distance)) scaleX(1.035) scaleY(.95)}@keyframes world-background-scroll-left{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (width<=640px){.utility-controls{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;padding:9px 10px}.utility-controls .dpad{--button-size:clamp(40px, 11vw, 46px)}.utility-controls .spacebar-control{justify-self:end}}.memory-object-layer{pointer-events:none;z-index:6;position:absolute;inset:0;overflow:hidden}.memory-object-layer__container{width:100%;height:0;position:absolute;top:50%;left:0}.memory-object{will-change:transform;filter:drop-shadow(0 8px 16px #173b3a4d);justify-content:center;align-items:center;display:flex;position:absolute;top:0;left:0;transform:translate(100vw,-50%)}.memory-object__sprite{-webkit-user-select:none;user-select:none;image-rendering:auto;opacity:0;filter:blur(8px);transition:opacity .8s ease-out,filter .8s ease-out,translate .4s ease-out,transform .6s cubic-bezier(.16,1,.3,1);animation:.78s ease-in-out infinite memory-object-float;display:block;translate:0}.memory-object-layer.is-paused .memory-object__sprite{animation-play-state:paused!important}.memory-object.is-spawning .memory-object__sprite{opacity:1;filter:blur()}@keyframes memory-object-float{0%,to{translate:0}50%{translate:0 -10px}}.memory-object.is-collected .memory-object__sprite{animation:.8s cubic-bezier(.16,1,.3,1) forwards memory-object-collect}@keyframes memory-object-collect{0%{opacity:1;filter:drop-shadow(0 0 0px var(--primary-color));transform:scale(1)rotate(0)}40%{opacity:.9;filter:drop-shadow(0 0 24px var(--primary-color));transform:scale(1.6)rotate(15deg)}to{opacity:0;filter:drop-shadow(0 0 40px var(--primary-color));transform:scale(2.2)rotate(30deg)translateY(-40px)}}.traveler{--traveler-x:16%;--traveler-y:96%;--traveler-size:clamp(70px, 12svh, 132px);top:var(--traveler-y);left:var(--traveler-x);width:var(--traveler-size);pointer-events:none;will-change:top, left;position:absolute;transform:translate(-50%,-100%)}.traveler--state-jump,.traveler--state-fly,.traveler--state-fall{--traveler-size:clamp(86px, 15svh, 164px)}.traveler__sprite{transform-origin:50%;-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.traveler.is-running .traveler__sprite{animation:.78s ease-in-out infinite traveler-breathe}.traveler--state-jump .traveler__sprite,.traveler--state-fall .traveler__sprite{animation-duration:.52s}.traveler.is-running.traveler--state-sit .traveler__sprite{animation:none}.traveler--state-walk,.traveler--state-sit{--traveler-y:var(--ground-line-y)!important}.traveler-chat{opacity:0;pointer-events:none;width:max-content;margin-bottom:1rem;transition:opacity .3s;bottom:95%;left:-60%;transform:translate(-50%);--chat-max-width:17vw!important;position:absolute!important}.traveler-chat.is-active{opacity:1;pointer-events:auto}.traveler.is-running-right{animation:4s linear forwards traveler-run-right!important}@keyframes traveler-breathe{0%,to{translate:0}50%{translate:0 -3px}}@keyframes traveler-run-right{0%{left:var(--traveler-x);transform:translate(-50%,-100%)}to{left:150%;transform:translate(-50%,-100%)}}@media (width<=768px){.traveler-chat{left:50%;transform:translate(-50%);--chat-max-width:30vw!important;--chat-font-size:1.2rem!important}}.character-layer{pointer-events:none;z-index:5;position:absolute;inset:0;overflow:hidden}.character-layer__container{width:100%;height:0;position:absolute;bottom:100px;left:0}.character{--character-M-shadow:color-mix(in srgb, var(--primary-color) 75%, transparent);--character-F-shadow:color-mix(in srgb, var(--second-color) 75%, transparent);will-change:transform;opacity:0;filter:drop-shadow(0 8px 12px var(--character-shadow)) grayscale(.8) opacity(.7);align-items:center;gap:24px;transition:filter .8s ease-out,opacity .8s ease-out;animation:.78s ease-in-out infinite character-breathe;display:flex;position:absolute;top:0;left:0;transform:translate(100vw,-50%)}.character.is-interacting{filter:drop-shadow(0 8px 12px var(--character-shadow)) grayscale(0) opacity(1) drop-shadow(0 8px 16px #173b3a40);animation:none}.character.is-interacted{filter:drop-shadow(0 8px 12px var(--character-shadow)) grayscale(0) opacity(1) drop-shadow(0 8px 16px #173b3a40)}.character.is-spawning{opacity:.7;filter:drop-shadow(0 8px 12px var(--character-shadow)) grayscale(.8)}.character.is-spawning.is-interacting{opacity:1;filter:drop-shadow(0 8px 12px var(--character-shadow)) grayscale(0) drop-shadow(0 8px 16px #173b3a40);animation:none}.character.is-spawning.is-interacted{opacity:1;filter:drop-shadow(0 8px 12px var(--character-shadow)) grayscale(0) drop-shadow(0 8px 16px #173b3a40)}.character__sprite{-webkit-user-select:none;user-select:none;image-rendering:auto;display:block}.character-chat{opacity:0;pointer-events:none;flex-shrink:0;transition:opacity .3s,transform .3s,visibility .3s;position:absolute;top:-13vh;bottom:auto;left:-15px}.character-chat.is-active{opacity:1;pointer-events:auto}.character-layer.is-paused .character{animation-play-state:paused!important}@keyframes character-breathe{0%,to{translate:0}50%{translate:0 -3px}}@media (width<=768px){.character-chat{--chat-max-width:30vw!important;--chat-font-size:1.2rem!important}}.heart-vessel{--heart-vessel-size:clamp(86px, 12vw, 136px);--heart-vessel-fill-ratio:1;--heart-vessel-outline:#46106c;--heart-vessel-fill:#fa82ad;--heart-vessel-empty:color-mix(in srgb, var(--world-top) 74%, var(--second-color));--heart-vessel-shine:#ffdde9b8;--heart-vessel-bounce-distance:clamp(7px, 1.15vw, 12px);z-index:6;width:var(--heart-vessel-size);aspect-ratio:1;pointer-events:none;filter:drop-shadow(0 9px 12px #173b3a1a)drop-shadow(0 2px #ffffff70);position:absolute;top:clamp(10px,2.4svh,22px);left:clamp(12px,2.8vw,28px)}.heart-vessel:after{content:"";filter:blur(5px);opacity:0;transform-origin:50%;background:#173b3a21;border-radius:999px;height:8%;transition:opacity .52s cubic-bezier(.16,1,.3,1);position:absolute;bottom:11%;left:20%;right:20%;transform:scaleX(.92)}.heart-vessel__float{transform-origin:50% 68%;will-change:transform;width:100%;height:100%;transition:filter .52s cubic-bezier(.16,1,.3,1),transform .62s cubic-bezier(.16,1,.3,1);position:relative;transform:translateY(0)}.heart-vessel.is-floating:after{opacity:.72;animation:2.4s cubic-bezier(.34,1.56,.64,1) infinite heart-vessel-shadow-bounce}.heart-vessel.is-floating .heart-vessel__float{animation:2.4s cubic-bezier(.34,1.56,.64,1) infinite heart-vessel-float-bounce}.heart-vessel__shape{width:100%;height:100%;image-rendering:pixelated;shape-rendering:crispedges;display:block;overflow:visible}.heart-vessel__outline{fill:var(--heart-vessel-outline)}.heart-vessel__empty{fill:var(--heart-vessel-empty);opacity:.7}.heart-vessel__fill{fill:var(--heart-vessel-fill);transform:scaleY(var(--heart-vessel-fill-ratio));transform-box:fill-box;transform-origin:bottom;transition:transform .72s cubic-bezier(.16,1,.3,1)}.heart-vessel__spark{fill:var(--heart-vessel-shine);opacity:.72;mix-blend-mode:screen}.heart-vessel__fragment-count{max-width:78%;color:var(--heart-vessel-outline);font-family:var(--font-menu);letter-spacing:0;text-align:center;text-overflow:ellipsis;text-shadow:.045em 0 0 var(--heart-vessel-outline), 0 .045em 0 var(--heart-vessel-outline), 0 1px 0 #ffffff61;white-space:nowrap;font-size:clamp(2rem,4.7vw,3.75rem);font-weight:900;line-height:.9;transition:color .42s cubic-bezier(.16,1,.3,1),transform .52s cubic-bezier(.16,1,.3,1);position:absolute;top:47%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.heart-vessel[data-fragment-length="3"] .heart-vessel__fragment-count{font-size:clamp(1.55rem,3.6vw,2.9rem)}.heart-vessel[data-fragment-length="4"] .heart-vessel__fragment-count,.heart-vessel[data-fragment-length="5"] .heart-vessel__fragment-count{font-size:clamp(1.25rem,3vw,2.2rem)}@keyframes heart-vessel-float-bounce{0%{transform:translateY(0)rotate(-1deg)scale(1)}32%{transform:translateY(calc(var(--heart-vessel-bounce-distance) * -1)) rotate(1deg) scaleX(1.018) scaleY(.982)}56%{transform:translateY(2px)rotate(-.55deg)scaleX(.988)scaleY(1.012)}72%{transform:translateY(calc(var(--heart-vessel-bounce-distance) * -.32)) rotate(.35deg) scaleX(1.006) scaleY(.994)}to{transform:translateY(0)rotate(-1deg)scale(1)}}@keyframes heart-vessel-shadow-bounce{0%,to{opacity:.58;transform:scaleX(.94)}32%{opacity:.24;transform:scaleX(.7)}56%{opacity:.68;transform:scaleX(1.04)}72%{opacity:.38;transform:scaleX(.84)}}@media (width<=640px){.heart-vessel{--heart-vessel-size:clamp(72px, 18vw, 92px);top:9px;left:10px}}@media (prefers-reduced-motion:reduce){.heart-vessel__float,.heart-vessel__fill,.heart-vessel__fragment-count{transition-duration:1ms}}.lyric-membrane{--lyric-paper:color-mix(in srgb, var(--background-color) 76%, white);--lyric-paper-edge:color-mix(in srgb, var(--border-color) 62%, white);--lyric-needle:color-mix(in srgb, var(--primary-color) 42%, var(--world-line));--lyric-shadow:#173b3a1a;--lyric-glow:#60ccbb3d;isolation:isolate;text-align:center;place-items:center;width:100%;height:100%;display:grid;position:relative;overflow:hidden;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.lyric-membrane__body{--lyric-reception-x:16%;border-block:1px solid color-mix(in srgb, var(--lyric-paper-edge) 86%, transparent);background:linear-gradient(90deg, transparent 0, var(--lyric-paper) 9%, color-mix(in srgb, var(--lyric-paper) 80%, var(--sub-primary-color)) 50%, var(--lyric-paper) 91%, transparent 100%), repeating-linear-gradient(135deg, #fff3 0 2px, transparent 2px 14px);width:100%;height:100%;box-shadow:0 9px 24px -20px var(--lyric-shadow), inset 0 1px 0 #ffffffbd, inset 0 -1px 0 #ffffff7a;position:relative;overflow:hidden}.lyric-membrane__body:before,.lyric-membrane__body:after{z-index:1;content:"";pointer-events:none;height:14px;position:absolute;left:0;right:0}.lyric-membrane__body:before{background:linear-gradient(90deg, transparent 0, var(--lyric-needle) 12%, var(--lyric-needle) 88%, transparent 100%) center / 100% 1px no-repeat, repeating-linear-gradient(90deg, transparent 0 14px, color-mix(in srgb, var(--primary-color) 35%, transparent) 14px 17px, transparent 17px 28px);opacity:.78;top:7px}.lyric-membrane__body:after{background:linear-gradient(90deg, transparent 0, var(--lyric-paper-edge) 14%, var(--lyric-paper-edge) 86%, transparent 100%) center / 100% 1px no-repeat, repeating-linear-gradient(90deg, transparent 0 18px, #ffd7e499 18px 21px, transparent 21px 36px);opacity:.74;bottom:9px}.lyric-membrane__reception-line{top:18px;bottom:18px;left:var(--lyric-reception-x);z-index:4;pointer-events:none;width:22px;filter:drop-shadow(0 5px 12px #173b3a1f) drop-shadow(0 0 11px var(--lyric-glow));position:absolute;transform:translate(-50%)}.lyric-membrane__reception-line:before{background:linear-gradient(180deg, transparent, #ffffffd1 10%, transparent 20% 80%, #ffffffd1 90%, transparent), linear-gradient(180deg, var(--second-color), color-mix(in srgb, var(--primary-color) 68%, white), var(--second-color));width:3px;box-shadow:0 0 0 1px #ffffffc2, 0 0 14px var(--lyric-glow);content:"";border-radius:999px;position:absolute;top:13px;bottom:13px;left:50%;transform:translate(-50%)}.lyric-membrane__reception-line:after{background:radial-gradient(circle at 38% 34%, #fffffff0 0 18%, transparent 19%), color-mix(in srgb, var(--primary-color) 58%, var(--second-color));width:17px;height:17px;box-shadow:0 3px 10px #173b3a1f, 0 0 18px var(--lyric-glow);content:"";opacity:.92;border:2px solid #ffffffc7;border-radius:999px;animation:2.2s cubic-bezier(.16,1,.3,1) infinite lyric-reception-line-breathe;position:absolute;top:26%;left:50%;transform:translate(-50%,-50%)scale(1)}.lyric-membrane__phrase{z-index:2;width:100%;height:100%;min-height:1.25em;color:color-mix(in srgb, var(--world-ink) 90%, var(--primary-active-color));font-family:var(--font-lyric);letter-spacing:0;text-shadow:0 1px #ffffffb8,0 0 12px #ffffff80,0 9px 18px #173b3a14;white-space:nowrap;margin:0;font-size:clamp(1.35rem,4.6vw,2.65rem);line-height:1.12;display:block;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 8% 92%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 8% 92%,#0000 100%)}.lyric-membrane__phrase.is-placeholder{color:color-mix(in srgb, var(--world-muted) 74%, var(--primary-active-color));text-shadow:0 1px 0 #ffffffbd, 0 0 12px var(--lyric-glow);place-items:center;font-size:clamp(1.15rem,3.2vw,1.86rem);display:grid}.lyric-membrane__phrase.is-placeholder:before,.lyric-membrane__phrase.is-placeholder:after{background:linear-gradient(90deg, transparent, var(--lyric-needle), transparent);content:"";opacity:.58;width:min(17vw,160px);height:1px;position:absolute;top:50%}.lyric-membrane__phrase.is-placeholder:before{left:clamp(14px,9vw,120px)}.lyric-membrane__phrase.is-placeholder:after{right:clamp(14px,9vw,120px)}.lyric-membrane__line{backface-visibility:hidden;filter:blur(var(--lyric-line-blur,0));-webkit-font-smoothing:antialiased;text-rendering:geometricprecision;transform-origin:50%;white-space:nowrap;will-change:transform, opacity, filter;transition:opacity .46s cubic-bezier(.16,1,.3,1),filter .52s cubic-bezier(.16,1,.3,1);display:inline-block;position:absolute;top:28%;left:0;transform:translate(100vw,-50%)}.lyric-membrane__line--measure{visibility:hidden;opacity:0;pointer-events:none;top:0;transform:translate(0,0)}.lyric-membrane__word{--lyric-word-bg-width:calc(100% + .8em);isolation:isolate;color:color-mix(in srgb, var(--world-muted) 84%, var(--world-ink));opacity:.76;text-shadow:0 1px #ffffff9e,0 0 7px #ffffff4d;transform-origin:50% 72%;padding:.02em .12em .05em;transition:color .43s cubic-bezier(.16,1,.3,1),opacity .43s cubic-bezier(.16,1,.3,1),text-shadow .52s cubic-bezier(.16,1,.3,1),transform .52s cubic-bezier(.16,1,.3,1);display:inline-block;position:relative;transform:translateY(0)scale(1)}.lyric-membrane__word:before{box-sizing:border-box;z-index:0;width:var(--lyric-word-bg-width);border:1px solid color-mix(in srgb, var(--world-ink) 12%, transparent);background:linear-gradient(90deg, #ffffff2e, transparent 42%), color-mix(in srgb, var(--world-ink) 24%, var(--primary-color));content:"";opacity:.58;transform-origin:0;will-change:opacity, transform;border-radius:10px;height:1.16em;transition:border-color .52s cubic-bezier(.16,1,.3,1),box-shadow .52s cubic-bezier(.16,1,.3,1),opacity .72s cubic-bezier(.16,1,.3,1),transform .76s cubic-bezier(.16,1,.3,1);position:absolute;top:50%;left:0;transform:translateY(-50%)scaleY(.9);box-shadow:inset 0 1px #ffffff75}.lyric-membrane__word:after{box-sizing:border-box;z-index:1;width:var(--lyric-word-bg-width);border:1px solid color-mix(in srgb, var(--primary-active-color) 28%, white);background:radial-gradient(circle at 0 50%, #ffffffbd 0 9px, transparent 10px), linear-gradient(90deg, color-mix(in srgb, var(--primary-color) 40%, white), var(--second-color));content:"";opacity:0;filter:blur();transform-origin:0;will-change:opacity, transform, filter;border-radius:15px;height:1.16em;transition:border-color .62s cubic-bezier(.16,1,.3,1),box-shadow .68s cubic-bezier(.16,1,.3,1),opacity .76s cubic-bezier(.16,1,.3,1),transform .82s cubic-bezier(.16,1,.3,1);position:absolute;top:50%;left:0;transform:translateY(-50%)scaleX(.985)scaleY(.88);box-shadow:inset 0 1px #ffffffc7}.lyric-membrane__word-text{z-index:2;filter:blur();transform-origin:50% 70%;will-change:transform, filter;transition:filter .42s cubic-bezier(.16,1,.3,1),transform .52s cubic-bezier(.16,1,.3,1);display:inline-block;position:relative;transform:translateY(0)scale(1)}.lyric-membrane__word-text:before{content:"";opacity:0;transform-origin:50%;pointer-events:none;z-index:1;will-change:transform, opacity, filter;background:0 0;border-radius:999px;height:.12em;transition:transform .52s cubic-bezier(.16,1,.3,1),opacity .42s,filter .42s;position:absolute;bottom:-.18em;left:5%;right:5%;transform:scaleX(0)translateY(0)}.lyric-membrane__word.is-trace-resonant .lyric-membrane__word-text:before{background:linear-gradient(90deg, color-mix(in srgb, var(--second-color) 80%, transparent) 0%, color-mix(in srgb, var(--primary-color) 90%, var(--second-color)) 50%, color-mix(in srgb, var(--second-color) 80%, transparent) 100%);opacity:1;box-shadow:0 0 8px color-mix(in srgb, var(--primary-color) 60%, transparent), 0 0 16px color-mix(in srgb, var(--second-color) 40%, transparent);animation:2.4s cubic-bezier(.16,1,.3,1) infinite trace-resonant-pulse;transform:scaleX(1)translateY(0)}.lyric-membrane__word.is-trace-warm .lyric-membrane__word-text:before{background:linear-gradient(90deg, transparent 0%, color-mix(in srgb, var(--primary-color) 85%, transparent) 50%, transparent 100%);opacity:.85;box-shadow:0 0 6px color-mix(in srgb, var(--primary-color) 40%, transparent);transform:scaleX(.9)translateY(0)}.lyric-membrane__word.is-trace-faint .lyric-membrane__word-text:before{background:repeating-linear-gradient(90deg, color-mix(in srgb, var(--world-muted) 70%, transparent) 0, color-mix(in srgb, var(--world-muted) 70%, transparent) .25em, transparent .25em, transparent .45em);opacity:.6;animation:1.2s ease-out forwards trace-faint-fade;transform:scaleX(.8)translateY(0)}.lyric-membrane__word.is-trace-lost .lyric-membrane__word-text{animation:.8s cubic-bezier(.16,1,.3,1) forwards trace-text-deflate}.lyric-membrane__word.is-trace-lost .lyric-membrane__word-text:before{background:radial-gradient(circle, color-mix(in srgb, var(--world-muted) 80%, transparent) 35%, transparent 36%);opacity:.7;background-position:50%;background-repeat:repeat-x;background-size:.28em .28em;animation:.76s cubic-bezier(.16,1,.3,1) forwards trace-lost-scatter;transform:scaleX(.6)translateY(0)}.lyric-membrane__word+.lyric-membrane__word{margin-left:var(--lyric-word-gap,.76em)}.lyric-membrane__word.is-approaching:before{border-color:color-mix(in srgb, var(--world-ink) 16%, transparent);opacity:.64}.lyric-membrane__word.is-receiving:before{border-color:color-mix(in srgb, var(--world-ink) 8%, transparent);opacity:.18;animation:.76s cubic-bezier(.16,1,.3,1) lyric-word-touch-shadow;transform:translateY(-50%)scaleY(.96);box-shadow:inset 0 1px #ffffff4d}.lyric-membrane__word.is-receiving:after{opacity:.88;animation:.82s cubic-bezier(.16,1,.3,1) lyric-word-touch-capsule;transform:translateY(-50%)scaleX(1)scaleY(1)}.lyric-membrane__word.is-receiving .lyric-membrane__word-text{animation:.68s cubic-bezier(.16,1,.3,1) lyric-word-touch-text}.lyric-membrane__word.is-received:before{border-color:color-mix(in srgb, var(--world-ink) 5%, transparent);opacity:.1;transform:translateY(-50%)scaleY(.84);box-shadow:inset 0 1px #ffffff47}.lyric-membrane__word.is-received:after{border-color:color-mix(in srgb, var(--primary-color) 16%, transparent);opacity:.38;transform:translateY(-50%)scaleX(1)scaleY(.84);box-shadow:inset 0 1px #ffffffb8}.lyric-membrane__word.is-active{color:color-mix(in srgb, var(--primary-active-color) 78%, var(--world-ink));opacity:1;text-shadow:0 1px 0 #ffffffc7, 0 0 11px var(--lyric-glow), 0 0 24px #ffd7e457;transform:translateY(-.04em)}.lyric-membrane__word.is-active .lyric-membrane__word-text:after{z-index:-1;background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--primary-color) 72%, var(--second-color)), transparent);content:"";opacity:.62;transform-origin:50%;border-radius:999px;height:.18em;animation:.54s cubic-bezier(.16,1,.3,1) lyric-word-received;position:absolute;bottom:-.1em;left:.06em;right:.06em;transform:scaleX(1)}.lyric-membrane__line--flow .lyric-membrane__word{color:color-mix(in srgb, var(--world-muted) 76%, var(--primary-active-color));opacity:.72;text-shadow:0 1px #ffffffb8,0 0 8px #ffffff57}.lyric-membrane__line--flow .lyric-membrane__word:before,.lyric-membrane__line--flow .lyric-membrane__word:after{box-shadow:none;opacity:0;background:0 0;border-color:#0000;animation:none}.lyric-membrane__line--flow .lyric-membrane__word.is-active{color:color-mix(in srgb, var(--primary-active-color) 82%, var(--world-ink));opacity:1;text-shadow:0 1px 0 #ffffffc7, 0 0 12px var(--lyric-glow), 0 0 24px #ffd7e452;transform:translateY(-.035em)scale(1.026)}.lyric-membrane__line--flow .lyric-membrane__word.is-receiving .lyric-membrane__word-text{animation:.78s cubic-bezier(.16,1,.3,1) lyric-word-flow-touch-text}.lyric-membrane__line--flow .lyric-membrane__word.is-active .lyric-membrane__word-text:after{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--primary-color) 56%, var(--second-color)), transparent);opacity:.52;height:.12em;animation:.76s cubic-bezier(.16,1,.3,1) lyric-word-flow-touch-line;bottom:-.16em;left:-.05em;right:-.05em}.lyric-membrane__status{z-index:3;border:1px solid color-mix(in srgb, var(--primary-color) 34%, var(--lyric-paper-edge));background:linear-gradient(180deg, #ffffffd1, #fff3 46%, transparent 47%), repeating-linear-gradient(90deg, transparent 0 11px, color-mix(in srgb, var(--primary-color) 24%, transparent) 11px 12px, transparent 12px 22px), color-mix(in srgb, var(--lyric-paper) 96%, white);width:fit-content;min-width:8ch;max-width:min(56vw,320px);min-height:26px;color:color-mix(in srgb, var(--heading-color) 78%, var(--primary-active-color));font-family:var(--font-general);letter-spacing:0;opacity:.94;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px #ffffffd1,0 0 10px #ffffff5c;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:8px 10px 9px 8px;justify-content:center;align-items:center;margin:15px auto 0;padding:5px 18px 6px;font-size:clamp(.78rem,1.45vw,.95rem);line-height:1.12;transition:border-color .52s cubic-bezier(.16,1,.3,1),box-shadow .56s cubic-bezier(.16,1,.3,1),color .42s cubic-bezier(.16,1,.3,1),opacity .42s cubic-bezier(.16,1,.3,1),transform .62s cubic-bezier(.16,1,.3,1);animation:3.6s cubic-bezier(.16,1,.3,1) infinite lyric-status-soft-float;display:inline-flex;position:absolute;top:0;left:0;right:0;overflow:hidden;transform:translateY(0)rotate(-.25deg);box-shadow:0 9px 18px -14px #173b3a7a,inset 0 1px #ffffffc2,inset 0 -1px #4fa99b1a}.lyric-membrane__status.is-status-updating{animation:.42s cubic-bezier(.16,1,.3,1) lyric-status-pop}.lyric-membrane__status:before,.lyric-membrane__status:after{content:"";pointer-events:none;position:absolute}.lyric-membrane__status:before{background:repeating-linear-gradient(180deg, color-mix(in srgb, var(--primary-color) 52%, white) 0 2px, transparent 2px 5px), color-mix(in srgb, var(--second-color) 52%, transparent);opacity:.58;border-radius:999px;width:5px;top:4px;bottom:4px;left:6px}.lyric-membrane__status:after{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--primary-color) 48%, var(--second-color)), transparent);opacity:.5;border-radius:999px;height:1px;bottom:4px;left:18px;right:13px}.lyric-membrane__media{max-width:min(360px,46vw);max-height:42px;color:color-mix(in srgb, var(--world-muted) 78%, var(--primary-active-color));font-family:var(--font-general);text-align:right;opacity:.64;font-size:.72rem;line-height:1.2;position:absolute;bottom:8px;right:12px;overflow:hidden}@keyframes lyric-reception-line-breathe{0%,to{opacity:.86;transform:translate(-50%,-50%)scale(.96)}50%{opacity:1;transform:translate(-50%,-50%)scale(1.06)}}@keyframes lyric-word-received{0%{opacity:0;transform:scaleX(.24)}to{opacity:.62;transform:scaleX(1)}}@keyframes lyric-word-touch-shadow{0%{opacity:.62;transform:translateY(-50%)scaleY(.88)}45%{opacity:.24;transform:translateY(-50%)scaleY(1.04)}to{opacity:.18;transform:translateY(-50%)scaleY(.96)}}@keyframes lyric-word-touch-capsule{0%{filter:blur();opacity:.18;transform:translateY(-50%)scaleX(.94)scaleY(.78)}48%{filter:blur();opacity:.96;transform:translateY(-50%)scaleX(1)scaleY(1.06)}to{filter:blur();opacity:.88;transform:translateY(-50%)scaleX(1)scaleY(1)}}@keyframes lyric-word-touch-text{0%{filter:blur(.35px);transform:translateY(.06em)scale(.985)}46%{filter:blur();transform:translateY(-.055em)scale(1.035)}to{filter:blur();transform:translateY(0)scale(1)}}@keyframes lyric-word-flow-touch-text{0%{filter:blur(.45px);opacity:.76;text-shadow:0 1px #ffffffb3,0 0 #fff0;transform:translateY(.07em)scale(.982)}46%{filter:blur();opacity:1;text-shadow:0 1px 0 #ffffffd1, 0 0 14px var(--lyric-glow), 0 0 26px #ffd7e45c;transform:translateY(-.06em)scale(1.04)}to{filter:blur();opacity:1;text-shadow:0 1px 0 #ffffffc7, 0 0 12px var(--lyric-glow), 0 0 24px #ffd7e452;transform:translateY(0)scale(1)}}@keyframes lyric-word-flow-touch-line{0%{opacity:0;transform:scaleX(.18)}52%{opacity:.68;transform:scaleX(1.08)}to{opacity:.52;transform:scaleX(1)}}@keyframes lyric-status-soft-float{0%,to{opacity:.88;transform:translateY(0)rotate(-.25deg)}50%{opacity:.96;transform:translateY(-1px)rotate(.15deg)}}@keyframes trace-resonant-pulse{0%,to{filter:brightness()blur();box-shadow:0 0 8px color-mix(in srgb, var(--primary-color) 60%, transparent), 0 0 16px color-mix(in srgb, var(--second-color) 40%, transparent)}50%{filter:brightness(1.15)blur(.5px);box-shadow:0 0 12px color-mix(in srgb, var(--primary-color) 80%, transparent), 0 0 24px color-mix(in srgb, var(--second-color) 60%, transparent)}}@keyframes trace-faint-fade{0%{opacity:.6;filter:blur()}to{opacity:.2;filter:blur(1px)}}@keyframes trace-text-deflate{0%{opacity:1;filter:blur();transform:translateY(0)scale(1)}to{opacity:.5;filter:blur(.8px);transform:translateY(.08em)scale(.94)}}@keyframes trace-lost-scatter{0%{opacity:.7;filter:blur();background-size:.28em .28em;transform:scaleX(.6)translateY(0)}to{opacity:0;filter:blur(1.5px);background-size:.12em .12em;transform:scaleX(1.1)translateY(.35em)}}@keyframes lyric-status-pop{0%{filter:brightness();transform:translateY(0)rotate(-.25deg)scale(.96)}40%{filter:brightness(1.1);transform:translateY(-2px)rotate(.5deg)scale(1.04)}to{filter:brightness();transform:translateY(0)rotate(-.25deg)scale(1)}}@media (width<=640px){.lyric-membrane__phrase{font-size:clamp(1.18rem,6.8vw,1.86rem);-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 5% 95%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 5% 95%,#0000 100%)}.lyric-membrane__phrase.is-placeholder:before,.lyric-membrane__phrase.is-placeholder:after{width:18vw}.lyric-membrane__line{top:30%}.lyric-membrane__status{max-width:72vw;margin-bottom:11px;padding-inline:13px}}@media (prefers-reduced-motion:reduce){.lyric-membrane__line,.lyric-membrane__word,.lyric-membrane__word:before,.lyric-membrane__word:after,.lyric-membrane__word.is-receiving .lyric-membrane__word-text,.lyric-membrane__line--flow .lyric-membrane__word.is-receiving .lyric-membrane__word-text,.lyric-membrane__line--flow .lyric-membrane__word.is-active .lyric-membrane__word-text:after,.lyric-membrane__word.is-active .lyric-membrane__word-text:after,.lyric-membrane__reception-line:after,.lyric-membrane__status{transition-duration:1ms;animation:none}}.spacebar-control{--spacebar-pull-distance:clamp(5px, .8svh, 9px);--spacebar-text-color:var(--heading-color);--spacebar-border-color:var(--heading-color);--spacebar-shadow-color:var(--heading-color);--spacebar-highlight-color:#fff;border:2px solid var(--spacebar-border-color);background:color-mix(in srgb, var(--primary-color) 30%, transparent);width:min(360px,34vw);height:clamp(48px,7svh,62px);box-shadow:0 8px 0 var(--spacebar-shadow-color);color:var(--spacebar-text-color);cursor:pointer;font-family:var(--font-general);isolation:isolate;letter-spacing:0;text-align:center;transform-origin:50% 100%;will-change:transform;border-radius:8px;justify-self:end;padding:0 18px;font-size:clamp(1rem,2.2vw,1.35rem);line-height:1;transition:background-color .16s,box-shadow .19s,filter 1.5s ease-out,transform .19s cubic-bezier(.2,.9,.24,1);position:relative;overflow:hidden;transform:translateY(0)scale(1)}.spacebar-control:before{z-index:-1;background:var(--spacebar-highlight-color);content:"";opacity:.7;transform-origin:50%;border-radius:999px;height:24%;transition:opacity .17s,transform .19s cubic-bezier(.2,.9,.24,1);position:absolute;inset:7px 18px auto;transform:translateY(0)scaleX(1)}.spacebar-control:hover{background:color-mix(in srgb, var(--primary-color) 70%, transparent)}.spacebar-control:hover:before{opacity:.92}.spacebar-control:focus-visible{filter:drop-shadow(0 0 0 var(--primary-color)) drop-shadow(0 0 8px var(--dpad-focus-glow-color,#60ccbb99));outline:none}.spacebar-control:active,.spacebar-control.is-pressed{background:color-mix(in srgb, transparent 0%, var(--primary-color));box-shadow:0 3px 0 var(--spacebar-shadow-color);transform:translateY(var(--spacebar-pull-distance)) scaleX(1.012) scaleY(.97)}.spacebar-control:active:before,.spacebar-control.is-pressed:before{opacity:.94;transform:translateY(3px)scaleX(.92)}@media (width<=640px){.spacebar-control{width:clamp(88px,24vw,112px);min-width:0}}.dpad{--button-size:clamp(78px, 16vw, 126px);--dpad-button-color:color-mix(in srgb, var(--primary-color) 82%, var(--sub-primary-color));--dpad-button-hover-color:color-mix(in srgb, var(--primary-color) 92%, var(--sub-primary-color));--dpad-button-active-color:var(--primary-color);--dpad-icon-color:var(--heading-color);--dpad-focus-color:var(--primary-color);--dpad-focus-glow-color:color-mix(in srgb, var(--primary-color) 60%, transparent);--dpad-shadow-color:var(--heading-color);--dpad-shadow-depth:8px;--dpad-shadow-pressed-depth:3px;--dpad-pull-distance:clamp(4px, .8svh, 7px);width:calc(var(--button-size) * 2.38);height:calc(var(--button-size) * 2.38);flex:none;position:relative}.dpad-button{--button-transform:translate(0, 0);--icon-offset:clamp(8px, 1vw, 12px);--icon-size:59%;--icon-x:0;--icon-y:0;--press-x:0;--press-y:var(--dpad-pull-distance);--press-scale-x:1.035;--press-scale-y:.95;--shadow-x:0;--shadow-y:var(--dpad-shadow-depth);--shadow-pressed-x:0;--shadow-pressed-y:var(--dpad-shadow-pressed-depth);width:var(--button-size);height:var(--button-size);color:var(--dpad-icon-color);cursor:var(--cursor-pointer,pointer);isolation:isolate;transform:var(--button-transform) translate(0, 0) scale(1);transform-origin:50% 100%;-webkit-tap-highlight-color:transparent;will-change:transform;background:0 0;border:0;outline:none;place-items:center;padding:0;transition:filter .16s,transform .19s cubic-bezier(.2,.9,.24,1);display:grid;position:absolute}.dpad-button--up{--button-transform:translateX(-50%);--icon-y:calc(var(--icon-offset) * -1);--press-y:calc(var(--dpad-pull-distance) * -1);transform-origin:50% 100%;top:0;left:50%}.dpad-button--right{--button-transform:translateY(-50%);--icon-x:var(--icon-offset);--press-x:var(--dpad-pull-distance);--press-y:0;--press-scale-x:.95;--press-scale-y:1.035;--shadow-x:var(--dpad-shadow-depth);--shadow-y:0;--shadow-pressed-x:var(--dpad-shadow-pressed-depth);--shadow-pressed-y:0;transform-origin:0;top:50%;right:0}.dpad-button--down{--button-transform:translateX(-50%);--icon-y:var(--icon-offset);--shadow-y:calc(var(--dpad-shadow-depth) * -1);--shadow-pressed-y:calc(var(--dpad-shadow-pressed-depth) * -1);transform-origin:50% 0;bottom:0;left:50%}.dpad-button--left{--button-transform:translateY(-50%);--icon-x:calc(var(--icon-offset) * -1);--press-x:calc(var(--dpad-pull-distance) * -1);--press-y:0;--press-scale-x:.95;--press-scale-y:1.035;--shadow-x:calc(var(--dpad-shadow-depth) * -1);--shadow-y:0;--shadow-pressed-x:calc(var(--dpad-shadow-pressed-depth) * -1);--shadow-pressed-y:0;transform-origin:100%;top:50%;left:0}.dpad-button:hover{filter:saturate(1.04)}.dpad-button:active,.dpad-button.is-pressed{filter:saturate(1.08);transform:var(--button-transform) translate(var(--press-x), var(--press-y)) scale(var(--press-scale-x), var(--press-scale-y))}.dpad-button__shape-svg,.dpad-button__icon{pointer-events:none;position:absolute}.dpad-button__shape-svg{z-index:0;transition:transform .19s cubic-bezier(.2,.9,.24,1);inset:0;overflow:visible}.dpad-button--right .dpad-button__shape-svg{transform:rotate(90deg)}.dpad-button--down .dpad-button__shape-svg{transform:rotate(180deg)}.dpad-button--left .dpad-button__shape-svg{transform:rotate(-90deg)}.dpad-button__shadow,.dpad-button__shape{transform-origin:50%;transform-box:fill-box}.dpad-button__shadow{fill:var(--dpad-shadow-color);transform:translate(var(--shadow-x), var(--shadow-y));transition:transform .19s cubic-bezier(.2,.9,.24,1)}.dpad-button__shape{fill:var(--dpad-button-color)}.dpad-button:active .dpad-button__shadow,.dpad-button.is-pressed .dpad-button__shadow{transform:translate(var(--shadow-pressed-x), var(--shadow-pressed-y))}.dpad-button:hover .dpad-button__shape{fill:var(--dpad-button-hover-color)}.dpad-button:active .dpad-button__shape,.dpad-button.is-pressed .dpad-button__shape{fill:var(--dpad-button-active-color)}.dpad-button:focus-visible .dpad-button__shape{filter:drop-shadow(0 0 0 var(--dpad-focus-color)) drop-shadow(0 0 8px var(--dpad-focus-glow-color))}.dpad-button__icon{z-index:2;width:var(--icon-size);height:var(--icon-size);color:currentColor;transform:translate(-50%, -50%) translate(var(--icon-x), var(--icon-y)) scale(1);transform-origin:50%;will-change:transform;transition:transform .19s cubic-bezier(.2,.9,.24,1);top:50%;left:50%}.dpad-button:hover .dpad-button__icon{transform:translate(-50%, -50%) translate(var(--icon-x), var(--icon-y)) scale(1.05)}.dpad-button:active .dpad-button__icon,.dpad-button.is-pressed .dpad-button__icon{transform:translate(-50%, -50%) translate(var(--icon-x), var(--icon-y)) scale(.9)}.dpad-button__icon polyline{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:11.2px}.chat{--chat-panel-width:clamp(20rem, 65vw, 29rem);--chat-panel-height:clamp(13rem, 32vw, 18rem);--chat-panel-padding:clamp(2.65rem, 7.4vw, 4.4rem);--chat-left-bg:var(--primary-color);--chat-right-bg:var(--sub-primary-color);--chat-left-ink:var(--sub-primary-color);--chat-right-ink:var(--primary-color);--chat-compact-width:clamp(5.8rem, 18vw, 7.2rem);--chat-max-width:clamp(14rem, 62vw, 26rem);--chat-bubble-height:clamp(4.05rem, 11vw, 5.35rem);--chat-inline-padding:clamp(1.9rem, 5.6vw, 2.65rem);--chat-block-padding:clamp(.62rem, 1.8vw, .95rem);--chat-compact-inline-padding:clamp(1.18rem, 3.8vw, 1.65rem);--chat-compact-block-padding:clamp(.48rem, 1.35vw, .72rem);--chat-active-inline-padding:var(--chat-compact-inline-padding);--chat-active-block-padding:var(--chat-compact-block-padding);--chat-font-size:clamp(1.2rem, 6.4vw, 1.55rem);--chat-expand-ease:cubic-bezier(.23, 1, .32, 1);--chat-char-ease:cubic-bezier(.2, 1.55, .36, 1);--chat-line-wrap-ease:cubic-bezier(.2, .84, .22, 1);--chat-char-shift:-.72em;--chat-cap-size:var(--chat-bubble-height);--chat-end-radius:calc(var(--chat-bubble-height) * .48);--chat-shoulder-radius:clamp(1.45rem, 4.8vw, 2.35rem);--chat-tail-radius:0;--chat-entry-duration:.28s;--chat-expand-duration:.22s;--chat-cap-bounce-duration:.23s;--chat-text-stagger:5ms;--chat-text-opacity-duration:60ms;--chat-text-transform-duration:60ms;--chat-line-wrap-duration:80ms;isolation:isolate;display:flex;position:relative;overflow:hidden}.chat.is-text-visible{--chat-active-inline-padding:var(--chat-inline-padding);--chat-active-block-padding:var(--chat-block-padding)}.chat--left{--chat-char-shift:-.48em;--chat-char-ease:cubic-bezier(.16, 1, .3, 1);justify-content:flex-start;align-items:flex-start}.chat--right{--chat-char-shift:.72em;justify-content:flex-start;align-items:flex-start}.chat__bubble{--chat-bubble-bg:var(--chat-left-bg);--chat-bubble-ink:var(--chat-left-ink);z-index:1;width:var(--chat-bubble-width,var(--chat-compact-width));max-width:var(--chat-max-width);min-height:var(--chat-bubble-height);padding:var(--chat-active-block-padding) var(--chat-active-inline-padding);background:var(--chat-bubble-bg);color:var(--chat-bubble-ink);font-family:var(--font-dialog-jp), var(--font-general);font-size:var(--chat-font-size);letter-spacing:0;transition:width var(--chat-expand-duration) var(--chat-expand-ease), height var(--chat-line-wrap-duration) var(--chat-line-wrap-ease), padding-top var(--chat-expand-duration) var(--chat-expand-ease), padding-right var(--chat-expand-duration) var(--chat-expand-ease), padding-bottom var(--chat-expand-duration) var(--chat-expand-ease), padding-left var(--chat-expand-duration) var(--chat-expand-ease);transform-origin:0;will-change:width, height, padding-top, padding-right, padding-bottom, padding-left, transform;transition:filter 1.5s ease-out, width var(--chat-expand-duration) var(--chat-expand-ease), height var(--chat-line-wrap-duration) var(--chat-line-wrap-ease);align-items:flex-start;font-weight:900;line-height:.9;display:flex;position:relative;overflow:hidden;transform:translateZ(0);max-height:calc(var(--field-height) - 200px)!important;pointer-events:auto!important;flex-direction:column!important}.chat--left .chat__bubble{border-radius:var(--chat-end-radius) var(--chat-shoulder-radius) var(--chat-tail-radius) var(--chat-end-radius)}.chat--right .chat__bubble{--chat-bubble-bg:var(--chat-right-bg);--chat-bubble-ink:var(--chat-right-ink);border-radius:var(--chat-shoulder-radius) var(--chat-end-radius) var(--chat-end-radius) var(--chat-tail-radius);transform-origin:100% 0}.chat__content{z-index:2;width:calc(var(--chat-bubble-width,var(--chat-compact-width)) - var(--chat-active-inline-padding) - var(--chat-active-inline-padding));max-width:calc(var(--chat-max-width) - var(--chat-active-inline-padding) - var(--chat-active-inline-padding));min-width:0;transition:width var(--chat-expand-duration) var(--chat-expand-ease), max-width var(--chat-expand-duration) var(--chat-expand-ease);will-change:width, max-width;white-space:normal;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--chat-left-bg) transparent;flex:auto;min-height:0;display:block;position:relative;overflow:hidden auto}.chat:not(.is-text-visible) .chat__content{visibility:hidden;position:absolute}.chat.is-collapsing .chat__content{visibility:visible;pointer-events:none}.chat__content::-webkit-scrollbar{width:6px}.chat__content::-webkit-scrollbar-track{background:0 0}.chat__content::-webkit-scrollbar-thumb{background-color:var(--primary-color);border-radius:10px}.chat--left .chat__content{scrollbar-color:var(--chat-right-bg) transparent}.chat--left .chat__content::-webkit-scrollbar-thumb{background-color:var(--chat-right-bg)}.chat__text{overflow-wrap:anywhere;white-space:normal;width:100%;line-height:1.05;display:block}.chat__word{vertical-align:top;white-space:normal;max-width:100%;display:inline-block}.chat__char{--chat-char-enter-scale:.96;--chat-char-enter-shift:var(--chat-char-shift);opacity:0;backface-visibility:hidden;transform:translate3d(0, var(--chat-char-enter-shift), 0) scale(var(--chat-char-enter-scale));vertical-align:top;white-space:pre;transition:opacity var(--chat-text-opacity-duration) ease-out, transform var(--chat-text-transform-duration) var(--chat-char-ease);will-change:opacity, transform;display:inline-block}.chat__char.chat__char--line-start{--chat-char-enter-scale:.94;transition:opacity var(--chat-text-opacity-duration) ease-out, transform var(--chat-line-wrap-duration) var(--chat-line-wrap-ease)}.chat--left .chat__char.chat__char--line-start{--chat-char-enter-shift:-.38em}.chat--right .chat__char.chat__char--line-start{--chat-char-enter-shift:.46em}.chat__char.is-visible{opacity:1;transform:translate(0,0)scale(1)}.chat__cap{z-index:1;width:var(--chat-cap-size);background:var(--chat-bubble-bg);border-radius:var(--chat-end-radius);pointer-events:none;position:absolute;top:0;bottom:0}.chat--left .chat__cap{transform-origin:0;right:0}.chat--right .chat__cap{transform-origin:100%;left:0}.chat.is-entering .chat__bubble{animation:chat-entry-bounce var(--chat-entry-duration) cubic-bezier(.2, 1.45, .38, 1)}.chat--left.is-cap-bouncing .chat__cap{animation:chat-cap-bounce-left var(--chat-cap-bounce-duration) cubic-bezier(.2, 1.55, .36, 1)}.chat--right.is-cap-bouncing .chat__cap{animation:chat-cap-bounce-right var(--chat-cap-bounce-duration) cubic-bezier(.2, 1.55, .36, 1)}.chat.is-line-wrapping .chat__bubble{animation:chat-line-wrap-breath var(--chat-line-wrap-duration) var(--chat-line-wrap-ease)}.chat--left.is-line-wrapping .chat__bubble{transform-origin:0 0}.chat--right.is-line-wrapping .chat__bubble{transform-origin:100% 0}.chat__measure{visibility:hidden;font-family:var(--font-dialog-jp), var(--font-general);font-size:var(--chat-font-size);letter-spacing:0;white-space:pre;pointer-events:none;font-weight:900;line-height:.9;display:inline-block;position:absolute;top:-999px;left:-999px}.chat.is-motionless .chat__bubble,.chat.is-motionless .chat__content,.chat.is-motionless .chat__char,.chat.is-motionless .chat__cap{transition-duration:0s;transition-delay:0s;animation:none}.chat.is-paused .chat__bubble,.chat.is-paused .chat__char,.chat.is-paused .chat__cap{animation-play-state:paused!important}:root[data-language=en] .chat__bubble{font-family:var(--font-general)}@keyframes chat-entry-bounce{0%,to{transform:translateZ(0)scale(1)}32%{transform:translateZ(0)scale(.94,1.07)}62%{transform:translateZ(0)scale(1.035,.985)}82%{transform:translateZ(0)scale(.992,1.01)}}@keyframes chat-cap-bounce-left{0%,to{transform:translate(0)scaleX(1)}34%{transform:translate(.28rem)scaleX(1.14)}62%{transform:translate(-.14rem)scaleX(.96)}82%{transform:translate(.07rem)scaleX(1.035)}}@keyframes chat-cap-bounce-right{0%,to{transform:translate(0)scaleX(1)}34%{transform:translate(-.28rem)scaleX(1.14)}62%{transform:translate(.14rem)scaleX(.96)}82%{transform:translate(-.07rem)scaleX(1.035)}}@keyframes chat-line-wrap-breath{0%,to{transform:translateZ(0)scaleY(1)}44%{transform:translateZ(0)scaleY(1.008)}72%{transform:translateZ(0)scaleY(.998)}}@media (prefers-reduced-motion:reduce){.chat{--chat-expand-duration:.16s;--chat-line-wrap-duration:1ms;--chat-expand-ease:ease-out;--chat-line-wrap-ease:ease-out;--chat-char-ease:ease-out}.chat__bubble,.chat__char,.chat__cap{will-change:auto}}.language-switch-button{--language-switch-width:12.5rem;--language-switch-height:7.25rem;--language-switch-radius:2rem;--language-switch-border-width:.5rem;--language-switch-border:var(--border-color);--language-switch-fill:var(--primary-color);--language-switch-surface:var(--background-color);--language-switch-ink:var(--heading-color);--language-switch-active-ink:var(--sub-primary-color);--language-switch-duration:.76s;--language-switch-ease:cubic-bezier(.22, 1, .36, 1);--language-switch-inner-radius:calc(var(--language-switch-radius) - var(--language-switch-border-width));isolation:isolate;width:var(--language-switch-width);height:var(--language-switch-height);border-radius:var(--language-switch-radius);background:var(--language-switch-border);color:var(--language-switch-ink);cursor:var(--cursor-pointer);-webkit-tap-highlight-color:transparent;border:0;outline:none;padding:0 50px;line-height:1;transition:filter .16s,transform .16s;display:inline-block;position:relative;overflow:hidden}.language-switch-button:before{z-index:0;inset:var(--language-switch-border-width);border-radius:var(--language-switch-inner-radius);background:var(--language-switch-surface);content:"";pointer-events:none;position:absolute}.language-switch-button:hover{filter:brightness(.98)}.language-switch-button:active{transform:translateY(1px)scale(.992)}.language-switch-button:focus-visible{outline:4px solid var(--primary-color);outline-offset:6px;filter:drop-shadow(0 0 0 var(--primary-color)) drop-shadow(0 0 8px color-mix(in srgb, var(--primary-color) 60%, transparent))}.language-switch-button__glyph-layer{position:absolute;inset:0}.language-switch-button__fill{z-index:1;inset:var(--language-switch-border-width);border-radius:var(--language-switch-inner-radius);background:var(--language-switch-fill);transform-origin:0;transition:transform var(--language-switch-duration) var(--language-switch-ease);backface-visibility:hidden;will-change:transform;position:absolute;transform:translateZ(0)scaleX(0)}.language-switch-button__glyph-layer{z-index:2;color:var(--language-switch-ink);pointer-events:none}.language-switch-button__glyph-layer--base{clip-path:none}.language-switch-button__glyph-layer--active{clip-path:inset(0 100% 0 0);color:var(--language-switch-active-ink);transition:clip-path var(--language-switch-duration) var(--language-switch-ease);will-change:clip-path}.language-switch-button[data-language=en] .language-switch-button__fill{transform:translateZ(0)scaleX(1)}.language-switch-button[data-language=en] .language-switch-button__glyph-layer--active{clip-path:inset(0)}.language-switch-button__glyph{font-family:"Zen Kurenaido", "Hiragino Maru Gothic ProN", "Yu Gothic", var(--font-general);letter-spacing:0;transform:translate(-50%, -50%) var(--language-switch-glyph-offset) scale(var(--language-switch-glyph-scale));transform-origin:50%;transition:transform var(--language-switch-duration) var(--language-switch-ease);will-change:transform;font-size:3rem;font-weight:900;line-height:.82;display:inline-block;position:absolute;top:50%;left:50%}.language-switch-button__glyph--latin{--language-switch-glyph-offset:translate(-1.1rem, .38rem);--language-switch-glyph-scale:.7}.language-switch-button__glyph--kana{--language-switch-glyph-offset:translate(1.05rem, -.14rem);--language-switch-glyph-scale:1.22}.language-switch-button[data-language=en] .language-switch-button__glyph--latin{--language-switch-glyph-offset:translate(-1.1rem, -.25rem);--language-switch-glyph-scale:1.42}.language-switch-button[data-language=en] .language-switch-button__glyph--kana{--language-switch-glyph-offset:translate(1.2rem, .38rem);--language-switch-glyph-scale:.76}.language-switch-button[data-language=en]{background:var(--language-switch-border)}.language-switch-button[data-language=en] .language-switch-button__fill{background:color-mix(in srgb, var(--primary-color) 80%, var(--world-line))}.language-switch-button.is-toggling{animation:.45s cubic-bezier(.22,1,.36,1) lang-switch-pop}@keyframes lang-switch-pop{0%{transform:scale(1)translateY(0)}30%{transform:scale(.95)translateY(2px)}60%{transform:scale(1.03)translateY(-2px)}to{transform:scale(1)translateY(0)}}@media (prefers-reduced-motion:reduce){.language-switch-button{--language-switch-duration:.18s;--language-switch-ease:ease-out}.language-switch-button__fill,.language-switch-button__glyph-layer,.language-switch-button__glyph{will-change:auto}}.loading-element{--loading-panel-color:var(--sub-primary-color);--loading-split-duration:.75s;z-index:10000;width:100vw;height:100svh;color:var(--heading-color);pointer-events:auto;text-align:center;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.loading-panel{z-index:0;background:var(--loading-panel-color);width:50vw;transition:transform var(--loading-split-duration) cubic-bezier(.22, 1, .36, 1);will-change:transform;position:absolute;top:0;bottom:0}.loading-panel--left{left:0;transform:translate(-100%)}.loading-panel--right{right:0;transform:translate(100%)}.loading-element.is-mounted .loading-panel{transform:translate(0)}.loading-element.is-leaving .loading-panel--left{transform:translate(-100%)}.loading-element.is-leaving .loading-panel--right{transform:translate(100%)}.loading-content{z-index:1;color:var(--heading-color);font-family:var(--font-dialog-jp), ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;letter-spacing:.02em;justify-content:center;align-items:center;font-size:clamp(3.25rem,12vw,6.25rem);font-weight:900;line-height:.9;display:inline-flex;position:relative}.loading-word-group{transition:transform var(--loading-split-duration) cubic-bezier(.22, 1, .36, 1);will-change:transform;flex:none;align-items:center;display:inline-flex}.loading-word-group--left{transform:translate(-112vw)}.loading-word-group--right{transform:translate(112vw)}.loading-element.is-mounted .loading-word-group{transform:translate(0)}.loading-element.is-leaving .loading-word-group--left{transform:translate(-112vw)}.loading-element.is-leaving .loading-word-group--right{transform:translate(112vw)}.loading-word__letter{color:var(--heading-color);flex:none;line-height:.9;display:inline-block}.loading-word__o{border:.12em solid var(--heading-color);will-change:width;border-radius:999px;flex:none;width:.76em;height:.58em;margin:0 .07em 0 .09em;animation:1.5s cubic-bezier(.65,0,.35,1) infinite paused loading-o-stretch;display:inline-flex}.loading-element.is-ready .loading-word__o{animation-play-state:running}.loading-element.is-leaving .loading-word__o{width:.76em;animation:none}.loading-panel,.loading-word__o{filter:saturate(var(--world-saturation));transition:filter 1.5s ease-out, transform var(--loading-split-duration) cubic-bezier(.22, 1, .36, 1)}@keyframes loading-o-stretch{0%,16%,to{width:.66em}42%,70%{width:2.7em}80%{width:.3em}}.main-menu{z-index:10000;background-color:var(--primary-color);isolation:isolate;filter:saturate(var(--world-main-menu-saturation,0));flex-direction:column;justify-content:center;align-items:center;gap:clamp(2rem,5vh,4rem);transition:filter 1.5s ease-out;display:flex;position:fixed;inset:0;overflow:hidden}.main-menu__lang-switch{z-index:10;position:absolute;top:clamp(1.5rem,3vh,2.5rem);right:clamp(1.5rem,3vw,2.5rem)}.main-menu__title{font-family:var(--font-menu);color:var(--background-color);text-align:center;text-shadow:0 8px 24px #173b3a26;margin:0;font-size:clamp(3rem,8vw,6rem);line-height:.9}.main-menu__content{justify-content:center;align-items:center;gap:clamp(2rem,8vw,8rem);display:flex}.main-menu__character{object-fit:contain;pointer-events:none;filter:drop-shadow(0 20px 30px #173b3a40);width:auto;height:clamp(150px,30vh,350px);animation:.7s ease-in-out infinite menu-character-float}@keyframes menu-character-float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.main-menu__list{flex-direction:column;gap:1.5rem;margin:0;padding:0;list-style:none;display:flex}.main-menu__button{cursor:pointer;background:0 0;border:none;align-items:center;gap:1.25rem;padding:.5rem 1rem;transition:transform .25s cubic-bezier(.2,.9,.24,1);display:flex}.main-menu__button:hover,.main-menu__button:focus-visible{outline:none;transform:translate(12px)}.main-menu__arrow{filter:drop-shadow(0 4px 8px #173b3a33)brightness(0)invert();width:2rem;height:auto}.main-menu__text{font-family:var(--font-menu);color:var(--background-color);text-shadow:0 4px 12px #173b3a26;letter-spacing:.02em;font-size:clamp(1.5rem,4vw,2.5rem)}.main-menu__lang-wrapper{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#173b3a26;border:1px solid #fff3;border-radius:20px;padding:12px;position:absolute;top:clamp(1.5rem,3vh,2.5rem);right:clamp(1.5rem,3vw,2.5rem);box-shadow:0 8px 24px #173b3a1a}.main-menu .language-switch-button{--language-switch-width:9rem;--language-switch-height:5.2rem;--language-switch-radius:1.5rem;--language-switch-border-width:.35rem;--language-switch-inner-radius:calc(var(--language-switch-radius) - var(--language-switch-border-width))}.main-menu .language-switch-button__glyph{font-size:2.2rem}@media (width<=768px){.main-menu__content{flex-direction:column;gap:2rem}.main-menu__character{height:150px}}.howto-menu{z-index:10000;background-color:var(--background-color);isolation:isolate;filter:saturate(var(--world-main-menu-saturation,0));flex-direction:column;transition:filter 1.5s ease-out;animation:.4s ease-out howto-fade-in;display:flex;position:fixed;inset:0;overflow:hidden}@keyframes howto-fade-in{0%{opacity:0}to{opacity:1}}.howto-menu__header{border-bottom:1px solid var(--border-color);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2;background:#f8fffdf2;align-items:center;gap:1.5rem;padding:1.5rem clamp(1.5rem,4vw,3rem);display:flex}.howto-menu__back-btn{border:2px solid var(--border-color);color:var(--heading-color);font-family:var(--font-menu);cursor:pointer;background:0 0;border-radius:8px;padding:.5rem 1rem;font-size:1rem;transition:all .2s}.howto-menu__back-btn:hover{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.howto-menu__title{font-family:var(--font-menu);color:var(--heading-color);margin:0;font-size:clamp(1.5rem,4vw,2.5rem)}.howto-menu__content{scrollbar-width:thin;scrollbar-color:var(--primary-color) transparent;flex-direction:column;flex:1;gap:1.5rem;width:100%;max-width:800px;margin:0 auto;padding:3rem clamp(1.5rem,5vw,4rem);display:flex;overflow-y:auto}.howto-section{font-family:var(--font-general);color:var(--sub-heading-color);border:1px dashed var(--border-color);background:#fff9;border-radius:12px;margin:0;padding:1.5rem;font-size:clamp(1.05rem,2.5vw,1.3rem);line-height:1.6;position:relative}:root[data-language=ja] .howto-section{font-family:var(--font-dialog-jp)}.howto-label{font-family:var(--font-menu);color:var(--primary-active-color);letter-spacing:.05em;margin-bottom:.5rem;font-size:1.2rem;display:block}.howto-hint{border:2px solid var(--primary-color);background:linear-gradient(135deg,#fffc,#e5fffa99);box-shadow:0 8px 24px #60ccbb26}.terminology-hint{color:var(--second-color);text-shadow:0 2px 4px #ffa3c033;font-style:normal;font-weight:700}.howto-menu .language-switch-button{--language-switch-width:9rem;--language-switch-height:5.2rem;--language-switch-radius:1.5rem;--language-switch-border-width:.35rem;--language-switch-inner-radius:calc(var(--language-switch-radius) - var(--language-switch-border-width))}.howto-menu .language-switch-button__glyph{font-size:2.2rem}@media (width<=640px){.howto-menu__content{padding:2rem 1.5rem}.howto-section{padding:1.25rem}}.story-menu{z-index:10000;background-color:var(--background-color);isolation:isolate;filter:saturate(var(--world-main-menu-saturation,0));flex-direction:column;transition:filter 1.5s ease-out;animation:.4s ease-out story-fade-in;display:flex;position:fixed;inset:0;overflow:hidden}@keyframes story-fade-in{0%{opacity:0}to{opacity:1}}.story-menu__header{border-bottom:1px solid var(--border-color);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2;background:#f8fffdf2;align-items:center;gap:1.5rem;padding:1.5rem clamp(1.5rem,4vw,3rem);display:flex}.story-menu__back-btn{border:2px solid var(--border-color);color:var(--heading-color);font-family:var(--font-menu);cursor:pointer;background:0 0;border-radius:8px;padding:.5rem 1rem;font-size:1rem;transition:all .2s}.story-menu__back-btn:hover{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.story-menu__title{font-family:var(--font-menu);color:var(--heading-color);margin:0;font-size:clamp(1.5rem,4vw,2.5rem)}.story-menu__content{scrollbar-width:thin;scrollbar-color:var(--primary-color) transparent;flex:1;width:100%;max-width:900px;margin:0 auto;padding:3rem clamp(1.5rem,5vw,4rem);overflow-y:auto}.story-prologue{text-align:center;border:1px dashed var(--border-color);background:#fff9;border-radius:5px;margin-bottom:5rem;padding:2.5rem}.story-prologue__text{font-family:var(--font-general);color:var(--sub-heading-color);margin:0;font-size:clamp(1rem,2.5vw,1.3rem);line-height:1.3}.story-prologue__the-traveler{background:linear-gradient(120deg, var(--primary-color) 0%, var(--second-color) 100%);-webkit-text-fill-color:transparent;color:var(--primary-active-color);letter-spacing:.02em;-webkit-background-clip:text;background-clip:text;padding:0 2px;font-weight:600;transition:transform .4s cubic-bezier(.2,.84,.22,1);display:inline-block;position:relative}.story-prologue__the-traveler:after{content:"";background:linear-gradient(90deg, var(--primary-color), var(--second-color));opacity:.4;filter:blur(2px);z-index:-1;border-radius:4px;width:100%;height:3px;transition:opacity .4s,filter .4s;position:absolute;bottom:2px;left:0}.story-prologue__the-traveler:hover{transform:translateY(-2px)}.story-prologue__the-traveler:hover:after{opacity:.85;filter:blur(4px)}.story-year{margin-bottom:5rem}.story-year__title{font-family:var(--font-menu);color:var(--heading-color);margin:0 0 .5rem;font-size:clamp(2.5rem,6vw,4rem);display:inline-block;position:relative}.story-year__title:after{content:"";background:var(--primary-color);opacity:.6;border-radius:2px;width:100%;height:4px;position:absolute;bottom:-6px;left:0}.story-year__theme{font-family:var(--font-general);color:var(--description-color);margin:1.5rem 0 2.5rem;font-size:1.2rem;font-style:italic}.story-card{border:1px solid var(--border-color);background:#fff;border-radius:16px;align-items:flex-start;gap:2rem;margin-bottom:2rem;padding:2rem;transition:transform .3s,box-shadow .3s;display:flex;box-shadow:0 8px 24px #173b3a0a}.story-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #173b3a14}.story-card__image{object-fit:contain;filter:drop-shadow(0 8px 16px #173b3a26);border-radius:8px;flex-shrink:0;width:clamp(120px,15vw,180px);height:250px}.story-card__text-wrapper{flex-direction:column;flex:1;min-width:0;display:flex}.story-card__name{font-family:var(--font-menu);color:var(--primary-active-color);margin:0 0 .25rem;font-size:1.8rem}.story-card__name-wrapper{align-items:baseline;gap:.75rem;margin-bottom:.25rem;display:flex}.story-card__name{font-family:var(--font-menu);color:var(--primary-active-color);margin:0;font-size:1.8rem;line-height:1}.story-card__kanji{font-family:var(--font-lyrics);color:var(--description-color);letter-spacing:.05em;opacity:.8;font-size:2rem;font-weight:400}.story-card__role{font-family:var(--font-general);text-transform:uppercase;letter-spacing:.15em;color:var(--description-color);margin-bottom:1.5rem;font-size:.9rem;display:block}.story-card__story{font-family:var(--font-dialog-en);color:var(--sub-heading-color);margin:0;font-size:1.2rem;line-height:1.7}.story-menu .language-switch-button{--language-switch-width:9rem;--language-switch-height:5.2rem;--language-switch-radius:1.5rem;--language-switch-border-width:.35rem;--language-switch-inner-radius:calc(var(--language-switch-radius) - var(--language-switch-border-width))}.story-menu .language-switch-button__glyph{font-size:2.2rem}.story-menu__teach-character{object-fit:contain;pointer-events:none;z-index:1;filter:drop-shadow(0 12px 24px #173b3a26);width:auto;height:clamp(300px,45vh,500px);position:absolute;bottom:0;left:0;-webkit-mask-image:linear-gradient(#000 85%,#0000 100%);mask-image:linear-gradient(#000 85%,#0000 100%)}:root[data-language=ja] .story-card__story{font-family:var(--font-dialog-jp)}@media (width<=640px){.story-menu__content{padding:6.5rem 1.5rem}.story-card{text-align:left;flex-direction:column;align-items:center;gap:1.5rem;padding:1.5rem}.story-card__image{width:160px;margin-bottom:.5rem}.story-card__text-wrapper{width:100%}.story-card__name-wrapper{justify-content:center}.story-card__role{text-align:center}}@media (width<=768px){.story-menu__teach-character{opacity:.75;height:220px}}.credit-menu{z-index:10001;background-color:var(--background-color);color:var(--heading-color);font-family:var(--font-general);filter:saturate(var(--world-main-menu-saturation,0));flex-direction:column;transition:filter 1.5s ease-out;animation:.4s ease-out credit-fade-in;display:flex;position:fixed;inset:0;overflow:hidden}@keyframes credit-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.credit-menu__header{border-bottom:1px solid var(--border-color);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2;background:#f8fffdcc;align-items:center;gap:1.5rem;padding:1.5rem clamp(1.5rem,4vw,3rem);display:flex}.credit-menu__back-btn{border:2px solid var(--border-color);color:var(--heading-color);font-family:var(--font-menu);cursor:pointer;background:0 0;border-radius:8px;padding:.5rem 1rem;font-size:1rem;transition:all .2s}.credit-menu__back-btn:hover{background:var(--primary-color);border-color:var(--primary-color);color:#fff;transform:translate(-2px)}.credit-menu__title{font-family:var(--font-menu);color:var(--heading-color);margin:0;font-size:clamp(1.5rem,4vw,2.5rem)}.credit-menu__content{scroll-behavior:smooth;padding:2rem clamp(1.5rem,4vw,3rem);scrollbar-width:thin;scrollbar-color:var(--primary-color) transparent;flex:1;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-content:start;gap:2rem;min-height:0;padding-bottom:4rem;display:grid;overflow-y:auto}.credit-menu__content::-webkit-scrollbar{width:8px}.credit-menu__content::-webkit-scrollbar-track{background:0 0}.credit-menu__content::-webkit-scrollbar-thumb{background-color:var(--primary-color);border-radius:10px}.credit-card{border:1px solid var(--border-color);background:#fff;border-radius:16px;flex-direction:column;gap:.75rem;padding:1.5rem;transition:transform .3s,box-shadow .3s;display:flex;box-shadow:0 8px 24px #173b3a0a}.credit-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #173b3a14}.credit-card__handle{font-family:var(--font-menu);color:var(--primary-active-color);margin:0;font-size:1.75rem}.credit-card__handle a{color:inherit;text-decoration:none;transition:transform .2s,opacity .2s;display:inline-block}.credit-card__handle a:hover{opacity:.8;text-decoration:underline;-webkit-text-decoration-color:var(--primary-color);text-decoration-color:var(--primary-color);text-underline-offset:6px;text-decoration-thickness:2px;transform:translateY(-2px)}.credit-card__category{text-transform:uppercase;letter-spacing:.1em;color:var(--description-color);border-bottom:2px dashed var(--border-color);margin:0;padding-bottom:.5rem;font-size:.9rem;font-weight:700}.credit-card__works{flex:1;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.credit-card__work-item{margin:0}.credit-card__work-link{background:var(--background-color);border:1px solid var(--border-color);color:var(--sub-heading-color);text-align:center;white-space:nowrap;text-overflow:ellipsis;border-radius:6px;padding:.4rem .6rem;font-size:.85rem;text-decoration:none;transition:all .2s;display:block;overflow:hidden}.credit-card__work-link:hover{background:var(--primary-color);border-color:var(--primary-color);color:#fff;transform:scale(1.05)}.credit-card__thanks{font-family:var(--font-dialog-jp);color:var(--second-color);text-align:right;margin:.5rem 0 0;font-size:1.1rem;font-weight:700}.credit-menu .language-switch-button{--language-switch-width:9rem;--language-switch-height:5.2rem;--language-switch-radius:1.5rem;--language-switch-border-width:.35rem;--language-switch-inner-radius:calc(var(--language-switch-radius) - var(--language-switch-border-width))}.credit-menu .language-switch-button__glyph{font-size:2.2rem}:root[data-language=en] .credit-card__thanks{font-family:var(--font-dialog-en)}.pause-menu{z-index:10002;pointer-events:none;visibility:hidden;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.pause-menu.is-visible{pointer-events:auto;visibility:visible}.pause-menu__overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;background:#173b3a66;transition:opacity .4s;position:absolute;inset:0}.pause-menu.is-visible .pause-menu__overlay{opacity:1}.pause-menu__container{border:1px solid var(--border-color);opacity:0;z-index:1;filter:saturate(var(--world-saturation,0));background:#f8fffdf2;border-radius:24px;align-items:center;gap:clamp(2rem,5vw,4rem);padding:clamp(2rem,4vw,3rem) clamp(3rem,6vw,5rem);transition:transform .4s cubic-bezier(.2,.84,.22,1),opacity .4s,filter 1.5s ease-out;display:flex;position:relative;transform:translateY(20px)scale(.95);box-shadow:0 24px 48px #173b3a33}.pause-menu.is-visible .pause-menu__container{opacity:1;transform:translateY(0)scale(1)}.pause-menu__support{object-fit:contain;pointer-events:none;filter:drop-shadow(0 12px 24px #173b3a26);width:auto;height:clamp(150px,25vh,250px)}.pause-menu__list-wrapper{flex-direction:column;align-items:center;gap:2.5rem;min-width:200px;display:flex}.pause-menu .language-switch-button{--language-switch-width:9rem;--language-switch-height:5.2rem;--language-switch-radius:1.5rem;--language-switch-border-width:.35rem;--language-switch-inner-radius:calc(var(--language-switch-radius) - var(--language-switch-border-width))}.pause-menu .language-switch-button__glyph{font-size:2.2rem}.pause-menu__list{flex-direction:column;gap:1.5rem;margin:0;padding:0;list-style:none;display:flex}.pause-menu__button{cursor:pointer;background:0 0;border:none;align-items:center;gap:1.25rem;padding:.5rem 1rem;transition:transform .25s cubic-bezier(.2,.9,.24,1);display:flex}.pause-menu__button:hover,.pause-menu__button:focus-visible{outline:none;transform:translate(12px)}.pause-menu__arrow{filter:drop-shadow(0 4px 8px #173b3a26)brightness(0);width:2rem;height:auto}.pause-menu__text{font-family:var(--font-menu);color:var(--heading-color);text-shadow:0 4px 12px #173b3a14;letter-spacing:.02em;font-size:clamp(1.5rem,4vw,2.5rem)}.setting-button{--button-size:clamp(42px, 6svh, 52px);width:var(--button-size);height:var(--button-size);border:2px solid var(--world-ink);background:linear-gradient(180deg, #ffffffb8, transparent 54%), color-mix(in srgb, var(--world-control) 70%, var(--primary-color));box-shadow:0 6px 0 var(--heading-color);color:var(--world-ink);cursor:pointer;isolation:isolate;border-radius:8px;place-items:center;padding:0;transition:transform .19s cubic-bezier(.2,.9,.24,1);display:grid;position:relative}.setting-button:hover{background:linear-gradient(180deg, #fffc, transparent 58%), color-mix(in srgb, var(--world-control) 20%, var(--primary-color))}.setting-button:active{box-shadow:0 2px 0 var(--heading-color);transform:translateY(clamp(4px,.62svh,7px))scaleX(1.04)scaleY(.94)}.setting-button svg{fill:currentColor;pointer-events:none;width:62%;height:62%}@media (width<=768px){.pause-menu__container{flex-direction:column;gap:2rem;padding:2rem}.pause-menu__support{height:100px}.pause-menu__overlay{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}}.secret-ending{z-index:10005;pointer-events:none;opacity:0;background:0 0;justify-content:center;align-items:center;transition:opacity 1s ease-out;display:flex;position:fixed;inset:0;overflow:hidden}.secret-ending.is-active{pointer-events:auto;opacity:1}.secret-ending.is-fading-out{opacity:0;transition:opacity 1s ease-out}.secret-ending__hug-wrapper{opacity:0;pointer-events:auto;align-items:flex-end;gap:clamp(1.5rem,4vw,4rem);max-width:90vw;display:flex;position:absolute;top:65%;right:40%;transform:translate(200%,-50%)}.secret-ending__hug-wrapper.is-visible{animation:3s cubic-bezier(.25,1,.5,1) forwards slide-in-hug}.secret-ending__hug{object-fit:contain;filter:drop-shadow(0 20px 40px #00000080);flex-shrink:0;width:auto;height:clamp(350px,65vh,700px)}.secret-ending__chat-container{flex:1;justify-content:flex-end;align-items:center;min-width:0;display:flex;position:relative;bottom:55vh;left:15vh}.secret-ending__chat-container .chat{opacity:0;pointer-events:none;transition:opacity .5s;--chat-max-width:32vw!important;margin:0!important;position:relative!important;bottom:auto!important;left:auto!important;transform:none!important}.secret-ending__chat-container .chat.is-active{opacity:1}.secret-ending__final-stage{opacity:0;pointer-events:none;flex-direction:row;justify-content:center;align-items:center;gap:clamp(2rem,6vw,8rem);padding:2rem clamp(2rem,6vw,8rem);transition:opacity 1.5s ease-out;display:flex;position:absolute;inset:0}.secret-ending__final-stage.is-visible{opacity:1;pointer-events:auto}.secret-ending__quote-container{color:#fff;text-align:left;opacity:0;flex:1;max-width:550px;transition:opacity 2s ease-out .5s,transform 2s cubic-bezier(.2,.8,.2,1) .5s;transform:translate(-30px)}.secret-ending__final-stage.is-visible .secret-ending__quote-container{opacity:1;transform:translate(0)}.secret-ending__quote{font-family:var(--font-dialog-en), var(--font-general);text-shadow:0 4px 16px #000c;margin:0 0 1.5rem;font-size:clamp(1.25rem,2.2vw,1.8rem);font-style:italic;font-weight:400;line-height:1.6}.secret-ending__quote-author{font-family:var(--font-dialog-en);letter-spacing:.15em;opacity:.85;text-shadow:0 2px 8px #000c;text-transform:uppercase;font-size:clamp(.9rem,1.5vw,1.1rem);font-style:normal;display:block}.secret-ending__luka-miku{object-fit:contain;opacity:0;filter:drop-shadow(0 20px 40px #0009);flex:1;max-width:60%;height:auto;max-height:90vh;transition:opacity 2s ease-out,transform 2s cubic-bezier(.2,.8,.2,1);position:relative;top:12%;transform:scale(.95)translate(30px)}.secret-ending__final-stage.is-visible .secret-ending__luka-miku{opacity:1;transform:scale(1)translate(0)}.secret-ending__flash{opacity:0;pointer-events:none;background:#fff;position:absolute;inset:0}.secret-ending__flash.is-active{animation:2s ease-out forwards flash-effect}.secret-ending__text{color:#fff;font-family:var(--font-menu);letter-spacing:.15em;opacity:0;text-shadow:0 4px 12px #000c;text-align:center;width:100%;padding:0 2rem;font-size:clamp(1.2rem,3vw,1.8rem);position:absolute;bottom:5%;left:50%;transform:translate(-50%)}.secret-ending__text.is-visible{animation:2s ease-out forwards fade-in-text,3s ease-in-out 2s infinite pulse-text}.colorless-world.is-zooming{transform-origin:100% 87%;animation:4s ease-in forwards zoom-in-world}@keyframes slide-in-hug{0%{opacity:0;transform:translate(200%,-50%)}to{opacity:1;transform:translateY(-50%)}}@keyframes flash-effect{0%{opacity:0}20%{opacity:1}to{opacity:0}}@keyframes fade-in-text{0%{opacity:0}to{opacity:.9}}@keyframes pulse-text{0%,to{opacity:.9}50%{opacity:.4}}@keyframes zoom-in-world{0%{filter:brightness()blur();transform:scale(1)}to{filter:brightness(.1)blur(8px);transform:scale(1.5)}}@keyframes slide-in-hug-mobile{0%{opacity:0;transform:translate(50%)translateY(200%)}to{opacity:1;transform:translate(50%)translateY(0)}}@media (width<=1024px){.secret-ending__hug-wrapper{right:25%}.secret-ending__chat-container .chat{--chat-max-width:45vw!important}.secret-ending__final-stage{flex-direction:column;justify-content:center;align-items:center;gap:2rem;padding:2rem}.secret-ending__quote-container{text-align:center;order:1;max-width:100%;margin-top:8vh;transform:translateY(-20px)}.secret-ending__final-stage.is-visible .secret-ending__quote-container{transform:translateY(0)}.secret-ending__luka-miku{order:2;max-width:100%;max-height:75vh;top:4%;transform:scale(.95)translateY(20px)}.secret-ending__final-stage.is-visible .secret-ending__luka-miku{transform:scale(1)translateY(0)}}@media (width<=768px){.secret-ending__hug-wrapper{flex-direction:column;align-items:center;gap:2rem;max-width:95vw;top:auto;bottom:5%;right:30%;transform:translate(50%)translateY(200%)}.secret-ending__hug-wrapper.is-visible{animation:3s cubic-bezier(.25,1,.5,1) forwards slide-in-hug-mobile}.secret-ending__hug{max-width:100%;height:40vh}.secret-ending__chat-container{justify-content:center;width:100%;inset:10vh 70% auto auto}.secret-ending__chat-container .chat{--chat-max-width:50vw!important}.secret-ending__final-stage{flex-direction:column;justify-content:center;gap:2rem;padding:2rem}.secret-ending__quote-container{text-align:center;order:1;max-width:100%;margin-top:12vh;transform:translateY(-20px)}.secret-ending__final-stage.is-visible .secret-ending__quote-container{transform:translateY(0)}.secret-ending__luka-miku{order:2;max-width:100%;max-height:75vh;top:4%;transform:scale(.95)translateY(20px)}.secret-ending__final-stage.is-visible .secret-ending__luka-miku{transform:scale(1)translateY(0)}.secret-ending__quote{font-size:clamp(1.1rem,4vw,1.5rem)}}@media (width<=768px),(hover:none),(pointer:coarse){.memory-object.is-spawning .memory-object__sprite,.lyric-membrane__word{filter:none!important}}
