/* ============================================
   DevSale 新拟态 (Neumorphism) 设计系统
   ============================================ */

:root {
    --neu-bg: #e0e5ec;
    --neu-bg-alt: #e6eaf0;
    --neu-dark-shadow: #a3b1c6;
    --neu-light-shadow: #ffffff;
    --neu-text: #2d3748;
    --neu-text-secondary: #718096;
    --neu-primary: #3b82f6;
    --neu-primary-light: #60a5fa;
    --neu-primary-dark: #2563eb;
    --neu-radius: 12px;
    --neu-radius-lg: 16px;
    --neu-radius-sm: 8px;
}

/* ===== 全局背景覆盖 ===== */
.bg-gray-50, .bg-gray-100 {
    background-color: var(--neu-bg) !important;
}

/* ===== 新拟态升起效果（卡片/面板） ===== */
.neu-card {
    background: var(--neu-bg);
    border: none;
    border-radius: var(--neu-radius-lg);
    box-shadow: 8px 8px 16px var(--neu-dark-shadow), -8px -8px 16px var(--neu-light-shadow);
    transition: box-shadow 0.3s ease, transform 0.2s ease;
}
.neu-card:hover {
    box-shadow: 6px 6px 12px var(--neu-dark-shadow), -6px -6px 12px var(--neu-light-shadow);
}

/* 自动覆盖传统白色卡片 */
.bg-white.rounded-xl.border,
.bg-white.rounded-lg.border,
.bg-white.shadow-sm,
.bg-white.shadow,
div[class*="bg-white"][class*="rounded"] {
    background: var(--neu-bg) !important;
    border: none !important;
    border-color: transparent !important;
    box-shadow: 8px 8px 16px var(--neu-dark-shadow), -8px -8px 16px var(--neu-light-shadow) !important;
}

/* 卡片 hover 增强（针对源码卡片） */
a[class*="rounded-xl"].group,
a[class*="rounded"].group {
    box-shadow: 8px 8px 16px var(--neu-dark-shadow), -8px -8px 16px var(--neu-light-shadow) !important;
    border: none !important;
}
a[class*="rounded-xl"].group:hover,
a[class*="rounded"].group:hover {
    box-shadow: 4px 4px 8px var(--neu-dark-shadow), -4px -4px 8px var(--neu-light-shadow) !important;
    transform: translateY(-2px);
}

/* ===== 新拟态下降/凹陷效果（输入框） ===== */
.neu-input {
    background: var(--neu-bg);
    border: none;
    border-radius: var(--neu-radius);
    box-shadow: inset 4px 4px 8px var(--neu-dark-shadow), inset -4px -4px 8px var(--neu-light-shadow);
    padding: 10px 16px;
    color: var(--neu-text);
    outline: none;
    transition: box-shadow 0.3s ease;
}
.neu-input:focus {
    box-shadow: inset 2px 2px 4px var(--neu-dark-shadow), inset -2px -2px 4px var(--neu-light-shadow);
}

/* 自动覆盖传统输入框 */
input[type="text"]:not(.neu-no-override),
input[type="email"]:not(.neu-no-override),
input[type="password"]:not(.neu-no-override),
input[type="number"]:not(.neu-no-override),
input[type="search"]:not(.neu-no-override),
textarea:not(.neu-no-override),
select:not(.neu-no-override) {
    background: var(--neu-bg) !important;
    border: none !important;
    border-radius: var(--neu-radius) !important;
    box-shadow: inset 4px 4px 8px var(--neu-dark-shadow), inset -4px -4px 8px var(--neu-light-shadow) !important;
    color: var(--neu-text) !important;
    outline: none !important;
    transition: box-shadow 0.3s ease !important;
}
input[type="text"]:not(.neu-no-override):focus,
input[type="email"]:not(.neu-no-override):focus,
input[type="password"]:not(.neu-no-override):focus,
input[type="number"]:not(.neu-no-override):focus,
input[type="search"]:not(.neu-no-override):focus,
textarea:not(.neu-no-override):focus,
select:not(.neu-no-override):focus {
    box-shadow: inset 2px 2px 4px var(--neu-dark-shadow), inset -2px -2px 4px var(--neu-light-shadow) !important;
    --tw-ring-width: 0 !important;
}

