:root{color:#e8e7d7;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--cream:#f6ecd3;--apricot:#f2c493;--mint:#b9d9c5;--muted:#a7babb;--line:#b9d9c52c;background:#10232d;font-family:Avenir Next,Avenir,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}button,input{font:inherit}button{color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,input:focus-visible{outline:2px solid var(--apricot);outline-offset:6px}[hidden]{display:none!important}#pond{touch-action:none;outline:none;width:100%;height:100%;display:block}#pond:focus-visible{box-shadow:inset 0 0 0 1px #f2c49355}.vignette{pointer-events:none;background:radial-gradient(at 58% 48%,#0000 28%,#08162142 80%,#08162188 100%);position:fixed;inset:0}body[data-phase=title] .vignette{background:linear-gradient(90deg,#0d222bd9,#0d222b88 35%,#0000 67%),radial-gradient(at 63% 45%,#0000 28%,#08162142 80%,#08162188 100%)}.topbar{pointer-events:none;justify-content:space-between;align-items:center;gap:28px;display:flex;position:fixed;inset:35px 44px auto}.wordmark{letter-spacing:3px;align-items:center;gap:13px;font-family:Georgia,serif;font-size:20px;display:flex}.wordmark>svg{color:var(--apricot);width:31px;height:31px}.wordmark small{color:#afc1be;letter-spacing:2.2px;margin-top:8px;font:8px/1.3 Avenir Next,sans-serif;display:block}.chapter{text-align:center;padding-right:110px}.chapter>span{color:var(--apricot);letter-spacing:2.8px;margin-bottom:8px;font-size:9px;display:block}.chapter>strong{color:#cad9d2;font-family:Georgia,serif;font-size:15px;font-weight:400}nav{pointer-events:auto;gap:10px;display:flex}.round{background:#12262e60;border:1px solid #c4ddcf40;border-radius:50%;place-items:center;width:41px;height:41px;transition:background .2s;display:grid}.round:hover{background:#52777855}.round svg{width:18px;height:18px}.round.muted{opacity:.65;position:relative}.round.muted:after{content:"";background:var(--apricot);width:23px;height:1px;position:absolute;transform:rotate(-45deg)}.title{width:540px;position:fixed;top:29%;left:7%}.eyebrow{letter-spacing:2.4px;color:var(--apricot);font-size:9px;font-weight:500;line-height:1.8}.title .eyebrow{align-items:center;gap:11px;margin:0 0 26px;font-size:8px;display:flex}.tiny-line{background:var(--apricot);opacity:.8;width:27px;height:1px}h1{letter-spacing:-6px;color:var(--cream);text-shadow:0 3px 35px #0a192755;margin:0 0 31px -5px;font-family:Palatino Linotype,Palatino,Book Antiqua,Georgia,serif;font-size:clamp(76px,7.7vw,124px);font-weight:400;line-height:.95}h1 span:not(.title-dot){font-style:italic}.title-dot{color:var(--apricot)}.intro{color:#c5d5ce;letter-spacing:.15px;margin:0 0 29px;font-family:Georgia,serif;font-size:17px;line-height:1.8}.primary{background:var(--apricot);color:#293732;letter-spacing:.35px;border:1px solid #f4dcad70;border-radius:3px;justify-content:space-between;align-items:center;gap:16px;padding:17px 22px;font-size:12px;font-weight:600;transition:transform .2s,background .2s,box-shadow .2s;display:flex;box-shadow:0 4px 32px #f5c49712}.primary:hover{background:#ffe0af;transform:translateY(-2px);box-shadow:0 5px 38px #f5c4972c}.primary svg{width:21px;height:21px}.primary .arrow{margin-left:20px;font-size:19px;font-weight:400}.invitation{color:#aebfbc;letter-spacing:.4px;margin:16px 0 37px;font-size:10px}.title-controls{color:#a8bdbb;gap:24px;font-size:9px;display:flex}.title-controls>span{align-items:center;gap:4px;display:flex}kbd{letter-spacing:.5px;color:#d5dfd1;background:#a5c3be09;border:1px solid #c4d9c73d;border-radius:3px;padding:3px 5px;font:9px/1.2 Avenir Next,sans-serif}.title-controls kbd:last-of-type{margin-right:5px}kbd.wide-key{padding-inline:10px}.journey{pointer-events:none;width:252px;padding:21px 0 0;position:fixed;bottom:99px;right:44px}.journey:before{content:"";z-index:-1;background:radial-gradient(#0d222bd9,#0d222b00 73%);position:absolute;inset:-25px -35px}.journey .eyebrow{color:#c2d2c4;justify-content:space-between;margin-bottom:16px;font-size:8px;display:flex}#total{color:#9db8b5;letter-spacing:2px;font-size:9px}.shrine-row{color:#9eb9b7;align-items:center;gap:11px;padding:13px 0;font:13px/1.3 Georgia,serif;display:flex}.shrine-row>div{flex:1}.shrine-icon{opacity:.5;width:23px;height:23px;display:inline-flex}.shrine-icon svg{width:100%}.shrine-number{color:#96b0af;letter-spacing:1.6px;margin-bottom:2px;font:8px/1.5 Avenir Next,sans-serif;display:block}.shrine-row.active{color:#f2d7b1}.shrine-row.active .shrine-icon{opacity:1;color:var(--apricot)}.shrine-row.restored{color:#b4dcc5}.shrine-row.restored .shrine-icon svg{fill:#b4dcc54d;color:#b4dcc5;opacity:1}.shrine-dots{gap:4px;display:flex}.shrine-dots i{border:1px solid #b8d8c780;border-radius:50%;width:4px;height:4px;display:block}.shrine-dots i.filled{background:var(--apricot);border-color:var(--apricot);box-shadow:0 0 5px #f2c49366}.journey-rule{background:var(--line);height:1px;margin-top:11px}.journey>p{color:#a0b8b4;margin:13px 0 0;font-family:Georgia,serif;font-size:10px;font-style:italic;line-height:1.6}footer{color:#a9bfbc;letter-spacing:1.8px;pointer-events:none;justify-content:space-between;font-size:8px;display:flex;position:fixed;inset:auto 44px 31px}footer>span{align-items:center;gap:10px;display:flex}.sound-dot{background:var(--apricot);border-radius:50%;width:4px;height:4px;box-shadow:0 0 9px #f2c49399}.footer-star{color:var(--apricot);font-size:18px}.cargo{border:1px solid var(--line);pointer-events:none;background:#112732aa;border-radius:5px;flex-wrap:wrap;align-items:center;gap:14px;width:247px;padding:17px 20px;display:flex;position:fixed;bottom:42px;left:44px}.cargo .eyebrow{color:#b8ccc4;flex-basis:100%;font-size:8px}#cargo-stars{gap:7px;display:flex}#cargo-stars svg{color:#7eaaa96b;width:22px;height:22px;transition:color .2s}#cargo-stars svg.filled{color:var(--apricot);fill:#f2c49366;filter:drop-shadow(0 0 6px #f2c49355)}#cargo-count{letter-spacing:1.5px;color:#c3d4c7;font-size:10px}.cargo.gathering{border-color:#f2c49355}.prompt{text-align:center;color:#d0dad0;border:1px solid var(--line);pointer-events:none;background:#10252dcc;border-radius:4px;align-items:center;gap:12px;max-width:430px;padding:13px 18px;font-size:11px;display:flex;position:fixed;bottom:56px;left:50%;transform:translate(-50%)}.prompt kbd{white-space:nowrap;color:var(--apricot);padding:5px 7px;font-size:8px}.prompt.ready{color:var(--cream);border-color:#f2c49390}.announcement{text-align:center;pointer-events:none;opacity:0;color:var(--cream);text-shadow:0 3px 18px #06101d;width:min(600px,80vw);font:italic 21px/1.6 Georgia,serif;transition:opacity .6s,transform .6s;position:fixed;top:135px;left:50%;transform:translate(-50%,-6px)}.announcement.visible{opacity:1;transform:translate(-50%)}.quiet{border:1px solid var(--line);background:#142c34c9;border-radius:4px;padding:11px 15px;font-size:11px}.quiet:hover{background:#24434c}.skip{position:fixed;bottom:43px;left:50%;transform:translate(-50%)}dialog{color:#e7e8d7;text-align:center;background:#172e34f5;border:1px solid #cad3af40;border-radius:9px;width:min(430px,100vw - 44px);max-height:calc(100dvh - 40px);padding:36px;overflow:auto;box-shadow:0 25px 100px #07141bcc}dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#07141b85}dialog h2,.failure h2{letter-spacing:-1.5px;color:var(--cream);margin:15px 0;font:400 40px/1.15 Georgia,serif}dialog>p{color:#bbcfc5;font:13px/1.7 Georgia,serif}dialog>.eyebrow{color:var(--apricot);font:8px/1.8 Avenir Next,sans-serif}dialog .primary{width:100%;margin-top:22px}.settings{text-align:left;margin-top:20px;padding:9px 0}.settings label{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:12px 0;font-size:12px;display:flex}.settings label small{color:var(--muted);margin-top:5px;font-size:10px;display:block}.settings input{accent-color:var(--apricot);flex-shrink:0;width:17px;height:17px}dialog .menu-controls{color:var(--muted);text-align:left;font:10px/2.1 Avenir Next,sans-serif}.text-button{color:#bdd0c6;text-underline-offset:4px;background:0 0;border:none;padding:15px 4px 4px;font-size:11px;text-decoration:underline}dialog .fine-print{color:#9eb8b3;margin:20px 0 0;font:9px/1.5 Avenir Next,sans-serif}.ending{width:min(460px,100vw - 44px);padding-top:29px}.ending::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#10232944}.ending-spark{width:50px;color:var(--apricot);margin:auto}.ending h2{font-size:39px}.ribbon{color:var(--apricot);border-block:1px solid #ddc69544;margin:24px 0;padding:14px;font:italic 15px Georgia,serif}.failure{border:1px solid var(--line);z-index:10;background:#142b34f5;border-radius:8px;width:min(480px,90vw);padding:40px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.failure>p:not(.eyebrow){color:#c4d6cc;font-size:14px;line-height:1.7}.notice{border:1px solid var(--line);z-index:15;opacity:0;pointer-events:none;background:#203d43f5;border-radius:5px;max-width:min(560px,90vw);padding:12px 18px;font-size:12px;line-height:1.6;transition:opacity .3s;position:fixed;top:97px;left:50%;transform:translate(-50%)}.notice.visible{opacity:1}.reduced-motion *,.reduced-motion :before,.reduced-motion :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}@media (width<=1100px){.topbar{inset:25px 27px auto}.chapter{padding-right:0}.wordmark{font-size:17px}.wordmark small{letter-spacing:1.6px;font-size:7px}.title{width:470px;top:27%;left:6%}.journey{width:215px;bottom:96px;right:27px}footer{inset-inline:27px}.cargo{width:220px;padding:15px;left:27px}#cargo-stars{gap:5px}#cargo-stars svg{width:19px;height:19px}.prompt{max-width:325px;font-size:10px;bottom:44px}}@media (width<=760px){.chapter{display:none}.topbar{gap:12px;inset:23px 22px auto}.title{width:86%;top:25%;left:7%}h1{letter-spacing:-4px;font-size:clamp(60px,13vw,90px)}.title .eyebrow{letter-spacing:1.7px;font-size:7px}.intro{font-size:15px}body[data-phase=title] .journey{display:none}.journey{width:173px;top:92px;bottom:auto;right:22px}.journey .eyebrow,.journey p,.journey-rule,.shrine-number{display:none}.shrine-row{gap:7px;padding-block:6px;font-size:10px}.shrine-icon{width:15px;height:15px}.shrine-dots{gap:3px}footer>span:last-child{display:none}.cargo{gap:9px;width:206px;padding:11px 14px;bottom:82px;left:22px}.prompt{justify-content:center;width:calc(100% - 44px);max-width:440px;font-size:10px;bottom:22px}}@media (height<=680px){.title{top:22%}h1{margin-bottom:20px;font-size:78px}.title .eyebrow{margin-bottom:16px}.intro{margin-bottom:19px}.invitation{margin-bottom:21px}}
