:root{--ui-bg:#0a0e129e;--ui-fg:#e9f3e6;--ui-dim:#9fb3a6;--ui-accent:#86f4ff;--btn-bg:#141e1c80;--btn-bg-down:#86f4ff59;--btn-border:#e9f3e659;--font:ui-monospace, "Cascadia Mono", Consolas, "D2Coding", "Malgun Gothic", "Apple SD Gothic Neo", "Noto Sans KR", monospace}*{box-sizing:border-box}html,body{width:100%;height:100%;color:var(--ui-fg);font-family:var(--font);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;background:#07080c;margin:0;overflow:hidden}#game{width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges;display:block;position:fixed;top:0;bottom:0;left:0;right:0}#hud{pointer-events:none;width:100%;height:100%;font-size:12px;line-height:1.25;position:fixed;top:0;left:0}#hud-left{flex-direction:column;align-items:flex-start;gap:3px;display:flex;position:absolute;top:6px;left:6px}#hud-right{text-align:right;flex-direction:column;align-items:flex-end;gap:2px;display:flex;position:absolute;top:6px;right:6px}.chip,#fps,#res{background:var(--ui-bg);color:var(--ui-fg);font:inherit;white-space:nowrap;border:0;border-radius:3px;padding:2px 6px}.chip{pointer-events:auto;cursor:pointer}.chip:active{background:#86f4ff40}kbd{border:1px solid var(--ui-dim);min-width:1.4em;color:var(--ui-accent);font:inherit;text-align:center;border-radius:2px;margin-right:4px;padding:0 3px;display:inline-block}#hud-menu.on{background:#86f4ff40}#devmenu{pointer-events:auto;flex-direction:column;align-items:flex-start;gap:3px;margin-top:2px;display:flex}#devmenu[hidden]{display:none}.dm-items{flex-direction:column;align-items:flex-start;gap:3px;display:flex}a.dm-item{text-decoration:none}.dm-note{background:var(--ui-bg);color:var(--ui-dim);border-radius:3px;padding:1px 6px;font-size:10px}#tuning,#camera{pointer-events:auto;touch-action:pan-y;background:#0a0e12d6;border-radius:4px;width:260px;max-height:calc(100% - 52px);padding:6px 8px 8px;font-size:11px;position:absolute;top:44px;right:6px;overflow-y:auto}#tuning[hidden],#camera[hidden]{display:none}.tn-toggle{margin-top:4px}.tn-toggle.changed{color:#ffd27a}.tn-row.off{opacity:.45}.tn-head{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.tn-head b{color:var(--ui-accent);flex:1 0 100%}.tn-msg{color:#b9f6a0;min-height:1.2em;margin-top:2px;font-size:10px}.tn-group{color:var(--ui-accent);border-top:1px solid #e9f3e626;margin-top:6px;padding-top:4px}.tn-row{grid-template-columns:1fr auto;align-items:center;gap:0 6px;margin-top:4px;display:grid}.tn-row input{grid-column:1/-1;width:100%;margin:2px 0 0}.tn-val{color:var(--ui-fg);white-space:nowrap}.tn-row.changed .tn-val{color:#ffd27a}.tn-note{color:var(--ui-dim);font-size:10px}#fps{color:#b9f6a0;font-weight:700}#fps.low{color:#ffb86b}#res{color:var(--ui-dim);font-size:11px}#touch{padding:0 max(14px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));pointer-events:none;justify-content:space-between;align-items:flex-end;display:none;position:fixed;bottom:0;left:0;right:0}body.touch #touch{display:flex}.pad{pointer-events:auto;gap:12px;display:flex}#touch button{border:2px solid var(--btn-border);background:var(--btn-bg);width:72px;height:72px;color:var(--ui-fg);font:bold 20px var(--font);touch-action:none;-webkit-user-select:none;user-select:none;border-radius:14px}#touch button[data-action=jump]{border-radius:48px;width:96px;font-size:18px}#touch button.down{background:var(--btn-bg-down);border-color:var(--ui-accent)}@media (max-height:420px){#touch button{width:60px;height:60px}#touch button[data-action=jump]{width:84px}}#error{color:#ffd9d9;max-height:45%;font:12px/1.4 var(--font);white-space:pre-wrap;z-index:10;-webkit-user-select:text;user-select:text;background:#3c080ceb;border-radius:4px;padding:8px 10px;position:fixed;bottom:8px;left:8px;right:8px;overflow:auto}@media (max-width:700px),(max-height:420px){#hud{font-size:10px}.chip,#fps,#res{padding:1px 4px}#res{font-size:9px}}#editor-badge{color:#ffe2a6;pointer-events:none;white-space:nowrap;background:#3a3220d9;border:1px solid #e2b24f;border-radius:10px;padding:2px 10px;font-size:12px;position:absolute;top:6px;left:50%;transform:translate(-50%)}#creature-info{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}#creature-info .ci-box{color:#e8edf2;white-space:pre;text-align:center;background:#0a0c10c7;border:1px solid #fff3;border-radius:4px;padding:1px 5px;font-size:11px;line-height:1.3;position:absolute;transform:translate(-50%,calc(-100% - 6px))}#creature-info .ci-ring{border:1px dashed #ffffff38;border-radius:50%;position:absolute;transform:translate(-50%,-50%)}#creature-info .ci-hit{background:#ff463c2e;border:2px solid #ff463cf2;position:absolute}#creature-info [data-state=eat]{border-color:#62d6c6bf}#creature-info [data-state=alert]{border-color:#f2d64ed9}#creature-info [data-state=attack]{border-color:#ff6050e6}#creature-info [data-state=flee]{border-color:#be8cffd9}#hp{box-sizing:border-box;background:#0c0916d1;border:1px solid #5f4d34;width:104px;height:9px;padding:2px}#hp i{background:#ff7a18;width:100%;height:100%;display:block;-webkit-mask-image:repeating-linear-gradient(90deg,#000 0 calc(10% - 1px),#0000 calc(10% - 1px) 10%);mask-image:repeating-linear-gradient(90deg,#000 0 calc(10% - 1px),#0000 calc(10% - 1px) 10%);-webkit-mask-size:100px 100%;mask-size:100px 100%}#hp.low i{background:#c9480c}.pad-move{position:relative}#touch button.pad-up{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%)}#touch button[data-action=attack],#touch button[data-action=magic]{border-radius:36px;font-size:16px}#touch button[hidden]{display:none}#touch button[data-action=magic]{color:#c9fff4;border-color:#17756c}#box-overlay{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}#box-overlay .bx{box-sizing:border-box;position:absolute}#box-overlay .bx[data-kind=body]{border:1px solid #ffffffbf}#box-overlay .bx[data-kind=warn]{border:1px dashed #ffe25af2}#box-overlay .bx[data-kind=hit]{background:#ff463c4d;border:1px solid #ff463c}#box-overlay .bx[data-kind=shot]{background:#ff962866;border:1px solid #ff9628}#hud{--px:1px;--ui-font:max(11px, calc(var(--px) * 9))}.inspect-prompt{padding:calc(var(--px) * 2) calc(var(--px) * 4);color:var(--ui-fg);font:var(--ui-font) / 1.2 var(--font);white-space:nowrap;pointer-events:auto;background:#0c0916db;border:1px solid #937b4c;border-radius:0;position:absolute;transform:translate(-50%,-100%)}.inspect-prompt[hidden],.choice[hidden],.memory[hidden],.gain[hidden],.stock[hidden]{display:none}.choice{width:min(96%, calc(var(--px) * 420));padding:calc(var(--px) * 6);color:var(--ui-fg);font:var(--ui-font) / 1.3 var(--font);pointer-events:auto;background:#0c0916e6;border:1px solid #5f4d34;position:absolute;top:14%;left:50%;transform:translate(-50%)}.choice-title{color:#eee2be;font-weight:700}.choice-cond{color:var(--ui-dim);min-height:1.3em}.choice-row{gap:calc(var(--px) * 4);margin:calc(var(--px) * 4) 0;display:flex}.choice-card{min-height:calc(var(--px) * 46);padding:calc(var(--px) * 4);color:var(--ui-fg);font:inherit;text-align:left;white-space:pre-line;gap:calc(var(--px) * 2);background:#211a36e6;border:1px solid #31274c;border-radius:0;flex-direction:column;flex:1 1 0;display:flex}.choice-card[data-kind=leave]{flex:.55 1 0}.choice-card b{color:#c2a973}.choice-card[data-kind=liberate] b{color:#3fd6c2}.choice-card span{color:var(--ui-dim)}.choice-card.on{background:#4a1806e6;border-color:#ffd9a0}.choice-card.on span{color:var(--ui-fg)}.choice-card[data-kind=liberate].on{background:#0f3e3beb;border-color:#c9fff4}.choice-card.off{opacity:.45}.choice-hint{color:var(--ui-dim);text-align:right}.choice-hint kbd,.inspect-prompt kbd,.memory-hint kbd{margin-right:calc(var(--px) * 2)}.memory{justify-content:center;align-items:center;gap:calc(var(--px) * 6);--dim:0;--sx:50%;--sy:80%;background:radial-gradient(circle at var(--sx) var(--sy), #06050c00 0 calc(var(--px) * 26), rgba(6, 5, 12, calc(var(--dim) * .4)) calc(var(--px) * 26) calc(var(--px) * 44), rgba(6, 5, 12, calc(var(--dim) * .75)) calc(var(--px) * 44) calc(var(--px) * 66), rgba(6, 5, 12, var(--dim)) calc(var(--px) * 66));color:#eee2be;font:var(--ui-font) / 1.5 var(--font);pointer-events:auto;box-shadow:inset 0 calc(var(--px) * 14) 0 #06050c, inset 0 calc(var(--px) * -14) 0 #06050c;flex-direction:column;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.memory[data-step="1"]{--dim:.3}.memory[data-step="2"]{--dim:.55}.memory[data-step="3"]{--dim:.8}.memory-title{color:#3fd6c2}.memory-lines{width:min(86%, calc(var(--px) * 380));text-align:center;font-size:calc(var(--ui-font) * 1.15)}.memory-lines p{margin:0 0 calc(var(--px) * 3);min-height:1.5em}.memory-lines i{visibility:hidden;font-style:normal}.memory-hint{color:var(--ui-dim)}.memory-hint[hidden]{visibility:hidden;display:block}.gain{padding:calc(var(--px) * 2) calc(var(--px) * 6);color:#eee2be;font:var(--ui-font) / 1.3 var(--font);white-space:nowrap;background:#0c0916db;border:1px solid #937b4c;position:absolute;top:12%;left:50%;transform:translate(-50%)}.stock{color:var(--ui-dim);white-space:nowrap;background:#0c0916b8;padding:1px 4px;font-size:11px}.bench[hidden]{display:none}.bench{width:min(98%, calc(var(--px) * 560));padding:calc(var(--px) * 6);color:var(--ui-fg);font:var(--ui-font) / 1.3 var(--font);pointer-events:auto;background:#0c0916eb;border:1px solid #5f4d34;position:absolute;top:9%;left:50%;transform:translate(-50%)}.bench-head{align-items:center;gap:calc(var(--px) * 6);display:flex}.bench-head b{color:#eee2be;flex:auto}.bench-weight{color:var(--ui-dim)}.bench-barbox{width:calc(var(--px) * 60);height:calc(var(--px) * 5);background:#211a36e6;border:1px solid #5f4d34}.bench-bar{background:#c2a973;height:100%;display:block}.bench-row{gap:calc(var(--px) * 3);margin:calc(var(--px) * 4) 0;display:flex}.bench-slot{min-width:0;min-height:calc(var(--px) * 58);padding:calc(var(--px) * 3);gap:calc(var(--px) * 1);white-space:pre-line;background:#211a36e6;border:1px solid #31274c;flex-direction:column;flex:1 1 0;display:flex}.bench-slot b{color:#c2a973}.bench-slot span{color:var(--ui-dim);flex:auto}.bench-slot.full span{color:var(--ui-fg)}.bench-slot.on{background:#4a1806e6;border-color:#ffd9a0}.bench-slot.target{border-color:#c9fff4}.bench-turn{padding:0 calc(var(--px) * 2);color:var(--ui-dim);font:inherit;background:0 0;border:1px solid #5f4d34;border-radius:0;align-self:flex-start}.bench-turn[hidden],body:not(.touch) .bench-turn{display:none}.bench-summary{color:#eee2be}.bench-bag{margin-top:calc(var(--px) * 2);color:var(--ui-dim)}.bench-bagtitle{color:#c9fff4}.bench-item{width:100%;padding:calc(var(--px) * 1) calc(var(--px) * 3);color:var(--ui-fg);font:inherit;text-align:left;margin-top:calc(var(--px) * 1);background:#211a36e6;border:1px solid #31274c;border-radius:0;display:block}.bench-item.on{background:#4a1806e6;border-color:#ffd9a0}.bench-item.off{opacity:.45}.bench-item.cancel{color:var(--ui-dim)}body:not(.touch) .bench-item.cancel{display:none}.bench-foot{margin-top:calc(var(--px) * 4);justify-content:space-between;align-items:center;display:flex}.bench-leave{padding:calc(var(--px) * 1) calc(var(--px) * 6);color:var(--ui-fg);font:inherit;background:#211a36e6;border:1px solid #31274c;border-radius:0}.bench-leave.on{background:#4a1806e6;border-color:#ffd9a0}.bench-hint{color:var(--ui-dim)}.bench-hint kbd{margin-right:calc(var(--px) * 2)}.bench-spell{width:100%;margin-top:calc(var(--px) * 3);padding:calc(var(--px) * 2) calc(var(--px) * 3);color:#c9fff4;font:inherit;text-align:left;background:#0f3e3b80;border:1px solid #17756c;border-radius:0;display:block}.bench-spell.on{background:#0f3e3bf2;border-color:#c9fff4}.bench-spell.off{color:var(--ui-dim);background:#211a36e6;border-color:#31274c}.bench-spell.known{color:#3fd6c2}
