:root{--bg: #1b1e27;--fg: #f4f1ea;--muted: #b7b1a6;--accent: #e6c34a;--panel: #262b36;--danger: #d24b4b;--ok: #3e9b5b;--line: #3a4050;--inset-top: 0px;--inset-right: 0px;--inset-bottom: 0px;--inset-left: 0px;color:var(--fg);background:var(--bg);font-family:Wardogs,DejaVu Sans,sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:var(--bg)}body{overflow:hidden;touch-action:manipulation}button,input,select{font:inherit;color:inherit}button{min-height:44px;min-width:44px;border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:8px 12px}button:disabled{opacity:.45}button.primary{background:var(--accent);color:#1b1e27;border-color:transparent;font-weight:700}button.danger{background:var(--danger);color:#fff;border-color:transparent}.boot,.home{min-height:100%;display:flex;flex-direction:column;justify-content:center;gap:16px;padding:max(24px,var(--inset-top)) max(20px,var(--inset-right)) max(24px,var(--inset-bottom)) max(20px,var(--inset-left))}.home h1{margin:0;font-size:32px;letter-spacing:.04em}.home p{margin:0;color:var(--muted)}.field{display:flex;flex-direction:column;gap:6px}.field input,.field select{min-height:44px;border-radius:10px;border:1px solid var(--line);background:#151820;padding:8px 12px}.stepper{display:flex;align-items:center;gap:8px}.stepper output{min-width:44px;text-align:center;font-size:20px}.actions{display:flex;flex-wrap:wrap;gap:8px}.play{position:relative;height:100%;overflow:hidden}.map-host{position:absolute;inset:0}.map-host canvas{width:100%;height:100%;image-rendering:pixelated}.hud{position:absolute;inset:0;display:flex;flex-direction:column;pointer-events:none;padding-left:max(env(safe-area-inset-left),var(--inset-left));padding-right:max(env(safe-area-inset-right),var(--inset-right));padding-bottom:max(env(safe-area-inset-bottom),var(--inset-bottom))}.top,.dock,.sheet,.banner,.outcome,.notice{pointer-events:auto}.top{display:flex;align-items:center;gap:8px;min-height:52px;padding:4px 10px;padding-top:calc(4px + max(env(safe-area-inset-top),var(--inset-top)));background:color-mix(in srgb,var(--bg) 88%,transparent)}.gold{color:var(--accent);font-weight:700}.grow,.spacer{flex:1}.dock{display:flex;gap:8px;align-items:center;position:absolute;left:0;right:0;min-height:48px;padding:2px 10px;background:color-mix(in srgb,var(--bg) 92%,transparent)}.dock button{flex:1;font-size:14px}.sheet{background:var(--panel);border-top:1px solid var(--line);padding:12px;display:flex;flex-direction:column;gap:8px}.sheet h2,.outcome h2,.home h1{font-weight:700}.sheet h2{margin:0;font-size:18px}.unit{display:flex;gap:8px;align-items:center;min-height:44px}.row{display:flex;flex-wrap:wrap;gap:8px}.hint,.muted{color:var(--muted);margin:0}.banner{margin:0 10px 8px;background:#3a2430;color:#fff;border-radius:10px;padding:8px 12px}.notice{margin:0 10px 8px;color:var(--muted)}.outcome{position:absolute;inset:0;background:color-mix(in srgb,var(--bg) 94%,transparent);display:flex;flex-direction:column;justify-content:center;gap:12px;padding:24px;z-index:2}.flag{width:16px;height:16px;display:inline-block;border-radius:3px;vertical-align:middle}.pressed{outline:2px solid var(--accent)}.odds{font-size:48px;margin:0;color:var(--accent)}.sheet-frame{position:absolute;left:0;right:0;display:flex;flex-direction:column;pointer-events:auto;max-height:55%;background:var(--panel);border-radius:16px 16px 0 0;overflow:hidden}.sheet-frame .sheet,.sheet-handle{background:var(--panel)}.sheet-handle{flex-shrink:0;height:48px;width:100%;touch-action:none;border-radius:16px 16px 0 0;text-align:left;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sheet-body{min-height:0;overflow:auto;overscroll-behavior:contain}.sheet-frame[data-collapsed="1"] .sheet-body{display:none}.odds-sides{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sheet p{margin:4px 0}summary{min-height:44px;padding:12px 0;cursor:pointer}.home{height:100%;overflow:auto;justify-content:flex-start}.home h2{font-size:20px;margin:0}.home-block{display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.home>*{flex-shrink:0}.game-row{display:flex;flex-direction:column;gap:8px;text-align:left}.seat-row{display:flex;justify-content:space-between;gap:12px;min-height:44px;align-items:center}.turn-badge{color:var(--accent)}.online-status{padding:8px 10px;background:color-mix(in srgb,var(--bg) 88%,transparent);color:var(--accent)}.choice-backdrop{position:absolute;inset:0;z-index:4;background:#111722b8;display:flex;align-items:center;justify-content:center;padding:max(20px,var(--inset-top)) 20px max(20px,var(--inset-bottom))}.choice-card{width:min(100%,440px);max-height:90%;overflow:auto;background:var(--panel);border:1px solid var(--accent);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:12px}.choice-card h2,.choice-card p{margin:0}.choice-card h2{font-size:22px}.hero-details{flex:1;min-width:0}.hero-details strong{color:var(--accent)}.adventure-actions{display:flex;flex-direction:column;gap:8px}.inventory-item,.site-info{border:1px solid var(--line);border-radius:10px;padding:10px}.toast{margin:8px 10px;padding:10px;border-radius:10px;background:var(--panel);color:var(--accent)}.top{gap:5px;font-size:13px}.quest-button{color:var(--accent);padding:6px}.sheet-more{flex-shrink:0;border-radius:0;border-top:1px solid var(--line);color:var(--accent);background:var(--panel)}.sheet-frame[data-collapsed="1"] .sheet-more{display:none}.game-row.archived{color:var(--muted);background:var(--panel);opacity:.65}.dock>button{flex:1;min-width:44px;min-height:44px;padding:4px;font-size:12px;white-space:nowrap}.auto-end{display:flex;align-items:center;gap:8px;margin:8px;padding:8px 10px;background:#202b23;border:1px solid #7cff83;border-radius:8px;pointer-events:auto;font-size:14px}.auto-end span{flex:1}.auto-setting{display:flex;align-items:center;gap:8px;min-height:44px}
