*{box-sizing:border-box}body{margin:0;background:#eeefe2;color:#293e38;font:16px/1.5 system-ui,sans-serif}main{max-width:1140px;margin:auto;padding:28px}h1{font:70px Georgia,serif;margin:0}h2{font:25px Georgia,serif;margin:0 0 12px}.eyebrow{font-size:11px;letter-spacing:.15em;font-weight:700}header{border-bottom:1px solid #a6b19a;padding-bottom:16px}p{margin:8px 0 16px}.brief,.conclusion{background:#fffbed;border:1px solid #b5bfa8;padding:22px;border-radius:14px;margin:22px 0}.toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap}label{display:grid;gap:6px}button,select{font:inherit;color:inherit;padding:10px 13px;min-height:46px;border:1px solid #8ea18b;border-radius:8px;background:#fffbed;cursor:pointer}button:hover{background:#e3e9d5}button:focus-visible,select:focus-visible{outline:3px solid #b68a30;outline-offset:3px}button:disabled{opacity:.65;cursor:default}.map{display:grid;grid-template-columns:1fr 1fr;gap:24px;background:url('marsh.webp') center/cover;border-radius:14px;padding:24px;border:1px solid #8da28b}.habitat h2{display:inline-block;background:#fffbedee;padding:8px 14px;border-radius:8px}.sites{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0}.site{padding:10px 5px;background:#fffbedee;min-height:72px;border:2px solid #657e60}.site small{display:block;font-size:12px;letter-spacing:2px}.site.detected{border-color:#2a6a5b;background:#e0eddb}.habitat>button{width:100%;background:#315a49;color:white}.legend{font-size:13px;padding:10px}#status{background:#f6ebd0;border-left:4px solid #ae8131;padding:18px}.instruments{display:grid;grid-template-columns:1fr 1fr;gap:20px}.instruments article{background:#fffbed;border:1px solid #b5bfa8;padding:20px;border-radius:12px}.estimates{display:flex;justify-content:space-between;gap:12px}.estimates strong{display:block;font-size:27px}.estimates small{font-size:12px}canvas{display:block;width:100%;margin-top:16px}details{padding:20px 0}summary{font-weight:700;cursor:pointer}a{color:#315a49}@media(max-width:700px){.map,.instruments{grid-template-columns:1fr}.map{background-size:auto 100%;padding:18px}.habitat:nth-child(2){border-top:2px solid #ffffffa0;padding-top:18px}h1{font-size:54px}}@media(max-width:480px){main{padding:14px}.brief,.conclusion{padding:16px}.sites{gap:7px}.site{font-size:14px}.toolbar button{flex:1}.conclusion button{width:100%;flex-basis:100%}}
