html, body, #app {
    padding: 0;
    margin: 0;
}

#app {
    padding-bottom: 32vw;
    background-color: #FFE3EA;
}

* {
    position: relative;
}

img {
    display: block;
}

.top-img {
    display: flex;
    justify-content: center;
    align-items: center;
}

.top-img-item {
    width: 50vw;
    height: 50vw;
    background-size: cover;
}

.text-title {
    margin: 5.6vw auto;
    width: 63vw;
}

.text {
    color: #540026;
    font-size: 3.7vw;
    line-height: 5.3vw;
    width: 87vw;
    text-align: justify;
    margin: auto;
}

.download {
    width: 89vw;
    height: 13vw;
    border-radius: 6.5vw;
    background: linear-gradient(90deg, #FF6550, #FF6DAC);
    color: #FFF;
    font-size: 4.5vw;
    line-height: 13vw;
    text-align: center;
    font-weight: 500;
    margin: 5.3vw auto;
    cursor: pointer;
}

.fujin {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding-left: 5.3vw;
    color: #000;
    font-size: 6vw;
    line-height: 8.3vw;
    font-weight: 500;
}

.fujin img {
    width: 3.7vw;
    margin-right: 1.3vw;
}

.fujin-list {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 1.4vw;
}

.fujin-item {
    width: 43.3vw;
    height: 58.7vw;
    background-size: cover;
    margin: 1.4vw;
    border-radius: 5.3vw;
    overflow: hidden;
}

.label {
    position: absolute;
    left: 1.3vw;
    top: 1.3vw;
    z-index: 20;
    border-radius: 3.6vw 0.8vw 3.6vw 0.8vw;
    color: #FFF;
    font-size: 3.7vw;
    line-height: 6.4vw;
    padding: 0 2vw;
}

.label1 {
    background: linear-gradient(90deg, #CA55FF, #FF4489);
}

.label2 {
    background: linear-gradient(90deg, #FF55CF, #FFA544);
}

.label3 {
    background: linear-gradient(90deg, #FF70A0, #FF4444);
}

.label4 {
    background: linear-gradient(90deg, #736BFF, #E658FF);
}

.online {
    position: absolute;
    right: 1.3vw;
    top: 2.1vw;
    background-color: rgba(0, 0, 0, 0.6);
    border-radius: 2.4vw;
    padding: 0 2vw 0 3.7vw;
    color: #2FFF24;
    font-size: 3.2vw;
    line-height: 4.8vw;
}

.online::after {
    content: '';
    position: absolute;
    left: 1.3vw;
    width: 1.3vw;
    height: 1.3vw;
    border-radius: 50%;
    background-color: #2FFF24;
    top: 50%;
    transform: translateY(-50%);
}

.shadow {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 4.5vw 4vw 2.7vw 2.7vw;
    background-image: url('./imgs/shadow.png');
    background-size: 100% 100%;
    color: #FFF;
    font-size: 3.7vw;
    line-height: 5.3vw;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.shadow img {
    width: 6.4vw;
}

.img44 {
    width: 100vw;
}

.btn {
    position: fixed;
    bottom: 26.7vw;
    left: 50%;
    transform: translateX(-50%);
    z-index: 50;
    width: 58.7vw;
}

.bottom {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 2.7vw 3.5vw 6vw;
    background-color: rgba(0, 0, 0, 0.6);
    display: flex;
    justify-content: flex-start;
    align-items: center;
    z-index: 50;
    box-sizing: border-box;
    width: 100vw;
}

.icon {
    width: 10.7vw;
    margin-right: 2vw;
}

.tip {
    width: 81vw;
    color: #FFF;
    font-size: 3.7vw;
    line-height: 5.3vw;
}

a {
    color: #FFF;
}