/*
Theme Name: XayJR Pro
Theme URI: https://xayjr.com/
Author: XayJR
Author URI: https://xayjr.com/
Description: 「相爱一家人」xayjr.com 定制主题。完整保留 JieStyle Two 原版名片栏 / 卡片 / 挂件版式，在此之上深度增强：法规阅读器（悬浮目录 + 条文快速跳转 + 字号行距宽窄 + 打印导出 PDF + 法条锚点分享 + 法律时效标注）、通用自动排版（章/节/条结构化 + 自动分段兜底 + 目录 + 阅读时长）、暗色模式、图片灯箱、站内搜索高亮、相关阅读、时光轴、完整 SEO（canonical / OG / JSON-LD）与安全加固。零外部请求、零第三方运行时依赖。
Version: 2.1.1
Requires at least: 5.6
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v3.0
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Text Domain: xayjr-pro
Tags: two-columns, right-sidebar, custom-menu, featured-images, translation-ready, blog, news, education
*/

/* ============================================================
 * XayJR Pro 基于 JieStyle Two 2.6.3 (C) Jarvis Tang 深度优化而来，
 * 依 GPLv3 保留原作者版权声明（见 LICENSE 与 README.md）。
 * ============================================================ */
body {
    font-family: arial,sans-serif;
    line-height: 1.8;
    font-size: 16px;
    color: #555;
    font-weight: 300;
    overflow-x: hidden;
    background: #fff
}

a {
    color: #5bc0eb;
    -webkit-transition: .5s;
    -o-transition: .5s;
    transition: .5s
}

a:hover {
    text-decoration: none!important;
    color: #2980b9!important
}

td, th {
    border: 1px solid #dddddd;
    padding: 6px 10px
}

#header {
    position: fixed;
    width: 12em;
    height: 100%;
    background: #5bc0eb;
    text-align: center;
    z-index: 999
}

#header .avatar {
    margin-top: 30px
}

#header .avatar img {
    border: 3px solid #fff
}

#header .avatar img:hover {
    border-color: #d1f1e9
}

#header h1,
#header .site-name {
    color: #fff;
    font-size: 24px
}

#header .sns a {
    color: #d1f1e9;
    margin: 0 3px;
    font-size: 18px
}

#header .sns a:hover {
    color: #fff!important
}

#header .nav {
    margin: 20px 0;
    font-weight: 400
}

#header .nav ul {
    margin: 0 25%;
    padding: 0
}

#header .nav ul li {
    border-bottom: 1px dashed #d1f1e9;
    padding: 6px 0;
    list-style: none;
    margin: 0
}

#header .nav a {
    color: #fff;
    font-size: 16px
}

#header .nav a:hover {
    cursor: pointer;
    color: #d1f1e9!important
}

#header .nav ul li ul {
    position: absolute;
    display: none;
    margin-left: 6em;
    margin-top: -34px;
    padding: 0 15px;
    border-radius: 4px;
    background: #3498db;
    white-space: nowrap;
    z-index: 2000
}

#header .nav ul li ul a {
    font-size: 14px
}

#header .nav ul li:hover ul {
    display: block
}

#header .weixin {
    color: #fff;
    font-size: 14px;
    position: absolute;
    bottom: 10px
}

#main,#footer {
    margin-left: 12em;
    overflow: hidden;
    padding-top: 2em
}

#main .box {
    width: 90%;
    margin: 0 auto
}

.uptop {
    padding: 15px;
    margin: 0 0 20px 0;
    font-size: 20px;
    background-color: whitesmoke;
    border-left: 4px solid #f57e42;
    box-sizing: border-box;
    box-shadow: 0 0 1px #d9d9d9
}

.article-list-1 {
    margin-bottom: 50px;
    border: 1px solid #e0e0e0;
    border-radius: 0;
    padding: 10px 15px 20px 15px;
    background: #fff
}

.article-list-1 .post-title a {
    color: #1c1c1c;
    -webkit-transition: color .3s;
    transition: .3s;
    text-decoration: none;
    font-size: 25px
}

.article-list-1 .post-meta {
    overflow: hidden;
    margin-bottom: 10px;
    font-size: 13px;
    color: #b3b3b3
}

