*{box-sizing:border-box}body{margin:0;background:#182c24;color:#f5f1e6;font:16px system-ui,sans-serif}main{max-width:500px;margin:auto;padding:16px}header small{color:#a9d5b3;font-weight:700;letter-spacing:.12em}h1{font-size:clamp(2.5rem,10vw,4rem);margin:0}p{margin:0 0 14px}.stock{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:16px 0}.stock div{background:#263e32;text-align:center;padding:8px;border-radius:8px}.stock strong,.stock span{display:block}.map{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:2px}.map button{padding:0;min-width:0;aspect-ratio:1;border:0;border-radius:4px;color:#fff;font:inherit;font-weight:700;cursor:pointer;touch-action:manipulation}.map button[aria-current]{box-shadow:inset 0 0 0 3px #fff2a6;color:#fff2a6}.plains{background:#6c803c}.forest{background:#295f44}.mountain{background:#626a71}.water{background:#246780}.unknown{background:#30443c}.legend,footer{font-size:.82rem;color:#c4d5c9;margin-top:12px}.status{min-height:3em}.gather{width:100%;min-height:46px;border:0;border-radius:8px;background:#dcebb0;color:#182c24;font:inherit;font-weight:700;cursor:pointer}.gather:disabled{opacity:.65;cursor:default}button:focus-visible{outline:3px solid #fff;outline-offset:-3px}
