.cat, .cat .portrait {
  background-color: #5a4c8b;
}

.cat .portrait {
  background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAADCAIAAADUVFKvAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA1ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0iQjY4RDI4M0JCNUUyNTQ0N0VEODM1OEQxMzQ4MTg0RjIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RTE5RkM5OUFDMDAwMTFFN0I1MzZBQThGQ0Q1Q0IwMDkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RTE5RkM5OTlDMDAwMTFFN0I1MzZBQThGQ0Q1Q0IwMDkiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpEREQ0NzE2Qzg4NjZFNzExQTE2MjkwRjg1REY3RjAwMCIgc3RSZWY6ZG9jdW1lbnRJRD0iQjY4RDI4M0JCNUUyNTQ0N0VEODM1OEQxMzQ4MTg0RjIiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7ACro5AAAAPklEQVR42gAwAM//AhcHI9HDtKaXiBkKGR0OJwMpHzny+vEiC+3k4gjy8A0EJCIeChM2usbhDAkXFQ/aAgwAp8YRXYfhQagAAAAASUVORK5CYII=');
}

.cat.heroes .img {
  background-image: url("https://raw.githubusercontent.com/rafaelcastrocouto/dotacard/artwork/img/heroes/cat.jpg");
}

.cat-arrow .img {
  background-image: url("https://raw.githubusercontent.com/rafaelcastrocouto/dotacard/artwork/img/skills/cat/arrow.jpg");
}

.cat-leap .img, .buffs .buff.lina-leap .img {
  background-image: url("https://raw.githubusercontent.com/rafaelcastrocouto/dotacard/artwork/img/skills/cat/leap.jpg");
}

.cat-star .img {
  background-image: url("https://raw.githubusercontent.com/rafaelcastrocouto/dotacard/artwork/img/skills/cat/star.jpg");
}

.cat-ult .img, .buffs .buff.cat-ult .img {
  background-image: url("https://raw.githubusercontent.com/rafaelcastrocouto/dotacard/artwork/img/skills/cat/ult.jpg");
}

.map .fx.cat-star {
  transform: rotateX(-37deg) translate3d(60px,-740px,10px) scale(6);
  width: 96px;
  height: 256px;
  animation: cat-star-sprite 1.9s steps(23) 1;
  background-image: url('https://raw.githubusercontent.com/rafaelcastrocouto/dotacard/artwork/img/fx/cat/star.png');
}

@keyframes cat-star-sprite {
  100% {
    background-position: -2208px;
  }
}

.map .fx.cat-leap {
  transform: rotateX(-37deg) translate3d(80px,120px,120px) scale(4);
  width: 67px;
  height: 58px;
  animation: cat-leap-sprite 0.8s steps(6) 1;
  background-image: url('https://raw.githubusercontent.com/rafaelcastrocouto/dotacard/artwork/img/fx/cat/leap.png');
}

@keyframes cat-leap-sprite {
  100% {
    background-position: -402px;
  }
}

.map .fx.cat-leap-path {
  transform: translate3d(85px,340px,10px) scale(4);
  width: 28px;
  height: 157px;
  animation: cat-leap-path-sprite 0.8s steps(6) 1;
  background-image: url('https://raw.githubusercontent.com/rafaelcastrocouto/dotacard/artwork/img/fx/cat/leap-path.png');
}

