body {
    margin: 0;
    padding: 0;
    background: #fff;
    overflow: hidden;
}
.boom-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 10;
}
.container {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 1.5vw 0;
    width: 100vw; /* 初始全屏，背景铺满 */
    display: none;
    /* 背景与线条同渐变+科技感边框，强呼应 */
    background: linear-gradient(135deg, rgba(240, 248, 255, 0.1), rgba(147, 112, 219, 0.05));
    border: 0.1vw solid rgba(173, 216, 230, 0.3); /* 线条同款边框 */
    animation: 
        containerFadeIn 0.5s ease-out forwards,
        showBlueBg 2s cubic-bezier(0.22, 1, 0.36, 1) forwards 1.8s,
        moveShrinkShorten 1.8s ease-in-out forwards 3.8s,
        bgGlow 2s ease-in-out infinite alternate; /* 同步线条发光 */
    z-index: 15;
    transform-origin: top left;
    transition: background 2s cubic-bezier(0.22, 1, 0.36, 1); /* 强化流畅感 */
}
/* 线条：白蓝→蓝紫渐变+科技感强化（间隔5vw已保留） */
.line {
    height: 1.2vw;
    /* 白蓝→蓝紫高对比渐变，过渡舒展 */
    background: linear-gradient(135deg, #8dafce, #87ceeb, #9370db, #9c27b0);
    background-size: 300% 300%;
    /* 科技感细节：细边框+内发光 */
    border: 0.1vw solid rgba(173, 216, 230, 0.8);
    box-shadow: 0 0 1vw rgba(147, 112, 219, 0.5), 0 0 0.5vw rgba(255, 255, 255, 0.6) inset;
    /* 缓慢流动动画，强化渐变+科技感 */
    animation: 
        gradientFlow 4s ease-in-out infinite,
        subtleGlow 2s ease-in-out infinite alternate;
    width: 100%;
}
.line-top {
    width: 0;
    animation: drawLeft 1.5s ease-out forwards;
    margin-bottom: 5vw; /* 已按你要求改为5vw，线条间隔拉大 */
}
.line-bottom {
    width: 0;
    margin-left: 100%;
    animation: drawRight 1.5s ease-out forwards;
}





.text {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    font-size: 2.8vw;
    color: #7a28a8;
    font-weight: 800;
    opacity: 0;
    animation: fadeIn 1.5s ease-out forwards 1.5s; /* 延长文字渐现，衔接自然 */
    margin: 0;
    white-space: nowrap;
}
/* 基础关键帧 */
@keyframes containerFadeIn { 0% { opacity: 0; } 100% { opacity: 1; } }
@keyframes drawLeft { from { width: 0; } to { width: 100%; } }
@keyframes drawRight { from { width: 0; margin-left: 100%; } to { width: 100%; margin-left: 0; } }
@keyframes fadeIn { 0% { opacity: 0; transform: translate(-50%, -55%); } 100% { opacity: 1; transform: translate(-50%, -50%); } }
/* 背景渐变：和线条完全同色系，从淡到深，强呼应 */
@keyframes showBlueBg {
    0% { background: linear-gradient(135deg, rgba(240, 248, 255, 0.1), rgba(147, 112, 219, 0.05)); }
    100% { background: linear-gradient(135deg, rgba(240, 248, 255, 0.4), rgba(147, 112, 219, 0.25)); }
}
/* 容器缩放动画：最终缩放0.5，整体醒目 */
@keyframes moveShrinkShorten {
    0% { 
        top: 50%; 
        left: 50%; 
        width: 100vw; 
        transform: translate(-50%, -50%) scale(1); 
    }
    100% { 
        top: 2vw; 
        left: 2vw; 
        width: 50vw; 
        transform: translate(0, 0) scale(0.5); 
    }
}
/* 线条渐变流动：自然循环，不突兀 */
@keyframes gradientFlow {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}
/* 线条科技感微光：明暗交替，模拟电子脉冲 */
@keyframes subtleGlow {
    0% { 
        box-shadow: 0 0 1vw rgba(147, 112, 219, 0.5), 0 0 0.5vw rgba(255, 255, 255, 0.6) inset;
        border-color: rgba(173, 216, 230, 0.8);
    }
    100% { 
        box-shadow: 0 0 1.5vw rgba(147, 112, 219, 0.7), 0 0 0.8vw rgba(255, 255, 255, 0.8) inset;
        border-color: rgba(255, 255, 255, 1);
    }
}
/* 背景科技感发光：和线条动画同步，整体统一 */
@keyframes bgGlow {
    0% { 
        border-color: rgba(173, 216, 230, 0.3);
        box-shadow: 0 0 1.5vw rgba(147, 112, 219, 0.1) inset;
    }
    100% { 
        border-color: rgba(173, 216, 230, 0.6);
        box-shadow: 0 0 2vw rgba(147, 112, 219, 0.2) inset;
    }
}
/* 全屏分割线：所有前置动画结束后触发 */
.fullscreen-divider {
    position: absolute;
    bottom: 95vh; 
    left: 0;
    width: 0; 
    height: 0.8vw;
    background: linear-gradient(90deg, #4299e1, #e8f4f8);
    border: 0.08vw solid rgba(100, 181, 246, 0.4);
    box-shadow: 0 0 0.6vw rgba(100, 181, 246, 0.2) inset;
    z-index: 12; 
    /* 延迟5.5秒，确保所有前置动画（粒子、线框、文字）完全结束后触发 */
    animation: drawLeft 1.1s ease-out forwards 11s; 
}

.image-container {
    position: fixed;
    top: 50%;
    left: 20%;
    width: 100vw;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 5; /* 确保在背景层但在线条容器下方 */
}

.image-container img {
    max-width: 50%;
    max-height: 50%;
    object-fit: contain;
    /* 添加淡入动画 */
    animation: fadeIn 1.5s ease-out forwards;
}
/* 手机端适配 */
@media (max-width: 767px) {
  
    .image-container {
        top:28%; /* 手机上略微向下调整 */
        left: 30%;
    }
}





.image-container {
    
    /* 保留原有所有样式 */
    transition: transform 0.5s ease-out; /* 新增过渡效果 */
    
}
/* 新增左移状态样式 */
.image-container.clicked {
    transform: translateX(-5vw) /* 左移20vw，垂直居中不变 */
}




.option-boxes {

    position: fixed;
    top: 50%;
    left: calc(20% + 50% + -45vw); /* 你的现有定位，保持不变 */
    transform: translateY(-50%) translateX(-2vw);
    display: flex;
    flex-direction: column;
    gap: 1.5vw;
    opacity: 0;
    visibility: hidden;
    transition: all 0.5s ease-out !important;
    z-index: 20 !important;
    /* 新增高级背景相关样式 */
    background: linear-gradient(135deg, rgba(112, 194, 219, 0.08), rgba(100, 149, 237, 0.05));
    backdrop-filter: blur(12px); /* 毛玻璃核心效果 */
    padding: 1.5vw;
    border-radius: 1.2vw;
    border: 0.1vw solid rgba(173, 216, 230, 0.4);
    box-shadow: 0 0 2vw rgba(112, 192, 219, 0.15) inset, 0 0 1vw rgba(100, 149, 237, 0.2);
}

/* 确保点击后样式生效 */
.image-container.clicked + .option-boxes {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(-50%) translateX(0) !important;
}





/* 新增单个选项框样式（高级背景+交互效果） */
.option-box {
    width: 18vw;
    padding: 1.2vw 1.5vw;
    /* 双层渐变背景，带纹理感 */
    background: 
        linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(240, 248, 255, 0.85)),
        radial-gradient(circle at 10% 20%, rgba(147, 112, 219, 0.1) 0%, transparent 60%);
    border: 0.15vw solid rgba(173, 216, 230, 0.6);
    border-radius: 0.8vw;
    /* 多层光影，增强质感 */
    box-shadow: 
        0 0.3vw 0.6vw rgba(112, 176, 219, 0.1),
        0 0 0.5vw rgba(255, 255, 255, 0.8) inset,
        0 0.1vw 0 rgba(255, 255, 255, 0.9);
    color: #2895a8;
    font-size: 1.8vw;
    font-weight: 600;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease; /* 顺滑过渡 */
}
.option-box1 {
    width: 18vw;
    padding: 1.2vw 1.5vw;
    /* 双层渐变背景，带纹理感 */
    background: 
        linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(240, 248, 255, 0.85)),
        radial-gradient(circle at 10% 20%, rgba(147, 112, 219, 0.1) 0%, transparent 60%);
    border: 0.15vw solid rgba(173, 216, 230, 0.6);
    border-radius: 0.8vw;
    /* 多层光影，增强质感 */
    box-shadow: 
        0 0.3vw 0.6vw rgba(112, 176, 219, 0.1),
        0 0 0.5vw rgba(255, 255, 255, 0.8) inset,
        0 0.1vw 0 rgba(255, 255, 255, 0.9);
    color: #2895a8;
    font-size: 1.8vw;
    font-weight: 600;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease; /* 顺滑过渡 */
}

