.page-pet{--pagepet-bottom: 35px;--pagepet-side: 18px;--pagepet-pet-width:140px;--pagepet-pet-height:140px;--pagepet-side-label-gap:2px;--pagepet-outward-label-space:0px;position:fixed;z-index:9999;bottom:max(var(--pagepet-bottom),env(safe-area-inset-bottom));width:calc(var(--pagepet-pet-width) + 16px);height:calc(var(--pagepet-pet-height) + 32px);pointer-events:none;font-family:system-ui,-apple-system,Noto Sans TC,sans-serif}.page-pet--right{right:calc(max(var(--pagepet-side),env(safe-area-inset-right)) + var(--pagepet-outward-label-space))}.page-pet--left{left:calc(max(var(--pagepet-side),env(safe-area-inset-left)) + var(--pagepet-outward-label-space))}.page-pet__stage{position:absolute;inset:20px 0 0}.page-pet__button{position:absolute;right:0;bottom:0;width:var(--pagepet-pet-width);height:var(--pagepet-pet-height);padding:0;border:0;background:transparent;cursor:pointer;pointer-events:auto;-webkit-tap-highlight-color:transparent}.page-pet--left .page-pet__button{right:auto;left:0}.page-pet__button:focus-visible,.page-pet__minimize:focus-visible,.page-pet__restore:focus-visible{outline:4px solid rgba(104,87,255,.5);outline-offset:3px}.page-pet__image{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 5px 3px rgba(54,42,43,.2));-webkit-user-select:none;user-select:none;transform-origin:50% 100%}.page-pet__shadow{position:absolute;right:16.67%;bottom:2px;width:66.67%;height:12%;border-radius:50%;background:#30252e29;filter:blur(2px)}.page-pet--left .page-pet__shadow{right:auto;left:16.67%}.page-pet__bubble{position:absolute;right:10px;bottom:calc(var(--pagepet-pet-height) + 12px);width:max-content;max-width:min(260px,calc(100vw - 36px));padding:13px 16px;border:2px solid #362a2b;border-radius:18px 18px 5px;background:#fff;box-shadow:5px 7px #362a2b21;color:#362a2b;font-weight:700;font-size:14px;line-height:1.5;text-align:left;-webkit-user-select:text;user-select:text;pointer-events:auto;display:flex;align-items:flex-start;gap:8px;opacity:0;visibility:hidden;transform:translateY(8px) scale(.94);transform-origin:90% 100%;transition:opacity .18s ease,transform .22s ease,visibility .18s}.page-pet--left .page-pet__bubble{right:auto;left:10px;border-radius:18px 18px 18px 5px;transform-origin:10% 100%}.page-pet__bubble-text{min-width:0;white-space:pre-wrap}.page-pet__copy{flex:0 0 auto;min-width:40px;padding:2px 6px;border:0;border-radius:999px;background:#f2ede7;color:#6f6264;font-weight:600;font-size:12px;line-height:1.5;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none}.page-pet__copy[hidden]{display:none}.page-pet__copy:hover,.page-pet__copy:focus-visible{background:#e8dfd5;color:#362a2b}.page-pet__copy:focus-visible{outline:2px solid rgba(104,87,255,.5);outline-offset:2px}.page-pet__bubble--visible{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.page-pet__minimize{position:absolute;z-index:2;right:-18px;top:12px;width:28px;height:28px;border:1px solid #ddd;border-radius:50%;background:#ddd;color:#666;font-weight:900;line-height:24px;cursor:pointer;pointer-events:auto}.page-pet--left .page-pet__minimize{right:-18px;left:auto}.page-pet__restore{display:none;position:absolute;right:0;bottom:0;width:54px;height:54px;border:0;border-radius:50%;background:#fff8e7;font-size:25px;box-shadow:0 5px 15px #362a2b33;cursor:pointer;pointer-events:auto}.page-pet--left .page-pet__restore{right:auto;left:0}.page-pet--minimized{width:54px;height:54px}.page-pet--minimized .page-pet__stage,.page-pet--minimized .page-pet__minimize,.page-pet--minimized .page-pet__bubble,.page-pet--minimized .page-pet__label{display:none}.page-pet--minimized .page-pet__restore{display:block}.page-pet__label{position:absolute;z-index:1;width:max-content;max-width:min(240px,calc(100vw - 180px));border:1px solid;line-height:1.4;pointer-events:auto;overflow-wrap:anywhere;box-sizing:border-box}.page-pet__label--left{right:calc(var(--pagepet-pet-width) + var(--pagepet-side-label-gap));left:auto;bottom:0;height:var(--pagepet-pet-height);display:flex;flex-direction:column;align-items:center;justify-content:var(--pagepet-label-align)}.page-pet__label--right{left:calc(100% + var(--pagepet-side-label-gap));right:auto;bottom:0;height:var(--pagepet-pet-height);display:flex;flex-direction:column;align-items:center;justify-content:var(--pagepet-label-align)}.page-pet__label--bottom{right:0;top:calc(100% + var(--pagepet-label-gap));width:var(--pagepet-pet-width);display:flex;align-items:center;justify-content:var(--pagepet-label-align)}.page-pet--left .page-pet__label--left{right:calc(100% + var(--pagepet-side-label-gap));left:auto;max-width:min(240px,calc(100vw - 180px))}.page-pet--left .page-pet__label--right{left:calc(var(--pagepet-pet-width) + var(--pagepet-side-label-gap));right:auto}.page-pet--left .page-pet__label--bottom{right:auto;left:0}.page-pet__button.is-wave .page-pet__image{animation:pagepet-wave .65s ease-in-out}.page-pet__button.is-jump .page-pet__image{animation:pagepet-jump .76s cubic-bezier(.2,.8,.3,1)}.page-pet__button.is-jump~.page-pet__shadow{animation:pagepet-shadow .76s ease-in-out}.page-pet__button.is-nod .page-pet__image{animation:pagepet-nod .62s ease-in-out}.page-pet__button.is-shake .page-pet__image{animation:pagepet-shake .7s ease-in-out}.page-pet__button.is-shy .page-pet__image{animation:pagepet-shy .78s cubic-bezier(.2,.8,.3,1)}@keyframes pagepet-wave{0%,to{transform:rotate(0)}25%{transform:rotate(-7deg) translateY(-3px)}55%{transform:rotate(7deg) translateY(-5px)}78%{transform:rotate(-4deg)}}@keyframes pagepet-jump{0%,to{transform:translateY(0)}12%{transform:translateY(3px) scaleY(.95)}44%{transform:translateY(-44px) rotate(-3deg)}70%{transform:translateY(0) scaleY(.94)}84%{transform:translateY(-7px)}}@keyframes pagepet-shadow{0%,to{transform:scaleX(1);opacity:1}44%{transform:scaleX(.55);opacity:.45}}@keyframes pagepet-nod{0%,to{transform:translateY(0) rotate(0)}30%{transform:translateY(7px) rotate(2deg)}55%{transform:translateY(-2px) rotate(-1deg)}}@keyframes pagepet-shake{0%,to{transform:rotate(0)}18%,55%{transform:rotate(-7deg)}36%,72%{transform:rotate(7deg)}86%{transform:rotate(-3deg)}}@keyframes pagepet-shy{0%,to{transform:translate(0) scale(1)}28%{transform:translate(-10px,5px) scale(.9) rotate(-5deg)}62%{transform:translate(-6px,3px) scale(.94) rotate(-3deg)}}.page-pet__button.is-bounce .page-pet__image{animation:pagepet-bounce .8s cubic-bezier(.2,.8,.3,1)}.page-pet__button.is-wiggle .page-pet__image{animation:pagepet-wiggle .65s ease-in-out}.page-pet__button.is-squash .page-pet__image{animation:pagepet-squash .72s ease-in-out}.page-pet__button.is-tilt .page-pet__image{animation:pagepet-tilt .82s ease-in-out}.page-pet__button.is-dance .page-pet__image{animation:pagepet-dance .95s ease-in-out}.page-pet__button.is-surprised .page-pet__image{animation:pagepet-surprised .72s ease-out}.page-pet__button.is-sleepy .page-pet__image{animation:pagepet-sleepy 1.15s ease-in-out}.page-pet__button.is-float .page-pet__image{animation:pagepet-float 1.2s ease-in-out}.page-pet__button.is-tremble .page-pet__image{animation:pagepet-tremble .55s linear}@keyframes pagepet-bounce{0%,to{transform:translateY(0) scale(1)}24%{transform:translateY(-26px) scale(.98,1.03)}45%{transform:translateY(0) scale(1.06,.92)}65%{transform:translateY(-11px) scale(.99,1.02)}82%{transform:translateY(0) scale(1.02,.97)}}@keyframes pagepet-wiggle{0%,to{transform:rotate(0)}15%{transform:rotate(-6deg)}30%{transform:rotate(6deg)}45%{transform:rotate(-5deg)}60%{transform:rotate(5deg)}75%{transform:rotate(-3deg)}90%{transform:rotate(2deg)}}@keyframes pagepet-squash{0%,to{transform:translateY(0) scale(1)}22%{transform:translateY(5px) scale(1.12,.82)}48%{transform:translateY(-14px) scale(.9,1.14)}72%{transform:translateY(1px) scale(1.05,.94)}86%{transform:translateY(-3px) scale(.98,1.03)}}@keyframes pagepet-tilt{0%,to{transform:rotate(0) translateY(0)}28%,62%{transform:rotate(-11deg) translateY(2px)}78%{transform:rotate(4deg) translateY(-1px)}}@keyframes pagepet-dance{0%,to{transform:translateX(0) rotate(0)}18%{transform:translateX(-11px) rotate(-7deg)}38%{transform:translateX(10px) rotate(7deg)}58%{transform:translateX(-8px) rotate(-5deg)}76%{transform:translateX(7px) rotate(4deg)}90%{transform:translateX(-2px) rotate(-2deg)}}@keyframes pagepet-surprised{0%,to{transform:translateY(0) scale(1)}24%{transform:translateY(-8px) scale(1.18)}48%{transform:translateY(1px) scale(.95)}70%{transform:translateY(-3px) scale(1.06)}86%{transform:scale(.99)}}@keyframes pagepet-sleepy{0%,to{transform:translateY(0) rotate(0)}28%{transform:translateY(4px) rotate(4deg) scale(.98)}58%{transform:translateY(2px) rotate(-3deg) scale(.97)}82%{transform:translateY(4px) rotate(2deg) scale(.98)}}@keyframes pagepet-float{0%,to{transform:translateY(0)}45%{transform:translateY(-18px) rotate(-2deg)}65%{transform:translateY(-15px) rotate(2deg)}}@keyframes pagepet-tremble{0%,to{transform:translate(0)}12%{transform:translate(-2px,1px)}25%{transform:translate(2px,-1px)}38%{transform:translate(-2px,-1px)}50%{transform:translate(2px,1px)}62%{transform:translate(-1px,1px)}75%{transform:translate(2px,-1px)}88%{transform:translate(-1px,-1px)}}@media(max-width:520px){.page-pet__label{max-width:calc(100vw - 170px)}}@media(prefers-reduced-motion:reduce){.page-pet__bubble{transition-duration:.01ms}.page-pet__button .page-pet__image,.page-pet__shadow{animation:none!important}}
