@import "tailwindcss"; :root { --primary-50: #f5f7ff; --primary-100: #eef1ff; --primary-200: #dee4ff; --primary-300: #c3ceff; --primary-400: #a1abff; --primary-500: #7f88ff; --primary-600: #645eff; --primary-700: #4f47e9; --primary-800: #423cc4; --primary-900: #39369e; --secondary-50: #f0fdfa; --secondary-100: #cffaf0; --secondary-200: #9af4e3; --secondary-300: #5de8d4; --secondary-400: #2bd4c0; --secondary-500: #0fb8a9; --secondary-600: #07938c; --secondary-700: #0b746f; --secondary-800: #0f5c59; --secondary-900: #114c4a; --accent-500: #ff7b54; } .bg-primary-50 { background-color: var(--primary-50); } .bg-primary-100 { background-color: var(--primary-100); } .bg-primary-500 { background-color: var(--primary-500); } .bg-primary-600 { background-color: var(--primary-600); } .bg-primary-700 { background-color: var(--primary-700); } .bg-gradient-to-r { background-image: linear-gradient(to right, var(--tw-gradient-stops)); } .from-primary-500 { --tw-gradient-from: var(--primary-500); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); } .to-primary-700 { --tw-gradient-to: var(--primary-700); } .from-secondary-500 { --tw-gradient-from: var(--secondary-500); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); } .to-secondary-700 { --tw-gradient-to: var(--secondary-700); } .text-primary-500 { color: var(--primary-500); } .text-primary-600 { color: var(--primary-600); } .bg-secondary-500 { background-color: var(--secondary-500); } .text-white { color: #fff; } .text-gray-800 { color: #1f2937; } .text-gray-700 { color: #374151; } .text-gray-600 { color: #4b5563; } .text-gray-500 { color: #6b7280; } .text-gray-400 { color: #9ca3af; } .bg-white { background-color: #fff; } .bg-gray-50 { background-color: #f9fafb; } .bg-gray-100 { background-color: #f3f4f6; } .bg-red-50 { background-color: #fef2f2; } .text-red-500 { color: #ef4444; } .bg-green-50 { background-color: #f0fdf4; } .text-green-600 { color: #16a34a; } .text-amber-600 { color: #d97706; } .shadow-soft { box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08); } .shadow-soft-lg { box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12); } /* 按钮悬停效果 */ button, .btn { transition: all 0.3s ease; cursor: pointer; } button:hover, .btn:hover { transform: translateY(-2px); box-shadow: 0 4px 8px rgba(0,0,0,0.1); } button:active, .btn:active { transform: translateY(1px); } /* 表单焦点样式 */ input:focus, textarea:focus { border-color: var(--primary-500); box-shadow: 0 0 0 3px rgba(100, 94, 255, 0.1); } /* 错误状态 */ .error { border-color: #ef4444; }