.article-list-1 .post-meta {
    overflow: hidden;
    margin-bottom: 10px;
    font-size: 13px;
    color: #b3b3b3;
    white-space: nowrap
}

.article-list-1 .post-meta .meta-span {
    margin-right: 15px
}

.article-list-1 .post-meta a {
    font-size: 13px;
    color: #b3b3b3
}

.article-list-2 {
    border-bottom: 1px dashed #d9d9d9;
    margin-bottom: 20px;
    padding-bottom: 15px
}

.article-list-2 .post-time {
    font-size: 12px;
    margin-right: 10px;
    color: #b3b3b3
}

.article-list-2 .post-title {
    margin: 0;
    font-size: 18px;
    line-height: 2.5
}

.article-list-2 .post-title a {
    font-size: 18px;
    font-weight: bold;
    color: #555
}

.article-list-2 .post-meta {
    overflow: hidden;
    margin-bottom: 10px;
    font-size: 13px;
    color: #b3b3b3
}

.article-list-2 .post-meta .meta-span {
    margin-right: 15px
}

.article-list-2 .post-meta a {
    font-size: 13px;
    color: #b3b3b3
}

.article-list-2 .post-meta .post-tags {
    margin-left: 10px
}

.widget {
    margin-bottom: 25px;
    padding: 30px;
    background-color: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 0
}

.widget a {
    color: #4c4c4c;
    text-decoration: none;
    -webkit-transition: color .3s;
    transition: color .3s
}

.widget ul {
    padding: 0;
    margin: 0
}

.widget li {
    list-style: none;
    padding: 2px 0;
    margin: 0
}

.widget .widget-title {
    position: relative;
    margin: 0 0 15px;
    padding-bottom: 15px
}

.widget .widget-title::after {
    position: absolute;
    left: 0;
    bottom: 0;
    height: 2px;
    width: 40px;
    background-color: #5bc0eb;
    content: ""
}

.widget-cat li::before {
    content: "\f07b";
    font-family: "Font Awesome 5 Free";
    font-weight: 400;
    margin-right: 8px
}

.widget-hot li::before {
    content: "\f15b";
    font-family: "Font Awesome 5 Free";
    font-weight: 400;
    margin-right: 8px
}

.widget-tags {
    line-height: 1.5
}

.widget-links li::before {
    content: "\f0c1";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 8px
}

.widget-links li a {
    font-size: 14px
}

.view-title {
    word-break: break-all;
    font-size: 32px;
    font-weight: bold;
    line-height: 1.5;
    color: #2f2f2f
}

.view-meta {
    margin: 20px 0;
    font-size: 13px
}

.view-meta a {
    color: #555;
    font-size: 13px
}

.view-meta span {
    margin-right: 15px
}

.view-content {
    color: #2f2f2f;
    font-weight: 400;
    word-wrap: break-word
}

.view-content h3 {
    font-weight: bold;
    margin-top: 40px;
    margin-bottom: 21px
}

.view-content h4 {
    font-weight: bold
}

.view-content img {
    max-width: 100%
}

.view-content p {
    margin: 0 0 20px 0
}

.view-content blockquote {
    padding: 10px 15px;
    margin-bottom: 20px;
    background-color: whitesmoke;
    border-left: 4px solid #999;
    word-break: break-word;
    font-size: 15px
}

.view-content blockquote p {
    margin: 5px 0
}

.view-content h5 {
    font-size: 16px;
    font-weight: 600;
    border: 1px dashed #ddd;
    background: #f1f1f1;
    padding: 10px;
    margin: 20px 0
}

.view-tag {
    font-size: 12px;
    color: #666;
    margin: 30px 0;
    overflow: hidden
}

.view-tag a {
    color: #666;
    margin-right: 10px
}

.support-author {
    padding: 25px;
    margin-bottom: 40px;
    background-color: whitesmoke;
    border-left: 4px solid #f57e42;
    box-sizing: border-box;
    box-shadow: 0 0 1px #d9d9d9
}

.support-author p {
    margin: 0 auto 10px;
    font-size: 17px;
    font-weight: bold
}

.support-author .btn-primary {
    border-color: #f57e42;
    background: #f57e42
}

.support-author .btn-primary:hover,.support-author .btn-primary:focus {
    color: white;
    border-color: #f5ad6e;
    background-color: #f5ad6e
}

