:root{--design-w: 1080;--design-h: 1960;--phone-width: min(100vw, calc(100dvh * var(--design-w) / var(--design-h)));--phone-height: min(100dvh, calc(100vw * var(--design-h) / var(--design-w)));--text-serif: "Daring Source Han Serif CN ExtraLight", "Source Han Serif SC ExtraLight", "Source Han Serif CN ExtraLight", "Source Han Serif SC", "Source Han Serif CN", "Noto Serif CJK SC", "Noto Serif SC", "Songti SC", STSong, SimSun, serif;--regular-serif: "Daring Source Han Serif CN Regular", "Source Han Serif SC", "Source Han Serif CN", "Noto Serif CJK SC", "Noto Serif SC", "Songti SC", STSong, SimSun, serif;--bold-serif: "Daring Source Han Serif CN Bold", "Source Han Serif SC Bold", "Source Han Serif CN Bold", "Source Han Serif SC", "Source Han Serif CN", "Noto Serif CJK SC", "Noto Serif SC", "Songti SC", STSong, SimSun, serif;--title-serif: "Daring Source Han Serif CN Heavy", "Source Han Serif SC Heavy", "Source Han Serif CN Heavy", "Source Han Serif SC", "Noto Serif CJK SC", "Noto Serif SC", "Songti SC", STSong, SimSun, serif;--serif-font: var(--text-serif)}@font-face{font-family:"Daring Source Han Serif CN ExtraLight";src:url(/assets/fonts/source-han-serif-cn-extralight.otf) format("opentype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:"Daring Source Han Serif CN Light";src:url(/assets/fonts/source-han-serif-cn-light.otf) format("opentype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:"Daring Source Han Serif CN Regular";src:url(/assets/fonts/source-han-serif-cn-regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Daring Source Han Serif CN Bold";src:url(/assets/fonts/source-han-serif-cn-bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:"Daring Source Han Serif CN Heavy";src:url(/assets/fonts/source-han-serif-cn-heavy.otf) format("opentype");font-weight:900;font-style:normal;font-display:swap}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-height:100dvh;display:grid;place-items:center;overflow:hidden;background:#11151b;font-family:var(--text-serif)}.fx-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;pointer-events:none}button{padding:0;border:0;background:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;cursor:pointer}.phone{position:relative;width:var(--phone-width);height:var(--phone-height);overflow:hidden;background:#e7e1d8;isolation:isolate;transform-origin:center center}.phone.is-page-entering{animation:pageEnter .22s ease-out both}.phone.is-page-leaving{animation:pageLeave .14s ease-in both}.page-art{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none}.scene-bg{object-fit:cover;object-position:center center}.scene-bg-dialog{object-position:50% 50%}.scene-bg-entry{object-position:58% 50%}.page-comingSoon .page-art{top:-2.4%;right:-2.4%;bottom:-2.4%;left:-2.4%;width:104.8%;height:104.8%;object-fit:cover}.entry-bg-art,.entry-building-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;object-fit:cover;-webkit-user-select:none;user-select:none;pointer-events:none}.entry-bg-art{width:162%;max-width:none;transform:translate(-32%)}.entry-building-bg{width:185%;max-width:none;transform:translate(-41%)}.story-registration-bg{width:172%;transform:translate(-36%)}.history-bg-pure{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;object-fit:cover;-webkit-user-select:none;user-select:none;pointer-events:none}.history-bg-home{width:150%;max-width:none;transform:translate(-24%)}.history-bg-dialog{width:145%;max-width:none;transform:translate(-22%)}.entry-soft-light{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;background:radial-gradient(circle at 50% 28%,#ffffff8a,#fff0 27%),linear-gradient(180deg,#ffffff14,#fff8e826)}.entry-prompt{position:absolute;left:10.2%;top:21.85%;z-index:8;width:77.51%;min-height:14.9%;padding:6.25% 8.1% 5.2% 9.55%;border-radius:calc(var(--phone-width) * .024);color:#f7f4eedb;text-align:left;background:linear-gradient(140deg,#4f5b6ee6,#424e60e0 58%,#354050e3);border:calc(var(--phone-width) * .00204) solid rgba(225,214,205,.64);box-shadow:inset 0 0 0 calc(var(--phone-width) * .0013) #ffffff1f,0 calc(var(--phone-width) * .011) calc(var(--phone-width) * .026) #201c181f,0 0 calc(var(--phone-width) * .017) #f6c9c429;animation:promptCardIn .28s ease-out both}.entry-prompt-tall{min-height:17.8%;padding-top:6%}.entry-prompt-copy{display:block;position:relative;z-index:2;font-family:var(--text-serif);font-size:calc(var(--phone-width) * .0325);font-weight:200;line-height:1.48;letter-spacing:0;text-shadow:0 calc(var(--phone-width) * .001) calc(var(--phone-width) * .006) rgba(0,0,0,.16)}.entry-prompt-copy span{display:block}.entry-prompt-next{position:absolute;right:4.2%;top:56%;width:5.7%;aspect-ratio:1;transform:translateY(-50%);border-radius:50%;border:1px solid rgba(255,244,220,.76);box-shadow:inset 0 0 10px #ffffff47,0 0 16px #ffe5b147}.entry-prompt-next:before{content:"";position:absolute;left:48%;top:50%;width:28%;height:28%;border-top:2px solid rgba(255,248,230,.94);border-right:2px solid rgba(255,248,230,.94);transform:translate(-50%,-50%) rotate(45deg)}.entry-title-stage{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;pointer-events:none;animation:titleTextIn .52s ease-out both}.entry-title-stage:before{content:"";position:absolute;left:50%;top:76.5%;width:38%;aspect-ratio:1;border-radius:50%;pointer-events:none;transform:translate(-50%,-50%);box-shadow:0 0 34px #ffeab86b,0 0 70px #ffffff57;animation:startButtonAura 2.2s ease-in-out infinite}.entry-title-stage:after{content:"";position:absolute;left:50.3%;top:77.7%;z-index:3;width:48%;aspect-ratio:1;border-radius:50%;pointer-events:none;transform:translate(-50%,-50%);background:conic-gradient(from 0deg,#fff0 0,#fff0 56deg,#fff6d9eb 72deg,#dcb56980 92deg,#fff0 118deg,#fff0 360deg);-webkit-mask:radial-gradient(circle,transparent 0 45%,#000 47% 50%,transparent 53%);mask:radial-gradient(circle,transparent 0 45%,#000 47% 50%,transparent 53%);filter:drop-shadow(0 0 10px rgba(255,239,190,.76));opacity:.85;animation:startFlowRing 2.8s linear infinite}.entry-title-art{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.entry-start-button{position:absolute;left:31.5%;top:67.5%;z-index:4;width:37%;height:19%;pointer-events:auto;border-radius:50%}.entry-start-button:before{content:"";position:absolute;top:15%;right:15%;bottom:15%;left:15%;border-radius:50%;pointer-events:none;background:radial-gradient(circle,#fff5d757,#fff0 58%);box-shadow:0 0 18px #ffebb87a;animation:startButtonBreath 2.1s ease-in-out infinite}.entry-start-button img{position:relative;z-index:2;display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.entry-building-dialog{top:72%}.dialog-corner-icon{position:absolute;top:3.1%;z-index:8;width:8.7%;aspect-ratio:1;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 0 14px rgba(255,244,218,.54))}.dialog-corner-back-icon{left:5.1%}.dialog-corner-my-icon{right:5.1%}.history-corner-icon,.save-corner-icon{display:none}.dialog-character{position:absolute;z-index:2;display:block;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 16px 24px rgba(53,45,39,.18));animation:characterIn .34s ease-out both}.dialog-character-felix{left:24.5%;top:16.5%;width:53%;max-height:54%;object-fit:contain;object-position:top center;clip-path:inset(0 0 3% 0)}.story-dialog{position:absolute;left:5.65%;top:71.1%;z-index:5;width:92.7%;aspect-ratio:1000 / 330;pointer-events:none;filter:drop-shadow(0 12px 22px rgba(52,42,32,.14))}.story-dialog-art{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:fill;-webkit-user-select:none;user-select:none;pointer-events:none}.story-dialog-copy{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;color:#645736;font-family:var(--bold-serif);font-weight:700;letter-spacing:0;pointer-events:none}.story-dialog-speaker{position:absolute;left:20.4%;top:12.42%;width:21%;height:15.76%;display:flex;align-items:center;justify-content:center;color:#fff6e2;font-family:var(--bold-serif);font-size:calc(var(--phone-width) * .026);font-weight:700;line-height:1;text-align:center;white-space:nowrap;text-shadow:0 1px 7px rgba(57,45,35,.38)}.story-dialog-copy p{position:absolute;left:20.1%;right:8.5%;top:36.4%;margin:0;font-size:calc(var(--phone-width) * .026);line-height:1.43;text-shadow:0 1px 0 rgba(255,255,255,.58)}.story-dialog-copy span{display:block}.story-dialog-current .story-dialog-copy p{left:20.1%;right:8.5%;top:36.4%}.story-dialog-current .story-dialog-speaker{left:20.4%;top:12.42%;width:21%;height:15.76%}.story-dialog-npc .story-dialog-speaker{left:20.9%;top:11.6%;width:20.4%;height:15.4%}.story-dialog-npc .story-dialog-copy p{left:22.8%;right:9.8%;top:34.8%;font-size:calc(var(--phone-width) * .025);line-height:1.42}.story-dialog-player .story-dialog-copy{color:#645736}.story-dialog-player .story-dialog-copy p{left:10%;right:18%;top:35.8%;text-shadow:0 1px 0 rgba(255,255,255,.58)}.story-dialog-player .story-dialog-speaker{left:60.4%;top:12.42%;width:17%;height:15.76%;font-family:var(--bold-serif);font-size:calc(var(--phone-width) * .026)}.story-dialog-narration .story-dialog-copy{color:#fff5e3}.story-dialog-narration .story-dialog-copy p{left:8.5%;right:8%;top:29.1%;font-size:calc(var(--phone-width) * .022);line-height:1.42;text-shadow:0 1px 10px rgba(10,12,16,.35)}.registration-form-layer{position:absolute;left:8.5%;top:10.5%;z-index:4;width:83%;aspect-ratio:1122 / 1402;pointer-events:none;transform-origin:50% 50%;animation:registrationFormReveal .58s cubic-bezier(.18,.86,.26,1) both;filter:drop-shadow(0 18px 28px rgba(51,44,36,.2))}.registration-form-art{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;-webkit-user-select:none;user-select:none}.registration-form-name{position:absolute;left:20.5%;top:49.93%;z-index:2;width:57.22%;height:5.85%;color:#1f1b17;font-family:var(--bold-serif);font-size:calc(var(--phone-width) * .0355);font-weight:700;line-height:1;display:flex;align-items:center;justify-content:center;text-align:center;white-space:nowrap}.page-dialogPreview{background:radial-gradient(circle at 50% 9%,#fffffffa 0,#fffffffa 11%,#fff0 31%),linear-gradient(180deg,#edf4fb,#f7f2eb 48%,#e6ddcf)}.dialog-preview{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;overflow-y:auto;padding:8.5% 4.7% 9%;color:#493f35;-webkit-overflow-scrolling:touch}.dialog-preview:before{content:"";position:fixed;inset:auto 0 0;height:18%;pointer-events:none;background:linear-gradient(0deg,#e6ddcfeb,#e6ddcf00)}.dialog-preview-head{margin:0 0 5.2%;text-align:center;text-shadow:0 1px 0 rgba(255,255,255,.72)}.dialog-preview-head p{margin:0 0 1.7%;color:#9b7e58d9;font-family:var(--title-serif);font-size:clamp(11px,calc(var(--phone-width) * .032),17px);letter-spacing:.28em;text-transform:uppercase}.dialog-preview-head h1{margin:0;color:#6d5638;font-size:clamp(30px,calc(var(--phone-width) * .09),52px);font-family:var(--title-serif);font-weight:900;letter-spacing:0}.dialog-preview-list{display:grid;gap:4.2%}.dialog-template-card{padding:3.2% 2.4% 3.8%;border:1px solid rgba(186,158,117,.42);border-radius:10px;background:#fffcf794;box-shadow:inset 0 0 0 1px #ffffff6b,0 10px 24px #5848371a}.dialog-template-meta{display:flex;align-items:baseline;justify-content:space-between;gap:3%;padding:0 1.2% 2.4%}.dialog-template-meta strong{color:#554637;font-size:clamp(15px,calc(var(--phone-width) * .044),24px);font-family:var(--title-serif);font-weight:900;letter-spacing:0}.dialog-template-meta span{color:#52463cad;font-size:clamp(10px,calc(var(--phone-width) * .028),15px);letter-spacing:0;text-align:right}.dialog-template-card img{display:block;width:100%;height:auto;filter:drop-shadow(0 9px 16px rgba(87,71,52,.12));-webkit-user-select:none;user-select:none;pointer-events:none}.hotspot{position:absolute;z-index:10;border-radius:999px;outline:none}.hotspot:focus-visible,.prompt-card:focus-visible{box-shadow:0 0 0 2px #fff8e2f2,0 0 24px #e8c889c7}.home-settings,.home-mail,.home-my{top:3.4%;width:8.8%;height:4.9%}.home-settings{left:61.2%}.home-mail{left:73.3%}.home-my{left:85.5%}.home-story{left:5.4%;top:4.1%;width:16%;height:24.2%;border-radius:20px}.home-laptop,.home-module-center{left:34.8%;top:15%;width:13.6%;height:20.8%;border-radius:20px}.home-plot{left:38.4%;top:41.9%;width:27.8%;height:2.7%}.home-save{left:38.4%;top:45.2%;width:27.8%;height:2.7%}.story-chapter-1{left:46%;top:13.5%;width:48%;height:29%;border-radius:50%}.story-chapter-2{left:6%;top:30.4%;width:52%;height:31%;border-radius:50%}.home-profile,.home-module-right{left:77.6%;top:31%;width:13.6%;height:20.8%;border-radius:20px}.home-module-left-bottom{left:3.8%;top:43%;width:14.8%;height:21.5%;border-radius:20px}.home-progress{left:3.2%;top:65.4%;width:57.8%;height:8.4%;border-radius:18px}.home-player-card{left:1.8%;top:82%;width:49%;height:14.2%;border-radius:22px}.home-next{right:-1%;bottom:1.4%;width:45%;height:24%}.home-bag,.home-achievement,.home-dress,.home-phone{bottom:2%;width:9%;height:7%}.home-bag{left:36%}.home-achievement{left:46.5%}.home-dress{left:57%}.home-phone{left:67.5%}.entry-prompt-hit{left:10.2%;top:21.85%;width:77.6%;height:19%;border-radius:16px}.entry-prompt-side-hit{right:0;top:13.2%;width:43%;height:78.6%;border-radius:0}.history-frame-art{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.history-scroll{position:absolute;left:15.4%;top:30.7%;z-index:6;width:69.4%;height:54.8%;overflow-y:auto;padding:0 0 7%;color:#f7f4eee6;font-family:var(--regular-serif);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:none}.history-scroll::-webkit-scrollbar{display:none}.history-record{position:relative;margin:0 0 8.2%;padding:0;text-shadow:0 1px 6px rgba(7,10,15,.22)}.history-record-meta{display:flex;align-items:baseline;margin-bottom:3.3%;color:#f7f4eef0}.history-record-meta strong{position:relative;display:inline-block;padding-left:calc(var(--phone-width) * .045);font-family:var(--bold-serif);font-size:calc(var(--phone-width) * .03704);font-weight:700;line-height:1.12}.history-record-meta strong:before{content:"";position:absolute;left:0;top:50%;width:calc(var(--phone-width) * .0278);aspect-ratio:1;transform:translateY(-50%);background:#f7f4eeb8;clip-path:polygon(50% 0,63% 36%,100% 50%,63% 64%,50% 100%,37% 64%,0 50%,37% 36%)}.history-record p{margin:0;font-family:var(--regular-serif);font-weight:400;letter-spacing:0}.history-record-narration p{font-size:calc(var(--phone-width) * .03056);line-height:1.62}.history-record-speaker p{font-size:calc(var(--phone-width) * .02778);line-height:1.62;letter-spacing:0}.dialog-text-layer{position:absolute;left:7%;right:6%;top:70.7%;z-index:6;min-height:15.8%;padding:5.8% 7% 4.2%;color:#48413b;line-height:1.72;pointer-events:none;text-shadow:0 1px 0 rgba(255,255,255,.58)}.dialog-text-layer:before{content:"";position:absolute;top:8%;right:0;bottom:0;left:0;z-index:-1;border-radius:18px;background:#fffcf7c2;box-shadow:inset 0 0 18px #ffffff8c}.dialog-speaker{width:28%;min-width:96px;margin:-5.2% 0 4.8%;padding:.8% 5%;border-radius:999px;background:linear-gradient(90deg,#576477db,#e4dfd633);color:#fffdf8;font-family:var(--title-serif);font-size:clamp(18px,calc(var(--phone-width) * .048),28px);font-weight:900;line-height:1.18;text-align:center;letter-spacing:0;text-shadow:0 1px 8px rgba(33,38,45,.35)}.dialog-text-layer p{margin:0;font-family:var(--text-serif);font-size:clamp(17px,calc(var(--phone-width) * .04),28px);font-weight:200;line-height:1.68;letter-spacing:0}.dialog-back{left:2.8%;top:3.1%;width:14.8%;height:8%}.dialog-home{right:3%;top:3.2%;width:14.8%;height:8%}.dialog-hit{left:5.2%;right:24.8%;top:69.2%;height:20.4%;border-radius:calc(var(--phone-width) * .024)}.dialog-next-hit{right:5.8%;top:70.6%;z-index:36;width:17%;height:17.6%;border-radius:999px}.progress-dock{position:absolute;z-index:34;left:0;right:0;bottom:3.45%;height:calc(var(--phone-width) * 99 / 1082);transform:translate(2.1%);pointer-events:none}.progress-dock-art{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:fill;pointer-events:none;-webkit-user-select:none;user-select:none}.progress-action{position:absolute;z-index:2;padding:0;border:0;border-radius:0;background:transparent;opacity:1;pointer-events:auto}.progress-action-save{left:4.7%;top:0;width:17%;height:100%}.progress-action-history{right:4.7%;top:0;width:19%;height:100%}.history-hit,.save-hit{cursor:pointer}.history-return{top:0;right:0;bottom:0;left:0;width:100%;height:100%;border-radius:0}.history-back{left:2.8%;top:3.1%;width:14.8%;height:8%}.history-my,.ending-my{right:3%;top:3.2%;width:14.8%;height:8%}.preview-back{left:3.6%;top:2.9%;width:13.5%;height:7.5%;border-radius:999px;background:#fffdf894;box-shadow:inset 0 0 0 1px #b090606b,0 0 22px #fff4d780}.preview-back:before{content:"";position:absolute;left:39%;top:31%;width:28%;height:28%;border-left:2px solid rgba(116,89,57,.82);border-bottom:2px solid rgba(116,89,57,.82);transform:rotate(45deg)}.choice-progress-icons .progress-dock{bottom:3.45%}.choice-copy-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:7;font-family:var(--text-serif);letter-spacing:0}.choice-question{position:absolute;left:22.1%;right:11.2%;top:57.25%;margin:0;color:#645736;font-family:var(--regular-serif);font-size:clamp(15px,calc(var(--phone-width) * .027),20px);font-weight:200;line-height:1.46;text-shadow:0 1px 0 rgba(255,255,255,.58);pointer-events:none}.choice-question span{display:block}.choice-options-stack{position:absolute;left:9.3%;right:7.4%;top:68.95%;z-index:8;display:flex;flex-direction:column;gap:calc(var(--phone-height) * .0158)}.choice-options-4{top:67.95%;gap:calc(var(--phone-height) * .0122)}.choice-option-button{position:relative;width:100%;min-height:calc(var(--phone-height) * .0449);display:flex;align-items:center;padding:calc(var(--phone-height) * .008) 7.4% calc(var(--phone-height) * .008) 12.2%;border-radius:999px;background:transparent;color:#36291c;font-family:var(--regular-serif);font-size:clamp(15px,calc(var(--phone-width) * .029),19px);font-weight:400;line-height:1.22;text-align:left;text-shadow:0 1px 0 rgba(255,255,255,.45)}.choice-option-long{min-height:calc(var(--phone-height) * .054);font-size:clamp(14px,calc(var(--phone-width) * .027),18px)}.choice-option-button strong{position:absolute;left:1.1%;top:50%;width:7.4%;color:#fff;font-family:var(--bold-serif);font-size:clamp(16px,calc(var(--phone-width) * .031),21px);line-height:1;text-align:center;text-shadow:0 1px 5px rgba(31,22,14,.42);transform:translateY(-50%)}.choice-option-button span{display:block;width:100%;white-space:normal}.prompt-dismiss-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:42;border:0;padding:0;background:transparent;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.prompt-card{position:absolute;left:16%;top:38.4%;z-index:1;width:68%;aspect-ratio:500 / 140;border-radius:12px;display:block;animation:promptIn .18s ease-out both}.prompt-card img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;user-select:none}.prompt-card strong,.prompt-card span{position:absolute;left:22.5%;right:10%;display:block;overflow:hidden;text-align:left;letter-spacing:0;pointer-events:none}.prompt-card strong{top:33%;color:#1f1812;font-family:var(--bold-serif);font-size:clamp(11px,calc(var(--phone-width) * .022),18px);font-weight:700;line-height:1.15}.prompt-card span{top:57%;color:#6b5847;font-family:var(--regular-serif);font-size:clamp(9px,calc(var(--phone-width) * .017),14px);font-weight:400;line-height:1.2}.prompt-warning strong{color:#f2c4c4}.prompt-warning span{color:#bfa3a3}.prompt-card.is-leaving{animation:promptOut .18s ease-in both}.is-dialog-tapping .story-dialog-art{animation:dialogTapGlow .24s ease-out both}.tap-effect{position:fixed;z-index:100;width:118px;height:118px;transform:translate(-50%,-50%) scale(.7);pointer-events:none;filter:drop-shadow(0 0 14px rgba(255,236,178,.8));animation:tapGlow .72s ease-out forwards}.profile-dynamic-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;color:#fff0db;font-family:var(--regular-serif)}.profile-name{position:absolute;left:41.1%;top:24.9%;width:21.9%;height:2.75%;display:flex;align-items:center;justify-content:center;color:#fff2e0;font-family:var(--bold-serif);font-size:calc(var(--phone-width) * .023);font-weight:700;line-height:1;text-align:center;text-transform:uppercase}.profile-role{display:none}.profile-stats{position:absolute;top:0;right:0;bottom:0;left:0}.profile-stat-value{position:absolute;right:0;top:-22%;width:9%;color:#e2c38b;font-family:var(--bold-serif);font-size:calc(var(--phone-width) * .0222);font-weight:700;line-height:1;text-align:center}.profile-stat-row{position:absolute;left:35.46%;width:42.9%;height:.92%}.profile-stat-bar{position:absolute;left:0;top:0;width:86.3%;height:100%;overflow:visible;border-radius:999px}.profile-stat-fill{position:absolute;left:0;top:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#fff4de,#e5c17e 76%,#f8e7b8);box-shadow:0 0 10px #eecb853d}.profile-stat-dot{position:absolute;top:50%;width:3.1%;min-width:6px;aspect-ratio:1;border-radius:999px;transform:translate(-50%,-50%);background:#fff6e7;border:1px solid #cdaa6b;box-shadow:0 0 8px #fff6e773}.profile-stat-row-skill{top:42.96%}.profile-stat-row-comm{top:45.71%}.profile-stat-row-eff{top:48.47%}.profile-stat-row-presence{top:51.22%}.profile-stat-row-network{top:53.98%}.modal-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;background:#12161c57}.profile-edit-modal{position:absolute;left:3.8%;top:38%;width:92.4%;height:auto}.profile-confirm-modal{position:absolute;left:16.6%;top:38.4%;width:66.8%;height:auto}.profile-name-input{position:absolute;left:25.6%;top:44.2%;z-index:42;width:36.8%;height:3.55%;border:0;border-radius:999px;outline:none;background:transparent;color:#fff5e3;font-family:var(--regular-serif);font-size:calc(var(--phone-width) * .033);text-align:center}.profile-random-name{position:absolute;left:65.1%;top:44.88%;z-index:42;width:11.6%;height:2.1%;border:1px solid #e6c88f;border-radius:999px;background:#ffffff1a;color:#fff0da;font-family:var(--regular-serif);font-size:calc(var(--phone-width) * .0185);line-height:1;text-align:center}.profile-confirm-name{position:absolute;left:26%;top:48.6%;z-index:42;width:48%;color:#fff5e3;font-family:var(--bold-serif);font-size:calc(var(--phone-width) * .036);text-align:center}.profile-back{left:3.2%;top:3.2%;width:14%;height:7.6%}.profile-change-avatar{left:64.6%;top:18.9%;width:14.3%;height:2.05%}.profile-edit-confirm{left:28.65%;top:49.65%;width:8.9%;height:2.15%;z-index:45}.profile-edit-cancel{left:58.6%;top:49.65%;width:8.9%;height:2.15%;z-index:45}.profile-confirm-yes{left:32.1%;top:49.03%;width:8.9%;height:2.05%;z-index:45}.profile-confirm-no{left:57.4%;top:49.03%;width:8.9%;height:2.05%;z-index:45}.save-modal-layer{z-index:60}.save-confirm-modal{z-index:61}.save-modal-copy{position:absolute;left:24.5%;top:42.35%;z-index:62;width:51%;min-height:5.4%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--phone-width) * .006);color:#fff0db;text-align:center;font-family:var(--regular-serif);background:transparent;border-radius:0;pointer-events:none}.save-modal-copy strong{max-width:96%;overflow:hidden;color:#fff3de;font-family:var(--bold-serif);font-size:calc(var(--phone-width) * .026);font-weight:700;line-height:1.22;white-space:nowrap;text-overflow:ellipsis}.save-modal-copy span{max-width:92%;overflow:hidden;color:#fff0dac7;font-family:var(--regular-serif);font-size:calc(var(--phone-width) * .017);font-weight:400;line-height:1.3;white-space:nowrap;text-overflow:ellipsis}.save-modal-button{position:absolute;z-index:65;width:8.9%;height:2.05%;border:0;border-radius:0;background:transparent;color:#fff0da;font-family:var(--regular-serif);font-size:calc(var(--phone-width) * .0185);line-height:1;text-align:center}.save-modal-yes{left:32.1%;top:49.03%}.save-modal-no{left:57.4%;top:49.03%}.save-modal-yes.is-single{left:45.55%}.save-modal-no.is-hidden{display:none}.ending-card-list{position:absolute;left:16.66%;top:38.1%;z-index:5;width:66.67%;height:49%;overflow-y:auto;padding:0 0 8%;display:flex;flex-direction:column;gap:calc(var(--phone-height) * .0245);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:none;border-radius:calc(var(--phone-width) * .028)}.ending-extra-list{top:37.5%;height:49%;padding:0 0 8%;gap:clamp(6px,calc(var(--phone-height) * .004),9px)}.ending-card-list::-webkit-scrollbar{display:none}.save-card-list{position:absolute;left:18.15%;top:25.2%;z-index:5;width:62.96%;height:58.4%;overflow-y:auto;padding:0 0 10%;display:flex;flex-direction:column;gap:calc(var(--phone-width) * .02);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:none}.save-card-list::-webkit-scrollbar{display:none}.ending-card,.save-card{position:relative;flex:0 0 auto;width:100%;aspect-ratio:680 / 132;z-index:1;border:0;border-radius:calc(var(--phone-width) * .032);padding:0;background:transparent;color:#fff0db;font-family:var(--regular-serif);text-align:left;cursor:pointer}.save-card,.ending-extra-list .ending-card{aspect-ratio:720 / 180}.ending-card-frame{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:fill;pointer-events:none;-webkit-user-select:none;user-select:none}.ending-card-title,.ending-card-code,.ending-card-status{position:absolute;z-index:2;pointer-events:none}.ending-card-title{left:14.7%;top:32%;color:#fff0db;font-family:var(--bold-serif);font-size:calc(var(--phone-width) * .027)}.ending-card-code{left:14.7%;top:58%;color:#d8c095;font-family:"Cormorant Garamond",var(--regular-serif);font-size:calc(var(--phone-width) * .017);letter-spacing:0}.ending-card-status{right:7.5%;top:35%;color:#ead8b5;font-family:var(--regular-serif);font-size:calc(var(--phone-width) * .017)}.save-card .ending-card-title{width:62%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.save-card .ending-card-status{top:38%}.ending-extra-list .ending-card-title{left:16.7%;top:38.4%;width:52%;font-size:calc(var(--phone-width) * .0295);line-height:1;white-space:nowrap}.ending-extra-list .ending-card-code{left:16.7%;top:57.6%;font-size:calc(var(--phone-width) * .018);line-height:1;white-space:nowrap}.ending-extra-list .ending-card-status{right:11.8%;top:41.2%;font-size:calc(var(--phone-width) * .0185);line-height:1;white-space:nowrap}.ending-card.is-locked{cursor:default}.ending-card.is-locked .ending-card-frame{filter:grayscale(.55) brightness(.72);opacity:.62}.ending-card.is-locked .ending-card-title,.ending-card.is-locked .ending-card-code,.ending-card.is-locked .ending-card-status{color:#e8e2d89e}.ending-detail{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;overflow:hidden}.ending-detail-scroll{position:absolute;left:8%;top:10%;z-index:3;width:84%;height:82%;overflow-y:auto;padding:8%;border-radius:18px;background:#232a35b8;color:#fff0db;font-family:var(--regular-serif)}.ending-detail-scroll h1{margin:0 0 8%;font-family:var(--bold-serif);font-size:calc(var(--phone-width) * .046)}.ending-detail-scroll p{margin:0 0 8%;font-size:calc(var(--phone-width) * .031);line-height:1.7}.ending-detail-scroll img{display:block;width:100%;border-radius:10px}@keyframes pageEnter{0%{opacity:0;transform:scale(.996)}to{opacity:1;transform:scale(1)}}@keyframes pageLeave{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.004)}}@keyframes tapGlow{0%{opacity:0;transform:translate(-50%,-50%) scale(.55)}36%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1.24)}}@keyframes dialogTapGlow{0%{opacity:1;filter:brightness(1)}48%{opacity:.92;filter:brightness(1.08)}to{opacity:1;filter:brightness(1)}}@keyframes promptCardIn{0%{opacity:0;transform:scale(.982);filter:brightness(1.08)}to{opacity:1;transform:scale(1);filter:brightness(1)}}@keyframes titleHaloIn{0%{opacity:0;transform:scale(.82) rotate(-10deg)}to{opacity:.72;transform:scale(1) rotate(0)}}@keyframes titleTextIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes startButtonIn{0%{opacity:0;transform:scale(.86);filter:brightness(1.12)}to{opacity:1;transform:scale(1);filter:brightness(1)}}@keyframes startButtonAura{0%,to{opacity:.42;transform:translate(-50%,-50%) scale(.98)}50%{opacity:.85;transform:translate(-50%,-50%) scale(1.08)}}@keyframes startFlowRing{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes startButtonBreath{0%,to{opacity:.36;transform:scale(.94)}50%{opacity:.82;transform:scale(1.08)}}@keyframes characterIn{0%{opacity:0;transform:translate(10px) translateY(8px) scale(.992)}to{opacity:1;transform:translate(0) translateY(0) scale(1)}}@keyframes registrationFormReveal{0%{opacity:0;transform:translate(8%) translateY(5%) scale(.86) rotate(1.2deg);filter:drop-shadow(0 8px 16px rgba(51,44,36,.08)) brightness(1.08)}62%{opacity:1;transform:translate(-1.2%) translateY(-.8%) scale(1.018) rotate(-.25deg)}to{opacity:1;transform:translate(0) translateY(0) scale(1) rotate(0);filter:drop-shadow(0 18px 28px rgba(51,44,36,.2)) brightness(1)}}@keyframes promptIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes promptOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}
