:root{color-scheme:light;--paper:#eee8da;--ink:#242c2b;--orange:#de482a;--muted:#62705e}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{width:100%;height:100%;margin:0;overflow:hidden;overscroll-behavior:none}
body{background:#242c2b;font-family:system-ui,-apple-system,"Malgun Gothic",sans-serif;color:var(--ink);display:grid;place-items:center}
button,a{touch-action:manipulation}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #287d8d;outline-offset:3px}
#game{width:min(100%,460px);height:100%;height:100dvh;max-height:940px;background:var(--paper);display:flex;flex-direction:column;padding:max(10px,env(safe-area-inset-top)) 16px max(9px,env(safe-area-inset-bottom));overflow:hidden}
header{height:35px;flex-shrink:0;display:flex;justify-content:space-between;align-items:center;font-size:12px}header a{color:var(--muted);text-underline-offset:3px}.edition{font-weight:750}.edition b{font-weight:500;font-size:10px;color:var(--muted);margin-left:4px}
#hud{display:flex;align-items:center;gap:18px;height:67px;flex-shrink:0;border-top:1px solid #bcbfb1}.room small{font-size:10px;display:block;color:var(--muted)}.room strong{font-size:24px;line-height:1.2}.room em{font-size:13px;color:#626f5d;font-style:normal}.vitals{flex:1;max-width:225px}.vitals>div:first-child{display:flex;justify-content:space-between;font-size:11px;font-weight:650;margin-bottom:6px}.bar{height:7px;background:#cdd0bf;overflow:hidden}.bar i{display:block;height:100%;background:var(--orange);transition:width .18s;width:100%}#pause{border:1px solid #adb3a5;background:transparent;color:var(--ink);width:34px;height:34px;font-weight:900;font-size:12px;margin-left:auto}
#arena{position:relative;flex:1;min-height:0;overflow:hidden;border:2px solid var(--ink);background:#d8ddcb;touch-action:none;user-select:none;-webkit-user-select:none}canvas{display:block;width:100%;height:100%;touch-action:none}
footer{height:35px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--muted)}#sound{background:none;border:0;padding:7px 0 7px 10px;font-size:11px;color:var(--muted)}
.overlay{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;padding:24px;background:var(--paper);overflow:auto;touch-action:pan-y}.overlay.hidden{display:none}.panel{width:100%;max-width:335px;text-align:left}.logo{font-size:56px;font-weight:900;line-height:1.05;letter-spacing:-.055em;margin:0 0 18px}.description{font-size:13px;line-height:1.75;color:var(--muted);margin:0 0 22px}.primary,.secondary{display:block;width:100%;padding:14px 13px;border-radius:3px;font-weight:750;font-size:14px}.primary{background:var(--orange);color:#fffaf0;border:1px solid var(--orange)}.secondary{background:transparent;border:1px solid #a6b19b;color:var(--ink);margin-top:10px}.mini{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-top:20px;gap:8px}.big-number{font-size:48px;font-weight:850;line-height:1.1;margin:12px 0 18px}.panel h2{font-size:26px;margin:0 0 14px}.choices{display:grid;gap:0;border-top:1px solid #a6b19b}.choice{position:relative;text-align:left;background:transparent;border:0;border-bottom:1px solid #a6b19b;padding:17px 2px;color:var(--ink)}.choice:hover,.choice:focus-visible{background:#dfe4d4}.choice b{display:block;font-size:15px;margin-bottom:5px}.choice small{font-size:12px;line-height:1.55;color:var(--muted);display:block}.statline{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid #bcc5b0;font-size:12px}.result-stats{margin-bottom:22px}.howto{display:block;width:100%;height:auto;margin:8px 0 26px}.howto text{font-family:inherit;font-size:11px;fill:var(--muted)}
#toast{position:absolute;top:22px;left:0;right:0;text-align:center;pointer-events:none;font-size:14px;font-weight:750;color:var(--ink);opacity:0;transition:opacity .2s}#toast.on{opacity:1}
#game[data-mode="title"] #hud{display:none}#game[data-mode="title"] #arena{border:0}
@media(max-height:700px){#game{padding-top:max(5px,env(safe-area-inset-top));padding-bottom:max(4px,env(safe-area-inset-bottom))}header{height:27px}#hud{height:55px}footer{height:29px}.overlay{padding:18px}.logo{font-size:48px;margin-bottom:14px}.description{margin-bottom:17px}.primary,.secondary{padding:12px}.mini{margin-top:16px}.howto{margin:4px 0 22px}.choice{padding-top:13px;padding-bottom:13px}}