#comments {
    margin-top: 50px
}

#comments .comment-head {
    margin-bottom: 25px;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
    color: #666;
    font-size: 13px;
    font-weight: normal;
    line-height: 52px
}

#comments .comment-head a {
    margin: 0 5px;
    color: #666
}

#comments ul {
    margin: 0;
    padding: 0
}

#comments ul li {
    margin: 0;
    padding: 0;
    list-style: none
}

#comments .comment_li {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #eee;
    font-size: 16px;
    line-height: 1.5
}

#comments .comment_top {
    padding-top: 10px;
    margin: 0 0 10px
}

#comments .comment_avatar {
    float: left;
    width: 50px
}

#comments .comment_avatar img {
    border-radius: 50%;
    width: 40px
}

#comments .comment_author {
    font-size: 14px;
    margin: 0;
    padding: 0;
    color: #5bc0eb
}

#comments .comment_time {
    font-size: 12px;
    margin: 0;
    padding: 0;
    color: #b1b1b1
}

#comments .comment_top .pull-right {
    margin-top: 10px
}

#comments .comment_top .pull-right a {
    font-size: 14px
}

#comments .children {
    padding: 0;
    margin: 0
}

#comments .children .comment_li {
    padding: 5px 0 5px 15px;
    border-bottom: 1px dashed #d9d9d9;
    border-left: 3px solid #d9d9d9;
    font-size: 13px;
    margin-bottom: 0;
    background-color: #f9f9fa
}

#respond {
    background-color: #f9f9fa;
    padding: 10px 15px 20px 15px;
    margin: 20px 0
}

#respond .comment-notes {
    font-size: 12px
}

.required {
    color: #f00;
    padding: 0 4px
}

.read {
    border-top: 1px solid #d9d9d9;
    border-bottom: 1px solid whitesmoke;
    background-color: whitesmoke;
    padding: 1em;
    margin-top: 2em
}

.read-head {
    margin-bottom: 1em;
    color: #555;
    font-size: 14px;
    font-weight: 600
}

.read-list ul {
    margin: 0;
    padding: 0
}

.read-list ul li {
    padding: 2px 0;
    margin: 0;
    overflow: hidden;
    white-space: nowrap
}

.read-list ul li a {
    font-size: 14px;
    color: #555
}

.copyright {
    overflow: hidden;
    padding: 10px 0;
    width: 88%;
    margin: 0 auto;
    background: transparent url(images/footer-line.png) repeat-x top center
}

.copyright p {
    font-size: 12px;
    margin: 3px 0
}

.copyright a {
    color: #555
}

.errors_404 {
    width: 100%
}

.errors_404 img {
    max-width: 100%;
    min-width: 100%
}

.errors_link {
    text-align: center;
    margin: 20px 0 100px 0
}

.errors_link a {
    margin: 0 20px
}

#titleBar {
    display: none
}

@media screen and (max-width:1024px) {
    #main,#footer {
        margin-left: 0;
        padding-top: 4em
    }

    #header {
        position: fixed;
        top: 0;
        right: 0;
        z-index: 10002;
        display: block;
        overflow-y: auto;
        width: 23em;
        height: 100%;
        -webkit-transition: -webkit-transform .5s ease;
        -moz-transition: -moz-transform .5s ease;
        transition: transform .5s ease;
        -webkit-transform: translateX(23em);
        -moz-transform: translateX(23em);
        transform: translateX(23em);
        -moz-backface-visibility: hidden;
        -webkit-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
        backface-visibility: hidden;
        -ms-transition: -ms-transform .5s ease;
        -ms-transform: translateX(23em)
    }

    #titleBar {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 10001;
        display: block;
        width: 100%;
        height: 44px;
        min-width: 320px;
        background: #222;
        color: #fff;
        -webkit-transition: -webkit-transform .5s ease;
        -moz-transition: -moz-transform .5s ease;
        transition: transform .5s ease;
        -moz-backface-visibility: hidden;
        -webkit-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
        backface-visibility: hidden;
        -ms-transition: -ms-transform .5s ease
    }

    #titleBar .title {
        display: block;
        padding: 0 1em;
        width: 100%;
        height: 44px;
        color: #fff;
        text-align: center;
        font-weight: 700;
        line-height: 44px
    }

    #titleBar .title a {
        border: 0;
        text-decoration: none
    }

    #titleBar .toggle {
        position: absolute;
        top: 0;
        right: 0;
        width: 6em;
        height: 4em;
        outline: 0;
        border: 0;
        text-decoration: none
    }

    #titleBar .toggle:before {
        position: absolute;
        top: 0;
        right: 0;
        display: block;
        width: 64px;
        height: 44px;
        font-size: 18px;
        line-height: 44px;
        text-align: center;
        color: #fff;
        background: #5bc0eb;
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        content: "\f0c9"
    }

    body.header-visible #titleBar,body.header-visible #main {
        -webkit-transform: translateX(-23em);
        -moz-transform: translateX(-23em);
        transform: translateX(-23em);
        -ms-transform: translateX(-23em)
    }

    body.header-visible #header {
        -webkit-transform: translateX(0);
        -moz-transform: translateX(0);
        transform: translateX(0);
        -ms-transform: translateX(0)
    }

    #header .nav ul li ul {
        margin-left: -1em;
        margin-top: .5em
    }
}

