:root{--bg-color:#FFFFFF;--text-color:#333333;--link-color:#3354AA;--secondary-color:#999999;--border-color:#EEEEEE;--muted-color:#F5F5F5;--body-font-famliy:"Dream Han Serif CN W8","Noto Color Emoji","Helvetica Neue",Helvetica,Arial,sans-serif;--code-font-famliy:"Maple Mono NF CN","Noto Color Emoji","Helvetica Neue",Helvetica,Arial,sans-serif}[theme-mode="dark"]{--bg-color:#1E1E1E;--text-color:#A6A6A6;--link-color:#6B92C7;--secondary-color:#999999;--border-color:#383838;--muted-color:#2D2D2D}[theme-mode="read"]{--bg-color:#F2F1EA;--text-color:#474135;--link-color:#4F6D96;--secondary-color:#594833;--border-color:#E8E6DE;--muted-color:#EBE9E0}body{background-color:var(--bg-color);color:var(--text-color);font-family:var(--body-font-famliy)}@media (max-width:768px){body{font-size:90%}}a{color:var(--link-color);text-decoration:none}a:active{color:var(--text-color)}pre,code{font-family:var(--code-font-famliy);font-size:.92857em;tab-size:4}code{padding:2px 6px;color:#C7254E;background-color:#F9F2F4}pre{overflow:auto;max-height:400px}pre code{padding:3px;background-color:transparent;color:var(--text-color)}code.language-plaintext{text-wrap:initial;font-family:var(--body-font-famliy)}blockquote{margin:1em 0;padding-left:1em;border-left:4px solid var(--border-color);color:#666}table{width:100%;border-collapse:collapse;display:block;overflow-x:auto;text-align:left}table th,table td{padding:5px 10px;border:1px solid var(--border-color);white-space:nowrap}table th{background-color:var(--muted-color)}input[type="text"],input[type="email"],input[type="url"],input[type="password"],textarea{padding:5px;border:1px solid var(--border-color);color:var(--text-color);background-color:var(--bg-color);width:100%;border-radius:2px;box-sizing:border-box}textarea{resize:vertical}button,input[type=submit]{padding:9px 11px 9px 11px;border:none;color:var(--text-color);background-color:var(--border-color);cursor:pointer}button:hover,input[type=submit]:hover{background-color:var(--border-color)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background-color:transparent}::-webkit-scrollbar-thumb{background-color:rgba(150,150,150,0.3);border-radius:3px;box-shadow:0 0 4px rgba(0,0,0,0.1);transition:all 0.2s}::-webkit-scrollbar-thumb:hover{background-color:rgba(100,100,100,0.6);box-shadow:0 0 6px rgba(0,0,0,0.2)}::-webkit-scrollbar-corner{background-color:transparent}.container-md{width:auto!important}#header{padding-top:2em;border-bottom:1px solid var(--border-color)}#logo{color:var(--text-color);font-size:2.5em}.description{margin:1em 0 0;color:var(--secondary-color)}#nav-menu{padding:0 2px;margin:2em 0 0;white-space:nowrap;overflow:hidden;overflow-x:auto}#nav-menu a{float:none;display:inline-block;margin:0 -2px;padding:0 20px;border:1px solid var(--border-color);border-bottom:none;height:32px;line-height:32px;color:var(--text-color)}#search{display:inline-block;height:28px;position:relative;margin-top:15px}#search input{padding-right:30px;height:28px;border:1px solid var(--border-color);background-color:var(--bg-color);color:var(--text-color)}#search button{position:absolute;right:4px;top:2px;border:none;padding:0;width:24px;height:24px;background:transparent url(../images/icon-search.png) no-repeat center center;direction:ltr;text-indent:-9999em}#themeMode-selector{display:inline-block}#themeMode-selector #themeMode{height:28px;border:1px solid var(--border-color);background-color:var(--bg-color);color:var(--text-color)}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){#search button{background-image:url(../images/icon-search@2x.png);-webkit-background-size:24px 24px;-moz-background-size:24px 24px;-o-background-size:24px 24px;background-size:24px 24px}}@media (max-width:768px){#header{text-align:center}}@media (min-width:768px){.site-helper{text-align:right}}.post{position:relative;padding:1.5em 0 2em;border-bottom:1px solid var(--border-color)}.post-title{margin:.83em 0;font-size:1.4em;line-height:1.5;word-wrap:break-word;word-break:break-all}.post-meta{padding:0;color:var(--secondary-color);font-size:.92857em}.post-meta li{display:inline;margin-right:5px;line-height:1.5}.post-meta .post-meta-separator{display:inline;color:var(--secondary-color)}.post-meta li:last-child.post-meta-separator{display:none}.post-summary{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:clip;text-overflow:ellipsis;width:100%;line-height:1.8;word-wrap:break-word;word-break:break-all}.post-content{line-height:1.8;word-wrap:break-word;word-break:break-all}.post-content *{margin:0}.post-content h1{font-size:1.3em;padding-top:2em;padding-bottom:1.2em}.post-content h2{font-size:1.2em;padding-top:1em;padding-bottom:1em}.post-content h3{font-size:1em;padding-bottom:0.6em}.post-content h1:first-child,.post-content h2:first-child,.post-content h3:first-child{padding-top:0}.post-content h1 + h2{padding-top:0}.post-content p{padding-bottom:0.6em}.post-content ul,.post-content ol{padding-left:0;padding-bottom:0.6em;margin-left:1em!important}.post-content ul li,.post-content ol li{padding-bottom:0.2em}.post-content ul li:last-child,.post-content ol li:last-child{padding-bottom:0}.post-content p:has(+ ul),.post-content p:has(+ ol){padding-bottom:0.2em}.post-content p:has(img){padding-bottom:1em;margin-top:-0.2em}.post-content p a[data-fancybox="gallery"]{display:flex;width:fit-content}.post-content img{box-sizing:border-box;border:1px dashed var(--border-color);padding:4px;max-width:100%;max-height:80vh !important}.post-content blockquote{margin-bottom:1em;margin-top:-0.2em}.post-content table{margin-bottom:1em;margin-top:-0.2em}.post-content .protected input[type=submit]{margin-top:1em}.post-content hr{border-top:none;border-bottom:1px dashed var(--border-color);margin-top:0.4em;margin-bottom:1em}.post-content pre{margin-bottom:1em;margin-top:-0.2em}.post-near{list-style:none;overflow-x:hidden;margin:4em 0 -1em 0;padding:0}.post-near li{white-space:nowrap;width:100%;overflow-x:clip;text-overflow:ellipsis;margin:10px 0}.post-statement{font-size:.85em;line-height:1.8;color:var(--secondary-color);background-color:var(--muted-color);padding:12px;margin-top:5em;margin-bottom:-3em;word-break:break-all;white-space:normal}#comments{margin-top:2em}#comments>h3:first-of-type{margin-top:2em}.comment-list,.comment-list ol{list-style:none;margin:0;padding:0}.comment-list li{padding:14px;margin-top:10px;border:1px solid var(--border-color)}.comment-list li.comment-level-odd{background-color:var(--muted-color)}.comment-list li.comment-level-even{background-color:var(--bg-color)}.comment-list li .comment-reply{text-align:right}.comment-list li .author-tag{background-color:#CC0000;color:#E0E0E0;padding:2px 5px;margin-left:5px;border-radius:2px;font-size:50%}.comment-meta{font-size:.92857em}.comment-meta a{color:var(--link-color)}.comment-author{display:block;margin-bottom:3px;color:var(--text-color)}.comment-author .avatar{float:left;margin-right:10px}.comment-author cite{font-weight:bold;font-style:normal}.comment-list .respond{margin-top:15px;border-top:1px solid var(--border-color)}.respond .cancel-comment-reply{float:right;margin-top:15px}.comment-list li p{line-height:1.8;margin-bottom:0}#comment-form label{display:block;margin-bottom:.5em;font-weight:bold}#comment-form .required:after{content:" *";color:#C00}.archive-title{margin:1em 0 -1em;padding-top:20px;color:var(--secondary-color);font-size:1em}.page-navigator{list-style:none;margin:25px 0;padding:0;text-align:center}.page-navigator li{display:inline-block;margin:0 4px}.page-navigator a{display:inline-block;padding:0 10px;height:30px;line-height:30px}.page-navigator .current a{color:var(--text-color);background-color:var(--border-color)}#sidebar{padding-top:15px;word-wrap:break-word}@media (min-width:768px){#sidebar{padding-left:2em}}.widget{margin-bottom:50px}.widget-list{overflow-x:hidden;list-style:none;padding:0}.widget-list li{margin:5px 0;display:inline-block;white-space:nowrap;width:100%;overflow-x:clip;text-overflow:ellipsis}.widget-list li ul{margin-left:15px}.widget-list > a{margin-right:1em;line-height:1.8;display:inline-block;white-space:nowrap;max-width:100%;overflow-x:clip;text-overflow:ellipsis}#footer{margin-top:3em;padding:2em 0;line-height:1.5;text-align:center;color:var(--secondary-color);border-top:1px solid var(--border-color)}.minitool-group{position:fixed;right:24px;bottom:24px;z-index:50;display:flex;flex-direction:column;gap:12px}.minitool-group .vertical-btn{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;font-size:20px;outline:none;color:var(--text-color);background-color:var(--border-color)}.minitool-group .toc-minitool{display:none}.minitool-group .top-minitool{opacity:0;transition:all 300ms ease-in-out}.minitool-group .themeMode-minitool .bi-sun{display:none}.minitool-group .themeMode-minitool .bi-moon-stars{display:none}.minitool-group .themeMode-minitool .bi-book{display:none}[theme-mode=""] .minitool-group .themeMode-minitool .bi-sun,[theme-mode="light"] .minitool-group .themeMode-minitool .bi-sun{display:block}[theme-mode="dark"] .minitool-group .themeMode-minitool .bi-moon-stars{display:block}[theme-mode="read"] .minitool-group .themeMode-minitool .bi-book{display:block}.toc-panel{position:fixed;right:0;top:0;height:100%;width:256px;background-color:var(--muted-color);box-shadow:-4px 0 6px -1px rgba(0,0,0,0.1);transform:translateX(100%);transition:transform 400ms ease-in-out;z-index:100;padding:24px;box-sizing:border-box;overflow-y:auto}.toc-panel .toc-header{margin-bottom:24px}.toc-panel.active{transform:translateX(0)}.toc-panel h3{margin:0}.toc-panel .toc-close{position:absolute;padding:0;top:24px;right:24px;background:none;border:none;font-size:20px;cursor:pointer}.toc-panel .toc-list:not(:has(.has-children)) .toc-item{margin-left:0}.toc-panel .toc-list,.toc-sublist{margin:0;padding:0;list-style:none}.toc-panel .toc-sublist{padding-left:18px;display:block}.toc-panel .toc-item{margin:6px 0;padding:4px 8px;font-size:1em;color:var(--text-color);cursor:pointer;white-space:nowrap;max-width:100%;overflow-x:clip;text-overflow:ellipsis}.toc-panel .toc-toggle{margin-right:8px;vertical-align:-0.125em}.toc-panel .toc-toggle svg{transition:transform 0.3s ease;transform:rotate(0deg)}.toc-panel .toc-item:not(.collapsed) .toc-toggle svg{transform:rotate(90deg)}.toc-panel .toc-item.toc-active{color:var(--link-color);font-weight:600;background-color:#E8F3FF}.toc-panel .toc-item.collapsed + .toc-sublist{display:none}.toc-panel .toc-item:not(.has-children){margin-left:20px}.toc-overlay{position:fixed;inset:0;background-color:rgba(0,0,0,0.5);z-index:30;opacity:0;pointer-events:none;transition:opacity 300ms ease-in-out}.toc-overlay.active{opacity:1;pointer-events:auto}.timeline .timeline-toggle{display:inline-block;width:1em;height:1em;margin-right:5px;vertical-align:-0.125em;transition:transform 0.3s ease}.timeline .month-header.expanded .timeline-toggle,.timeline .year-header.expanded .timeline-toggle{transform:rotate(90deg)}.timeline .year-header{tap-highlight-color:transparent;-webkit-tap-highlight-color:transparent;cursor:pointer;padding-bottom:.6em}.timeline .month-header{tap-highlight-color:transparent;-webkit-tap-highlight-color:transparent;cursor:pointer;padding-bottom:.6em;padding-left:1em}.timeline .month-content{padding-left:2em}.timeline .month-content ul{list-style:circle}.timeline .month-content ul li{list-style-position:inside;white-space:nowrap;width:100%;overflow-x:hidden;text-overflow:ellipsis}.timeline .month-content ul li:last-of-type{padding-bottom:0}.timeline .timeline-item{padding-bottom:.6em}.timeline .hidden{display:none}.error-page{margin-top:100px;margin-bottom:100px}.error-page h2{text-align:center}.hljs{color:#383A42;background-color:#FAFAFA}pre code.hljs{overflow-x:visible!important}pre{background-color:#FAFAFA}[theme-mode="dark"] pre{background-color:#282C34}[theme-mode="dark"] .hljs{color:#ABB2BF;background-color:#282C34}[theme-mode="read"] pre{background-color:var(--muted-color)}[theme-mode="read"] .hljs{background-color:var(--muted-color)}#nprogress .bar{background:var(--link-color)!important}#nprogress .spinner-icon{border-top-color:var(--link-color)!important;border-left-color:var(--link-color)!important}.playback .post-content img{max-height:80vh !important}.playback .post-content pre{max-height:100% !important}

/* ==========================================================
 * 法律博客视觉优化（2026-08）
 * 目标：更专业、清爽、易读，并改善长站点标题/描述的排版。
 * 此段为覆盖样式，便于后续升级主题时单独迁移。
 * ========================================================== */
:root {
    --bg-color: #ffffff;
    --text-color: #2f3742;
    --link-color: #275da8;
    --secondary-color: #7c8795;
    --border-color: #e6eaf0;
    --muted-color: #f6f8fa;
    --heading-color: #1d2733;
    --surface-color: #fbfcfe;
    --body-font-famliy: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", Arial, sans-serif;
    --code-font-famliy: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
}

[theme-mode="dark"] {
    --bg-color: #181b20;
    --text-color: #c7cdd5;
    --link-color: #82aef0;
    --secondary-color: #929aa5;
    --border-color: #303640;
    --muted-color: #22272e;
    --heading-color: #eef2f7;
    --surface-color: #1c2026;
}

[theme-mode="read"] {
    --bg-color: #f6f3e9;
    --text-color: #4a443a;
    --link-color: #486b93;
    --secondary-color: #7a7063;
    --border-color: #e2ddd0;
    --muted-color: #ede9dd;
    --heading-color: #352f28;
    --surface-color: #f1eee4;
}

html {
    font-size: 16px;
}

body {
    font-size: 16px;
    line-height: 1.7;
    font-weight: 400;
    letter-spacing: 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

.container-md {
    max-width: 1180px !important;
    margin-left: auto;
    margin-right: auto;
}

/* 顶部区域 */
#header {
    padding-top: 34px;
    background: var(--surface-color);
    border-bottom: 1px solid var(--border-color);
}

.site-name {
    padding-right: 2rem;
}

#logo {
    display: block;
    color: var(--heading-color);
    font-size: clamp(27px, 2.1vw, 31px);
    line-height: 1.35;
    font-weight: 700;
    letter-spacing: -0.015em;
    text-wrap: balance;
    word-break: normal;
    overflow-wrap: anywhere;
}

