/* 直接从原文件转换，内容保持不变 */

.text-shadow {
    text-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.glass {
    background: rgba(255, 255, 255, 0.25);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.18);
}

.card-hover {
    transition: all 0.3s ease;
}

.card-hover:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px -5px rgba(124, 58, 237, 0.4);
}

.image-hover {
    transition: all 0.5s ease;
    overflow: hidden;
}

.image-hover img {
    transition: all 0.5s ease;
}

.image-hover:hover img {
    transform: scale(1.05);
}

.gradient-bg {
    background: linear-gradient(135deg, #7C3AED 0%, #C084FC 100%);
}

.gradient-text {
    background-clip: text;
    -webkit-background-clip: text;
    color: transparent;
    background-image: linear-gradient(135deg, #7C3AED 0%, #3B82F6 100%);
}

.grid-layout {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
}

.grid-layout-2 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1.5rem;
}

.grid-layout-3 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
}