/* Pet artwork and motion are independent of the knowledge page's styles. */
.pet-widget { width: 242px; height: 302px; padding-top: 34px; pointer-events: none; }
.pet-widget.dragging { filter: none; }
.pet-art { position: relative; width: 238px; height: 248px; margin: 0 auto; cursor: grab; outline: none; touch-action: none; pointer-events: auto; }
.pet-art:focus-visible { outline: 2px dashed #9c8dc9; outline-offset: 4px; border-radius: 45%; }
.pet-art:active { cursor: grabbing; }
.pet-rig { position: relative; display: block; width: 100%; height: 100%; user-select: none; }
.pet-ground-shadow { position: absolute; left: 28px; right: 28px; bottom: 11px; height: 25px; border-radius: 50%; background: radial-gradient(ellipse, #6c527e30, #6c527e00 70%); pointer-events: none; }
.pet-meta { top: 8px; left: 22px; padding: 5px 8px; pointer-events: auto; }
.minimize-pet { right: 12px; top: 10px; pointer-events: auto; }
.pet-menu-trigger { position: absolute; top: 10px; right: 42px; width: 25px; height: 25px; padding: 0; border: 1px solid #e6e2df; border-radius: 50%; background: #fff; color: #7d728c; cursor: pointer; pointer-events: auto; }
.pet-menu-trigger:hover, .minimize-pet:hover { color: #6753a5; border-color: #b8abd7; }
.pet-balance { left: 25px; right: 25px; bottom: 10px; padding: 6px 10px; font-variant-numeric: tabular-nums; pointer-events: auto; }
.pet-status { position: absolute; bottom: -12px; left: 0; width: 100%; text-align: center; color: #8b8293; font-size: 9px; letter-spacing: .05em; text-shadow: 0 1px 3px #fff; }
.pet-feedback { top: -32px; transition: opacity .18s, transform .18s; }
.pet-feedback::after { content: ""; position: absolute; bottom: -5px; left: 21px; width: 8px; height: 8px; background: #fff; border-bottom: 1px solid var(--line); border-right: 1px solid var(--line); transform: rotate(45deg); }
.pet-red-dot { right: 10px; top: 4px; }
.pet-edge-gain { position: absolute; right: 62px; top: 12px; width: 75px; color: #418c70; font-size: 11px; font-style: normal; text-shadow: 0 1px 3px #fff; pointer-events: none; }
.pet-interaction-tip { margin-top: 10px; color: #9b95a5; font-size: 9px; line-height: 1.5; }
@media (prefers-reduced-motion: reduce) { .pet-feedback { transition: none; } }
