:root{color:#eaf3ef;font-synthesis:none;--mint:#bbf9d9;--muted:#93a9b6;--line:#c2e9e029;background:#080f22;font-family:Microsoft YaHei,PingFang SC,Noto Sans CJK SC,sans-serif;font-weight:400}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{opacity:.65;cursor:wait}button:focus-visible,a:focus-visible{outline:2px solid var(--mint);outline-offset:6px}button{touch-action:manipulation}#world{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}.vignette{pointer-events:none;background:linear-gradient(90deg,#060d1ddb,#060d1d26 46%,#0000 70%),linear-gradient(#040b1947,#0000 20% 78%,#040b19a6);transition:opacity 1.5s;position:fixed;inset:0}.playing .vignette{opacity:.35}.topbar{z-index:3;justify-content:space-between;align-items:center;height:128px;padding:0 5.2%;display:flex;position:fixed;top:0;left:0;right:0}.brand{color:#f0f9f2;letter-spacing:3px;align-items:center;gap:14px;font-family:Microsoft YaHei,PingFang SC,sans-serif;font-size:17px;font-weight:800;text-decoration:none;display:flex}.brand-mark{color:var(--mint);font-size:43px;font-weight:400}.brand small{letter-spacing:2.6px;color:#97afa9;margin-top:7px;font-family:Microsoft YaHei,PingFang SC,Noto Sans CJK SC,sans-serif;font-size:8px;font-weight:500;display:block}.top-actions{align-items:center;gap:12px;display:flex}.chapter{letter-spacing:2px;color:#d2e6df;margin-right:23px;font-size:10px}.chapter i,.footer-note i{background:#bcf9d7;border-radius:50%;width:5px;height:5px;margin-right:10px;display:inline-block;box-shadow:0 0 10px #aefadd}.chapter span{color:#5c767e;margin:0 10px}.icon-button{border:1px solid var(--line);color:#cfebe1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#13263560;border-radius:50%;width:36px;height:36px;font-size:17px;position:relative}.sound-slash{background:#ccdfd7;width:17px;height:1px;position:absolute;top:18px;left:9px;transform:rotate(-50deg)}.sound-on .sound-slash{display:none}.intro{z-index:2;animation:1.5s both arrive;position:fixed;top:29%;left:8.3%}.eyebrow{letter-spacing:2.6px;color:#b7dccd;align-items:center;gap:12px;font-size:10px;font-weight:600;display:flex}.eyebrow>span{background:#a3d3c4;width:25px;height:1px;display:block}h1{letter-spacing:-3px;margin:27px 0 24px;font-family:Microsoft YaHei,PingFang SC,sans-serif;font-size:clamp(42px,4.3vw,73px);font-weight:500;line-height:1.19}h1 em{color:var(--mint);font-style:normal}.intro p{color:#a4b7c3;margin-bottom:33px;font-size:14px;font-weight:400;line-height:1.95}.primary-button{background:var(--mint);color:#152e29;border:0;border-radius:6px;justify-content:space-between;align-items:center;gap:38px;min-width:215px;padding:18px 23px;font-size:13px;font-weight:700;transition:background .2s,transform .2s;display:flex;box-shadow:0 6px 35px #a1f5c910}.primary-button:hover{background:#d9ffec;transform:translateY(-2px)}.primary-button>span{font-size:20px;font-weight:400;line-height:1}.intro-meta{letter-spacing:1.5px;color:#88a4ad;align-items:center;gap:14px;margin-top:20px;font-size:8px;display:flex}.meta-dot{color:#4a6574}.island-label{pointer-events:none;color:#c5dfd9;letter-spacing:2.5px;align-items:flex-start;gap:13px;font-size:9px;display:flex;position:fixed;bottom:21%;right:9%}.island-label small{color:#809faa;letter-spacing:.3px;margin-top:8px;font-size:10px;display:block}.label-line{background:#6f9aab;width:35px;height:1px;margin-top:5px}footer{color:#819aa7;z-index:2;justify-content:space-between;align-items:center;font-size:10px;display:flex;position:fixed;bottom:31px;left:5.2%;right:5.2%}.controls{align-items:center;gap:13px;display:flex}.key-group{flex-direction:column;align-items:center;gap:3px;display:flex}.key-group>span{gap:3px;display:flex}kbd{color:#acc3cb;background:#10212b50;border:1px solid #5c7a8259;border-radius:3px;justify-content:center;align-items:center;width:16px;height:16px;font:8px Microsoft YaHei,PingFang SC,Noto Sans CJK SC,sans-serif;display:inline-flex}.footer-divider{background:var(--line);width:1px;height:20px;margin:0 8px}.mouse-icon{border:1px solid #78919e;border-radius:7px;width:13px;height:20px;display:block;position:relative}.mouse-icon:after{content:"";background:#a4b6bf;width:1px;height:5px;position:absolute;top:3px;left:5px}.footer-note{font-size:10px}.footer-note i{width:4px;height:4px;box-shadow:none;background:#8ca6a3}.edition{letter-spacing:2px;font-size:8px}.edition span{color:#bfd5cb;vertical-align:middle;margin-left:19px;font-size:22px}.hidden{display:none!important}.hud{border:1px solid var(--line);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);z-index:2;background:linear-gradient(130deg,#0c2231c9,#0e213273);border-radius:12px;width:305px;padding:23px 26px;position:fixed;top:145px;left:5.2%}.hud .eyebrow{letter-spacing:2px;font-size:8px}.crystal-row{color:#a7bdbf;align-items:center;gap:10px;margin-top:14px;font-size:12px;display:flex}.crystal-icon{color:var(--mint);text-shadow:0 0 15px #90e5cb;font-size:23px}.crystal-row b{color:#e9fff4;font-size:26px;font-weight:500}#timer{color:#c5d9d7;font-variant-numeric:tabular-nums;margin-left:auto;font-size:13px}.progress{gap:6px;margin-top:14px;display:flex}.progress i{background:#84b9b526;border-radius:4px;flex:1;height:3px;transition:background .5s,box-shadow .5s}.progress i.filled{background:#c1ffe1;box-shadow:0 0 9px #b4f9df65}.hud p{color:#a3bdc3;margin:13px 0 0;font-size:10px;line-height:1.7}.toast{border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#d9ffec;opacity:0;pointer-events:none;z-index:5;text-align:center;background:#0d2634d9;border-radius:40px;padding:13px 22px;font-size:12px;transition:all .35s;position:fixed;top:130px;left:50%;transform:translate(-50%,-10px)}.toast.visible{opacity:1;transform:translate(-50%)}.modal-backdrop{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);z-index:8;background:#030d1da8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal{text-align:center;color:#e5f5ee;background:linear-gradient(145deg,#163341,#0c1b2d);border:1px solid #92d1bd33;border-radius:20px;width:min(440px,100%);padding:42px;animation:.6s both arrive;box-shadow:0 30px 120px #0006}.modal .eyebrow{justify-content:center;font-size:8px}.modal h2{letter-spacing:-1px;margin:18px -12px;font-family:Microsoft YaHei,PingFang SC,sans-serif;font-size:29px;font-weight:500}.modal p{color:#a9c1c6;font-size:13px;line-height:1.8}.modal .primary-button{width:100%;margin-top:22px}.success-symbol{color:var(--mint);text-shadow:0 0 30px #b1f0c866;margin-bottom:20px;font-size:67px}.results{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:center;gap:40px;margin:25px 0;padding:23px 0;display:flex}.results strong{font-size:25px;font-weight:500}.results small{color:#93b5b7;font-size:15px}.results span{letter-spacing:1.5px;color:#89aaa9;margin-top:10px;font-size:8px;display:block}.modal .mail-status{color:#a4c9ba;font-size:11px}.help-dialog{margin:auto;padding-top:45px;position:fixed}.help-dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#030d1dad}.help-dialog p{text-align:left}.close-button{color:#bfdcd6;background:0 0;border:0;font-size:25px;position:absolute;top:12px;right:17px}.loading{border:1px solid var(--line);z-index:6;background:#0d2237d9;border-radius:30px;padding:16px 24px;font-size:12px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.loading span{animation:1s infinite pulse}.joystick{touch-action:none;z-index:4;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#163a4859;border:1px solid #b5e6d645;border-radius:50%;width:105px;height:105px;position:fixed;bottom:100px;left:30px}.joystick-knob{pointer-events:none;background:#b9f9d330;border:1px solid #caf9de70;border-radius:50%;width:40px;height:40px;position:absolute;top:32px;left:32px}@keyframes arrive{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{50%{opacity:.25}}@media (width>=1500px){.intro{top:30%}.intro p{font-size:16px}}@media (width<=900px){.topbar{height:100px}.chapter{display:none}.intro{top:27%;left:7%}h1{font-size:49px}.footer-note{display:none}.island-label{bottom:22%;right:6%}.hud{width:270px;top:115px}.hud .eyebrow{font-size:7px}}@media (width<=600px){.topbar{height:92px;padding:0 23px}.brand{letter-spacing:2px;gap:9px;font-size:13px}.brand-mark{font-size:34px}.brand small{letter-spacing:1.7px;font-size:6px}.icon-button{width:33px;height:33px}.sound-slash{top:16px;left:7px}.top-actions{gap:8px}.intro{inset:auto 29px 91px}.intro .eyebrow{letter-spacing:2px;font-size:8px}h1{letter-spacing:-2px;margin:17px 0 13px;font-size:43px}.intro p{margin-bottom:20px;font-size:12px;line-height:1.7}.intro p br:last-of-type{display:none}.primary-button{width:100%;min-width:215px;padding:16px 20px}.intro-meta{margin-top:14px;font-size:7px}.vignette{background:linear-gradient(#07112440,#07112420 32%,#071124df 70%,#071124 91%)}footer{bottom:21px;left:28px;right:28px}.controls{display:none}.edition{justify-content:space-between;align-items:center;width:100%;font-size:7px;display:flex}.island-label{display:none}.hud{width:auto;padding:15px 19px;top:99px;left:22px;right:22px}.hud .eyebrow{font-size:7px}.hud p{margin-top:10px}.crystal-row{margin-top:8px}.progress{margin-top:10px}.toast{min-width:240px;font-size:11px;top:247px}.playing .vignette{opacity:.1}.modal{padding:30px 26px}.modal h2{font-size:26px}.joystick{bottom:76px}.footer-note{display:none}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.tutorial-open .topbar,.tutorial-open footer,.tutorial-open .vignette{visibility:hidden}.tutorial{color:#eaf3ef;background:linear-gradient(#0000 30%,#061321f5);border:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow-y:auto}.tutorial::backdrop{background:#06132115}.tutorial[open]{flex-direction:column;align-items:center;display:flex}.tutorial-top{justify-content:space-between;align-items:center;width:100%;padding:34px 5.2%;display:flex}.text-button{color:#b8d9d0;background:0 0;border:0;padding:10px 0;font-size:12px}.text-button:hover{color:#fff}.text-button span{margin-left:10px}.tutorial-demo-count{color:#a8cfc2;background:#0d2932d9;border:1px solid #abf4d750;border-radius:12px;align-items:center;gap:10px;padding:13px 18px;display:flex;position:absolute;top:106px;right:5.2%}.tutorial-demo-count>span:first-child{color:#baffdf;font-size:25px}.tutorial-demo-count b{color:#ecfff7;font-size:27px;font-weight:500}.tutorial-demo-count small{letter-spacing:2px;border-left:1px solid var(--line);margin-left:4px;padding-left:14px;font-size:8px}.tutorial-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(120deg,#112d39ee,#0a1e2ee8);border:1px solid #b4ebd82e;border-radius:18px;width:min(670px,100% - 48px);margin:auto 24px 35px;padding:25px 32px 23px;position:relative;overflow:hidden;box-shadow:0 15px 65px #0004}.tutorial-steps{color:#708e95;align-items:center;gap:12px;font-size:10px;display:flex}.tutorial-steps>span{white-space:nowrap;align-items:center;gap:8px;display:flex}.tutorial-steps small{font-size:10px}.tutorial-steps i{background:#8cbbb333;flex:1;height:1px}.tutorial-steps .current{color:#c3ffe0}.tutorial-steps .current small{font-weight:700}.tutorial-copy h2{letter-spacing:-.8px;margin:20px 0 10px;font-family:Microsoft YaHei,PingFang SC,sans-serif;font-size:29px;font-weight:500}.tutorial-copy p{color:#adc6cb;min-height:48px;margin:0;font-size:14px;line-height:1.7}.tutorial-controls{color:#d6e9df;border-left:2px solid #b9f9d380;margin:17px 0 20px;padding-left:12px;font-size:11px;line-height:1.7}.tutorial-actions{justify-content:space-between;align-items:center;gap:20px;display:flex}.tutorial-actions .primary-button{min-width:240px;padding:16px 20px}.tutorial-timeline{background:#b9f9d313;height:3px;position:absolute;bottom:0;left:0;right:0}.tutorial-timeline i{background:#b9f9d3;width:0;height:100%;display:block}.tutorial-pickup{opacity:0;color:#d5ffeb;pointer-events:none;background:#143b33e8;border:1px solid #baffdf80;border-radius:30px;padding:10px 19px;font-size:19px;transition:opacity .35s,transform .5s;position:absolute;top:178px;right:5.2%;transform:translateY(8px);box-shadow:0 0 35px #84e6c82a}.tutorial-pickup.visible{opacity:1;transform:translateY(0)}.tutorial-error{color:#ffd7bc;margin:12px 0 0;font-size:12px}@media (width<=600px){.tutorial-top{padding:22px}.tutorial-top .eyebrow{letter-spacing:1.5px;font-size:8px}.tutorial-top .text-button{font-size:10px}.tutorial-demo-count{gap:7px;padding:8px 12px;top:76px;left:22px;right:auto}.tutorial-demo-count b{font-size:23px}.tutorial-demo-count small{padding-left:9px;font-size:7px}.tutorial-card{width:calc(100% - 32px);margin:auto 16px 20px;padding:20px}.tutorial-steps{gap:7px;font-size:8px}.tutorial-steps>span{gap:4px}.tutorial-steps small{font-size:8px}.tutorial-copy h2{margin-top:19px;font-size:23px}.tutorial-copy p{min-height:61px;font-size:12px}.tutorial-controls{margin:14px 0 17px;font-size:10px}.tutorial-actions{gap:12px}.tutorial-actions .primary-button{flex:1;gap:12px;width:auto;min-width:0;padding:14px;font-size:11px}.tutorial-actions .text-button{white-space:nowrap;font-size:10px}.tutorial-pickup{font-size:15px;top:136px;left:22px;right:auto}}@media (height<=580px) and (width>=601px){.tutorial-top{padding:12px 25px}.tutorial-card{width:44%;margin:auto 22px 18px auto;padding:19px}.tutorial-copy h2{margin:15px 0 8px;font-size:23px}.tutorial-copy p{font-size:12px}.tutorial-controls{margin:12px 0}.tutorial-steps small{font-size:8px}.tutorial-steps{gap:7px}.tutorial-actions .primary-button{gap:12px;min-width:0;padding:13px;font-size:11px}.tutorial-demo-count{top:65px;left:25px;right:auto}}
