:root{--ink:#2f2822;--ink-soft:#6a5c4d;--paper:#f9f5ecdb;--paper-line:#8c704a57;--gold:#a37c35;--accent:#9c3a2c}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);-webkit-font-smoothing:antialiased;background:#1b1f27;margin:0;padding:0;font-family:Songti SC,STSong,Source Han Serif SC,Noto Serif SC,SimSun,serif;overflow:hidden}#scene{touch-action:none;cursor:grab;width:100%;height:100%;display:block;position:fixed;inset:0}#scene:active{cursor:grabbing}body:after{content:"";z-index:5;pointer-events:none;background:radial-gradient(at 50% 46%,#0000 42%,#1a100842 100%);position:fixed;inset:0}#loader{z-index:30;background:radial-gradient(circle at 50% 42%,#f6e3c9 0%,#d8b58d 45%,#8d6f57 100%);place-items:center;transition:opacity .9s,visibility .9s;display:grid;position:fixed;inset:0}#loader.done{opacity:0;visibility:hidden}.loader-box{text-align:center;color:#4a3a2c;letter-spacing:.35em;font-size:13px}.loader-mark{border:2px solid #4a3a2c80;border-top-color:#0000;border-radius:50%;width:46px;height:46px;margin:0 auto 20px;animation:1.1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.title-block{z-index:10;pointer-events:none;color:#fdf6e9;text-shadow:0 2px 18px #1c12088c,0 1px 2px #0006;position:fixed;top:30px;left:34px}.title-block h1{letter-spacing:.28em;margin:0;font-size:34px;font-weight:500;line-height:1.1}.title-block .rule{background:linear-gradient(90deg,#ffe2b0f2,#ffe2b000);width:78px;height:1px;margin:12px 0 10px}.title-block p{letter-spacing:.36em;opacity:.82;margin:0;font-size:11.5px}.panel{z-index:10;background:var(--paper);border:1px solid var(--paper-line);-webkit-backdrop-filter:blur(9px);border-radius:3px;align-items:center;gap:2px;padding:7px 10px;display:flex;position:fixed;box-shadow:0 10px 30px #1810082e,inset 0 0 0 1px #ffffff80}.stats{gap:16px;padding:9px 16px;top:30px;right:30px}.stat{flex-direction:column;align-items:center;min-width:44px;display:flex}.stat b{color:var(--accent);letter-spacing:.02em;font-family:SF Mono,Consolas,monospace;font-size:14px;font-weight:600}.stat span{letter-spacing:.16em;color:var(--ink-soft);font-size:9.5px;transform:scale(.94)}.actions{gap:6px;padding:6px;bottom:30px;right:30px}.actions button{appearance:none;letter-spacing:.14em;color:var(--ink-soft);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:2px;padding:8px 14px;font-family:inherit;font-size:12px;transition:background .22s,color .22s,border-color .22s}.actions button:hover{color:var(--ink);background:#a37c351f}.actions button.on{color:var(--accent);background:#9c3a2c1a;border-color:#9c3a2c4d}.hint{z-index:10;letter-spacing:.2em;color:#fff8ecb8;text-shadow:0 1px 10px #140c0499;pointer-events:none;font-size:10.5px;position:fixed;bottom:34px;left:34px}@media (width<=820px){.title-block{top:20px;left:20px}.title-block h1{font-size:26px}.stats{gap:10px;padding:7px 10px;top:18px;right:16px}.hint{display:none}.actions{bottom:18px;right:50%;transform:translate(50%)}.actions button{padding:8px 10px;font-size:11px}}
