.purse {
    height: 160px;
    width: 160px;
    position: relative;
    top: 0px;
    left: 0px;
    /* margin-top: -80px;
    margin-left: -80px; */
    perspective: 1000;
    filter: saturate(1.45) hue-rotate(2deg);
}

.coin {
    height: 160px;
    width: 160px;
    position: absolute;
    transform-style: preserve-3d;
    transform-origin: 50%;
    animation: spin 2s infinite;
    animation-timing-function: linear;
}

.coin .front,
.coin .back {
    position: absolute;
    height: 160px;
    width: 160px;
    border-radius: 50%;
    background-size: cover;
}

.coin .front {
    transform: translateZ(8px);
}

.coin .back {
    transform: translateZ(-8px) rotateY(180deg);
}

.coin .side {
    transform: translateX(72px);
    transform-style: preserve-3d;
    backface-visibility: hidden;
}

.coin .side .spoke {
    height: 160px;
    width: 16px;
    position: absolute;
    transform-style: preserve-3d;
    backface-visibility: hidden;
}

.coin .side .spoke:before,
.coin .side .spoke:after {
    content: '';
    display: block;
    height: 15.68274245px;
    width: 16px;
    position: absolute;
    transform: rotateX(84.375deg);
    background: hsl(42, 52%, 68%);
    background: linear-gradient(to bottom, hsl(42, 60%, 75%) 0%, hsl(42, 60%, 75%) 74%, hsl(42, 40%, 60%) 75%, hsl(42, 40%, 60%) 100%);
    background-size: 100% 3.48505388px;
}

.coin .side .spoke:before {
    transform-origin: top center;
}

.coin .side .spoke:after {
    bottom: 0;
    transform-origin: center bottom;
}

.coin .side .spoke:nth-child(16) {
    transform: rotateY(90deg) rotateX(180deg);
}

.coin .side .spoke:nth-child(15) {
    transform: rotateY(90deg) rotateX(168.75deg);
}

.coin .side .spoke:nth-child(14) {
    transform: rotateY(90deg) rotateX(157.5deg);
}

.coin .side .spoke:nth-child(13) {
    transform: rotateY(90deg) rotateX(146.25deg);
}

.coin .side .spoke:nth-child(12) {
    transform: rotateY(90deg) rotateX(135deg);
}

.coin .side .spoke:nth-child(11) {
    transform: rotateY(90deg) rotateX(123.75deg);
}

.coin .side .spoke:nth-child(10) {
    transform: rotateY(90deg) rotateX(112.5deg);
}

.coin .side .spoke:nth-child(9) {
    transform: rotateY(90deg) rotateX(101.25deg);
}

.coin .side .spoke:nth-child(8) {
    transform: rotateY(90deg) rotateX(90deg);
}

.coin .side .spoke:nth-child(7) {
    transform: rotateY(90deg) rotateX(78.75deg);
}

.coin .side .spoke:nth-child(6) {
    transform: rotateY(90deg) rotateX(67.5deg);
}

.coin .side .spoke:nth-child(5) {
    transform: rotateY(90deg) rotateX(56.25deg);
}

.coin .side .spoke:nth-child(4) {
    transform: rotateY(90deg) rotateX(45deg);
}

.coin .side .spoke:nth-child(3) {
    transform: rotateY(90deg) rotateX(33.75deg);
}

.coin .side .spoke:nth-child(2) {
    transform: rotateY(90deg) rotateX(22.5deg);
}

.coin .side .spoke:nth-child(1) {
    transform: rotateY(90deg) rotateX(11.25deg);
}

.coin.skeleton .front,
.coin.skeleton .back {
    display: none;
}

.coin.skeleton .side,
.coin.skeleton .side .spoke,
.coin.skeleton .side .spoke:before,
.coin.skeleton .side .spoke:after {
    backface-visibility: visible;
}

.coin.skeleton .side .spoke {
    background: rgba(170, 170, 170, 0.1);
}

.coin.skeleton .side .spoke:before {
    background: rgba(255, 170, 170, 0.2);
}

.coin.skeleton .side .spoke:after {
    background: rgba(204, 204, 255, 0.2);
}

@keyframes spin {
    from {
        transform: rotateY(0deg);
    }

    to {
        transform: rotateY(360deg);
    }
}

