*{box-sizing:border-box}body{margin:0;background:#f0f5ed;color:#1e3936;font:16px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #e39b60;outline-offset:3px}.zoo-shell{max-width:1120px;margin:auto;padding:clamp(20px,4vw,48px) clamp(14px,4vw,36px) 80px}.eyebrow{font-size:.76rem;font-weight:900;letter-spacing:.17em;color:#27886f}.zoo-head h1{font-size:clamp(2.8rem,7vw,5.3rem);letter-spacing:-.065em;line-height:1.05;margin:8px 0}.zoo-head h1 em{font-family:Georgia,serif;font-weight:500;color:#da8b57}.zoo-head p{color:#638079;font-size:1.08rem}.toolbar,.stats,.actions,.habitats{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.toolbar{margin:23px 0}.toolbar button,.actions button,.habitats button{border:2px solid #c4ddd2;border-radius:14px;background:#fff;color:#214c43;min-height:48px;padding:10px 16px;font-weight:800}.toolbar button[aria-pressed=true],.actions .primary,.habitats button[aria-current=true]{background:#205d50;color:#fff;border-color:#205d50}.habitats{margin:0 0 18px}.habitats button{font-size:.85rem;padding:7px 11px;min-height:44px}.habitats button:disabled{opacity:.48;cursor:default}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 18px}.stats div{background:#fff;border:1px solid #d4e6da;border-radius:16px;padding:10px 16px}.stats small{display:block;font-size:.72rem;color:#6b8d81;font-weight:900;letter-spacing:.1em}.stats strong{font-size:1.38rem}.layout{display:grid;grid-template-columns:minmax(0,700px) minmax(240px,1fr);gap:22px;align-items:start}.board-panel{background:linear-gradient(150deg,#276b60,#183e44);border-radius:28px;padding:clamp(12px,2vw,22px);box-shadow:0 20px 42px #1c4c4250}.board-title{color:#e2f0b4;letter-spacing:.13em;font-weight:900;font-size:.78rem;text-align:center;margin:0 0 12px}.memory-grid{display:grid;grid-template-columns:repeat(var(--columns,4),1fr);gap:clamp(5px,1vw,10px);width:min(100%,640px);margin:auto}.memory-card{min-width:0;aspect-ratio:.83;border:3px solid #d0edcf;border-radius:14px;padding:4px;display:grid;place-items:center;background:linear-gradient(145deg,#a2c9aa,#6cb9a4);color:#fff;box-shadow:0 5px 0 #0a3533;touch-action:manipulation;transition:transform .18s,background .18s}.memory-card:disabled{cursor:default}.memory-card:not(:disabled):hover{transform:translateY(-3px)}.memory-card.face-up,.memory-card.matched{background:#fff8e9;color:#273e40;border-color:#e9cf9b;transform:rotateY(0)}.memory-card.matched{background:#e9f5ce;border-color:#cbe98e;box-shadow:0 3px 0 #4e7d6d}.card-back{font-size:clamp(1.6rem,5vw,2.6rem);font-weight:900}.animal{font-size:clamp(1.5rem,5vw,2.7rem);line-height:1.1;display:block}.animal-name{display:block;font-size:clamp(.55rem,1.7vw,.8rem);font-weight:800;line-height:1.05;margin-top:3px}.board-note{text-align:center;color:#e7f7da;margin:14px 0 0;font-size:.87rem}.side{background:#fff;border:1px solid #d6e7d9;border-radius:25px;padding:24px}.side h2{margin:7px 0}.side p,.side li{color:#638078}.side ul{padding-left:19px}.actions{margin:23px 0 12px}.actions button:disabled{opacity:.5;cursor:default}.status{min-height:3em;color:#17685a;font-weight:800}.small{font-size:.85rem;color:#66847c}.foot{color:#6c8378;margin:24px 0}.foot a{color:#1f7969}@media(max-width:800px){.layout{grid-template-columns:1fr}.board-panel,.side{max-width:680px;width:100%;margin:auto}.stats div{padding:9px}.stats strong{font-size:1.2rem}}@media(max-width:390px){.stats{gap:5px}.stats div{padding:7px}.stats small{font-size:.62rem}.memory-grid{gap:5px}.memory-card{border-width:2px;padding:2px;border-radius:9px}.animal-name{font-size:.55rem}}

.power-box{border-top:1px solid #d6e7d9;padding-top:18px;margin-top:20px}.power-box h3{margin:6px 0;font-size:1.15rem}.power-box p{margin:7px 0 12px}.power-inventory{display:flex;flex-wrap:wrap;gap:8px;min-height:48px}.power-button{border:2px solid #a1d3a3;background:#e9f5ce;color:#1e5142;border-radius:14px;padding:9px 12px;min-height:48px;font-weight:800;touch-action:manipulation}.power-button:disabled{opacity:.5;cursor:default}.power-box details{margin-top:10px;color:#45675b}.power-box summary{cursor:pointer;font-weight:800}.power-box ul{margin:8px 0 0;padding-left:20px}.power-box li{margin:5px 0}
