:root{color-scheme:dark}body{margin:0;background:#100e19;color:#f0e7e8;font:16px/1.7 system-ui}main{max-width:1100px;margin:auto;padding:20px}a{color:#ffc4df}h1{font-size:clamp(23px,4vw,36px)}.eyebrow{color:#c6a980;font-size:12px;letter-spacing:.15em}.layout{display:grid;grid-template-columns:minmax(0,660px) minmax(0,1fr);gap:24px}canvas{display:block;width:100%;height:auto;background:#080912;border:1px solid #80617e;border-radius:12px;box-sizing:border-box;touch-action:none}#hud{padding:10px;background:#292036;border-radius:10px}#log{min-height:3.5em;color:#ffe0a6}.controls{text-align:center}.controls button{min-width:66px;min-height:54px;font-size:20px;touch-action:manipulation}button{background:#342439;border:1px solid #ba7da0;border-radius:10px;color:#fff1f8;font:inherit;padding:10px 16px;margin:4px;cursor:pointer}button:disabled{opacity:.4}button:focus-visible,canvas:focus-visible{outline:3px solid #ffd57c}.help,aside p{font-size:13px;color:#bdb4c9}.items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.item{background:#242032;padding:10px;border:1px solid #66556b;border-radius:10px;text-align:center;font-size:13px}.item img{width:100%;height:80px;object-fit:contain}.item strong{display:block}input{max-width:100%}[hidden]{display:none!important}@media(max-width:760px){.layout{grid-template-columns:1fr}.items{grid-template-columns:repeat(3,minmax(0,1fr))}main{padding:12px}aside h2{font-size:20px}}
.empty-message{grid-column:1/-1;margin:4px 0}
#minimap{width:200px;max-width:100%;image-rendering:pixelated}

.fire{display:flex;gap:12px;align-items:center;padding:12px 0}.fire progress{flex:1;min-width:0;accent-color:#efbd71}.slash{animation:slash .22s}.stride{animation:stride .15s}@keyframes slash{50%{box-shadow:inset 0 0 35px #ff89ca,0 0 18px #fba6d6}}@keyframes stride{50%{filter:brightness(1.12)}}@media(prefers-reduced-motion:reduce){.slash,.stride{animation:none}}

.audio-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0}.audio-controls label{display:flex;align-items:center;gap:8px}.audio-controls input{width:110px}

/* Readability update: larger type, prominent health and nearby emergency controls. */
:root{--ui-font:22px}body{font-size:var(--ui-font);line-height:1.65}main{max-width:1440px;padding:24px}.layout{grid-template-columns:minmax(0,900px) minmax(340px,1fr);gap:28px}h1{font-size:clamp(30px,3vw,42px);margin:18px 0}h2{font-size:1.15em}.eyebrow{font-size:16px}.help,aside p{font-size:.86em;color:#dbd2e3}.item{font-size:.82em}.items{grid-template-columns:repeat(2,minmax(0,1fr))}button,select,input{font:inherit}select{max-width:100%;padding:8px;border-radius:8px;background:#30253e;color:#fff}button{min-height:54px}#hud{font-size:.9em}#log{font-size:1em;font-weight:600;line-height:1.6;padding:14px;background:#241d30;border-radius:10px;margin:12px 0}.energy-panel{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:16px 0}.energy-panel strong{font-size:1.35em;color:#ffd1df}.energy-panel progress{height:26px;flex:1;min-width:80px;accent-color:#e78cb8}.energy-panel span{width:100%;font-size:.8em}.energy-panel .low{accent-color:#ff675a}#danger,#return-panel{padding:18px;border:2px solid #f1a766;border-radius:12px;background:#422334;color:#fff2de;margin:12px 0}#return-panel h2{margin:0 0 8px}#return-panel p{font-size:.95em}.quick-tools{display:flex;flex-wrap:wrap;gap:8px}.quick-tools button{flex:1;background:#503048}.adventure{padding:18px;background:#251d32;border:1px solid #80617e;border-radius:14px}.adventure h2{margin-top:0}.adventure label{display:block}.adventure select{width:100%}.audio-controls{font-size:.82em}.audio-controls input{width:90px}.text-setting{display:block;text-align:right;font-size:.85em}.controls button{font-size:24px;min-width:76px;min-height:58px}#minimap{width:240px}.empty-message{grid-column:1/-1}
@media(max-width:1050px){.layout{grid-template-columns:1fr}main{padding:16px}aside .adventure{margin-top:12px}}
@media(max-width:600px){body{font-size:var(--ui-font)}main{padding:12px}.audio-controls{gap:6px}.audio-controls select{max-width:240px}.fire{font-size:.86em}.quick-tools{position:sticky;bottom:0;z-index:3;padding:8px;background:#100e19ee}.quick-tools button{font-size:.8em;padding:10px 8px}.controls button{min-width:68px}.item{font-size:.8em}#hud{font-size:.8em}.energy-panel strong{font-size:1.2em}}

.pickup-reveal{padding:16px;border:2px solid #dfb674;background:linear-gradient(120deg,#3b2449,#201a2b);border-radius:14px;margin-top:12px}.pickup-reveal h2{color:#ffe0a4;margin:0 0 10px}.discovery-card{display:flex;gap:18px;align-items:center}.discovery-card img,.discovery-clock{width:90px;height:90px;object-fit:contain;flex-shrink:0}.discovery-clock{font-size:70px;color:#ffe0a4;text-align:center}.discovery-card strong{font-size:1.2em}.discovery-card p{margin:4px 0;font-size:.85em}

.direction-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:16px 0}.direction-tools [aria-pressed="true"]{background:#75466d;border-color:#ffb6e2}#pad-status{font-size:.85em;color:#e7ccec}

.objective{background:#282033;border-left:5px solid #d9b178;padding:12px 16px;margin:12px 0}.objective p{margin:5px 0}#combat-feedback{background:#5b2139;border:2px solid #ff819f;color:white;padding:12px;font-size:1.1em;font-weight:bold;margin:12px 0}#run-result{border-top:1px solid #b88cbb;margin-top:18px}#run-result .items{max-width:600px}

.first-guide,#companion-talk{padding:18px 22px;border:1px solid #a87ea3;border-radius:14px;background:linear-gradient(120deg,#32253e,#191422);margin:18px 0}.first-guide h2{margin:0}.first-guide p{font-size:.85em}#companion-lines p{font-size:.85em;line-height:1.7;margin:6px 0}#companion-lines strong{color:#edc78e}#departure-brief{padding:16px;border:1px solid #6f5777;border-radius:12px}#departure-brief p{font-size:18px}

.course-panel{padding:18px 22px;margin:20px 0;background:#252032;border:1px solid #af89ac;border-radius:14px}.course-panel p{font-size:17px;line-height:1.7}.course-panel select{font-size:20px;padding:10px;max-width:100%}#stairs-panel{border:2px solid #e9ca8c}

.reaper-records{margin-top:18px;padding:18px;border:1px solid #9c82b3;border-radius:12px;background:linear-gradient(135deg,#302337,#151320);color:#f5e8f0}.reaper-records h3{margin:0 0 12px;color:#efc987;font-size:20px}.reaper-records p{font-size:16px;line-height:1.7;margin:8px 0}.reaper-records small{color:#dec5de;font-size:14px}