/* ===== 新拟态按钮 ===== */
.neu-btn {
    background: var(--neu-bg);
    border: none;
    border-radius: var(--neu-radius);
    box-shadow: 4px 4px 8px var(--neu-dark-shadow), -4px -4px 8px var(--neu-light-shadow);
    color: var(--neu-text);
    font-weight: 500;
    cursor: pointer;
    transition: box-shadow 0.2s ease, transform 0.1s ease;
}
.neu-btn:hover {
    box-shadow: 3px 3px 6px var(--neu-dark-shadow), -3px -3px 6px var(--neu-light-shadow);
}
.neu-btn:active,
.neu-btn-active {
    box-shadow: inset 3px 3px 6px var(--neu-dark-shadow), inset -3px -3px 6px var(--neu-light-shadow);
    transform: scale(0.98);
}

.neu-btn-primary {
    background: var(--neu-primary);
    border: none;
    border-radius: var(--neu-radius);
    box-shadow: 4px 4px 8px rgba(59, 130, 246, 0.3), -4px -4px 8px var(--neu-light-shadow);
    color: white;
    font-weight: 500;
    cursor: pointer;
    transition: box-shadow 0.2s ease, transform 0.1s ease;
}
.neu-btn-primary:hover {
    box-shadow: 3px 3px 6px rgba(59, 130, 246, 0.25), -3px -3px 6px var(--neu-light-shadow);
    background: var(--neu-primary-dark);
}
.neu-btn-primary:active {
    box-shadow: inset 3px 3px 6px rgba(59, 130, 246, 0.4), inset -3px -3px 6px rgba(255,255,255,0.1);
    transform: scale(0.98);
}

.neu-btn-danger {
    background: #ef4444;
    border: none;
    border-radius: var(--neu-radius);
    box-shadow: 4px 4px 8px rgba(239, 68, 68, 0.3), -4px -4px 8px var(--neu-light-shadow);
    color: white;
    font-weight: 500;
    cursor: pointer;
    transition: box-shadow 0.2s ease;
}
.neu-btn-danger:hover {
    box-shadow: 3px 3px 6px rgba(239, 68, 68, 0.25), -3px -3px 6px var(--neu-light-shadow);
}
.neu-btn-danger:active {
    box-shadow: inset 3px 3px 6px rgba(239, 68, 68, 0.4), inset -3px -3px 6px rgba(255,255,255,0.1);
}

.neu-btn-success {
    background: #22c55e;
    border: none;
    border-radius: var(--neu-radius);
    box-shadow: 4px 4px 8px rgba(34, 197, 94, 0.3), -4px -4px 8px var(--neu-light-shadow);
    color: white;
    font-weight: 500;
    cursor: pointer;
    transition: box-shadow 0.2s ease;
}
.neu-btn-success:hover {
    box-shadow: 3px 3px 6px rgba(34, 197, 94, 0.25), -3px -3px 6px var(--neu-light-shadow);
}

/* 自动覆盖传统按钮 */
.bg-primary-600:not(.neu-no-override),
button[class*="bg-primary-600"]:not(.neu-no-override),
a[class*="bg-primary-600"]:not(.neu-no-override) {
    background: var(--neu-primary) !important;
    border: none !important;
    box-shadow: 4px 4px 8px rgba(59, 130, 246, 0.3), -4px -4px 8px var(--neu-light-shadow) !important;
    transition: box-shadow 0.2s ease, transform 0.1s ease !important;
}
.bg-primary-600:hover:not(.neu-no-override),
button[class*="bg-primary-600"]:hover:not(.neu-no-override),
a[class*="bg-primary-600"]:hover:not(.neu-no-override) {
    background: var(--neu-primary-dark) !important;
    box-shadow: 3px 3px 6px rgba(59, 130, 246, 0.25), -3px -3px 6px var(--neu-light-shadow) !important;
}
.bg-primary-600:active:not(.neu-no-override) {
    box-shadow: inset 3px 3px 6px rgba(59, 130, 246, 0.4), inset -3px -3px 6px rgba(255,255,255,0.1) !important;
    transform: scale(0.98) !important;
}