#logo:hover {
    color: var(--link-color);
}

.description {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    max-width: 820px;
    margin: 10px 0 0;
    color: var(--secondary-color);
    font-size: 14.5px;
    line-height: 1.75;
    font-weight: 400;
}

.site-helper {
    padding-top: 2px;
}

#search {
    width: 100%;
    max-width: 280px;
    height: 38px;
    margin-top: 4px;
}

#search input {
    height: 38px;
    padding: 0 40px 0 12px;
    border-color: var(--border-color);
    border-radius: 7px;
    background: var(--bg-color);
    font-size: 14px;
    box-shadow: 0 1px 2px rgba(20, 30, 45, 0.03);
    transition: border-color .2s ease, box-shadow .2s ease;
}

#search input:focus {
    outline: none;
    border-color: var(--link-color);
    box-shadow: 0 0 0 3px rgba(39, 93, 168, .12);
}

#search button {
    right: 7px;
    top: 7px;
}

#themeMode-selector {
    margin-top: 8px;
}

#themeMode-selector #themeMode {
    height: 34px;
    padding: 0 8px;
    border-radius: 6px;
    font-size: 13px;
}

/* 导航改为简洁文字式，不再使用“表格按钮”视觉 */
#nav-menu {
    margin: 24px 0 0;
    padding: 0;
    border-top: 1px solid var(--border-color);
}