.option-box2 {
    width: 18vw;
    padding: 1.2vw 1.5vw;
    /* 双层渐变背景，带纹理感 */
    background: 
        linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(240, 248, 255, 0.85)),
        radial-gradient(circle at 10% 20%, rgba(147, 112, 219, 0.1) 0%, transparent 60%);
    border: 0.15vw solid rgba(173, 216, 230, 0.6);
    border-radius: 0.8vw;
    /* 多层光影，增强质感 */
    box-shadow: 
        0 0.3vw 0.6vw rgba(147, 112, 219, 0.1),
        0 0 0.5vw rgba(255, 255, 255, 0.8) inset,
        0 0.1vw 0 rgba(255, 255, 255, 0.9);
    color: #ff0000;
    font-size: 1.8vw;
    font-weight: 600;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease; /* 顺滑过渡 */
}

.option-box2:hover {
    background: 
        linear-gradient(135deg, rgba(255, 255, 255, 1), rgba(240, 248, 255, 0.95)),
        radial-gradient(circle at 10% 20%, rgba(147, 112, 219, 0.15) 0%, transparent 60%);
    border-color: rgba(207, 38, 35, 0.8);
    box-shadow: 
        0 0.5vw 1vw rgba(174, 68, 23, 0.2),
        0 0 0.8vw rgba(255, 255, 255, 0.9) inset,
        0 0.1vw 0 rgba(255, 255, 255, 1);
    transform: translateY(-0.2vw); /* 轻微上浮，更有反馈 */
}


