/* Fixed 100 × 64 cells keep the original little turtle's pixel grid intact. */
.home-turtle{position:absolute;inset:0;pointer-events:none;direction:ltr;contain:none;overflow:visible}
.home-turtle[hidden],.turtle-actor[hidden],.turtle-dream[hidden]{display:none!important}
.turtle-actor{position:absolute;left:0;top:0;border:0;padding:0;background:none;cursor:grab;pointer-events:auto;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transform-origin:50% 65%;outline:none}
.turtle-actor.is-carried{cursor:grabbing}
.turtle-sprite{position:absolute;inset:0;background-repeat:no-repeat;image-rendering:pixelated;pointer-events:none;transform-origin:center}
.turtle-actor:focus-visible:after{content:"";position:absolute;left:17%;right:17%;bottom:5%;height:4px;border:1px dashed var(--forest,#00896f);border-radius:50%;pointer-events:none}
.turtle-dream{position:absolute;left:62%;top:16%;font:11px/1 monospace;color:#a88ac4;pointer-events:none;animation:turtle-dream 5.2s steps(5) infinite}
@keyframes turtle-dream{0%,100%{transform:translate(0,0);opacity:0}25%{opacity:.6}80%{transform:translate(5px,-8px);opacity:.25}}
@media(prefers-reduced-motion:reduce){.turtle-dream{animation:none}.turtle-actor{will-change:auto}}
@media print{.home-turtle{display:none!important}}

/* A hinged neck reaches the button without sinking the shell or toes. */
.turtle-bite-head{position:absolute;inset:0;pointer-events:none;transform-origin:center}
.turtle-bite-neck{position:absolute;inset:0;background-repeat:no-repeat;image-rendering:pixelated;pointer-events:none;transform-origin:70% 67.1875%;clip-path:polygon(70% 0,100% 0,100% 82.8125%,70% 82.8125%)}
.turtle-bite-head[hidden]{display:none!important}