@keyframes cat-leap-path-sprite {
  100% {
    background-position: -168px;
  }
}
.map .fx.cat-leap-path.r03 {
  transform: translate3d(85px,440px,10px) scale(4);
}
.map .fx.cat-leap-path.r-13 {
  transform: rotateZ(14deg) translate3d(90px,450px,10px) scale(4);
}
.map .fx.cat-leap-path.r13 {
  transform: rotateZ(-14deg) translate3d(80px,490px,10px) scale(4);
}
.map .fx.cat-leap-path.r-12 {
  transform: rotateZ(20deg) translate3d(100px,320px,10px) scale(4);
}
.map .fx.cat-leap-path.r12 {
  transform: rotateZ(-20deg) translate3d(50px,380px,10px) scale(4);
}
.map .fx.cat-leap-path.r-22 {
  transform: rotateZ(38deg) translate3d(90px,340px,10px) scale(3.5);
}
.map .fx.cat-leap-path.r22 {
  transform: rotateZ(-38deg) translate3d(50px,460px,10px) scale(3.5);
}
.map .fx.cat-leap-path.r-21, .map .fx.cat-leap-path.r-31 {
  transform: rotateZ(64deg) translate3d(30px,280px,10px) scale(3.5);
}
.map .fx.cat-leap-path.r21, .map .fx.cat-leap-path.r31 {
  transform: rotateZ(-64deg) translate3d(40px,420px,10px) scale(3.5);
}
.map .fx.cat-leap-path.r-20 {
  transform: rotateZ(90deg) translate3d(10px,140px,10px) scale(3.5);
}
.map .fx.cat-leap-path.r-30 {
  transform: rotateZ(90deg) translate3d(10px,280px,10px) scale(3.5);
}
.map .fx.cat-leap-path.r20 {
  transform: rotateZ(-90deg) translate3d(-10px,320px,10px) scale(3.5);
}
.map .fx.cat-leap-path.r30 {
  transform: rotateZ(-90deg) translate3d(-10px,440px,10px) scale(3.5);
}
.map .fx.cat-leap-path.r-2-1 {
  transform: rotateZ(125deg) translate3d(-50px,200px,10px) scale(3.5);
}
.map .fx.cat-leap-path.r-3-1 {
  transform: rotateZ(116deg) translate3d(-100px,320px,10px) scale(3.5);
}
.map .fx.cat-leap-path.r2-1 {
  transform: rotateZ(-116deg) translate3d(20px,470px,10px) scale(3.5);
}
.map .fx.cat-leap-path.r3-1 {
  transform: rotateZ(-116deg) translate3d(20px,470px,10px) scale(3.5);
}
.map .fx.cat-leap-path.r2-2 {
  transform: rotateZ(-144deg) translate3d(-50px,480px,10px) scale(3.5);
}
.map .fx.cat-leap-path.r-2-2 {
  transform: rotateZ(144deg) translate3d(-100px,360px,10px) scale(3.5);
}
.map .fx.cat-leap-path.r-1-2 {
  transform: rotateZ(160deg) translate3d(-100px,320px,10px) scale(4);
}
.map .fx.cat-leap-path.r-1-3 {
  transform: rotateZ(166deg) translate3d(-100px,500px,10px) scale(4);
}
.map .fx.cat-leap-path.r1-2 {
  transform: rotateZ(-160deg) translate3d(-80px,380px,10px) scale(4);
}
.map .fx.cat-leap-path.r1-3 {
  transform: rotateZ(-166deg) translate3d(-70px,540px,10px) scale(4);
}
.map .fx.cat-leap-path.r0-2 {
  transform: rotateZ(180deg) translate3d(-90px,320px,10px) scale(4);
}
.map .fx.cat-leap-path.r0-3 {
  transform: rotateZ(180deg) translate3d(-90px,500px,10px) scale(4);
}

.map .fx.cat-arrow {
  transform: translate3d(90px,500px,10px) scale(4);
  width: 30px;
  height: 243px;
  animation: cat-arrow-sprite 0.9s steps(7) 1;
  background-image: url('https://raw.githubusercontent.com/rafaelcastrocouto/dotacard/artwork/img/fx/cat/arrow.png');
}

@keyframes cat-arrow-sprite {
  100% {
    background-position: -210px;
  }
}

.map .fx.cat-arrow.r-40, .map .fx.cat-arrow.r-30, .map .fx.cat-arrow.r-20, .map .fx.cat-arrow.r-10 {
  transform: rotateZ(90deg) translate3d(-40px,360px,10px) scale(4);
}

.map .fx.cat-arrow.r40, .map .fx.cat-arrow.r30, .map .fx.cat-arrow.r20, .map .fx.cat-arrow.r10 {
  transform: rotateZ(-90deg) translate3d(40px,500px,10px) scale(4);
}

.map .fx.cat-arrow.r0-1, .map .fx.cat-arrow.r0-2, .map .fx.cat-arrow.r0-3, .map .fx.cat-arrow.r0-4 {
  transform: rotateZ(180deg) translate3d(-80px,440px,10px) scale(4);
}

