:root{font-family:Yu Gothic UI,Yu Gothic,Meiryo,sans-serif;color:#dce6df;background:#09121b;font-synthesis:none;color-scheme:dark}.battle-loading{position:fixed;inset:0;z-index:999999;display:grid;place-content:center;gap:20px;padding:28px;background:#09121b;color:#eaf5ef;text-align:center;font:18px/1.8 sans-serif}.battle-loading button{padding:12px 24px;background:#d4ede2;color:#0b1c20}*{box-sizing:border-box}html,body,#game,#ui{margin:0;width:100%;height:100%;overflow:hidden}canvas{display:block;image-rendering:pixelated}#ui{position:fixed;inset:0;pointer-events:none}button{font:inherit;color:inherit;cursor:pointer;border:0}button:focus-visible{outline:2px solid #dfffe5;outline-offset:5px}button:disabled{opacity:.4;cursor:default}button,details{pointer-events:auto}button:hover{filter:brightness(1.16)}.eyebrow{font-size:10px;letter-spacing:2.5px;color:#9db7b7;font-weight:600}.small{font-size:10px;letter-spacing:1px;color:#799297}kbd,.key{font:10px monospace;border:1px solid #4c6469;border-radius:3px;padding:4px 6px;color:#b9d4cc}.overlay{pointer-events:auto;position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#07121cde;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);padding:28px;overflow:auto}.overlay.stage-transition{padding:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;overflow:hidden}.stage-end-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;width:100%;height:100%;padding:24px;background:radial-gradient(ellipse at center,#07121c66,#07121c22 75%);color:#e2f3eb;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;animation:stage-end-appear .8s ease-out both}.stage-end-overlay:hover{filter:none}.stage-end-overlay:focus{outline:none}.stage-end-title{font-family:Georgia,Times New Roman,serif;font-size:clamp(30px,5vw,64px);font-weight:400;line-height:1.4;letter-spacing:.18em;padding-left:.18em;text-shadow:0 2px 12px #02090f,0 0 28px #c8f3e755}.stage-end-story{margin-top:-12px;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:12px;font-weight:400;letter-spacing:.2em;color:#c1d4cd;text-shadow:0 1px 5px #02090f}.stage-end-caption{font-family:Georgia,Times New Roman,serif;font-size:12px;letter-spacing:.15em;color:#c1d4cd;text-shadow:0 1px 5px #02090f}.stage-end-overlay:focus-visible .stage-end-caption{text-decoration:underline;text-underline-offset:6px}@keyframes stage-end-appear{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.stage-end-overlay{animation:none}}.overlay.title{display:block;padding:0;background:linear-gradient(90deg,#07121cf7,#09151ceb 43%,#09131b60);-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.title-meta{position:absolute;left:6.5%;top:6%;font-size:12px;letter-spacing:4px;font-weight:700;color:#cae5da;display:flex;align-items:center;gap:16px}.brand-mark{font-size:28px;font-weight:300;color:#b4d2bb}.edition{margin-left:20px;font:9px monospace;letter-spacing:2px;color:#72888e}.title-content{position:absolute;left:8%;top:23%;z-index:2}.title-content .eyebrow{font-size:9px;color:#91c1b6;letter-spacing:3px}h1,h2,h3{font-family:Yu Mincho,Hiragino Mincho ProN,Georgia,serif;font-weight:400}h1{font-size:clamp(36px,4.6vw,72px);line-height:1.4;letter-spacing:8px;margin:20px 0 16px}h1 span{color:#bddecd}h2{font-size:32px;letter-spacing:3px;margin:16px 0}h3{font-size:22px;letter-spacing:2px;margin:18px 0 12px}.title-line{width:55px;height:1px;background:#8fb6a0;margin:22px 0}.title-content p{font-size:13px;line-height:2.1;letter-spacing:2px;color:#9eafb1;margin-bottom:27px}.primary{background:#c6ddbd;color:#172a2a;padding:17px 25px;min-width:260px;display:inline-flex;justify-content:space-between;align-items:center;gap:35px;font-size:13px;font-weight:600;letter-spacing:1.5px;border:1px solid #d8e9cd;box-shadow:0 3px 25px #0002}.primary span{font:11px monospace;opacity:.6;letter-spacing:1px}.start-button{min-width:286px}.start-button span{font-size:24px}.title-controls{margin-top:22px;font-size:10px;color:#839a9b;display:flex;gap:10px;align-items:center}.title-controls>span{color:#53676d}.title-content .title-hint{font-size:10px;letter-spacing:1px;margin-top:20px;color:#637e84}.title-visual{position:absolute;left:56%;top:32%;width:350px;height:300px;display:flex;align-items:center;justify-content:center}.title-girl{width:320px;height:256px;background:url(/assets/player/idle.png) 0 0 / 2560px 2048px;image-rendering:pixelated;position:relative;z-index:1;filter:drop-shadow(0 0 30px #8ddac626)}.title-skull{position:absolute;top:40px;right:-2px;width:72px;image-rendering:pixelated;animation:float 4s ease-in-out infinite}.title-visual>span{position:absolute;top:330px;text-align:center;font:9px/2 monospace;letter-spacing:3px;color:#72928d}.title-visual b{font-weight:400;font-size:8px;color:#58716f}.orbit{border:1px solid #a5d6c526;border-radius:50%;position:absolute;width:380px;height:380px}.orbit.two{width:320px;height:320px;border-color:#a5d6c514}.orbit.one:before{content:"◇";position:absolute;left:175px;top:-10px;color:#8fbaaa;background:#14252b;font-size:18px}.title-footer{position:absolute;bottom:5%;left:6.5%;right:6.5%;display:flex;justify-content:space-between;border-top:1px solid #879c8c24;padding-top:20px;font-size:10px;letter-spacing:2px;color:#688185}.text-button{padding:5px 0;background:none;font:10px monospace;letter-spacing:2px;color:#a3beb4}.hud-top{position:absolute;top:22px;left:30px;right:30px;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;filter:drop-shadow(0 2px 6px #000)}.vital{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0}.hearts{display:flex;gap:6px}.hearts i{width:26px;height:13px;transform:skew(-15deg);background:#192e34;border:1px solid #597576}.hearts i.alive{background:#91f4d2;border-color:#d5fff1;box-shadow:0 0 8px #91f4d266}.vital>.eyebrow{color:#a5f5d9}.hud-controls{justify-self:end}.clock{display:flex;align-items:center;flex-direction:column;gap:3px}.clock strong{font:24px Georgia,serif;letter-spacing:4px;color:#b8ccc4}.world-state{text-align:right;min-width:200px}.world-state strong{display:block;font-size:13px;font-weight:400;margin-top:8px}.world-state b{font:18px Georgia,serif;color:#a9c7b5;margin-right:10px}.tiny{margin:0;min-width:40px;min-height:40px;background:#0a1a22aa;border:1px solid #5472766b;padding:5px 10px;font-size:12px}.tiny span{font:9px monospace;margin-left:8px;color:#89a3a1}.xp-track{position:absolute;top:0;left:0;right:0;height:3px;background:#132c32}.xp-track>span{display:block;height:100%;background:#97d9cc;box-shadow:0 0 8px #8dcbb877}.xp-track b{position:absolute;top:76px;left:31px;font:11px monospace;color:#cae6ce}.xp-track em{font-style:normal;font-size:9px;color:#859d97;margin-left:8px}.combat-info{position:absolute;left:30px;bottom:24px;width:104px}.combat-info>.eyebrow{font-size:8px;letter-spacing:.8px;color:#78988c}.meter{height:3px;background:#18313a;border:1px solid #8aada72b;margin:6px 0 0}.meter i{display:block;height:100%;background:#7da997}.combat-info small{display:flex;justify-content:space-between;font:9px monospace;color:#83a8a5}.scythe{display:flex;align-items:center;gap:12px;margin-top:18px}.scythe>div{flex:1}.scythe b{font-size:10px;font-weight:400;color:#b9ccc6}.thin{height:3px;margin:6px 0}.thin i{background:#bbcbb1}.inventory{position:absolute;right:30px;bottom:29px;width:320px;background:#0c1b24b8;padding:15px 16px;border-top:1px solid #a5c1b83a}.inventory-heading{font:9px monospace;color:#8faaa5;letter-spacing:1px;display:flex;justify-content:space-between;margin-bottom:12px}.equipment-row{display:flex;align-items:center;gap:5px;margin-top:5px}.equipment-row>span{font-size:9px;color:#718c90;width:28px}.slot{width:37px;height:39px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #45636640;background:#11222a44;color:#465f66}.slot b{font:19px Georgia,serif}.slot small{font:8px monospace;color:#728d8e}.slot.owned{border-color:#849f9666;color:#c4e4d5;background:#193136b3}.slot.ready{border-color:#d4b575;box-shadow:0 0 7px #ddb66b33}.slot.evolved{color:#eed698;border-color:#d3b974}.slot.evolved small{color:#d3b974}.guide{position:absolute;bottom:160px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:15px;background:#081720db;padding:13px 18px;border:1px solid #8caaa33b;white-space:nowrap;font-size:10px;color:#b7ccc4}.guide button{background:none;font-size:18px;color:#829b96}.location-label{position:absolute;bottom:12px;left:50%;transform:translate(-50%);font-size:9px;color:#839a95;letter-spacing:1.5px;white-space:nowrap}.boss-bar{position:absolute;top:84px;left:35%;width:30%;text-align:center;font-size:10px;letter-spacing:3px;color:#e0c49d}.boss-bar>div{height:5px;background:#221d24;margin-top:8px}.boss-bar i{display:block;height:100%;background:#c49b6c}.debug{position:absolute;top:148px;left:30px;color:#a8c0a6;font:10px monospace}.choice-panel{width:min(940px,95vw);text-align:center}.subtitle{font-size:12px;color:#93aba9;line-height:1.9;margin-bottom:28px}.cards{display:flex;gap:18px;margin-top:30px;justify-content:center}.upgrade-card{position:relative;background:linear-gradient(155deg,#1e353c,#10202b);border:1px solid #64867b66;padding:32px 24px 24px;text-align:left;width:280px;min-height:350px;transition:transform .16s,border-color .16s}.upgrade-card:hover{transform:translateY(-6px);border-color:#c4d9b8}.upgrade-card.passive{background:linear-gradient(155deg,#292c3b,#12202a);border-color:#8a83ab55}.card-number{position:absolute;right:18px;top:17px;font:11px monospace;color:#68847e}.card-icon{font:42px Georgia,serif;display:block;margin-bottom:28px;color:#bedccd}.badge{font-size:9px;letter-spacing:1px;color:#9eb6b1;display:flex;justify-content:space-between}.badge b{font:10px monospace;color:#cadbb6}.upgrade-card p{font-size:11px;color:#90a5a7;min-height:18px}.stat-change{display:flex;align-items:center;gap:16px;font:25px Georgia,serif;color:#cee8ce;margin:18px 0}.stat-change span{font:14px sans-serif;color:#627b75}.stat-change small{font:10px sans-serif}.evolution-recipe{border-top:1px solid #80948c2f;margin-top:25px;padding-top:16px;display:flex;flex-direction:column;gap:7px}.evolution-recipe>span{font-size:9px;color:#6f8a8b}.evolution-recipe b{font-size:11px;color:#b6c6b0;font-weight:400}.evolution-recipe small{font-size:9px;color:#81938a}.choice-footer{margin:25px 0 0;display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#8ba4a0}.secondary{background:transparent;border:1px solid #71968c60;padding:12px 18px;font-size:11px}.secondary b{margin-left:18px;font:11px monospace;color:#c2d9b4}.pause-panel,.result-panel,.evolution-panel{text-align:center;width:min(700px,95vw)}.recipes{text-align:left;border-top:1px solid #5c7b7a55;margin:30px auto 20px;padding-top:20px;max-width:580px}.recipes summary{font-size:12px;cursor:pointer;letter-spacing:1px}.recipes p{font-size:10px;line-height:1.8;color:#849e99}.recipes div{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #546c6c30;gap:15px;font-size:11px;color:#b4c8bd}.recipes b{font-weight:400;color:#d4c7a3}.result-stats{display:flex;justify-content:center;gap:44px;margin:38px 0}.result-stats div{display:flex;flex-direction:column;gap:12px}.result-stats span{font-size:10px;color:#92aaa4}.result-stats b{font:30px Georgia,serif;color:#d3e5ce}.result-panel>.small{display:block;margin-top:25px}.evo-mark{font-size:90px;color:#e5d194;margin-bottom:12px}.evolution-panel h2{color:#e4d9ad}.evolution-panel p{font-size:12px;color:#9caaa2;margin:25px 0 35px}.result-panel{animation:rollback .9s ease-out}.load-error{pointer-events:auto;padding:30px;background:#152632}@keyframes float{50%{transform:translateY(-8px)}}@keyframes rollback{0%{opacity:.2;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-height:750px){.title-content{top:18%}h1{font-size:46px;margin:13px 0}.title-line{margin:16px 0}.title-content p{margin-bottom:20px}.title-content .title-hint{display:none}.title-visual{top:25%}.title-visual>span{top:290px}.upgrade-card{min-height:300px;padding:22px}.card-icon{margin-bottom:14px}.cards{margin-top:20px}.evolution-recipe{margin-top:17px}.choice-panel h2{font-size:28px}.subtitle{margin-bottom:15px}.recipes{margin-top:22px;padding-top:15px}.recipes div{padding:6px 0}}@media(max-width:900px){.edition{display:none}.title-visual{left:59%;transform:scale(.75);transform-origin:left center}.title-content{left:6%}h1{font-size:40px;letter-spacing:5px}.inventory{width:280px;right:15px;padding:10px}.slot{width:32px}.combat-info{left:18px;width:104px}.hud-top{left:18px;right:18px}.vital{min-width:0}.eyebrow{font-size:8px;letter-spacing:1px}.upgrade-card{width:31%;padding:20px 15px}.upgrade-card h3{font-size:18px}.guide{font-size:9px;padding:9px}.title-visual .orbit{width:330px;height:330px}.result-stats{gap:25px}.clock strong{font-size:22px}}.debug-launch{margin-left:8px;border-color:#c4b18280;color:#daceac}.debug-modal{padding:20px;background:#09141bf5;align-items:flex-start}.debug-panel{width:min(1250px,100%);height:100%;display:flex;flex-direction:column;min-height:0}.debug-panel header{display:flex;align-items:center;gap:15px;flex-shrink:0}.debug-panel header>div{margin-right:auto}.debug-panel h2{font-size:26px;margin:8px 0}.debug-panel .primary{min-width:160px}.debug-panel>p{color:#9bb0aa;font-size:12px;line-height:1.7;margin:10px 0}.debug-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.debug-toolbar label{font-size:12px;color:#b7cbc1;margin-right:auto}.debug-toolbar input{margin-left:12px;width:250px;border:1px solid #456761;background:#142932;color:#d6e8dd;padding:10px;font:12px sans-serif;pointer-events:auto}.debug-toolbar button,.debug-item button{background:#20383c;border:1px solid #456b61;padding:9px 10px;font-size:11px;color:#cce0ca}.debug-summary{padding:13px 0;color:#9db8ad;font-size:11px}.debug-grid{overflow-y:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-content:start;padding-right:8px;min-height:0}.debug-item{border:1px solid #36514f;background:#10232c;padding:16px;min-width:0}.debug-item.selected{border-color:#b2c597;background:#1b3237}.debug-item-title{display:flex;justify-content:space-between;gap:10px;font-size:13px}.debug-item-title span{color:#d8d2a0;font-size:11px}.debug-item code{font-size:10px;color:#718c89;display:block;margin-top:5px}.debug-item p{color:#adbfba;font-size:12px;line-height:1.7;min-height:40px}.debug-item small{font-size:10px;color:#819e98}.debug-item-actions{display:flex;gap:5px;flex-wrap:wrap;margin-top:13px}.debug-item button:hover{background:#3c5650}.recipes{max-height:280px;overflow:auto}.inventory .equipment-row{min-height:39px}@media(max-width:1000px){.debug-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.debug-panel header .primary{min-width:130px}.debug-panel h2{font-size:22px}.debug-toolbar input{width:180px}}@media(max-width:650px){.debug-grid{grid-template-columns:1fr}.debug-panel header{flex-wrap:wrap}}#debug-access{position:fixed;right:28px;top:105px;z-index:20;padding:8px 14px;background:#294448;border:1px solid #83aaa2;font-size:12px}#debug-access[hidden]{display:none}canvas{touch-action:none}body{overscroll-behavior:none}button{touch-action:manipulation}.touch-instructions{display:none}.touch-mode .touch-instructions{display:block;font-size:12px;line-height:1.8;color:#b7d4cb}.touch-mode .title-controls,.touch-mode .desktop-only{display:none}#touch-stick{position:fixed;z-index:25;pointer-events:none;width:96px;height:96px;margin:-48px;border:1px solid #c1eee780;border-radius:50%;background:#142f3650}#touch-stick i{display:block;position:absolute;left:28px;top:28px;width:40px;height:40px;background:#b4e0d580;border:2px solid #e4fff0b0;border-radius:50%}.touch-mode{-webkit-user-select:none;user-select:none}.touch-mode .tiny,.touch-mode .text-button,.touch-mode .secondary,.touch-mode .debug-item button{min-height:44px}.touch-mode .title-controls+.title-hint{margin-top:12px}@media(max-width:700px),(pointer:coarse)and (max-height:500px){.overlay{padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));align-items:safe center}.title-meta{top:max(16px,env(safe-area-inset-top));left:6%}.edition,.title-footer>span,.title-visual>span{display:none}.title-content{top:18%;left:7%;right:7%}h1{font-size:38px;letter-spacing:4px}.title-visual{left:40%;top:18%;opacity:.35;transform:scale(.65);transform-origin:top left}.title-footer{bottom:max(12px,env(safe-area-inset-bottom));padding-top:8px}.hud-top{top:max(14px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right))}.vital,.world-state{min-width:0}.vital>.eyebrow,.vital>.small,.world-state>.eyebrow,.world-state strong,.clock .eyebrow,.clock .small,.tiny span{display:none}.vital{padding-top:14px}.hearts{gap:4px}.hearts i{width:18px;height:12px}.clock strong{font-size:22px}.tiny{margin:0;min-width:44px;min-height:44px}.xp-track b{top:calc(58px + env(safe-area-inset-top));left:12px}#debug-access{top:calc(64px + env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));min-height:44px;padding:6px 10px}.combat-info{left:12px;bottom:max(12px,env(safe-area-inset-bottom));top:auto;width:84px}.combat-info>div:first-child .eyebrow{font-size:8px;letter-spacing:0}.scythe{margin-top:6px;gap:6px}.inventory{right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));width:auto;padding:5px;opacity:.75}.inventory-heading,.equipment-row>span{display:none}.equipment-row{gap:3px;margin-top:2px}.inventory .equipment-row{min-height:25px}.slot{width:24px;height:27px}.slot b{font-size:13px}.location-label,.debug{display:none}.guide{bottom:calc(95px + env(safe-area-inset-bottom));padding:6px 10px;max-width:95%;white-space:normal}.guide button{min-width:44px;min-height:44px}.boss-bar{top:calc(60px + env(safe-area-inset-top));left:29%;width:42%}.choice-panel,.pause-panel,.result-panel,.evolution-panel{width:100%}.choice-panel h2,h2{font-size:23px;letter-spacing:1px}.cards{flex-direction:column;gap:10px;margin-top:12px}.upgrade-card{width:100%;min-height:0;padding:14px 16px}.card-icon{float:left;font-size:26px;margin:0 12px 0 0}.card-number{display:none}.upgrade-card h3{font-size:18px;margin:8px 0}.upgrade-card p{margin:5px 0}.stat-change{font-size:20px;margin:8px 0}.evolution-recipe{margin-top:6px;padding-top:6px}.evolution-recipe>span,.evolution-recipe small{display:none}.choice-footer{flex-wrap:wrap;gap:10px;margin-top:12px}.choice-footer kbd{display:none}.result-stats{gap:20px;flex-wrap:wrap;margin:20px 0}.primary{min-width:0;max-width:100%;gap:16px}.debug-panel{padding:12px;width:100%}.debug-panel header{gap:8px}.debug-toolbar{gap:6px}.debug-toolbar input{width:100%;min-width:0}}@media(pointer:coarse)and (max-height:500px){.title-content{top:14%}.title-content h1{font-size:30px;margin:6px 0}.title-line,.title-content>p,.title-content>.eyebrow{display:none}.title-visual{left:60%;top:10%}.title-footer{left:55%;border:0;gap:12px}.cards{flex-direction:row}.upgrade-card{width:33.333%}.guide{bottom:12px}.inventory{opacity:.55}.combat-info{top:auto}}.item-icon{width:48px;height:48px;object-fit:contain;image-rendering:pixelated;vertical-align:middle;flex-shrink:0}.card-icon .item-icon{width:64px;height:64px}.debug-item-title>b{display:flex;align-items:center;gap:8px}.slot .item-icon{width:24px;height:24px}.recipes .item-icon{width:28px;height:28px}@media(max-width:700px),(pointer:coarse)and (max-height:500px){.card-icon .item-icon{width:48px;height:48px}.slot .item-icon{width:18px;height:18px}.debug-item-title .item-icon{width:36px;height:36px}}.teaser-gate{position:absolute;inset:0;width:100%;height:100%;display:grid;place-items:center;padding:24px;background:#071326;color:#b6cfc9;font-family:Shippori Mincho Title,Yu Mincho,serif;font-size:14px;font-weight:400;letter-spacing:.22em;-webkit-tap-highlight-color:transparent}.teaser-gate span{opacity:.78;animation:teaser-fade-in 1.6s ease-out both}.teaser-gate:hover{filter:none}.teaser-gate:focus-visible{outline:1px solid #b6cfc94d;outline-offset:-12px}.teaser-reveal{opacity:0}.teaser-reveal:has(.title-art[data-ready=true]),.teaser-reveal:has(.title-art[data-ready=error]){animation:teaser-fade-in 1.6s ease-out both}@keyframes teaser-fade-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.teaser-gate span,.teaser-reveal:has(.title-art[data-ready]){animation:none}.teaser-reveal:has(.title-art[data-ready]){opacity:1}}@font-face{font-family:Shippori Mincho Title;src:url(/assets/fonts/shippori-mincho/title-regular.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}.overlay.title{background:#071326;-webkit-backdrop-filter:none;backdrop-filter:none;overflow:auto}.title-scene{position:relative;isolation:isolate;height:100%;min-height:540px;overflow:hidden}.title-art,.title-background,.title-cubes,.title-light-core,.title-light-halo,.title-backlight{position:absolute;inset:0;width:100%;height:100%;z-index:-1;image-rendering:pixelated}.title-cubes{filter:brightness(.5);pointer-events:none}.title-light-core,.title-light-halo,.title-backlight{mix-blend-mode:screen;pointer-events:none}.title-backlight{image-rendering:auto}.title-menu{z-index:1;position:absolute;left:56%;right:5%;top:50%;transform:translateY(-50%);text-align:center;color:#edf9f4;text-shadow:0 2px 14px #061529}.title-menu h1,.story-scene[data-opening=black] .story-text.aurora-title{--title-name-size: clamp(49px, 5.4vw, 101px);font-family:Shippori Mincho Title,Yu Mincho,serif;margin:24px 0 18px;font-weight:700;font-size:calc(var(--title-name-size) / 2);letter-spacing:.13em;line-height:1.6;white-space:nowrap}.title-menu h1 span,.aurora-title span{display:block;font-size:2em;letter-spacing:.24em;padding-left:.24em;color:#e1f8ed;line-height:1.3}.title-divider{display:flex;align-items:center;gap:14px;width:60%;margin:22px auto;color:#a6dbd8;font-size:14px}.title-divider:before,.title-divider:after{content:"";height:1px;flex:1;background:#a6dbd870}.title-start{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:min(100%,260px);min-width:0;min-height:58px;padding:9px 20px;border:0;border-radius:0;background:transparent;box-shadow:none;color:#d9eee8;font-family:Shippori Mincho Title,Yu Mincho,serif;font-size:19px;font-weight:400;letter-spacing:.24em;line-height:1.5;-webkit-tap-highlight-color:transparent;transition:color .4s ease}.title-start:hover,.title-start:active{background:transparent;box-shadow:none;filter:none;transform:none;color:#f0fff6}.title-menu-label{display:block;padding-left:.24em;text-shadow:var(--title-text-edge, 0 0 0 transparent),0 0 9px #a6e3de55,0 0 24px #a6e3de22;animation:title-text-glimmer 6s ease-in-out infinite;transition:text-shadow .4s ease,transform .4s ease}.title-start:nth-child(2) .title-menu-label{animation-delay:-3s}.title-menu-caption{color:#b7d4d0;font-size:9px;font-weight:400;letter-spacing:.3em;text-transform:uppercase;opacity:.65}.title-start:after{content:"";position:absolute;bottom:3px;left:32%;right:32%;height:1px;background:linear-gradient(90deg,transparent,#cbf7e788,transparent);opacity:0;transform:scaleX(.6);transition:opacity .4s ease,transform .4s ease}.title-start:hover .title-menu-label,.title-start:focus-visible .title-menu-label{animation:none;transform:translateY(-1px);text-shadow:var(--title-text-edge, 0 0 0 transparent),0 0 8px #d4fff3aa,0 0 22px #9be9dc66}.title-start:focus{outline:none}.title-start:hover:after,.title-start:focus-visible:after{opacity:1;transform:scaleX(1)}@keyframes title-text-glimmer{0%,to{text-shadow:var(--title-text-edge, 0 0 0 transparent),0 0 9px #a6e3de44,0 0 24px #a6e3de11}50%{text-shadow:var(--title-text-edge, 0 0 0 transparent),0 0 12px #c8fff080,0 0 28px #a6e3de33}}.title-actions{display:grid;justify-items:center;gap:14px}@media(orientation:portrait){[data-layout=stacked] .title-actions{position:absolute;left:8%;bottom:max(68px,calc(env(safe-area-inset-bottom) + 60px));width:84%;pointer-events:auto}[data-layout=stacked] .title-actions .title-start{position:static;width:100%}}.title-bottom button{min-width:44px}.title-bottom{position:absolute;bottom:3%;left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:10px;letter-spacing:2px;color:#acc8d2}.title-bottom button{min-height:44px;padding:8px 2px;border:0;border-radius:0;background:transparent;box-shadow:none;color:#b7d1ce;font-family:Shippori Mincho Title,Yu Mincho,serif;font-size:12px;font-weight:400;letter-spacing:.18em;text-shadow:0 0 12px #a6e3de44;transition:color .4s ease,text-shadow .4s ease}.title-bottom button:hover,.title-bottom button:focus-visible{color:#e4fff3;filter:none;transform:none;text-shadow:0 0 10px #bcefe5aa}.title-sound-state{margin-left:5px;font-size:9px;letter-spacing:.12em}@media(prefers-reduced-motion:reduce){.title-menu-label{animation:none}.title-start,.title-menu-label,.title-start:after,.title-bottom button{transition:none}}@media(max-height:650px)and (min-width:701px){.title-scene{min-height:360px}.title-menu h1{--title-name-size: 42px;margin:8px 0}.title-divider{margin:10px auto}.title-start{padding:12px 20px}}@media(max-height:450px){.title-scene{min-height:320px}.title-menu{top:46%}.title-menu h1{--title-name-size: 38px;margin:8px 0}.title-kicker,.title-divider,.title-bottom>span{display:none}}.title-portrait-slot{display:none}.title-scene[data-layout=stacked]{height:auto;min-height:100%;display:flex;flex-direction:column;align-items:center;padding:max(12px,env(safe-area-inset-top)) 20px max(12px,env(safe-area-inset-bottom))}[data-layout=stacked] .title-portrait-slot{display:block;width:100%;height:min(86vw,42svh);min-height:200px;flex:none;margin:8px 0 12px}[data-layout=stacked] .title-menu{position:relative;left:auto;right:auto;top:auto;transform:none;width:100%;max-width:420px}[data-layout=stacked] .title-menu h1{--title-name-size: clamp(35px, 9vw, 51px);letter-spacing:.12em;margin:10px 0 8px;line-height:1.35}[data-layout=stacked] .title-menu h1 span{line-height:1.2}[data-layout=stacked] .title-divider{display:flex;width:140px;margin:12px auto}[data-layout=stacked] .title-start{--title-text-edge: 0 1px 2px #020b18, 0 0 5px #020b18;min-height:64px;padding:8px 20px;color:#f3fff9;font-size:22px;letter-spacing:.16em}[data-layout=stacked] .title-menu-label{padding-left:.16em}[data-layout=stacked] .title-menu-caption{color:#d6e7e4;font-size:11px;letter-spacing:.2em;text-shadow:0 1px 3px #020b18;opacity:1}[data-layout=stacked] .title-bottom{position:relative;bottom:auto;left:auto;right:auto;width:100%;max-width:480px;flex-wrap:wrap;gap:0;margin-top:auto;padding-top:22px}[data-layout=stacked] .title-bottom>span{display:none}[data-layout=stacked] .title-bottom button{color:#e4f1ec;font-size:13px;letter-spacing:1px;text-shadow:0 1px 3px #020b18}[data-layout=stacked] .title-sound-state{font-size:11px}@media(orientation:portrait){.title-scene[data-layout=stacked]{height:100%;min-height:540px;display:block;padding:0}.title-scene[data-layout=stacked]:not(.teaser-reveal):after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(to bottom,transparent 40%,#0410204d 52%,#041020d9 66%,#041020f5 86%,#041020fa 100%)}[data-layout=stacked] .title-art,[data-layout=stacked] .title-backlight{-webkit-mask-image:linear-gradient(to bottom,#000 66%,transparent 84%);mask-image:linear-gradient(to bottom,#000 66%,transparent 84%)}[data-layout=stacked] .title-portrait-slot{position:absolute;top:19%;left:2%;width:124%;height:min(124vw,64svh);min-height:0;margin:0}[data-layout=stacked] .title-menu{position:absolute;inset:0;width:100%;max-width:none;pointer-events:none}[data-layout=stacked] .title-menu h1{isolation:isolate;position:absolute;top:max(8%,calc(env(safe-area-inset-top) + 20px));left:7%;margin:0;writing-mode:vertical-rl;text-orientation:upright;--title-name-size: clamp(36px, 10vw, 48px);line-height:1.65;letter-spacing:.2em;text-align:left;pointer-events:auto;text-shadow:0 1px 2px #021020,0 0 6px #021020,0 0 32px #021020}[data-layout=stacked] .title-menu h1:before{content:"";position:absolute;inset:-48px -34px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse closest-side at center,#040f1edb,#040f1ebd 42%,#040f1e52 70%,#040f1e00)}[data-layout=stacked] .title-menu h1 span{line-height:1.4;letter-spacing:.18em;padding:0;margin-top:.9em}[data-layout=stacked] .title-divider{display:none}[data-layout=stacked] .title-start{pointer-events:auto}[data-layout=stacked] .title-bottom{position:absolute;left:5%;right:5%;bottom:max(8px,env(safe-area-inset-bottom));width:auto;max-width:none;margin:0;padding:0}}.title-heading-space{height:58px}.title-menu{transition:opacity .65s ease}.title-menu-mask{position:absolute;z-index:0;left:0;right:0;bottom:0;height:32%;pointer-events:none;background:linear-gradient(to bottom,transparent,#01060bc4 32%,#01060bf5 70%,#01060bfa);transition:height .75s cubic-bezier(.22,.61,.36,1)}.title-entry,.title-submenu{position:absolute;z-index:2;left:56%;right:5%;bottom:11%;display:grid;justify-items:center;pointer-events:auto}.title-entry{transition:opacity .35s ease}.title-wake{isolation:isolate}.title-scene:not([data-layout=stacked]) .title-wake{width:min(100%,300px);padding:9px 20px;font-size:28px}.title-scene:not([data-layout=stacked]) .title-wake-caption{font-size:11px}@media(max-height:500px){.title-scene:not([data-layout=stacked]) .title-wake{font-size:24px}}.title-wake-particles{position:absolute;z-index:-1;inset:-26px -12px;pointer-events:none}.title-wake-particles i{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:50%;background:radial-gradient(circle,#fff8dfb3,#d4f3dc55 32%,transparent 72%);box-shadow:0 0 8px 2px #d5f4dc22;filter:blur(.6px);opacity:0;animation:title-wake-drift var(--duration) var(--delay) ease-in-out infinite}@keyframes title-wake-drift{0%,to{opacity:0;transform:translate(0) scale(.75)}30%{opacity:.65}65%{opacity:.4}to{transform:translate(var(--dx),var(--dy)) scale(1.15)}}.title-wake-caption{color:#b7d4d0;font-size:9px;font-weight:400;line-height:1.4;letter-spacing:.28em;padding-left:.28em;opacity:.6;pointer-events:none}.title-wake .title-menu-label{animation:none;opacity:1}.title-scene{-webkit-user-select:none;user-select:none}.title-scene button{-webkit-tap-highlight-color:transparent}.title-submenu{visibility:hidden;opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .45s ease,transform .65s ease}.title-submenu-slots{display:grid;grid-template-rows:repeat(4,58px);gap:10px;width:100%;justify-items:center}.title-submenu-space{width:100%}.title-menu-back{min-height:32px;margin-top:12px;color:#b7d4d0;font-family:Shippori Mincho Title,Yu Mincho,serif;font-size:12px;letter-spacing:.2em}.title-submenu .title-start:disabled{opacity:.35;cursor:default}.title-submenu .title-start:disabled .title-menu-label{animation:none}.title-scene[data-menu-open=true] .title-menu-mask{height:108%}.title-scene[data-menu-open=true] .title-entry{opacity:0;visibility:hidden;pointer-events:none}.title-scene[data-menu-open=true] .title-menu{opacity:.14}.title-scene[data-menu-open=true] .title-submenu{visibility:visible;opacity:1;transform:none;pointer-events:auto;transition-delay:.15s,.15s}.title-bottom{z-index:3}.title-mode-confirm{width:min(540px,calc(100vw - 36px));max-height:calc(100dvh - 40px);padding:36px 24px;border:0;background:transparent;color:#dfede6;text-align:center;font-family:Shippori Mincho Title,Yu Mincho,serif;text-shadow:0 1px 8px #021020}.title-mode-confirm::backdrop{background:#030b16dc;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.title-mode-confirm h2{margin:0 0 24px;font-size:clamp(24px,5vw,32px);font-weight:400;letter-spacing:.12em}.title-mode-confirm p{margin:0;font-size:16px;line-height:1.9;letter-spacing:.06em}.title-mode-actions{display:flex;justify-content:center;gap:36px;margin-top:30px}.title-mode-actions button{min-width:64px;min-height:44px;padding:8px;font:inherit;font-size:18px;color:#c8dfd4;letter-spacing:.12em}.title-mode-actions button:hover{color:#f1fff7;text-shadow:0 0 16px #b8ead780}[data-layout=stacked] .title-entry,[data-layout=stacked] .title-submenu{left:8%;right:8%;bottom:max(70px,calc(env(safe-area-inset-bottom) + 60px))}[data-layout=stacked] .title-submenu-slots{grid-template-rows:repeat(4,54px);gap:8px}[data-layout=stacked] .title-submenu .title-start{min-height:54px}.title-scene[data-layout=stacked]:not(.teaser-reveal):after{content:none}@media(orientation:portrait){[data-layout=stacked] .title-art,[data-layout=stacked] .title-backlight{-webkit-mask-image:linear-gradient(to bottom,#000 75%,transparent 92%);mask-image:linear-gradient(to bottom,#000 75%,transparent 92%)}}@media(max-height:500px){.title-entry,.title-submenu,[data-layout=stacked] .title-entry,[data-layout=stacked] .title-submenu{bottom:58px}.title-submenu-slots,[data-layout=stacked] .title-submenu-slots{grid-template-rows:repeat(4,40px);gap:4px}.title-submenu .title-start,[data-layout=stacked] .title-submenu .title-start{min-height:40px;padding-block:3px}}@media(orientation:landscape)and (max-height:500px){.title-scene[data-layout=stacked]{height:100%;min-height:320px;display:block;padding:0}[data-layout=stacked] .title-portrait-slot{position:absolute;left:0;top:0;width:48%;height:100%;min-height:0;margin:0}[data-layout=stacked] .title-menu{position:absolute;left:52%;right:3%;top:6%;width:auto}[data-layout=stacked] .title-entry,[data-layout=stacked] .title-submenu{left:52%;right:3%}[data-layout=stacked] .title-bottom{position:absolute;left:5%;right:5%;bottom:8px;width:auto;margin:0;padding:0}}@media(prefers-reduced-motion:reduce){.title-menu,.title-menu-mask,.title-entry,.title-submenu{transition:none}}@media(prefers-reduced-motion:reduce){.title-wake-particles i{animation:none;opacity:.3}}.overlay.story{display:block;padding:0;background:#07111d;overflow:auto}.story-scene{isolation:isolate;position:relative;width:100%;height:100%;min-height:540px;overflow:hidden;color:#eaf5ef;display:flex;flex-direction:column;background:#091321}.story-backdrop{position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,#07122150,#08132180 50%,#060d19),var(--story-background) center/cover;image-rendering:pixelated}.story-scene:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#06122166,transparent 45%,#06122166);pointer-events:none}.story-header{display:flex;align-items:center;justify-content:space-between;padding:24px 4vw;gap:16px;font-size:12px;letter-spacing:2px;color:#bad7d5}.story-header i{font-style:normal;margin:0 12px;opacity:.4}.story-scene button{font-family:inherit;cursor:pointer}.story-controls button{border:0;color:#81938e;background:none;border-radius:0;min-height:44px;min-width:44px;padding:8px 6px;font-size:15px;letter-spacing:.08em}.story-controls button:hover{color:#a4b8af}.story-controls button:disabled{opacity:.4;cursor:default}.story-stage{position:relative;flex:1;min-height:0;margin:0 5vw}.story-portrait{position:absolute;bottom:0;transition:filter .3s,opacity .3s;pointer-events:none}.story-portrait img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated}.story-girl{left:0;width:49%;height:100%;transform-origin:bottom center}.story-skull{right:18%;bottom:30%;width:98px;height:121px}.story-skull img{position:relative;animation:story-float 5s ease-in-out infinite}.story-skull-light{position:absolute;inset:-40%;background:radial-gradient(ellipse,#86efcf22,transparent 67%);border-radius:50%}[data-speaker=skull] .story-girl>:is(img,.story-fracture-silhouette),[data-speaker=girl] .story-skull>:is(img,.story-fracture-silhouette),:is([data-speaker=demeter],[data-speaker=unknown]) :is(.story-girl,.story-skull)>:is(img,.story-fracture-silhouette){filter:brightness(.42)}.story-dialogue{position:relative;z-index:2;flex:none;width:92%;max-width:1360px;margin:0 auto max(28px,env(safe-area-inset-bottom));padding:22px 32px 16px;min-height:215px;border:1px solid #82c2b86b;background:linear-gradient(115deg,#0a2029f5,#0a1425f5);box-shadow:0 18px 70px #0008,inset 0 1px #d9fff31c}.story-dialogue:before{content:"";position:absolute;left:-1px;top:24px;width:3px;height:33px;background:#b0e9d8}.story-dialogue-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.story-speaker{font-size:19px;letter-spacing:.16em;margin:0;color:#caeee2;font-weight:500}.story-controls{display:flex;gap:8px}.story-auto[aria-pressed=true]{color:#98b0a5;text-decoration:underline;text-underline-offset:5px}.story-advance{display:block;position:relative;border:0;background:none;color:inherit;text-align:left;font-weight:400;width:100%;min-height:128px;padding:20px 0 32px;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.story-advance:hover{filter:none}.story-advance:focus:not(:focus-visible){outline:none}.story-text{white-space:pre-wrap;font-size:clamp(16px,1.45vw,22px);letter-spacing:.07em;line-height:1.9}.story-next{position:absolute;right:0;bottom:0;font-size:14px;color:#a4c5c5;letter-spacing:2px;animation:story-next-blink 1.2s ease-in-out infinite}@keyframes story-next-blink{0%,to{opacity:1}50%{opacity:.2}}.story-log{width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 48px);padding:24px;border:1px solid #82c2b85c;background:#08151df5;color:#eaf5ef;box-shadow:0 20px 80px #0009}.story-log[open]{display:flex;flex-direction:column}.story-log::backdrop{background:#02070dbb}.story-log header{display:flex;align-items:center;justify-content:space-between;gap:20px;flex:none;padding-bottom:16px;border-bottom:1px solid #82c2b833}.story-log h2{margin:0;font-size:16px;font-weight:400;letter-spacing:.12em}.story-log-close{min-height:44px;min-width:44px;padding:6px;border:0;background:none;color:#d2e8e2;font-size:15px}.story-log-entries{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-top:20px}.story-log article+article{margin-top:28px}.story-log h3{margin:0 0 8px;color:#b9e4d5;font-size:14px;font-weight:500}.story-log p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;line-height:1.9}.story-accessible{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.story-scene button:focus-visible{outline:2px solid #d9fff0;outline-offset:5px}@keyframes story-float{50%{transform:translateY(-10px)}}@media(max-width:700px){.story-scene{min-height:560px}.story-header{padding:12px 16px;font-size:10px;gap:8px;letter-spacing:0}.story-header i{margin:0 4px}.story-count{display:none}.story-stage{margin:0;min-height:180px}.story-girl{left:-12%;width:87%;height:100%;bottom:0}.story-skull{right:6%;width:min(98px,25vw);height:auto;aspect-ratio:98 / 121;bottom:30%}.story-dialogue{width:calc(100% - 24px);padding:16px 18px 12px;min-height:225px;margin-bottom:max(12px,env(safe-area-inset-bottom))}.story-speaker{font-size:16px}.story-controls{gap:5px}.story-controls button{font-size:14px;padding:7px 4px;letter-spacing:0}.story-text{font-size:16px;line-height:1.85}.story-advance{min-height:145px;padding-top:15px}.story-next{font-size:14px}}@media(max-height:500px)and (min-width:701px){.story-scene{min-height:360px}.story-header{padding:8px 24px}.story-stage{min-height:0}.story-girl{height:260px;bottom:-140px;width:43%}.story-skull{width:98px;height:121px;right:18%;bottom:10%}.story-dialogue{min-height:150px;padding:8px 24px;margin-bottom:12px}.story-advance{min-height:82px;padding:10px 0 22px}.story-text{font-size:16px}}@media(prefers-reduced-motion:reduce){.story-next{animation:none}.story-portrait{transition:none}.story-skull img{animation:none}}.story-construction{position:absolute;left:-90px;top:-90px;width:calc(100% + 180px);height:calc(100% + 180px);pointer-events:none;image-rendering:pixelated;z-index:1}.story-portrait[data-presence=absent]{visibility:hidden}.story-monster{right:0;bottom:3%;width:clamp(96px,18vw,200px);aspect-ratio:1;z-index:2}.story-monster canvas{width:100%;height:100%;image-rendering:pixelated}[data-speaker=unknown] .story-monster{filter:none}.story-flash{position:absolute;inset:-20%;z-index:3;opacity:0;pointer-events:none;background:linear-gradient(145deg,#f4ffff,#b0ffe9 48%,#fff,#c8ffff 52%,#f4ffff)}.story-monster-cube{width:8%;height:10%;opacity:0}.story-monster-cube,.story-character-cube,.story-world-cube{position:absolute;pointer-events:none;z-index:5;--cube-surface: linear-gradient( 135deg, #ffffffa0, transparent 35%, #ffafff55 65%, #aaffde88 ), conic-gradient( from 30deg at 50% 50%, #7679e8 0 120deg, #63dfce 120deg 240deg, #f5d3ff 240deg );filter:drop-shadow(0 0 3px #e5ffff) drop-shadow(0 0 7px #c2adff)}.story-character-cube:nth-child(3n),.story-world-cube:nth-child(3n){--cube-surface: linear-gradient(135deg, #ffffffbb, transparent 45%, #c0fffa99), conic-gradient( from 30deg at 50% 50%, #dc89d6 0 120deg, #879fed 120deg 240deg, #f8f1be 240deg )}.story-monster-cube:before,.story-character-cube:before,.story-world-cube:before{content:"";position:absolute;inset:0;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);background:var(--cube-surface)}.story-light-particle:before{display:none}.story-world-cube{width:22px;height:27px}.story-ending-light,.story-darkness{position:absolute;inset:-20%;pointer-events:none;opacity:0;z-index:4}.story-ending-light{inset:0;z-index:0;background:#f4fcff}.story-darkness{background:#020713;z-index:6}.story-chapter-break{position:absolute;inset:0;z-index:100;background:#000;opacity:0;pointer-events:auto}.story-scene[data-opening=black] .story-dialogue{position:absolute;inset:0;z-index:101;display:grid;place-items:center;width:100%;max-width:none;height:100%;margin:0;padding:28px;border:0;background:none;box-shadow:none}.story-scene[data-opening=black] .story-dialogue:before,.story-scene[data-opening=black] .story-speaker{display:none}.story-scene[data-opening=black] .story-dialogue-top{position:absolute;bottom:max(24px,env(safe-area-inset-bottom));right:24px}.story-scene[data-opening=black] .story-advance{flex:none;justify-content:center;width:min(100%,900px);min-height:180px;text-align:center}.story-scene[data-opening=black] .story-text{height:auto;overflow:visible;font-size:clamp(20px,2.2vw,30px);line-height:2;color:#edf7f2;text-shadow:0 0 20px #c3f6df40}.story-scene[data-opening=black] .story-header{z-index:102}.story-scene[data-opening=black] .story-header>span{visibility:hidden}.story-final-title{position:absolute;inset:0;display:grid;place-items:center;padding-left:.38em;color:#f4fff4;font-family:Shippori Mincho Title,Yu Mincho,serif;font-size:clamp(32px,6vw,64px);font-weight:400;letter-spacing:.38em;text-shadow:0 0 14px #deffe8aa,0 0 46px #b9e5d766;opacity:0}[data-speaker=demeter] .story-speaker{color:#b9f6ff}.story-wall-message{position:absolute;left:15%;right:15%;top:15%;text-align:center;font:clamp(16px,3vw,36px) monospace;letter-spacing:.15em;color:#c7e9e0;text-shadow:0 0 8px #b2fff688}.story-scene[data-world=repaired] .story-backdrop{filter:saturate(1.2) brightness(1.15)}.story-advance[hidden],.story-skip[hidden]{display:none}.story-choices{border:0;padding:10px 0;margin:0;display:flex;flex-wrap:wrap;gap:12px;flex:1;align-content:center}.story-choices legend{font-size:13px;padding-top:10px;color:#bce5dc}.story-choices button{flex:1 1 220px;border:1px solid #96cfbf;padding:16px;min-height:52px;color:#edfff7;background:#163b43;font-size:16px;text-align:left}.story-choices button:hover{background:#285b60}.overlay.ending-screen{background:#07121c;-webkit-backdrop-filter:none;backdrop-filter:none}.ending-panel{text-align:center;width:min(800px,94vw);padding:32px}.ending-panel h2{font:clamp(26px,5vw,48px) serif;color:#d9f5e6}.ending-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin-top:30px}.story-portrait[data-presence=building]{filter:none;transition:none}.story-portrait[data-presence=building] img{animation:none}.story-portrait:not([data-presence=present]) .story-skull-light{visibility:hidden}.story-dialogue{position:relative;margin:0 auto max(28px,env(safe-area-inset-bottom));height:280px;min-height:0;display:flex;flex-direction:column}.story-dialogue-top{flex:0 0 44px}.story-advance{display:flex;flex-direction:column;justify-content:flex-start;flex:1;min-height:0}.story-text{display:block;width:100%;height:3lh;flex:none;overflow-y:auto;overflow-wrap:anywhere;scrollbar-width:thin}@media(max-width:700px){.story-dialogue{height:298px;margin:0 auto max(12px,env(safe-area-inset-bottom));min-height:0}.story-advance{min-height:0}.story-text{height:5lh}}@media(max-height:500px)and (min-width:701px){.story-dialogue{height:224px;margin:0 auto 12px;min-height:0}.story-advance{min-height:0}}.story-stage{z-index:1}.story-header{position:relative;z-index:2}.story-skull{transition:right .85s ease-out,filter .3s}.story-scene[data-enemy=present] .story-skull{right:38%}.story-fracture-silhouette{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;image-rendering:pixelated}.story-portrait[data-fracture] .story-skull-light{visibility:hidden}.story-portrait[data-fracture] img{animation:none}.story-light-particle{clip-path:none;border-radius:50%;background:#e5ffff;box-shadow:0 0 8px 3px #b8faff}.story-backdrop{container-type:size}.story-backdrop:after{content:"";position:absolute;inset:0;opacity:0;background:var(--story-background) center/cover;filter:brightness(2.3) drop-shadow(0 0 20px #baffff);--art-width: max(100cqw, 177.68cqh);--art-height: max(56.28cqw, 100cqh);-webkit-mask-image:radial-gradient(circle at calc(50% - var(--art-width) * .062) calc(50% - var(--art-height) * .344),#000 0,#000 calc(var(--art-width) * .065),transparent calc(var(--art-width) * .105));mask-image:radial-gradient(circle at calc(50% - var(--art-width) * .062) calc(50% - var(--art-height) * .344),#000 0,#000 calc(var(--art-width) * .065),transparent calc(var(--art-width) * .105));transition:opacity .4s}.story-scene[data-moon=speaking] .story-backdrop:after{opacity:1;animation:story-moon-glow 2s ease-in-out infinite alternate}@keyframes story-moon-glow{to{opacity:.6}}@media(max-width:700px){.story-scene[data-enemy=present] .story-skull{right:36%}}@media(prefers-reduced-motion:reduce){.story-skull,.story-backdrop:after{transition:none}.story-scene[data-moon=speaking] .story-backdrop:after{animation:none}}.story-character-cube{animation:story-cube-drift 3s ease-in-out infinite alternate;opacity:.8}@keyframes story-cube-drift{0%{translate:calc(var(--sway-x) * -1) calc(var(--sway-y) * -.5)}to{translate:var(--sway-x) var(--sway-y)}}.story-character-cube.story-light-particle{animation:none}@media(prefers-reduced-motion:reduce){.story-character-cube{animation:none}}.story-world-dissolution{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}.story-world-tile{position:absolute;background-image:var(--world-texture)}.story-scene[data-farewell=true] :is(.story-header,.story-dialogue){opacity:0;pointer-events:none;transition:opacity .9s ease}.story-scene[data-farewell=true][data-opening=black] .story-dialogue{opacity:1;pointer-events:auto}.story-scene[data-opening=black] .story-text.aurora-title{font-size:var(--title-name-size)}.story-text.aurora-title>span{font-size:1em;letter-spacing:.13em;padding-left:.13em;line-height:1.6;opacity:0}@media(max-width:700px){.story-scene[data-opening=black] .story-text.aurora-title{--title-name-size: clamp(36px, 10vw, 48px)}}.story-awakening{position:absolute;inset:0;z-index:110;overflow:hidden;background:#000}.story-awakening-view,.story-awakening-white{position:absolute;inset:0}.story-awakening-lids{position:absolute;inset:-8px;filter:blur(4px)}.story-awakening-view{overflow:hidden;background:radial-gradient(ellipse at 50% 25%,#fffdf0,#e3eee3 60%,#c6ddd9);clip-path:ellipse(70% 0% at 50% 50%)}.story-awakening-outside{width:100%;height:100%;object-fit:cover;object-position:75% center;image-rendering:auto;filter:blur(18px) brightness(.95);transform:scale(1.08)}.story-awakening-white{background:#fff;opacity:0}.ending-from-white:after{content:"";position:fixed;inset:0;z-index:110;pointer-events:none;background:#fff;animation:story-ending-reveal 1.8s ease-out both}@keyframes story-ending-reveal{0%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.story-scene[data-farewell=true] :is(.story-header,.story-dialogue){transition:none}.ending-from-white:after{animation:none;opacity:0}}