/* 自动覆盖绿色按钮 */
button[class*="bg-green-600"]:not(.neu-no-override),
a[class*="bg-green-600"]:not(.neu-no-override) {
    background: #22c55e !important;
    border: none !important;
    box-shadow: 4px 4px 8px rgba(34, 197, 94, 0.3), -4px -4px 8px var(--neu-light-shadow) !important;
}
button[class*="bg-green-600"]:hover:not(.neu-no-override),
a[class*="bg-green-600"]:hover:not(.neu-no-override) {
    background: #16a34a !important;
}

/* ===== 新拟态标签/徽章 ===== */
.neu-tag {
    background: var(--neu-bg);
    border: none;
    border-radius: 20px;
    box-shadow: 3px 3px 6px var(--neu-dark-shadow), -3px -3px 6px var(--neu-light-shadow);
    padding: 2px 10px;
    font-size: 0.75rem;
    color: var(--neu-text-secondary);
}
.neu-tag-active {
    background: var(--neu-primary);
    box-shadow: 3px 3px 6px rgba(59, 130, 246, 0.3), -3px -3px 6px var(--neu-light-shadow);
    color: white;
}

/* 覆盖传统 rounded-full 标签 */
span[class*="rounded-full"],
a[class*="rounded-full"] {
    border: none !important;
    box-shadow: 2px 2px 4px var(--neu-dark-shadow), -2px -2px 4px var(--neu-light-shadow) !important;
}

/* ===== 新拟态表格 ===== */
.neu-table {
    background: var(--neu-bg);
    border-radius: var(--neu-radius-lg);
    box-shadow: 8px 8px 16px var(--neu-dark-shadow), -8px -8px 16px var(--neu-light-shadow);
    overflow: hidden;
}
.neu-table thead {
    background: var(--neu-bg) !important;
}
.neu-table th {
    color: var(--neu-text-secondary) !important;
    box-shadow: inset 0 -2px 4px var(--neu-dark-shadow);
    padding: 12px 24px !important;
}
.neu-table tbody tr {
    transition: all 0.2s ease;
}
.neu-table tbody tr:hover {
    box-shadow: inset 0 0 12px rgba(163, 177, 198, 0.3);
    background: var(--neu-bg) !important;
}
.neu-table td {
    border: none !important;
    color: var(--neu-text) !important;
    padding: 12px 24px !important;
}
.neu-table .divide-y > * {
    border-color: transparent !important;
    box-shadow: inset 0 1px 2px var(--neu-dark-shadow);
}

/* 自动覆盖传统表格样式 */
.bg-white.rounded-xl.border.overflow-hidden table,
div[class*="bg-white"][class*="rounded"] table {
    /* Keep the container styling */
}
thead.bg-gray-50,
thead[class*="bg-gray-50"] {
    background: var(--neu-bg) !important;
    box-shadow: inset 0 -2px 4px var(--neu-dark-shadow);
}
tbody.divide-y,
tbody[class*="divide-y"] {
    border: none !important;
}
tbody.divide-y > *,
tbody[class*="divide-y"] > * {
    border-color: transparent !important;
    box-shadow: inset 0 1px 1px var(--neu-dark-shadow);
}
tr[class*="hover:bg-gray-50"]:hover {
    background: var(--neu-bg) !important;
    box-shadow: inset 0 0 12px rgba(163, 177, 198, 0.25);
}

/* ===== 新拟态弹窗/模态框 ===== */
.neu-modal-overlay {
    background: rgba(0, 0, 0, 0.4) !important;
    backdrop-filter: blur(2px);
}
.neu-modal {
    background: var(--neu-bg-alt);
    border-radius: var(--neu-radius-lg);
    box-shadow: 12px 12px 24px rgba(0, 0, 0, 0.15), -4px -4px 12px var(--neu-light-shadow);
    border: none !important;
}

