.blacked-out {
  background-color: #000;      /* 黑色背景 */
  color: #000;                 /* 黑色文字 */
  padding: 0 2px;             /* 适当内边距 */
  border-radius: 3px;         /* 圆角效果 */
  cursor: pointer;            /* 鼠标指针样式 */
  transition: all 0.3s;       /* 过渡动画 */
}

/* 悬停时显示文字 */
.blacked-out:hover {
  background-color: #ffe600;  /* 黄色背景 */
  color: #333;                /* 恢复文字颜色 */
  text-decoration: underline; /* 添加下划线 */

.glass-effect {
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

@media (max-width: 768px) {
    .glass-effect {
        padding: 12px;
    }
    .container {
        padding: 0 16px;
    }
    .dock {
        background: rgba(255, 255, 255, 0.95);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
        border-radius: 24px;
        padding: 12px;
        margin: 16px;
    }
    body {
        font-size: 14px;
    }
    h1 {
        font-size: 2rem !important;
    }
    h2 {
        font-size: 1.5rem !important;
    }
    h3 {
        font-size: 1.25rem !important;
    }
    .text-4xl {
        font-size: 2rem !important;
    }
    .text-3xl {
        font-size: 1.75rem !important;
    }
    .text-2xl {
        font-size: 1.5rem !important;
    }
    .text-xl {
        font-size: 1.25rem !important;
    }
    .text-lg {
        font-size: 1.125rem !important;
    }
    .p-16 {
        padding: 1rem !important;
    }
    .p-8 {
        padding: 1rem !important;
    }
    .p-6 {
        padding: 0.75rem !important;
    }
    .gap-8 {
        gap: 1rem !important;
    }
    .mb-12 {
        margin-bottom: 1.5rem !important;
    }
    .mb-8 {
        margin-bottom: 1rem !important;
    }
    .mb-6 {
        margin-bottom: 0.75rem !important;
    }
    .space-y-4 > * + * {
        margin-top: 0.5rem !important;
    }
}

.nav-link {
    position: relative;
    transition: all 0.3s ease;
}
.nav-link::after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    bottom: -4px;
    left: 50%;
    background-color: currentColor;
    transition: all 0.3s ease;
    transform: translateX(-50%);
    opacity: 0;
}
.nav-link:hover {
    transform: translateY(-2px);
    background-color: rgba(59, 130, 246, 0.1);
    padding: 8px 16px;
    border-radius: 8px;
}
.nav-link:hover::after {
    width: 100%;
    opacity: 1;
}
.nav-link.text-primary::after {
    width: 100%;
    opacity: 1;
}
.nav-link.text-primary {
    background-color: rgba(59, 130, 246, 0.1);
    padding: 8px 16px;
    border-radius: 8px;
}
.theme-switch {
    transition: background-color 0.3s ease;
}
.theme-switch:hover {
    background-color: rgba(59, 130, 246, 0.1);
}
.search-input {
    transition: all 0.3s ease;
}
.search-input:focus {
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.5);
    transform: translateY(-1px);
}

:root {
    --bg-color: #ffffff;
    --text-color: #111827;
}
body {
    background-color: var(--bg-color);
    color: var(--text-color);
    transition: background-color 0.3s ease, color 0.3s ease;
}
.dark {
    background-color: #1a1a1a;
    color: #ffffff;
}
.dark .bg-[#F5F0EB] {
    background-color: #18181B;
}
.dark .glass-effect {
    background: rgba(0, 0, 0, 0.8);
}
.dark .nav-link:not(.text-primary) {
    color: #e5e7eb;
}
.dark .search-input {
    background: rgba(255, 255, 255, 0.1);
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.2);
}
.dark .theme-switch:hover {
    background-color: rgba(255, 255, 255, 0.1);
}
.dark .theme-switch i {
    color: #e5e7eb;
}
.dark .bg-white {
    background-color: #2d2d2d;
}
.dark .text-gray-900 {
    color: #ffffff;
}
.dark .text-gray-800 {
    color: #e5e7eb;
}
.dark .text-gray-600 {
    color: #9ca3af;
}
.dark .bg-gray-900 {
    background-color: #4b5563;
}
.dark .border-gray-200 {
    border-color: #374151;
}
.dark .bg-primary\/10 {
    background-color: rgba(59, 130, 246, 0.2);
}
.dark .bg-secondary\/10 {
    background-color: rgba(99, 102, 241, 0.2);
}
.dark .bg-pink-50 {
    background-color: rgba(252, 231, 243, 0.1);
}
.dark .bg-purple-50 {
    background-color: rgba(245, 243, 255, 0.1);
}
.dark .bg-blue-50 {
    background-color: rgba(239, 246, 255, 0.1);
}
.dark .bg-green-50 {
    background-color: rgba(236, 253, 245, 0.1);
}
.dark .bg-yellow-50 {
    background-color: rgba(254, 252, 232, 0.1);
}
.dark .bg-indigo-50 {
    background-color: rgba(238, 242, 255, 0.1);
}
.dark .bg-red-50 {
    background-color: rgba(254, 242, 242, 0.1);
}
.dark .bg-orange-50 {
    background-color: rgba(255, 247, 237, 0.1);
}
.dark .shadow-sm {
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.3);
}