/* 导入 Inter 字体 - 已移除外部请求以提升加载速度 */
/* 使用系统字体栈替代，保持视觉一致性 */
/* @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap'); */

/* 自定义颜色类 - 完全匹配原配置 */
.bg-primary { background-color: #1e3a8a !important; }
.text-primary { color: #1e3a8a !important; }
.border-primary { border-color: #1e3a8a !important; }
.ring-primary { --tw-ring-color: #1e3a8a !important; }
.focus\:ring-primary:focus { --tw-ring-color: #1e3a8a !important; }
.focus\:border-primary:focus { border-color: #1e3a8a !important; }

.bg-secondary { background-color: #475569 !important; }
.text-secondary { color: #475569 !important; }

.bg-available { background-color: #10b981 !important; }
.text-available { color: #10b981 !important; }
.border-available { border-color: #10b981 !important; }

.bg-sold { background-color: #ef4444 !important; }
.text-sold { color: #ef4444 !important; }
.border-sold { border-color: #ef4444 !important; }

.bg-neutral { background-color: #f3f4f6 !important; }

/* 透明度变体 - 关键部分 */
.bg-primary\/10 { background-color: rgba(30, 58, 138, 0.1) !important; }
.bg-sold\/10 { background-color: rgba(239, 68, 68, 0.1) !important; }
.bg-available\/10 { background-color: rgba(16, 185, 129, 0.1) !important; }
.hover\:text-primary\/80:hover { color: rgba(30, 58, 138, 0.8) !important; }

/* 字体家族 - 使用系统字体栈（无需外部加载） */
.font-sans,
body,
html {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol' !important;
}

/* 确保头部样式完全匹配 */
header.bg-primary {
    background-color: #1e3a8a !important;
    color: white !important;
}

/* 确保头部内容样式 */
header .container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 1.5rem 1rem !important;
}

/* 响应式标题字体 - 匹配原来的效果 */
.text-responsive,
h1.font-bold {
    font-size: clamp(1.5rem, 3vw, 2.5rem) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

/* 也支持原来的任意值语法 */
.text-\[clamp\(1\.5rem\,3vw\,2\.5rem\)\],
[class*="text-[clamp(1.5rem,3vw,2.5rem)]"] {
    font-size: clamp(1.5rem, 3vw, 2.5rem) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

/* 确保标题在不同屏幕尺寸下都有合适大小 */
@media (max-width: 640px) {
    .text-responsive,
    h1.font-bold {
        font-size: 1.5rem !important;
    }
}

@media (min-width: 641px) and (max-width: 1024px) {
    .text-responsive,
    h1.font-bold {
        font-size: 2rem !important;
    }
}

@media (min-width: 1025px) {
    .text-responsive,
    h1.font-bold {
        font-size: 2.5rem !important;
    }
}

/* 确保 flex 布局正确 */
.flex {
    display: flex !important;
}

.flex-col {
    flex-direction: column !important;
}

.flex-row {
    flex-direction: row !important;
}

.justify-between {
    justify-content: space-between !important;
}

.items-center {
    align-items: center !important;
}

/* 响应式断点 */
@media (min-width: 768px) {
    .md\:flex-row {
        flex-direction: row !important;
    }

    .md\:mb-0 {
        margin-bottom: 0 !important;
    }
}

/* 间距修正 */
.mb-4 {
    margin-bottom: 1rem !important;
}

.mr-3 {
    margin-right: 0.75rem !important;
}

.mr-1 {
    margin-right: 0.25rem !important;
}

/* 文本大小和透明度 */
.text-2xl {
    font-size: 1.5rem !important;
    line-height: 2rem !important;
}

.text-sm {
    font-size: 0.875rem !important;
    line-height: 1.25rem !important;
}

.opacity-90 {
    opacity: 0.9 !important;
}

/* 阴影效果 */
.shadow-lg {
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05) !important;
}

/* 自定义工具类 - 完全匹配原 @layer utilities */
.tomb-grid {
    display: grid;
    grid-template-columns: repeat(20, minmax(0, 1fr));
    gap: 2px;
}

.tomb-cell {
    aspect-ratio: 1/1;
    cursor: pointer;
    transition: all 0.2s ease;
}

.tomb-cell:hover {
    transform: scale(1.1);
    z-index: 10;
}

.scrollbar-thin {
    scrollbar-width: thin;
}

.scrollbar-thin::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

.scrollbar-thin::-webkit-scrollbar-thumb {
    background-color: rgba(156, 163, 175, 0.5);
    border-radius: 3px;
}

/* 强制覆盖标题样式 - 确保字体大小正确 */
header h1 {
    font-size: clamp(1.5rem, 3vw, 2.5rem) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

/* 备用方案 - 直接针对标题文本 */
header .container h1,
header h1.font-bold {
    font-size: clamp(1.5rem, 3vw, 2.5rem) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}