@tailwind utilities;

/* 全局样式重置 */
body {
    overflow-x: hidden;
    margin: 0;
    padding: 0;
}

* {
    box-sizing: border-box;
}

.container {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
}

@layer utilities {
    .content-auto {
        content-visibility: auto;
    }
    .glassmorphism {
        background: rgba(255, 255, 255, 0.9);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
    }
    .gradient-text {
        background: linear-gradient(90deg, #165DFF 0%, #00A0FF 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        text-fill-color: transparent;
    }
    .card-shadow {
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
        transition: all 0.3s ease;
    }
    .card-shadow:hover {
        box-shadow: 0 20px 40px rgba(22, 93, 255, 0.15);
        transform: translateY(-5px);
    }
    .btn-primary {
        background-color: #165DFF;
        transition: all 0.3s ease;
    }
    .btn-primary:hover {
        background-color: #0D4EDD;
        transform: translateY(-2px);
    }
    .animate-fadeIn {
        animation: fadeIn 0.3s ease-in-out;
    }
    .animate-fadeOut {
        animation: fadeOut 0.3s ease-in-out;
    }
    .animate-slideUp {
        animation: slideUp 0.5s ease-out;
    }
    .animate-slideInLeft {
        animation: slideInLeft 0.5s ease-out;
    }
    .animate-slideInRight {
        animation: slideInRight 0.5s ease-out;
    }
    @keyframes fadeIn {
        from { opacity: 0; }
        to { opacity: 1; }
    }
    @keyframes fadeOut {
        from { opacity: 1; }
        to { opacity: 0; }
    }
    @keyframes slideUp {
        from { transform: translateY(20px); opacity: 0; }
        to { transform: translateY(0); opacity: 1; }
    }
    @keyframes slideInLeft {
        from { transform: translateX(-20px); opacity: 0; }
        to { transform: translateX(0); opacity: 1; }
    }
    @keyframes slideInRight {
        from { transform: translateX(20px); opacity: 0; }
        to { transform: translateX(0); opacity: 1; }
    }
}