.pasture[data-biome=meadow]{--field: #b9d97c;--field-edge: #698c49;--biome-grass: #5b9b45;--biome-flower: #ffe788;--biome-patch: #95bf62;--biome-fence: #c7a16b}.pasture[data-biome=ranch]{--field: #d2bb75;--field-edge: #916f3d;--biome-grass: #918043;--biome-flower: #e9bd58;--biome-patch: #ba9855;--biome-fence: #80542f}.pasture[data-biome=mountain]{--field: #88b66c;--field-edge: #537d53;--biome-grass: #427c49;--biome-flower: #e9ddaa;--biome-patch: #65985f;--biome-fence: #6e553b}.pasture[data-biome=coast]{--field: #d8ca85;--field-edge: #6f927b;--biome-grass: #789553;--biome-flower: #fff0a4;--biome-patch: #c4b86d;--biome-fence: #7b6546}.pasture[data-biome] .grass{background:var(--biome-grass);box-shadow:-4px -3px 0 -1px var(--biome-grass),4px -2px 0 -1px var(--biome-grass)}.pasture[data-biome] .flower{background:var(--biome-flower)}.pasture[data-biome] .corner-patch{background:var(--biome-patch)}.pasture[data-biome] .fence:after,.pasture[data-biome] .fence-side:after{background:color-mix(in srgb,var(--biome-fence) 72%,#fff);box-shadow:0 2px 0 var(--biome-fence)}.pasture[data-biome] .fence,.pasture[data-biome] .fence-side{filter:sepia(.25) saturate(.8)}.biome-scenery{position:absolute;inset:0;z-index:1;width:100%;height:100%;overflow:hidden;pointer-events:none}.biome-art{display:block;width:100%;height:100%;overflow:visible}.biome-scenery+.pasture-texture{z-index:0}.biome-scenery~.field-objects,.biome-scenery~.field-sign,.biome-scenery~.fence{z-index:2}.meadow-clover{fill:#4f963f;opacity:.78}.meadow-flowers{fill:#fff5ba;stroke:#d58a9e;stroke-width:5}.meadow-daisies{fill:none;stroke:#f8f5ca;stroke-width:8;stroke-dasharray:2 25;stroke-linecap:round;opacity:.8}.ranch-track{fill:none;stroke:#a87842;stroke-width:28;opacity:.48;stroke-linecap:round}.ranch-hay{fill:#e8c95d;stroke:#a77b31;stroke-width:8}.ranch-windmill{fill:#805b35;stroke:#68452b;stroke-width:8}.ranch-furrows{stroke:#ae8147;stroke-width:12;opacity:.55}.mountain-range{fill:#597c60;opacity:.85}.mountain-back{fill:#4d705b}.mountain-snow{fill:#f0f3dc;opacity:.92}.mountain-pines{fill:#345e47;opacity:.85}.coast-water{fill:#70b8c0}.coast-foam{fill:none;stroke:#e9faf2;stroke-width:13;stroke-linecap:round;opacity:.9}.coast-sand{fill:#e5d78f;opacity:.8}.coast-rocks{fill:#667876;stroke:#465c5a;stroke-width:7}.coast-reeds{fill:none;stroke:#58754e;stroke-width:8;stroke-linecap:round}.biome-exit{position:absolute;bottom:12px;z-index:3;width:124px;height:48px;display:flex;gap:3px;align-items:center;justify-content:center;padding:6px 9px;border:0;border-radius:3px;background:repeating-linear-gradient(0deg,#d9ad6a 0 2px,#e7c48a 2px 18px);color:#523e28;box-shadow:inset 0 0 0 2px #99703f,inset 0 4px #f7deaa;filter:drop-shadow(0 3px 0 #775731);font:700 10px/1.15 Golos Text,sans-serif;transition:filter .15s}.biome-exit:after{content:"";position:absolute;top:5px;left:50%;width:3px;height:3px;border-radius:50%;background:#8b673e;box-shadow:0 35px #8b673e}.biome-exit svg{width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.biome-exit span{max-width:79px}.biome-exit-left{left:8px;padding-left:12px;clip-path:polygon(0 50%,10% 0,100% 0,100% 100%,10% 100%)}.biome-exit-right{right:8px;padding-right:12px;clip-path:polygon(0 0,90% 0,100% 50%,90% 100%,0 100%)}.biome-exit:hover{filter:brightness(1.08) drop-shadow(0 3px 0 #775731)}.biome-exit:active{bottom:10px;filter:drop-shadow(0 1px 0 #775731)}.biome-exit:focus-visible{outline:none;background:#fff0be;box-shadow:inset 0 0 0 3px #463c2b}.pasture[data-biome] .map-viewport{z-index:0}.pasture[data-biome]{background:var(--field)}.pasture[data-biome] .map-controls{background:color-mix(in srgb,var(--field) 50%,#fffcf1)}.pasture[data-biome] .field-sign{display:none}.pasture[data-biome=coast] .fence,.pasture[data-biome=coast] .fence-side{opacity:.25}.pasture[data-biome=coast] .flower{display:none}.pasture[data-biome=coast] .grass{opacity:.18}.pasture[data-biome=coast] .pasture-texture{opacity:.17}.experiment-shell{gap:8px}.experiment-header{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-shrink:0;min-height:44px;padding:0 4px}.experiment-header h1{font-size:17px;letter-spacing:-.5px;margin:0 0 3px}.experiment-header>div>span{font-size:10px;color:var(--muted)}.experiment-back{display:grid;place-items:center;min-height:44px;padding:0 6px;color:var(--ink);font-size:11px;white-space:nowrap}.experiment-stage{display:flex;flex:1;min-height:280px}.experiment-stage>.pasture{width:100%;min-height:280px}.experiment-stage .map-viewport{z-index:0}.biome-name{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:2;display:flex;flex-direction:column;gap:2px;padding:6px 14px;min-width:135px;text-align:center;border:1px solid #687a4860;border-radius:8px;background:#fffcf1e8;box-shadow:0 3px #293d2d15;font-size:12px;font-weight:700;pointer-events:none}.biome-name>span{font-size:8px;letter-spacing:2px;opacity:.65}.biome-navigation{position:absolute;inset:0 0 58px;pointer-events:none;z-index:3}.biome-navigation button{pointer-events:auto}.experiment-link{display:grid;place-items:center;min-height:44px;font-size:11px;color:var(--ink);padding:0 6px}.header-tools{display:flex;align-items:center;gap:5px}@media(max-width:370px){.header-tools{gap:0}.header-tools .animal-count{font-size:9px}.site-header:has(.header-tools) .brand{font-size:16px;gap:5px}.site-header:has(.header-tools) .brand-symbol{width:33px;height:33px}}@media(prefers-reduced-motion:reduce){.experiment-stage *{transition:none!important}}.admin-shell{max-width:1200px;margin:auto;padding:24px;font-family:Arial,sans-serif;color:#17251c}.admin-header,.admin-controls{display:flex;gap:16px;align-items:center;justify-content:space-between}.admin-header p{margin:4px 0}.admin-counters{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:22px 0}.admin-counters div,.admin-form{background:#f3f7ed;padding:14px;border-radius:8px}.admin-counters strong,.admin-counters span,.admin-counters small{display:block}.admin-controls{justify-content:flex-start}.admin-controls input{min-width:240px}button,input,select,textarea{padding:8px}table{width:100%;margin-top:20px;border-collapse:collapse;font-size:14px}td,th{padding:8px;border-bottom:1px solid #ccd5c8;text-align:left;vertical-align:top}code{font-size:11px}em{display:block;color:#667;font-size:12px}.admin-form{position:fixed;z-index:10;inset:10% 30%;box-shadow:0 8px 32px #0005}.admin-form label{display:block;margin:8px 0}.admin-form input,.admin-form select,.admin-form textarea{display:block;width:100%;box-sizing:border-box}@media(max-width:700px){.admin-counters{grid-template-columns:1fr 1fr}.admin-shell{overflow:auto}.admin-form{inset:4%}.admin-controls{flex-wrap:wrap}table{min-width:900px}}:root{--page: #f5f3e9;--ink: #293d2d;--muted: #70786b;--field: #bed88e;--field-edge: #7d9b59;--paper: #fffcf1;--primary: #db603e;--primary-dark: #a7432b;--radius: 18px;--space: 24px;--app-width: 430px;--modal-width: 420px;--label-size: 12px;font-family:Golos Text,system-ui,sans-serif;color:var(--ink);background:var(--page);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--ink);outline-offset:5px}button{color:inherit}.app-shell{width:100%;max-width:var(--app-width);margin:auto;padding:10px 8px 12px;padding-bottom:max(12px,env(safe-area-inset-bottom));height:100svh;height:100dvh;min-height:360px;display:flex;flex-direction:column}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.site-header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:8px;padding:0 4px;margin-bottom:10px;min-height:44px}.brand{display:flex;gap:8px;align-items:center;text-decoration:none;color:var(--ink);font-family:Rubik Mono One,monospace;font-size:19px;line-height:1.2;letter-spacing:-1px}.brand small{display:block;font:500 8px Golos Text,sans-serif;letter-spacing:3px;margin:4px 0 0 2px}.brand-symbol{display:grid;place-items:center;background:var(--primary);color:var(--page);font:39px/1 Georgia,serif;width:39px;height:39px;border-radius:9px;letter-spacing:0}.sandbox-badge{font:600 8px Golos Text,sans-serif;letter-spacing:.7px;border:1px solid #cbd0bc;padding:7px 8px;border-radius:7px;white-space:nowrap}.sandbox-badge>span,.animal-count>span{display:inline-block;width:6px;height:6px;background:#68874a;border-radius:50%;vertical-align:1px;margin-right:5px}.pasture-section{flex:1;min-height:300px;display:flex;flex-direction:column}.field-heading{position:relative;padding-bottom:28px;display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:17px}h1{font-size:25px;line-height:1.15;letter-spacing:-1px;margin:0 0 6px;font-weight:800}.field-heading p{margin:0;color:var(--muted);font-size:14px}.animal-count{flex-shrink:0;font-size:11px;font-weight:500;white-space:nowrap;color:var(--muted)}.pasture{position:relative;min-height:220px;flex:1;overflow:hidden;isolation:isolate;border:2px solid var(--field-edge);border-radius:12px;background:var(--field);box-shadow:0 5px #d6ddc0}.pasture-texture{position:absolute;inset:0;opacity:.4;background-image:radial-gradient(#809e55 1px,transparent 1px),radial-gradient(#e8f2b8 1px,transparent 1px);background-size:13px 13px,19px 19px;background-position:0 0,4px 7px}.pasture:before{content:"";position:absolute;inset:11px;border:1px solid #a6c576;border-radius:9px;pointer-events:none}.fence{position:absolute;left:16px;right:16px;height:22px;z-index:1;background:repeating-linear-gradient(90deg,#eadbb1 0 8px,#b49a6d 8px 10px,transparent 10px 70px)}.fence:after{content:"";position:absolute;top:8px;left:0;right:0;height:6px;background:#dfc998;box-shadow:0 2px #ac9563}.fence-top{top:14px}.fence-bottom{bottom:14px}.corner-patch{position:absolute;width:170px;height:70px;background:#abc977;opacity:.6;clip-path:polygon(0 20%,15% 20%,15% 0,70% 0,70% 20%,90% 20%,90% 40%,100% 40%,100% 80%,75% 80%,75% 100%,20% 100%,20% 80%,0 80%)}.patch-one{left:6%;top:21%;transform:rotate(-12deg)}.patch-two{right:10%;bottom:12%;width:240px;height:110px}.field-objects{position:absolute;inset:50px 20px;pointer-events:none}.decoration{position:absolute;display:block}.grass{width:3px;height:6px;background:#7fa24f;opacity:.55;box-shadow:-4px -3px 0 -1px #7fa24f,4px -2px 0 -1px #7fa24f}.flower{width:4px;height:4px;background:#edca62;box-shadow:-4px 0 #fff9db,4px 0 #fff9db,0 -4px #fff9db,0 4px #fff9db,0 8px #7c9d51}.flower:nth-child(odd){box-shadow:-4px 0 #f4b9a1,4px 0 #f4b9a1,0 -4px #f4b9a1,0 4px #f4b9a1,0 8px #7c9d51}.stone{width:12px;height:7px;background:#b0b19b;border-bottom:2px solid #929d7a;box-shadow:3px 1px #a5b580}.animal-field{position:absolute;inset:36px 0 37px}.animal{width:var(--animal-size);height:calc(var(--animal-size) + var(--label-height));background:none;border:none;padding:0;position:absolute;left:0;top:0;will-change:transform;touch-action:manipulation;display:flex;align-items:center;flex-direction:column;border-radius:8px}.animal-name{font-size:var(--label-size);font-weight:700;line-height:1;background:#fffbeeeb;border:1px solid #8aa162;border-radius:5px;padding:5px 7px;max-width:100%;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-transform:uppercase;box-shadow:0 2px #8fab6540;flex-shrink:0}.animal:hover .animal-name,.animal:focus-visible .animal-name{background:var(--ink);color:var(--paper);border-color:var(--ink)}.animal-facing{display:block;width:var(--animal-size);height:var(--animal-size);transform:scaleX(var(--facing, 1))}.animal-sprite{width:100%;height:100%;overflow:visible}.animal-shadow{position:absolute;width:52%;height:9%;border-radius:50%;background:#789548;opacity:.35;bottom:9%;left:24%}.animal[data-state=WALK] .animal-sprite{animation:walk .46s steps(2,end) infinite}.animal[data-state=WALK] .animal-legs{animation:legs .46s steps(2,end) infinite;transform-origin:50% 70%}.animal[data-state=EAT] .animal-body{animation:eat 1.1s steps(2,end) infinite;transform-origin:55% 70%}.animal[data-state=IDLE] .animal-body{animation:breathe 2s ease-in-out infinite;transform-origin:bottom}.eat-spark{position:absolute;font-size:13px;color:#fdf8cc;right:7%;bottom:4%;opacity:0}.animal[data-state=EAT] .eat-spark{animation:snack 1.1s steps(2,end) infinite}.pasture[data-paused=true] .animal *,.pasture[data-paused=true] .animal .animal-body{animation-play-state:paused}.field-sign{position:absolute;bottom:39px;right:17px;transform:rotate(-5deg);font:700 8px/1.45 monospace;letter-spacing:1px;padding:6px 8px;opacity:.85;border:2px solid #a79864;background:#dfd29c;color:#716a46;box-shadow:2px 3px #96b168;pointer-events:none}.field-toolbar{display:flex;flex:0 0 auto;align-items:center;padding:10px 0 4px}.field-toolbar p{font-size:12px;color:var(--muted);margin:0}.field-toolbar p span{font-size:16px;margin-right:7px}.primary-button{width:100%;min-height:53px;padding:16px 24px;background:var(--primary);color:#fffbec;border:1px solid var(--primary-dark);border-radius:9px;box-shadow:0 4px 0 var(--primary-dark);font-size:13px;font-weight:800;letter-spacing:.5px;transition:background .15s,transform .15s,box-shadow .15s}.primary-button:hover{background:#c95234}.primary-button:active{transform:translateY(3px);box-shadow:0 1px 0 var(--primary-dark)}.page-note{margin-top:12px;border-top:1px solid #dbdece;padding-top:13px;display:flex;flex-wrap:wrap;justify-content:center;gap:12px;font-size:10px;color:#808778}.page-note span span{color:#849963;font-size:18px;vertical-align:-2px;margin-left:7px}@keyframes walk{50%{transform:translateY(-2px)}}@keyframes legs{50%{transform:skew(-8deg)}}@keyframes eat{50%{transform:rotate(9deg) translateY(1px)}}@keyframes breathe{50%{transform:scaleY(1.025)}}@keyframes snack{50%{opacity:1;transform:translateY(-3px)}}@media(prefers-reduced-motion:reduce){.animal *{animation:none!important}button{transition:none!important}}.notice{position:fixed;left:50%;bottom:126px;width:max-content;transform:translate(-50%,10px);border:1px solid #afbd94;border-radius:8px;background:var(--paper);color:var(--ink);box-shadow:0 4px 20px #293d2d15;padding:12px 20px;margin:0;max-width:min(calc(100vw - 32px),calc(var(--app-width) - 32px));text-align:center;font-size:14px;z-index:110;pointer-events:none;opacity:0;transition:opacity .2s,transform .2s}.notice.visible{opacity:1;transform:translate(-50%)}.storage-error{font-size:13px;line-height:1.5;color:#9c3d27;margin:4px 0}.reset-button,.text-button{border:0;background:none;font-size:13px;padding:10px 12px;color:var(--muted);border-radius:6px}.reset-button{font-size:11px;padding:8px;text-decoration:underline;text-underline-offset:3px}.text-button:hover,.reset-button:hover{color:var(--ink);background:#e8eadb}.modal{width:min(var(--modal-width),calc(100% - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border:1px solid #bbbea2;border-radius:var(--radius);background:var(--paper);color:var(--ink);box-shadow:0 16px 80px #1c342d30,0 5px #bbc69c;overflow:auto;overscroll-behavior:contain}.modal::backdrop{background:#253d2e65;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-content{padding:25px 20px 22px;position:relative}.close-button{position:absolute;top:12px;right:12px;width:36px;height:36px;font-size:27px;line-height:1;border:0;border-radius:8px;background:transparent;color:#78816a}.close-button:hover{background:#e9ecdc;color:var(--ink)}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:#798365;margin:0 0 15px}h2{font-size:22px;letter-spacing:-.8px;line-height:1.15;margin:0 20px 8px 0;font-weight:800}.modal-subtitle{font-size:13px;line-height:1.5;color:var(--muted);margin:0 0 20px}.input-label,legend{font-size:13px;font-weight:700;margin:0 0 8px;display:block}input:not([type=radio]),textarea{background:#fffef8;width:100%;border:1px solid #cdd0ba;border-radius:8px;padding:12px 13px;color:var(--ink);font-size:16px;outline:none}input:not([type=radio]):focus,textarea:focus{border-color:#758b57;box-shadow:0 0 0 3px #bed88e45}input[aria-invalid=true]{border-color:var(--primary)}input::placeholder,textarea::placeholder{color:#999b89;opacity:1}textarea{resize:vertical;min-height:78px;line-height:1.45}.input-error{margin:7px 0 0;font-size:12px;color:#b5482e}fieldset{border:0;padding:0;margin:20px 0;min-width:0}legend{padding:0}.animal-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.animal-option,.variant-option{position:relative;cursor:pointer;min-width:0}.animal-option input,.variant-option input{position:absolute;width:1px;height:1px;opacity:0;margin:0}.option-surface{border:1px solid #d4d7c0;border-radius:8px;background:#f4f3e7;display:flex;align-items:center;justify-content:center;min-width:0}.animal-option .option-surface{flex-direction:column;padding:5px 5px 10px;gap:1px;font-size:12px}.animal-option .animal-sprite{width:51px;height:51px}.animal-option input:checked+.option-surface,.variant-option input:checked+.option-surface{border:2px solid #738853;background:#e4ebce}.animal-option input:checked+.option-surface{padding:4px 4px 9px}.animal-option input:focus-visible+.option-surface,.variant-option input:focus-visible+.option-surface{outline:3px solid var(--ink);outline-offset:3px}.option-surface:hover{background:#e9edda}.variant-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.variant-option .option-surface{flex-direction:column;padding:6px 4px 9px;font-size:11px;position:relative;gap:3px}.variant-option .animal-sprite{width:40px;height:40px}.variant-option input:checked+.option-surface{padding:5px 3px 8px}.variant-check{position:absolute;right:6px;top:4px;font-size:11px;color:#5b743e;visibility:hidden}.variant-option input:checked+.option-surface .variant-check{visibility:visible}.note-label{display:flex;align-items:baseline;justify-content:space-between;gap:7px}.note-label .input-label span{font-weight:400;font-size:10px;color:#8b907d;display:block;margin-top:3px}.note-label>span{color:#959983;font-size:10px}.modal-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:22px}.modal-actions .primary-button{width:auto;min-width:170px;min-height:48px}.modal-actions .primary-button span{margin-left:14px}.animal-card{--modal-width: 340px;text-align:center}.animal-card .modal-content{padding:28px 24px 24px}.animal-card .eyebrow{text-align:left;margin-bottom:4px}.card-portrait{height:130px;width:130px;margin:8px auto 16px;background:#e3eacb;border:1px solid #d4deba;border-radius:50%;padding:9px}.card-portrait .animal-sprite{width:100%;height:100%}.animal-card h2{margin:0;overflow-wrap:anywhere;font-size:28px}.card-type{font-size:13px;color:var(--muted);margin:7px 0 0}.card-note{font-size:16px;line-height:1.55;overflow-wrap:anywhere;margin:22px 0}.card-stat{border-top:1px dashed #ccd2b7;margin-top:24px;padding-top:18px;font-size:12px;color:#7a8566}.card-stat span{margin-right:5px;font-size:16px;vertical-align:-1px}.animal-location{margin:16px 0 0;padding:10px;border:1px solid #b8c59b;border-radius:8px;background:#edf2dc;font-size:12px;line-height:1.45}.animal-location .text-button{display:block;margin:3px auto -5px;color:#50683a}.share-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}.share-button,.copy-link-button{min-height:44px;padding:10px 8px;border-radius:8px;font-size:12px;font-weight:700}.share-button{border:1px solid var(--primary-dark);background:var(--primary);color:#fffbec}.share-button:hover{background:#c95234}.copy-link-button{border:1px solid #bfcca5;background:#f4f6e8;color:var(--ink)}.copy-link-button:hover{background:#e5eccd}.manual-copy{display:block;margin-top:12px;text-align:left}.manual-copy span{display:block;margin-bottom:5px;font-size:11px;color:var(--muted)}.manual-copy input{min-height:44px;padding:8px 10px;font-size:12px}.share-status{min-height:18px;margin:10px 0 0;font-size:12px;line-height:1.4;color:#687658}.page-note>span:first-child{display:none}.sandbox-badge>span{width:4px;height:4px;margin-right:3px}.pasture{background:#a8c57f}.pasture:before{display:none}.map-viewport{position:absolute;inset:0 0 58px;overflow:hidden;touch-action:none;overscroll-behavior:contain;cursor:grab;outline-offset:-4px;user-select:none;-webkit-user-select:none}.map-viewport[data-dragging=true]{cursor:grabbing}.pasture-world{position:absolute;left:0;top:0;transform-origin:0 0;background:var(--field);border:2px solid var(--field-edge);will-change:transform;pointer-events:none}.pasture-world .pasture-texture{opacity:.45}.pasture-world .field-objects{inset:35px}.pasture-world .field-sign{font-size:12px;padding:12px;bottom:55px;right:50px}.pasture-world .corner-patch{width:280px;height:150px}.patch-three{top:54%;left:19%;transform:rotate(8deg)}.patch-four{top:18%;right:20%}.fence-side{position:absolute;top:16px;bottom:16px;width:22px;background:repeating-linear-gradient(0deg,#eadbb1 0 8px,#b49a6d 8px 10px,transparent 10px 70px)}.fence-side:after{content:"";position:absolute;left:8px;top:0;bottom:0;width:6px;background:#dfc998;box-shadow:2px 0 #ac9563}.fence-left{left:14px}.fence-right{right:14px}.animal-field{position:absolute;inset:0;pointer-events:none}.animal{pointer-events:auto;touch-action:none}.animal[hidden]{display:none}.animal-facing{width:var(--sprite-size);height:var(--sprite-size);flex-shrink:0}.animal-name{min-height:23px;position:relative;max-width:max(100%,74px)}.animal-shadow{width:calc(var(--sprite-size) * .52);left:50%;transform:translate(-50%);bottom:auto;top:calc(var(--label-height) + var(--sprite-size) * .79);height:calc(var(--sprite-size) * .09)}.map-viewport[data-labels=false] .animal-name{opacity:0}.map-viewport .animal[data-selected=true] .animal-name,.map-viewport .animal:focus-visible .animal-name,.map-viewport .animal:hover .animal-name{opacity:1}.animal[data-selected=true] .animal-name{border-color:var(--primary-dark);box-shadow:0 0 0 2px #df764a55}.animal:focus-visible{z-index:2000!important}.map-controls{position:absolute;bottom:0;left:0;right:0;height:58px;display:flex;align-items:center;justify-content:center;gap:3px;background:#e5eccd;border-top:1px solid #9eb579;padding:6px 8px}.map-control{width:44px;height:44px;padding:0;border:1px solid #bfcca5;border-radius:7px;background:var(--paper);color:var(--ink);font-size:25px;line-height:1}.map-control:hover,.overview-button:hover{background:#f5f8e9}.map-control:disabled{opacity:.4;cursor:default}.zoom-value{min-width:45px;text-align:center;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.overview-button{height:44px;margin-left:auto;padding:0 12px;background:var(--paper);border:1px solid #bfcca5;border-radius:7px;font-size:12px;font-weight:600;white-space:nowrap}.overview-button svg{margin-right:4px;vertical-align:-3px}.shared-status,.legacy-transfer{margin:10px 0 0;padding:10px 12px;border:1px solid #b8c59b;border-radius:8px;background:#edf2dc;font-size:12px;line-height:1.45}.shared-status.error{color:#9c3d27;border-color:#deb29f;background:#fff1eb}.retry-button{border:0;border-bottom:1px solid currentColor;background:transparent;color:inherit;font:inherit;font-weight:700;padding:0}.legacy-transfer p{margin:0 0 6px}.primary-button:disabled,.text-button:disabled{opacity:.55;cursor:default}.site-footer{flex:0 0 auto;padding:9px 0 1px;text-align:center;font-size:11px}.site-footer a{display:inline-flex;min-height:28px;align-items:center;padding:0 8px;color:var(--muted);text-decoration:none;text-decoration-thickness:1px;text-underline-offset:3px}.site-footer a:hover{color:var(--ink);text-decoration:underline}.about-shell{width:100%;max-width:var(--app-width);min-height:100svh;min-height:100dvh;margin:auto;padding:10px 8px max(20px,env(safe-area-inset-bottom))}.about-card{margin-top:12px;padding:25px 20px 22px;border:1px solid #bbbea2;border-radius:var(--radius);background:var(--paper);box-shadow:0 5px #bbc69c}.about-card h1{margin-right:0}.about-card>p:not(.eyebrow){margin:19px 0 0;color:var(--muted);font-size:15px;line-height:1.55}.seller-details{margin:23px 0;border-top:1px solid #d8dac8;border-bottom:1px solid #d8dac8}.seller-details div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;font-size:14px}.seller-details div+div{border-top:1px solid #e5e6da}.seller-details dt{color:var(--muted)}.seller-details dd{margin:0;font-weight:700;text-align:right}.back-to-field{display:inline-flex;min-height:44px;align-items:center;color:#50683a;font-size:13px;font-weight:700;text-decoration:none}.back-to-field:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.comments{margin-top:22px;text-align:left;border-top:1px solid #d8dac8;padding-top:16px}.comments h3{margin:0 0 9px;font-size:17px}.comments-list{max-height:190px;overflow-y:auto;overscroll-behavior:contain;padding-right:4px}.comment{border-bottom:1px solid #e2e3d7;padding:9px 0}.comment strong{font-size:14px;overflow-wrap:anywhere}.comment p,.comment-state{margin:4px 0;font-size:14px;line-height:1.4;overflow-wrap:anywhere;white-space:pre-wrap}.comment-form{display:grid;gap:8px;margin-top:12px}.comment-form input,.comment-form textarea{width:100%;font:inherit;border:1px solid #bbbea2;border-radius:8px;padding:9px;background:#fffef8}.comment-form textarea{min-height:68px;resize:vertical}.comment-form .primary-button{min-height:42px}.comment-form .input-error{margin:0}@media(max-height:700px){.animal-card .modal-content{padding-top:20px;padding-bottom:18px}.card-portrait{display:none}.comments-list{max-height:120px}}
