*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}:root{--bg: #0c0c10;--panel: #16161d;--panel2: #1e1e28;--border: #2e2e3c;--text: #d8d4c8;--dim: #8a8578;--accent: #b8a06a;--hp: #7a3b3b;--hp-bg: #2a1616;--danger: #c05050}html,body{height:100%;background:var(--bg);color:var(--text);font-family:Hiragino Kaku Gothic ProN,Noto Sans JP,Yu Gothic,sans-serif;overscroll-behavior:none;touch-action:manipulation}#app{height:100%;height:100dvh;display:flex;flex-direction:column;max-width:640px;margin:0 auto;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}#topbar{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--panel);border-bottom:1px solid var(--border);font-size:14px}#floor-label{font-weight:700;color:var(--accent);letter-spacing:1px}#hp-wrap{flex:1;position:relative;height:18px;background:var(--hp-bg);border:1px solid var(--border);border-radius:3px;overflow:hidden}#hp-bar{height:100%;background:var(--hp);transition:width .2s}#hp-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--text);text-shadow:0 1px 2px #000}#turn-label{font-size:11px;color:var(--dim);min-width:3.5em;text-align:right}#board-wrap{flex:1;position:relative;min-height:0;background:#08080b}#board{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}#monologue{position:absolute;left:50%;bottom:14px;transform:translate(-50%);max-width:90%;padding:8px 16px;background:#0a0a0eeb;border:1px solid var(--border);border-radius:4px;color:var(--text);font-size:14px;letter-spacing:.05em;pointer-events:none;transition:opacity .6s;white-space:pre-wrap;text-align:center}#monologue.hidden{opacity:0}#ailment-bar{display:flex;gap:6px;padding:6px 10px;background:var(--panel);border-top:1px solid var(--border);min-height:40px;overflow-x:auto;align-items:center}.ailment-chip{flex-shrink:0;display:flex;align-items:center;gap:4px;padding:4px 8px;background:var(--panel2);border:1px solid var(--border);border-radius:3px;font-size:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.ailment-chip.stage-1{border-color:#6a5a30}.ailment-chip.stage-2{border-color:#93641f;color:#e0b060}.ailment-chip.stage-3{border-color:var(--danger);color:#e08080}.ailment-chip.suppressed{opacity:.45}.ailment-chip .stage-dots{font-size:10px;letter-spacing:1px}#ailment-bar .none{color:var(--dim);font-size:12px}#log-line{padding:4px 12px;font-size:12px;color:var(--dim);background:var(--panel);min-height:24px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#actions{display:flex;gap:8px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:var(--panel);border-top:1px solid var(--border)}#actions button{flex:1;padding:12px 0;font-size:14px;font-family:inherit;background:var(--panel2);color:var(--text);border:1px solid var(--border);border-radius:4px;cursor:pointer;min-height:44px}#actions button:active{background:#2a2a38}#overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:50;padding:16px}#overlay.hidden{display:none}#overlay-panel{width:100%;max-width:480px;max-height:86vh;max-height:86dvh;overflow-y:auto;background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:16px}#overlay-panel h2{font-size:16px;color:var(--accent);margin-bottom:12px;letter-spacing:.1em}#overlay-panel h3{font-size:14px;margin:12px 0 6px;color:var(--text)}#overlay-panel p{font-size:13px;line-height:1.7;color:var(--text);margin-bottom:8px}#overlay-panel .dim{color:var(--dim);font-size:12px}#overlay-panel button{display:block;width:100%;margin-top:8px;padding:12px;font-size:14px;font-family:inherit;background:var(--panel2);color:var(--text);border:1px solid var(--border);border-radius:4px;cursor:pointer;min-height:44px;text-align:left}#overlay-panel button:active{background:#2a2a38}#overlay-panel button.primary{border-color:var(--accent);color:var(--accent);text-align:center}#overlay-panel button .sub{display:block;font-size:11px;color:var(--dim);margin-top:2px}.inv-row{display:flex;gap:6px}.inv-row button{flex:1}.inv-row .drop-btn{flex:0 0 64px;text-align:center;color:var(--dim)}.bio-entry{font-size:13px;line-height:1.8}.bio-entry .t{color:var(--dim);font-size:11px;margin-right:6px}.tsubo-pad{display:block;margin:8px auto;border:1px solid var(--border);border-radius:6px;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}#overlay-panel{user-select:none;-webkit-user-select:none}#btn-tsubo{color:var(--accent);border-color:#5a4e34}.title-screen{text-align:center;padding:12px 0}.title-screen h1{font-size:34px;letter-spacing:.18em;color:var(--text);margin-bottom:4px}.title-screen .subtitle{color:var(--dim);font-size:13px;margin-bottom:24px;letter-spacing:.1em}.wish-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;justify-items:center;margin:12px 0}.wish-cell{border:1px solid var(--border);border-radius:6px;cursor:pointer;touch-action:manipulation}.wish-cell:active{border-color:var(--accent)}.grave-row{display:flex;justify-content:space-between;gap:8px}.grave-win{color:var(--accent)}.title-screen .version{color:var(--dim);font-size:10px;margin-top:14px;letter-spacing:.1em;opacity:.7}.ailment-chip.buff{border-color:#3f6a4a;color:#8fc79a}
