/* The companion is decorative; content and controls keep their normal hit areas. */
.page-cat{position:absolute;left:0;top:0;width:132px;height:106px;z-index:12;pointer-events:none;user-select:none;contain:layout style;will-change:transform}
.page-cat[hidden],.cat-claw-marks[hidden]{display:none!important}
.cat-facing,.cat-actor{position:absolute;inset:0;transform-origin:50% 100%}
.cat-frame{position:absolute;bottom:0;overflow:hidden;display:block}
.cat-art{position:absolute;max-width:none!important;height:auto!important;display:block;pointer-events:none}
.cat-handle{position:absolute;inset:0;width:100%;height:100%;min-height:0!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;box-shadow:none!important;pointer-events:auto;cursor:grab;touch-action:none;clip-path:ellipse(47% 46% at 50% 51%)}
.cat-handle:focus-visible{outline:2px dashed var(--ink);outline-offset:-4px}
.page-cat.is-held{z-index:40}.is-held .cat-handle{cursor:grabbing}.is-held .cat-actor{transform-origin:50% 18%}
.page-cat[data-action=behind] .cat-handle{pointer-events:none}
.cat-yarn{position:absolute;width:26px;height:26px;left:-19px;bottom:0;opacity:0;overflow:visible}
.cat-dream{position:absolute;right:18px;top:22px;opacity:0;font-size:14px;color:var(--muted);font-family:Georgia,serif}
.cat-dream span{position:absolute;left:15px;top:-15px;font-size:10px}
.cat-text-ink{display:inline-block;max-width:100%;transform-origin:100% 60%;will-change:transform}
.cat-text-front{position:relative;z-index:13}
.cat-claw-marks{position:absolute;width:25px;height:24px;z-index:14;pointer-events:none;overflow:visible}
.cat-claw-marks path{fill:none;stroke:var(--ink);stroke-width:1.2;stroke-linecap:round;stroke-dasharray:32;stroke-dashoffset:var(--claw-dash,32);opacity:.4}
@media(max-width:760px){.page-cat{width:106px;height:88px}.cat-yarn{width:22px;height:22px}.cat-dream{top:16px;right:10px}}
@media(prefers-reduced-motion:reduce){.page-cat,.page-cat *,.cat-text-ink{animation:none!important;transition:none!important}}
