/* ============================================================
   Tales & Wiki - 通用样式表 (由各处模板内联样式合并而来)
   加载方式: <link rel="stylesheet" href="/css/main.css">
   ============================================================ */

/* ---------- 1. 全局基础样式 (原 head.html) ---------- */
        body { font-family: 'Montserrat', sans-serif; background-color: #fcfcfc; color: #333; }
        .border-bottom { border-bottom: 1px solid #eee; }
        
        .has-text-bamboo { color: #4a6741 !important; }
        .has-text-classical-orange { color: #e28a50 !important; } 

        .navbar-item.is-active-brand { font-weight: 700; color: #4a6741; }
        
        .hero-split-box {
            border-radius: 8px;
            overflow: hidden;
            box-shadow: 0 10px 30px rgba(0,0,0,0.08);
        }
        .columns.is-gapless > .column.hero-text-panel {
            background-color: #7b857d; 
            display: flex;
            flex-direction: column;
            justify-content: center;
            padding: 4rem 3.5rem !important;
        }
        .search-input { background: rgba(255,255,255,0.15); border: 1px solid rgba(255,255,255,0.3); color: white; }
        .search-input::placeholder { color: rgba(255,255,255,0.7); }
        .search-input:focus { background: rgba(255,255,255,0.25); border-color: rgba(255,255,255,0.6); box-shadow: none; }
        .search-btn { background-color: #4a6741; border: none; transition: background 0.3s; }
        .search-btn:hover { background-color: #3b5334; }

        /* 修改1：去掉了 height: 100%，让卡片高度自然包裹内容，不再强行拉伸产生巨大空洞 */
/* 修改2：加上 padding-bottom: 1.25rem !important，强行收缩卡片底部的默认留白 */
.category-list-box { 
    background: #fff; 
    border: 1px solid #eee; 
    border-radius: 8px; 
    box-shadow: 0 4px 15px rgba(0,0,0,0.02); 
    padding-bottom: 1.25rem !important; 
}

.category-list-box li { 
    border-bottom: 1px dashed #f0f0f0; 
    padding-bottom: 0.75rem; 
}

/* 修改3：彻底清除最后一行 <li> 附带的所有冗余底部间距 */
.category-list-box li:last-child { 
    border-bottom: none; 
    padding-bottom: 0; 
    margin-bottom: 0 !important; 
}
       /* 优化文章链接：增加前缀小图标与悬浮右移特效 */
.article-link { 
    color: #444; 
    transition: all 0.3s ease; /* 开启全属性平滑过渡 */
    position: relative;
    padding-left: 14px; /* 给前面的小图标留出呼吸空间 */
}

.article-link::before {
    content: "\203A"; /* 这是一个非常古典优雅的单右尖号 › */
    position: absolute;
    left: 0;
    top: -1px; /* 微调垂直居中对齐 */
    color: #9cb09f; /* 默认使用低调的灰绿色，不抢文字视觉 */
    font-weight: 600;
    font-size: 1.2em; 
    transition: color 0.3s ease;
}

.article-link:hover { 
    color: #4a6741; 
    transform: translateX(6px); /* 鼠标悬浮时，整个文字带图标向右平滑推移 6px */
}

.article-link:hover::before {
    color: #4a6741; /* 悬浮时，箭头颜色与文字同步变深 */
}

        .masterpiece-card { height: 100%; border: none; border-radius: 4px; border-left: 4px solid #4a6741; box-shadow: 0 4px 10px rgba(0,0,0,0.04); transition: all 0.3s ease; }
        .masterpiece-card:hover { transform: translateY(-3px); box-shadow: 0 8px 20px rgba(74,103,65,0.1); }
        .term-badge { font-size: 0.7rem; font-weight: 700; letter-spacing: 1px; color: #4a6741; text-transform: uppercase; }
        .explore-link { font-size: 0.85rem; font-weight: 700; color: #4a6741; text-transform: uppercase; letter-spacing: 0.5px; transition: color 0.2s; }
        .explore-link:hover { color: #2c4026; }
        
        .section-heading { margin-bottom: 2.5rem; padding-bottom: 1rem; border-bottom: 1px solid #eee; }

        /* ======================================================== */
        /* 交互极简优化：移除所有丑陋的浏览器蓝框和自带外发光       */
        /* ======================================================== */
        
        .input:focus, 
        .input:active, 
        .button:focus, 
        .button:active, 
        .search-input:focus {
            border-color: transparent !important; 
            box-shadow: none !important;          
            outline: none !important;
        }

        .featured-card:hover,
        .featured-card:focus,
        .search-card:hover,
        .masterpiece-card:hover,
        .box:hover {
            border-color: transparent !important; 
        }

        a:focus, 
        button:focus, 
        input:focus {
            outline: none !important;
            box-shadow: none !important;
        }
	/* 文字单行截断并显示省略号 */
.is-truncated {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
    

/* ---------- 2. 首页组件样式 (原 index.html) ---------- */
    /* 推荐内容图文卡片悬浮特效 */
    .featured-card {
        display: block;
        border: 1px solid #eee;
        border-radius: 6px;
        height: 100%;
        overflow: hidden;
        box-shadow: 0 4px 15px rgba(0,0,0,0.02);
        transition: transform 0.3s ease, box-shadow 0.3s ease;
        text-decoration: none !important;
    }
    .featured-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 12px 24px rgba(0,0,0,0.08);
    }
    .featured-card-title { color: #333; transition: color 0.2s; }
    .featured-card:hover .featured-card-title { color: #516954 !important; }

/* ---------- 3. 列表页样式 (原 list.html) ---------- */
    /* 列表卡片悬浮效果 */
    .list-card {
        height: 100%;
        border: 1px solid #eee;
        box-shadow: 0 4px 15px rgba(0,0,0,0.02);
        transition: transform 0.3s ease, box-shadow 0.3s ease;
    }
    .list-card:hover { transform: translateY(-3px); box-shadow: 0 10px 25px rgba(0,0,0,0.06); }
    .read-more { font-size: 0.8rem; font-weight: 700; color: #4a6741; text-transform: uppercase; letter-spacing: 0.5px; }
    .read-more:hover { color: #2c4026; }
    
    /* 分页按钮主色调覆盖 */
    .pagination-link.is-current {
        background-color: #4a6741;
        border-color: #4a6741;
    }

/* ---------- 4. 详情页样式 (原 single.html) ---------- */
    /* 还原正文 H2 标题下划线与间距 */
    .content h2 {
        font-family: 'Montserrat', sans-serif;
        font-size: 1.5rem;
        margin-top: 2.5rem !important;
        margin-bottom: 1.2rem !important;
        padding-bottom: 0.5rem;
        border-bottom: 1px solid #eaeaea;
        color: #333;
    }

    /* 侧边栏卡片与右侧悬浮固定 (Sticky Sidebar) */
    .sticky-sidebar {
        position: -webkit-sticky;
        position: sticky;
        top: 2rem; /* 距离顶部 2rem 处悬浮固定 */
        z-index: 10;
    }

    .wiki-sidebar-card {
        background-color: #fcfcfc;
        border: 1px solid #f0f0f0;
        border-radius: 4px;
        box-shadow: none;
    }

    .wiki-sidebar-header {
        font-size: 0.75rem;
        font-weight: 700;
        color: #516954; /* 苍岩绿 */
        text-transform: uppercase;
        letter-spacing: 1px;
        margin-bottom: 1rem;
        border-bottom: 1px solid #eaeaea;
        padding-bottom: 0.5rem;
    }

    /* 底部标签样式 */
    .wiki-tags-header {
        font-size: 0.75rem;
        font-weight: 700;
        color: #888;
        text-transform: uppercase;
        letter-spacing: 1px;
        margin-bottom: 1rem;
        border-top: 1px dotted #ccc;
        padding-top: 1.5rem;
    }

    .tag.is-wiki-tag {
        background-color: #f4f6f4;
        color: #555;
        border-radius: 20px;
        transition: background 0.2s, color 0.2s;
    }

    .tag.is-wiki-tag:hover {
        background-color: #516954;
        color: #fff;
    }

/* ---------- 5. 搜索页样式 (原 search.html) ---------- */
    /* 搜索关键词高亮样式 (淡绿色古风徽章) */
    mark.search-highlight {
        background-color: #e8f0e6;
        color: #4a6741;
        font-weight: 700;
        padding: 1px 4px;
        border-radius: 3px;
    }

    /* 单条结果列表悬浮特效 */
    .search-result-item {
        transition: all 0.2s ease;
    }
    .search-result-title {
        color: #2b2b2b;
        transition: color 0.2s ease;
        text-decoration: none;
    }
    .search-result-title:hover {
        color: #4a6741 !important;
    }

/* ---------- 6. 标签云样式 (原 terms.html) ---------- */
    /* 悬浮交互效果 */
    .custom-tags-cloud .tag:hover {
        background-color: #516954 !important;
        color: #fff !important;
        border-color: #516954 !important;
    }
    .custom-tags-cloud .tag:hover span {
        color: #e0e6e0 !important;
    }
