*{box-sizing:border-box}body{margin:0;background:#f5efe2;color:#283d32;font:16px/1.5 system-ui,sans-serif}main{max-width:1160px;margin:auto;padding:30px}header{border-bottom:2px solid #80927b;margin-bottom:22px}.eyebrow,small{letter-spacing:.12em;font-size:11px;font-weight:750}h1{font:64px Georgia,serif;margin:0;color:#344e3a}h2{font:26px Georgia,serif;margin:0 0 10px}p{margin:8px 0 16px}.brief,.proposal,aside section{background:#fffaf0;border:1px solid #c4c7ae;border-radius:16px;padding:22px}.toolbar{display:flex;gap:10px}button{font:inherit;cursor:pointer;min-height:46px;background:#fffaf0;border:1px solid #8b9c80;border-radius:8px;padding:10px 16px;color:inherit}button:hover{background:#e7eddc}button:focus-visible{outline:3px solid #b16e36;outline-offset:3px}button:disabled{opacity:.45;cursor:default}.primary,#confirm{background:#365743;color:white;width:100%;margin-top:12px}.metrics{display:flex;gap:20px;margin:22px 0}.metrics>div{flex:1;padding:16px;border-top:3px solid #7d9271;background:#e5e9d9}strong{display:block;font-size:28px}.layout{display:grid;grid-template-columns:1.5fr 1fr;gap:24px}#animals{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.animal{padding:0;overflow:hidden;text-align:left;background:#fffaf0}.animal.selected{outline:3px solid #ac6c38}.portrait{display:block;height:140px;background-image:url('pikas.webp');background-size:400% 200%}.info{display:block;padding:10px}.info b{font:21px Georgia,serif}.info span{display:block;font-size:12px}.animal.paired{opacity:.48}.muted{font-size:13px;color:#526449}aside{display:grid;gap:16px;align-content:start}.pair{border-bottom:1px solid #d5d8c5;padding:12px 0;font-size:14px}.pair button{float:right;min-height:38px;padding:4px 10px}.bad{color:#9c3e28}.good{color:#246440}#status{padding:12px;border-left:4px solid #ac6c38;background:#f1e8d6}details{margin:26px 0;padding:20px;border-top:1px solid #bdc5ad}summary{cursor:pointer;font-weight:700}a{color:#31553c}@media(max-width:800px){main{padding:16px}.layout{grid-template-columns:1fr}h1{font-size:46px}#animals{grid-template-columns:repeat(4,1fr)}.portrait{height:120px}}@media(max-width:480px){#animals{grid-template-columns:repeat(2,1fr)}.portrait{height:150px}.brief,aside section{padding:16px}.metrics{gap:7px}.metrics>div{padding:10px 7px}small{font-size:9px;letter-spacing:.04em}.metrics strong{font-size:24px}.info span{font-size:13px}h1{font-size:44px}}
.primary:hover,#confirm:hover{background:#264231;color:#fff}
