* {
    margin: 0;
    padding: 0;
}

p,
div {
    cursor: default;
}

.hidden {
    opacity: 0 !important;
}

.none {
    display: none !important;
}

.bg {
    width: 100%;
    height: 100vh;
    overflow: hidden;
    position: relative;
}

.zone {
    display: flex;
    justify-content: space-evenly;
    align-items: center;
}

.top {
    height: 84%;
}

.bottom {
    height: 16%;
    align-items: start;
}

.box {
    background-color: rgba(255, 255, 255, 0.4);
    border-radius: 15px;
    box-shadow: -3px 3.5px 6px 0px rgba(0, 0, 0, 0.2);
    position: relative;
}

.cover {
    width: 25%;
    aspect-ratio: 1/1.2;
    top: 10px;
}

.mainBox {
    height: 95%;
    width: 41%;
    border-radius: 30px;
    left: 0.5%;
}

.listBox {
    width: 26%;
    height: 85%;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    align-items: center;
}

.colorChoose {
    width: 54%;
    height: 88%;
    margin: 0 auto;
}

.text {
    text-align: center;
    font-weight: 300;
    letter-spacing: 2px;
    color: rgba(0, 0, 0, 0.8);
}

.completeTime,
.watermark {
    position: absolute;
    bottom: 7%;
    text-align: center;
    color: white
}

.completeTime {
    left: 10%;
}

.watermark {
    right: 10%;
    bottom: 8%;
}

/* ==================== 手机端适配 (屏幕宽度小于768px) ==================== */
@media (max-width: 768px) {
    /* 1. 全局布局：将水平排列区域改为垂直堆叠 */
    .zone {
        flex-direction: column;
        justify-content: flex-start;
    }

    /* 2. 调整顶部和底部容器 */
    .top {
        height: auto;
        flex-grow: 1;
        width: 100%;
        flex-direction: column;
    }

    .bottom {
        flex-direction: row !important; /* 关键：底部改为水平布局 */
        justify-content: space-between;
        align-items: stretch;
        height: auto;
        width: 100%;
        padding: 10px 0;
        box-sizing: border-box;
    }

    /* 3. 主要盒子：居中并垂直排列 */
    .cover,
    .mainBox,
    .listBox,
    .colorChoose {
        width: 90% !important;
        max-width: 400px;
        margin: 10px auto !important;
        height: auto;
        left: 0;
        position: relative;
    }

    /* 4. 特定元素细节调整 */
    .cover {
        aspect-ratio: 1 / 1;
        margin-top: 20px;
        order: 1; /* 控制显示顺序 */
    }

    .mainBox {
        border-radius: 20px;
        order: 2;
        height: 50vh !important; /* 固定高度，用于歌词滚动 */
        min-height: 300px;
        overflow-y: auto; /* 启用垂直滚动 */
        -webkit-overflow-scrolling: touch;
    }

    .listBox {
        height: auto;
        min-height: 200px;
        margin-bottom: 20px;
        order: 3;
        width: 55% !important; /* 底部左侧宽度 */
        margin: 0 !important; /* 在.bottom中覆盖上边距 */
    }

    .colorChoose {
        order: 4;
        width: 40% !important; /* 底部右侧宽度 */
        margin: 0 !important;
        /* 其内部垂直排列规则在color.css中定义 */
    }

    /* 5. 修正绝对定位元素 */
    .completeTime,
    .watermark {
        position: relative;
        bottom: auto;
        left: auto;
        right: auto;
        width: 100%;
        text-align: center;
        margin: 5px 0;
        order: 5; /* 放在最下面 */
    }

    /* 6. 锁定底部元素，防止被歌词区域推走 */
    .bottom {
        position: sticky;
        bottom: 0;
        background-color: inherit;
        z-index: 10;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    /* 7. 滚动条美化 (可选) */
    .mainBox::-webkit-scrollbar {
        width: 4px;
    }

    .mainBox::-webkit-scrollbar-thumb {
        background-color: rgba(0, 0, 0, 0.2);
        border-radius: 2px;
    }

    .bg {
        overflow-y: auto;
        height: 100vh;
    }
}

@media screen and (max-width: 768px) {
    .zone.top {
        flex-direction: column;
        overflow-y: auto;
        height: calc(100vh - 100px);
    }

    .box.cover,
    .box.mainBox,
    .box.listBox {
        width: 100%;
        flex-shrink: 0;
    }
}
