@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Manrope:wght@400;500;600;700&display=swap";:root{font-family:Manrope,Arial,sans-serif;color:#f6ead5;background:#081b29;font-synthesis:none;--gold:#ebc78b;--soft:#a9c0c7}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #d5f3ff;outline-offset:5px}button:disabled{opacity:.65;cursor:wait}#world,.vignette{position:fixed;top:0;right:0;bottom:0;left:0}canvas{display:block;width:100%;height:100%;touch-action:pan-y}.vignette{pointer-events:none;background:linear-gradient(90deg,rgba(3,15,26,.8),transparent 72%),linear-gradient(0deg,rgba(3,15,26,.8),transparent 34%);z-index:1}header{position:fixed;top:0;left:0;right:0;padding:30px 4.6vw;display:flex;justify-content:space-between;align-items:center;z-index:10;pointer-events:none}header>*{pointer-events:auto}.brand{color:inherit;text-decoration:none}.brand>span{font-size:9px;letter-spacing:3.5px;color:var(--gold)}.brand b{display:block;font-family:Cormorant Garamond,Georgia,serif;font-size:38px;font-weight:500;line-height:1.1}.tiny-star{font-size:22px;margin-left:12px;color:var(--gold)}.tools{display:flex;gap:8px}.tools button{color:#e2e9df;border:1px solid #b2d0da30;border-radius:50px;background:#061b2580;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);min-height:42px;min-width:42px;padding:10px 15px;font-size:12px}.tools button[aria-pressed=true]{border-color:var(--gold)}main{position:relative;height:100svh;height:100dvh;z-index:2;pointer-events:none}main button{pointer-events:auto}.intro{position:absolute;left:8vw;top:50%;transform:translateY(-44%);max-width:650px;animation:appear 1.5s both}.eyebrow{font-size:10px;letter-spacing:3px;color:var(--gold);line-height:1.7}h1{font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(54px,6.6vw,110px);line-height:.99;font-weight:400;letter-spacing:-2px;margin:25px 0}h1 em{font-weight:400;color:var(--gold)}p{font-size:14px;line-height:1.9;color:#bfd0d2;max-width:440px}.primary{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:56px;padding:16px 24px;border:1px solid #f9dfaa90;border-radius:6px;background:linear-gradient(115deg,#f4d49c,#d5aa66);box-shadow:0 8px 30px #ceab641a;color:#172029;font-size:13px;font-weight:700;transition:filter .3s,transform .3s;max-width:100%;min-width:270px}.primary:hover{filter:brightness(1.1);transform:translateY(-2px)}.primary span{font-size:23px;font-weight:400}.intro .primary{margin-top:30px}.micro{display:block;font-size:10px;letter-spacing:.6px;color:#9eb6bf;margin-top:17px}.chapter{position:absolute;top:0;right:0;bottom:0;left:0}.chapter-head{position:absolute;left:6vw;top:21%;max-width:460px;animation:appear .9s both}.chapter h1{font-size:clamp(45px,4.8vw,78px)}.chapter-head p{max-width:350px}.chapter-bottom{position:absolute;left:6vw;bottom:5%;width:350px;max-width:88vw}.progress{display:flex;gap:7px;margin-bottom:12px}.progress i{display:block;height:3px;background:#adcdd52b;flex:1;border-radius:9px}.progress i.done{background:var(--gold);box-shadow:0 0 10px #ffd28c66}.instruction{font-size:12px;line-height:1.8;color:#cee0df;min-height:44px;max-width:350px}.chapter-bottom .primary{width:100%;margin-top:12px}.chapters{display:flex;justify-content:space-between;margin-top:23px;font-size:9px;letter-spacing:.7px;color:#6b8996}.chapters .active{color:#ebc78b}.markers{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.marker{position:absolute;pointer-events:auto;width:62px;height:62px;transform:translate(-50%,-50%);border:0;border-radius:50%;background:transparent;color:#ffe5b7;display:grid;place-items:center}.marker:before,.marker:after{content:"";position:absolute;border:1px solid #f5d89a80;border-radius:50%;top:8px;right:8px;bottom:8px;left:8px;animation:pulse 2.5s infinite}.marker:after{top:17px;right:17px;bottom:17px;left:17px;background:#ffc97818;animation:none}.marker span{font-size:20px;z-index:1;text-shadow:0 0 15px #ffd38e}.marker small{position:absolute;top:57px;white-space:nowrap;font-size:10px;letter-spacing:1px;background:#071c28c9;border:1px solid #b2cfdb25;border-radius:30px;padding:6px 10px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.marker[hidden]{display:none}.ending{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:100px 24px 30px;background:radial-gradient(ellipse,#061622a0,transparent 80%);animation:appear 2s both}.ending h1{font-size:clamp(58px,7vw,110px)}.ending p{max-width:620px}.signature{font-family:Cormorant Garamond,Georgia,serif;font-style:italic;font-size:24px;line-height:1.5;margin:14px 0 30px;color:#ecd6b2}dialog{max-width:480px;width:88vw;padding:42px 35px 30px;color:#f6ead5;border:1px solid #eac58b50;border-radius:12px;background:linear-gradient(145deg,#142e3aef,#071924fa);box-shadow:0 20px 120px #0008;-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px)}dialog::backdrop{background:#020e1b55;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}dialog h2{font-family:Cormorant Garamond,Georgia,serif;font-size:38px;font-weight:400;line-height:1.1;margin:18px 0}dialog p{font-size:14px;color:#d2dfdb;line-height:1.95}dialog .primary{width:100%;margin-top:25px}.close{position:absolute;right:15px;top:10px;background:transparent;color:#cedbd7;border:0;font-size:30px;padding:4px 10px}#fallback{position:fixed;top:110px;text-align:center;left:5%;right:5%;font-size:12px;z-index:4;background:#18333e;padding:12px;border-radius:8px}[hidden]{display:none!important}.fade{animation:appear 1.1s both}@keyframes appear{0%{opacity:0;filter:blur(8px);translate:0 12px}to{opacity:1;filter:blur(0);translate:0 0}}@keyframes pulse{0%{scale:.8;opacity:.9}90%,to{scale:1.5;opacity:0}}@media(max-width:760px){header{padding:18px 6vw;padding-top:max(18px,env(safe-area-inset-top))}.brand>span{font-size:8px;letter-spacing:2.5px}.brand b{font-size:30px}.tools button{min-height:38px;min-width:38px;padding:8px 11px}.tools span{display:none}.vignette{background:linear-gradient(180deg,#04152255,transparent 30%,transparent 58%,#041321f5 83%),linear-gradient(90deg,#03131c40,transparent)}.intro{top:auto;bottom:7%;transform:none;left:7vw;right:7vw;max-width:none}.intro h1{font-size:clamp(55px,13vw,78px);margin:18px 0}.intro p{font-size:12px;max-width:310px}.intro .primary{margin-top:22px;width:100%}.eyebrow{font-size:8px;letter-spacing:2.2px}.micro{font-size:9px}.chapter-head{left:7vw;right:7vw;top:15%;max-width:none}.chapter h1{font-size:clamp(36px,9.5vw,52px);margin:12px 0;max-width:330px;letter-spacing:-1px}.chapter-head p{font-size:11px;line-height:1.7;max-width:330px;margin:0}.chapter-bottom{left:7vw;bottom:max(20px,env(safe-area-inset-bottom));width:86vw;max-width:none}.instruction{font-size:11px;min-height:36px}.primary{min-height:51px;padding:13px 20px;font-size:12px}.chapters{margin-top:16px}.progress{margin-bottom:8px}.desktop{display:none}.ending h1{font-size:60px;letter-spacing:-1px}.ending p{font-size:12px}.signature{font-size:22px;margin:12px 0 24px}.ending{padding-top:90px}.marker small{font-size:9px}.marker{width:58px;height:58px}}@media(max-height:680px)and (max-width:760px){.chapter-head{top:16%}.chapter h1{font-size:32px}.chapter-head p{font-size:10px}.chapter-bottom{bottom:12px}.chapters{margin-top:12px}.intro h1{font-size:48px}.intro p{font-size:11px}.intro .primary{margin-top:15px}.micro{margin-top:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
