[hidden]{display:none!important}*{box-sizing:border-box}body{margin:0;background:#eff3ee;color:#253e36;font:16px/1.5 system-ui}header{padding:22px 5vw;border-bottom:1px solid #c6d4c9;display:flex;justify-content:space-between}header b{letter-spacing:.18em}header span{font-size:13px}main{max-width:1180px;margin:auto;padding:30px 24px}.eyebrow{font-size:11px;letter-spacing:.2em;color:#80632e;font-weight:800}h1{font:500 clamp(36px,5vw,58px)/1.1 Georgia;margin:15px 0}h2{font:500 25px/1.2 Georgia}.lead{max-width:800px}nav{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0;align-items:center}button,select{font:inherit;min-height:44px;border:1px solid #9eafa3;padding:10px 13px;background:#fffdf5;color:#253e36;border-radius:7px}button{cursor:pointer}button:hover{background:#e4ead9}button:focus-visible,select:focus-visible{outline:3px solid #b57d32;outline-offset:2px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px}.layout>div,aside{padding:22px;border:1px solid #c4d3c9;border-radius:14px;background:#fffdf6}.layout h2{margin-top:0}#map{width:100%;display:block;background:#eef2e9;border:1px solid #b9cabd;border-radius:12px}.legend,aside>p{font-size:13px;color:#5a7062}#stats{font-weight:700;margin-top:16px}.node{border:1px solid #c8d1c1;border-radius:9px;margin:12px 0;padding:12px;background:#f7f7ed}.node h3{font-size:16px;margin:0 0 5px}.node p{font-size:12px;margin:5px 0 10px}.node button{font-size:14px;padding:8px 10px;margin:0 5px 4px 0}.node .art{float:right}.art{width:58px;height:58px;display:inline-block;background-image:url('inventory.webp');background-size:300% 200%;border-radius:8px}.primary{background:#345e48;color:white}.primary:hover{background:#456f59}#feedback{font-weight:700;font-size:15px}#collection{display:flex;gap:10px;flex-wrap:wrap;min-height:65px;margin-bottom:25px}.record{padding:8px;border:1px solid #c6d2bd;border-radius:10px;text-align:center;font-size:12px;background:white}.record span{display:block}details{border:1px solid #c4d3c9;padding:18px;border-radius:10px;font-size:14px}summary{font-weight:700;cursor:pointer}footer{font-size:13px;margin:25px 0;color:#5a7062}@media(max-width:780px){main{padding:24px 14px}.layout{grid-template-columns:1fr}.layout>div,aside{padding:16px}header span{display:none}h1{font-size:40px}nav label{width:100%}}
