.z-button {
    max-width: 460px;
    width: 222px;
    height: 64px;
    border-width: 2px;
    font-size: 20px;
    font-weight: bold;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-style: solid;
    border-color: #000;
    background-color: transparent;
    color: #000;
    margin: auto auto auto 0;
}

.z-button:hover {
    animation: z-banner-hover 0.3s ease forwards;
}

.z-button.center {
    margin: 0 auto;
}

.z-button.right {
    margin: auto 0 auto auto;
}

.z-button .z-button-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    border-left-style: solid;
    border-left-color: #000;
    width: 4.96rem;
    height: 3.04rem;
    border-left-width: 0.08rem;
}

.z-button .z-button-icon span {
    width: 0;
    height: 0;
    border-top: 0.48rem solid transparent;
    border-bottom: 0.48rem solid transparent;
    border-left: 0.96rem solid #000;
}

.z-button .z-button-text {
    flex-grow: 1;
    text-align: center;
    font-weight: 700;
}

/*  primary模式颜色 */
.z-button.primary {
    border-color: var(--z-page-primary-color);
    color: var(--z-page-primary-color);
    background-color: #fff;
}

.z-button.primary:hover {
    color: var(--z-page-primary-color-hover);
}

.z-button.primary .z-button-icon {
    border-left-color: var(--z-page-primary-color) !important;
}

.z-button.primary .z-button-icon span {
    border-left-color: var(--z-page-primary-color) !important;
}

/*  primary-bg-whit模式颜色 */
.z-button.primary-bg-white {
    background-color: var(--z-page-primary-color) !important;
    border-color: var(--z-page-primary-color) !important;
    color: white !important;
}

.z-button.primary-bg-white:hover {
    color: rgba(255, 255, 255, 0.6);
}

.z-button.primary-bg-white .z-button-icon {
    border-left-color: white !important;
}

.z-button.primary-bg-white .z-button-icon span {
    border-left-color: white !important;
}

/* yellow-bg背景色模式 */
.z-button.yellow-bg {
    background-color: var(--z-page-yellow-color);
    border-color: var(--z-page-yellow-color);
}

/* yellow-bg-primary背景色模式 */
.z-button.yellow-bg-primary {
    background-color: var(--z-page-yellow-color) !important;
    border-color: var(--z-page-primary-color) !important;
    color: var(--z-page-primary-color) !important;
}

.z-button.yellow-bg-primary .z-button-icon {
    border-left-color: var(--z-page-primary-color) !important;
}

.z-button.yellow-bg-primary .z-button-icon span {
    border-left-color: var(--z-page-primary-color) !important;
}

/* white-bg-primary背景色模式 */
.z-button.white-bg-primary {
    background-color: white !important;
    border-color: var(--z-page-primary-color) !important;
    color: var(--z-page-primary-color) !important;
}

.z-button.white-bg-primary .z-button-icon {
    border-left-color: var(--z-page-primary-color) !important;
}

.z-button.white-bg-primary .z-button-icon span {
    border-left-color: var(--z-page-primary-color) !important;
}

@media screen and (max-width: 768.5px) {
    .z-button {
        font-size: 0.32rem;
        height: 1.085rem;
        border-width: 0.04rem;
        max-width: 100vw;
        width: 92%;
    }

    .z-button, .z-button.center, .z-button.right {
        margin: 0 auto;
    }

    .z-button .z-button-icon {
        width: 1.2rem;
        height: 0.6rem;
        border-left-width: 0.02rem;
    }

    .z-button .z-button-icon span {
        border-top: 0.1rem solid transparent;
        border-bottom: 0.1rem solid transparent;
        border-left: 0.2rem solid #000;
    }

    .z-wrap .z-button {
        width: 100%;
    }
}
