*,:before,:after{box-sizing:border-box}*{margin:0}html,body,#root{height:100%}img{max-width:100%;display:block}button{font:inherit;color:inherit}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#0b0608;--color-bg-deep:#530b1d;--color-maroon-deep:#550c19;--color-maroon:#7a1626;--color-maroon-soft:#9d2235;--color-red:#b23a48;--color-gold:#c9a86a;--color-gold-soft:#d8b98e;--color-cream:#f4e6c8;--color-text:#f4ede4;--color-text-muted:#d8bfa3;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:20px;--space-5:32px;--space-6:48px;--radius-sm:4px;--radius-md:16px;--radius-lg:24px;--radius-pill:999px;--font-display:"Playfair Display", Georgia, serif;--font-body:Georgia, "Times New Roman", serif}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);-webkit-font-smoothing:antialiased}.start-page{background-color:var(--color-bg);background-image:url(/images/backgrounds/main-bg-phone.png);background-position:50%;background-repeat:no-repeat;background-size:cover;min-height:100dvh;position:relative;overflow:hidden}.start-character{z-index:1;cursor:pointer;-webkit-user-select:none;user-select:none;transform-origin:bottom;filter:drop-shadow(0 14px 34px #0000008c);width:auto;max-height:42vh;animation:5s ease-in-out infinite character-breathe;position:absolute;bottom:0;right:0}@keyframes character-breathe{0%,to{transform:translateY(0)rotate(0)scale(1)}50%{transform:translateY(-8px)rotate(.6deg)scale(1.01)}}.start-buttons{z-index:3;flex-wrap:wrap;justify-content:center;gap:14px;display:flex;position:absolute;bottom:6vh;left:50%;transform:translate(-50%)}.start-button{font-family:var(--font-display);letter-spacing:2px;text-transform:uppercase;color:var(--color-gold);border:1px solid var(--color-gold);cursor:pointer;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:linear-gradient(#26080e8c,#120408b3);border-radius:2px;padding:13px 42px;font-size:clamp(13px,2vw,18px);transition:color .25s,background .25s,box-shadow .25s,transform .1s;box-shadow:inset 0 0 0 1px #c9a86a2e,0 8px 26px #00000080}.start-button:hover:not(:disabled){color:var(--color-cream);background:linear-gradient(180deg, var(--color-maroon), var(--color-maroon-deep));box-shadow:inset 0 0 0 1px #c9a86a59,0 0 20px #c9a86a59,0 10px 30px #0000008c}.start-button:active:not(:disabled){transform:translateY(1px)}.start-button--secondary{color:var(--color-gold-soft);border-color:#c9a86a99}.start-button:disabled{opacity:.4;cursor:not-allowed;filter:grayscale(.3)}@media (width>=860px){.start-page{background-image:url(/images/backgrounds/main-bg-laptop.png)}.start-character{max-height:92vh}}@media (prefers-reduced-motion:reduce){.start-character{animation:none}}.welcome-toast{z-index:50;border:1px solid var(--color-gold);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;background:linear-gradient(#280a10f7,#120508f7);border-radius:12px;align-items:center;gap:12px;width:max-content;max-width:min(340px,100vw - 24px);padding:11px 16px;animation:.45s cubic-bezier(.2,.8,.2,1) toast-in;display:flex;position:fixed;top:18px;left:50%;transform:translate(-50%);box-shadow:inset 0 0 0 1px #c9a86a26,0 12px 30px #0000008c}.welcome-toast-icon{color:var(--color-gold);flex-shrink:0;font-size:20px}.welcome-toast-body{text-align:left}.welcome-toast-title{font-family:var(--font-display);letter-spacing:1px;color:var(--color-gold-soft);margin-bottom:1px;font-size:12px}.welcome-toast-text{color:var(--color-cream);font-size:14px}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)translateY(-22px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.dialogue-box{border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0b0608c7;border:1px solid #d8bfa359;width:min(900px,100%);padding:28px;box-shadow:0 24px 80px #0000008c}.dialogue-box--fact{background:#180a0ed1;border-color:#c9a86a99;box-shadow:0 0 26px #c9a86a2e,0 24px 80px #0000008c}.dialogue-eyebrow{font-family:var(--font-display);text-transform:uppercase;letter-spacing:3px;color:var(--color-gold);margin:0 0 12px;font-size:12px}.speaker-name{color:var(--color-text-muted);margin:0 0 12px;font-size:22px;font-weight:700}.dialogue-text{margin:0 0 24px;font-size:24px;line-height:1.6}.next-hint{color:var(--color-text-muted);letter-spacing:1px;opacity:.75;margin-top:14px;font-size:14px;display:block}@media (width<=700px){.dialogue-box{border-radius:18px;padding:18px}.speaker-name{margin-bottom:8px;font-size:18px}.dialogue-text{margin-bottom:16px;font-size:18px;line-height:1.5}}.choice-list{flex-direction:column;gap:12px;width:min(900px,100%);display:flex}.choice-button{border-radius:var(--radius-md);color:var(--color-text);text-align:left;cursor:pointer;background:#2a0d14eb;border:1px solid #d8bfa366;padding:16px 20px;font-size:18px;transition:all .2s}.choice-button:hover{border-color:var(--color-text-muted);background:#8a1e2df2;transform:translateY(-2px)}.game-page{min-height:100dvh;color:var(--color-text);background-color:var(--color-bg);cursor:pointer;background-position:50%;background-repeat:no-repeat;background-size:cover}.background-prologue{background-image:url(/images/backgrounds/PrologueBackgroundPhone.png)}.background-room{background-image:url(/images/backgrounds/RoomPhone.png)}.background-kitchen{background-image:url(/images/backgrounds/kitchenPhone.png)}.background-street{background-image:url(/images/backgrounds/StreetPhone.png)}.background-hall{background-image:url(/images/backgrounds/HallPhone.png)}.background-lockers{background-image:url(/images/backgrounds/lockersPhone.png)}.background-cgletter{background-image:url(/images/backgrounds/CGLetterPhone.png)}.background-corridor{background-image:url(/images/backgrounds/corridorPhone.png)}.background-archive{background-image:url(/images/backgrounds/archivePhone.png)}.background-map{background-image:url(/images/backgrounds/mapPhone.png)}.background-garden{background-image:url(/images/backgrounds/gardenPhone.png)}.background-apartment{background-image:url(/images/backgrounds/apartmentPhone.png)}@media (width>=860px){.background-prologue{background-image:url(/images/backgrounds/PrologueBackgroundDesktop.png)}.background-room{background-image:url(/images/backgrounds/room.png)}.background-kitchen{background-image:url(/images/backgrounds/kitchen.png)}.background-street{background-image:url(/images/backgrounds/street.png)}.background-hall{background-image:url(/images/backgrounds/hall.png)}.background-lockers{background-image:url(/images/backgrounds/lockers.png)}.background-cgletter{background-image:url(/images/backgrounds/CGLetter.png)}.background-corridor{background-image:url(/images/backgrounds/corridor.png)}.background-archive{background-image:url(/images/backgrounds/archive.png)}.background-map{background-image:url(/images/backgrounds/map.png)}.background-garden{background-image:url(/images/backgrounds/garden.png)}.background-apartment{background-image:url(/images/backgrounds/apartment.png)}.game-character,.game-protector{max-height:92vh;left:auto;right:3%;transform:none}.game-content{max-width:640px}}.game-page-overlay{background:linear-gradient(#0b060859,#0b0608d9),radial-gradient(circle at top,#8a1e2d47,#0000 60%);flex-direction:column;justify-content:space-between;min-height:100dvh;padding:48px;display:flex;position:relative}.game-character{z-index:1;pointer-events:auto;cursor:pointer;filter:drop-shadow(0 14px 34px #0009);width:auto;max-height:76vh;animation:.35s sprite-in;position:absolute;bottom:0;left:50%;transform:translate(-50%)}@keyframes sprite-in{0%{opacity:0}to{opacity:1}}.game-protector{z-index:3;pointer-events:none;filter:drop-shadow(0 14px 34px #0009);width:auto;max-height:76vh;animation:.3s sprite-in;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.game-top-panel{z-index:2;position:relative}.game-top-panel h1{font-size:clamp(28px,4vw,44px);font-family:var(--font-display);color:var(--color-cream);text-shadow:0 0 24px #8a1e2dcc;margin:0}.game-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:3px;margin:0 0 8px;font-size:13px}.game-content{z-index:2;flex-direction:column;gap:20px;display:flex;position:relative}.chapter-result{border-radius:var(--radius-lg);text-align:center;background:#d8bfa314;border:1px solid #d8bfa359;width:min(900px,100%);padding:24px 28px}.chapter-result-label{color:var(--color-gold-soft);text-transform:uppercase;letter-spacing:3px;margin:0 0 6px;font-size:13px}.chapter-result h2{font-family:var(--font-display);color:var(--color-cream);margin:0;font-size:clamp(22px,3.5vw,32px)}.chapter-result-stats{color:var(--color-text);flex-direction:column;gap:4px;margin:16px 0 0;display:flex}.chapter-result-stats strong{color:var(--color-cream)}.chapter-result-stats em{color:var(--color-gold-soft)}.chapter-result-note{color:var(--color-text-muted);margin:14px 0 0;font-style:italic}.chapter-continue{font-family:var(--font-display);text-transform:uppercase;letter-spacing:2px;color:var(--color-cream);background:linear-gradient(180deg, var(--color-maroon), var(--color-maroon-deep));border:1px solid var(--color-gold);cursor:pointer;border-radius:3px;margin:20px auto 0;padding:13px 26px;font-size:14px;transition:box-shadow .25s,transform .1s;display:inline-block}.chapter-continue:hover{box-shadow:0 0 20px #c9a86a80}.chapter-continue:active{transform:translateY(1px)}.profile-trigger{z-index:5;width:46px;height:46px;color:var(--color-gold);border:1px solid var(--color-gold);cursor:pointer;background:radial-gradient(circle at 30% 25%,#1e080df2,#080305f2);border-radius:50%;justify-content:center;align-items:center;transition:box-shadow .2s,transform .1s,color .2s;display:flex;position:absolute;top:20px;right:20px;box-shadow:0 0 14px #c9a86a59,inset 0 0 8px #0009}.profile-trigger:hover{color:var(--color-cream);box-shadow:0 0 22px #c9a86a99,inset 0 0 8px #0009}.profile-trigger:active{transform:translateY(1px)}.profile-overlay{z-index:30;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#05020399;justify-content:flex-end;animation:.2s profile-fade;display:flex;position:fixed;inset:0}@keyframes profile-fade{0%{opacity:0}to{opacity:1}}.profile-panel{width:min(360px,88vw);height:100%;color:var(--color-text);border-left:1px solid var(--color-gold);background:linear-gradient(#1e080dfa,#0a0406fc);padding:56px 28px 32px;animation:.25s profile-slide;position:relative;overflow-y:auto;box-shadow:-24px 0 70px #0009}@keyframes profile-slide{0%{opacity:.4;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.profile-close{width:34px;height:34px;color:var(--color-gold-soft);cursor:pointer;background:#00000059;border:1px solid #c9a86a66;border-radius:50%;font-size:15px;position:absolute;top:16px;right:16px}.profile-close:hover{color:var(--color-cream);border-color:var(--color-gold)}.profile-eyebrow{font-family:var(--font-display);text-transform:uppercase;letter-spacing:3px;color:var(--color-gold-soft);margin:0 0 6px;font-size:11px;font-style:italic}.profile-title{font-family:"Uncial Antiqua", var(--font-display), serif;background:linear-gradient(#f6ead0,#c9a86a 55%,#7c5d2e);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;margin:0 0 24px;font-size:30px}.profile-section{border-top:1px solid #c9a86a33;padding:16px 0}.profile-label{letter-spacing:1px;text-transform:uppercase;color:var(--color-gold-soft);margin:0 0 4px;font-size:11px}.profile-label:not(:first-child){margin-top:14px}.profile-value{color:var(--color-cream);align-items:center;gap:10px;margin:0;font-size:18px;display:flex}.profile-password{letter-spacing:1px;font-family:monospace}.profile-sub{color:var(--color-text-muted);margin:2px 0 0;font-size:14px;font-style:italic}.profile-toggle{color:var(--color-gold-soft);cursor:pointer;background:0 0;border:none;font-family:inherit;font-size:12px;text-decoration:underline}.profile-toggle:hover{color:var(--color-cream)}.profile-lang{gap:10px;margin-top:6px;display:flex}.profile-lang-btn{font-family:var(--font-display);color:var(--color-gold-soft);cursor:pointer;background:#0000004d;border:1px solid #c9a86a80;border-radius:4px;flex:1;padding:10px;font-size:14px;transition:color .2s,background .2s,border-color .2s}.profile-lang-btn:hover{color:var(--color-cream);background:var(--color-maroon)}.profile-lang-btn.is-selected{color:var(--color-cream);background:var(--color-maroon);border-color:var(--color-gold)}.profile-replay{width:100%;font-family:var(--font-display);text-transform:uppercase;letter-spacing:2px;color:var(--color-cream);background:linear-gradient(180deg, var(--color-maroon), var(--color-maroon-deep));border:1px solid var(--color-gold);cursor:pointer;border-radius:3px;margin-top:8px;padding:12px;font-size:13px;transition:box-shadow .2s,transform .1s}.profile-replay:hover{box-shadow:0 0 18px #c9a86a73}.profile-replay:active{transform:translateY(1px)}.profile-logout{width:100%;font-family:var(--font-display);text-transform:uppercase;letter-spacing:2px;color:var(--color-gold-soft);cursor:pointer;background:0 0;border:1px solid #b23a4899;border-radius:3px;margin-top:20px;padding:12px;font-size:13px;transition:color .2s,background .2s,border-color .2s}.profile-logout:hover{color:var(--color-cream);border-color:var(--color-red);background:#b23a4840}@media (width<=700px){.game-page-overlay{padding:16px}.profile-trigger{width:42px;height:42px;top:14px;right:14px}.game-top-panel h1{display:none}.game-label{margin-bottom:4px;font-size:11px}.game-character,.game-protector{max-height:70vh}}.coming-page{min-height:100dvh;padding:clamp(40px, 8vh, 90px) var(--space-4) 0;text-align:center;background:radial-gradient(70% 50% at 50% 22%,#8c182861,#0000 70%),radial-gradient(130% 90% at 50% 110%,#000000e6,#0000 55%),linear-gradient(#1a0509,#0b0608 55%,#050203);flex-direction:column;justify-content:space-between;align-items:center;display:flex;position:relative;overflow:hidden}.coming-frame{z-index:1;pointer-events:none;border:1px solid #c9a86a80;position:absolute;inset:16px;box-shadow:inset 0 0 140px #000000bf}.coming-frame:before{content:"";border:1px solid #c9a86a38;position:absolute;inset:6px}.coming-content{z-index:2;max-width:760px;margin-top:4vh;position:relative}.coming-eyebrow{font-family:var(--font-display);text-transform:uppercase;letter-spacing:4px;color:var(--color-gold-soft);margin-bottom:var(--space-4);font-size:clamp(11px,1.5vw,14px);font-style:italic}.coming-title{letter-spacing:1px;background:linear-gradient(#f6ead0 0%,#c9a86a 52%,#7c5d2e 100%);-webkit-text-fill-color:transparent;color:#0000;filter:drop-shadow(0 2px 1px #000000d9)drop-shadow(0 0 34px #b23a4873);-webkit-background-clip:text;background-clip:text;font-family:Uncial Antiqua,Yeseva One,serif;font-size:clamp(40px,8vw,92px);line-height:1.12}.coming-divider{width:min(280px,64%);height:1px;margin:var(--space-4) auto;background:linear-gradient(90deg, transparent, var(--color-gold), transparent);position:relative}.coming-divider:after{content:"";background:var(--color-gold);width:7px;height:7px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg);box-shadow:0 0 10px #c9a86ab3}.coming-sub{font-family:var(--font-display);color:var(--color-text-muted);font-size:clamp(14px,2vw,20px);font-style:italic}.coming-twins{z-index:2;justify-content:center;align-items:flex-end;margin-top:auto;display:flex;position:relative}.coming-twin{cursor:pointer;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 14px 30px #0009);width:auto;animation:5s ease-in-out infinite twin-breathe}.coming-twin--ellian{z-index:2;max-height:50vh}.coming-twin--noel{z-index:1;max-height:46vh;margin-left:-7%;animation-delay:-2.5s}@keyframes twin-breathe{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-7px)scale(1.008)}}@media (width<=600px){.coming-twin--ellian{max-height:34vh}.coming-twin--noel{max-height:31vh}}@media (prefers-reduced-motion:reduce){.coming-twin{animation:none}}.flow-page{min-height:100dvh;color:var(--color-text);background:radial-gradient(70% 50% at 50% 12%,#8a1e2d52,#0000 70%),linear-gradient(#1a0509,#0b0608 60%,#050203);justify-content:center;align-items:center;padding:40px 20px;display:flex}.flow-card{text-align:center;border:1px solid var(--color-gold);border-radius:var(--radius-lg);background:linear-gradient(#1e080deb,#0e0507f0);width:100%;max-width:430px;padding:40px 32px;box-shadow:inset 0 0 0 1px #c9a86a26,0 24px 70px #0009}.flow-eyebrow{font-family:var(--font-display);text-transform:uppercase;letter-spacing:3px;color:var(--color-gold-soft);margin:0 0 14px;font-size:12px;font-style:italic}.flow-title{font-family:"Uncial Antiqua", var(--font-display), serif;background:linear-gradient(#f6ead0,#c9a86a 55%,#7c5d2e);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;margin:0 0 12px;font-size:clamp(26px,6vw,40px);line-height:1.12}.flow-sub{color:var(--color-text-muted);font-family:var(--font-display);margin:0 0 26px;font-size:14px;font-style:italic;line-height:1.5}.flow-form{text-align:left;flex-direction:column;gap:18px;display:flex}.flow-field{flex-direction:column;gap:7px;display:flex}.flow-field>span{letter-spacing:1px;text-transform:uppercase;color:var(--color-gold-soft);font-size:12px}.flow-input{color:var(--color-text);background:#00000059;border:1px solid #c9a86a66;border-radius:4px;padding:12px 14px;font-family:inherit;font-size:16px}.flow-input::placeholder{color:#d8bfa366}.flow-input:focus{border-color:var(--color-gold);outline:none;box-shadow:0 0 0 2px #c9a86a33}.flow-button{font-family:var(--font-display);text-transform:uppercase;letter-spacing:2px;color:var(--color-cream);background:linear-gradient(180deg, var(--color-maroon), var(--color-maroon-deep));border:1px solid var(--color-gold);cursor:pointer;border-radius:3px;margin-top:6px;padding:13px;font-size:15px;transition:box-shadow .25s,transform .1s}.flow-button:hover{box-shadow:0 0 18px #c9a86a66}.flow-button:active{transform:translateY(1px)}.flow-choices{flex-direction:column;gap:14px;margin-top:6px;display:flex}.flow-choices--row{flex-direction:row}.flow-choice{font-family:var(--font-display);letter-spacing:1px;color:var(--color-gold-soft);cursor:pointer;background:#0000004d;border:1px solid #c9a86a80;border-radius:4px;flex:1;padding:15px;font-size:16px;transition:color .2s,background .2s,box-shadow .2s,border-color .2s}.flow-choice:hover{color:var(--color-cream);background:var(--color-maroon)}.flow-choice.is-selected{color:var(--color-cream);background:var(--color-maroon);border-color:var(--color-gold);box-shadow:0 0 14px #c9a86a59}.flow-error{color:var(--color-red);margin:0;font-size:14px}.flow-link{color:var(--color-gold-soft);cursor:pointer;background:0 0;border:none;margin-top:20px;font-family:inherit;font-size:13px;text-decoration:underline}.flow-link:hover{color:var(--color-cream)}
