/* 2. loading.css - 加载动画样式 */
#loading {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(180deg, #6f5e9d 0%, #181d3b 100%) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 99999 !important;
    transition: opacity 0.5s ease;
    will-change: opacity;
}


.loading-container {
    position: relative;
    width: 300px;
    height: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
    will-change: transform;
}

/* 中央主图片 */
.center-image {
    position: absolute;
    z-index: 10;
    width: 200px;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 辅助圆 - 作为周围图片定位的标准线 */
.auxiliary-circle {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 300px;
    height: 300px;
    border: 2px dashed rgba(0, 123, 255, 0.4);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    z-index: 5;
    pointer-events: none;
    box-shadow: 0 0 10px rgba(0, 123, 255, 0.2);
}

.center-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    animation: centerPulse 2s ease-in-out infinite;
    will-change: transform, opacity;
}

@keyframes centerPulse {

    0%,
    100% {
        transform: scale(1);
        opacity: 1;
    }

    50% {
        transform: scale(1.05);
        opacity: 0.8;
    }
}

/* 周围图片容器 */
.surrounding-images {
    position: absolute;
    width: 100%;
    height: 100%;
    animation: rotateAround 6s linear infinite;
    transform-origin: center;
    will-change: transform;
}

/* 旋转动画 */
@keyframes rotateAround {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/* 单个周围图片 */
.surrounding-image {
    position: absolute;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    /* 反向旋转动画，抵消容器的旋转 */
    animation: counterRotate 6s linear infinite;
    will-change: transform;
}

@keyframes counterRotate {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(-360deg);
    }
}

.surrounding-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    position: absolute;
    transition: opacity 0.3s ease;
    will-change: opacity;
}

/* 暗色图片默认显示 */
.dark-image {
    opacity: 1;
}

/* 亮色图片默认隐藏 */
.bright-image {
    opacity: 0;
}

/* 点亮状态：暗色图片隐藏，亮色图片显示 */
.surrounding-image.active .dark-image {
    opacity: 0;
}

.surrounding-image.active .bright-image {
    opacity: 1;
}

/* 周围图片的位置 - 按圆形均匀排列 */

.surrounding-image:nth-child(1) {
    top: -10%;
    left: 42%;
    transform: translate(-50%, -50%) translateY(-120px);
}

.surrounding-image:nth-child(2) {
    top: 6%;
    left: 78%;
    transform: translate(-50%, -50%) translate(85px, -85px);
}

.surrounding-image:nth-child(3) {
    top: 40%;
    left: 90%;
    transform: translate(-50%, -50%) translate(120px, 0px);
}

.surrounding-image:nth-child(4) {
    top: 75%;
    left: 78%;
    transform: translate(-50%, -50%) translate(85px, 85px);
}

.surrounding-image:nth-child(5) {
    top: 90%;
    left: 42%;
    transform: translate(-50%, -50%) translateY(120px);
}

.surrounding-image:nth-child(6) {
    top: 75%;
    left: 5%;
    transform: translate(-50%, -50%) translate(-85px, 85px);
}

.surrounding-image:nth-child(7) {
    top: 40%;
    left: -10%;
    transform: translate(-50%, -50%) translate(-120px, 0px);
}

.surrounding-image:nth-child(8) {
    top: 6%;
    left: 4%;
    transform: translate(-50%, -50%) translate(-85px, -85px);
}

#loading.hidden {
    opacity: 0 !important;
    pointer-events: none !important;
    z-index: 99999 !important;
}

/* 淡出动画 */
@keyframes fadeOut {
    0% {
        opacity: 1;
        transform: scale(1);
    }

    100% {
        opacity: 0;
    }
}