@media screen and (max-width:736px) {
    #main {
        margin-left: 0;
        padding-top: 4em
    }

    #footer {
        margin-left: 0;
        padding-top: 1em
    }

    #main .box {
        width: 100%
    }

    #header .avatar {
        display: none
    }

    #header .weixin {
        position: static;
        bottom: none;
        margin-top: 50px
    }

    #header {
        right: 0;
        width: 17em;
        -webkit-transform: translateX(17em);
        -moz-transform: translateX(17em);
        transform: translateX(17em);
        -ms-transform: translateX(17em)
    }

    #titleBar .toggle {
        width: 6em;
        height: 4em
    }

    #titleBar .toggle:before {
        width: 44px;
        font-size: 14px
    }

    body.header-visible #titleBar,body.header-visible #main {
        -webkit-transform: translateX(-17em);
        -moz-transform: translateX(-17em);
        transform: translateX(-17em);
        -ms-transform: translateX(-17em)
    }

    #header .nav ul li ul {
        margin-left: -1em;
        margin-top: .5em
    }

    .modal-dialog {
        margin-top: 60px
    }
}

.single-dashang img {
    margin: 0 8%;
    max-width: 180px;
    max-height: 180px
}

.footer_search {
    width: 88%;
    margin: 0 auto;
    padding-top: 1em
}/* ============================================================
 * 设计令牌（沿用原主题蓝橙基调，仅统一变量）
 * 注：#header 背景色由父主题按 tang_color 内联注入，这里不覆盖。
 * ============================================================ */
:root {
    --c-primary: #5bc0eb;          /* 原主题主蓝（名片栏/链接） */
    --c-primary-deep: #2980b9;     /* 链接 hover 深蓝 */
    --c-accent: #f57e42;           /* 原主题暖橙点缀 */
    --c-accent-soft: #f5ad6e;
    --c-ink: #333;                 /* 正文 */
    --c-ink-soft: #666;
    --c-meta: #9aa0a6;             /* 元信息（原 #b3b3b3 太浅，提到可读） */
    --c-line: #ececec;
    --c-bg: #fff;
    --r: 10px;                     /* 圆角 */
    --shadow: 0 2px 10px rgba(41,128,185,.06);
    --shadow-h: 0 12px 32px rgba(41,128,185,.14);
    --font: arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
}

/* ============================================================
 * 全局排版
 * ============================================================ */
body {
    font-family: var(--font);
    font-weight: 400;
    color: var(--c-ink);
    line-height: 1.85;
    background: #fcfcfd;
}
a { transition: color .25s ease, background-color .25s ease; }
::selection { background: rgba(91,192,235,.25); }
a:focus-visible, button:focus-visible, input:focus-visible, .btn:focus-visible {
    outline: 2px solid var(--c-primary);
    outline-offset: 2px;
}

/* ============================================================
 * 左侧名片栏（保留原结构，仅提质感）
 * ============================================================ */
