/* ============================================================
   CMS 资源站风 视觉重构
   - 仅做视觉覆盖，不改动原主题 PHP 逻辑
   - 引入顺序在 style.css 之后，优先级更高
   - 回滚：删掉 header.php 里本文件的 <link> 即可
   ============================================================ */

:root{
    --cms-primary:#2b7fff;
    --cms-primary-dark:#1a63d8;
    --cms-accent:#ff6600;
    --cms-topbar-bg:#1f2733;
    --cms-topbar-text:#e8eaed;
    --cms-bg:#f4f5f7;
    --cms-card:#ffffff;
    --cms-text:#2f3338;
    --cms-muted:#8a9099;
    --cms-border:#e6e8eb;
    --cms-radius:4px;
    --cms-shadow:0 1px 3px rgba(16,24,40,.06),0 1px 2px rgba(16,24,40,.04);
    --cms-shadow-hover:0 6px 16px rgba(16,24,40,.12);
    --cms-container:1400px;
}

/* ---------- 全局基调：去玫红，改中性灰蓝 ---------- */
body{
    background:var(--cms-bg);
    color:var(--cms-text);
    font-size:14px;
}
a{color:var(--cms-text);}
a:hover{color:var(--cms-primary);}

/* ---------- 顶部导航条（CMS 横向导航） ---------- */
#main_header{
    position:fixed;
    top:0;left:0;right:0;
    z-index:1000;
    background:var(--cms-topbar-bg);
    box-shadow:0 1px 0 rgba(0,0,0,.06),0 2px 8px rgba(0,0,0,.08);
}
/* 原主题 header{margin-left:270px}：顶栏整体被侧栏挤偏，必须清零 */
#main_header header{
    height:56px;
    padding:0 20px;
    margin:0 auto !important;
    display:flex;
    align-items:center;
    gap:18px;
    max-width:var(--cms-container);
    margin-top:0;
    margin-bottom:0;
}
/* 汉堡（移动端才需要）默认隐藏，改 CMS 横向后不必常驻 */
.header-traiger,
#main_header .header-traiger{display:none !important;}

