@charset "utf-8";
/* 基础样式 */
        body {
            font-family: system-ui, -apple-system, sans-serif;
            line-height: 1.5;
            margin: 0;
            padding: 0;
            background-color: #f9fafb;
            color: #374151;}
        
        .container {
            max-width: 1280px;
            margin-left: auto;
            margin-right: auto;
            padding-left: 1rem;
            padding-right: 1rem;}
        
        /* 颜色定义 */
        .bg-primary {
            background-color: #0D47A1;}
        
        .text-primary {
            color: #0D47A1;}
        
        .bg-accent {
            background-color: #2196F3;}
        
        .text-accent {
            color: #2196F3;}
        
        .bg-light {
            background-color: #E3F2FD;}
        
        .bg-gray-50 {
            background-color: #f9fafb;}
        
        .text-white {
            color: white;}
        
        .text-gray-600 {
            color: #6b7280;}
        
        .text-gray-700 {
            color: #4b5563;}
        
        .text-gray-800 {
            color: #1f2937;}
        
        .text-gray-500 {
            color: #9ca3af;}
        
        .bg-green-100 {
            background-color: #dcfce7;}
        
        .text-green-600 {
            color: #16a34a;}
        
        .bg-yellow-100 {
            background-color: #fef3c7;}
        
        .text-yellow-600 {
            color: #d97706;}
        
        /* 工具类 */
        .rounded-lg {
            border-radius: 0.5rem;}
        
        .shadow-lg {
            box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);}
        
        .shadow-custom {
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);}
        
        .p-4 {
            padding: 1rem;}
        
        .p-6 {
            padding: 1.5rem;}
        
        .mb-4 {
            margin-bottom: 1rem;}
        
        .mb-6 {
            margin-bottom: 1.5rem;}
        
        .text-lg {
            font-size: 1.125rem;}
        
        .text-xl {
            font-size: 1.25rem;}
        
        .text-2xl {
            font-size: 1.5rem;}
        
        .font-bold {
            font-weight: 700;}
        
        .font-semibold {
            font-weight: 600;}
        
        .hover-text-accent:hover {
            color: #2196F3;}
        
        .transition-colors {
            transition-property: color, background-color;
            transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
            transition-duration: 150ms;}
        
        .hover-shadow-lg:hover {
            box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);}
        
        .flex {
            display: flex;}
        
        .items-center {
            align-items: center;}
        
        .items-start {
            align-items: flex-start;}
        
        .justify-between {
            justify-content: space-between;}
        
        .space-x-2 {
            gap: 0.5rem;}
        
        .space-x-4 {
            gap: 1rem;}
        
        .grid {
            display: grid;}
        
        .grid-cols-1 {
            grid-template-columns: repeat(1, minmax(0, 1fr));}
        
        @media (min-width: 768px) {
            .md-grid-cols-2 {
                grid-template-columns: repeat(2, minmax(0, 1fr));}
            .md-grid-cols-3 {
                grid-template-columns: repeat(3, minmax(0, 1fr));}
        }
        
        .gap-6 {
            gap: 1.5rem;}
        
        .border {
            border-width: 1px;}
        
        .border-gray-200 {
            border-color: #e5e7eb;}
        
        .border-t {
            border-top-width: 1px;}
        
        .hover-scale-105:hover {
            transform: scale(1.05);}
        
        .transition-transform {
            transition-property: transform;
            transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
            transition-duration: 150ms;}
        
        .duration-300 {
            transition-duration: 300ms;}
        
        .overflow-hidden {
            overflow: hidden;}
        
        .overflow-y-auto {
            overflow-y: auto;}
        
        .hover-scale-110:hover {
            transform: scale(1.1);}
        
        .duration-500 {
            transition-duration: 500ms;}
        
        .text-sm {
            font-size: 0.875rem;}
        
        .text-xs {
            font-size: 0.75rem;}
        
        .hidden {
            display: none;}
        
        /* 自定义滚动条 */
        .custom-scrollbar::-webkit-scrollbar {
            width: 6px;}
        
        .custom-scrollbar::-webkit-scrollbar-track {
            background: #f1f1f1;
            border-radius: 10px;}
        
        .custom-scrollbar::-webkit-scrollbar-thumb {
            background: #c1c1c1;
            border-radius: 10px;}
        
        .custom-scrollbar::-webkit-scrollbar-thumb:hover {
            background: #a1a1a1;}
        
        /* 悬浮窗样式 */
        .notification-float {
            position: fixed;
            top: 2rem;
            bottom: auto;
            right: 2rem;
            max-width: 350px;
            z-index: 9999;
            transform: translateY(100px);
            transition: transform 0.5s ease, opacity 0.5s ease;}
        
        .bg-white-transparent {
    	background-color: rgba(255, 255, 255, 0.9);}
        
        .notification-float.active {
            transform: translateY(0);
            z-index: 9999999;
            }
        
        .notification-header {
            cursor: move;}
        
        /* 自定义图标样式 */
        .icon {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 1.5rem;
            height: 1.5rem;
            font-weight: bold;}
        
        .icon-info::before {
            content: "☞";}
        
        .icon-check::before {
            content: "✓";}
        
        .icon-warning::before {
            content: "!";}
        
        .icon-close::before {
            content: "×";}
        
        .icon-minimize::before {
            content: "―";}
        
        .icon-maximize::before {
            content: "□";}
        
        .icon-flask::before {
            content: "🔬";}
        
        .icon-users::before {
            content: "👥";}
        
        .icon-handshake::before {
            content: "🤝";}
        
        .icon-map::before {
            content: "📍";}
        
        .icon-email::before {
            content: "📧";}
        
        .icon-phone::before {
            content: "📞";}
        
        .icon-weixin::before {
            content: "✉";}
        
        .icon-weibo::before {
            content: "🐦";}
        
        .icon-github::before {
            content: "💻";}
        
        .icon-angle-right::before {
            content: "›";}
        
        .icon-bell::before {
            content: "★";}
    </style>