#header {
    box-shadow: 2px 0 18px rgba(0,0,0,.10);
}
#header .avatar { margin-top: 34px; }
#header .avatar img {
    border: 3px solid rgba(255,255,255,.92);
    box-shadow: 0 6px 18px rgba(0,0,0,.20);
    transition: transform .35s ease, box-shadow .35s ease;
}
#header .avatar img:hover { transform: scale(1.04); border-color: #fff; }
#header h1,
#header .site-name {
    font-weight: 700;
    letter-spacing: .04em;
    margin: 16px 0 6px;
    font-size: 22px;
    text-shadow: 0 1px 2px rgba(0,0,0,.15);
}
#header .sns { margin: 6px 0 4px; }
#header .sns a {
    width: 34px; height: 34px; line-height: 34px;
    border-radius: 50%; display: inline-block;
    transition: background .25s ease, transform .25s ease, color .25s ease;
}
#header .sns a:hover { background: rgba(255,255,255,.18); transform: translateY(-2px); color: #fff !important; }
#header .nav { margin: 22px 0; }
#header .nav ul { margin: 0 18%; }
#header .nav ul li { border-bottom: 1px dashed rgba(255,255,255,.32); padding: 8px 0; }
#header .nav a { font-weight: 400; }
#header .nav .current-menu-item > a,
#header .nav .current_page_item > a { color: #fff; font-weight: 700; }
#header .nav ul li:hover ul { background: var(--c-primary-deep); }
#header .weixin img { border-radius: 6px; box-shadow: 0 4px 14px rgba(0,0,0,.25); }

/* ============================================================
 * 文章列表卡片（保留边框白卡类型，加入圆角/轻阴影/悬停微浮）
 * ============================================================ */