/* 选项框 hover 交互升级 */
.option-box:hover {
    background: 
        linear-gradient(135deg, rgba(255, 255, 255, 1), rgba(240, 248, 255, 0.95)),
        radial-gradient(circle at 10% 20%, rgba(112, 196, 219, 0.15) 0%, transparent 60%);
    border-color: rgba(10, 160, 205, 0.8);
    box-shadow: 
        0 0.5vw 1vw rgba(39, 162, 210, 0.2),
        0 0 0.8vw rgba(255, 255, 255, 0.9) inset,
        0 0.1vw 0 rgba(255, 255, 255, 1);
    transform: translateY(-0.2vw); /* 轻微上浮，更有反馈 */
}
.option-box1:hover {
    background: 
        linear-gradient(135deg, rgba(255, 255, 255, 1), rgba(240, 248, 255, 0.95)),
        radial-gradient(circle at 10% 20%, rgba(112, 196, 219, 0.15) 0%, transparent 60%);
    border-color: rgba(10, 160, 205, 0.8);
    box-shadow: 
        0 0.5vw 1vw rgba(39, 162, 210, 0.2),
        0 0 0.8vw rgba(255, 255, 255, 0.9) inset,
        0 0.1vw 0 rgba(255, 255, 255, 1);
    transform: translateY(-0.2vw); /* 轻微上浮，更有反馈 */
}