#nav-menu a {
    height: 46px;
    line-height: 46px;
    margin: 0;
    padding: 0 16px;
    border: 0;
    color: #4c5664;
    font-size: 14.5px;
    font-weight: 500;
    transition: color .2s ease, box-shadow .2s ease;
}

[theme-mode="dark"] #nav-menu a,
[theme-mode="read"] #nav-menu a {
    color: var(--text-color);
}

#nav-menu a:first-child {
    padding-left: 0;
}

#nav-menu a:hover {
    color: var(--link-color);
    box-shadow: inset 0 -2px 0 var(--link-color);
}

/* 主体布局 */
#body {
    padding-top: 8px;
}

@media (min-width: 768px) {
    #main {
        padding-right: 2rem;
    }

    #sidebar {
        padding-left: 2rem;
        border-left: 1px solid var(--border-color);
    }
}

.post {
    padding: 28px 0 30px;
    border-bottom-color: var(--border-color);
}

.post-title {
    margin: 0 0 10px;
    font-size: 21px;
    line-height: 1.55;
    font-weight: 700;
    letter-spacing: -0.01em;
    word-break: normal;
    overflow-wrap: anywhere;
}

.post-title a {
    color: var(--link-color);
    transition: color .18s ease;
}

.post-title a:hover {
    color: var(--heading-color);
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 4px;
}