.article-list-1 {
    border: 1px solid var(--c-line);
    border-radius: var(--r);
    background: #fff;
    box-shadow: var(--shadow);
    padding: 18px 22px 24px;
    transition: box-shadow .3s ease, transform .3s ease, border-color .3s ease;
}
.article-list-1:hover {
    box-shadow: var(--shadow-h);
    transform: translateY(-3px);
    border-color: #cfe6f5;
}
.article-list-1 .post-title a {
    color: #2f2f2f;
    font-size: 23px;
    font-weight: 700;
    letter-spacing: .01em;
}
.article-list-1 .post-title a:hover { color: var(--c-primary-deep); }
.article-list-1 .post-meta,
.article-list-2 .post-meta { color: var(--c-meta); }
.article-list-1 .post-meta a,
.article-list-1 .post-meta .meta-span { color: var(--c-meta); }
.article-list-1 .post-meta i,
.article-list-2 .post-meta i { color: var(--c-primary); opacity: .85; margin-right: 2px; }
.article-list-1 .post-content p { color: #555; line-height: 1.85; }
.article-list-2 { border-bottom: 1px dashed #e6e6e6; }
.article-list-2 .post-title a { color: #444; }
.article-list-2 .post-title a:hover { color: var(--c-primary-deep); }

.uptop {
    border-radius: var(--r);
    border-left: 4px solid var(--c-accent);
    box-shadow: var(--shadow);
    background: #fffaf6;
}
.uptop a { color: #2f2f2f; }
.uptop a:hover { color: var(--c-accent); }

/* ============================================================
 * 侧栏挂件（保留方块类型，加入圆角/轻阴影）
 * ============================================================ */
.widget {
    border: 1px solid var(--c-line);
    border-radius: var(--r);
    background: #fff;
    box-shadow: var(--shadow);
    padding: 22px 24px;
    transition: box-shadow .3s ease;
}
.widget:hover { box-shadow: var(--shadow-h); }
.widget .widget-title {
    font-size: 16px;
    color: #2f2f2f;
    letter-spacing: .03em;
    font-weight: 700;
}
.widget .widget-title::after { width: 36px; height: 3px; border-radius: 2px; }
.widget li { padding: 5px 0; }
.widget a { color: #4c4c4c; }
.widget a:hover { color: var(--c-primary-deep); }
.widget-cat li::before,
.widget-hot li::before,
.widget-links li::before { color: var(--c-primary); }
.widget-tags a {
    display: inline-block;
    margin: 3px 4px 3px 0;
    padding: 3px 10px;
    border: 1px solid var(--c-line);
    border-radius: 20px;
    font-size: 13px;
    color: #5a6570;
    transition: all .25s ease;
}
.widget-tags a:hover { background: var(--c-primary); color: #fff; border-color: var(--c-primary); }
.widget .tag-link-1 { font-size: 13px !important; }

/* 搜索框 */
.widget #searchform .form-control,
.widget .input-group .form-control { border-radius: 8px 0 0 8px; }
.widget .btn-default { border-radius: 0 8px 8px 0; }

/* ============================================================
 * 单篇文章（保留居中单栏类型，强化标题层级/引用/图片/表格）
 * ============================================================ */
.view-title {
    font-size: 30px;
    font-weight: 800;
    color: #2f2f2f;
    letter-spacing: .01em;
    line-height: 1.45;
}
.view-meta {
    color: var(--c-meta);
    border-bottom: 1px solid #f0f0f0;
    padding-bottom: 14px;
    margin: 18px 0 26px;
}
.view-meta a, .view-meta span { color: var(--c-meta); }
.view-meta i { color: var(--c-primary); opacity: .85; margin-right: 2px; }

.view-content {
    font-size: 16.5px;
    line-height: 1.95;
    color: #333;
    word-wrap: break-word;
}
.view-content h2 {
    font-size: 1.5em;
    font-weight: 800;
    color: #2f2f2f;
    margin: 1.7em 0 .7em;
    padding-left: 14px;
    border-left: 4px solid var(--c-primary);
    line-height: 1.4;
}
.view-content h3 {
    font-size: 1.2em;
    font-weight: 700;
    color: #2f2f2f;
    margin: 1.4em 0 .6em;
    padding-left: 12px;
    border-left: 3px solid var(--c-accent);
}
.view-content h4 { font-weight: 700; color: #2f2f2f; margin: 1.2em 0 .5em; }
.view-content h5 {
    font-weight: 600;
    border: 1px dashed #e0e0e0;
    background: #f6f9fc;
    border-radius: 8px;
    color: #3a4a58;
}
.view-content p { margin: 0 0 1.2em; }
.view-content img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}
.view-content a { border-bottom: 1px solid rgba(41,128,185,.28); }
.view-content a:hover { border-bottom-color: var(--c-primary-deep); }
.view-content ul, .view-content ol { padding-left: 1.4em; }
.view-content li { margin: .35em 0; }
.view-content blockquote {
    border-left: 4px solid var(--c-primary);
    background: #f3f9fd;
    border-radius: 0 8px 8px 0;
    color: #4a5a66;
    font-size: 15px;
}
.view-content code {
    background: #f2f3f5;
    padding: .12em .4em;
    border-radius: 4px;
    font-size: .9em;
    color: #c0392b;
}
.view-content pre {
    background: #2b2f36;
    color: #e6e6e6;
    padding: 16px;
    border-radius: 8px;
    overflow: auto;
    font-size: 14px;
}
.view-content pre code { background: none; color: inherit; padding: 0; }
.view-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.2em 0;
    font-size: 15px;
}
.view-content th { background: #f3f9fd; font-weight: 700; }
.view-content td, .view-content th { border: 1px solid #e3e3e3; padding: 8px 12px; }

/* 法条悬挂条目（自动排版生成） */
.law { position: relative; padding-left: 5.6em; margin: .5em 0; line-height: 1.9; }
.law .no {
    position: absolute; left: 0; top: .05em;
    font-weight: 800; color: var(--c-primary-deep);
    white-space: nowrap;
}

/* 阅读时长 + 目录（自动排版生成） */
.xayjr-readmeta {
    display: inline-flex; align-items: center; gap: 6px;
    font-size: 13px; color: var(--c-meta);
    margin: 0 0 1.2em;
}
.xayjr-readmeta i { color: var(--c-primary); }
.xayjr-toc {
    background: #f7fbfe;
    border: 1px solid #e3eef6;
    border-left: 4px solid var(--c-primary);
    border-radius: 10px;
    padding: 16px 20px;
    margin: 0 0 1.6em;
}
.xayjr-toc__title {
    font-weight: 700; color: #2f2f2f;
    margin-bottom: 10px; display: flex; align-items: center; gap: 6px;
}
.xayjr-toc ol { margin: 0; padding-left: 1.3em; }
.xayjr-toc li { margin: 5px 0; transition: color .2s; }
.xayjr-toc a { color: #43607a; text-decoration: none; }
.xayjr-toc a:hover { color: var(--c-primary-deep); }
.xayjr-toc li.lvl3 { font-size: .95em; }
.xayjr-toc li.active > a { color: var(--c-primary-deep); font-weight: 700; }

/* 标签 / 更多阅读 */
.view-tag a {
    display: inline-block;
    color: #5a6570;
    background: #f3f5f7;
    padding: 3px 12px;
    border-radius: 20px;
    margin: 0 6px 6px 0;
    transition: all .25s ease;
}
.view-tag a:hover { background: var(--c-primary); color: #fff; }
.read {
    border-radius: var(--r);
    background: #fafbfc;
    border-top: 1px solid #eef0f2;
    border-bottom: 1px solid #eef0f2;
}
.read-head { color: #444; font-weight: 700; }
.read-head i { color: var(--c-primary); }
.read-list ul li a { color: #555; }
.read-list ul li a:hover { color: var(--c-primary-deep); }

/* 打赏区 */
.support-author {
    border-radius: var(--r);
    border-left: 4px solid var(--c-accent);
    box-shadow: var(--shadow);
    background: #fffaf6;
}
.support-author p { color: #444; }
.support-author .btn-primary {
    border-radius: 22px;
    padding: 8px 24px;
    font-weight: 600;
    transition: transform .2s ease, background .25s ease;
}
.support-author .btn-primary:hover { transform: translateY(-1px); }

/* ============================================================
 * 评论
 * ============================================================ */
#comments .comment-head { color: #888; }
#comments .comment_li { border-bottom: 1px solid #f0f0f0; }
#comments .comment_avatar img { box-shadow: 0 2px 6px rgba(0,0,0,.12); }
#comments .comment_author { color: var(--c-primary-deep); }
#comments .children .comment_li { background-color: #fafbfc; }
#respond { border-radius: var(--r); }

/* ============================================================
 * 页脚
 * ============================================================ */
.copyright { color: #888; }
.copyright a { color: #777; }
.copyright a:hover { color: var(--c-primary-deep); }

/* ============================================================
 * 增强组件：阅读进度条 + 返回顶部（JS 注入）
 * ============================================================ */
#xayjr-progress {
    position: fixed; top: 0; left: 0; height: 3px; width: 0;
    z-index: 10003;
    background: linear-gradient(90deg, var(--c-primary), var(--c-accent));
    transition: width .1s linear;
}
#xayjr-totop {
    position: fixed; right: 22px; bottom: 22px;
    width: 44px; height: 44px; border-radius: 50%;
    background: var(--c-primary); color: #fff; border: none; cursor: pointer;
    box-shadow: 0 6px 18px rgba(41,128,185,.35);
    opacity: 0; visibility: hidden;
    transition: opacity .3s ease, transform .3s ease, background .25s ease;
    z-index: 10002; font-size: 18px; line-height: 44px; text-align: center;
}
#xayjr-totop.show { opacity: 1; visibility: visible; }
#xayjr-totop:hover { transform: translateY(-3px); background: var(--c-primary-deep); }

/* ============================================================
 * 响应式微调（保留父主题断点，仅顺滑过渡）
 * ============================================================ */
@media screen and (max-width: 1024px) {
    .article-list-1:hover { transform: none; }
}
@media screen and (max-width: 736px) {
    body { font-size: 15.5px; }
    .view-content { font-size: 16px; line-height: 1.85; }
    .view-title { font-size: 25px; }
    #xayjr-totop { right: 14px; bottom: 14px; }
}

/* ============================================================
 * 进阶增强 v2：中文排印 / 暗色模式 / 功能美化 / 移动端
 * ============================================================ */

/* --- 中文排印优化（正文长文更耐读） --- */
.view-content {
    line-height: 1.9;
    font-size: 16.5px;
    letter-spacing: .01em;
}
.view-content p { margin: 0 0 1.15em; text-align: justify; }

/* --- 站内搜索命中词高亮 --- */
mark.xayjr-hl, .xayjr-hl {
    background: linear-gradient(180deg, transparent 58%, rgba(245,126,66,.38) 58%);
    color: inherit; padding: 0 .08em; border-radius: 2px;
}

/* --- 相关阅读 / 标签云 美化 --- */
.read {
    margin-top: 26px; background: #fff; border-radius: var(--r);
    padding: 18px 22px; box-shadow: 0 2px 10px rgba(0,0,0,.04);
}
.read-head {
    font-weight: 700; color: var(--c-primary-deep); margin-bottom: 12px;
    padding-left: 10px; border-left: 3px solid var(--c-accent);
}
.read-list ul { list-style: none; padding: 0; margin: 0; }
.read-list li { padding: 7px 0; border-bottom: 1px dashed #eee; }
.read-list li a { color: #555; transition: color .2s; }
.read-list li a:hover { color: var(--c-primary); }
.tagcloud { line-height: 2; }
.tagcloud a {
    color: #fff; background: var(--c-primary); padding: 4px 11px;
    border-radius: 20px; font-size: 13px !important; display: inline-block; margin: 3px;
    transition: background .2s, transform .2s;
}
.tagcloud a:hover { background: var(--c-primary-deep); transform: translateY(-1px); }

/* --- 赞赏 modal 美化 --- */
.single-dashang { border: none; border-radius: var(--r); overflow: hidden; box-shadow: 0 20px 60px rgba(0,0,0,.25); }
.single-dashang .modal-header { background: linear-gradient(135deg, var(--c-primary), var(--c-primary-deep)); color: #fff; border: none; }
.single-dashang .modal-header .close { color: #fff; opacity: .85; }
.single-dashang .modal-body img { width: 150px; margin: 8px; border-radius: 10px; box-shadow: 0 4px 14px rgba(0,0,0,.12); }

/* --- 图片灯箱 --- */
#xayjr-lightbox {
    position: fixed; inset: 0; background: rgba(0,0,0,.86); display: none;
    align-items: center; justify-content: center; z-index: 10005; cursor: zoom-out;
}
#xayjr-lightbox.show { display: flex; }
#xayjr-lightbox img { max-width: 92vw; max-height: 88vh; border-radius: 6px; box-shadow: 0 20px 60px rgba(0,0,0,.5); }
.view-content img { cursor: zoom-in; transition: filter .2s; }
.view-content img:hover { filter: brightness(.97); }

/* --- 暗色模式 --- */
html.xayjr-dark { --c-bg: #0f131a; --c-surface: #181f29; --c-text: #d8dee8; --c-muted: #8b95a3; --c-border: #2a3340; }
html.xayjr-dark body { background: var(--c-bg) !important; color: var(--c-text); }
html.xayjr-dark .article-list-1,
html.xayjr-dark .widget,
html.xayjr-dark .read,
html.xayjr-dark #header,
html.xayjr-dark .view,
html.xayjr-dark .single-dashang,
html.xayjr-dark .comment_li { background: var(--c-surface); color: var(--c-text); box-shadow: 0 2px 10px rgba(0,0,0,.4); }
html.xayjr-dark a { color: #7fb6e0; }
html.xayjr-dark .view-content { color: var(--c-text); }
html.xayjr-dark .copyright,
html.xayjr-dark .meta-span,
html.xayjr-dark .view-meta { color: var(--c-muted); }
html.xayjr-dark .read-list li { border-color: var(--c-border); }
html.xayjr-dark .read-list li a { color: var(--c-text); }
html.xayjr-dark .tagcloud a { background: #2a3340; color: #cfe2f3; }
#xayjr-theme-toggle {
    position: fixed; right: 22px; bottom: 76px; width: 44px; height: 44px; border-radius: 50%;
    border: none; cursor: pointer; z-index: 10002; font-size: 18px; line-height: 44px; text-align: center;
    background: var(--c-primary); color: #fff; box-shadow: 0 6px 18px rgba(41,128,185,.35);
    transition: transform .3s, background .25s;
}
#xayjr-theme-toggle:hover { transform: translateY(-3px); background: var(--c-primary-deep); }

/* --- 移动端打磨 --- */
@media screen and (max-width: 736px) {
    .view { padding: 0 4px; }
    .view-content { font-size: 16px; line-height: 1.85; }
    .view-title { font-size: 23px; }
    .read { padding: 14px 16px; }
    #xayjr-theme-toggle { right: 14px; bottom: 64px; }
    #xayjr-totop { right: 14px; bottom: 14px; }
}