@media (max-width: 767px) {
    .option-boxes {
        /* 右移：调整 left 数值（原 -40vw 改为 -25vw，数值越大越靠右） */
        left: calc(20% + 50% + -21vw);
        /* 上移：top 从 50% 改为 40%，数值越小越靠上 */
        top: 30%;
        /* 放大容器：整体缩放 1.2 倍 */
        transform: translateY(-50%) translateX(-2vw) scale(1.2);
        /* 适配手机的内边距和间距 */
        padding: 2vw;
        gap: 2vw;
        /* 增强手机端毛玻璃效果 */
        backdrop-filter: blur(15px);
    }

    /* 手机端点击后样式：同步缩放和位置 */
    .image-container.clicked + .option-boxes {
        transform: translateY(-50%) translateX(0) scale(1.2) !important;
    }

    /* 单个选项框手机端放大：宽度和字体调整 */
    .option-box {
        width: 25vw; /* 比原 18vw 更宽 */
        padding: 1.8vw 2vw; /* 增大内边距 */
        font-size: 3vw; /* 放大字体 */
        border-radius: 1.5vw; /* 增大圆角，更适配手机 */
    }
    .option-box1 {
        width: 25vw; /* 比原 18vw 更宽 */
        padding: 1.8vw 2vw; /* 增大内边距 */
        font-size: 3vw; /* 放大字体 */
        border-radius: 1.5vw; /* 增大圆角，更适配手机 */
    }



     .option-box2 {
        width: 25vw; /* 比原 18vw 更宽 */
        padding: 1.8vw 2vw; /* 增大内边距 */
        font-size: 3vw; /* 放大字体 */
        border-radius: 1.5vw; /* 增大圆角，更适配手机 */
    }

    /* 手机端 hover 效果：取消上浮（避免误触），增强阴影 */
    .option-box1:hover {
        transform: translateY(0);
        box-shadow: 
            0 0.8vw 1.5vw rgba(25, 201, 232, 0.3),
            0 0 1vw rgba(255, 255, 255, 0.9) inset,
            0 0.2vw 0 rgba(255, 255, 255, 1);
    }

        .option-box:hover {
        transform: translateY(0);
        box-shadow: 
            0 0.8vw 1.5vw rgba(25, 201, 232, 0.3),
            0 0 1vw rgba(255, 255, 255, 0.9) inset,
            0 0.2vw 0 rgba(255, 255, 255, 1);
    }



    .option-box2:hover {
        transform: translateY(0);
        box-shadow: 
            0 0.8vw 1.5vw rgba(255, 0, 0, 0.3),
            0 0 1vw rgba(255, 255, 255, 0.9) inset,
            0 0.2vw 0 rgba(255, 255, 255, 1);
    }
}

   

.profile-table-container {

left: 45% !important; 
}



@media (max-width: 767px) {
  .profile-table-container {
    width: 85vw;
    padding: 3vw;
    /* 核心修改：将顶部定位从50%调整为40%，减少上移空间 */
    top: 25% !important; 
    transform: translate(-50%, -40%) !important; /* 对应调整偏移量 */
    max-height: 80vh; /* 限制最大高度，避免超出屏幕 */
    overflow-y: auto; /* 内容过长时可滚动 */
  }
  .profile-table {
    width: 100% !important;
  }
  .profile-table th {
    font-size: 3vw !important;
    padding: 2vw !important;
  }
  .profile-table td {
    font-size: 2.8vw !important;
    padding: 2vw !important;
  }
  .close-table {
    font-size: 2.8vw !important;
    padding: 1.5vw 2.5vw !important;
    margin-top: 2vw !important;
    width: 100%; /* 按钮占满宽度，方便点击 */
  }
}

@media (max-width: 767px) {
  .modal-content {
    width: 85vw !important;
    padding: 4vw !important;
  }
  .modal-content h3 {
    font-size: 4vw !important;
    margin-bottom: 3vw !important;
  }
  .password-input {
    font-size: 3.5vw !important;
    padding: 2vw !important;
    margin-bottom: 3vw !important;
  }
  .confirm-password, .cancel-password {
    font-size: 3.5vw !important;
    padding: 2vw !important;
  }
  .password-error {
    font-size: 2.8vw !important;
    margin-top: 2vw !important;
  }
  .close-image {
    font-size: 3.5vw !important;
    padding: 1.5vw 3vw !important;
    margin-top: 3vw !important;
  }
}