.map .fx.cat-arrow-source {
  transform: translate3d(70px,100px,100px) scale(3.5);
  width: 62px;
  height: 73px;
  animation: cat-arrow-source-sprite 0.6s steps(6) 1;
  background-image: url('https://raw.githubusercontent.com/rafaelcastrocouto/dotacard/artwork/img/fx/cat/arrow-source.png');
}

@keyframes cat-arrow-source-sprite {
  100% {
    background-position: -372px;
  }
}

.map .fx.cat-arrow-source.r-40, .map .fx.cat-arrow-source.r-30, .map .fx.cat-arrow-source.r-20, .map .fx.cat-arrow-source.r-10, .map .fx.cat-arrow-source.r40, .map .fx.cat-arrow-source.r30, .map .fx.cat-arrow-source.r20, .map .fx.cat-arrow-source.r10 {
  width: 132px;
  height: 62px;
  animation: cat-arrow-source-sprite-horiz 0.6s steps(6) 1;
  background-image: url('https://raw.githubusercontent.com/rafaelcastrocouto/dotacard/artwork/img/fx/cat/arrow-source-horiz.png');
}

@keyframes cat-arrow-source-sprite-horiz {
  100% {
    background-position: -792px;
  }
}

.map .fx.cat-arrow-source.r-40, .map .fx.cat-arrow-source.r-30, .map .fx.cat-arrow-source.r-20, .map .fx.cat-arrow-source.r-10 {
  transform: translate3d(40px,80px,100px) scale(3);
}

.map .fx.cat-arrow-source.r40, .map .fx.cat-arrow-source.r30, .map .fx.cat-arrow-source.r20, .map .fx.cat-arrow-source.r10 {
  transform: scaleX(-1) translate3d(-40px,80px,100px) scale(3.5);
}

.map .fx.cat-arrow-source.r0-1, .map .fx.cat-arrow-source.r0-2, .map .fx.cat-arrow-source.r0-3, .map .fx.cat-arrow-source.r0-4 {
  transform: rotateZ(180deg) translate3d(-70px,-80px,100px) scale(3.5);
}

.map .fx.cat-arrow-impact {
  transform: translate3d(60px,-180px,10px) scale(3.5);
  width: 62px;
  height: 66px;
  animation: cat-arrow-impact-sprite 0.6s steps(5) 1;
  background-image: url('https://raw.githubusercontent.com/rafaelcastrocouto/dotacard/artwork/img/fx/cat/arrow-impact.png');
}

@keyframes cat-arrow-impact-sprite {
  100% {
    background-position: -350px;
  }
}

.map .fx.cat-arrow-impact.r-40, .map .fx.cat-arrow-impact.r-30, .map .fx.cat-arrow-impact.r-20, .map .fx.cat-arrow-impact.r-10 {
  transform: rotateZ(90deg) translate3d(-180px,-40px,10px) scale(3.5);
}

.map .fx.cat-arrow-impact.r40, .map .fx.cat-arrow-impact.r30, .map .fx.cat-arrow-impact.r20, .map .fx.cat-arrow-impact.r10 {
  transform: rotateZ(-90deg) translate3d(180px,100px,10px) scale(3.5);
}

.map .fx.cat-arrow-impact.r0-1, .map .fx.cat-arrow-impact.r0-2, .map .fx.cat-arrow-impact.r0-3, .map .fx.cat-arrow-impact.r0-4 {
  transform: rotateZ(180deg) translate3d(-70px,180px,10px) scale(3.5);
}

.map .fx.cat-ult {
  transform: translate3d(40px,-320px,70px) scale(4);
  width: 156px;
  height: 67px;
  animation: cat-ult-sprite 1.4s steps(18) 1;
  background-image: url('https://raw.githubusercontent.com/rafaelcastrocouto/dotacard/artwork/img/fx/cat/ult.png');
}

@keyframes cat-ult-sprite {
  60% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    background-position: -2808px;
  }
}

.ultfx .cat-ult {
  background-image: url("https://raw.githubusercontent.com/rafaelcastrocouto/dotacard/artwork/img/skills/cat/ult.jpg");
}
.projectile.cat {
  width: 8px;
  height: 60px;
  margin-left: 10px;
}