@import url('https://fonts.googleapis.com/css2?family=Noto+Serif:wght@400;600;700&display=swap');*{box-sizing:border-box}body{margin:0;overflow:hidden;background:#183737;color:#f4ecd7;font-family:'Noto Serif',Georgia,serif}canvas{display:block}header{position:absolute;top:30px;left:36px;right:36px;display:flex;align-items:center;gap:16px;pointer-events:none}.seal{background:#9c3e32;border:1px solid #e6b982;padding:5px 10px;font-size:21px;line-height:1.15}small{font:10px Arial,sans-serif;letter-spacing:3px;color:#d1b982}h1{font-size:25px;margin:6px 0}button{cursor:pointer;font:14px 'Noto Serif',serif;color:#f9efd5;border:1px solid #ac9760;background:#173d3de8;padding:13px 22px;pointer-events:auto}button:hover{background:#40655c}header button{margin-left:auto}aside{position:absolute;left:36px;top:140px;width:250px;background:linear-gradient(90deg,#102e35c9,transparent);padding:20px 20px 22px 0}h2{font-size:16px;font-weight:400;margin:12px 0 20px}label{display:flex;justify-content:space-between;font-size:11px;margin-top:13px;color:#d4d9cb}b{font:10px Arial}.bar{height:5px;background:#061f29;margin-top:8px}.bar i{display:block;width:100%;height:100%;background:#c08b69;transition:width .15s}.qi i{background:#78b9b3}#quest{position:absolute;right:36px;top:150px;text-align:right;border-right:2px solid #c3a775;padding-right:18px}#quest h2{font-size:24px;margin:12px 0}#quest p,#count{font-size:12px;color:#ced5c5}#notice{position:absolute;bottom:125px;width:100%;text-align:center;letter-spacing:4px;font-size:13px;text-shadow:0 2px 10px #000}footer{position:absolute;bottom:27px;left:50%;transform:translateX(-50%);display:flex;gap:30px;padding:18px 28px;border-top:1px solid #b3a47a66;background:#102b30bf;white-space:nowrap}footer div{display:flex;flex-direction:column;gap:9px;text-align:center}kbd{font:12px Arial;color:#f1dca9}footer span{font-size:10px;color:#c3cbc0}#overlay{position:absolute;inset:0;background:linear-gradient(90deg,#09282eea,#09282e77,transparent);display:flex;align-items:center;padding-left:12%}.intro{max-width:500px}.intro h2{font-size:72px;line-height:1.15;margin:24px 0;color:#f0e5c7}.intro em{font-weight:400;color:#d8b879}.intro p{line-height:2;font-size:14px;color:#c8d3c9}.intro button{margin-top:22px;background:#987947;color:#fff}.intro .hint{font-size:11px;margin-top:25px} @media(max-width:700px){header{left:15px;right:15px}h1{font-size:18px}aside{left:15px;width:180px}#quest{right:15px;top:320px}footer{gap:12px;padding:12px}.intro h2{font-size:50px}header button{font-size:10px}}
#sound{margin-left:auto}header #pause{margin-left:0}#stats,#skills{font:11px/1.8 Arial;color:#d8d6bb}#upgrades{position:absolute;inset:0;background:#09282edb;display:grid;place-items:center;text-align:center}#upgrades[hidden]{display:none}#upgrades h2{font-size:28px}#upgrades button{margin:8px;min-width:210px;padding:25px}#upgrades span{font:12px/3 Arial;color:#cbdac8}
#quality{background:#173d3d;color:#f4ecd7;border:1px solid #ac9760;padding:12px;margin-left:auto;font:12px Georgia}#sound{margin-left:0}#medicine{font-size:11px;padding:9px;margin-top:10px}#guardState{font-size:11px;color:#d1b982}#bossHud{position:absolute;top:110px;left:35%;width:30%;text-align:center;font-size:11px;letter-spacing:2px}#bossHealth{background:#cf655e}#touch{display:none}button,select{touch-action:manipulation}button:focus-visible,select:focus-visible{outline:2px solid #f7d486;outline-offset:3px}
@media(pointer:coarse),(max-width:850px){#touch{display:flex;position:absolute;bottom:20px;left:18px;right:18px;justify-content:space-between;pointer-events:none}#touch button{pointer-events:auto;touch-action:none;padding:15px;min-width:48px;background:#143c40da;user-select:none}.dpad,.actions{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}footer{display:none}header{top:12px;gap:7px;flex-wrap:wrap}header small{display:none}header button,#quality{padding:8px;font-size:10px}aside{top:110px;width:175px;padding-top:8px}#quest{top:115px;right:15px;max-width:160px}#quest h2{font-size:19px}#quest p{font-size:10px}#notice{bottom:165px;font-size:10px;letter-spacing:1px}#bossHud{top:330px;left:25%;width:50%}#upgrades{z-index:5;padding:15px}#upgrades button{display:block;margin:10px auto;padding:8px}#upgrades h2{font-size:20px}#overlay{z-index:6}.intro h2{font-size:42px}.intro p{font-size:12px}.intro .hint{font-size:10px}#stats,#skills{font-size:10px}.seal{font-size:16px}}
.difficulty{display:flex;align-items:center;gap:12px;justify-content:flex-start;margin:15px 0}.difficulty select{background:#14383b;color:#f4ecd7;border:1px solid #aa976b;padding:9px;max-width:250px}.modal{position:absolute;inset:0;z-index:10;background:#09282eeb;display:grid;place-items:center;padding:25px}.modal[hidden]{display:none}.modal>div{max-width:600px;width:100%;text-align:center}.modal h2{font-size:30px}.modal p{font-size:13px;line-height:2;color:#d0d9cc}.modal button{margin:7px}#helpPanel{z-index:11}#summary{font-size:12px;color:#f1d89c}.intro{max-height:94vh;overflow:auto;padding-right:15px}@media(max-width:850px){header #help{padding:8px;font-size:10px}.modal h2{font-size:24px}.modal p{font-size:12px}.intro h2{margin:12px 0}.intro button{margin-top:8px}.intro .hint{margin-top:12px}}
header select{pointer-events:auto}
/* Chibi anime palette */
body{color:#fff9e7}header h1{text-shadow:0 2px 0 #527c86}aside{background:linear-gradient(90deg,#24485ddb, #345c6877);border-radius:0 20px 20px 0;padding-left:12px}#quest{text-shadow:0 1px 3px #31576d}#notice{color:#fffdf2;font-weight:600;text-shadow:0 2px 4px #31576d}button{border-radius:9px;border-color:#efcc91;background:#31566beF;box-shadow:0 3px 0 #15384855}button:hover{background:#51859a}footer{border-radius:18px;background:#294c65dc}#overlay{background:linear-gradient(90deg,#183c58ee,#31576c88,transparent)}.intro h2{text-shadow:0 4px 0 #173950}.bar{border-radius:8px;overflow:hidden}.bar i{background:#f4aaad}.qi i{background:#81e1dc}.intro button{background:#bc7687;border-color:#ffd6b1}#quality{border-radius:8px}small{color:#ffe0a5}
#quest{background:#294c65cf;border-radius:14px 0 0 14px;padding:16px 18px;backdrop-filter:blur(6px)}#quest p,#quest #count{color:#fff4dc}#notice{color:#264e65;text-shadow:0 1px 2px #fff;font-weight:700}
