:root{color:#f4ead0;background:#10130f;font-family:Microsoft YaHei,PingFang SC,system-ui,sans-serif;--panel: rgba(19, 24, 20, .88);--line: rgba(232, 207, 140, .35);--gold: #d8bd73;--jade: #7bb38f;--danger: #c85c5c}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 30% 20%,#26382d 0,#10130f 42%,#080a08)}button{border:1px solid var(--line);background:#243327;color:#f7edd4;padding:10px 14px;border-radius:6px;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}#app{width:100%;min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,420px);overflow-x:hidden}#game-root{min-width:0;min-height:100vh;overflow:hidden}#game-root canvas{display:block;max-width:100%}#hud-root{min-width:0;border-left:1px solid var(--line);background:var(--panel);padding:18px;overflow:auto}@media(max-width:820px){#app{grid-template-columns:1fr}#game-root{min-height:48vh}#game-root canvas{width:100%!important;height:auto!important}#hud-root{border-left:0;border-top:1px solid var(--line)}}.hud-section{border:1px solid var(--line);background:#0b0e0c94;border-radius:8px;padding:14px;margin-bottom:12px}.hud-title h1,.hud-section h2{margin:0 0 8px}.hud-title p,.hud-section p{margin:0;line-height:1.6}.resource-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.route-meter-list,.task-list{display:grid;gap:10px}.meter-label{display:flex;justify-content:space-between;gap:12px;margin-bottom:5px;font-size:.92rem}.meter-track{height:8px;overflow:hidden;border:1px solid rgba(244,234,208,.18);border-radius:999px;background:#f4ead014}.meter-track span{display:block;height:100%;border-radius:inherit;transition:width .18s ease}.route-folk .meter-track span{background:var(--jade)}.route-immortal .meter-track span{background:var(--gold)}.route-dark .meter-track span{background:var(--danger)}.task-item{display:grid;gap:4px;padding:10px;border:1px solid rgba(232,207,140,.2);border-radius:6px;background:#2433278f}.task-item span,.task-item small,.quiet-text{color:#c9d9c9}.choice-list{display:grid;gap:8px;margin-top:12px}.choice-list button{text-align:left}.choice-list small{display:block;color:#c9d9c9;margin-top:4px}.log-list{margin:0;padding-left:18px;line-height:1.5}.action-row{display:flex;gap:8px;flex-wrap:wrap}