.post-meta {
    margin: 0 0 14px;
    color: var(--secondary-color);
    font-size: 13px;
    line-height: 1.7;
}

.post-meta li {
    margin-right: 4px;
}

.post-meta .post-meta-separator {
    opacity: .55;
}

.post-summary {
    color: #4b5563;
    font-size: 15.5px;
    line-height: 1.9;
    -webkit-line-clamp: 3;
    word-break: normal;
    overflow-wrap: anywhere;
}

[theme-mode="dark"] .post-summary,
[theme-mode="read"] .post-summary {
    color: var(--text-color);
}

/* 正文阅读体验 */
.post-content {
    color: var(--text-color);
    font-size: 16.5px;
    line-height: 1.95;
    word-break: normal;
    overflow-wrap: anywhere;
}

.post-content h1,
.post-content h2,
.post-content h3 {
    color: var(--heading-color);
    line-height: 1.5;
}

.post-content a {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

/* 侧边栏 */
#sidebar {
    padding-top: 28px;
    font-size: 14px;
}

.widget {
    margin-bottom: 34px;
}

.widget-title {
    margin: 0 0 13px;
    padding-left: 10px;
    border-left: 3px solid var(--link-color);
    color: var(--heading-color);
    font-size: 16px;
    line-height: 1.4;
    font-weight: 700;
}

