.kawaii-cat{--fur:#222;--fur-dark:#111;--skin:pink;--cat-size:72px;font-size:calc(var(--cat-size) / 80);width:80em;aspect-ratio:1;position:relative}.kawaii-cat *,.kawaii-cat :after,.kawaii-cat :before{position:absolute;box-sizing:border-box}.kawaii-cat .shadow{width:80%;height:5%;background:#0002;border-radius:50%/0 0 100% 100%;top:99%;left:50%;translate:-50%}.kawaii-cat .tail{width:50%;height:50%;border-radius:50%;border-bottom:7em solid #0000;border-right:7em solid #0000;border-top:7em solid #0000;border-top-color:var(--fur-dark);border-left:7em solid #0000;border-left-color:var(--fur-dark);clip-path:polygon(100% 0,100% 100%,0 30%,0 0);top:75%;left:52%;transform-origin:0 0;animation:kawaii-tail 2.8s ease-in-out infinite}.kawaii-cat .tail:before{content:"";width:7em;aspect-ratio:1;background:var(--fur-dark);border-radius:50%;left:81%;top:-9%}.kawaii-cat .body{left:50%;translate:-50%;bottom:0;width:35%;height:40%;background:radial-gradient(100% 80% at 50% 0,var(--fur-dark) 50%,#0000 0),var(--fur);border-radius:100%/200% 200% 20% 20%;transform-origin:50% 100%}.kawaii-cat .body .leg{width:165%;height:38%;background:var(--fur);bottom:0;left:50%;translate:-50%;border-radius:8em 8em 100% 100%/10em 10em 16em 16em;scale:1 -1}.kawaii-cat .body .paw{width:35%;height:49%;border:.75em solid #fff;border-top:0;border-radius:0 0 5em 5em;border-bottom:1em solid #fff;top:48%;rotate:-10deg;left:10%;clip-path:polygon(0 20%,100% 30%,100% 100%,0 100%)}.kawaii-cat .body .paw+.paw{right:7%;height:50%;left:auto;rotate:13deg;scale:-1 1;clip-path:polygon(0 25%,100% 15%,100% 100%,0 100%)}.kawaii-cat .ear{width:40%;aspect-ratio:1;border:4em solid var(--fur);border-radius:5% 90% 10% 80%;background:var(--skin);transform-origin:70% 90%;animation:kawaii-ear 7.3s ease-in-out 1.4s infinite}.kawaii-cat .ear+.ear{scale:-1 1;right:0;animation-duration:9.1s;animation-delay:3.2s}.kawaii-cat .head{width:80%;aspect-ratio:1.1;background:linear-gradient(#0003,#0000 50%),var(--fur);left:50%;translate:-50%;border-radius:100%/125% 125% 80% 75%;transform-origin:50% 90%;transition:transform .26s cubic-bezier(.34,1.56,.64,1)}.kawaii-cat .head .whisker{width:30%;height:30%;border-radius:50%;border-bottom:2em solid #0000;border-right:2em solid #0000;border-top:2em solid #0000;border-top-color:var(--fur);border-left:2em solid #0000;border-left-color:var(--fur);clip-path:polygon(100% 0,100% 100%,0 30%,0 0);animation:kawaii-whisker 5.3s ease-in-out infinite}.kawaii-cat .head .whisker:first-child{top:70%;translate:-65%}.kawaii-cat .head .whisker:nth-child(2){top:80%;translate:-40%;rotate:-20deg}.kawaii-cat .head .whisker:nth-child(3){right:0;top:70%;translate:65%;rotate:10deg}.kawaii-cat .head .whisker:nth-child(4){right:0;top:80%;translate:40%;rotate:24deg}.kawaii-cat .head .nose{width:10%;height:7%;background:var(--skin);border-radius:50%;left:50%;translate:-50% -50%;top:78%}.kawaii-cat .head .eye{--pos:25%;--x1:50%;--x2:42%;--dir:1;--gx:calc(var(--dir) * var(--look-x, 0) * 14%);--gy:calc(var(--look-y, 0) * 11%);width:35%;aspect-ratio:1;border-radius:50%;background:radial-gradient(50% 50% at calc(var(--x1) + var(--gx)) calc(47% + var(--gy)),#fff 25%,#0000 0),radial-gradient(50% 50% at calc(var(--x2) + var(--gx)) calc(65% + var(--gy)),#fff 12%,#0000 0),radial-gradient(circle at calc(60% + var(--gx)) calc(55% + var(--gy)),#000 35%,#0000 0),#fff;left:var(--pos);translate:-50% -50%;top:63%;animation:kawaii-blink 7.5s linear infinite;transition:transform .2s ease}.kawaii-cat .head .eye+.eye{--x1:70%;--x2:78%;--dir:-1;left:calc(100% - var(--pos));scale:-1 1}.kawaii-cat.is-sit .body{animation:kawaii-breathe 3.2s ease-in-out infinite}.kawaii-cat.is-walk{transform-origin:50% 100%;animation:kawaii-waddle .52s ease-in-out infinite}.kawaii-cat.is-walk .paw{animation:kawaii-step .52s ease-in-out infinite}.kawaii-cat.is-walk .paw+.paw{animation-delay:-.26s}.kawaii-cat.is-walk .tail{animation-duration:.9s}.kawaii-cat.is-held{transform-origin:50% 0;animation:kawaii-dangle 1.1s ease-in-out infinite}.kawaii-cat.is-held .body{transform:scaleY(1.16);transform-origin:50% 0}.kawaii-cat.is-held .eye{animation:none;transform:scale(1.15)}.kawaii-cat.is-held .tail{animation:none;transform:rotate(38deg)}.kawaii-cat.is-sleep .eye{animation:none;transform:scaleY(.08)}.kawaii-cat.is-sleep .head{transform:translateY(7%) rotate(-5deg)}.kawaii-cat.is-sleep .tail,.kawaii-cat.is-sleep .whisker{animation:none}.kawaii-cat.is-sleep .body{animation:kawaii-breathe 4.6s ease-in-out infinite}.kawaii-cat.is-looking:not(.is-sleep) .head{transform:rotate(8deg)}.kawaii-cat.is-looking:not(.is-sleep) .eye{transform:scale(1.12)}@keyframes kawaii-blink{0%,34%,37%,86%,88.5%,91%,to{transform:scaleY(1)}35.5%,87.2%,89.8%{transform:scaleY(.08)}}@keyframes kawaii-ear{0%,86%,to{transform:rotate(0deg)}89%{transform:rotate(-12deg)}92%{transform:rotate(5deg)}}@keyframes kawaii-tail{0%,to{transform:rotate(0deg)}50%{transform:rotate(14deg)}}@keyframes kawaii-whisker{0%,90%,to{transform:rotate(0deg)}94%{transform:rotate(-7deg)}}@keyframes kawaii-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.03,1.05)}}@keyframes kawaii-waddle{0%,to{transform:rotate(calc(var(--lean, 0deg) - 5deg)) translateY(0)}25%{transform:rotate(var(--lean,0deg)) translateY(-5%)}50%{transform:rotate(calc(var(--lean, 0deg) + 5deg)) translateY(0)}75%{transform:rotate(var(--lean,0deg)) translateY(-5%)}}@keyframes kawaii-step{0%,50%,to{transform:translateY(0)}25%{transform:translateY(-28%)}}@keyframes kawaii-dangle{0%,to{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}@keyframes kawaii-pounce{0%,to{transform:translateY(0) scale(1)}20%{transform:translateY(4%) scale(1.1,.88)}55%{transform:translateY(-30%) scale(.95,1.06)}}@keyframes kawaii-spin{0%{transform:rotate(0deg) scale(1)}30%{transform:translateY(-18%) rotate(180deg) scale(1.08)}60%{transform:translateY(-6%) rotate(1turn) scale(1.02)}to{transform:rotate(1turn) scale(1)}}.kawaii-pounce{animation:kawaii-pounce .48s cubic-bezier(.34,1.56,.64,1)}.kawaii-spin{animation:kawaii-spin .72s cubic-bezier(.34,1.4,.64,1)}@keyframes cat-float{0%{opacity:1;transform:translate(-50%) scale(.8)}to{opacity:0;transform:translate(calc(-50% + var(--hx, 0px)),-26px) scale(1.15)}}@keyframes cat-zzz{0%{opacity:0;transform:translate(0) scale(.7)}30%{opacity:1}to{opacity:0;transform:translate(6px,-14px) scale(1.2)}}@keyframes cat-bubble{0%{opacity:0;transform:translate(-50%,4px) scale(.85)}15%,80%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-4px) scale(1)}}@keyframes cat-card{0%{opacity:0;transform:translateY(8px) scale(.94)}to{opacity:1;transform:none}}@keyframes cat-dot{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}.cat-heart{animation:cat-float 1.1s ease-out both}.cat-zzz{animation:cat-zzz 2.2s ease-in-out infinite}.cat-bubble{animation:cat-bubble 1.8s ease-out both}.cat-card{transform-origin:85% 100%;animation:cat-card .3s cubic-bezier(.34,1.4,.64,1) both}.cat-dot{animation:cat-dot 1.25s ease-in-out infinite}.cat-layer{display:none}@media (min-width:768px){.cat-layer{display:block}}@media print{.cat-layer{display:none!important}}@media (prefers-reduced-motion:reduce){.cat-dot,.cat-heart,.cat-zzz,.kawaii-cat,.kawaii-cat *,.kawaii-pounce,.kawaii-spin{animation:none!important}}