/* 自动覆盖弹窗中的白色背景 */
[class*="fixed"][class*="inset-0"] [class*="bg-white"][class*="rounded"] {
    background: var(--neu-bg-alt) !important;
    border: none !important;
    box-shadow: 12px 12px 24px rgba(0, 0, 0, 0.15), -4px -4px 12px var(--neu-light-shadow) !important;
}

/* ===== 新拟态顶部导航栏 ===== */
.neu-navbar {
    background: var(--neu-bg);
    box-shadow: 0 4px 12px var(--neu-dark-shadow);
    border: none !important;
}

/* 自动覆盖导航栏 */
nav[class*="bg-white"][class*="sticky"],
nav[class*="bg-white"][class*="shadow"] {
    background: var(--neu-bg) !important;
    box-shadow: 0 4px 12px var(--neu-dark-shadow) !important;
    border: none !important;
}

/* ===== 新拟态侧边栏 ===== */
.neu-sidebar {
    background: var(--neu-bg);
    box-shadow: 4px 0 16px var(--neu-dark-shadow);
}

/* 侧边栏内菜单项 */
.neu-sidebar-item {
    border-radius: var(--neu-radius);
    transition: all 0.2s ease;
}
.neu-sidebar-item:hover {
    box-shadow: inset 3px 3px 6px var(--neu-dark-shadow), inset -3px -3px 6px var(--neu-light-shadow);
}
.neu-sidebar-item.active {
    background: var(--neu-primary);
    box-shadow: 3px 3px 6px rgba(59, 130, 246, 0.3), -3px -3px 6px var(--neu-light-shadow);
    color: white;
}

/* ===== 新拟态顶部栏（admin） ===== */
.neu-topbar {
    background: var(--neu-bg);
    box-shadow: 0 4px 12px var(--neu-dark-shadow);
    border: none !important;
}

/* ===== 新拟态页脚 ===== */
.neu-footer {
    background: var(--neu-bg);
    box-shadow: 0 -4px 12px var(--neu-dark-shadow);
    border: none !important;
}

/* ===== 新拟态图标容器 ===== */
.neu-icon-box {
    background: var(--neu-bg);
    border-radius: var(--neu-radius);
    box-shadow: 4px 4px 8px var(--neu-dark-shadow), -4px -4px 8px var(--neu-light-shadow);
    display: flex;
    align-items: center;
    justify-content: center;
}
.neu-icon-box-inset {
    background: var(--neu-bg);
    border-radius: var(--neu-radius);
    box-shadow: inset 3px 3px 6px var(--neu-dark-shadow), inset -3px -3px 6px var(--neu-light-shadow);
}

/* ===== 新拟态图片网格项 ===== */
.neu-image-grid-item {
    background: var(--neu-bg);
    border-radius: var(--neu-radius);
    box-shadow: 4px 4px 8px var(--neu-dark-shadow), -4px -4px 8px var(--neu-light-shadow);
    overflow: hidden;
    transition: box-shadow 0.3s ease, transform 0.2s ease;
}
.neu-image-grid-item:hover {
    box-shadow: 2px 2px 4px var(--neu-dark-shadow), -2px -2px 4px var(--neu-light-shadow);
    transform: translateY(-1px);
}

/* ===== 新拟态选中状态 ===== */
.neu-selected {
    box-shadow: inset 3px 3px 6px var(--neu-dark-shadow), inset -3px -3px 6px var(--neu-light-shadow) !important;
    --tw-ring-width: 0 !important;
}

/* ===== 新拟态空状态 ===== */
.neu-empty {
    background: var(--neu-bg);
    border-radius: var(--neu-radius-lg);
    box-shadow: inset 6px 6px 12px var(--neu-dark-shadow), inset -6px -6px 12px var(--neu-light-shadow);
}