/* 原主题 header #logo{position:absolute;left:65px}，会与导航项重叠 */
#main_header #logo{
    position:static !important;
    left:auto !important;
    flex:0 0 auto;
    display:flex;
    align-items:center;
    margin:0 6px 0 0;
    padding:0;
}
/* CMS 字标：方块 mark + 站点名 */
.cms-logo{
    display:flex;
    align-items:center;
    gap:8px;
    text-decoration:none !important;
}
.cms-logo-mark{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:28px;height:28px;
    border-radius:5px;
    background:linear-gradient(135deg,var(--cms-primary),#5aa2ff);
    color:#fff;
    font-size:16px;
    font-weight:700;
    line-height:1;
    letter-spacing:0;
}
.cms-logo-text{
    color:#fff;
    font-size:16px;
    font-weight:600;
    letter-spacing:.5px;
    white-space:nowrap;
    max-width:180px;
    overflow:hidden;
    text-overflow:ellipsis;
}

/* 横向主导航 */
.cms-topnav{flex:1 1 auto;min-width:0;}
.cms-topnav ul{
    display:flex;
    align-items:center;
    gap:2px;
    margin:0;padding:0;
    list-style:none;
    overflow-x:auto;
    scrollbar-width:none;
}
.cms-topnav ul::-webkit-scrollbar{display:none;}
.cms-topnav li{flex:0 0 auto;}
.cms-topnav li a{
    display:block;
    padding:8px 13px;
    border-radius:var(--cms-radius);
    color:var(--cms-topbar-text);
    font-size:14px;
    line-height:20px;
    white-space:nowrap;
    transition:background .15s,color .15s;
}
.cms-topnav li a:hover{background:rgba(255,255,255,.10);color:#fff;}
.cms-topnav li.active a{background:var(--cms-primary);color:#fff;}
.cms-topnav li a i{margin-right:5px;font-size:15px;vertical-align:-1px;}

/* ---------- 搜索框：输入框 + 独立「搜索」按钮 ---------- */
/* 顶栏在浅色/深色下都是深底，所以输入文字统一用纯白，保证足够醒目 */
.head_search{flex:0 0 auto;width:300px;}
.cms-search-form{
    display:flex;
    align-items:center;
    gap:8px;
    width:100%;
}
.head_search_cont{
    position:relative;
    flex:1 1 auto;
    min-width:0;
    display:flex;
    align-items:center;
    background:rgba(255,255,255,.14);
    border:1px solid rgba(255,255,255,.18);
    border-radius:6px;
    height:34px;
    padding:0 12px 0 32px;
    transition:background .15s,border-color .15s;
}
.head_search_cont:focus-within{
    background:#fff;
    border-color:var(--cms-primary);
}
/* 原主题 input{min-width:400px}，会把顶栏撑爆并压住导航项 */
/* 注意：night-mode.css 里有 `.night-mode header .head_search .head_search_cont input
   {background-color:#08090f !important}`，会把输入框压成比外壳更深的黑洞，
   所以下面全部用 !important 压回去，保证输入框透明、由外壳提供底色。 */
#main_header .head_search .head_search_cont input.form-control{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    height:32px;
    padding:0 !important;
    background:transparent !important;
    border:0 !important;
    outline:0;
    box-shadow:none;
    color:#ffffff !important;
    font-size:14px !important;
    font-weight:500;
    letter-spacing:.2px;
}
.head_search_cont:focus-within input.form-control{color:#1f2328 !important;}
.head_search_cont input.form-control::placeholder{
    color:rgba(255,255,255,.72) !important;
    font-weight:400;
    letter-spacing:0;
}
.head_search_cont:focus-within input.form-control::placeholder{color:#8a9099 !important;}
/* 放大镜图标移到输入框左侧 */
.head_search_cont .s_icon{
    position:absolute;
    left:10px;
    top:50%;
    transform:translateY(-50%);
    right:auto;
    color:rgba(255,255,255,.80) !important;
    font-size:16px;
    pointer-events:none;
}
.head_search_cont:focus-within .s_icon{color:var(--cms-primary) !important;}
/* 独立搜索按钮 */
.cms-search-btn{
    flex:0 0 auto;
    height:34px;
    padding:0 16px;
    border:0;
    border-radius:6px;
    background:var(--cms-primary);
    color:#fff !important;
    font-size:13px;
    font-weight:600;
    letter-spacing:.5px;
    line-height:34px;
    cursor:pointer;
    transition:background .15s;
}
.cms-search-btn:hover{background:#0060dd;color:#fff !important;}
.cms-search-btn:active{background:#0055c4;}

/* 右侧用户区 */
.head_user{flex:0 0 auto;display:flex;align-items:center;gap:8px;}
/* 原主题蓝胶囊按钮 -> CMS 主色方块按钮 */
#main_header .head_user .btn.btn-mat{
    background:var(--cms-primary) !important;
    border-color:var(--cms-primary) !important;
    color:#fff !important;
    border-radius:var(--cms-radius) !important;
    font-size:13px !important;
    font-weight:500 !important;
    padding:5px 12px !important;
    line-height:18px !important;
}
#main_header .head_user .btn.btn-mat:hover{background:var(--cms-primary-dark) !important;color:#fff !important;}
#main_header .head_user .btn.login{color:var(--cms-topbar-text) !important;}
.head_user .opts_icon,
.head_user .opts_account{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:32px;height:32px;
    border-radius:50%;
    color:var(--cms-topbar-text);
    transition:background .15s,color .15s;
}
.head_user .opts_icon:hover{background:rgba(255,255,255,.12);color:#fff;}
.head_user .opts_account img{width:28px;height:28px;border-radius:50%;object-fit:cover;}
.head_user .btn-upgrade{
    display:inline-flex;
    align-items:center;
    gap:4px;
    height:30px;
    padding:0 12px;
    border-radius:var(--cms-radius);
    background:var(--cms-primary);
    color:#fff;
    font-size:13px;
}
.head_user .btn-upgrade:hover{background:var(--cms-primary-dark);color:#fff;}
#night-mode .uil-wind-moon{display:none;}
#night-mode .uil-sun{display:inline;}

/* ---------- 隐藏左侧抽屉（改 CMS 横向导航后桌面不需要） ---------- */
@media (min-width:1024px){
    .main_sidebar{display:none !important;}
    .side-overlay{display:none !important;}
}
#wrapper{padding-left:0 !important;}
/* 原主题 .main_content{margin-left:275px}：整个内容区被侧栏挤到右边，左右留白不对称 */
.main_content{
    margin-left:0 !important;
    padding-left:0 !important;
    padding-top:56px !important; /* 让位给固定顶栏 */
}
.collapse-sidebar .main_content,
.sidebar-out .main_content{margin-left:0 !important;}
.main_content_inner{
    max-width:var(--cms-container);
    margin:0 auto;
    padding:18px 20px 40px;
}

/* ---------- 公告 ---------- */
.uk-alert{
    background:#fff;
    border:1px solid var(--cms-border);
    border-left:3px solid var(--cms-primary);
    border-radius:var(--cms-radius);
    color:var(--cms-text);
    font-size:13px;
    padding:10px 14px;
    margin-bottom:16px;
}

/* ---------- 周更表：改成 CMS 筛选条 ---------- */
#fanjubiao.uk-tab{
    display:flex;
    gap:6px;
    margin:0 0 12px;
    padding:0;
    border:0;
    background:transparent;
    flex-wrap:wrap;
}
#fanjubiao.uk-tab > li{margin:0;padding:0;}
#fanjubiao.uk-tab > li > a{
    display:block;
    height:30px;
    line-height:30px;
    padding:0 14px;
    border:1px solid var(--cms-border);
    border-radius:15px;
    background:#fff;
    color:var(--cms-text);
    font-size:13px;
    text-transform:none;
}
#fanjubiao.uk-tab > li > a:hover{border-color:var(--cms-primary);color:var(--cms-primary);}
/* 选中态：实心主色 + 加粗 + 轻微外发光，明显区别于未选中项。
   必须用 .night-mode 前缀再写一遍——night-mode.css 的同级规则会覆盖掉上面的写法。 */
#fanjubiao.uk-tab > li.uk-active > a,
.night-mode #fanjubiao.uk-tab > li.uk-active > a{
    background:var(--cms-primary) !important;
    border-color:var(--cms-primary) !important;
    color:#fff !important;
    font-weight:600;
    box-shadow:0 2px 8px rgba(0,112,255,.38);
}
/* 今日那一格：加一个小圆点标识（与"选中"是两个概念，可同时存在） */
#fanjubiao.uk-tab > li.today > a::before{
    content:"";
    display:inline-block;
    width:5px;
    height:5px;
    margin-right:5px;
    border-radius:50%;
    background:#ffb400;
    vertical-align:middle;
}
#fanjubiao.uk-tab > li.today.uk-active > a::before{background:#fff;}
.uk-switcher{padding:0;margin:0;}

/* ---------- 分区标题（CMS 竖条式） ---------- */
.grid-slider-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin:22px 0 12px;
    padding:0;
    border-bottom:1px solid var(--cms-border);
    padding-bottom:8px;
}
.section-header-left{display:flex;align-items:center;}
.section-header-left h3{
    position:relative;
    margin:0;
    padding-left:13px;
    font-size:19px;
    font-weight:700;
    letter-spacing:.3px;
    color:var(--cms-text);
    line-height:1.3;
}
.section-header-left h3::before{
    content:"";
    position:absolute;
    left:0;top:50%;
    transform:translateY(-50%);
    width:4px;height:19px;
    border-radius:2px;
    background:var(--cms-primary);
}
/* 「更多」：原来是 13px 灰色小字，几乎看不见；改成描边胶囊按钮，hover 填充主色 */
/* 注意：style.css 里有 `.section-header-right a.see-all`（特异性 0-2-1），
   这里必须用同结构的 a 选择器才能覆盖，靠 cms-restyle.css 后加载取胜。 */
.section-header-right a.see-all{
    position:relative;
    display:inline-flex;
    align-items:center;
    gap:5px;
    height:30px;
    padding:0 14px !important;
    bottom:0;
    border:1px solid var(--cms-primary);
    border-radius:999px;
    background:transparent;
    color:var(--cms-primary) !important;
    font-size:13px;
    font-weight:600;
    line-height:1;
    white-space:nowrap;
    transition:background .15s,color .15s,box-shadow .15s;
}
/* 原主题的箭头是绝对定位在右侧 padding 里，这里改成跟随文字的 flex 项 */
.section-header-right a.see-all::after{
    font-family:"unicons";
    content:"\eb6d";
    position:static;
    right:auto;
    font-size:15px;
    line-height:1;
}
.section-header-right a.see-all:hover{
    background:var(--cms-primary);
    color:#fff !important;
    box-shadow:0 2px 6px rgba(43,127,255,.32);
}

/* ---------- 海报卡片（CMS 紧凑网格） ---------- */
/* UIkit 只在左侧留负边距，会让最后一列贴右边；改成左右对称的 gutter */
.uk-grid{margin-left:-6px !important;margin-right:-6px !important;}
.uk-grid > *{padding-left:6px !important;padding-right:6px !important;}
.uk-grid > * > .video-post,
.uk-grid > li > .video-post{margin-bottom:14px;}

.video-post{
    display:block;
    position:relative;
    background:transparent;
    border-radius:var(--cms-radius);
    transition:transform .16s ease;
}
.video-post:hover{transform:translateY(-3px);}
.video-post .media{
    position:relative;
    border-radius:var(--cms-radius);
    overflow:hidden;
    background:#e9ebef;
}
/* 统一海报比例，避免同一行卡片高矮不齐 */
.video-post .media.media-3x4,
.video-post .media.media-10x14,
.video-post .media{
    padding-bottom:138% !important;
    height:0;
}
.video-post .media-content{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    background-color:#e9ebef;
    transition:transform .25s ease;
}
/* 暗色模式：未加载的封面占位也用深色，避免深色页面上出现白块 */
.night-mode .video-post .media-content{background-color:#161b22;}
.video-post:hover .media-content{transform:scale(1.04);}
.video-post:hover .media{
    box-shadow:var(--cms-shadow-hover);
}
/* hover 播放蒙层 */
.video-post .media::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.55) 100%);
    opacity:0;
    transition:opacity .2s;
}
.video-post:hover .media::after{opacity:1;}