.widget-list {
    margin: 0;
    color: var(--text-color);
    line-height: 1.85;
}

.widget-list li {
    margin: 4px 0;
}

.widget-list > a {
    margin-right: 12px;
    line-height: 1.9;
}

#sidebar a {
    color: #496b96;
}

[theme-mode="dark"] #sidebar a,
[theme-mode="read"] #sidebar a {
    color: var(--link-color);
}

#sidebar a:hover {
    color: var(--link-color);
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* 分页、底部和小工具 */
.page-navigator a {
    border-radius: 5px;
}

.page-navigator .current a {
    color: #fff;
    background: var(--link-color);
}

#footer {
    margin-top: 40px;
    padding: 26px 16px 34px;
    font-size: 13px;
}

.minitool-group .vertical-btn {
    border: 1px solid var(--border-color);
    background: var(--bg-color);
    box-shadow: 0 3px 12px rgba(20, 30, 45, .08);
}

/* 移动端 */
@media (max-width: 767px) {
    body {
        font-size: 15px;
    }

    .container-md {
        padding-left: 18px;
        padding-right: 18px;
    }

    #header {
        padding-top: 24px;
        text-align: center;
    }

    .site-name {
        padding-right: calc(var(--bs-gutter-x) * .5);
    }

    #logo {
        font-size: 25px;
        line-height: 1.42;
    }

    .description {
        -webkit-line-clamp: 3;
        margin-left: auto;
        margin-right: auto;
        font-size: 14px;
    }

    .site-helper {
        margin-top: 14px;
        padding-top: 0;
        text-align: center;
    }

    #search {
        max-width: 100%;
    }

    #nav-menu {
        margin-top: 20px;
        text-align: left;
    }

    #nav-menu a {
        height: 43px;
        line-height: 43px;
        padding: 0 12px;
        font-size: 14px;
    }

    #nav-menu a:first-child {
        padding-left: 0;
    }

    #body {
        padding-top: 0;
    }

    .post {
        padding: 24px 0 26px;
    }

    .post-title {
        font-size: 19px;
        line-height: 1.55;
    }

    .post-summary {
        font-size: 15px;
        line-height: 1.85;
    }

    .post-content {
        font-size: 16px;
        line-height: 1.9;
    }

    #sidebar {
        margin-top: 12px;
        padding-top: 24px;
        border-top: 1px solid var(--border-color);
    }
}
/* 缩小分页与页脚之间的空白 */
.page-navigator {
    margin-top: 20px;
    margin-bottom: 8px;
}

#footer {
    margin-top: 12px;
    padding-top: 18px;
    padding-bottom: 20px;
}