/* ===== 新拟态文件上传按钮 ===== */
input[type="file"]::file-selector-button {
    background: var(--neu-bg) !important;
    border: none !important;
    border-radius: var(--neu-radius-sm) !important;
    box-shadow: 3px 3px 6px var(--neu-dark-shadow), -3px -3px 6px var(--neu-light-shadow) !important;
    color: var(--neu-primary) !important;
    cursor: pointer !important;
    transition: box-shadow 0.2s ease !important;
}
input[type="file"]::file-selector-button:hover {
    box-shadow: 2px 2px 4px var(--neu-dark-shadow), -2px -2px 4px var(--neu-light-shadow) !important;
}
input[type="file"]::file-selector-button:active {
    box-shadow: inset 2px 2px 4px var(--neu-dark-shadow), inset -2px -2px 4px var(--neu-light-shadow) !important;
}

/* ===== 新拟态 Hero 区域（首页） ===== */
.neu-hero {
    background: linear-gradient(135deg, #e0e5ec, #d4dce8) !important;
    color: var(--neu-text) !important;
    box-shadow: inset 0 -8px 16px rgba(163, 177, 198, 0.4);
}

/* ===== Markdown 内容样式（新拟态适配） ===== */
.prose {
    color: var(--neu-text);
    line-height: 1.75;
}
.prose h1 { font-size: 2rem; font-weight: 700; margin-top: 1.5rem; margin-bottom: 0.75rem; color: var(--neu-text); }
.prose h2 { font-size: 1.5rem; font-weight: 600; margin-top: 1.25rem; margin-bottom: 0.5rem; color: var(--neu-text); }
.prose h3 { font-size: 1.25rem; font-weight: 600; margin-top: 1rem; margin-bottom: 0.5rem; color: var(--neu-text); }
.prose p { margin-bottom: 0.75rem; }
.prose ul, .prose ol { margin-bottom: 0.75rem; padding-left: 1.5rem; }
.prose li { margin-bottom: 0.25rem; }
.prose code {
    background: var(--neu-bg);
    box-shadow: inset 2px 2px 4px var(--neu-dark-shadow), inset -2px -2px 4px var(--neu-light-shadow);
    padding: 0.125rem 0.375rem;
    border-radius: 4px;
    font-size: 0.875em;
    color: var(--neu-primary);
}
.prose pre {
    background: #2d3748;
    color: #e2e8f0;
    padding: 1rem;
    border-radius: var(--neu-radius);
    overflow-x: auto;
    margin-bottom: 1rem;
    box-shadow: inset 4px 4px 8px rgba(0,0,0,0.3), inset -4px -4px 8px rgba(255,255,255,0.05);
}
.prose pre code {
    background: transparent;
    color: inherit;
    padding: 0;
    box-shadow: none;
}
.prose blockquote {
    border-left: 4px solid var(--neu-primary);
    padding-left: 1rem;
    color: var(--neu-text-secondary);
    margin-bottom: 0.75rem;
}
.prose a { color: var(--neu-primary-dark); text-decoration: underline; }
.prose table { width: 100%; border-collapse: collapse; margin-bottom: 1rem; }
.prose th, .prose td { padding: 0.5rem 0.75rem; text-align: left; }
.prose th {
    font-weight: 600;
    box-shadow: inset 0 -1px 2px var(--neu-dark-shadow);
}
.prose img {
    max-width: 100%;
    border-radius: var(--neu-radius);
    margin: 0.75rem 0;
    box-shadow: 4px 4px 8px var(--neu-dark-shadow), -4px -4px 8px var(--neu-light-shadow);
}

/* ===== 分隔线新拟态 ===== */
hr {
    border: none;
    height: 2px;
    background: linear-gradient(to right, transparent, var(--neu-dark-shadow), transparent);
    opacity: 0.3;
}

/* ===== 滚动条美化 ===== */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb {
    background: var(--neu-dark-shadow);
    border-radius: 3px;
    box-shadow: inset 1px 1px 2px rgba(0,0,0,0.1);
}
::-webkit-scrollbar-thumb:hover { background: #8fa0b8; }

/* ===== 动画 ===== */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}
.animate-fadeIn { animation: fadeIn 0.3s ease-out; }

@keyframes neuPress {
    from { box-shadow: 4px 4px 8px var(--neu-dark-shadow), -4px -4px 8px var(--neu-light-shadow); }
    to { box-shadow: inset 4px 4px 8px var(--neu-dark-shadow), inset -4px -4px 8px var(--neu-light-shadow); }
}

/* ===== 响应式隐藏 ===== */
@media (max-width: 768px) {
    .hide-mobile { display: none !important; }
}

/* ===== 行数限制 ===== */
.line-clamp-1 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}
.line-clamp-2 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