/* 海报角标：更新至 N 集 / 已完结 / 预告 */
.cms-ep-badge{
    position:absolute;
    right:0;
    bottom:0;
    z-index:2;
    display:block;
    padding:2px 7px;
    background:rgba(0,0,0,.62);
    color:#fff;
    font-size:11px;
    line-height:1.6;
    letter-spacing:.2px;
    border-top-left-radius:var(--cms-radius);
    pointer-events:none;
}
/* 已完结：灰底 */
.cms-ep-badge.is-end{background:rgba(60,66,74,.72);}
/* 预告：橙底 */
.cms-ep-badge.is-soon{background:rgba(255,149,0,.88);}

/* ---------- 封面加载中 / 加载失败占位 ----------
   封面已改为 HTML 直出 background-image（不再依赖 scroll 事件懒加载），
   这里只做「图还没到」时的观感：骨架微光代替一片白，失败时显示斜纹底。
   is-loading / is-failed 由 footer.php 的脚本打上，禁用 JS 时不会加类，
   也就不会出现遮住封面的骨架。 */
@keyframes cms-cover-shimmer{
    from{background-position:200% 0;}
    to{background-position:-200% 0;}
}
.video-post .media-content.is-loading::after,
.video-post .media-content.is-failed::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;                 /* 低于 .cms-ep-badge(z-index:2)，不挡角标 */
    border-radius:inherit;
    pointer-events:none;
}
.video-post .media-content.is-loading::after{
    background:linear-gradient(100deg,#e6e9ee 25%,#f4f6f9 45%,#e6e9ee 65%);
    background-size:200% 100%;
    animation:cms-cover-shimmer 1.3s linear infinite;
}
.video-post .media-content.is-failed::after{
    background:repeating-linear-gradient(135deg,#e2e6ec 0 9px,#edf0f4 9px 18px);
}
.night-mode .video-post .media-content.is-loading::after{
    background:linear-gradient(100deg,#22272f 25%,#2d333c 45%,#22272f 65%);
    background-size:200% 100%;
}
.night-mode .video-post .media-content.is-failed::after{
    background:repeating-linear-gradient(135deg,#20252c 0 9px,#282e36 9px 18px);
}

/* ---------- 作者页(author.php)：封面统一 3:4 竖版海报 ----------
   原主题 .video-post-thumbnail 是「width:100%; height:140px」的横条，
   比例随列宽变化（5列时约 12:7 横图）。这里改成 3:4，与首页/播放页一致。
   该类名全站只在 author.php 出现（稿件 + 收藏两个网格），不会影响其它页面。 */
.video-post .video-post-thumbnail{
    position:relative;
    flex:0 0 auto;
    width:100% !important;
    max-width:none !important;
    max-height:none !important;
    height:0 !important;
    padding-bottom:133.333% !important;   /* 3 : 4 */
    border-radius:var(--cms-radius);
    overflow:hidden;
    background:#e9ebef;
}
.video-post .video-post-thumbnail img{
    position:absolute !important;
    top:0 !important;
    left:0 !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover;
    border-radius:0;
}
/* hover 播放蒙层（与首页海报一致） */
.video-post .video-post-thumbnail::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.55) 100%);
    opacity:0;
    transition:opacity .2s;
    pointer-events:none;
}
.video-post:hover .video-post-thumbnail::after{opacity:1;}
.night-mode .video-post .video-post-thumbnail{background:#22272e;}

.video-post-content{padding:7px 2px 0;}
.video-post-content h3{
    margin:0;
    font-size:13px;
    font-weight:400;
    line-height:1.45;
    height:2.9em; /* 固定两行高，整行卡片基线对齐 */
    color:var(--cms-text);
    overflow:hidden;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    word-break:break-all;
}
.video-post:hover .video-post-content h3{color:var(--cms-primary);}

/* ---------- 轮播（限高、圆角，弱化原主题感） ---------- */
.uk-slideshow-items.rounded{border-radius:var(--cms-radius);overflow:hidden;}
.uk-slideshow-items .uk-position-cover img{object-fit:cover !important;background:#000 !important;}
.uk-slideshow-items h3{
    font-size:17px;
    font-weight:600;
    margin:0;
    text-shadow:0 1px 3px rgba(0,0,0,.5);
}
.bg-gradient-4{
    background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.65) 100%) !important;
    padding:14px 16px !important;
}
.slidenav-prev,.slidenav-next{
    width:34px;height:34px;
    border-radius:50%;
    background:rgba(0,0,0,.4);
    color:#fff;
    display:flex;align-items:center;justify-content:center;
}

/* ---------- 通用按钮 ---------- */
.button.default,
.button{
    border-radius:var(--cms-radius);
    border:1px solid var(--cms-border);
    background:#fff;
    color:var(--cms-text);
    font-size:13px;
}
.button.default:hover{border-color:var(--cms-primary);color:var(--cms-primary);}

/* ---------- 移动端 ---------- */
@media (max-width:1023px){
    #main_header header{height:52px;padding:0 12px;gap:10px;}
    .cms-topnav ul{gap:0;}
    .cms-topnav li a{padding:6px 9px;font-size:13px;}
    .head_search{width:210px;}
    .cms-search-btn{padding:0 12px;font-size:12px;}
    .header-traiger{display:block;color:var(--cms-topbar-text);font-size:20px;cursor:pointer;}
    .main_content_inner{padding:14px 12px 30px;}
}
@media (max-width:639px){
    .head_search{width:150px;}
    .cms-search-btn{padding:0 10px;font-size:12px;letter-spacing:0;}
    .uk-grid{margin-left:-4px !important;margin-right:-4px !important;}
    .uk-grid > *{padding-left:4px !important;padding-right:4px !important;}
    .video-post-content h3{font-size:12px;}
    .section-header-left h3{font-size:17px;}
    .section-header-right a.see-all{height:28px;padding:0 12px !important;font-size:12px;}
}

/* ---------- 暗色模式（night-mode）适配 ---------- */
.night-mode{
    background:#161a20;
    color:#c9d1d9;
}
.night-mode #main_header{background:#11151b;box-shadow:0 1px 0 rgba(255,255,255,.06);}
.night-mode .main_content_inner{color:#c9d1d9;}
.night-mode .uk-alert{background:#1c2128;border-color:#2b313a;color:#c9d1d9;}
.night-mode .grid-slider-header{border-bottom-color:#2b313a;}
.night-mode .section-header-left h3{color:#e6edf3;}
/* 暗色下「更多」按钮：边框/文字用亮蓝，hover 同浅色一样填充主色 */
.night-mode .section-header-right a.see-all{
    border-color:#4a86e8;
    color:#8ab8ff !important;
}
.night-mode .section-header-right a.see-all:hover{
    background:var(--cms-primary);
    border-color:var(--cms-primary);
    color:#fff !important;
}
.night-mode .video-post-content h3{color:#c9d1d9;}
.night-mode .video-post:hover .video-post-content h3{color:var(--cms-primary);}
.night-mode #fanjubiao.uk-tab > li > a{
    background:#262c36;border-color:#39414d;color:#d7dde5;
}
.night-mode #fanjubiao.uk-tab > li > a:hover{border-color:var(--cms-primary);color:#8ab8ff;}
/* 暗色下搜索框外壳略提亮，避免和顶栏糊在一起 */
.night-mode .head_search_cont{
    background:rgba(255,255,255,.15);
    border-color:rgba(255,255,255,.20);
}
.night-mode .head_search_cont:hover{background:rgba(255,255,255,.20);}
.night-mode .video-post .media{background:#22272e;}
.night-mode .button.default{background:#1c2128;border-color:#2b313a;color:#c9d1d9;}
/* 旧的灰色小字规则已作废（被上面 .night-mode ... a.see-all 覆盖），保留注释说明 */
/* .night-mode .section-header-right .see-all{color:#7d8590;} */

/* ---------- 页脚（CMS 简洁版权条） ---------- */
.footer{
    background:#fff;
    border-top:1px solid var(--cms-border);
    margin-top:28px;
    padding:18px 0;
}
.footer .uk-grid{margin-left:0 !important;margin-right:0 !important;}
.footer p{
    margin:0 0 6px;
    font-size:13px;
    color:var(--cms-muted);
    line-height:1.7;
}
.footer p:last-child{margin-bottom:0;}
.footer a{color:var(--cms-muted);}
.footer a:hover{color:var(--cms-primary);}
.youlink p{
    padding-bottom:8px;
    border-bottom:1px dashed var(--cms-border);
    margin-bottom:10px !important;
}
.youlink a{
    display:inline-block;
    margin-right:12px;
}
.night-mode .footer{background:#11151b;border-top-color:#2b313a;}
.night-mode .footer p{color:#7d8590;}
.night-mode .footer a{color:#7d8590;}
.night-mode .youlink p{border-bottom-color:#2b313a;}

/* ============================================================
   评论框（comments.php）CMS 风格重做
   ============================================================ */
#commentform.comment-form{margin:0;}
/* 输入区外框 */
.comment-form .comment-form-body{
    background:#fff;
    border:1px solid var(--cms-border);
    border-radius:var(--cms-radius);
    padding:10px !important;
    align-items:stretch !important;
    gap:8px;
}
.comment-form .comment-form-textarea{margin:0 !important;}
/* 文本域：提高字号与对比度，保证输入清晰可见 */
.comment-form textarea.form-control,
.comment-form textarea.OwO-textarea{
    width:100% !important;
    min-height:92px;
    padding:10px 12px !important;
    border:1px solid var(--cms-border) !important;
    border-radius:var(--cms-radius) !important;
    background:#fff !important;
    color:var(--cms-text) !important;
    font-size:14px !important;
    line-height:1.7;
    resize:vertical;
    outline:0 !important;
    box-shadow:none !important;
}
.comment-form textarea.form-control:focus,
.comment-form textarea.OwO-textarea:focus{
    border-color:var(--cms-primary) !important;
}
.comment-form textarea::placeholder{color:#9aa2ac !important;}
/* 昵称 / 邮箱 / 站点 三项输入 */
.comment-form .comment-form-info{margin:8px 0 0 !important;}
.comment-form .comment-form-info .uk-input{
    height:36px;
    padding:0 10px !important;
    border:1px solid var(--cms-border) !important;
    border-radius:var(--cms-radius) !important;
    background:#fff !important;
    color:var(--cms-text) !important;
    font-size:14px !important;
    line-height:36px;
    outline:0 !important;
    box-shadow:none !important;
}
.comment-form .comment-form-info .uk-input:focus{border-color:var(--cms-primary) !important;}
.comment-form .comment-form-info .uk-input::placeholder{color:#9aa2ac !important;}
/* 提交区：去掉原主题的 li 列表样式，按钮改 CMS 主色实心按钮 */
.comment-form .form-text.text-muted{
    margin:12px 0 0 !important;
    padding:0 !important;
    list-style:none !important;
    color:var(--cms-muted) !important;
}
.comment-form .form-text.text-muted > li{
    list-style:none !important;
    margin:0 !important;
    padding:0 !important;
    display:flex;
    align-items:center;
}
.comment-form #submit,
.comment-form .button.soft-primary{
    height:36px;
    padding:0 24px !important;
    margin:0 !important;
    border:0 !important;
    border-radius:var(--cms-radius) !important;
    background:var(--cms-primary) !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:600;
    letter-spacing:.5px;
    line-height:36px;
    cursor:pointer;
    text-transform:none;
    transition:background .15s;
}
.comment-form #submit:hover,
.comment-form .button.soft-primary:hover{
    background:#0060dd !important;
    color:#fff !important;
}
/* 评论列表：主评论与子评论的层级更清楚 */
.post-comment .comment-list,
.post-comment ul{padding-left:0;}
.post-comment .comment-body{border-radius:var(--cms-radius);}

/* ---------- 评论框：暗色模式 ---------- */
.night-mode .comment-form .comment-form-body{background:#1c2128;border-color:#2b313a;}
.night-mode .comment-form textarea.form-control,
.night-mode .comment-form textarea.OwO-textarea{
    background:#161b22 !important;
    border-color:#2b313a !important;
    color:#e6edf3 !important;
}
.night-mode .comment-form textarea.form-control:focus,
.night-mode .comment-form textarea.OwO-textarea:focus{border-color:var(--cms-primary) !important;}
.night-mode .comment-form .comment-form-info .uk-input{
    background:#161b22 !important;
    border-color:#2b313a !important;
    color:#e6edf3 !important;
}
.night-mode .comment-form .comment-form-info .uk-input:focus{border-color:var(--cms-primary) !important;}
.night-mode .comment-form .form-text.text-muted{color:#7d8590 !important;}

/* ============================================================
   统一分页（.qmc-pagination）
   逻辑与样式与 ASMR 页一致：窗口 ±3 / 首尾页 + 省略号 /
   上一页·下一页 / 跳页框 / 共 N 页。
   同时兼容 Typecho 原生 pageNav 输出（评论分页等）：
   .navigation.pagination > .nav-links > .page-numbers
   ============================================================ */
.qmc-pagination{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:6px;
    padding:22px 0 4px;
}
.qmc-pagination a,
.qmc-pagination span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:36px;
    height:36px;
    padding:0 11px;
    border:1px solid transparent;
    border-radius:var(--cms-radius);
    font-size:14px;
    line-height:1;
    text-decoration:none !important;
    transition:background .15s,color .15s,border-color .15s,transform .15s;
}
.qmc-pagination a{
    background:#fff;
    border-color:var(--cms-border);
    color:var(--cms-text);
}
.qmc-pagination a:hover{
    background:rgba(43,127,255,.10);
    border-color:var(--cms-primary);
    color:var(--cms-primary);
    transform:translateY(-1px);
}
.qmc-pagination .current{
    background:var(--cms-primary);
    border-color:var(--cms-primary);
    color:#fff;
    font-weight:600;
}
.qmc-pagination .dots{
    min-width:24px;
    padding:0 2px;
    border:0;
    background:none;
    color:var(--cms-muted);
    cursor:default;
}
.qmc-pagination .prev,
.qmc-pagination .next{font-weight:500;padding:0 14px;}
.qmc-pagination .is-disabled{color:var(--cms-muted);opacity:.5;cursor:default;}
/* 跳页框 */
.qmc-page-jump{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin-left:8px;
}
.qmc-page-jump input{
    width:62px;
    height:36px;
    padding:0 6px;
    margin:0;
    border:1px solid var(--cms-border) !important;
    border-radius:var(--cms-radius);
    /* 原主题/night-mode.css 会用 !important 把 input 压成灰底或近黑底，这里必须压回去 */
    background:#fff !important;
    color:var(--cms-text) !important;
    font-size:14px;
    text-align:center;
    outline:0;
    box-shadow:none;
}
.qmc-page-jump input:focus{
    border-color:var(--cms-primary) !important;
    box-shadow:0 0 0 2px rgba(43,127,255,.12);
}
.qmc-page-jump input::placeholder{color:#9aa2ac !important;opacity:1;}
.qmc-page-jump button{
    height:36px;
    padding:0 14px;
    margin:0;
    border:0;
    border-radius:var(--cms-radius);
    background:var(--cms-primary);
    color:#fff;
    font-size:13px;
    cursor:pointer;
    transition:background .15s;
}
.qmc-page-jump button:hover{background:#0060dd;}
.qmc-pagination .page-info{
    color:var(--cms-muted);
    font-size:13px;
    margin-left:6px;
}

/* ---------- Typecho 原生 pageNav（评论分页等）套同一套外观 ---------- */
.navigation.pagination{padding:18px 0;}
.navigation.pagination .screen-reader-text{display:none;}
.navigation.pagination .nav-links{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:6px;
}
.navigation.pagination .nav-links > *{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:36px;
    height:36px;
    padding:0 11px;
    border:1px solid var(--cms-border);
    border-radius:var(--cms-radius);
    background:#fff;
    color:var(--cms-text);
    font-size:14px;
    line-height:1;
    text-decoration:none !important;
    transition:background .15s,color .15s,border-color .15s,transform .15s;
}
.navigation.pagination .nav-links a:hover{
    background:rgba(43,127,255,.10);
    border-color:var(--cms-primary);
    color:var(--cms-primary);
    transform:translateY(-1px);
}
.navigation.pagination .nav-links .current{
    background:var(--cms-primary);
    border-color:var(--cms-primary);
    color:#fff;
    font-weight:600;
}
/* 省略号（Box 里输出的是裸 <li>…</li>） */
.navigation.pagination .nav-links li:not(.current){
    border:0;
    background:none;
    min-width:24px;
    padding:0 2px;
    color:var(--cms-muted);
    list-style:none;
}

/* ---------- 分页：暗色模式 ---------- */
/* 暗色下页面底色本身就是 #1c2128，按钮要再亮一档才看得出边界 */
.night-mode .qmc-pagination a{background:#242a32;border-color:#39414d;color:#c9d1d9;}
.night-mode .qmc-pagination a:hover{background:rgba(43,127,255,.18);border-color:var(--cms-primary);color:#8ab8ff;}
.night-mode .qmc-pagination .current{background:var(--cms-primary);border-color:var(--cms-primary);color:#fff;}
.night-mode .qmc-pagination .dots{color:#7d8590;}
.night-mode .qmc-page-jump input{background:#161b22 !important;border-color:#4a5563 !important;color:#e6edf3 !important;}
.night-mode .qmc-page-jump input::placeholder{color:#8b949e !important;opacity:1;}
.night-mode .qmc-pagination .page-info{color:#7d8590;}
.night-mode .navigation.pagination .nav-links > *{background:#242a32;border-color:#39414d;color:#c9d1d9;}
.night-mode .navigation.pagination .nav-links a:hover{background:rgba(43,127,255,.18);color:#8ab8ff;}
.night-mode .navigation.pagination .nav-links .current{background:var(--cms-primary);color:#fff;}
.night-mode .navigation.pagination .nav-links li:not(.current){background:none;color:#7d8590;}

@media (max-width:639px){
    .qmc-pagination a,
    .qmc-pagination span{min-width:32px;height:32px;padding:0 8px;font-size:13px;}
    .qmc-page-jump input{width:54px;height:32px;}
    .qmc-page-jump button{height:32px;padding:0 12px;}
}


/* ============================================================
   移动端专属重排  (max-width:1023px)   2026-10-31
   ① 顶栏两行：汉堡 + LOGO + 右侧图标 / 分类横向滑动
   ② 搜索框改为可展开抽屉，不再挤占顶栏
   ③ 触摸目标统一放大，消除溢出与错位
   ============================================================ */
.cms-search-close{
    display:none !important;
    flex:0 0 auto;
    align-items:center;
    justify-content:center;
    width:34px;height:34px;
    border:0;
    border-radius:50%;
    background:rgba(255,255,255,.14);
    color:#fff;
    font-size:18px;
    cursor:pointer;
}
.cms-search-close i{font-size:18px;line-height:1;}

@media (max-width:1199px){
    html,body{overflow-x:hidden;}

    /* ---------- 顶栏容器：允许换行，显式两行高度 ---------- */
    #main_header header{
        position:relative;
        height:auto;
        flex-wrap:wrap;
        align-items:center;
        padding:0 10px;
        gap:0;
    }

    /* ---------- 第一行：汉堡 + LOGO + 右侧图标（高 48） ---------- */
    #main_header .header-traiger{
        display:flex !important;
        align-items:center;
        order:1;
        flex:0 0 auto;
        height:48px;
        padding:0 8px 0 0;
        font-size:22px;
        line-height:1;
        color:var(--cms-topbar-text);
    }
    #main_header #logo{
        order:2;
        flex:1 1 auto;
        min-width:0;
        height:48px;
        margin:0;
    }
    #main_header #logo .cms-logo-mark{width:26px;height:26px;font-size:15px;border-radius:5px;}
    #main_header #logo .cms-logo-text{
        font-size:16px;
        max-width:none;
        min-width:0;
        overflow:hidden;
        text-overflow:ellipsis;
        white-space:nowrap;
    }
    #main_header .head_user{
        order:3;
        flex:0 0 auto;
        height:48px;
        gap:4px;
        margin-left:auto;
    }
    #main_header .head_user .opts_icon{width:34px;height:34px;font-size:18px;}
    #main_header .head_user .opts_account,
    #main_header .head_user .opts_account img{width:28px;height:28px;}
    #main_header .head_user .btn-upgrade{
        height:32px;padding:0 10px;font-size:12px;gap:3px;line-height:32px;
    }

    /* ---------- 第二行：分类横滑（高 44） ---------- */
    #main_header .cms-topnav{
        order:4;
        flex:0 0 100%;
        width:100%;
        height:44px;
    }
    #main_header .cms-topnav ul{
        height:44px;
        gap:6px;
        padding:0 2px;
        -webkit-overflow-scrolling:touch;
    }
    #main_header .cms-topnav li a{
        padding:0 13px;
        height:32px;
        line-height:32px;
        font-size:14px;
        border-radius:999px;
        background:rgba(255,255,255,.08);
        white-space:nowrap;
    }
    #main_header .cms-topnav li.active a{background:var(--cms-primary);}

    /* ---------- 搜索抽屉：默认收起，点放大镜展开 ---------- */
    #main_header .head_search{
        display:block !important;
        position:absolute;
        top:100%;
        left:0;
        right:0;
        z-index:30;
        flex:none;
        width:auto !important;
        padding:10px 12px;
        background:var(--cms-topbar-bg);
        box-shadow:0 10px 22px rgba(0,0,0,.24);
        opacity:0;
        transform:translateY(-10px);
        visibility:hidden;
        pointer-events:none;
        transition:opacity .18s ease, transform .18s ease, visibility .18s;
    }
    #main_header.search-open .head_search{
        opacity:1;
        transform:translateY(0);
        visibility:visible;
        pointer-events:auto;
    }
    #main_header .head_search .cms-search-form{gap:8px;}
    #main_header .head_search .head_search_cont{height:40px;padding:0 12px 0 34px;}
    #main_header .head_search .head_search_cont input.form-control{height:38px;font-size:15px !important;}
    #main_header .head_search .head_search_cont .s_icon{font-size:17px;left:11px;}
    #main_header .head_search .cms-search-btn{height:40px;line-height:40px;padding:0 18px;font-size:14px;}
    #main_header .head_search .cms-search-close{display:inline-flex !important;width:40px;height:40px;}

    /* 手机端去掉与横向导航重复的汉堡菜单与左侧抽屉 */
    #main_header .header-traiger{display:none !important;}
    .main_sidebar,
    .side-overlay{display:none !important;}

    /* ---------- 内容区让位：48 + 44 = 92 ---------- */
    .main_content{padding-top:92px !important;}
    .main_content_inner{padding:14px 12px 30px;}

    /* ---------- 通用：图片/卡片不再溢出 ---------- */
    img{max-width:100%;height:auto;}
    .uk-border-rounded,.rounded{max-width:100%;}
}

@media (max-width:639px){
    #main_header .head_user .btn-upgrade{padding:0 9px;font-size:12px;}
    #main_header .cms-topnav li a{padding:0 11px;font-size:13.5px;}
    #logo .cms-logo-text{font-size:15.5px;}
}

/* ---------- 旧搜索弹层（nice-tips）兜底修正 ---------- */
.nice-tips-body .head_search{width:100% !important;max-width:100%;}
.nice-tips-body .head_search form{display:block;width:100%;}
.nice-tips-body .head_search_cont{
    width:100%;
    height:42px;
    padding:0 14px 0 36px;
    background:#fff;
    border:1px solid #d0d7de;
}
.nice-tips-body .head_search input.form-control{
    width:100% !important;
    min-width:0 !important;
    height:40px;
    font-size:15px !important;
    color:#1f2328 !important;
    background:transparent !important;
}
.nice-tips-body .head_search input.form-control::placeholder{color:#8a9099 !important;}
.nice-tips-body .head_search .s_icon{left:12px;color:#8a9099 !important;}
.nice-tips-body .head_search_cont:focus-within{border-color:var(--cms-primary);}


/* ============================================================
   2026-10-31  顶栏重排（移除登录/注册按钮后）
   ============================================================ */

/* ① 移除「登录 / 注册」按钮（两者同为 .btn-upgrade）。
      已登录用户仍保留头像与下拉菜单（进入后台 / 登出等）。 */
#main_header .head_user .btn-upgrade,
.head_user .btn-upgrade{display:none !important;}

/* ② 桌面端：定宽容器 + 导航在剩余空间内居中 + 搜索框收窄，整体重心更平衡 */
@media (min-width:1200px){
    #main_header > header{
        max-width:1440px;
        margin:0 auto;
        padding:0 24px;
        gap:20px;
    }
    #main_header .cms-topnav ul{
        justify-content:center;
        gap:8px;
    }
    #main_header .cms-topnav li a{
        padding:0 14px;
        height:36px;
        line-height:36px;
        font-size:14.5px;
        border-radius:999px;
    }
    #main_header .head_search{flex:0 0 260px;width:260px;}
    #main_header .head_user{gap:10px;}
    #main_header .head_user .opts_icon{width:40px;height:40px;font-size:19px;}
}

/* ③ 移动端：第一行改为「LOGO 左 · 图标右」，去掉占位后视觉更干净 */
@media (max-width:1023px){
    #main_header #logo{order:1;}
    #main_header .head_user{order:2;gap:8px;}
    #main_header .head_user .opts_icon{width:36px;height:36px;font-size:18px;}
    /* 隐藏桌面的内联搜索框残留：移动端只保留抽屉形式 */
    #main_header .head_search .btn-upgrade{display:none !important;}
}

/* ---------- 封面改由真正的 <img> 渲染（规避图床 Referer 防盗链）----------
   原因：CSS background-image 发出的请求不受文档 referrer 策略约束，
        实测 Chromium / Edge 均会照发 Referer -> 图床一律 403；
        只有 <img> / fetch 会遵循 <meta name="referrer" content="never">。
   做法：这里把 .media-content 的 background-image 掐掉，浏览器便不再发出
        那条必失败的请求；封面改由 footer.php 注入的真实 <img> 呈现，
        视觉通过 object-fit:cover 保持完全一致。
   回滚：删掉下面 3 条规则 + footer.php 中「封面渲染改造」那段脚本即可。 */
.media-content {
    background-image: none !important;
    overflow: hidden;
}
.media-content > img.cms-cover-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
    display: block;
    z-index: 0;
    color: transparent;
    font-size: 0;
}
/* 加载失败时不露出浏览器的破图图标，保留原来的斜纹占位 */
.media-content.is-failed > img.cms-cover-img { visibility: hidden; }

/* ============================================================
   2026-10-31  修复「聚焦搜索框后汉字看不见」
   ------------------------------------------------------------
   原因：主题里两条规则都带 !important，比的是选择器特异度 ——
     #main_header .head_search .head_search_cont input.form-control{color:#fff}   特异度 131
     .head_search_cont:focus-within input.form-control{color:#1f2328}             特异度 31
   后者输掉，于是聚焦后背景变纯白、文字仍为白色 —— 白字白底，什么都看不见。
   修法：把 focus-within 规则的选择器特异度提到 141（加 #main_header .head_search 前缀）。
   ============================================================ */
#main_header .head_search .head_search_cont:focus-within input.form-control{
    color:#1f2328 !important;
    caret-color:#1f2328 !important;
}
#main_header .head_search .head_search_cont:focus-within input.form-control::placeholder{
    color:#8a9099 !important;
}
#main_header .head_search .head_search_cont:focus-within .s_icon{
    color:#8a9099 !important;
}
/* 手机端搜索抽屉是自动聚焦的，为了让「未聚焦→已聚焦」的配色变化不明显，
   抽屉里的输入框始终用「浅色底 + 深色字」，避免任何一刻出现白字白底。 */
@media (max-width:1199px){
    #main_header .head_search .head_search_cont{
        background:#ffffff !important;
        border:1px solid #d0d7de !important;
    }
    #main_header .head_search .head_search_cont input.form-control,
    #main_header .head_search .head_search_cont:focus-within input.form-control{
        color:#1f2328 !important;
        caret-color:#1f2328 !important;
    }
    #main_header .head_search .head_search_cont input.form-control::placeholder,
    #main_header .head_search .head_search_cont:focus-within input.form-control::placeholder{
        color:#98a0aa !important;
    }
    #main_header .head_search .head_search_cont .s_icon,
    #main_header .head_search .head_search_cont:focus-within .s_icon{
        color:#98a0aa !important;
    }
    /* 暗色模式：抽屉保持深底白字 */
    .night-mode #main_header .head_search .head_search_cont{
        background:rgba(255,255,255,.10) !important;
        border-color:rgba(255,255,255,.22) !important;
    }
    .night-mode #main_header .head_search .head_search_cont input.form-control,
    .night-mode #main_header .head_search .head_search_cont:focus-within input.form-control{
        color:#e6edf3 !important;
        caret-color:#e6edf3 !important;
    }
    .night-mode #main_header .head_search .head_search_cont input.form-control::placeholder,
    .night-mode #main_header .head_search .head_search_cont:focus-within input.form-control::placeholder{
        color:#9aa5b1 !important;
    }
    .night-mode #main_header .head_search .head_search_cont .s_icon,
    .night-mode #main_header .head_search .head_search_cont:focus-within .s_icon{
        color:#9aa5b1 !important;
    }
}

/* 暗色模式：聚焦后改回「浅色字 + 半透明深底」，避免桌面端出现深字深底。
   特异度 151 > 上面那条 141，确保覆盖。 */
.night-mode #main_header .head_search .head_search_cont:focus-within{
    background:rgba(255,255,255,.14) !important;
}
.night-mode #main_header .head_search .head_search_cont:focus-within input.form-control{
    color:#e6edf3 !important;
    caret-color:#e6edf3 !important;
}
.night-mode #main_header .head_search .head_search_cont:focus-within input.form-control::placeholder{
    color:#9aa5b1 !important;
}
.night-mode #main_header .head_search .head_search_cont:focus-within .s_icon{
    color:#9aa5b1 !important;
}

