@charset "UTF-8";
:root{color-scheme:dark;--ink:#e6e8d5;--muted:#8eaa98;--line:rgba(166,191,158,.16);--blue:#75d8f4}*{box-sizing:border-box}body{margin:0;background:#111b18;color:var(--ink);font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;background-image:radial-gradient(ellipse at 50% 0%,#26392c55,transparent 65%);min-height:100vh}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #c7e6ac;outline-offset:4px}.shell{max-width:1512px;margin:auto;padding:0 44px}.topbar{height:104px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;font-size:20px;letter-spacing:3px;font-weight:600}.brand-mark{width:43px;height:43px;display:grid;place-items:center;font-size:34px;color:#bdd0a0;border:1px solid #7589695c;border-radius:50%;font-weight:300}.brand small{display:block;font-size:9px;letter-spacing:2.5px;color:var(--muted);margin-top:5px;font-weight:400}.edition{font-size:10px;color:#92a591;letter-spacing:1.8px;display:flex;align-items:center;gap:10px}.live-dot{width:5px;height:5px;background:#bdd69c;box-shadow:0 0 10px #bdd69c55;border-radius:50%}.divider{color:#526b57;margin:0 8px}.toolbar{display:flex;gap:9px}.toolbar button{border:1px solid var(--line);background:transparent;border-radius:5px;padding:9px 12px;color:#b1beab;font-size:11px}.toolbar button:hover{background:#c1d2a914;color:#f1f1de}.toolbar kbd{margin-left:6px;border:0;background:#29382c;color:#bdc7b0;font-size:9px;padding:2px 4px}.game{position:relative;aspect-ratio:16/9;background:#223a2b;border:1px solid #8a9c6440;border-radius:10px;overflow:hidden;isolation:isolate;box-shadow:0 25px 100px #0004}canvas{display:block;width:100%;height:100%;outline:0}.hud{position:absolute;top:30px;left:32px;right:32px;display:flex;justify-content:space-between;pointer-events:none;text-shadow:0 2px 6px #102016bb}.eyebrow{font-size:10px;letter-spacing:3px;color:#bcc8ad}.health-block{width:190px}#hearts{height:28px;display:flex;align-items:center;gap:6px}.heart{display:inline-block;color:#f4e9cc;font-size:21px;line-height:1;text-shadow:0 0 12px #faf0c01c}.heart.empty{color:#78907970}.dash-status{display:flex;align-items:center;gap:8px;font-size:9px;color:#a4bfae}.dash-line{width:68px;height:3px;background:#142e36b3;border-radius:3px;overflow:hidden}.dash-line i{display:block;width:100%;height:100%;background:#92d9e3;box-shadow:0 0 7px #8cddff}.location{text-align:center;font-size:11px;letter-spacing:2px;color:#e2e8cd}.location small{display:block;font-size:9px;letter-spacing:1px;color:#b2c4a7;margin-top:8px}.collect{display:flex;align-items:center;align-content:center;gap:9px;position:relative;height:26px}.collect>span{font-size:23px;color:#ead7a3}.collect b{font-size:22px;font-weight:400;font-variant-numeric:tabular-nums}.collect small{position:absolute;top:32px;right:0;white-space:nowrap;font-size:9px;letter-spacing:2px;color:#aabd9f}.status-line{position:absolute;left:30px;bottom:22px;right:30px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px;color:#b6c5a4aa;pointer-events:none}.progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#0e211e99}.progress i{display:block;height:100%;width:0;background:#c2d99a;box-shadow:0 0 12px #b0d596}.veil{position:absolute;inset:0;display:flex;align-items:center;background:linear-gradient(90deg,#10221bdc, #10221b83 40%,transparent 76%);transition:opacity .25s}.veil.hidden{opacity:0;pointer-events:none}.intro{margin-left:10%;margin-top:-28px;max-width:480px}.chapter{font-size:9px;letter-spacing:3.5px;color:#b4c69b;margin-bottom:22px}h1{font-family:"Songti SC","Noto Serif CJK SC","SimSun",serif;font-weight:400;font-size:clamp(24px,3.6vw,52px);letter-spacing:5px;line-height:1.5;margin:0 0 17px;color:#f0eed5}.intro p{font-size:12px;color:#b7c6a9;line-height:1.9;margin:0 0 28px}.primary{display:flex;align-items:center;justify-content:space-between;gap:40px;border:1px solid #d2d7ac;background:#d4dfb9;color:#263d2c;border-radius:4px;padding:13px 22px;min-width:190px;font-size:12px;letter-spacing:2px;box-shadow:0 6px 30px #050f1a26}.primary:hover{background:#e3ebce}.primary span{font-size:20px}.intro>small{display:block;font-size:9px;color:#819b87;margin-top:16px;letter-spacing:.5px}.guide{display:flex;align-items:center;gap:30px;min-height:98px;border-bottom:1px solid var(--line)}.guide-title{font-size:12px;white-space:nowrap;color:#bcc8ae}.guide-title small{display:block;font-size:8px;letter-spacing:2px;color:#728a78;padding-left:25px;margin-top:5px}.little-star{color:#bfd5a4;font-size:21px;margin-right:6px}.key-guide{display:flex;gap:22px;flex-wrap:wrap}.key-guide>span{display:flex;align-items:center;gap:6px;font-size:10px;color:#a8b7a4;white-space:nowrap}kbd{font:10px system-ui;min-width:23px;height:23px;padding:3px 6px;border:1px solid #546a514d;box-shadow:0 2px 0 #07100d;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;color:#d4ddc2;background:#223126}.guide p{font-size:9px;color:#738875;margin-left:auto;white-space:nowrap}.footnote{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px;color:#607763;padding:22px 0}.footnote i{font-style:normal;padding:0 6px;color:#465e4b}.touch-controls{display:none;position:absolute;bottom:35px;left:20px;right:20px;justify-content:space-between;pointer-events:none}.touch-controls>div{display:flex;gap:8px}.touch-controls button{pointer-events:auto;touch-action:none;border:1px solid #c9dbc258;background:#15382e99;color:#edf3d9;width:48px;height:43px;border-radius:9px;font-size:12px;user-select:none}.touch-controls button.pressed{background:#98c2b599}:fullscreen .game{width:100vw;height:100vh;border-radius:0}:fullscreen canvas{object-fit:contain}#stage:fullscreen{aspect-ratio:auto}#stage:fullscreen canvas{width:100%;height:100%}@media(max-width:1150px){.shell{padding:0 24px}.edition{display:none}.guide{gap:22px}.key-guide{gap:14px}.guide p{display:none}}@media(max-width:700px){.shell{padding:0 10px}.topbar{height:76px;gap:8px}.brand{font-size:15px;letter-spacing:2px}.brand small{font-size:7px;letter-spacing:1px}.brand-mark{width:30px;height:30px;font-size:26px}.toolbar{gap:4px}.toolbar button{font-size:10px;padding:7px}.toolbar kbd{display:none}.game{border-radius:7px}.hud{left:14px;right:14px;top:13px}.health-block{width:auto}.eyebrow,.location small,.collect small{display:none}.location{font-size:8px}.heart{font-size:14px}#hearts{height:18px;gap:3px}.dash-status{font-size:7px;gap:4px}.dash-line{width:35px}.collect b{font-size:16px}.collect>span{font-size:17px}.intro{margin-top:0;margin-left:7%}.chapter{font-size:6px;letter-spacing:2px;margin-bottom:8px}h1{font-size:24px;line-height:1.4;letter-spacing:2px;margin-bottom:7px}.intro p{font-size:8px;margin-bottom:12px}.primary{padding:5px 12px;min-width:135px;font-size:10px}.intro>small{font-size:7px;margin-top:8px}.status-line{font-size:7px;left:15px;right:15px;bottom:10px}.guide{min-height:110px;gap:12px;align-items:flex-start;padding:20px 0}.key-guide{gap:10px 14px}.key-guide>span{font-size:9px}kbd{min-width:19px;height:20px;font-size:9px}.guide-title{font-size:10px}.guide-title small{font-size:6px}.footnote{font-size:7px;letter-spacing:.4px}.touch-controls{bottom:22px;left:12px;right:12px}.touch-controls button{height:34px;width:39px;font-size:10px}.veil:not(.hidden)~.touch-controls{display:none}}.combo-readout{position:absolute;left:30px;bottom:54px;color:#a6c2b7b3;font-size:10px;letter-spacing:2px;pointer-events:none;border-left:2px solid #95bfbd55;padding:4px 10px;transition:color .08s}.combo-readout.active{color:#e4fcff;border-color:#c2f4ff;text-shadow:0 0 12px #c2f4ff88}@media(max-width:700px){.combo-readout{left:15px;bottom:29px;font-size:7px;letter-spacing:1px;padding:2px 6px}}@media(pointer:coarse){.combo-readout{top:66px;bottom:auto;left:15px;font-size:8px}}@media(pointer:coarse){.touch-controls{display:flex}.status-line{bottom:10px}.guide .key-guide>span:last-child{display:none}}
/* Reference redraw: restrained in-game red/ivory gauges, no fantasy-heart overlay. */
body{background-color:#151b12}.game{background:#394725;border-color:#70804755}.hud{top:25px;left:25px;right:25px}.health-block{width:205px}.eyebrow{display:none}#hearts{display:block;width:205px;height:10px;background:#21271c;border:1px solid #151e17;margin:0 0 10px;overflow:hidden}.health-fill{display:block;height:100%;background:linear-gradient(0deg,#b53753,#d9586c)}.dash-line{width:170px;height:6px;background:#293123;border-radius:0}.dash-line i{background:#e0e7dc;box-shadow:0 0 3px #eef5d833}#dash-text{display:block;font-size:8px;color:#dce4c4b0;margin-top:4px}.dash-status{align-items:flex-start;flex-direction:column;gap:0}.dash-line i{transition:width .06s linear}.dash-line.breathing i{animation:spirit-breathe 1.8s ease-in-out infinite}.dash-line.low i{background:#a4a596}@keyframes spirit-breathe{0%,100%{opacity:.65;box-shadow:0 0 2px #edf3dd33}50%{opacity:1;box-shadow:0 0 7px #edf3dd88}}@media(prefers-reduced-motion:reduce){.dash-line.breathing i{animation:none}}.collect{width:125px;height:23px;background:#b5bc9c22;border-radius:5px;padding:0 10px;gap:12px}.collect>span{font-size:27px;line-height:1;color:#d1d35a}.collect b{font-size:15px;color:#e0dfae}.collect small{display:none}.location{font-size:9px;color:#c1cb9b}.location small{font-size:8px;color:#9caf80}.combo-readout{font-size:9px;color:#c0cca1a8}.guide p{color:#81906c}@media(max-width:700px){.hud{top:12px;left:13px;right:13px}.health-block{width:105px}#hearts{width:105px;height:7px;margin-bottom:6px}.dash-line{width:88px;height:4px}.collect{width:72px;height:18px;padding:0 5px;gap:5px}.collect>span{font-size:20px}.collect b{font-size:11px}.location{font-size:7px}.location small{display:none}}


/* BUILD 08: clean anime UI, ink contours and cel-like hard highlights. */
:root{--anime-ink:#203e45;--ink:#edf5dc;--muted:#a2bbaa;--line:#7da88b40}
body{background-color:#132b2a;background-image:linear-gradient(145deg,#264941 0%,#162f2e 48%,#142827 100%)}
.game{border:2px solid #47685b;border-top-color:#b0c392;border-radius:6px;box-shadow:0 6px 0 #0c2226,0 22px 70px #061a2044}
.brand-mark{border:2px solid #92b497;color:#d0e3b4;background:#315346;box-shadow:inset 0 2px 0 #d4e5b922}
.toolbar button{border-color:#668c7770;background:#284b42;box-shadow:inset 0 1px 0 #c5dbad22,0 2px 0 #0d2529;color:#d5e6ca}
.toolbar button:hover{background:#3a6251;color:#fff9da}
.primary{border:2px solid #203e45;border-top-color:#f4f4cb;background:#d7e5ae;box-shadow:0 4px 0 #173b3d;color:#213f3c;font-weight:600}
.primary:hover{background:#ebefc1}
#hearts{border:1px solid #243d39;box-shadow:0 1px 0 #e9efc02b}.health-fill{background:linear-gradient(0deg,#c84a65 0 68%,#fa8994 68% 100%)}
.dash-line{border:1px solid #284641;box-sizing:content-box}.dash-line i{background:linear-gradient(0deg,#d4e8e3 0 65%,#fbfff0 65% 100%)}
.collect{border:1px solid #5b795b80;background:#334c3fbb;box-shadow:inset 0 1px 0 #d7dfb422}
.location,.status-line{color:#e3edc6;text-shadow:1px 1px 0 #203e45}.location small{color:#c3d9ae}
.touch-controls button{border:2px solid #567e6c;background:#224d46d9;box-shadow:0 3px 0 #173b3d}
.veil{background:linear-gradient(90deg,#123b34e6,#173c3290 44%,transparent 82%)}
