/* 登录注册页面样式 */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Inter', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* 表单输入框动画 */
.form-input {
    transition: all 0.3s ease;
    border: 2px solid #e5e7eb;
}

.form-input:focus {
    border-color: #165DFF;
    box-shadow: 0 0 0 3px rgba(22, 93, 255, 0.1);
    outline: none;
}

.form-input:hover {
    border-color: #9ca3af;
}

/* 按钮动画 */
button {
    transition: all 0.3s ease;
}

/* 错误状态 */
.error {
    border-color: #f53f3f !important;
}

.error:focus {
    box-shadow: 0 0 0 3px rgba(245, 63, 63, 0.1) !important;
}

/* 成功状态 */
.success {
    border-color: #00b42a !important;
}

/* 渐变文本 */
.gradient-text {
    background: linear-gradient(135deg, #165DFF 0%, #36CFC9 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* 弹窗动画 */
@keyframes modalEnter {
    from {
        opacity: 0;
        transform: scale(0.9) translateY(-20px);
    }
    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

.modal-enter {
    animation: modalEnter 0.3s ease-out forwards;
}

/* 加载动画 */
@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

.loading-spinner {
    animation: spin 1s linear infinite;
}

/* 响应式调整 */
@media (max-width: 640px) {
    .card-shadow {
        box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
    }
    
    .p-8 {
        padding: 1.5rem;
    }
}