/* ---------- 顶栏图标：修掉「白图标 + 浅灰白底」的低对比 bug ---------- */
/* assets/css/style.css:6175 有一条
     header .head_user .opts_icon:hover{ background-color:#f1f3f4 }
   特异度(31) > 本文件原先的 `.head_user .opts_icon:hover`(30)，
   会把悬停/激活背景刷成浅灰白(#f1f3f4)；而图标色已被本文件设成纯白 ->
   白图标落在浅灰白底上几乎看不见(实测对比度仅 1.1)。
   下面用 #main_header 前缀提高特异度压回去。 */
#main_header .head_user .opts_icon:hover,
#main_header .head_user .opts_icon:active,
#main_header .head_user .opts_icon:focus,
#main_header .head_user .opts_account:hover{
    background:rgba(255,255,255,.18) !important;
    color:#fff !important;
}
/* 搜索抽屉展开时，放大镜按钮保持「激活」观感（同样必须是深底） */
#main_header.search-open .head_user .btn-search-toggler{
    background:rgba(255,255,255,.22) !important;
    color:#fff !important;
}

/* ---------- 导航项放不下时：可横滑 + 右侧渐隐提示 ---------- */
.cms-topnav{position:relative;}
.cms-topnav.is-scrollable::after{
    content:"";
    position:absolute;
    top:0;right:0;
    width:34px;height:100%;
    background:linear-gradient(to left, var(--cms-topbar-bg) 25%, rgba(31,39,51,0));
    pointer-events:none;
}
.night-mode .cms-topnav.is-scrollable::after{
    background:linear-gradient(to left, #11151b 25%, rgba(17,21,27,0));
}
