.jukdol-pet-companion{position:fixed;left:16px;top:calc(100vh - 182px);z-index:90000;width:142px;height:168px;pointer-events:none;font-family:Pretendard,"Noto Sans KR",system-ui,sans-serif;isolation:isolate;transition-property:left,top;transition-duration:2.8s;transition-timing-function:linear;--pet-face:1}
.jukdol-pet-companion *{box-sizing:border-box}
.jukdol-pet-link{position:absolute;left:0;bottom:0;width:112px;height:132px;display:block;pointer-events:auto;text-decoration:none;border:0;border-radius:36px 36px 28px 28px;filter:drop-shadow(0 10px 9px rgba(25,38,70,.2));transition:transform .18s ease}
.jukdol-pet-link:hover,.jukdol-pet-link:focus-visible{transform:translateY(-5px) scale(1.035);outline:3px solid rgba(105,76,255,.34);outline-offset:2px}
.jukdol-pet-sprite{position:absolute;left:4px;bottom:3px;width:108px;height:108px;overflow:hidden;background-repeat:no-repeat;background-size:400% 400%;background-position:0 0;animation:jukdolPetBob 2.5s ease-in-out infinite;transform-origin:50% 100%}
.jukdol-pet-sprite img{position:absolute;width:100%;height:100%;max-width:none;left:0;top:0;object-fit:contain;user-select:none;-webkit-user-drag:none;pointer-events:none}
.jukdol-pet-shadow{position:absolute;left:21px;bottom:5px;width:78px;height:18px;border-radius:50%;background:rgba(38,39,55,.18);filter:blur(4px)}
.jukdol-pet-speech{position:absolute;left:4px;bottom:132px;min-width:94px;max-width:164px;padding:8px 11px;border:1px solid rgba(90,79,130,.14);border-radius:15px 15px 15px 4px;background:rgba(255,255,255,.96);box-shadow:0 8px 20px rgba(48,44,80,.13);color:#40385f;font-size:12px;font-weight:900;line-height:1.2;white-space:nowrap;text-align:center;opacity:0;transform:translateY(6px);transition:.2s;pointer-events:none}
.jukdol-pet-speech.show{opacity:1;transform:translateY(0)}
.jukdol-pet-bank{position:absolute;right:0;bottom:13px;min-width:63px;height:31px;padding:0 9px;display:flex;align-items:center;justify-content:center;gap:4px;border:2px solid #fff;border-radius:999px;background:linear-gradient(135deg,#fff7c5,#ffc844);box-shadow:0 7px 18px rgba(137,88,4,.22);color:#6b4900;font-size:12px;font-weight:1000;pointer-events:none;transition:transform .2s}
.jukdol-pet-bank.bump{animation:jukdolBankBump .45s ease}
.jukdol-pet-coin-layer{position:fixed;inset:0;pointer-events:none;z-index:90001}
.jukdol-flying-coin{position:fixed;left:var(--start-x);top:var(--start-y);font-size:21px;filter:drop-shadow(0 3px 3px rgba(112,68,0,.2));animation:jukdolCoinFly .85s cubic-bezier(.23,.75,.25,1) var(--delay) forwards}
@keyframes jukdolPetBob{0%,100%{transform:translateY(0) rotate(-1deg) scaleX(var(--pet-face,1))}50%{transform:translateY(-5px) rotate(1deg) scaleX(var(--pet-face,1))}}
@keyframes jukdolBankBump{0%,100%{transform:scale(1)}40%{transform:scale(1.22) rotate(-4deg)}}
@keyframes jukdolCoinFly{0%{opacity:0;transform:translate(0,12px) scale(.65) rotate(0)}20%{opacity:1;transform:translate(var(--arc-x),-45px) scale(1.15) rotate(140deg)}100%{opacity:0;transform:translate(var(--end-x),var(--end-y)) scale(.55) rotate(520deg)}}
body[data-page-kind="hub"] .home-game-tabs{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.pet-home-link{display:flex!important;text-decoration:none!important;color:inherit;cursor:pointer}
.pet-home-link .tab-state{background:#fff0c4!important;color:#875c00!important}
.pet-home-link:hover{background:rgba(111,82,255,.08)}
@media(max-width:700px){.jukdol-pet-companion{left:8px;top:calc(100vh - 150px);width:116px;height:138px;transition-duration:2.35s}.jukdol-pet-link{width:90px;height:106px}.jukdol-pet-sprite{width:88px;height:88px;left:1px}.jukdol-pet-shadow{left:14px;width:64px}.jukdol-pet-speech{bottom:105px;left:2px;font-size:11px;padding:7px 9px}.jukdol-pet-bank{right:0;bottom:8px;height:27px;min-width:57px;padding:0 7px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.jukdol-pet-sprite{animation:none}.jukdol-flying-coin{animation-duration:.01ms}}

/* v20260901_1620: companion actually walks between positions */
.jukdol-pet-companion.is-walking .jukdol-pet-sprite{animation:none;transform:scaleX(var(--pet-face,1))}
.jukdol-pet-companion.is-walking .jukdol-pet-shadow{transform:scaleX(1.08);opacity:.82}

/* v20260901_1620: reward chip only; never show total wallet beside pet */
.jukdol-pet-bank{opacity:0;visibility:hidden;transform:translateY(6px) scale(.88);transition:opacity .18s ease,transform .18s ease,visibility 0s linear .2s}
.jukdol-pet-bank.show{opacity:1;visibility:visible;transform:translateY(0) scale(1);transition:opacity .18s ease,transform .18s ease,visibility 0s}
.jukdol-pet-bank.show.bump{animation:jukdolRewardChipBump .45s ease}
@keyframes jukdolRewardChipBump{0%{transform:translateY(0) scale(.9)}45%{transform:translateY(-4px) scale(1.18) rotate(-3deg)}100%{transform:translateY(0) scale(1)}}

/* v20260902_1435: tap = pet, rapid double tap = pet menu */
.jukdol-pet-link{appearance:none;-webkit-appearance:none;padding:0;background:transparent;color:inherit;cursor:pointer}
.jukdol-pet-companion.is-petted .jukdol-pet-sprite{animation:jukdolPetLoved .55s ease}
@keyframes jukdolPetLoved{0%,100%{transform:translateY(0) scaleX(var(--pet-face,1)) scale(1)}35%{transform:translateY(-9px) scaleX(var(--pet-face,1)) scale(1.09)}68%{transform:translateY(-3px) scaleX(var(--pet-face,1)) scale(.98)}}
.jukdol-pet-heart{position:fixed;z-index:2147482500;color:#ff5f8f;font-style:normal;font-size:20px;font-weight:1000;pointer-events:none;text-shadow:0 2px 5px rgba(255,255,255,.8);animation:jukdolPetHeart .95s ease-out var(--heart-delay,0s) forwards}
@keyframes jukdolPetHeart{0%{opacity:0;transform:translate(0,8px) scale(.7)}18%{opacity:1}100%{opacity:0;transform:translate(var(--heart-x,0),-72px) scale(1.2)}}
.jukdol-pet-quick-menu{position:fixed;z-index:2147482600;width:188px;padding:7px;border:1px solid rgba(58,67,102,.14);border-radius:16px;background:rgba(255,255,255,.98);box-shadow:0 16px 38px rgba(31,42,77,.22);font-family:Pretendard,"Noto Sans KR",system-ui,sans-serif;backdrop-filter:blur(10px)}
.jukdol-pet-quick-menu button{width:100%;min-height:44px;padding:10px 12px;border:0;border-radius:11px;background:transparent;color:#283149;font-size:13px;font-weight:900;text-align:left;cursor:pointer}
.jukdol-pet-quick-menu button:hover,.jukdol-pet-quick-menu button:focus-visible{background:#f1efff;outline:none;color:#503bc1}
.jukdol-pet-quick-menu button+button{margin-top:3px;color:#6b6174}
@media(max-width:700px){.jukdol-pet-quick-menu{width:178px}.jukdol-pet-quick-menu button{font-size:12px}}
@media(prefers-reduced-motion:reduce){.jukdol-pet-companion.is-petted .jukdol-pet-sprite,.jukdol-pet-heart{animation-duration:.01ms}}
