.blc-companion{left:var(--blc-pad);right:var(--blc-pad);bottom:calc(var(--blc-inset,0px) + max(4px, env(safe-area-inset-bottom,0px)));height:var(--blc-size);z-index:30;pointer-events:none;opacity:.82;overflow-clip-margin:24px;contain:layout style;--blc-pad:clamp(10px, 3vw, 44px);--blc-size:clamp(58px, 5.4vw, 86px);--blc-ease:cubic-bezier(.22, 1, .36, 1);--bl-sp:0;--bl-dir:1;--bl-mx:0;--bl-my:0;position:fixed;overflow:clip}.blc-svg{left:calc(var(--bl-sp) * (100% - var(--blc-size)));width:var(--blc-size);transform-origin:50% 100%;height:auto;transform:scaleX(var(--bl-dir));display:block;position:absolute;bottom:0}.blc-shadow{fill:color-mix(in srgb, var(--text-primary) 22%, transparent);opacity:.55}.blc-dogSvg{filter:drop-shadow(0 6px 12px color-mix(in srgb, var(--brand) 20%, transparent))}.blc-dogBody{fill:color-mix(in srgb, var(--brand) 72%, var(--bg-card))}.blc-dogEar{fill:color-mix(in srgb, var(--brand) 45%, var(--bg-primary))}.blc-dogNose,.blc-dogEye{fill:var(--bg-primary)}.blc-dogCollar{fill:color-mix(in srgb, var(--text-primary) 60%, var(--brand))}.blc-dogTag{fill:var(--brand)}.blc-dogTail{stroke:color-mix(in srgb, var(--brand) 72%, var(--bg-card));stroke-width:8px;stroke-linecap:round;transform-origin:12px 38px;animation:1.6s ease-in-out infinite blc-tailWag}.blc-companion.is-walking .blc-dogTail{animation-duration:.45s}.blc-dogLeg{fill:color-mix(in srgb, var(--brand) 60%, var(--bg-primary));transform-origin:50% 62px;animation:.4s ease-in-out infinite paused blc-trot}.blc-catSvg{filter:drop-shadow(0 4px 12px color-mix(in srgb, var(--brand) 22%, transparent))}.blc-catBody{fill:color-mix(in srgb, var(--text-primary) 16%, var(--bg-card));stroke:color-mix(in srgb, var(--text-primary) 30%, transparent);stroke-width:2px}.blc-catEarIn{fill:color-mix(in srgb, var(--brand) 55%, var(--bg-card))}.blc-catEyeball{fill:color-mix(in srgb, var(--brand) 85%, var(--text-primary))}.blc-catPupil{fill:var(--bg-primary);transform:translate(calc(var(--bl-mx) * 3.5px), calc(var(--bl-my) * 2.5px))}.blc-catLid{fill:color-mix(in srgb, var(--text-primary) 16%, var(--bg-card));transform-origin:50% 41px;animation:blc-blink 6.5s var(--blc-ease) infinite;transform:scaleY(0)}.blc-catNose{fill:color-mix(in srgb, var(--brand) 80%, var(--text-primary))}.blc-catWhisk{stroke:color-mix(in srgb, var(--text-primary) 40%, transparent);stroke-width:1.6px;stroke-linecap:round}.blc-catTail{stroke:color-mix(in srgb, var(--text-primary) 16%, var(--bg-card));stroke-width:9px;stroke-linecap:round;transform-origin:18px 96px;animation:3.4s ease-in-out infinite blc-swish}.blc-catLeg{fill:color-mix(in srgb, var(--text-primary) 16%, var(--bg-card));transform-origin:50% 102px;animation:.45s ease-in-out infinite paused blc-trot}.blc-leg--2,.blc-leg--3{animation-delay:-.2s}.blc-companion.is-walking .blc-dogLeg,.blc-companion.is-walking .blc-catLeg{animation-play-state:running}.blc-dogSvg{animation:2.6s ease-in-out infinite blc-breathe}.blc-companion.is-walking .blc-dogSvg,.blc-companion.is-walking .blc-catSvg{animation:.4s ease-in-out infinite blc-bob}@keyframes blc-breathe{0%,to{translate:0}50%{translate:0 -2px}}@keyframes blc-bob{0%,to{translate:0}50%{translate:0 -4px}}@keyframes blc-trot{0%,to{transform:rotate(14deg)}50%{transform:rotate(-14deg)}}@keyframes blc-tailWag{0%,to{transform:rotate(0)}50%{transform:rotate(18deg)}}@keyframes blc-swish{0%,to{transform:rotate(0)}50%{transform:rotate(-14deg)}}@keyframes blc-blink{0%,94%,to{transform:scaleY(0)}96%,98%{transform:scaleY(1)}}@media (hover:none){.blc-catPupil{animation:7s ease-in-out infinite blc-lookAround}@keyframes blc-lookAround{0%,to{transform:translate(0)}20%{transform:translate(-3px,1px)}45%{transform:translate(3px,-1px)}70%{transform:translate(1px,2px)}}}@media (max-width:768px){.blc-companion{--blc-pad:10px;--blc-size:40px;opacity:.72}}@media (prefers-reduced-motion:reduce){.blc-svg,.blc-dogSvg,.blc-catSvg,.blc-dogTail,.blc-dogLeg,.blc-catTail,.blc-catLid,.blc-catLeg,.blc-catPupil{animation:none!important}.blc-catPupil{transform:none}}@media (max-width:768px){:root:has(.bd-ab.is-shown) .blc-companion{--blc-inset:72px}}
