/* 
   ZHI Resource Center - Final Optimized Style
   Minecraft Modern UI - Morandi Palette (Fixed Hierarchy)
*/

:root {
    /* 核心配色：大地色系 */
    --c-primary: #73645D;    /* 主色：棕 */
    --c-dark:    #3D3230;    /* 深色：文字/重色 */
    --c-accent:  #8B8080;    /* 辅助：灰棕 */
    --c-bg:      #FDF5F2;    /* 背景：淡米 */
    --c-black:   #030200;    /* 纯黑 */
    
    --radius-card: 24px;     /* 全站统一圆角 */
}

/* --- 1. 全局基础设置 --- */
* { -webkit-tap-highlight-color: transparent; }

/* 彻底去蓝：选中文字颜色 */
::selection { background: var(--c-primary); color: #fff; }
::-moz-selection { background: var(--c-primary); color: #fff; }

body {
    background-color: var(--c-bg);
    color: var(--c-black);
    font-family: 'Inter', -apple-system, system-ui, sans-serif;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

a { text-decoration: none; color: inherit; transition: all 0.2s; }

/* 2. 全宽布局覆盖 */
.container {
    max-width: none !important;
    width: 100% !important;
    padding-left: 4% !important;
    padding-right: 4% !important;
}

/* --- 3. 悬浮导航栏 (最高级层级) --- */
.navbar-floating {
    position: fixed !important;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    width: 92% !important;
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(12px);
    border-radius: var(--radius-card) !important;
    padding: 0.8rem 1.5rem;
    box-shadow: 0 8px 32px rgba(61, 50, 48, 0.08);
    /* 这里的层级必须是全站最高，确保能点到 */
    z-index: 1070 !important; 
    border: 1px solid rgba(255,255,255,0.6);
    display: flex !important;
    align-items: center;
    justify-content: space-between;
}

/* 顶栏分类平铺样式 */
.nav-item-category {
    display: inline-block !important;
    white-space: nowrap;
    color: var(--c-accent) !important;
    font-weight: 600;
    font-size: 0.95rem;
    padding: 0.5rem 1.2rem !important;
    border-radius: 12px;
}
.nav-item-category:hover, .nav-item-category.active {
    color: var(--c-primary) !important;
    background-color: var(--c-bg);
}

/* --- 4. 个人中心下拉菜单 (去蓝/圆角贴合) --- */
.navbar-floating .dropdown-menu {
    overflow: hidden !important; 
    padding: 0 !important;
    border: none !important;
    background: rgba(255, 255, 255, 0.98) !important;
    backdrop-filter: blur(10px);
    box-shadow: 0 15px 45px rgba(61, 50, 48, 0.15) !important;
    border-radius: var(--radius-card) !important;
    margin-top: 15px !important;
    z-index: 1080 !important;
}

.navbar-floating .dropdown-item {
    margin: 0 !important;
    border-radius: 0 !important; 
    padding: 12px 20px !important;
    font-weight: 600;
    color: var(--c-dark) !important;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
}
.navbar-floating .dropdown-item:hover, .navbar-floating .dropdown-item:focus {
    background-color: var(--c-bg) !important;
    color: var(--c-primary) !important;
}
.navbar-floating .dropdown-item:active, .navbar-floating .dropdown-item.active {
    background-color: var(--c-primary) !important;
    color: #fff !important;
}
.navbar-floating .dropdown-divider { margin: 0 !important; opacity: 0.06; }

/* --- 5. 按钮 & 输入框 (彻底去蓝) --- */
.btn {
    border-radius: var(--radius-card) !important;
    padding: 0.8rem 2rem;
    font-weight: 700;
    transition: all 0.3s;
    border: none;
}
.btn-primary {
    background-color: var(--c-primary) !important;
    color: #fff !important;
    box-shadow: 0 4px 15px rgba(115, 100, 93, 0.3) !important;
}
.btn-primary:hover, .btn-primary:active, .btn-primary:focus {
    background-color: var(--c-dark) !important;
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(61, 50, 48, 0.4) !important;
}
.btn-outline-primary {
    background-color: transparent !important;
    color: var(--c-primary) !important;
    border: 2px solid var(--c-primary) !important;
}
.btn:focus { box-shadow: none !important; }

/* 输入框聚焦色 */
.form-control:focus {
    border-color: var(--c-primary) !important;
    box-shadow: 0 0 0 4px rgba(115, 100, 93, 0.15) !important;
}

/* --- 6. 资源列表精度修正 (Logo/高度) --- */
/* Logo 绝对正方形，无圆角 */
.res-logo-img {
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    border-radius: 0 !important;
    object-fit: cover;
    display: block;
    border: 1px solid rgba(0,0,0,0.05);
}

/* 文字区域 72px 绝对对齐并垂直居中 */
.res-info-container {
    height: 72px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    padding: 0 !important;
    margin-left: 20px !important;
}
.res-info-container h5 { margin: 0 0 4px 0 !important; line-height: 1.2 !important; font-size: 1.1rem !important; }
.res-info-container p { margin: 0 !important; line-height: 1.2 !important; color: var(--c-accent) !important; }

/* 装饰卡片图标去圆角 */
.icon-square {
    width: 56px; height: 56px;
    display: flex; justify-content: center; align-items: center;
    background: white; border-radius: 0 !important; flex-shrink: 0;
}
.icon-square img { border-radius: 0 !important; }

/* --- 7. 详情页 & Markdown 渲染 --- */
.badge.bg-primary { background-color: var(--c-primary) !important; }

.markdown-body {
    max-width: none !important;
    width: 100% !important;
    padding: 0 !important;
    color: var(--c-black);
}
.markdown-card { padding: 3rem !important; border-radius: var(--radius-card) !important; border:none; box-shadow: 0 10px 40px -10px rgba(61, 50, 48, 0.1); }

/* --- 8. 弹窗层级修复 (解决遮挡) --- */
/* 背景遮罩层：设为 1050 */
.modal-backdrop {
    z-index: 1050 !important;
}
/* 弹窗主体：设为 1060 (高于遮罩，低于顶栏) */
.modal {
    z-index: 1060 !important;
}
.modal-content {
    background-color: var(--c-bg) !important;
    border-radius: var(--radius-card) !important;
    border: none !important;
    box-shadow: 0 20px 60px rgba(0,0,0,0.2) !important;
}

/* --- 9. 首页 Hero 区域 --- */
.hero-wrapper { padding-top: 140px; min-height: 80vh; display: flex; align-items: center; }
.hero-title { font-size: 3.5rem; font-weight: 900; line-height: 1.1; color: var(--c-black); margin-bottom: 1.5rem; }
.hero-title span { color: var(--c-primary); }
.hero-desc { font-size: 1.15rem; color: var(--c-accent); margin-bottom: 2.5rem; max-width: 90%; line-height: 1.6; }

.hero-visual-card {
    background: var(--c-dark);
    border-radius: var(--radius-card);
    padding: 2rem; color: #fff; position: relative;
    transform: rotate(2deg); transition: transform 0.5s ease;
}
.hero-visual-card:hover { transform: rotate(0deg) scale(1.02); }

/* 分类卡片 */
.cat-card {
    background: #fff; border-radius: var(--radius-card); padding: 2rem;
    transition: all 0.3s ease; border: 1px solid rgba(0,0,0,0.02); height: 100%;
}
.cat-card:hover { transform: translateY(-5px); box-shadow: 0 10px 40px -10px rgba(61, 50, 48, 0.1); }

/* 页脚 */
footer { padding: 2rem 0; color: var(--c-accent); font-size: 0.9rem; text-align: center; margin-top: auto; border-top: 1px solid rgba(0,0,0,0.03); }

/* 登录容器 */
.login-container { min-height: 100vh; display: flex; flex-direction: column; justify-content: center; align-items: center; }
.form-signin { width: 100%; max-width: 420px; background: #fff; padding: 3rem; border-radius: var(--radius-card); box-shadow: 0 10px 40px -10px rgba(61, 50, 48, 0.1); }
/* --- 资源详情页 Header 深度美化 --- */

.res-header-card {
    padding: 2.5rem !important; /* 增加内边距 */
    min-height: 160px;
    display: flex;
    align-items: center;
}

/* 标题样式：支持长标题换行，不再生硬挤压 */
.res-title-text {
    font-size: 1.75rem !important;
    font-weight: 800 !important;
    color: var(--c-dark);
    line-height: 1.3 !important;
    margin: 0.5rem 0 !important;
    word-wrap: break-word;
}

/* 简介文字：更轻、更雅致 */
.res-summary-text {
    font-size: 0.95rem !important;
    color: var(--c-accent);
    margin: 0 !important;
    opacity: 0.8;
}

/* 标签组：放在标题上方，保持整洁 */
.res-meta-tags {
    display: flex;
    gap: 8px;
    margin-bottom: 0px;
}

.res-meta-tags .badge {
    padding: 6px 12px !important;
    font-size: 0.75rem !important;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* 授权标签专用样式 */
.badge-auth-req {
    background-color: var(--c-dark) !important;
    color: #fff;
    border: none;
}

/* 下载按钮：缩小并提升精致感 */
.btn-download-refined {
    padding: 0.8rem 2.5rem !important;
    font-size: 1rem !important;
    white-space: nowrap;
    box-shadow: 0 10px 20px rgba(115, 100, 93, 0.2) !important;
}

/* Logo 边框修正 */
.res-logo-box {
    width: 90px !important;
    height: 90px !important;
    min-width: 90px !important;
    background: #fff;
    border: 1px solid rgba(0,0,0,0.05) !important;
    display: flex;
    align-items: center;
    justify-content: center;
}