:root{color-scheme:dark;--ink:#eee6d0;--muted:#afb09a;--gold:#d6b471;--gold-light:#ead39a;--green:#a8c298;--line:#626653;--paper:#d6caaa;--dark:#252d27;--font:"Microsoft YaHei","PingFang SC","Noto Sans CJK SC",sans-serif;font-family:var(--font);font-size:16px;background:#242a24;color:var(--ink)}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}button:focus-visible{outline:2px solid var(--gold-light);outline-offset:4px}button{color:inherit}h1,h2,h3,p{margin:0}button{transition:background .16s,color .16s,border-color .16s,transform .16s}button:active:not(:disabled){transform:translateY(1px)}button[hidden],[hidden]{display:none!important}
#app{height:100dvh;min-height:770px;position:relative;overflow:hidden;isolation:isolate;background:#363c31}.world{position:absolute;inset:0 0 217px;z-index:-2}#world{width:100%;height:100%;display:block;touch-action:none;cursor:grab}#world:active{cursor:grabbing}.world-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#141b2299 0%,transparent 23%,transparent 76%,#1c231f55 100%)}#render-status{position:absolute;inset:0;display:grid;place-content:center;pointer-events:none;font-size:18px;color:var(--gold-light);background:#293027cc}#render-status.ready{display:none}
.topbar{height:87px;margin:0 28px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #cabb8c3b;gap:20px}.brand{display:flex;align-items:center;gap:13px;min-width:248px}.brand-seal{display:grid;place-items:center;width:42px;height:47px;border:1px solid #ac9973;border-radius:4px 4px 16px 16px;font-family:"STSong","SimSun",serif;font-size:27px;color:var(--gold-light);box-shadow:inset 0 0 0 4px #333c32}.brand h1{font-size:23px;font-weight:550;letter-spacing:.22em;font-family:"Songti SC","SimSun",serif}.brand>div>span{display:block;color:#c9c8ae;font-size:12px;letter-spacing:.075em;margin-top:7px}.brand i{font-style:normal;margin:0 7px}.dayline{display:flex;align-items:center;gap:14px;font-size:16px}.phase-tag{border:1px solid #9c9d7255;background:#283b31b0;padding:5px 11px;color:#c4d2ac;font-size:13px;border-radius:3px}#date-label{font-size:13px;color:#c4c3a9}.header-actions{display:flex;align-items:center;gap:12px}.wallet{display:flex;align-items:baseline;gap:10px;background:none;border:0;padding:8px 15px 8px 0}.wallet span{color:#c6c5ad;font-size:13px}.wallet b{font-size:32px;color:var(--gold-light);font-weight:500;line-height:1;font-family:Georgia,serif;font-variant-numeric:tabular-nums}.wallet small{font-size:22px;color:var(--gold)}.icon-btn{border:1px solid #9a9c7666;width:32px;height:32px;border-radius:50%;background:#202d2466;color:#dbd4b9;font-size:18px}.icon-btn:hover{background:#58634b}
.panel{background:linear-gradient(125deg,#29382eee,#253128f0);border:1px solid #78816b6e;box-shadow:0 12px 30px #08160d44, inset 0 0 0 4px #17271d20;border-radius:4px;padding:19px}.left-panel{position:absolute;left:28px;top:112px;width:244px;bottom:292px;overflow:auto;scrollbar-width:thin;scrollbar-color:#747e63 transparent}.panel-top{display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:13px;letter-spacing:.15em;color:var(--gold)}.tiny{font-size:11px;color:#9da48e;font-family:monospace}.left-panel h2{font-size:25px;font-weight:500;line-height:1.45;margin:22px 0 13px;font-family:"Songti SC","SimSun",serif}.left-panel .meta{display:flex;gap:8px;align-items:center;font-size:14px;color:#b4bca5;margin-bottom:9px}.meta .price{font-size:22px;color:var(--gold-light);margin-right:4px}.meta .dimension{margin-left:auto;border:1px solid #a0ad8855;padding:3px 8px;border-radius:2px;font-size:12px}.left-panel .bodytext{font-size:16px;line-height:1.9;color:#d7dcc6}.rule{height:1px;background:#8796793d;margin:20px 0}.quiet-note{font-family:"Songti SC","SimSun",serif;font-size:14px;line-height:1.85;color:#acb8a0;border-left:2px solid #88936b55;padding-left:12px;margin-top:20px}.action-label{display:flex;justify-content:space-between;font-size:13px;color:#bdc7b2;margin-bottom:13px}.action-dots{letter-spacing:3px;color:var(--gold)}.inspect-button{width:100%;display:flex;align-items:center;gap:10px;background:#4a57453d;border:1px solid #72816466;border-radius:3px;padding:9px 11px;margin-bottom:7px;min-height:41px;font-size:14px;text-align:left}.inspect-button img{width:27px;height:27px;object-fit:contain}.inspect-button small{margin-left:auto;color:#a9bb97;font-size:12px}.inspect-button:hover:not(:disabled){background:#6575546b;border-color:#b0bd88}.inspect-button:disabled{opacity:.48}.inspect-button.done{opacity:.85;border-color:#6e8d60;background:#4b664536}.inline-hint{font-size:12px;line-height:1.6;color:#98a38d}.tool-count{font-variant-numeric:tabular-nums}
.paper{background:linear-gradient(108deg,#e1d5b8,#cfc2a1);color:#3f4638;border:1px solid #b9aa87;box-shadow:0 12px 32px #13150e45,inset -5px 0 10px #bbaa7933;border-radius:2px;padding:21px 22px 17px}.right-panel{position:absolute;top:117px;right:28px;width:274px;bottom:292px;display:flex;flex-direction:column;transform:rotate(.45deg)}.clip{position:absolute;top:-8px;left:calc(50% - 25px);width:50px;height:18px;background:linear-gradient(#838a80,#b6b9a6,#717e6f);border:1px solid #5a695c;border-radius:3px;box-shadow:0 3px 4px #38372466}.paper-head{display:flex;justify-content:space-between;font-size:12px;color:#697057;border-bottom:1px solid #797d6038;padding-bottom:12px}.paper-head b{font-weight:400;font-family:monospace}.paper h2{font-family:"Songti SC","SimSun",serif;font-size:22px;font-weight:600;margin:22px 0 20px;line-height:1.4}.paper #evidence-list{flex:1;overflow:auto;scrollbar-width:thin;scrollbar-color:#9d9876 transparent;padding-right:3px}.paper .empty-evidence{font-size:16px;line-height:1.95;color:#6d735f}.paper .evidence{border-bottom:1px solid #86846736;padding-bottom:13px;margin-bottom:14px;animation:paper-in .25s ease-out}.evidence h3{font-size:13px;font-weight:500;color:#87633f;margin:0 0 7px}.evidence p{font-size:15px;line-height:1.8}.paper-footer{margin-top:15px;display:flex;justify-content:space-between;border-top:1px solid #84876740;padding-top:11px;font-size:11px;color:#81836b}.receipt-note{font-size:15px;line-height:2}.receipt-note .handwritten{font-family:"STKaiti","KaiTi",serif;font-size:22px;color:#765a3f;margin:15px 0}.paper-stat{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px dotted #77785955;font-size:14px}.paper-stat strong{font-weight:500}
.scene-caption{position:absolute;top:107px;left:310px;right:338px;display:flex;align-items:center;justify-content:center;gap:14px;pointer-events:none;color:#e0d6b8;font-size:11px;letter-spacing:.18em;text-shadow:0 1px 4px #202c1e}.scene-line{height:1px;background:#d8c5914d;max-width:45px;flex:1}.dialogue{position:absolute;left:calc(50% - 264px);bottom:284px;width:528px;padding:15px 20px 17px;background:linear-gradient(110deg,#1d2b23eb,#27372ce8);border:1px solid #7e876655;border-left:3px solid #bc9b5d;border-radius:2px;box-shadow:0 8px 23px #0b190f30}.dialogue-person{display:flex;align-items:baseline;gap:12px;margin-bottom:9px}#guest-name{font-size:15px;color:#e2c890}#guest-role{font-size:12px;color:#a8b69c}.dialogue p{font-size:16px;color:#e2e4d0;line-height:1.85;white-space:pre-line;max-height:126px;overflow:auto}.object-controls{position:absolute;left:calc(50% - 105px);bottom:439px;display:flex;gap:10px;align-items:center;z-index:2;background:#20332980;border-radius:30px;padding:3px 6px}.object-controls span{font-size:11px;color:#d3dbc3}.object-controls button{border:0;border-radius:50%;background:#263d2bb0;width:29px;height:29px;font-size:21px;color:#e8dcba}.object-controls button:hover{background:#6a7650}
.workbench{position:absolute;bottom:36px;left:0;right:0;min-height:232px;display:grid;grid-template-columns:260px 254px minmax(340px,1fr);gap:28px;padding:19px 30px 13px;background:linear-gradient(#303b30f5,#273126);border-top:2px solid #8d8b6266;box-shadow:0 -9px 30px #16251b44,inset 0 3px #c7b5850c}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;height:24px}.section-title h2{font-size:15px;font-weight:500;letter-spacing:.04em}.section-title>span{font-size:12px;color:#b6bea5}.section-title b{color:var(--gold-light);font-weight:500}.cabinet{padding-right:22px;border-right:1px solid #7c846447}#tool-rack{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.tool-card{height:64px;border:1px solid #77836461;background:#20312473;border-radius:3px;position:relative;padding:3px 2px 5px;display:flex;align-items:center;justify-content:flex-end;flex-direction:column}.tool-card img{width:47px;height:40px;object-fit:contain;position:absolute;top:0}.tool-card .tool-name{font-size:11px;white-space:nowrap;position:relative}.tool-card .space-size{position:absolute;top:3px;right:5px;font-size:10px;color:#a8b596}.tool-card.equipped{border-color:#c2b77c90;background:#6c76522e}.tool-card.equipped:after{content:'✓';position:absolute;top:3px;left:4px;font-size:11px;color:#cdd5a0}.tool-card:hover:not(:disabled){border-color:var(--gold);background:#6a76513d}.tool-card:disabled{cursor:default}.micro{font-size:12px;color:#adb69b;margin-top:10px;line-height:1.5}.inventory{padding-right:15px;border-right:1px solid #7c846447}#bag{display:grid;grid-template-columns:repeat(4,52px);grid-template-rows:repeat(3,48px);gap:4px;position:relative;width:220px;height:152px;touch-action:none}.bag-cell{border:1px solid #69775b66;background:#17271c6b;border-radius:2px;position:absolute;width:52px;height:48px;color:#748467;font-size:10px;padding:4px;display:flex;align-items:flex-end;cursor:pointer}.bag-cell.drop-valid{background:#a8c08145;border-color:#cddd9c}.bag-cell.drop-invalid{background:#ba684945;border-color:#d09272}.bag-item{position:absolute;border:1px solid #9e98756e;background:linear-gradient(125deg,#696c4740,#444d3466);border-radius:3px;cursor:grab;overflow:hidden;color:#d8d6b3;padding:0;display:flex;align-items:center;justify-content:center;touch-action:none}.bag-item img{max-width:94%;max-height:89%;object-fit:contain;pointer-events:none;filter:drop-shadow(1px 4px 3px #13241870)}.bag-item .bag-name{position:absolute;left:3px;right:3px;bottom:2px;font-size:10px;text-align:center;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 3px #131d10}.bag-item.goods{background:linear-gradient(125deg,#b18d5352,#63573857);border-color:#c7a26780}.bag-item.selected{outline:1px solid var(--gold-light);outline-offset:1px;background:#7880546b}.bag-item.dragging{opacity:.45}.bag-controls{display:flex;align-items:center;justify-content:space-between;margin-top:7px;font-size:11px;color:#9eab8f}.bag-controls button{border:0;background:none;color:#c5c9a9;font-size:18px;padding:0 4px;line-height:1}.action-panel{min-width:0;display:flex;flex-direction:column;justify-content:center}.action-panel h2{font-size:23px;line-height:1.45;font-family:"Songti SC","SimSun",serif;font-weight:500;color:#e5d7ad}.action-panel .description{font-size:14px;color:#acb9a0;line-height:1.85;margin-top:8px}.action-panel .action-kicker{font-size:12px;color:#b6c19f;letter-spacing:.14em;margin-bottom:9px}.action-row{display:flex;gap:11px;margin-top:19px}.btn{border:1px solid #929b775f;background:#495a3c6b;padding:11px 17px;color:#e5e4cb;border-radius:3px;font-size:15px;min-height:42px;letter-spacing:.01em}.btn:hover:not(:disabled){background:#6b7b506b;border-color:#b5c390}.btn.primary{background:linear-gradient(#d1b97c,#c1a165);border-color:#e2c88a;color:#2f3a2a;box-shadow:inset 0 1px #f4e2b955,0 3px 7px #111e1744;font-weight:600}.btn.primary:hover:not(:disabled){background:#e4cb91}.btn:disabled{opacity:.4}.btn.ghost{background:transparent;color:#b5c0a5}.btn.small{padding:7px 11px;font-size:13px;min-height:32px}.btn.danger{border-color:#a1715566;color:#d0aa8a}.inline-selection{display:flex;align-items:center;justify-content:space-between;gap:10px}.inline-selection h2{font-size:20px}.selected-meta{font-size:12px;color:#a8b69a;margin:5px 0 9px}.cert-row{display:flex;gap:8px;margin-bottom:10px}.cert-choice{border:1px solid #70836288;background:#24362380;padding:7px 11px;font-size:13px;border-radius:2px;color:#bdc7ad}.cert-choice.active{background:#89935a40;border-color:#c2ba7f;color:#e7deb5}.route-list{display:flex;gap:7px;flex-wrap:wrap}.route{border:1px solid #79816566;background:#1f31245e;border-radius:3px;padding:8px 12px;font-size:14px;min-width:86px;display:flex;align-items:baseline;gap:12px}.route b{color:#d8c080;font-weight:500;font-variant-numeric:tabular-nums}.route.active{background:#8b935846;border-color:#d4c080}.route.special{border-color:#b0bd83;color:#d2ddba}.sell-footer{display:flex;gap:14px;align-items:center;justify-content:space-between;margin-top:11px}.sell-footer p{color:#aebd9f;font-size:12px;line-height:1.55;max-width:370px}.statusbar{position:absolute;bottom:0;left:0;right:0;height:36px;padding:0 30px;border-top:1px solid #6f7f573b;background:#1c2b20;display:flex;align-items:center;gap:30px;font-size:12px;color:#aebb9f}.statusbar>span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:1}.statusbar>div{display:flex;gap:20px;white-space:nowrap}.statusbar .saved{font-size:11px;color:#7e9475}#toast{position:fixed;left:50%;top:95px;transform:translate(-50%,-12px);opacity:0;pointer-events:none;max-width:600px;background:#2a3a2df5;border:1px solid #b8bd84;border-radius:4px;box-shadow:0 10px 35px #101b1170;padding:12px 22px;z-index:10;font-size:15px;color:#eee5c6;transition:opacity .2s,transform .2s}#toast.visible{opacity:1;transform:translate(-50%,0)}
dialog{width:min(650px,calc(100% - 32px));max-height:85dvh;overflow:auto;border:1px solid #a4a67d;background:linear-gradient(125deg,#354233,#273426);color:var(--ink);border-radius:6px;padding:39px 42px;box-shadow:0 30px 100px #0d170dcc}dialog::backdrop{background:#111b16b5;backdrop-filter:blur(6px)}.modal-close{position:absolute;right:13px;top:10px;background:none;border:0;color:#b9c3a5;font-size:27px}.modal-kicker{color:#bfc591;font-size:12px;letter-spacing:.16em;margin-bottom:14px}dialog h2{font-family:"Songti SC","SimSun",serif;font-size:32px;font-weight:500;color:#e7d5a2;margin-bottom:24px}dialog p{font-size:16px;line-height:1.95;color:#d3dcc5;white-space:pre-line}dialog .rules{font-size:15px;line-height:1.9;color:#c0ccb4;margin-top:15px}dialog .rule-item{margin-bottom:15px;padding-left:33px;position:relative}dialog .rule-item b{position:absolute;left:0;top:0;color:#d8c58c;font-weight:400}dialog .summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:20px 0}dialog .summary-cell{background:#1b2c2080;border:1px solid #79916442;padding:14px 17px}dialog .summary-cell span{display:block;font-size:12px;color:#a4b994}dialog .summary-cell b{display:block;font-size:24px;color:#d4c58f;margin-top:9px;font-weight:500}dialog .ledger{border-top:1px solid #9eaa7744;margin-top:23px;padding-top:15px;max-height:250px;overflow:auto}dialog .ledger p{font-size:14px;line-height:1.9;padding-bottom:9px;color:#b9c8aa}dialog .ledger h3{font-weight:500;font-size:17px;color:#d8c58c;margin:16px 0 9px}.ending-number{font-family:Georgia,serif;font-size:45px;color:#ddc896;margin:23px 0 10px}.ending-number small{font:13px var(--font);color:#a5b495;display:block;margin-bottom:7px}.modal-actions{display:flex;gap:12px;margin-top:25px;flex-wrap:wrap}.night-note{font-size:14px!important;color:#b3c09e!important}.leave-stock{color:#dabd82;font-size:13px;margin-bottom:10px}
@keyframes paper-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
@media(min-width:1600px){.left-panel{left:42px;width:276px}.right-panel{right:42px;width:306px}.workbench{grid-template-columns:285px 270px minmax(400px,1fr);padding-left:42px;padding-right:42px;gap:36px}.dialogue{left:calc(50% - 300px);width:600px}.topbar{margin:0 42px}.left-panel .inspect-button{padding:11px 12px}.statusbar{padding:0 42px}.dialogue p{font-size:17px}}
@media(max-width:1200px){.topbar{margin:0 18px;gap:12px}.brand{min-width:206px}.brand h1{font-size:21px}.brand-seal{width:36px;height:41px}.brand>div>span{font-size:10px}.dayline{gap:8px}#date-label{display:none}.header-actions{gap:8px}.wallet{padding-right:5px}.left-panel{left:18px;width:214px;padding:15px;top:106px}.left-panel h2{font-size:22px}.right-panel{right:18px;width:240px;padding:19px 18px;top:111px}.paper h2{font-size:20px}.scene-caption{left:253px;right:272px}.dialogue{left:249px;width:calc(100% - 522px);padding:12px 14px;bottom:282px}.dialogue p{font-size:14px;line-height:1.8;max-height:122px}.dialogue-person{gap:8px}#guest-name{font-size:14px}#guest-role{font-size:11px}.workbench{grid-template-columns:204px 236px minmax(285px,1fr);gap:18px;padding:16px 18px 13px}.cabinet{padding-right:14px}.tool-card .tool-name{font-size:10px}.action-panel h2{font-size:21px}.action-panel .description{font-size:13px}.action-panel .btn{font-size:14px;padding:10px 13px}.route{font-size:12px;padding:7px 9px;gap:8px;min-width:77px}.cert-choice{font-size:12px;padding:6px 8px}.statusbar{padding:0 18px;gap:16px}.statusbar>div{gap:13px}.statusbar .saved{display:none}}
@media(max-height:820px) and (min-width:1000px){#app{min-height:720px}.topbar{height:73px}.left-panel{top:91px;bottom:280px}.right-panel{top:96px;bottom:280px}.left-panel h2{margin:14px 0 9px}.rule{margin:13px 0}.inspect-button{padding:6px 8px;min-height:34px;margin-bottom:5px}.quiet-note{margin-top:12px;font-size:12px}.paper h2{margin:17px 0 15px}.scene-caption{top:88px}.dialogue{bottom:276px;padding:11px 17px}.dialogue p{font-size:14px;line-height:1.8;max-height:103px}.object-controls{bottom:410px}.paper .evidence p{font-size:14px}.paper .evidence{margin-bottom:10px;padding-bottom:10px}}
@media(max-width:960px){#app{height:auto;min-height:100dvh;overflow:visible;padding-top:80px}.topbar{position:absolute;top:0;left:0;right:0;height:77px}.brand{min-width:0}.brand h1{font-size:20px}.brand>div>span{display:none}.brand-seal{width:31px;height:37px;font-size:22px}.dayline{font-size:13px}.phase-tag{font-size:11px}.wallet b{font-size:24px}.wallet span{display:none}.world{height:430px;bottom:auto;top:0}.scene-caption{top:91px;left:100px;right:100px}.left-panel{position:relative;left:auto;top:auto;bottom:auto;width:auto;margin:300px 16px 0;padding:18px}.left-panel h2{font-size:23px;margin:12px 0}.left-panel .panel-top{padding-right:0}.left-panel #left-body{display:flex;flex-wrap:wrap;gap:6px}.left-panel .action-label{width:100%;margin-bottom:3px}.inspect-button{width:calc(50% - 3px);margin:0;min-height:40px}.left-panel .rule{margin:12px 0}.quiet-note{margin-top:10px;font-size:13px}.left-panel .bodytext{font-size:15px}.left-panel .meta{display:inline-flex;margin-right:10px}.left-panel .meta .dimension{margin-left:10px}.right-panel{position:relative;right:auto;top:auto;bottom:auto;width:auto;margin:16px;max-height:360px;min-height:220px;transform:none}.paper h2{margin:15px 0}.paper #evidence-list{min-height:70px}.paper .evidence p{font-size:16px}.dialogue{top:234px;left:16px;right:16px;width:auto;bottom:auto;padding:12px 17px;max-height:143px;overflow:auto}.dialogue p{font-size:14px;max-height:100px}.object-controls{bottom:auto;top:186px;left:auto;right:18px}.workbench{position:relative;bottom:auto;display:grid;grid-template-columns:minmax(120px,1fr) 235px;gap:15px;padding:20px 16px;min-height:0}.cabinet{padding-right:12px}.inventory{border:0;padding-right:0}.action-panel{grid-column:1/-1;border-top:1px solid #73835a55;padding-top:18px;min-height:160px}.tool-card{height:65px}.tool-card .tool-name{font-size:11px}.action-panel h2{font-size:24px}.action-panel .description{font-size:15px}.route{font-size:14px;min-width:95px}.cert-choice{font-size:14px}.statusbar{position:relative;bottom:auto;height:auto;min-height:60px;display:block;padding:12px 16px;font-size:12px}.statusbar>span{display:block;white-space:normal;line-height:1.7;margin-bottom:8px}.statusbar>div{display:flex;justify-content:space-between}.header-actions{gap:7px}.icon-btn{width:28px;height:28px;font-size:16px}.scene-caption{font-size:10px}#sound-btn{display:none}.paper-stat{font-size:15px}.sell-footer p{font-size:13px}.action-panel .btn{font-size:15px}.left-panel .inline-hint{width:100%}.left-panel .bodytext{width:100%}}
@media(max-width:470px){.topbar{margin:0 13px}.brand{gap:8px}.brand h1{font-size:18px;letter-spacing:.08em}.brand-seal{display:none}.dayline{gap:6px}.header-actions{gap:6px}.wallet{gap:4px}.wallet small{font-size:17px}.phase-tag{padding:4px 6px}.workbench{grid-template-columns:1fr 227px;gap:10px}.cabinet{padding-right:8px}#tool-rack{grid-template-columns:repeat(2,1fr);gap:5px}.tool-card{height:53px}.tool-card img{width:36px;height:31px}.tool-card .tool-name{font-size:9px}.tool-card .space-size{font-size:9px}.cabinet .section-title{flex-direction:column;align-items:flex-start;gap:4px;height:36px}.cabinet .micro{font-size:10px}.section-title h2{font-size:14px}.bag-controls{font-size:10px}.modal-close{top:4px;right:9px}dialog{padding:29px 23px}.dialogue-person{margin-bottom:5px}}