/* ===== 前台特色图标容器 ===== */
div[class*="rounded-2xl"][class*="flex"][class*="items-center"][class*="justify-center"] {
    background: var(--neu-bg) !important;
    box-shadow: 4px 4px 8px var(--neu-dark-shadow), -4px -4px 8px var(--neu-light-shadow) !important;
}

/* ===== 侧边栏分节标题 ===== */
.text-gray-400.uppercase.tracking-wider {
    color: var(--neu-text-secondary) !important;
}

/* ===== 小标签筛选（assets页） ===== */
a[class*="px-3"][class*="py-1"][class*="rounded-lg"][class*="text-sm"] {
    box-shadow: 3px 3px 6px var(--neu-dark-shadow), -3px -3px 6px var(--neu-light-shadow);
    border: none !important;
    transition: box-shadow 0.2s ease;
}
a[class*="px-3"][class*="py-1"][class*="rounded-lg"][class*="text-sm"]:hover {
    box-shadow: 2px 2px 4px var(--neu-dark-shadow), -2px -2px 4px var(--neu-light-shadow);
}

/* ===== 快捷入口卡片 ===== */
a[class*="p-4"][class*="rounded-lg"][class*="hover:"] {
    background: var(--neu-bg) !important;
    box-shadow: 6px 6px 12px var(--neu-dark-shadow), -6px -6px 12px var(--neu-light-shadow) !important;
    transition: box-shadow 0.3s ease, transform 0.2s ease !important;
}
a[class*="p-4"][class*="rounded-lg"][class*="hover:"]:hover {
    box-shadow: 3px 3px 6px var(--neu-dark-shadow), -3px -3px 6px var(--neu-light-shadow) !important;
    transform: translateY(-2px);
}

/* ===== 分页按钮 ===== */
a[class*="border"][class*="rounded-lg"] {
    background: var(--neu-bg) !important;
    border: none !important;
    box-shadow: 3px 3px 6px var(--neu-dark-shadow), -3px -3px 6px var(--neu-light-shadow) !important;
    transition: box-shadow 0.2s ease !important;
}
a[class*="border"][class*="rounded-lg"]:hover {
    box-shadow: 2px 2px 4px var(--neu-dark-shadow), -2px -2px 4px var(--neu-light-shadow) !important;
}

/* ===== 弹窗内的取消按钮 ===== */
button[onclick*="classList.add('hidden')"],
button[onclick*="close"],
button[onclick*="modal"].classList {
    background: var(--neu-bg) !important;
    border: none !important;
    box-shadow: 3px 3px 6px var(--neu-dark-shadow), -3px -3px 6px var(--neu-light-shadow) !important;
}

/* ===== 提示/警告消息（新拟态） ===== */
.bg-red-50.border-red-200,
div[class*="bg-red-50"] {
    background: var(--neu-bg) !important;
    border: none !important;
    box-shadow: inset 3px 3px 6px #a3b1c6, inset -3px -3px 6px #fff !important;
    color: #dc2626 !important;
}
.bg-green-50,
div[class*="bg-green-50"]:not([class*="hover:"]) {
    background: var(--neu-bg) !important;
    color: #22c55e !important;
    box-shadow: inset 3px 3px 6px #a3b1c6, inset -3px -3px 6px #fff !important;
}

