/* One square cell from a 3 × 2 local WebP atlas. Reserve space before loading. */
.art-3d{display:block;width:100%;aspect-ratio:1;flex-shrink:0;border-radius:14px;background-color:#f8f7f1;background-image:var(--art-image);background-size:300% 200%;background-position:var(--art-x) var(--art-y);background-repeat:no-repeat;overflow:hidden}
.mt-item>.art-3d,.decor-card>.art-3d,.pet-card>.art-3d{margin-bottom:7px}
.nft-card>.art-3d{border-radius:17px 17px 0 0}
.pet-hero-art{height:auto;aspect-ratio:1;background:#f8f7f1}
.pet-hero-art .art-3d{position:static;height:100%;width:100%;border-radius:17px;padding:0;background-color:#f8f7f1;background-image:var(--art-image);background-size:300% 200%;background-position:var(--art-x) var(--art-y);background-repeat:no-repeat}
.pet-hero-art>.art-caption{position:absolute;left:5px;right:5px;bottom:5px;background:#ffffffdb;color:#5d7660;font-size:9px;border-radius:8px;padding:6px;text-align:center}
.plot-card>.art-3d{margin:0 auto 8px;max-width:190px}
.art-inline{display:inline-block;width:42px;height:42px;vertical-align:middle;border-radius:9px;margin-right:7px}
.brand .logo .art-3d{width:47px;height:47px}
.art-inventory{display:flex;gap:9px;flex-wrap:wrap;margin:12px 0}
.art-owned-item{display:flex;align-items:center;gap:8px;min-width:0;max-width:100%;padding:7px 10px 7px 7px;border:1px solid #e1e9db;border-radius:13px;background:#fff;font-size:11px;color:#52705b}
.art-owned-item>.art-3d{width:54px;height:54px;border-radius:9px}
.art-owned-item>span{overflow-wrap:anywhere;line-height:1.6}
.market-offer>.art-3d{max-width:300px;margin:10px auto}
.adventure-art .art-3d{width:min(100%,280px);margin:auto}
@media(max-width:530px){.pet-hero{grid-template-columns:minmax(0,130px) minmax(0,1fr)}.pet-hero-art{height:auto}.pet-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.pet-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;column-gap:12px}.pet-card:last-child>.art-3d{grid-row:1/6;margin:0}.decor-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.art-owned-item{flex:1 1 135px}.art-owned-item>.art-3d{width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){.art-3d{animation:none;transition:none}}
@media(max-width:530px){.section-heading{align-items:flex-start;flex-wrap:wrap;gap:8px}.section-heading>div{flex:1 1 180px;min-width:0}}
.pasture-controls{padding:12px 16px;background:#fcfef9;border-top:1px solid #e4eddd}
.layout-toolbar,.pasture-music{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.pasture-controls button{min-height:44px;padding:9px 13px;border:1px solid #d4e4cf;border-radius:12px;color:#42694e;background:#fff;font-size:12px;font-weight:700}
.pasture-controls button[aria-pressed="true"]{background:#397b55;color:#fff;border-color:#397b55}
.layout-toolbar label{display:flex;align-items:center;gap:8px;color:#55745a;font-size:12px;min-width:0}
.layout-toolbar select{min-width:0;max-width:240px;min-height:44px;border:1px solid #cadfc9;border-radius:10px;background:#fff;color:#42694e;padding:8px;font:inherit}
.pasture-controls [hidden]{display:none!important}
#layout-status{margin:8px 0 12px;font-size:11px;line-height:1.6;color:#628568}
.pasture-music{border-top:1px dashed #dce6d7;padding-top:10px}
.pasture-music label{display:flex;align-items:center;gap:7px;font-size:11px;color:#6b8069}
.pasture-music input{width:92px;min-height:44px;accent-color:#4f9866}
.pasture-music small{font-size:10px;color:#7c9178}
#farm-canvas[data-layout-mode="true"]{cursor:grab}
#farm-canvas:focus-visible{outline:3px solid #3f8758;outline-offset:-4px}
.pasture-controls :focus-visible{outline:3px solid #579c6b;outline-offset:2px}
@media(max-width:530px){.pasture-controls{padding:10px}.pasture-controls button{padding:8px 11px;font-size:11px}.layout-toolbar label{flex-basis:100%}.layout-toolbar select{flex:1;max-width:100%}.pasture-music small{flex-basis:100%}}
