/* =========================================
   基础重置与布局（原主题）
   ========================================= */
a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}
body{line-height:1}
ol,ul{list-style:none}
blockquote,q{quotes:none}
blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}
table{border-collapse:collapse;border-spacing:0}
body{background:#008082;font-family:sans-serif,serif,monospace;font-size:13px}
.content,.wrapper{width:800px;margin:auto;margin-top:20px;background:#bfb8bf;border:2px solid;border-color:#fff8ff #000 #000 #fff8ff;padding:2px 0}
.default_title,.post_title{padding:2px 4px 3px 4px;position:relative}
.default_title h1,.post_title h1{color:#bfb8bf;font-size:14px;font-weight:700}
.default_title img,.post_title img{float:left;width:14px;height:14px;margin:0 3px 0 0}
.post_title h1{display:inline-block}
.post_title a{color:#000}
.post_title .btn{background:#ccc;width:13px;height:11px;float:right;border:2px solid;border-color:#fff8ff #000 #000 #fff8ff}
.post_title .btn span{font-size:11px;position:relative;left:2px;top:-2px}
.post_title .btn .fa-window-minimize{font-size:10px;left:1px}
.post_title .btn .fa-window-maximize{font-size:10px;left:1px}
.post_title .btn_max{margin:0 3px 0 0}
.post_title .btn:active{width:12px;height:10px}
ul.topbar{list-style:none;padding:0 10px;margin:3px 0 3px 0}
ul.topbar li{display:inline-block;margin:0 5px 0 0}
ul.topbar a{text-decoration:none;color:#000}
.post_content,.post_list,.tag_list{background:#fff8ff;border-width:2px;border-style:ridge groove groove ridge;border-color:#7f787f #fff8ff #fff8ff #7f787f}
.post_list{width:70.2%;margin:0 auto;min-height:150px;max-height:150px;overflow-y:scroll;display:inline-block;vertical-align:top}
.post_list ul{list-style:none}
/* 默认图标模式 */
.post_list ul li{display:inline-block;margin:10px;max-width:16ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}
.post_list ul li img{display:block;margin:0 auto;margin-bottom:8px}
.post_list ul li a{text-decoration:none;color:#000}
.tag_list{width:28%;margin:0 auto;min-height:150px;max-height:150px;overflow-y:scroll;display:inline-block;vertical-align:top}
.tag_list img{height:16px;width:16px;margin:-2px 5px}
.tag_list a{text-decoration:none;color:#000}
.tag_list ul li{max-width:27ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#tag-list{background:transparent url(../img/pixel-alt.png) repeat-y 15px 0}
#tag-list li{padding:0 0 0 2px}
#tag-list li a{background:#fff8ff;display:block}
#tag-list li ul li{background:transparent url(../img/pixel-alt.png) repeat-x 0 8px;margin:4px 0 4px 13px;padding:0 0 0 20px}

/* ================= 底部状态栏（修复溢出与对齐） ================= */
.post_total {
    display: flex !important;
    justify-content: space-between !important; /* 左右两端对齐 */
    align-items: center !important;            /* 垂直居中 */
    flex-wrap: wrap !important;                /* 允许换行 */
    clear: both !important;                    /* 清除可能的浮动影响 */
    width: 100% !important;
    padding: 2px 5px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;               /* 防止子元素溢出 */
}
.post_total .left,
.post_total .right {
    border: 1px solid;
    border-color: #888 #dadada #dadada #888 !important; /* 保留 Win95 内凹边框 */
    box-sizing: border-box !important;
    padding: 2px 6px !important;               /* 内边距 */
    display: flex !important;
    align-items: center !important;
    min-height: 22px !important;               /* 用 min-height 代替固定 height */
    height: auto !important;
    background: transparent !important;
    color: #000 !important;
}
.post_total .left { width: auto !important; margin-left: 0 !important; }
.post_total .right { width: auto !important; margin-right: 0 !important; float: none !important; justify-content: flex-end !important; }
.post_total .right .win95-btn { margin: 0 !important; vertical-align: middle !important; }

.post_content{position:relative;width:98.5%;min-height:600px;max-height:600px;padding:2px;margin:0 auto;overflow-y:scroll;overflow-x:scroll}
.post_content p{line-height:150%;margin-bottom:15px}
.post_content a{color:#00f;margin-bottom:15px}
.post_content h1{font-size:20px;font-weight:700;margin:50px 0 10px 0}
.post_content h2{font-size:18px;font-weight:700;margin:25px 0 5px 0}
.post_content em{font-style:italic}
.post_content blockquote{padding:0 0 0 15px;margin:15px 5px;border-left:8px solid #000}
.post_content strong{font-weight:700}
.post_content hr{border-top:3px solid #333;border-left:0}
.post_content ul{list-style:square;margin:0 0 15px 30px}
.post_content ul li{padding:5px}
.post_content ul li ul{margin:10px 0 0 15px}
.post_content ul li ul li{padding:5px}
.post_content ol{list-style:decimal-leading-zero;margin:0 0 15px 30px}
.post_content ol li{padding:5px}
.post_content ol li ul{margin:10px 0 0 15px}
.post_content ol li ul li{padding:5px}
.post_content table,.post_content td,.post_content th{border:1px solid #222;padding:2px}
.post_content pre{margin-bottom:15px}
.post_content img {max-width:100%}
.hljs{background:#fff8ff}
.footer{font-size:12px;margin:30px 0 10px 0}
.footer p{text-align:center}
.footer p a{color:#24244a}
.donate{float:right;padding:0 3px 0 0}
.donate p{text-align:right;word-break:break-word}

/* =========================================
   自定义样式：顶部工具栏（响应式）
   ========================================= */
.topbar-new {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: wrap !important; /* 允许换行 */
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 6px 10px !important;
    gap: 6px !important;
}
.topbar-buttons {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 5px !important;
}
/* 顶部导航按钮：默认无下划线 */
/* ================= 顶部导航按钮：彻底清除默认下划线 ================= */

/* 1. 所有顶栏按钮（无论 a 还是 button，无论任何状态）默认无下划线 */
.topbar-buttons .top-btn,
.topbar-buttons .top-btn:link,
.topbar-buttons .top-btn:visited,
.topbar-buttons .top-btn:hover,
.topbar-buttons .top-btn:focus,
.topbar-buttons .top-btn:active,
.topbar-buttons a.win95-btn,
.topbar-buttons button.win95-btn,
.topbar-buttons #theme-toggle-btn {
    text-decoration: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
    outline: none !important;
    color: #000 !important;
    background-color: #c0c0c0 !important;
    padding: 3px 12px !important;
    float: none !important;
    display: inline-block !important;
    font-weight: normal !important;
}

/* 2. 兜底：非激活按钮绝对不显示下划线（哪怕主题用了 border 模拟） */
.topbar-buttons .top-btn:not(.active),
.topbar-buttons .top-btn:not(.active):link,
.topbar-buttons .top-btn:not(.active):visited,
.topbar-buttons .top-btn:not(.active):hover,
.topbar-buttons .top-btn:not(.active):focus {
    text-decoration: none !important;
    border-bottom: none !important;
    font-weight: normal !important;
}

/* 3. 只有当前激活页面对应的按钮才显示下划线 */
.topbar-buttons .top-btn.active,
.topbar-buttons .top-btn.active:link,
.topbar-buttons .top-btn.active:visited,
.topbar-buttons .top-btn.active:hover,
.topbar-buttons .top-btn.active:focus {
    text-decoration: underline !important;
    font-weight: bold !important;
    color: #000 !important;
}

/* 4. 暗色模式下的激活态 */
body.dark-mode .topbar-buttons .top-btn.active,
body.dark-mode .topbar-buttons .top-btn.active:link,
body.dark-mode .topbar-buttons .top-btn.active:visited,
body.dark-mode .topbar-buttons .top-btn.active:hover {
    color: #ffffff !important;
}

.topbar-search-box {
    display: flex !important;
    flex: 1 1 auto !important;
    min-width: 150px !important;
}
.search-form {
    margin: 0 !important;
    display: block !important;
    width: 100% !important;
}
.search-input {
    width: 100% !important;
    max-width: 250px !important;
    box-sizing: border-box !important;
    padding: 3px 6px !important;
    font-size: 12px !important;
    font-family: "MS Sans Serif", "Microsoft YaHei", sans-serif !important;
    background: #fff8ff !important;
    color: #000 !important;
    border-top: 2px solid #000 !important;
    border-left: 2px solid #000 !important;
    border-right: 2px solid #fff8ff !important;
    border-bottom: 2px solid #fff8ff !important;
    outline: none !important;
}
.search-input:focus { background: #fff !important; }

/* =========================================
   自定义样式：左侧菜单高亮与折叠
   ========================================= */
#tag-list li.active-cat,
#tag-list li.active-cat > a {
    background-color: #000080 !important;
    color: #ffffff !important;
}
#tag-list li.active-cat > a img { filter: brightness(0) invert(1) !important; }
#tag-list li.active-cat ul li a { background-color: transparent !important; color: #000 !important; }
#tag-list li.active-cat ul li a:hover { background-color: #000080 !important; color: #fff !important; }
#tag-list > li > ul > li:not(.active-cat) > a:hover { background-color: #000080 !important; color: #fff !important; }
#tag-list > li > ul > li:not(.active-cat) > a:hover img { filter: brightness(0) invert(1) !important; }

/* 分类折叠图标 */
.cat-toggle-icon {
    display: inline-block;
    width: 14px;
    height: 14px;
    line-height: 12px;
    text-align: center;
    font-weight: bold;
    font-family: monospace;
    font-size: 14px;
    border: 1px solid #000;
    background: #fff8ff;
    margin-right: 5px;
    cursor: pointer;
    color: #000;
    vertical-align: middle;
    position: relative;
    top: -1px;
}
.cat-toggle-icon:hover { background: #c0c0c0; }

/* =========================================
   自定义样式：文件列表（图标/列表模式 + 高亮）
   ========================================= */
#file-list-view { background-color: #ffffff !important; }
#file-list-view ul li a { color: #000000 !important; font-size: 13px !important; }
#file-list-view ul li.active-file { background-color: #000080 !important; }
#file-list-view ul li.active-file a { color: #ffffff !important; font-weight: bold; }
#file-list-view ul li.active-file img { filter: brightness(0) invert(1) !important; }

/* 列表模式 */
#file-list-view.list-mode ul { display: block !important; padding: 5px 10px !important; margin: 0 !important; width: 100% !important; box-sizing: border-box; }
#file-list-view.list-mode li {
    display: flex !important; align-items: center !important; width: 100% !important;
    max-width: 100% !important; float: none !important; margin: 0 0 4px 0 !important;
    padding: 2px 6px !important; box-sizing: border-box; background: transparent !important; text-align: left !important;
}
#file-list-view.list-mode li:hover { background-color: #000080 !important; }
#file-list-view.list-mode li:hover a { color: #fff !important; }
#file-list-view.list-mode li img { display: inline-block !important; width: 16px !important; height: 16px !important; margin: 0 8px 0 0 !important; flex-shrink: 0 !important; float: none !important; }
#file-list-view.list-mode li a {
    flex: 1 !important; display: block !important; white-space: nowrap !important;
    overflow: hidden !important; text-overflow: ellipsis !important; min-width: 0 !important;
    text-align: left !important; line-height: 1.4 !important; text-decoration: none; margin: 0 !important; padding: 0 !important;
}

/* =========================================
   自定义样式：分页工具条（响应式）
   ========================================= */
.page-navigator {
    list-style: none !important; padding: 8px 10px !important; margin: 12px auto !important;
    display: flex !important; flex-direction: row !important; flex-wrap: wrap !important;
    justify-content: center !important; align-items: center !important; gap: 4px !important;
    float: none !important; clear: both !important; width: 100% !important;
    box-sizing: border-box !important; font-family: "MS Sans Serif", "Microsoft YaHei", sans-serif !important;
    font-size: 12px !important; text-align: center !important;
}
div.page-navigator { display: block !important; width: 100% !important; }
ol.page-navigator { padding: 0 !important; margin: 0 !important; }
.page-navigator li { display: inline-flex !important; align-items: center !important; flex-shrink: 0 !important; }
.page-navigator a, .page-navigator span {
    display: inline-block !important; padding: 3px 8px !important; background: #c0c0c0 !important;
    color: #000 !important; text-decoration: none !important;
    border-top: 2px solid #fff !important; border-left: 2px solid #fff !important;
    border-right: 2px solid #000 !important; border-bottom: 2px solid #000 !important;
    box-shadow: 1px 1px 0 #000 !important; cursor: pointer !important; white-space: nowrap !important;
    line-height: 1.2 !important; font-size: 12px !important; text-align: center !important;
    min-width: 22px !important; box-sizing: border-box !important;
}
.page-navigator a:hover { background: #d4d0c8 !important; }
.page-navigator a:active {
    border-top: 2px solid #000 !important; border-left: 2px solid #000 !important;
    border-right: 2px solid #fff !important; border-bottom: 2px solid #fff !important;
    box-shadow: none !important; padding: 4px 7px 2px 9px !important;
}
.page-navigator .current a, .page-navigator .current span {
    background: #a0a0a0 !important; border-top: 2px solid #000 !important;
    border-left: 2px solid #000 !important; border-right: 2px solid #fff !important;
    border-bottom: 2px solid #fff !important; box-shadow: none !important;
    font-weight: bold !important; padding: 4px 7px 2px 9px !important;
}
.page-navigator li.disabled span { border: none !important; box-shadow: none !important; background: transparent !important; padding: 3px 2px !important; min-width: auto !important; }

/* 底部状态栏按钮样式（状态栏布局已在上面修复） */
.win95-btn {
    background: #c0c0c0; border-top: 2px solid #fff; border-left: 2px solid #fff;
    border-right: 2px solid #000; border-bottom: 2px solid #000; box-shadow: 1px 1px 0 #000;
    padding: 2px 8px; cursor: pointer; font-family: "MS Sans Serif", "Microsoft YaHei", sans-serif;
    font-size: 11px; line-height: 1; margin: 0; outline: none; color: #000;
}
.win95-btn:active {
    border-top: 2px solid #000; border-left: 2px solid #000; border-right: 2px solid #fff;
    border-bottom: 2px solid #fff; box-shadow: none; padding: 3px 7px 1px 9px;
}

/* =========================================
   自定义样式：文章底部翻页工具栏
   ========================================= */
.post-navigation {
    display: flex; justify-content: space-between; align-items: center;
    max-width: 800px; width: 100%; margin: 20px auto; padding: 10px;
    background: #bfb8bf; border-top: 2px solid #fff8ff; border-left: 2px solid #fff8ff;
    border-right: 2px solid #000; border-bottom: 2px solid #000;
    box-sizing: border-box; gap: 10px;
}
.post-navigation .win95-btn {
    max-width: 45%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    font-size: 12px; text-decoration: none !important; display: inline-block;
    box-sizing: border-box; padding: 4px 10px !important; background: #c0c0c0 !important;
    color: #000 !important; border-top: 2px solid #fff !important; border-left: 2px solid #fff !important;
    border-right: 2px solid #000 !important; border-bottom: 2px solid #000 !important;
    box-shadow: 1px 1px 0 #000 !important; cursor: pointer;
}
.post-navigation .win95-btn:active {
    border-top: 2px solid #000 !important; border-left: 2px solid #000 !important;
    border-right: 2px solid #fff !important; border-bottom: 2px solid #fff !important;
    box-shadow: none !important; padding: 5px 9px 3px 11px !important;
}
.post-navigation .win95-btn.disabled {
    color: #808080 !important; cursor: default; background: #d4d0c8 !important;
    border-color: #fff #000 #000 #fff !important; box-shadow: none !important;
}

/* =========================================
   自定义样式：响应式媒体查询补充
   ========================================= */
@media only screen and (max-width:900px){.content{width:90%}}
@media only screen and (max-width:700px){.content{width:90%}.post_content{width:98%}}
@media only screen and (max-width:400px){.post_content{width:97%}}

@media only screen and (max-width:810px){
    .wrapper{width:90%}
    .page-navigator { gap: 3px !important; padding: 6px 6px !important; margin: 10px auto !important; font-size: 11px !important; }
    .page-navigator a, .page-navigator span { padding: 3px 6px !important; font-size: 11px !important; min-width: 20px !important; }
}
@media only screen and (max-width:750px){
    .tag_list{width:99%}
    .post_list{width:99%;float:left}
}
@media only screen and (max-width:700px) {
    .topbar-new { flex-wrap: wrap !important; }
    .topbar-search-box { width: 100% !important; margin-top: 5px !important; }
    .search-input { max-width: 100% !important; }
    .post-navigation { width: 90%; flex-direction: column; gap: 6px; padding: 8px 6px; }
    .post-navigation .win95-btn { max-width: 100%; width: 100%; text-align: center; }
}
@media only screen and (max-width:610px){
    .tag_list{width:98.7%}
    .post_list{width:98.7%;float:left}
}
@media only screen and (max-width:600px) {
    .page-navigator {
        display: flex !important; flex-direction: row !important; flex-wrap: wrap !important;
        justify-content: center !important; align-items: center !important; gap: 2px !important;
        padding: 5px 4px !important; margin: 8px auto !important; width: 100% !important;
        float: none !important; text-align: center !important; font-size: 11px !important;
    }
    .page-navigator li { flex-shrink: 0 !important; margin: 0 !important; padding: 0 !important; float: none !important; }
    .page-navigator a, .page-navigator span { padding: 3px 5px !important; font-size: 11px !important; min-width: 18px !important; white-space: nowrap !important; }
    .page-navigator .current a, .page-navigator .current span { padding: 4px 5px 2px 6px !important; }
}
@media only screen and (max-width:400px) {
    .post-navigation { width: 97%; }
    .page-navigator { gap: 1px !important; padding: 4px 2px !important; font-size: 10px !important; }
    .page-navigator a, .page-navigator span { padding: 2px 4px !important; font-size: 10px !important; min-width: 16px !important; }
    .page-navigator li.disabled span { padding: 2px 0 !important; font-size: 10px !important; }
}
/* 统一覆盖所有媒体查询中的硬编码宽度 */
@media only screen and (max-width: 810px) {
    .post_total .left, .post_total .right { width: auto !important; float: none !important; }
}

/* =========================================
   自定义样式：暗色主题（Dark Mode）
   ========================================= */
body.dark-mode { background-color: #121212 !important; color: #e0e0e0 !important; }
body.dark-mode .wrapper, body.dark-mode .content { background-color: #2b2b2b !important; border-color: #555 #111 #111 #555 !important; }

/* 顶部工具栏与按钮 */
body.dark-mode .topbar-new { background-color: #333 !important; border-bottom-color: #111 !important; }
body.dark-mode .win95-btn { background-color: #444 !important; color: #fff !important; border-color: #888 #222 #222 #888 !important; }
body.dark-mode .win95-btn:active { border-color: #222 #888 #888 #222 !important; }
body.dark-mode .search-input { background-color: #222 !important; color: #fff !important; border-color: #111 #555 #555 #111 !important; }

/* 列表区域强制暗色 */
body.dark-mode .tag_list, body.dark-mode .post_list, body.dark-mode #file-list-view {
    background: #1e1e1e !important; background-color: #1e1e1e !important;
    border-color: #555 #111 #111 #555 !important; color: #e0e0e0 !important;
}
body.dark-mode #file-list-view ul li, body.dark-mode .post_list ul li { background-color: transparent !important; }
body.dark-mode #tag-list li a, body.dark-mode .post_list ul li a, body.dark-mode #file-list-view ul li a { color: #e0e0e0 !important; background-color: transparent !important; }

/* 高亮选中状态 */
body.dark-mode #tag-list li.active-cat > a, body.dark-mode #tag-list li a:hover,
body.dark-mode .post_list ul li.active-file, body.dark-mode #file-list-view ul li.active-file { background-color: #0050a0 !important; }
body.dark-mode #tag-list li.active-cat > a, body.dark-mode #tag-list li a:hover,
body.dark-mode .post_list ul li.active-file a, body.dark-mode #file-list-view ul li.active-file a { color: #ffffff !important; }
body.dark-mode #tag-list li.active-cat > a img, body.dark-mode #tag-list li a:hover img,
body.dark-mode .post_list ul li.active-file img, body.dark-mode #file-list-view ul li.active-file img { filter: brightness(0) invert(1) !important; }

/* 正文与翻页工具栏 */
body.dark-mode .post_content { background-color: #1e1e1e !important; color: #e0e0e0 !important; }
body.dark-mode .post_content p, body.dark-mode .post_content div { color: #e0e0e0 !important; }
body.dark-mode .post-navigation { background-color: #333 !important; border-color: #555 #111 #111 #555 !important; }
body.dark-mode .post_total .left, body.dark-mode .post_total .right { background-color: #333 !important; color: #e0e0e0 !important; border-color: #555 #111 #111 #555 !important; }

/* 分页按钮 */
body.dark-mode .page-navigator a, body.dark-mode .page-navigator span {
    background-color: #444 !important; color: #fff !important; border-color: #888 #222 #222 #888 !important;
}
body.dark-mode .page-navigator .current a, body.dark-mode .page-navigator .current span {
    background-color: #0050a0 !important; border-color: #222 #888 #888 #222 !important;
}
/* ================= 顶部导航按钮：终极修复 ================= */

/* 1. 覆盖所有伪类状态（link / visited / hover / focus / active），
      彻底清除下划线、边框、焦点轮廓 */
.topbar-buttons .top-btn,
.topbar-buttons .top-btn:link,
.topbar-buttons .top-btn:visited,
.topbar-buttons .top-btn:hover,
.topbar-buttons .top-btn:focus,
.topbar-buttons .top-btn:focus-visible,
.topbar-buttons .top-btn:active,
.topbar-buttons a.win95-btn,
.topbar-buttons a.win95-btn:link,
.topbar-buttons a.win95-btn:visited,
.topbar-buttons a.win95-btn:hover,
.topbar-buttons a.win95-btn:focus,
.topbar-buttons a.win95-btn:focus-visible,
.topbar-buttons a.win95-btn:active,
.topbar-buttons button.win95-btn,
.topbar-buttons button.win95-btn:hover,
.topbar-buttons button.win95-btn:focus,
.topbar-buttons button.win95-btn:focus-visible,
.topbar-buttons button.win95-btn:active {
    text-decoration: none !important;
    border-bottom: none !important;
    outline: none !important;
    font-weight: normal !important;
    color: #000 !important;
    background-color: #c0c0c0 !important;
    /* Win95 按钮凸起立体边框 */
    border-top: 2px solid #fff !important;
    border-left: 2px solid #fff !important;
    border-right: 2px solid #000 !important;
    border-bottom: 2px solid #000 !important;
    box-shadow: 1px 1px 0 #000 !important;
    padding: 3px 12px !important;
    float: none !important;
    display: inline-block !important;
}

/* 2. hover 状态：微调背景，不影响立体边框 */
.topbar-buttons .top-btn:hover,
.topbar-buttons a.win95-btn:hover,
.topbar-buttons button.win95-btn:hover {
    background-color: #d4d0c8 !important;
}

/* 3. active（点击瞬间）状态：保持凹陷效果，但仅限点击瞬间 */
.topbar-buttons .top-btn:active,
.topbar-buttons a.win95-btn:active,
.topbar-buttons button.win95-btn:active {
    border-top: 2px solid #000 !important;
    border-left: 2px solid #000 !important;
    border-right: 2px solid #fff !important;
    border-bottom: 2px solid #fff !important;
    box-shadow: none !important;
    padding: 4px 11px 2px 13px !important;
}

/* 4. focus 状态：明确恢复为凸起（避免点击后停留焦点导致按钮看起来一直凹着） */
.topbar-buttons .top-btn:focus,
.topbar-buttons .top-btn:focus-visible,
.topbar-buttons a.win95-btn:focus,
.topbar-buttons a.win95-btn:focus-visible,
.topbar-buttons button.win95-btn:focus,
.topbar-buttons button.win95-btn:focus-visible {
    border-top: 2px solid #fff !important;
    border-left: 2px solid #fff !important;
    border-right: 2px solid #000 !important;
    border-bottom: 2px solid #000 !important;
    box-shadow: 1px 1px 0 #000 !important;
    padding: 3px 12px !important;
    outline: none !important;
}
 
/* 5. 只有当前激活页面的按钮才加下划线 */
.topbar-buttons .top-btn.active,
.topbar-buttons .top-btn.active:link,
.topbar-buttons .top-btn.active:visited,
.topbar-buttons .top-btn.active:hover,
.topbar-buttons .top-btn.active:focus,
.topbar-buttons .top-btn.active:focus-visible {
    text-decoration: underline !important;
    font-weight: bold !important;
    color: #000 !important;
}

/* 6. 暗色模式下的激活态 */
body.dark-mode .topbar-buttons .top-btn.active,
body.dark-mode .topbar-buttons .top-btn.active:hover,
body.dark-mode .topbar-buttons .top-btn.active:focus {
    color: #ffffff !important;
}

/* ================= 列表高度智能适配 ================= */

/* 1. 默认状态：高度自适应内容，最多撑到约 20 条的高度 */
.tag_list, 
.post_list {
    height: auto !important;        /* 核心修复：让高度由内容自动撑开，去掉底部留白 */
    max-height: 620px !important;   /* 限制最大高度，超过约20条时出现滚动条 */
    transition: max-height 0.3s ease !important;
    box-sizing: border-box !important;
}

/* 2. 阅读模式：打开文章内容时，收缩回约 5 条记录的高度 */
body.reading-mode .tag_list, 
body.reading-mode .post_list {
    height: 160px !important;       /* 阅读模式下，强制固定为矮窗 */
    max-height: 160px !important;
}

/* ================= 阅读背景色选择球 ================= */
.reading-theme-picker {
    display: flex !important;
    justify-content: center !important;
    gap: 12px !important;
    padding: 12px 0 !important;
    background: transparent !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.theme-ball {
    display: inline-block !important;
    width: 24px !important;
    height: 24px !important;
    border-radius: 50% !important;
    border: 1px solid #777 !important;
    box-shadow: inset -2px -2px 4px rgba(0,0,0,0.2), inset 2px 2px 4px rgba(255,255,255,0.5) !important;
    cursor: pointer !important;
    transition: transform 0.2s !important;
}

.theme-ball:hover {
    transform: scale(1.15) !important;
    border-color: #000 !important;
}

/* 暗色模式下隐藏色球 */
body.dark-mode .reading-theme-picker {
    display: none !important;
}