/* ===== 源码卡片内部分隔线 ===== */
.border-gray-100,
div[class*="border-gray-100"] {
    border-color: transparent !important;
    background: linear-gradient(to right, transparent, #a3b1c6, transparent);
    height: 1px;
}

/* ===== 面包屑导航 ===== */
nav[class*="text-gray-500"][class*="text-sm"] a:hover {
    color: var(--neu-primary) !important;
}

/* ===== h1/h2 标题颜色 ===== */
h1[class*="text-gray-900"],
h2[class*="text-gray-900"] {
    color: var(--neu-text) !important;
}

/* ===== 源码封面占位背景 ===== */
div[class*="from-primary-100"][class*="to-primary-200"] {
    background: var(--neu-bg) !important;
    box-shadow: inset 4px 4px 8px #a3b1c6, inset -4px -4px 8px #fff !important;
}

/* ===== 封面图标颜色 ===== */
.text-primary-400 {
    color: var(--neu-primary-light) !important;
}

/* ===== 价格标签 ===== */
span[class*="bg-white/90"][class*="backdrop-blur"] {
    background: rgba(224, 229, 236, 0.9) !important;
    backdrop-filter: blur(4px);
    box-shadow: 3px 3px 6px #a3b1c6, -3px -3px 6px #fff !important;
    color: var(--neu-primary) !important;
}

/* ===== 用户中心侧边导航 ===== */
a[class*="bg-primary-50"][class*="text-primary-700"] {
    background: var(--neu-primary) !important;
    color: #fff !important;
    box-shadow: 3px 3px 6px rgba(59, 130, 246, 0.3), -3px -3px 6px #fff !important;
}

/* ===== 分类列表筛选项 ===== */
a[class*="px-3"][class*="py-1"][class*="text-sm"][class*="rounded-lg"] {
    border: none !important;
}
a[class*="bg-primary-100"][class*="text-primary-700"] {
    background: var(--neu-primary) !important;
    color: #fff !important;
    box-shadow: 3px 3px 6px rgba(59, 130, 246, 0.3), -3px -3px 6px #fff !important;
}

/* ===== 文件类型标签 ===== */
span[class*="bg-blue-50"][class*="text-blue-600"] {
    background: var(--neu-bg) !important;
    color: var(--neu-primary) !important;
    box-shadow: 2px 2px 4px #a3b1c6, -2px -2px 4px #fff !important;
}

/* ===== 轮播图导航按钮 ===== */
.carousel-prev, .carousel-next {
    background: var(--neu-bg) !important;
    box-shadow: 3px 3px 6px #a3b1c6, -3px -3px 6px #fff !important;
    border: none !important;
    transition: box-shadow 0.2s ease !important;
}
.carousel-prev:hover, .carousel-next:hover {
    box-shadow: 2px 2px 4px #a3b1c6, -2px -2px 4px #fff !important;
}

/* ===== 源码详情页轮播缩略图 ===== */
img[class*="carousel-thumb"] {
    box-shadow: 3px 3px 6px #a3b1c6, -3px -3px 6px #fff;
}

/* ===== 首页轮播 ===== */
.carousel-nav-btn:hover {
    background: rgba(0,0,0,0.5) !important;
}

/* ===== 友链滚动 ===== */
@keyframes marqueeScroll {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}
.friend-links-track {
    will-change: transform;
}
.friend-links-track:hover {
    animation-play-state: paused;
}

/* 拟态 */
.neu-item:hover {
    box-shadow:3px 3px 6px #a3b1c6,
        -3px -3px 6px #fff;
}

/* 渐变文字 */
.premium-text {
  /* 1. 设置渐变背景（这里使用上文推荐的“极光夜幕”高级色） #272727 → #6D6D6D → #F9F9F9*/
  background: linear-gradient(to right, #1E3C72 0%, #2A5298 100%);
  
  /* 2. 将背景裁剪到只有文字可见 */
  -webkit-background-clip: text;
  background-clip: text;
  
  /* 3. 必须让文字本身的颜色变为透明，否则会挡住背景 */
  -webkit-text-fill-color: transparent;
  text-fill-color: transparent;
  
  /* 增强可读性的加粗 */
  font-weight: bold; 
}