:root{font-family:"Yu Gothic UI","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:#253c40;background:#d8e2d8;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,summary{font:inherit}button,summary{cursor:pointer}button{min-height:48px;border:1px solid #b6c8bd;border-radius:8px;padding:9px 18px;color:#253c40;background:#fbfcf6;font-size:24px;font-weight:700;transition:background .12s,transform .12s}button:hover{background:#e4eee1}button:active{transform:translateY(1px)}button:disabled{opacity:.45;cursor:default}button:focus-visible,summary:focus-visible,input:focus-visible{outline:4px solid #9b521b;outline-offset:3px}[hidden]{display:none!important}#game-shell{height:100dvh;min-height:650px;display:flex;flex-direction:column;overflow:hidden}.hud{height:80px;flex-shrink:0;display:flex;align-items:center;gap:32px;padding:10px 28px;background:#f4f5ec;border-bottom:1px solid #b5c6ba}.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:24px;white-space:nowrap}.brand small{display:block;font-size:11px;letter-spacing:2px;font-weight:600;margin-top:2px}.sigil{color:#497961;font-size:40px}.health{margin-left:auto;min-width:220px;font-size:24px;font-weight:750}.bar{height:8px;background:#d9dfd4;border-radius:4px;margin-top:6px;overflow:hidden}.bar i{display:block;height:100%;width:100%;background:#427f67}.clock{display:flex;align-items:baseline;gap:8px;font-size:18px;font-variant-numeric:tabular-nums}.clock strong{font-size:28px}.hud button{font-size:24px}#field{position:relative;flex:1;min-height:0;background:#d4e0d0;display:grid;place-items:center;overflow:hidden}canvas{display:block;max-width:100%;max-height:100%;width:100%;height:100%}.field-top{position:absolute;top:17px;left:28px;right:28px;display:flex;justify-content:space-between;font-size:18px;font-weight:700;color:#4d6355;pointer-events:none}.legend{position:absolute;right:24px;bottom:16px;display:flex;gap:9px;align-items:center;font-size:18px;color:#364c42;background:#f4f5ecd9;border-radius:6px;padding:7px 12px;pointer-events:none}.dot{width:12px;height:12px;display:inline-block;border:2px solid #4f6056}.white{background:white}.pink{background:#bb4d74}.orange{background:#e99539}#notice{position:absolute;top:53px;left:50%;transform:translateX(-50%);font-size:24px;font-weight:800;white-space:nowrap;background:#f9f6e5ed;border:1px solid #baa575;border-radius:6px;padding:8px 16px;pointer-events:none}#notice:empty{display:none}footer{height:52px;flex-shrink:0;display:flex;align-items:center;gap:18px;padding:8px 28px;background:#f4f5ec;border-top:1px solid #b5c6ba;font-size:18px;font-variant-numeric:tabular-nums}#level{font-weight:800;font-size:24px}.xp-track{height:8px;flex:1;max-width:260px;background:#d5dfd3;border-radius:4px;overflow:hidden}.xp-track i{display:block;height:100%;width:0;background:#308c85}#weapons{margin-left:auto}.key-hint{color:#647169;font-size:14px}.overlay{position:absolute;inset:0;background:#d5e0d08f;backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:16px;overflow:auto}.title-card{background:#f8f8efed;border:1px solid #b9cbb9;border-radius:18px;padding:26px 42px;box-shadow:0 20px 70px #28463719;width:620px;max-width:100%;position:relative}.eyebrow{color:#587661;letter-spacing:3px;font-size:12px;font-weight:800;margin:0 0 12px}h1{font-size:46px;letter-spacing:-2px;line-height:1.3;margin:0 0 16px;font-weight:900}h1 em{font-style:normal;color:#a45426}.lead{font-size:22px;line-height:1.6;margin:0 0 18px}.instruction{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #d4dccd;padding:15px 0;font-size:16px}.instruction b{letter-spacing:1px}.primary{background:#284f40;color:#fff;border-color:#284f40;width:100%;display:flex;align-items:center;justify-content:space-between;padding:13px 22px}.primary:hover{background:#396752}.fine{font-size:12px;color:#6e7a6d;margin:12px 0 0}.settings{margin-top:12px}.settings summary{font-size:14px;padding:4px;min-height:24px}.settings-grid{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:14px;padding-top:8px}.settings label{display:flex;align-items:center;gap:5px}.settings input[type=number]{width:128px;font-size:16px;padding:5px;border:1px solid #bac9b9;border-radius:4px}.check input{width:19px;height:19px;accent-color:#365e47}.modal-card{max-width:100%;width:990px;background:#fafaf0;border:1px solid #b6c8b6;border-radius:16px;padding:26px 32px;box-shadow:0 18px 60px #29463833;max-height:100%;overflow:auto}h2{font-size:34px;margin:0 0 8px}#modal-copy{font-size:20px;margin:0 0 20px;color:#51624e}#choices{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.choice{min-height:165px;display:flex;text-align:left;flex-direction:column;align-items:flex-start;gap:12px;position:relative;padding:18px;border:2px solid #c4d1bd;background:#eef2e5}.choice.risk{border-color:#bd8658;background:#f7eddc}.choice small{font-size:15px;color:#596a50}.choice b{font-size:24px}.choice .detail{font-size:18px;line-height:1.5;font-weight:500}.choice .number{font-size:14px;background:#dae5d3;border-radius:4px;padding:2px 8px}#modal-actions{display:flex;gap:12px}#modal-actions:empty{display:none}#modal-actions .primary{width:auto;min-width:260px}#build-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px;font-size:16px}#build-list span{padding:5px 10px;background:#e5ebdb;border-radius:5px}#event-panel{margin-top:14px}#event-panel summary{font-size:16px}#event-preview{max-height:125px;overflow:auto;font-size:13px;background:#eaf0e2;padding:8px;white-space:pre-wrap}#event-panel button{font-size:18px;margin-top:8px}@media(max-height:760px){.title-card{padding:20px 32px}h1{font-size:40px}.lead{font-size:20px;margin-bottom:10px}.instruction{padding:10px 0}.eyebrow{margin-bottom:8px}}@media(max-width:1100px){.hud{gap:16px;padding-inline:18px}.brand{font-size:20px}.health{min-width:175px}.key-hint{display:none}.legend{font-size:14px}footer{gap:12px;padding-inline:18px}.modal-card{padding:20px}.choice{padding:12px}.choice b{font-size:24px}}
#arena{position:absolute;inset:0}
