/*
 * WebStack-zmt 深色主题定制与覆盖
 * 追加加载（排在 zmt 全部样式之后），只覆盖仿制需要的细节
 */

/* ===== 深色 hero 搜索区（无大图） ===== */
.zmt-dark-hero {
    background: var(--body-bg-color);
    background-image: none;
    min-height: 0;
}
.zmt-dark-hero .search-container {
    padding-top: 2.2rem;
    padding-bottom: .6rem;
}
.zmt-dark-hero .big-search {
    max-width: var(--star-search-width, 720px);
}
.io-black-mode .zmt-dark-hero .search-box-big {
    background: var(--main-bg-color);
    border: 1px solid rgba(255,255,255,.06);
    box-shadow: 0 10px 30px rgba(0,0,0,.35);
}
.zmt-dark-hero .hot-word {
    color: var(--muted-color2, #a6a8ab);
}
.zmt-dark-hero .hot-word:hover {
    color: var(--main-color, #fff);
}
/* ===== 板块标题：更多 > 文字样式 ===== */
.btn-more.btn-outline-primary {
    border: none;
    background: transparent;
    color: var(--muted-color2, #a6a8ab);
    padding: .2rem .4rem;
    font-size: .9rem;
}
.btn-more.btn-outline-primary:hover {
    color: var(--main-color, #fff);
    background: transparent;
}
.content-card .card-title {
    color: var(--main-color, #b4b8bf);
}
.content-card .card-title .badge {
    background: var(--muted-bg-color, #24262a);
    color: var(--muted-color2, #a6a8ab);
}

/* ===== 站点卡：对齐原站 style-sites-default 横排（圆形图标左+角标+标题+描述） ===== */
.io-black-mode .posts-item.sites-item {
    background: var(--main-bg-color, #2D2E2F);
    border: 1px solid rgba(255,255,255,.05);
    box-shadow: none;
    border-radius: var(--theme-border-radius, 12px);
    padding: 8px 10px;
    transition: transform .2s ease, border-color .2s ease, background-color .2s ease;
}
.io-black-mode .posts-item.sites-item:hover {
    border-color: rgba(255,255,255,.14);
    background: #343637;
    transform: translateY(-2px);
}
.posts-item.sites-item .sites-body {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    width: 100%;
}
.posts-item.sites-item .item-header {
    margin-right: 10px;
    flex-shrink: 0;
}
.posts-item.sites-item .item-media {
    width: 42px;
    height: 0;
    padding-bottom: 100%;
    border-radius: 40px;
    position: relative;
    overflow: unset;
    background: transparent;
}
.posts-item.sites-item .item-media .blur-img-bg {
    position: absolute;
    width: 120%;
    height: 120%;
    left: -10%;
    top: -10%;
    border-radius: 100%;
    background-size: cover;
    filter: blur(10px) opacity(70%);
}
.io-black-mode .posts-item.sites-item .item-media .item-image {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 40px;
    height: 100%;
    width: 100%;
    background: var(--muted-bg-color, #24262a);
    border: 1px solid rgba(255,255,255,.08);
}
.posts-item.sites-item .item-media .item-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.io-black-mode .posts-item.sites-item .item-title {
    font-size: .88rem;
    margin: 0;
    color: #e8e9ea;
    font-weight: 600;
}
.posts-item.sites-item .item-title b {
    font-weight: 600;
}
.io-black-mode .posts-item.sites-item .item-title a {
    color: #e8e9ea;
}
.posts-item.sites-item .item-body {
    min-width: 0;
    padding-left: 0;
}
.posts-item.sites-item .item-body .text-muted {
    color: var(--muted-color, #73757a);
    font-size: .72rem;
    margin-top: 1px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.posts-item.sites-item {
    position: relative;
}
/* ===== 侧栏深色微调 ===== */
.aside-card .aside-a {
    color: var(--muted-color2, #a6a8ab);
    border-radius: var(--theme-border-radius-sm, 10px);
}
.aside-card .aside-a:hover {
    color: var(--main-color, #fff);
    background: var(--muted-bg-color, #24262a);
}
.aside-card .aside-site-name {
    color: var(--main-color, #b4b8bf);
}
/* ===== 详情页深色微调 ===== */
.detail-card .article-body,
.detail-card .site-content {
    color: var(--main-color, #b4b8bf);
}
.detail-card .breadcrumb-item a,
.detail-card .breadcrumb-item.active {
    color: var(--muted-color2, #a6a8ab);
}
.detail-card .breadcrumb-item a:hover {
    color: var(--main-color, #fff);
}

/* ===== 深色下按钮与输入框 ===== */
.io-black-mode .btn-outline-light {
    color: #d5d6d7;
    border-color: #4a4d50;
}
.io-black-mode .btn-outline-light:hover {
    background: #4a4d50;
    color: #fff;
}

/* ===== 深色下公告条 ===== */
.io-black-mode .bulletin-big.card {
    background: var(--main-bg-color, #2D2E2F);
    border: 1px solid rgba(255,255,255,.05);
}
/* ===== 侧栏宽度对齐原站：展开 100px、收起 60px ===== */
.container-body {
    --main-aside-basis-width: 100px;
    --main-aside-width: 100px;
}
/* 100px 紧凑横排：收窄内边距、缩小字号，保证中文分类名单行 */
.aside-card .star-aside-logo-head {
    justify-content: center;
    padding: 12px 6px;
}
.aside-card .aside-site-name {
    display: none;
}
.aside-card .aside-ul .aside-item {
    position: relative;
}
.aside-card .aside-a {
    justify-content: flex-start;
    padding: 7px 6px;
    font-size: .82rem;
    white-space: nowrap;
}
.aside-card .aside-a i {
    margin-right: 4px !important;
    font-size: 13px;
    text-align: center;
    width: 16px;
}
.aside-card .aside-a .fa-angle-down {
    margin-left: auto !important;
    font-size: 10px;
}
.aside-card .aside-bottom {
    padding: 6px;
}
.aside-card .aside-bottom .aside-btn,
.aside-card .aside-contribute .btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 12px;
    padding: 6px 2px;
    white-space: normal;
    line-height: 1.3;
}
.aside-card .aside-bottom .aside-btn i,
.aside-card .aside-contribute .btn i {
    margin: 0 0 4px !important;
    font-size: 16px;
}
.aside-card .aside-contribute {
    padding: 0 6px 8px;
}
/* 子分类：右侧浮层（避免 100px 内挤不下） */
.io-black-mode .aside-card .aside-sub {
    position: absolute;
    left: 100%;
    top: 0;
    min-width: 168px;
    background: var(--main-bg-color, #2D2E2F);
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 10px;
    padding: 8px;
    box-shadow: 0 10px 30px rgba(0,0,0,.45);
    z-index: 60;
}
.aside-card .aside-sub li {
    white-space: nowrap;
}
.aside-card .aside-sub li a {
    display: block;
    padding: 5px 8px;
    font-size: .82rem;
    border-radius: 6px;
    color: var(--muted-color2, #a6a8ab);
}
.aside-card .aside-sub li a:hover {
    color: var(--main-color, #fff);
    background: var(--muted-bg-color, #24262a);
}
/* ===== 顶栏强布局：菜单靠左、登录区贴右、绝不换行 ===== */
.header-nav .switch-container {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    justify-content: space-between;
    min-width: 0;
    /* 顶栏避开左侧 fixed 侧栏：用 padding-left（容器内缩，不产生右溢，登录区不被挤出视口） */
    margin-left: 0;
    padding-left: calc(15px + var(--main-aside-width, 100px));
}
.header-nav .navbar-header-menu {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    flex-shrink: 0;
    min-width: 0;
}
.header-nav .header-tools {
    display: flex !important;
    align-items: center;
    flex-wrap: nowrap;
    flex-shrink: 0;
    flex: 0 0 auto;
    margin-left: auto;
    white-space: nowrap;
}
.header-nav .header-tools li {
    flex-shrink: 0;
    white-space: nowrap;
}
.header-nav .navbar-header {
    flex-wrap: nowrap;
    flex-shrink: 0;
    display: flex;
    align-items: center;
}
.header-nav .navbar-header .menu-item {
    flex-shrink: 0;
    white-space: nowrap;
}
/* 未登录图标按钮（对齐原站 icon-user） */
.header-nav .nav-login-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    color: var(--muted-color2, #a6a8ab);
}
.header-nav .nav-login-link:hover {
    color: var(--main-color, #fff);
    background: var(--muted-bg-color, #24262a);
}
.header-nav .nav-login-link .fa-user-o {
    font-size: 18px;
}
/* 登录态用户框：紧凑化（覆盖主题 .header-tools .menu-user-box min-width:278px 导致的顶栏被撑破） */
.header-nav .header-tools .menu-user-box {
    min-width: 0;
    max-width: none;
    height: auto;
}
.header-nav .header-tools .menu-user-box > a {
    display: inline-flex;
    align-items: center;
    height: 40px;
    padding: 0 8px;
    border-radius: 40px;
    white-space: nowrap;
    width: auto;
    max-width: none;
    overflow: visible;
}
.header-nav .header-tools .menu-user-box > a:hover {
    background: var(--muted-bg-color, #24262a);
}
.header-nav .header-tools .menu-user-box > a .avatar-img {
    border-radius: 50%;
    flex-shrink: 0;
}
/* 用户名强制完整显示（不依赖 Bootstrap 断点，不被容器裁剪） */
.header-nav .header-tools .menu-user-box > a .text-xs {
    display: inline-block !important;
    margin-left: 6px;
    font-size: .78rem;
    color: var(--muted-color2, #a6a8ab);
    white-space: nowrap;
    overflow: visible !important;
    max-width: none !important;
    text-overflow: clip !important;
    flex-shrink: 0;
    line-height: 1;
}
.io-black-mode .header-nav .header-tools .menu-user-box .sub-menu {
    margin-top: 10px;
    right: 0;
    left: auto;
    min-width: 140px;
    padding: 6px;
    border: 1px solid rgba(255,255,255,.08);
}
/* 登录区整体往左移，不贴右边缘 */
.header-nav .header-tools {
    margin-right: 14px;
}
/* ===== 搜索框强布局：引擎图标/输入框/搜索按钮严格单行 ===== */
.zmt-dark-hero .star-search-elements {
    flex-wrap: nowrap;
    align-items: center;
}
.zmt-dark-hero .search-icon-wrapper {
    flex-shrink: 0;
    flex: 0 0 auto;
    min-width: 0;
}
.zmt-dark-hero .engine-icon {
    flex-shrink: 0;
}
.zmt-dark-hero #keyword {
    flex: 1 1 auto;
    min-width: 0;
    width: auto;
}
.zmt-dark-hero .search-btn {
    flex-shrink: 0;
    flex: 0 0 auto;
    white-space: nowrap;
}
/* ===== 侧栏收起态（aside-min 60px 极简模式，对齐原站） ===== */
/* 顶部圆形 Logo（对齐原站橙色圆形图标）：方形折叠 logo，圆形裁剪不变形 */
.aside-card .star-aside-logo-head {
    justify-content: center;
    padding: 14px 8px 10px;
}
.io-black-mode .aside-card .aside-logo-round {
    width: 44px !important;
    height: 44px !important;
    max-width: 44px !important;
    max-height: 44px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    background: var(--zmt-accent);
    padding: 8px !important;
    box-sizing: border-box !important;
    box-shadow: 0 4px 12px rgba(var(--zmt-accent-rgb),.35);
}
/* 搜索结果页：返回首页按钮 */
.io-black-mode .zmt-back-btn {
    background: rgba(255,255,255,.08);
    color: #fff;
    border: 1px solid rgba(255,255,255,.15);
    border-radius: 10px;
    font-size: 12px;
    padding: 6px 12px;
    white-space: nowrap;
}
.io-black-mode .zmt-back-btn:hover {
    background: rgba(255,255,255,.15);
    color: var(--zmt-accent);
}
/* 侧栏站内搜索框（logo 下方，100px 竖排风格，放大镜按钮） */
.aside-card .aside-search {
    padding: 20px 5px;
}
.io-black-mode .aside-card .aside-search-form {
    display: flex;
    align-items: center;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 10px;
    background: rgba(255,255,255,.06);
    overflow: hidden;
    transition: .2s;
}
.io-black-mode .aside-card .aside-search-form:focus-within {
    border-color: var(--zmt-accent);
    background: rgba(255,255,255,.1);
}
.aside-card .aside-search-form input {
    flex: 1;
    min-width: 0;
    background: transparent;
    border: 0;
    outline: 0;
    color: #fff;
    font-size: 12px;
    padding: 6px 2px 6px 8px;
    line-height: 1;
}
.io-black-mode .aside-card .aside-search-form input::placeholder {
    color: rgba(255,255,255,.45);
}
.io-black-mode .aside-card .aside-search-form button {
    background: transparent;
    border: 0;
    color: rgba(255,255,255,.75);
    padding: 6px 8px;
    font-size: 13px;
    line-height: 1;
    cursor: pointer;
}
.io-black-mode .aside-card .aside-search-form button:hover {
    color: var(--zmt-accent);
}
/* 收起态隐藏搜索框（仅按钮控制收起/展开） */
.aside-min .aside-body .aside-search {
    display: none;
}
/* 侧栏栏目项：100px 竖排（图标上、文字下、居中，对齐原站） */
.io-black-mode .aside-card .aside-ul .aside-item > .aside-a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 8px 2px;
    margin: 2px 4px;
    border-radius: 10px;
    color: rgba(255,255,255,.92);
    font-size: 12px;
    text-align: center;
    line-height: 1.3;
    transition: .2s;
}
.io-black-mode .aside-card .aside-ul .aside-item > .aside-a:hover {
    background: rgba(255,255,255,.08);
    color: #fff;
}
.io-black-mode .aside-card .aside-ul .aside-item > .aside-a i {
    width: auto;
    text-align: center;
    font-size: 18px;
    margin: 0 0 4px !important;
    color: var(--zmt-accent);
}
/* 栏目图标多彩配色（对齐原站：每个栏目不同彩色图标） */
.io-black-mode .aside-card .aside-ul .aside-item:nth-child(3n+2) > .aside-a i { color: #5b8ff9; }
.io-black-mode .aside-card .aside-ul .aside-item:nth-child(3n+3) > .aside-a i { color: var(--zmt-accent); }
.io-black-mode .aside-card .aside-ul .aside-item:nth-child(3n+4) > .aside-a i { color: #36c2cf; }
.io-black-mode .aside-card .aside-ul .aside-item:nth-child(3n+5) > .aside-a i { color: #61dd9f; }
.io-black-mode .aside-card .aside-ul .aside-item:nth-child(3n+6) > .aside-a i { color: #f978a8; }
.io-black-mode .aside-card .aside-ul .aside-item:nth-child(3n+7) > .aside-a i { color: #a77bfe; }
.io-black-mode .aside-card .aside-ul .aside-item:nth-child(3n+8) > .aside-a i { color: #5b8ff9; }
.io-black-mode .aside-card .aside-ul .aside-item.has-sub > .aside-a .fa-angle-down {
    color: rgba(255,255,255,.45);
}
/* 一级栏目展开箭头（已弃用：侧栏仅展示一级栏目） */
/* 收起态：文字彻底隐藏（不占位）、图标居中、logo 圆形不变形 */
.aside-min .aside-body .aside-a span {
    display: none !important;
}
.aside-min .aside-body .aside-a i {
    margin: 0 !important;
}
.aside-min .aside-body .aside-logo-round {
    width: 36px !important;
    height: 36px !important;
    max-width: 36px !important;
    max-height: 36px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    padding: 6px !important;
    box-sizing: border-box !important;
    flex-shrink: 0;
}
/* 宽度收窄：硬性覆盖（不依赖媒体查询/后加载覆盖，任何视口都生效） */
.aside-min
.container-body {
    --main-aside-width: 60px;
    --main-aside-basis-width: 60px;
}
.aside-min .aside-body {
    width: 60px !important;
    min-width: 0 !important;
}
.aside-min .aside-body .aside-a {
    justify-content: center;
    padding: 10px 0;
}
.aside-min .aside-body .aside-a .fa-angle-down {
    display: none;
}
.aside-min .aside-body .star-aside-logo-head {
    justify-content: center;
    padding: 16px 0;
}
.aside-min .aside-body .aside-bottom {
    padding: 8px 0;
}
.aside-min .aside-body .aside-contribute {
    padding: 0 8px 8px;
}
.aside-min .aside-body .aside-btn,
.aside-min .aside-body .aside-contribute .btn {
    font-size: 0;
    padding: 8px 0;
}
.aside-min .aside-body .aside-btn i,
.aside-min .aside-body .aside-contribute .btn i {
    font-size: 14px;
    margin: 0 !important;
}
/* hover 全宽展开由 JS 移除 aside-min 实现（无需 hover-show 规则） */

/* ============ 模块化：隐藏左侧菜单 ============ */
body.zmt-no-aside #layout_aside,
body.zmt-no-aside .ioui-aside {
    display: none !important;
}
body.zmt-no-aside .zmt-main {
    margin-left: 0 !important;
}
body.zmt-no-aside .ioui-content {
    max-width: 1280px !important;
    margin: 0 auto !important;
}
/* 通栏（栏目页）时顶栏不再给侧栏让位，内容区无侧栏偏移 */
body.zmt-no-aside .header-nav .switch-container {
    padding-left: 15px;
}
body.zmt-no-aside .ioui-main {
    padding-left: 0 !important;
}
body.zmt-no-aside .container-body .switch-container.container {
    padding-left: 15px;
    padding-right: 15px;
}
/* 后台关闭侧栏模块时，内容区跟随释放空间加宽（二级栏目页仍保持原宽度） */
body.zmt-aside-off .ioui-content {
    max-width: var(--home-max-width) !important;
}

/* 频道页（一级栏目）：无顶部搜索 hero，内容区与固定顶栏留出呼吸间距 */
.zmt-channel-main .ioui-content {
    padding-top: 14px;
}

/* ============ 广告位 ============ */
.zmt-ad {
    margin-bottom: 16px;
    border-radius: var(--main-radius, 12px);
    overflow: hidden;
    background: var(--main-bg-color, #2D2E2F);
}
.zmt-ad-item {
    display: block;
    text-align: center;
    line-height: 0;
}
.zmt-ad-item img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: var(--main-radius, 12px);
}
.zmt-ad-text {
    display: block;
    padding: 14px;
    color: var(--muted-2-color, #9aa0a6);
    font-size: .875rem;
    line-height: 1.5;
    text-align: center;
}
.zmt-ad-home_top img,
.zmt-ad-home_between img,
.zmt-ad-cat_top img,
.zmt-ad-single_top img,
.zmt-ad-single_bottom img {
    max-height: 120px;
    object-fit: cover;
}

/* 板块标题行：顶部间距 20px（替换原 mt-4 24px），hover 横线置于标题下方 */

.tab-to-more::before {
    top: auto;
    bottom: 0;
}

/* ============ 首页幻灯 ============ */
.zmt-slider-wrap {
    position: relative;
    margin: 0 auto 0;
    max-width: 1280px;
    padding: 0 16px;
}
/* PC 端与下方内容区对齐：左缘 = 15px + 侧栏宽（同 .ioui-main），右缘 = 10px（同 .ioui-content padding） */
@media screen and (min-width: 768px) {
    .zmt-slider-wrap {
        margin: 0 10px 0 calc(15px + var(--main-aside-width));
        max-width: none;
        padding: 0;
    }
}
.zmt-home-slider {
    border-radius: var(--main-radius, 12px);
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0,0,0,.25);
}
.zmt-home-slider .swiper-slide {
    position: relative;
    border-radius: var(--main-radius, 12px);
    overflow: hidden;
}
.zmt-slider-item {
    position: relative;
    border-radius: var(--main-radius, 12px);
    overflow: hidden;
    line-height: 0;
    display: block;
}
.zmt-slider-item img {
    width: 100%;
    display: block;
}
.zmt-slider-item .zmt-slider-title {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 22px 18px 12px;
    font-size: .95rem;
    color: #fff;
    background: linear-gradient(180deg, transparent, rgba(0,0,0,.72));
    text-align: left;
    line-height: 1.4;
}
.zmt-slider-big img { height: 320px; object-fit: cover; }
.zmt-slider-small img { height: 156px; object-fit: cover; }
.zmt-slider-small .zmt-slider-title {
    padding: 16px 12px 8px;
    font-size: .82rem;
}
.zmt-slider-grid { margin: 0; }
.zmt-slider-grid > [class*="col-"] { padding: 0; }
.zmt-slider-grid > [class*="col-"]:not(:last-child),
.zmt-slider-grid .row.g-2 > [class*="col-"]:not(:last-child) {
    padding-right: 8px;
}
.zmt-slider-grid .row.g-2 > [class*="col-"] { padding-bottom: 8px; }
.zmt-slider-pagination {
    position: absolute;
    bottom: 10px !important;
    right: 14px !important;
    left: auto !important;
    width: auto !important;
    text-align: right;
}
.zmt-slider-pagination .swiper-pagination-bullet {
    background: rgba(255,255,255,.7);
    opacity: 1;
}
.zmt-slider-pagination .swiper-pagination-bullet-active {
    background: #fff;
}
@media (max-width: 767.98px) {
    .zmt-slider-big img { height: 200px; }
    .zmt-slider-small img { height: 120px; }
    .zmt-slider-small .zmt-slider-title { font-size: .72rem; padding: 12px 8px 6px; }
}
/* ============ 顶栏首页按钮：强制可见完整（图标+文字） ============ */
/* 覆盖任何将首项圆形化/隐藏/改色的规则，确保"首页"始终显示在热榜左侧 */
.header-nav .navbar-header > .menu-item:first-child > a {
    display: inline-flex !important;
    align-items: center;
    background: transparent !important;
    border-radius: 0 !important;
    padding: 15px 8px;
    color: var(--main-color, #fff) !important;
    width: auto !important;
    height: auto !important;
    min-width: 0;
    white-space: nowrap;
}
.header-nav .navbar-header > .menu-item:first-child > a i {
    color: inherit !important;
    font-size: 14px;
    width: auto !important;
    height: auto !important;
    line-height: 1;
    background: transparent !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin-right: 4px;
}
.header-nav .navbar-header > .menu-item:first-child > a span {
    display: inline !important;
    color: inherit !important;
    margin-left: 0;
    font-size: inherit;
}

/* ============ 全站图标随机色（深浅主题双调色板，规避颜色冲突不可见） ============ */
/* 浅色主题：深色系图标 */
.zmt-ic-1 { color: #e03131 !important; }
.zmt-ic-2 { color: #e8590c !important; }
.zmt-ic-3 { color: #f08c00 !important; }
.zmt-ic-4 { color: #2f9e44 !important; }
.zmt-ic-5 { color: #0c8599 !important; }
.zmt-ic-6 { color: #1c7ed6 !important; }
.zmt-ic-7 { color: #7048e8 !important; }
.zmt-ic-8 { color: #d6336c !important; }
/* 深色主题：亮色系图标（高对比，深底可见） */
.io-black-mode .zmt-ic-1 { color: #ff6b6b !important; }
.io-black-mode .zmt-ic-2 { color: #ffa94d !important; }
.io-black-mode .zmt-ic-3 { color: #ffd43b !important; }
.io-black-mode .zmt-ic-4 { color: #69db7c !important; }
.io-black-mode .zmt-ic-5 { color: #4dd4e0 !important; }
.io-black-mode .zmt-ic-6 { color: #74a6ff !important; }
.io-black-mode .zmt-ic-7 { color: #b197fc !important; }
.io-black-mode .zmt-ic-8 { color: #f783ac !important; }

/* ============ 浅色主题适配（body 无 io-black-mode 时） ============ */
body:not(.io-black-mode) .zmt-dark-hero .search-box-big {
    background: var(--main-bg-color, #fff);
    border: 1px solid rgba(0,0,0,.1);
    box-shadow: 0 10px 30px rgba(0,0,0,.06);
}
body:not(.io-black-mode) .posts-item.sites-item {
    background: var(--main-bg-color, #fff);
    border: 1px solid rgba(0,0,0,.08);
    box-shadow: none;
    border-radius: var(--theme-border-radius, 12px);
    padding: 8px 10px;
    transition: transform .2s ease, border-color .2s ease, background-color .2s ease;
}
body:not(.io-black-mode) .posts-item.sites-item:hover {
    border-color: rgba(0,0,0,.16);
    background: #f6f7f8;
    transform: translateY(-2px);
}
body:not(.io-black-mode) .posts-item.sites-item .item-media .item-image {
    background: #f2f3f5;
    border: 1px solid rgba(0,0,0,.08);
}
body:not(.io-black-mode) .posts-item.sites-item .item-title,
body:not(.io-black-mode) .posts-item.sites-item .item-title a {
    color: #333;
}
body:not(.io-black-mode) .posts-item.sites-item .item-title b { font-weight: 600; }
/* 侧栏栏目项：浅色竖排布局 */
body:not(.io-black-mode) .aside-card .aside-ul .aside-item > .aside-a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 8px 2px;
    margin: 2px 4px;
    border-radius: 10px;
    color: #4a4d52;
    font-size: 12px;
    text-align: center;
    line-height: 1.3;
    transition: .2s;
}
body:not(.io-black-mode) .aside-card .aside-ul .aside-item > .aside-a:hover {
    background: rgba(0,0,0,.06);
    color: #222;
}
body:not(.io-black-mode) .aside-card .aside-ul .aside-item > .aside-a i {
    width: auto;
    text-align: center;
    font-size: 18px;
    margin: 0 0 4px !important;
}
/* 侧栏栏目图标多彩色（浅色系，覆盖深色亮色 nth-child） */
body:not(.io-black-mode) .aside-card .aside-ul .aside-item:nth-child(3n+2) > .aside-a i { color: #1c7ed6; }
body:not(.io-black-mode) .aside-card .aside-ul .aside-item:nth-child(3n+3) > .aside-a i { color: var(--zmt-accent); }
body:not(.io-black-mode) .aside-card .aside-ul .aside-item:nth-child(3n+4) > .aside-a i { color: #0c8599; }
body:not(.io-black-mode) .aside-card .aside-ul .aside-item:nth-child(3n+5) > .aside-a i { color: #2f9e44; }
body:not(.io-black-mode) .aside-card .aside-ul .aside-item:nth-child(3n+6) > .aside-a i { color: #e64980; }
body:not(.io-black-mode) .aside-card .aside-ul .aside-item:nth-child(3n+7) > .aside-a i { color: #7048e8; }
body:not(.io-black-mode) .aside-card .aside-ul .aside-item:nth-child(3n+8) > .aside-a i { color: #1c7ed6; }
/* 侧栏站内搜索框浅色 */
body:not(.io-black-mode) .aside-card .aside-search { padding: 20px 5px; }
body:not(.io-black-mode) .aside-card .aside-search-form {
    display: flex;
    align-items: center;
    border: 1px solid rgba(0,0,0,.18);
    border-radius: 10px;
    background: rgba(0,0,0,.04);
    overflow: hidden;
    transition: .2s;
}
body:not(.io-black-mode) .aside-card .aside-search-form:focus-within {
    border-color: var(--zmt-accent);
    background: rgba(0,0,0,.06);
}
body:not(.io-black-mode) .aside-card .aside-search-form input {
    flex: 1;
    min-width: 0;
    background: transparent;
    border: 0;
    outline: 0;
    color: #333;
    font-size: 12px;
    padding: 6px 2px 6px 8px;
    line-height: 1;
}
body:not(.io-black-mode) .aside-card .aside-search-form input::placeholder { color: rgba(0,0,0,.4); }
body:not(.io-black-mode) .aside-card .aside-search-form button {
    background: transparent;
    border: 0;
    color: rgba(0,0,0,.6);
    padding: 6px 8px;
    font-size: 13px;
    line-height: 1;
    cursor: pointer;
}
body:not(.io-black-mode) .aside-card .aside-search-form button:hover { color: var(--zmt-accent); }
/* 返回首页按钮浅色 */
body:not(.io-black-mode) .zmt-back-btn {
    background: rgba(0,0,0,.06);
    color: #333;
    border: 1px solid rgba(0,0,0,.15);
    border-radius: 10px;
    font-size: 12px;
    padding: 6px 12px;
    white-space: nowrap;
}
body:not(.io-black-mode) .zmt-back-btn:hover {
    background: rgba(0,0,0,.1);
    color: var(--zmt-accent);
}
/* 侧栏圆形 logo 浅色 */
body:not(.io-black-mode) .aside-card .aside-logo-round {
    width: 44px !important;
    height: 44px !important;
    max-width: 44px !important;
    max-height: 44px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    background: var(--zmt-accent);
    padding: 8px !important;
    box-sizing: border-box !important;
    box-shadow: 0 4px 12px rgba(var(--zmt-accent-rgb),.35);
}
/* 登录用户下拉菜单浅色 */
body:not(.io-black-mode) .header-nav .header-tools .menu-user-box .sub-menu {
    border: 1px solid rgba(0,0,0,.12);
}
/* 按钮与公告浅色 */
body:not(.io-black-mode) .btn-outline-light {
    color: #555;
    border-color: #bbb;
}
body:not(.io-black-mode) .btn-outline-light:hover {
    background: #bbb;
    color: #fff;
}
body:not(.io-black-mode) .bulletin-big.card {
    background: var(--main-bg-color, #fff);
    border: 1px solid rgba(0,0,0,.08);
}

/* ============ 详情页标签（post_tag，收录自动抓取的 keywords） ============ */
.zmt-tag {
    background: rgba(255,255,255,.08);
    color: var(--muted-color2, #a6a8ab);
    border: 1px solid rgba(255,255,255,.12);
    font-weight: 400;
    font-size: .78rem;
    padding: 4px 10px;
    border-radius: 20px;
}
.zmt-tag:hover {
    color: var(--zmt-accent);
    border-color: rgba(var(--zmt-accent-rgb),.5);
}
body:not(.io-black-mode) .zmt-tag {
    background: rgba(0,0,0,.05);
    color: #555;
    border: 1px solid rgba(0,0,0,.15);
}
body:not(.io-black-mode) .zmt-tag:hover {
    color: var(--zmt-accent);
    border-color: rgba(var(--zmt-accent-rgb),.5);
}

/* ============ 栏目页改版（对齐原站：banner / 标签行 / 排序 / 卡片热度与标签） ============ */
/* 栏目 banner（对齐原站：通栏全宽 + 渐变底 + 居中标题下划线 + 篇数 + 体验按钮 + 介绍）
   背景渐变由 taxonomy-favorites.php 按栏目随机生成并内联写入；此处仅兜底 + 布局 */
.zmt-cat-banner-wrap {
    width: 100%;
}
.zmt-cat-banner {
    width: 100%;
    padding: 52px 28px 42px;
    border-radius: 0;
    margin: 0;
    background-image: linear-gradient(135deg, #0b2c4a 0%, #144a72 60%, #1b5f8a 100%);
    position: relative;
    overflow: hidden;
}
.zmt-cat-banner::before {
    content: '';
    position: absolute;
    right: -80px;
    top: -80px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: rgba(255,255,255,.05);
}
.zmt-cat-banner .cat-banner-inner {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.zmt-cat-banner .cat-banner-name {
    font-size: 2rem;
    font-weight: 700;
    color: #fff;
    line-height: 1.2;
    position: relative;
    display: inline-block;
    margin: 0;
}
.zmt-cat-banner .cat-banner-underline {
    position: absolute;
    left: 50%;
    bottom: -8px;
    transform: translateX(-50%);
    width: 72px;
    height: 4px;
    border-radius: 2px;
    background: var(--zmt-accent);
}
.zmt-cat-banner .cat-banner-meta {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 20px;
}
.zmt-cat-banner .cat-banner-count {
    font-size: .85rem;
    color: rgba(255,255,255,.9);
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.22);
    padding: 4px 12px;
    border-radius: 16px;
}
.zmt-cat-banner .cat-banner-btn {
    display: inline-flex;
    align-items: center;
    font-size: .9rem;
    color: #fff;
    background: var(--zmt-accent);
    padding: 7px 18px;
    border-radius: 18px;
    transition: all .2s;
    border: 1px solid rgba(255,255,255,.15);
}
.zmt-cat-banner .cat-banner-btn:hover {
    background: var(--zmt-accent-hover);
    color: #fff;
}
.zmt-cat-banner .cat-banner-desc {
    margin-top: 16px;
    font-size: .86rem;
    color: rgba(255,255,255,.72);
    max-width: 780px;
    line-height: 1.6;
}

/* 一级 / 子栏目标签行（横向滚动） */
.zmt-cat-tabs-card {
    padding: 10px 14px;
    margin-bottom: 14px;
}
.zmt-cat-tabs {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    gap: 8px;
    padding-bottom: 2px;
    scrollbar-width: none;
}
.zmt-cat-tabs::-webkit-scrollbar { display: none; }
.zmt-cat-tabs .cat-tab {
    white-space: nowrap;
    padding: 5px 14px;
    border-radius: 18px;
    font-size: .85rem;
    color: var(--muted-color2, #a6a8ab);
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.08);
    transition: all .2s;
}
.zmt-cat-tabs .cat-tab.active,
.zmt-cat-tabs .cat-tab:hover {
    color: var(--zmt-accent);
    background: rgba(var(--zmt-accent-rgb),.1);
    border-color: rgba(var(--zmt-accent-rgb),.5);
}
body:not(.io-black-mode) .zmt-cat-tabs .cat-tab {
    background: rgba(0,0,0,.04);
    color: #555;
    border-color: rgba(0,0,0,.08);
}
body:not(.io-black-mode) .zmt-cat-tabs .cat-tab.active,
body:not(.io-black-mode) .zmt-cat-tabs .cat-tab:hover {
    color: var(--zmt-accent);
    background: rgba(var(--zmt-accent-rgb),.08);
    border-color: rgba(var(--zmt-accent-rgb),.4);
}

/* 排序行 */
.zmt-cat-sort-card {
    padding: 10px 14px;
    margin-bottom: 14px;
}
.zmt-cat-sort {
    display: flex;
    align-items: center;
    gap: 16px;
    font-size: .82rem;
    color: var(--muted-color2, #a6a8ab);
}
.zmt-cat-sort a { color: inherit; }
.zmt-cat-sort a.active,
.zmt-cat-sort a:hover { color: var(--zmt-accent); }

/* 卡片热度（©浏览量）与标签行 */
.site-card-hot {
    margin-left: auto;
    padding-left: 6px;
    font-size: .72rem;
    color: var(--zmt-accent);
    font-weight: 600;
}
.site-card-pin {
    flex: 0 0 auto;
    margin-right: 5px;
    padding: 0 5px;
    border: 1px solid rgba(255, 122, 69, .38);
    border-radius: 6px;
    color: var(--zmt-accent, #ff7a45);
    background: rgba(255, 122, 69, .10);
    font-size: .62rem;
    line-height: 1.65;
    font-weight: 600;
    white-space: nowrap;
}
body:not(.io-black-mode) .site-card-pin {
    border-color: rgba(255, 122, 69, .35);
    background: rgba(255, 122, 69, .08);
}
.zmt-card-tags {
    margin-top: 3px;
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    overflow: hidden;
}
.zmt-card-tags span {
    font-size: .7rem;
    color: var(--muted-color2, #a6a8ab);
    white-space: nowrap;
}
body:not(.io-black-mode) .zmt-card-tags span { color: #999; }

/* 侧栏：频道页 / 自定义条目下的子栏目 + 高亮 */
.aside-item.active > .aside-a { color: var(--zmt-accent); }
/* 子栏目（频道页侧栏）：使用栏目自己的图标，尺寸略小于一级栏目 */
.aside-item.aside-subitem > .aside-a i {
    font-size: 14px !important;
    margin-bottom: 3px !important;
    opacity: .92;
}
.aside-item.aside-subitem > .aside-a span { font-size: 11px; }

/* 自定义条目下挂载的栏目：缩进到父条目下方 */
.aside-card .aside-item.aside-child {
    padding-left: 24px;
}
.aside-card .aside-item.aside-child > .aside-a {
    opacity: .92;
}
.aside-card .aside-item.aside-child > .aside-a i {
    font-size: 12px !important;
}

/* ================= 详情页（sites）：两栏布局 ================= */
.zmt-detail-layout {
    display: flex;
    align-items: flex-start;
    gap: 16px;
}
.zmt-detail-main {
    flex: 1;
    min-width: 0;
}
.zmt-detail-aside {
    width: 300px;
    flex-shrink: 0;
}
@media (max-width: 991px) {
    .zmt-detail-layout { flex-direction: column; }
    .zmt-detail-aside { width: 100%; }
}

/* 正式内容区：左侧网址图标 + 右侧网址介绍 */
.zmt-detail-shot-card { padding: 18px 20px; }
.zmt-detail-head {
    display: flex;
    align-items: flex-start;
    gap: 16px;
}
.zmt-detail-head-ico {
    flex-shrink: 0;
    width: 72px;
    height: 72px;
    border-radius: 16px;
    overflow: hidden;
    background: linear-gradient(135deg, rgba(var(--zmt-accent-rgb),.25), rgba(var(--zmt-accent-rgb),.18));
    border: 1px solid rgba(255,255,255,.1);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 6px;
}
.zmt-detail-head-ico img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    border-radius: 10px;
}
.zmt-detail-head-info { min-width: 0; }
.zmt-detail-name {
    font-size: 1.45rem;
    font-weight: 700;
    color: var(--main-color, #e8eaed);
    margin: 2px 0 0;
    line-height: 1.3;
}
.zmt-detail-desc {
    font-size: .88rem;
    line-height: 1.7;
    color: var(--muted-color2, #a6a8ab);
    margin: 6px 0 0;
}
.zmt-detail-head-meta {
    margin-top: 8px;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    font-size: .78rem;
    color: var(--muted-color2, #a6a8ab);
}
.zmt-detail-head-item a { color: inherit; }
.zmt-detail-head-item a:hover { color: var(--zmt-accent); }
.zmt-detail-go {
    flex-shrink: 0;
    font-size: .9rem;
    font-weight: 600;
    color: #fff;
    background: var(--zmt-accent);
    padding: 9px 18px;
    border-radius: 18px;
    transition: all .2s;
    white-space: nowrap;
}
.zmt-detail-go:hover { background: var(--zmt-accent-hover); color: #fff; }
body:not(.io-black-mode) .zmt-detail-head-ico { border-color: rgba(0,0,0,.1); }

/* 收藏点赞区 */
.zmt-detail-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-top: 14px;
}
.zmt-act-btn {
    display: inline-flex;
    align-items: center;
    font-size: .85rem;
    color: var(--muted-color2, #a6a8ab);
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.1);
    padding: 6px 14px;
    border-radius: 18px;
    transition: all .2s;
    cursor: pointer;
}
.zmt-act-btn:hover, .zmt-act-btn.zmt-act-done { color: var(--zmt-accent); border-color: rgba(var(--zmt-accent-rgb),.5); }
.zmt-fraud-tip { color: var(--zmt-accent); }
.zmt-fraud-tip:hover { color: #ffb84d; }
body:not(.io-black-mode) .zmt-act-btn {
    color: #666;
    background: rgba(0,0,0,.04);
    border-color: rgba(0,0,0,.1);
}

/* 随机颜色标签 */
.zmt-detail-tags {
    margin-top: 12px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}
.zmt-detail-tags-label {
    font-size: .82rem;
    color: var(--muted-color2, #a6a8ab);
}
.zmt-tag {
    font-size: .76rem;
    color: var(--zmt-accent);
    background: rgba(var(--zmt-accent-rgb),.12);
    border: 1px solid rgba(var(--zmt-accent-rgb),.3);
    padding: 3px 10px;
    border-radius: 14px;
}
.zmt-detail-remark {
    margin-top: 12px;
    font-size: .82rem;
    color: var(--muted-color2, #a6a8ab);
}
body:not(.io-black-mode) .zmt-tag {
    color: var(--zmt-accent);
    background: rgba(var(--zmt-accent-rgb),.08);
    border-color: rgba(var(--zmt-accent-rgb),.35);
}

/* 网址介绍 / 常见问题 Tab */
.zmt-detail-tabs-card { padding: 0; overflow: hidden; }
.zmt-tabs-head {
    display: flex;
    border-bottom: 1px solid rgba(255,255,255,.08);
}
.zmt-tab-btn {
    flex: 1;
    padding: 12px 16px;
    font-size: .92rem;
    color: var(--muted-color2, #a6a8ab);
    background: none;
    border: none;
    border-bottom: 2px solid transparent;
    cursor: pointer;
    transition: all .2s;
}
.zmt-tab-btn.active {
    color: var(--zmt-accent);
    border-bottom-color: var(--zmt-accent);
}
.zmt-tabs-body { padding: 18px 20px; }
.zmt-tab-pane { display: none; }
.zmt-tab-pane.active { display: block; }
.zmt-intro-section { margin-bottom: 18px; }
.zmt-intro-section:last-child { margin-bottom: 0; }
.zmt-intro-title {
    font-size: .98rem;
    font-weight: 600;
    color: var(--main-color, #e8eaed);
    margin-bottom: 8px;
}
.zmt-intro-text {
    font-size: .88rem;
    line-height: 1.8;
    color: var(--muted-color2, #a6a8ab);
    margin-bottom: 0;
}
.zmt-faq-empty {
    font-size: .88rem;
    color: var(--muted-color2, #a6a8ab);
    padding: 12px 0;
}
body:not(.io-black-mode) .zmt-tabs-head { border-bottom-color: rgba(0,0,0,.08); }

/* 数据统计 */
.zmt-detail-stats-card { padding: 18px 20px; }
.zmt-block-title {
    font-size: 1rem;
    font-weight: 600;
    color: var(--main-color, #e8eaed);
}
.zmt-stats-cards {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    margin-bottom: 14px;
}
.zmt-stat-item {
    text-align: center;
    padding: 12px 6px;
    border-radius: 10px;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.07);
}
.zmt-stat-num {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--main-color, #e8eaed);
}
.zmt-stat-label {
    font-size: .76rem;
    color: var(--muted-color2, #a6a8ab);
    margin-top: 4px;
}
.zmt-detail-chart {
    width: 100%;
    height: 260px;
}
.zmt-chart-note { font-size: .74rem; }
body:not(.io-black-mode) .zmt-stat-item {
    background: rgba(0,0,0,.03);
    border-color: rgba(0,0,0,.07);
}

/* 相关导航 */
.zmt-detail-related-card { padding: 18px 20px; }
.zmt-related-list { margin-top: 0; }

/* 特别声明 */
.zmt-detail-statement {
    padding: 18px 20px;
    background: rgba(var(--zmt-accent-rgb),.05);
    border: 1px solid rgba(var(--zmt-accent-rgb),.14);
}
body:not(.io-black-mode) .zmt-detail-statement {
    background: rgba(var(--zmt-accent-rgb),.05);
    border-color: rgba(var(--zmt-accent-rgb),.18);
}

/* 右侧侧栏：广告 */
.zmt-aside-ad { padding: 0; overflow: hidden; }
.zmt-aside-ad-img {
    width: 100%;
    display: block;
}
.zmt-aside-ad-text {
    display: block;
    padding: 60px 16px;
    text-align: center;
    color: var(--muted-color2, #a6a8ab);
    font-size: .9rem;
}
.zmt-ad-placeholder {
    padding: 40px 16px;
    text-align: center;
    color: var(--muted-color2, #a6a8ab);
    font-size: .85rem;
    border: 1px dashed rgba(255,255,255,.15);
    background: rgba(255,255,255,.02);
}
.zmt-ad-placeholder i { display: block; font-size: 1.4rem; margin-bottom: 8px; }
body:not(.io-black-mode) .zmt-ad-placeholder {
    border-color: rgba(0,0,0,.15);
    background: rgba(0,0,0,.02);
}




/* 反馈弹窗 */
.zmt-modal-mask {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.55);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
}
.zmt-modal {
    width: 420px;
    max-width: 92vw;
    background: var(--main-bg-color, #1b1d1f);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 18px 60px rgba(0,0,0,.45);
}
.zmt-modal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 18px;
    border-bottom: 1px solid rgba(255,255,255,.08);
}
.zmt-modal-title {
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--main-color, #e8eaed);
}
.zmt-modal-close {
    background: none;
    border: none;
    font-size: 1.4rem;
    line-height: 1;
    color: var(--muted-color2, #a6a8ab);
    cursor: pointer;
    padding: 0 4px;
}
.zmt-modal-close:hover { color: var(--zmt-accent); }
.zmt-modal-body { padding: 18px 20px; }
.zmt-feedback-tip {
    font-size: .86rem;
    color: var(--zmt-accent);
    background: rgba(var(--zmt-accent-rgb),.12);
    border: 1px solid rgba(var(--zmt-accent-rgb),.3);
    padding: 10px 14px;
    border-radius: 8px;
    margin-bottom: 16px;
}
.zmt-feedback-options {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}
.zmt-fb-option {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: .88rem;
    color: var(--main-color, #e8eaed);
    padding: 10px 12px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px;
    cursor: pointer;
    transition: all .2s;
}
.zmt-fb-option:hover { border-color: rgba(var(--zmt-accent-rgb),.5); }
.zmt-fb-option input { accent-color: var(--zmt-accent); }
.zmt-modal-foot {
    padding: 14px 20px;
    border-top: 1px solid rgba(255,255,255,.08);
    text-align: center;
}
.zmt-feedback-submit {
    width: 100%;
    padding: 10px 0;
    font-size: .95rem;
    font-weight: 600;
    color: #fff;
    background: #e03e3e;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: all .2s;
}
.zmt-feedback-submit:hover { background: #f05050; }
body:not(.io-black-mode) .zmt-modal {
    background: #fff;
    border-color: rgba(0,0,0,.12);
}
body:not(.io-black-mode) .zmt-fb-option { border-color: rgba(0,0,0,.12); }
/* ===== 顶栏搜索框（v1.6.1：由侧栏移入顶部导航，贴右侧会员区左侧） ===== */
.zmt-header-search { margin-right: 12px; }
.zmt-header-search-form {
    display: flex; align-items: center; gap: 8px;
    height: 34px; padding: 0 12px; border-radius: 17px;
    background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12);
    color: var(--muted-color2,#a6a8ab); transition: all .2s;
}
.zmt-header-search-form:focus-within { border-color: rgba(var(--zmt-accent-rgb),.55); background: rgba(255,255,255,.09); }
.zmt-header-search-form > .fa-search { font-size: .82rem; color: var(--muted-color2,#a6a8ab); }
.zmt-header-search-form input {
    width: 130px; border: none; outline: none; background: transparent;
    font-size: .85rem; color: var(--main-color,#e8eaed); padding: 0;
}
.zmt-header-search-form input::placeholder { color: var(--muted-color2,#a6a8ab); }
body:not(.io-black-mode) .zmt-header-search-form { background: rgba(0,0,0,.04); border-color: rgba(0,0,0,.12); }
body:not(.io-black-mode) .zmt-header-search-form > .fa-search { color: #8a8f98; }
body:not(.io-black-mode) .zmt-header-search-form input { color: #333; }
@media (max-width: 991px) {
    .zmt-header-search-form input { width: 90px; }
}
@media (max-width: 767px) {
    .zmt-header-search { display: none !important; }
}

/* ===== 顶栏搜索：复用首页搜索框外观，紧凑尺寸 ===== */
.zmt-header-search {
    width: clamp(240px, 24vw, 340px);
    margin-right: 14px;
}
.zmt-nav-search-form { position: relative; width: 100%; }
.zmt-nav-search-elements {
    display: flex;
    align-items: center;
    width: 100%;
    height: 38px;
    padding: 0;
    gap: 0;
    background: #17181a;
    border: 1px solid var(--zmt-accent);
    border-radius: 8px;
    box-shadow: 0 4px 14px rgba(0,0,0,.28);
    transition: border-color .2s ease, box-shadow .2s ease;
}
.zmt-nav-search-form:focus-within .zmt-nav-search-elements {
    border-color: var(--zmt-accent-hover);
    box-shadow: 0 0 0 3px rgba(var(--zmt-accent-rgb),.16), 0 4px 14px rgba(0,0,0,.28);
}
.zmt-nav-engine-selector {
    position: static;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex: none;
    width: 50px;
    height: 100%;
    min-width: 50px;
    padding: 0 0 0 10px;
    gap: 5px;
    border-right: 1px solid rgba(255,255,255,.1);
    border-radius: 0;
    cursor: pointer;
}
.zmt-nav-engine-selector .current-engine {
    width: 20px;
    height: 20px;
    border-radius: 4px;
    background: transparent;
    overflow: hidden;
}
.zmt-nav-engine-selector .current-engine img {
    width: 20px;
    height: 20px;
    object-fit: contain;
    border-radius: 4px;
}
.zmt-nav-engine-selector .dropdown-arrow {
    font-size: 12px;
    color: #9aa0a6;
    opacity: 1;
    transition: transform .2s ease, color .2s ease;
}
.zmt-nav-engine-selector.active .dropdown-arrow {
    color: #fff;
    transform: rotate(180deg);
}
#zmt-nav-search-form #zmt-nav-keyword {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    height: 36px;
    padding: 0 10px;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0;
    box-shadow: none !important;
    color: #e8eaed !important;
    font-size: 13px;
}
#zmt-nav-search-form #zmt-nav-keyword::placeholder {
    color: #8a8f98;
    opacity: 1;
}
#zmt-nav-search-form #zmt-nav-keyword:focus { outline: none; }
#zmt-nav-search-form .zmt-nav-search-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 46px;
    width: 46px;
    height: 100%;
    padding: 0;
    border: 0;
    border-radius: 0 7px 7px 0;
    background: var(--zmt-accent);
    color: #fff;
    font-size: 13px;
}
#zmt-nav-search-form .zmt-nav-search-btn:hover { background: var(--zmt-accent-hover); }
#zmt-nav-search-form .zmt-nav-search-btn:active { opacity: .9; }
.zmt-nav-engine-dropdown {
    top: calc(100% + 8px);
    right: 0;
    left: auto;
    display: grid;
    width: min(300px, 80vw);
    padding: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    background: #1c1d1f;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 10px;
    box-shadow: 0 16px 40px rgba(0,0,0,.5);
    z-index: 1000;
}
.zmt-nav-engine-dropdown .engine-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    height: 36px;
    padding: 0 8px;
    gap: 6px;
    background: #26272a;
    border: 1px solid transparent;
    border-radius: 6px;
    color: #b9bcc8;
    font-size: 12px;
    cursor: pointer;
}
.zmt-nav-engine-dropdown .engine-item:hover {
    color: #fff;
    background: #303136;
}
.zmt-nav-engine-dropdown .engine-item.active {
    color: #fff;
    background: rgba(var(--zmt-accent-rgb),.16);
    border-color: var(--zmt-accent);
}
.zmt-nav-engine-dropdown .engine-item-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    flex: none;
}
.zmt-nav-engine-dropdown .engine-item-icon img {
    width: 18px;
    height: 18px;
    object-fit: contain;
    border-radius: 3px;
}
.zmt-nav-engine-dropdown .engine-item span {
    color: inherit;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.2;
    white-space: nowrap;
}

/* 顶栏搜索：浅色主题 */
body:not(.io-black-mode) .zmt-nav-search-elements {
    background: #fff;
    border-color: var(--zmt-accent);
    box-shadow: 0 3px 10px rgba(0,0,0,.08);
}
body:not(.io-black-mode) .zmt-nav-engine-selector {
    border-right-color: rgba(0,0,0,.08);
}
body:not(.io-black-mode) .zmt-nav-engine-selector .dropdown-arrow { color: #6b7280; }
body:not(.io-black-mode) .zmt-nav-engine-selector.active .dropdown-arrow { color: #252a31; }
body:not(.io-black-mode) #zmt-nav-search-form #zmt-nav-keyword { color: #252a31 !important; }
body:not(.io-black-mode) #zmt-nav-search-form #zmt-nav-keyword::placeholder { color: #7b8089; }
body:not(.io-black-mode) .zmt-nav-engine-dropdown {
    background: #fff;
    border-color: #e3e7ee;
    box-shadow: 0 12px 32px rgba(0,0,0,.16);
}
body:not(.io-black-mode) .zmt-nav-engine-dropdown .engine-item {
    background: #f5f6f8;
    color: #5f6570;
}
body:not(.io-black-mode) .zmt-nav-engine-dropdown .engine-item:hover {
    background: #eceff4;
    color: #252a31;
}
body:not(.io-black-mode) .zmt-nav-engine-dropdown .engine-item.active {
    background: #eaf0ff;
    border-color: var(--zmt-accent);
    color: #1f4fd1;
}

@media (max-width: 991px) {
    .zmt-header-search { width: 250px; }
    .zmt-nav-search-elements { height: 36px; }
    #zmt-nav-search-form #zmt-nav-keyword { height: 34px; font-size: 12px; }
    #zmt-nav-search-form .zmt-nav-search-btn { flex-basis: 42px; width: 42px; }
}

/* ===== 首页视图：常用网址 / 我的书签（v1.6.6） ===== */
.zmt-view-card { padding-bottom: 4px; }
.zmt-view-head { display: flex; align-items: center; gap: 12px; padding: 16px 16px 0; }
.zmt-view-head .card-title { color: var(--main-color, #e8eaed); }
.zmt-view-count { flex: none; font-size: 12px; color: var(--muted-color2, #8a8f98); }
.zmt-view-tabbar { display: flex; align-items: center; gap: 12px; padding: 12px 16px 4px; }
.zmt-view-tabs { display: flex; flex: 1; flex-wrap: nowrap; gap: 6px; overflow-x: auto; padding-bottom: 2px; scrollbar-width: none; }
.zmt-view-tabs::-webkit-scrollbar { display: none; }
.zmt-view-tab { display: inline-flex; align-items: center; gap: 5px; flex: none; padding: 5px 12px; font-size: 13px; line-height: 1.5; color: var(--muted-color2, #b9bcc8); background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); border-radius: 6px; cursor: pointer; white-space: nowrap; transition: all .18s ease; }
.zmt-view-tab i { font-size: 13px; opacity: .85; }
.zmt-view-tab:hover { color: var(--main-color, #fff); border-color: rgba(var(--zmt-accent-rgb),.45); }
.zmt-view-tab.active { color: var(--zmt-accent); background: rgba(var(--zmt-accent-rgb),.14); border-color: rgba(var(--zmt-accent-rgb),.55); }
.zmt-view-export { flex: none; margin-left: auto; padding: 5px 12px; font-size: 12px; color: var(--zmt-accent); border: 1px solid rgba(var(--zmt-accent-rgb),.45); border-radius: 6px; white-space: nowrap; transition: all .18s ease; }
.zmt-view-export:hover { color: #12121a; background: var(--zmt-accent); }
.zmt-view-panes { padding: 4px 16px 16px; }
.zmt-view-pane { display: none; }
.zmt-view-pane.active { display: block; }
.zmt-view-empty, .zmt-view-loading { padding: 40px 0; font-size: 13px; color: var(--muted-color2, #8a8f98); text-align: center; }
.zmt-view-empty i { display: block; margin-bottom: 8px; font-size: 26px; opacity: .55; }
.zmt-view-gate { padding: 34px 16px 42px; text-align: center; }
.zmt-view-gate > i { font-size: 30px; color: var(--zmt-accent); opacity: .85; }
.zmt-view-gate h5 { margin: 12px 0 8px; font-size: 16px; color: var(--main-color, #e8eaed); }
.zmt-view-gate p { max-width: 560px; margin: 0 auto 14px; font-size: 13px; line-height: 1.75; color: var(--muted-color2, #8a8f98); }
.zmt-view-import { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 10px; }
.zmt-view-import input[type=file] { max-width: 340px; font-size: 12px; color: var(--muted-color2, #b9bcc8); }
.zmt-view-result { margin-top: 12px; font-size: 13px; }
.zmt-view-result .zmt-import-msg.ok { color: #4caf50; }
.zmt-view-result .zmt-import-msg.err { color: #e04a4a; }
.zmt-view-tip { max-width: 640px; margin: 14px auto 0; font-size: 12px; line-height: 1.7; color: var(--muted-color2, #767b87); }
.zmt-view-foot { margin: 0 16px; padding: 10px 0 14px; font-size: 12px; color: var(--muted-color2, #8a8f98); border-top: 1px solid rgba(255,255,255,.06); }
.zmt-view-foot a { color: var(--muted-color2, #8a8f98); }
.zmt-view-foot a:hover { color: var(--zmt-accent); }
.zmt-view-dot { margin: 0 6px; }
.zmt-bm-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.zmt-bm-item { display: flex; gap: 10px; min-width: 0; padding: 10px 12px; background: rgba(255,255,255,.035); border: 1px solid rgba(255,255,255,.06); border-radius: 8px; transition: all .18s ease; }
.zmt-bm-item:hover { background: rgba(var(--zmt-accent-rgb),.08); border-color: rgba(var(--zmt-accent-rgb),.4); transform: translateY(-1px); }
.zmt-bm-ico { display: flex; flex: none; align-items: center; justify-content: center; width: 34px; height: 34px; overflow: hidden; background: rgba(255,255,255,.06); border-radius: 50%; }
.zmt-bm-ico img { width: 20px; height: 20px; object-fit: contain; }
.zmt-bm-body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.zmt-bm-title { overflow: hidden; font-size: 13px; font-weight: 600; color: var(--main-color, #e6e8ee); text-overflow: ellipsis; white-space: nowrap; }
.zmt-bm-host { overflow: hidden; font-size: 11px; color: var(--muted-color2, #7f8492); text-overflow: ellipsis; white-space: nowrap; }
.zmt-bm-desc { display: -webkit-box; overflow: hidden; font-size: 11px; line-height: 1.5; color: var(--muted-color2, #9aa0ad); -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.zmt-bm-bar { display: grid !important; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 10px; margin-bottom: 10px; }
.zmt-bm-bar .zmt-bm-export { justify-self: end; flex: none; }
.zmt-bm-export { padding: 4px 10px; font-size: 12px; color: var(--zmt-accent); border: 1px solid rgba(var(--zmt-accent-rgb),.45); border-radius: 6px; }
.zmt-bm-export:hover { color: #12121a; background: var(--zmt-accent); }
@media (max-width: 991px) { .zmt-bm-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575px) { .zmt-bm-grid { grid-template-columns: 1fr; } .zmt-view-tabbar { flex-wrap: wrap; } .zmt-view-export { margin-left: 0; } }

/* 浅色主题 */
body:not(.io-black-mode) .zmt-view-head .card-title,
body:not(.io-black-mode) .zmt-view-gate h5 { color: #2b3038; }
body:not(.io-black-mode) .zmt-view-count,
body:not(.io-black-mode) .zmt-view-empty,
body:not(.io-black-mode) .zmt-view-gate p,
body:not(.io-black-mode) .zmt-view-foot,
body:not(.io-black-mode) .zmt-view-tip { color: #7b8089; }
body:not(.io-black-mode) .zmt-view-tab { color: #5b6270; background: #f6f7f9; border-color: #e6e8ec; }
body:not(.io-black-mode) .zmt-view-tab.active { color: var(--zmt-accent); background: rgba(var(--zmt-accent-rgb),.12); border-color: var(--zmt-accent); }

/* 常用网址：单条顶栏式 tab（左侧标题 + 横向栏目；选中为橙色实心块） */
#zmt-view-common { padding: 0 !important; overflow: hidden; }
#zmt-view-common .zmt-view-topbar {
    display: flex;
    align-items: center;
    min-height: 64px;
    padding: 0 18px;
    background: #2c2c2c;
    border-bottom: 1px solid rgba(255,255,255,.06);
}
#zmt-view-common .zmt-view-head {
    flex: none;
    padding: 0;
    margin: 0;
}
#zmt-view-common .zmt-view-head .card-title {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.4;
    color: #fff;
}
#zmt-view-common .zmt-view-head .card-title i {
    margin-right: 8px !important;
    font-size: 17px;
    color: var(--zmt-accent) !important;
}
#zmt-view-common .zmt-view-tabbar {
    flex: 1;
    min-width: 0;
    height: 64px;
    padding: 0 0 0 28px;
    margin: 0;
    align-items: center;
}
#zmt-view-common .zmt-view-tabs {
    height: 64px;
    padding: 0;
    gap: 8px;
    align-items: center;
}
#zmt-view-common .zmt-view-tab {
    height: 46px;
    padding: 0 18px;
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
    color: #9b9b9b;
    background: transparent;
    border: 0;
    border-radius: 0;
    gap: 0;
}
#zmt-view-common .zmt-view-tab i { display: none; }
#zmt-view-common .zmt-view-tab:hover {
    color: #fff;
    background: rgba(255,255,255,.05);
}
#zmt-view-common .zmt-view-tab.active {
    color: #fff;
    background: var(--zmt-accent);
    font-weight: 600;
}
#zmt-view-common .zmt-view-count {
    margin-left: auto;
    padding-left: 18px;
    font-size: 12px;
    color: #8f8f8f;
}
#zmt-view-common .zmt-view-panes { padding: 16px 18px 18px; }

/* 浅色主题：同结构，浅底 */
body:not(.io-black-mode) #zmt-view-common .zmt-view-topbar {
    background: #f5f6f8;
    border-bottom-color: #e6e8ec;
}
body:not(.io-black-mode) #zmt-view-common .zmt-view-head .card-title { color: #252a31; }
body:not(.io-black-mode) #zmt-view-common .zmt-view-count { color: #7b8089; }
body:not(.io-black-mode) #zmt-view-common .zmt-view-tab {
    color: #5f6570;
    background: transparent;
    border: 0;
}
body:not(.io-black-mode) #zmt-view-common .zmt-view-tab:hover {
    color: #252a31;
    background: rgba(0,0,0,.04);
}
body:not(.io-black-mode) #zmt-view-common .zmt-view-tab.active {
    color: #fff;
    background: var(--zmt-accent);
}

@media (max-width: 767px) {
    #zmt-view-common .zmt-view-topbar { min-height: 56px; padding: 0 12px; }
    #zmt-view-common .zmt-view-head .card-title { font-size: 14px; }
    #zmt-view-common .zmt-view-tabbar { height: 56px; padding-left: 12px; }
    #zmt-view-common .zmt-view-tabs { height: 56px; }
    #zmt-view-common .zmt-view-tab { height: 40px; padding: 0 12px; font-size: 13px; }
    #zmt-view-common .zmt-view-count { display: none; }
    #zmt-view-common .zmt-view-panes { padding: 12px 12px 14px; }
}
body:not(.io-black-mode) .zmt-bm-item { background: #f8f9fb; border-color: #e6e8ec; }
body:not(.io-black-mode) .zmt-bm-item:hover { background: #fff7ec; border-color: #ffcd8f; }
body:not(.io-black-mode) .zmt-bm-title { color: #2b3038; }
body:not(.io-black-mode) .zmt-bm-host { color: #7b8089; }
body:not(.io-black-mode) .zmt-bm-desc { color: #6b7280; }
body:not(.io-black-mode) .zmt-bm-ico { background: #eef1f5; }
body:not(.io-black-mode) .zmt-view-foot { border-top-color: #eceef2; }
/* ===== 首页搜索：搜索引擎下拉面板（深色，图标+箭头展开） ===== */
.zmt-dark-hero #star-search-form {
    position: relative;
}
.zmt-dark-hero #star-search-form .star-search-elements {
    height: 56px;
    padding: 0;
    background: #17181a;
    border: 1px solid var(--zmt-accent);
    border-radius: 10px;
    box-shadow: 0 10px 30px rgba(0,0,0,.35);
    overflow: visible;
    transition: border-color .2s ease, box-shadow .2s ease;
}
.zmt-dark-hero #star-search-form .star-search-elements:focus-within {
    border-color: var(--zmt-accent-hover);
    box-shadow: 0 0 0 3px rgba(var(--zmt-accent-rgb),.18), 0 10px 30px rgba(0,0,0,.35);
}
.zmt-dark-hero #engineSelector {
    position: static;
    height: 100%;
    min-width: 64px;
    padding: 0 0 0 18px;
    gap: 7px;
    justify-content: flex-start;
    border-right: 1px solid rgba(255,255,255,.1);
    box-sizing: border-box;
    border-radius: 0;
}
.zmt-dark-hero #engineSelector .current-engine {
    width: 26px;
    height: 26px;
    border-radius: 0;
    background: transparent;
    overflow: visible;
}
.zmt-dark-hero #engineSelector .current-engine img {
    width: 24px;
    height: 24px;
    object-fit: contain;
    border-radius: 4px;
}
.zmt-dark-hero #engineSelector .dropdown-arrow {
    font-size: 15px;
    color: #9aa0a6;
    opacity: 1;
    margin-left: 1px;
    transition: transform .2s ease, color .2s ease;
}
.zmt-dark-hero #engineSelector.active .dropdown-arrow {
    transform: rotate(180deg);
    color: #fff;
}
.zmt-dark-hero #star-search-form #keyword {
    flex: 1 1 auto;
    height: 54px;
    min-width: 0;
    padding: 0 18px;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 0;
    color: #e8eaed !important;
    font-size: 15px;
}
.zmt-dark-hero #star-search-form #keyword::placeholder {
    color: #8a8f98;
    opacity: 1;
}
.zmt-dark-hero #star-search-form #keyword:focus {
    outline: none;
}
.zmt-dark-hero #star-search-form .search-btn {
    flex: 0 0 76px;
    width: 76px;
    height: 100%;
    padding: 0;
    border: 0;
    border-radius: 0 9px 9px 0;
    background: var(--zmt-accent);
    color: #fff;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.zmt-dark-hero #star-search-form .search-btn:hover {
    background: var(--zmt-accent-hover);
}
/* 展开面板：覆盖在下方内容之上 */
.zmt-dark-hero .engine-dropdown {
    top: calc(100% + 12px);
    left: 0;
    right: 0;
    width: auto;
    max-height: none;
    overflow: visible;
    padding: 14px;
    background: #1c1d1f;
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 12px;
    box-shadow: 0 18px 50px rgba(0,0,0,.55);
    z-index: 50;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    transform: translateY(-6px);
}
.zmt-dark-hero .engine-dropdown.show {
    transform: translateY(0);
}
.zmt-dark-hero .engine-dropdown .engine-item {
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    height: 48px;
    padding: 0 14px;
    gap: 10px;
    background: #26272a;
    border: 1px solid transparent;
    border-radius: 8px;
    text-align: left;
    transition: background .2s ease, border-color .2s ease;
}
.zmt-dark-hero .engine-dropdown .engine-item:hover {
    background: #2f3034;
    border-color: rgba(255,255,255,.1);
}
.zmt-dark-hero .engine-dropdown .engine-item.active {
    background: rgba(var(--zmt-accent-rgb),.16);
    border-color: var(--zmt-accent);
}
.zmt-dark-hero .engine-dropdown .engine-item .engine-item-icon {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.zmt-dark-hero .engine-dropdown .engine-item .engine-item-icon img {
    width: 20px;
    height: 20px;
    object-fit: contain;
    border-radius: 3px;
}
.zmt-dark-hero .engine-dropdown .engine-item span {
    font-size: 14px;
    font-weight: 500;
    color: #c9ccd1;
    line-height: 1.2;
}
.zmt-dark-hero .engine-dropdown .engine-item.active span {
    color: #fff;
}
/* 浅色主题：搜索区保持同样结构，仅换底色 */
body:not(.io-black-mode) .zmt-dark-hero #star-search-form .star-search-elements {
    background: #fff;
    border-color: var(--zmt-accent);
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
}
body:not(.io-black-mode) .zmt-dark-hero #engineSelector {
    border-right-color: rgba(0,0,0,.1);
}
body:not(.io-black-mode) .zmt-dark-hero #star-search-form #keyword {
    color: #222 !important;
}
body:not(.io-black-mode) .zmt-dark-hero #star-search-form #keyword::placeholder {
    color: #9aa0a6;
}
body:not(.io-black-mode) .zmt-dark-hero .engine-dropdown {
    background: #fff;
    border-color: rgba(0,0,0,.08);
}
body:not(.io-black-mode) .zmt-dark-hero .engine-dropdown .engine-item {
    background: #f4f5f7;
}
body:not(.io-black-mode) .zmt-dark-hero .engine-dropdown .engine-item:hover {
    background: #eceef2;
    border-color: rgba(0,0,0,.08);
}
body:not(.io-black-mode) .zmt-dark-hero .engine-dropdown .engine-item.active {
    background: #eaf0ff;
    border-color: var(--zmt-accent);
}
body:not(.io-black-mode) .zmt-dark-hero .engine-dropdown .engine-item span {
    color: #333;
}
body:not(.io-black-mode) .zmt-dark-hero .engine-dropdown .engine-item.active span {
    color: #1b3fa0;
}
@media (max-width: 991px) {
    .zmt-dark-hero .engine-dropdown {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
@media (max-width: 575px) {
    .zmt-dark-hero #star-search-form .star-search-elements {
        height: 50px;
    }
    .zmt-dark-hero #star-search-form #keyword {
        height: 48px;
        padding: 0 12px;
        font-size: 14px;
    }
    .zmt-dark-hero #engineSelector {
        min-width: 56px;
        padding-left: 12px;
    }
    .zmt-dark-hero #star-search-form .search-btn {
        flex: 0 0 60px;
        width: 60px;
    }
    .zmt-dark-hero .engine-dropdown {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding: 10px;
        gap: 8px;
    }
    .zmt-dark-hero .engine-dropdown .engine-item {
        height: 44px;
    }
}

/* ===== 首页搜索框下方：合作推荐广告板（参考图样式，不含“最近使用”） ===== */
.zmt-adboard {
    width: 100%;
    max-width: none;
    margin: 18px 0 4px;
    padding-left: calc(var(--main-aside-width, 100px) + 2px);
    padding-right: 10px;
}
.zmt-adboard-head {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}
.zmt-adboard-tab {
    display: inline-flex;
    align-items: center;
    height: 28px;
    padding: 0 12px;
    border-radius: 5px;
    background: var(--zmt-accent);
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .02em;
}
.zmt-adboard-join {
    display: inline-flex;
    align-items: center;
    height: 28px;
    margin-left: auto;
    padding: 0 11px;
    border-radius: 5px;
    background: var(--zmt-accent);
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    text-decoration: none;
    transition: background .2s, color .2s;
}
.zmt-adboard-join:hover {
    background: var(--zmt-accent-hover);
    color: #fff;
    text-decoration: none;
}
.zmt-adboard-join i {
    margin-left: 4px;
    font-size: 11px;
}
.zmt-adboard-grid {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: 12px;
}
.zmt-adcard {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    height: 58px;
    padding: 9px 11px;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 6px;
    background: rgba(255,255,255,.045);
    color: inherit;
    text-decoration: none;
    transition: background .2s, border-color .2s, transform .2s;
}
.zmt-adcard:hover {
    background: rgba(255,255,255,.075);
    border-color: rgba(var(--zmt-accent-rgb),.35);
    color: inherit;
    text-decoration: none;
    transform: translateY(-1px);
}
.zmt-adcard-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    overflow: hidden;
    border-radius: 5px;
    background: #1d1f22;
}
.zmt-adcard-icon img {
    width: 32px;
    height: 32px;
    object-fit: contain;
}
.zmt-adcard-icon i {
    font-size: 16px;
    color: var(--zmt-accent);
}
.zmt-adcard-text {
    display: block;
    min-width: 0;
}
.zmt-adcard-title {
    display: block;
    overflow: hidden;
    color: #eceff2;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.25;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.zmt-adcard-desc {
    display: block;
    overflow: hidden;
    margin-top: 4px;
    color: #8b929b;
    font-size: 11px;
    font-style: normal;
    line-height: 1.2;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.zmt-adcard.is-empty {
    border-style: dashed;
}
.zmt-adcard.is-empty .zmt-adcard-icon {
    background: rgba(255,255,255,.055);
}
.zmt-adcard.is-empty .zmt-adcard-icon i {
    color: var(--muted-color3);
}
/* 占位广告位：不配图标，只显示 AD + 虚位以待 */
.zmt-adcard.is-empty {
    gap: 0;
    padding-left: 12px;
    padding-right: 12px;
}
.zmt-adcard.is-empty .zmt-adcard-text {
    display: flex;
    align-items: baseline;
    gap: 8px;
    width: 100%;
}
.zmt-adcard.is-empty .zmt-adcard-title {
    flex: 0 0 auto;
    color: var(--zmt-accent);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .06em;
    line-height: 1.15;
    overflow: visible;
    text-overflow: clip;
}
.zmt-adcard.is-empty .zmt-adcard-desc {
    margin-top: 0;
    font-size: 12px;
    line-height: 1.15;
    overflow: visible;
    text-overflow: clip;
}
body:not(.io-black-mode) .zmt-adboard-tab,
body:not(.io-black-mode) .zmt-adboard-join {
    background: var(--zmt-accent);
    color: #fff;
}
body:not(.io-black-mode) .zmt-adboard-join:hover {
    background: var(--zmt-accent-hover);
}
body:not(.io-black-mode) .zmt-adcard {
    border-color: #e4e8ed;
    background: #fff;
    box-shadow: 0 1px 3px rgba(20,30,45,.06);
}
body:not(.io-black-mode) .zmt-adcard:hover {
    border-color: rgba(var(--zmt-accent-rgb),.45);
    background: rgba(var(--zmt-accent-rgb),.035);
}
body:not(.io-black-mode) .zmt-adcard-icon {
    background: #f2f5f7;
}
body:not(.io-black-mode) .zmt-adcard-title {
    color: #20252b;
}
body:not(.io-black-mode) .zmt-adcard-desc {
    color: #7b838d;
}
body:not(.io-black-mode) .zmt-adcard.is-empty {
    border-color: #dfe4ea;
    background: #fcfdfe;
}
body:not(.io-black-mode) .zmt-adcard.is-empty .zmt-adcard-icon {
    background: #f2f5f7;
}
body:not(.io-black-mode) .zmt-adcard.is-empty .zmt-adcard-icon i {
    color: #6aa7ad;
}
body.zmt-no-aside .zmt-adboard {
    padding-left: 10px;
}
@media (max-width: 1199px) {
    .zmt-adboard-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}
@media (max-width: 991px) {
    .zmt-adboard-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
@media (max-width: 767px) {
    .zmt-adboard {
        margin-top: 14px;
        padding-left: 10px;
        padding-right: 10px;
    }
    .zmt-adboard-head {
        margin-bottom: 8px;
    }
    .zmt-adboard-tab,
    .zmt-adboard-join {
        height: 26px;
        font-size: 12px;
        padding: 0 10px;
    }
    .zmt-adboard-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }
    .zmt-adcard {
        height: 54px;
        gap: 8px;
        padding: 8px 9px;
    }
    .zmt-adcard-icon {
        flex-basis: 32px;
        width: 32px;
        height: 32px;
    }
    .zmt-adcard-icon img {
        width: 28px;
        height: 28px;
    }
    .zmt-adcard-title {
        font-size: 12px;
    }
    .zmt-adcard-desc {
        margin-top: 3px;
        font-size: 10px;
    }
    .zmt-adcard.is-empty {
        padding-left: 10px;
        padding-right: 10px;
    }
    .zmt-adcard.is-empty .zmt-adcard-title {
        font-size: 13px;
    }
    .zmt-adcard.is-empty .zmt-adcard-desc {
        margin-top: 0;
        font-size: 10px;
    }
}

/* ===== 自动入驻：按钮重置 ===== */
button.zmt-adboard-join {
    border: 0;
    font-family: inherit;
    line-height: 1;
    cursor: pointer;
}
button.zmt-adcard {
    -webkit-appearance: none;
    appearance: none;
    font-family: inherit;
    color: inherit;
    text-align: left;
    cursor: pointer;
}

/* ===== 自动入驻：加入队列弹窗 ===== */
.zmt-pay-modal {
    position: fixed;
    inset: 0;
    z-index: 12000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
    overflow-y: auto;
    background: rgba(0,0,0,.62);
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
}
.zmt-pay-modal.is-open {
    display: flex;
}
.zmt-pay-dialog {
    position: relative;
    width: 100%;
    max-width: 460px;
    padding: 22px 24px 20px;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 24px 70px rgba(0,0,0,.38);
    color: #2b2f33;
    font-family: "Microsoft YaHei", "PingFang SC", "Segoe UI", Arial, sans-serif;
    box-sizing: border-box;
}
.zmt-pay-head {
    display: flex;
    align-items: center;
    gap: 10px;
    padding-bottom: 14px;
}
.zmt-pay-logo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    border-radius: 5px;
    background: linear-gradient(135deg, #4aa3ff 0%, #1f6dff 100%);
    color: #fff;
    font-size: 16px;
}
.zmt-pay-head strong {
    color: #222;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: .5px;
}
.zmt-pay-close {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    margin-left: auto;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #9aa0a6;
    color: #fff;
    font-size: 18px;
    line-height: 1;
    cursor: pointer;
    opacity: .9;
}
.zmt-pay-close:hover {
    background: #7f868d;
    opacity: 1;
}
.zmt-pay-label {
    margin: 3px 0 10px;
    color: #4b5158;
    font-size: 15px;
    font-weight: 500;
}
.zmt-pay-plans {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 18px;
}
.zmt-pay-plan {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    height: 92px;
    padding: 10px 8px;
    border: 1px solid #dfe3e8;
    border-radius: 8px;
    background: #fff;
    box-sizing: border-box;
    cursor: pointer;
    transition: border-color .15s, background .15s;
}
.zmt-pay-plan input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}
.zmt-pay-plan.is-selected {
    padding: 9px 7px;
    border: 2px solid #ff4d4f;
    background: #fffafa;
}
.zmt-pay-plan-name {
    color: #2c3035;
    font-size: 15px;
    line-height: 1.2;
}
.zmt-pay-plan-price {
    color: #2c3035;
    font-size: 19px;
    font-weight: 600;
    line-height: 1.2;
}
.zmt-pay-plan-orig {
    margin-left: 4px;
    color: #a4a8ae;
    font-size: 12px;
    font-weight: 400;
    text-decoration: line-through;
}
.zmt-pay-plan-badge {
    position: absolute;
    top: -9px;
    right: 12px;
    height: 18px;
    padding: 0 7px;
    border-radius: 2px;
    background: #ff4d4f;
    color: #fff;
    font-size: 11px;
    line-height: 18px;
}
.zmt-pay-input {
    display: block;
    width: 100%;
    height: 44px;
    margin-bottom: 10px;
    padding: 0 12px;
    border: 1px solid #e6e8eb;
    border-radius: 4px;
    background: #f5f5f5;
    box-sizing: border-box;
    color: #333;
    font-family: inherit;
    font-size: 14px;
    outline: none;
}
.zmt-pay-input:focus {
    border-color: var(--zmt-accent);
    background: #fff;
}
.zmt-pay-error {
    display: none;
    margin: 2px 0 8px;
    color: #ff4d4f;
    font-size: 13px;
    line-height: 1.45;
}
.zmt-pay-error.show {
    display: block;
}
.zmt-pay-submit {
    display: block;
    width: 100%;
    height: 46px;
    margin-top: 4px;
    padding: 0;
    border: 0;
    border-radius: 5px;
    background: var(--zmt-accent);
    color: #fff;
    font-family: inherit;
    font-size: 16px;
    font-weight: 500;
    cursor: pointer;
    transition: background .15s;
}
.zmt-pay-submit:hover {
    background: var(--zmt-accent-hover);
}
.zmt-pay-submit:disabled {
    opacity: .68;
    cursor: not-allowed;
}
.zmt-pay-tip {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 6px;
    margin: 14px 0 0;
    color: #8a9096;
    font-size: 12px;
    line-height: 1.6;
    text-align: center;
}
.zmt-pay-logo svg {
    display: block;
}
.zmt-pay-tip i {
    margin-top: 2px;
    color: #ff4d4f;
    font-size: 12px;
}
.zmt-pay-tip svg {
    flex: 0 0 12px;
    margin-top: 3px;
    color: #ff4d4f;
}
body.zmt-pay-open {
    overflow: hidden;
}
@media (max-width: 767px) {
    .zmt-pay-modal {
        padding: 14px;
    }
    .zmt-pay-dialog {
        max-width: 100%;
        padding: 18px 16px 16px;
    }
    .zmt-pay-plans {
        gap: 10px;
    }
    .zmt-pay-plan {
        height: 86px;
    }
    .zmt-pay-plan-price {
        font-size: 17px;
    }
}
/* ============================================================
   全站配色：夜间模式黑橙 / 白天模式白蓝
   夜间：近黑底 + 橙色强调；白天：白底 + 蓝色强调
   ============================================================ */
:root {
    color-scheme: light;
    --theme-color: #2f8cff;
    --theme-color-rgb: 47, 140, 255;
    --theme-color-bg: rgba(var(--theme-color-rgb), .1);
    --hover-color: #1677ff;
    --focus-color: var(--theme-color);
    --focus-shadow-color: rgba(47, 140, 255, .45);
    --main-color: #22262c;
    --main-shadow: rgba(20, 40, 80, .10);
    --main-bg-color: #ffffff;
    --body-bg-color: #f4f7fc;
    --main-blur-bg-color: rgba(255, 255, 255, .78);
    --main-blur-bg-color2: rgba(255, 255, 255, .88);
    --main-blur-bg-color3: rgba(255, 255, 255, .62);
    --muted-color: #71809a;
    --muted-color2: #536174;
    --muted-color3: #9aa6b8;
    --muted-bg-color: #e8eef7;
    --muted-bg-color-l: #f2f6fb;
    --muted-shadow: rgba(47, 92, 153, .10);
    --muted-bg-a-color: var(--muted-shadow);
    --muted-blur-bg-color: rgba(228, 236, 246, .6);
    --zmt-accent: #2f8cff;
    --zmt-accent-rgb: 47, 140, 255;
    --zmt-accent-hover: #1677ff;
    --zmt-accent-soft: rgba(47, 140, 255, .12);
}
.io-black-mode {
    color-scheme: dark;
    --theme-color: #ff8a1f;
    --theme-color-rgb: 255, 138, 31;
    --theme-color-bg: rgba(var(--theme-color-rgb), .12);
    --hover-color: #ffa245;
    --focus-color: var(--theme-color);
    --focus-shadow-color: rgba(255, 138, 31, .38);
    --main-color: #f1ebe3;
    --main-shadow: rgba(0, 0, 0, .55);
    --main-bg-color: #161618;
    --body-bg-color: #0a0a0c;
    --main-blur-bg-color: rgba(12, 12, 14, .76);
    --main-blur-bg-color2: rgba(12, 12, 14, .86);
    --main-blur-bg-color3: rgba(12, 12, 14, .58);
    --muted-color: #b0a79c;
    --muted-color2: #8d857b;
    --muted-color3: #615c55;
    --muted-bg-color: #232326;
    --muted-bg-color-l: #111113;
    --muted-shadow: rgba(255, 255, 255, .07);
    --muted-bg-a-color: rgba(255, 255, 255, .07);
    --muted-blur-bg-color: rgba(30, 30, 34, .65);
    --zmt-accent: #ff8a1f;
    --zmt-accent-rgb: 255, 138, 31;
    --zmt-accent-hover: #ffa245;
    --zmt-accent-soft: rgba(255, 138, 31, .14);
}
body.io-black-mode {
    background-color: var(--body-bg-color);
    color: var(--main-color);
}
/* 首页「常用网址」Tab：选中/悬停背景块统一圆角 */
#zmt-view-common .zmt-view-tab {
    border-radius: 8px;
}
#zmt-view-common .zmt-view-tab:hover {
    background: var(--zmt-accent-soft);
}
#zmt-view-common .zmt-view-tab.active {
    border-radius: 8px;
    background: var(--zmt-accent);
    box-shadow: 0 4px 12px rgba(var(--zmt-accent-rgb), .28);
}
/* 主题内部仍写死红色的少量组件，统一跟随当前主题强调色 */
.posts-nav .page-numbers.current,
.posts-nav .page-numbers:not(.dots):hover {
    background-color: var(--theme-color);
    box-shadow: 0 5px 20px -3px rgba(var(--theme-color-rgb), .5);
}
.order-price { color: var(--theme-color); }
.original-price::before { background: var(--theme-color); }
.swiper-widgets-content p:before {
    background-color: var(--theme-color);
    box-shadow: 6px 0 7px rgba(var(--theme-color-rgb), .4);
}
.btn-close-bomb i:hover { color: var(--theme-color); }
/* 夜间：卡片与搜索浮层改为中性近黑，避免偏蓝的旧底色 */
.io-black-mode .posts-item.sites-item:hover { background: #1f1f22; }
.io-black-mode .zmt-nav-engine-dropdown,
.io-black-mode .zmt-dark-hero .engine-dropdown { background: #141416; }
.io-black-mode .zmt-nav-engine-dropdown .engine-item,
.io-black-mode .zmt-dark-hero .engine-dropdown .engine-item { background: #1e1e21; }
.io-black-mode .zmt-nav-engine-dropdown .engine-item:hover,
.io-black-mode .zmt-dark-hero .engine-dropdown .engine-item:hover { background: #27272b; }
/* 面包屑：去掉 Bootstrap 默认浅灰底，跟随当前主题 */
.breadcrumb-nav .breadcrumb {
    padding: 0;
    margin: 0 0 14px;
    background: transparent;
    border-radius: 0;
}
.breadcrumb-nav .breadcrumb-item,
.breadcrumb-nav .breadcrumb-item a,
.breadcrumb-nav .breadcrumb-item.active {
    color: var(--muted-color, #9aa6b8);
}
.breadcrumb-nav .breadcrumb-item a:hover { color: var(--zmt-accent); }
.breadcrumb-item + .breadcrumb-item::before { color: var(--muted-color3, #615c55); }
/* 表单控件与浅底容器：跟随夜间/白天主题 */
.bg-light { background-color: var(--muted-bg-color-l, #f2f6fb) !important; }
.text-primary { color: var(--zmt-accent) !important; }
.btn-primary {
    background-color: var(--zmt-accent) !important;
    border-color: var(--zmt-accent) !important;
    color: #fff !important;
}
.btn-primary:hover,
.btn-primary:focus {
    background-color: var(--zmt-accent-hover) !important;
    border-color: var(--zmt-accent-hover) !important;
}
body.io-black-mode .form-control,
body.io-black-mode .custom-select {
    background-color: #1a1a1d;
    border-color: rgba(255,255,255,.14);
    color: var(--main-color);
}
body.io-black-mode .form-control::placeholder { color: var(--muted-color3); }
body.io-black-mode .form-control:focus,
body.io-black-mode .custom-select:focus {
    background-color: #1f1f23;
    border-color: var(--zmt-accent);
    color: #fff;
    box-shadow: 0 0 0 .2rem rgba(var(--zmt-accent-rgb), .18);
}
body:not(.io-black-mode) .form-control,
body:not(.io-black-mode) .custom-select {
    background-color: #fff;
    border-color: #d7e0ec;
    color: #22262c;
}
body:not(.io-black-mode) .form-control::placeholder { color: #9aa6b8; }
body:not(.io-black-mode) .form-control:focus,
body:not(.io-black-mode) .custom-select:focus {
    border-color: var(--zmt-accent);
    box-shadow: 0 0 0 .2rem rgba(var(--zmt-accent-rgb), .15);
}
/* 原生 select 在部分 Chromium 下不跟随背景色，改为自绘箭头 */
body.io-black-mode select.form-control {
    -webkit-appearance: none;
    appearance: none;
    color-scheme: dark;
    background-color: #1a1a1d !important;
    background-image: linear-gradient(45deg, transparent 50%, #b0a79c 50%), linear-gradient(135deg, #b0a79c 50%, transparent 50%);
    background-position: calc(100% - 18px) calc(50% - 2px), calc(100% - 13px) calc(50% - 2px);
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
    padding-right: 34px;
}
body:not(.io-black-mode) select.form-control {
    -webkit-appearance: none;
    appearance: none;
    color-scheme: light;
    background-color: #fff !important;
    background-image: linear-gradient(45deg, transparent 50%, #536174 50%), linear-gradient(135deg, #536174 50%, transparent 50%);
    background-position: calc(100% - 18px) calc(50% - 2px), calc(100% - 13px) calc(50% - 2px);
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
    padding-right: 34px;
}
/* ===== 全站字体：钉钉进步体 ===== */
@font-face {
    font-family: "DingTalk JinBuTi";
    src: local("DingTalk JinBuTi"), url("fonts/DingTalkJinBuTi.woff2") format("woff2");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
:root,
.io-black-mode {
    --zmt-ui-font: "DingTalk JinBuTi", -apple-system, BlinkMacSystemFont, "Segoe UI", "HarmonyOS Sans SC", "MiSans", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;
}
body,
body *:not(code):not(pre):not(kbd):not(samp):not(.fa):not(.fas):not(.far):not(.fab):not(.iconfont):not(.dashicons):not([class^="icon-"]):not([class*=" icon-"]) {
    font-family: var(--zmt-ui-font) !important;
}
/* 首页侧栏栏目点击：在当前页定位到对应板块，并避开固定顶栏 */
.zmt-section-head[id^="term-"] {
    scroll-margin-top: 84px;
}

/* ===== 首页「我的收藏」 ===== */
.zmt-collection-card {
    overflow: hidden;
}
.zmt-collection-head {
    align-items: center;
    padding-bottom: 12px;
}
.zmt-collection-headmain {
    display: flex;
    flex: none;
    align-items: center;
    min-width: 0;
}
/* 收藏 / 书签 一级切换 */
.zmt-collection-switch {
    display: flex;
    flex: none;
    gap: 6px;
    margin-left: auto;
}
.zmt-collection-switch-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    height: 30px;
    padding: 0 11px;
    font-size: 12px;
    color: var(--muted-color2, #b9bcc8);
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 6px;
    cursor: pointer;
    transition: all .18s ease;
}
.zmt-collection-switch-btn:hover {
    color: var(--main-color, #fff);
    border-color: rgba(var(--zmt-accent-rgb), .45);
}
.zmt-collection-switch-btn.active {
    color: var(--zmt-accent);
    background: rgba(var(--zmt-accent-rgb), .14);
    border-color: rgba(var(--zmt-accent-rgb), .55);
}
.zmt-collection-switch-count {
    min-width: 16px;
    font-size: 11px;
    font-weight: 400;
    text-align: center;
    opacity: .9;
}
body:not(.io-black-mode) .zmt-collection-switch-btn {
    color: #5f6570;
    background: #f5f6f8;
    border-color: #e3e7ee;
}
body:not(.io-black-mode) .zmt-collection-switch-btn.active {
    color: var(--zmt-accent);
    background: rgba(var(--zmt-accent-rgb), .08);
    border-color: rgba(var(--zmt-accent-rgb), .35);
}
.zmt-collection-view {
    min-width: 0;
}
.zmt-collection-bm {
    padding: 4px 16px 16px;
}
.zmt-collection-title {
    font-size: 16px;
    color: var(--main-color, #e8eaed);
    white-space: nowrap;
}
.zmt-collection-title i {
    color: var(--zmt-accent);
}
.zmt-collection-actions {
    display: flex;
    flex: none;
    align-items: center;
    gap: 8px;
    margin-left: auto;
}
.zmt-collection-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 30px;
    padding: 0 11px;
    font-size: 12px;
    color: var(--zmt-accent);
    background: rgba(var(--zmt-accent-rgb), .08);
    border: 1px solid rgba(var(--zmt-accent-rgb), .38);
    border-radius: 6px;
    cursor: pointer;
    transition: all .18s ease;
}
.zmt-collection-btn:hover,
.zmt-collection-btn.active {
    color: #12121a;
    background: var(--zmt-accent);
    border-color: var(--zmt-accent);
}
.zmt-collection-cat-form {
    display: none;
    align-items: center;
    gap: 8px;
    padding: 8px 16px 4px;
}
.zmt-collection-cat-form.is-open {
    display: flex;
}
.zmt-collection-cat-form input {
    flex: 1;
    min-width: 0;
    height: 32px;
    padding: 0 10px;
    font-size: 12px;
    color: var(--main-color, #e8eaed);
    background: rgba(255, 255, 255, .05);
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 6px;
    outline: none;
}
.zmt-collection-cat-form input:focus {
    border-color: rgba(var(--zmt-accent-rgb), .6);
    box-shadow: 0 0 0 2px rgba(var(--zmt-accent-rgb), .12);
}
.zmt-collection-msg {
    font-size: 12px;
    white-space: nowrap;
}
.zmt-collection-msg.err {
    color: #ef7b7b;
}
.zmt-collection-msg.ok {
    color: #6fcf97;
}
.zmt-collection-tabbar {
    flex: 1;
    min-width: 0;
    padding: 0;
}
.zmt-collection-panes {
    padding-top: 8px;
}
.zmt-collection-item {
    min-width: 0;
}
.zmt-collection-item .zmt-bm-item {
    text-decoration: none;
}
.zmt-collection-tools {
    display: none;
    align-items: center;
    gap: 6px;
    margin-top: 5px;
}
.zmt-collection-card.is-manage .zmt-collection-tools {
    display: flex;
}
.zmt-collection-move {
    flex: 1;
    min-width: 0;
    height: 28px;
    padding: 0 24px 0 8px;
    font-size: 12px;
    color: var(--main-color, #dfe2ea);
    background-color: rgba(255, 255, 255, .05);
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 5px;
    outline: none;
    cursor: pointer;
}
.zmt-collection-move:focus {
    border-color: rgba(var(--zmt-accent-rgb), .6);
}
.zmt-collection-remove {
    display: inline-flex;
    flex: none;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    color: #ef7b7b;
    background: rgba(239, 123, 123, .08);
    border: 1px solid rgba(239, 123, 123, .3);
    border-radius: 5px;
    cursor: pointer;
}
.zmt-collection-remove:hover {
    color: #fff;
    background: #ef7b7b;
    border-color: #ef7b7b;
}
.zmt-collection-remove:disabled,
.zmt-collection-move:disabled {
    opacity: .6;
    cursor: default;
}
.zmt-collection-foot {
    display: flex;
    align-items: center;
    gap: 4px;
    margin: 10px 16px 0;
    padding: 9px 0 2px;
    font-size: 11px;
    color: var(--muted-color2, #7f8492);
    border-top: 1px solid rgba(255, 255, 255, .06);
}
body:not(.io-black-mode) .zmt-collection-foot {
    color: #7b8089;
}
body:not(.io-black-mode) .zmt-collection-title {
    color: #252a31;
}
body:not(.io-black-mode) .zmt-collection-btn {
    color: var(--zmt-accent);
    background: rgba(var(--zmt-accent-rgb), .08);
    border-color: rgba(var(--zmt-accent-rgb), .3);
}
body:not(.io-black-mode) .zmt-collection-btn:hover,
body:not(.io-black-mode) .zmt-collection-btn.active {
    color: #fff;
    background: var(--zmt-accent);
    border-color: var(--zmt-accent);
}
body:not(.io-black-mode) .zmt-collection-cat-form input,
body:not(.io-black-mode) .zmt-collection-move {
    color: #30343b;
    background-color: #fff;
    border-color: #dfe3e8;
}
body:not(.io-black-mode) .zmt-collection-foot {
    border-top-color: #eceef2;
}
@media (max-width: 575px) {
    .zmt-collection-head {
        flex-wrap: wrap;
        row-gap: 8px;
    }
    .zmt-collection-headmain {
        flex: 1 1 auto;
    }
    .zmt-collection-tabbar {
        order: 3;
        flex: 1 1 100%;
    }
    .zmt-collection-actions {
        margin-left: auto;
    }
    .zmt-collection-cat-form {
        flex-wrap: wrap;
    }
    .zmt-collection-cat-form input {
        flex-basis: 100%;
    }
}

/* ===== 侧栏「我要收录」弹窗 ===== */
body.zmt-modal-open {
    overflow: hidden;
}
.zmt-contribute-dialog {
    width: 720px;
    max-width: 94vw;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
}
.zmt-contribute-body {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
}
.zmt-contribute-tip {
    margin: 0 0 14px;
    font-size: 12px;
    line-height: 1.65;
    color: var(--muted-color2, #8a8f98);
}
.zmt-contribute-fetch {
    padding: 12px 14px;
    margin-bottom: 16px;
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 8px;
}
.zmt-contribute-fetch-head {
    margin-bottom: 8px;
    font-size: 12px;
    font-weight: 600;
    color: var(--main-color, #e8eaed);
}
.zmt-contribute-fetch-row {
    display: flex;
    align-items: center;
    gap: 8px;
}
.zmt-contribute-fetch-row .form-control {
    flex: 1;
    min-width: 0;
}
.zmt-contribute-fetch-row .btn {
    flex: none;
    white-space: nowrap;
}
.zmt-contribute-fetch-res {
    min-height: 18px;
    margin-top: 8px;
    font-size: 12px;
    line-height: 1.6;
    color: var(--muted-color2, #8a8f98);
}
.zmt-contribute-hp {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}
.zmt-contribute-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 4px;
}
.zmt-contribute-msg {
    margin-top: 10px;
    font-size: 12px;
    line-height: 1.6;
}
.zmt-contribute-msg.is-ok { color: #6fcf97; }
.zmt-contribute-msg.is-err { color: #ef7b7b; }
body:not(.io-black-mode) .zmt-contribute-fetch {
    background: #f7f8fa;
    border-color: #e4e7ec;
}
body:not(.io-black-mode) .zmt-contribute-tip,
body:not(.io-black-mode) .zmt-contribute-fetch-res {
    color: #7b8089;
}
@media (max-width: 575px) {
    .zmt-contribute-dialog {
        max-width: 96vw;
        max-height: 92vh;
    }
    .zmt-contribute-fetch-row {
        flex-wrap: wrap;
    }
    .zmt-contribute-fetch-row .form-control {
        flex: 1 1 100%;
    }
    .zmt-contribute-fetch-row .btn {
        width: 100%;
    }
    .zmt-contribute-actions .btn {
        flex: 1;
    }
}

/* ===== 右侧悬浮工具（微信 / QQ / 日间夜间 / TOP） ===== */
.zmt-float-tool {
    position: fixed;
    right: var(--zmt-float-right, 24px);
    bottom: var(--zmt-float-bottom, 90px);
    z-index: 9990;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    transition: opacity .22s ease, transform .22s ease;
    will-change: opacity, transform;
}
.zmt-float-tool.is-scrolling {
    opacity: 0;
    transform: translateX(14px);
    pointer-events: none;
}
.zmt-float-btn {
    width: 46px;
    height: 46px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 13px;
    background: rgba(20, 20, 24, .92);
    color: #d8d8df;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 8px 22px rgba(0, 0, 0, .18);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    transition: background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
}
.zmt-float-btn:hover {
    color: #ff8a1f;
    border-color: rgba(255, 138, 31, .55);
    background: #1c1c21;
    transform: translateY(-1px);
}
.zmt-float-btn:focus-visible {
    outline: 2px solid #ff8a1f;
    outline-offset: 2px;
}
.zmt-float-btn svg {
    display: block;
    width: 19px;
    height: 19px;
    flex: none;
}
.zmt-float-qq-text {
    display: block;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -.4px;
    color: inherit;
}
.zmt-float-item {
    position: relative;
    display: flex;
}
.zmt-float-top {
    flex-direction: column;
    gap: 1px;
    max-height: 0;
    padding: 0;
    border-width: 0;
    opacity: 0;
    overflow: hidden;
    pointer-events: none;
    transform: translateY(6px);
    transition: max-height .2s ease, opacity .2s ease, padding .2s ease, transform .2s ease, border-width .2s ease;
}
.zmt-float-top span {
    font-size: 9px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: .04em;
}
.zmt-float-top i {
    font-size: 12px;
    line-height: 1;
}
.zmt-float-top svg {
    width: 12px;
    height: 12px;
}
.zmt-float-tool.is-scrolled .zmt-float-top {
    max-height: 46px;
    padding: 4px 0;
    border-width: 1px;
    opacity: 1;
    pointer-events: auto;
    transform: none;
}
.zmt-float-pop {
    position: absolute;
    right: calc(100% + 12px);
    bottom: 0;
    width: 196px;
    padding: 12px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 14px;
    background: rgba(18, 18, 22, .97);
    color: #f2f2f6;
    text-align: center;
    box-shadow: 0 16px 40px rgba(0, 0, 0, .32);
    opacity: 0;
    visibility: hidden;
    transform: translateX(8px) scale(.98);
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
    z-index: 2;
}
.zmt-float-pop.is-open {
    opacity: 1;
    visibility: visible;
    transform: none;
}
.zmt-float-pop::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -7px;
    width: 12px;
    height: 12px;
    margin-top: -6px;
    background: rgba(18, 18, 22, .97);
    border-top: 1px solid rgba(255, 255, 255, .12);
    border-right: 1px solid rgba(255, 255, 255, .12);
    transform: rotate(45deg);
}
.zmt-float-pop-head {
    font-size: 12px;
    font-weight: 700;
    color: #ff9a3c;
}
.zmt-float-qr {
    display: block;
    width: 160px;
    height: 160px;
    margin: 9px auto 0;
    border-radius: 8px;
    background: #fff;
    object-fit: cover;
}
.zmt-float-pop-tip {
    margin: 7px 0 0;
    font-size: 11px;
    line-height: 1.4;
    color: rgba(255, 255, 255, .55);
}
.zmt-float-empty {
    margin: 12px 0 0;
    font-size: 12px;
    line-height: 1.6;
    color: rgba(255, 255, 255, .65);
}
.zmt-float-pop-link {
    display: block;
    margin-top: 10px;
    padding: 8px 10px;
    border-radius: 8px;
    background: #ff8a1f;
    color: #fff !important;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.4;
    text-decoration: none;
}
.zmt-float-pop-link:hover {
    background: #ff9e43;
    color: #fff !important;
}
.zmt-float-mode .zmt-ico-sun { display: none; }
body.io-black-mode .zmt-float-mode .zmt-ico-sun { display: block; }
body.io-black-mode .zmt-float-mode .zmt-ico-moon { display: none; }

body:not(.io-black-mode) .zmt-float-btn {
    background: rgba(255, 255, 255, .96);
    border-color: #e4e4ea;
    color: #3c3c46;
    box-shadow: 0 8px 22px rgba(20, 25, 40, .10);
}
body:not(.io-black-mode) .zmt-float-btn:hover {
    color: #e5740c;
    border-color: rgba(229, 116, 12, .45);
    background: #fff;
}
body:not(.io-black-mode) .zmt-float-pop {
    background: #fff;
    border-color: #e6e6ec;
    color: #2c2c34;
    box-shadow: 0 16px 40px rgba(20, 25, 40, .16);
}
body:not(.io-black-mode) .zmt-float-pop::after {
    background: #fff;
    border-color: #e6e6ec;
}
body:not(.io-black-mode) .zmt-float-pop-head { color: #d96b08; }
body:not(.io-black-mode) .zmt-float-pop-tip { color: #8b8b95; }
body:not(.io-black-mode) .zmt-float-empty { color: #70707a; }

@media (max-width: 575px) {
    .zmt-float-tool {
        right: 12px;
        bottom: 80px;
        gap: 6px;
    }
    .zmt-float-btn {
        width: 42px;
        height: 42px;
        border-radius: 12px;
        font-size: 16px;
    }
    .zmt-float-tool.is-scrolled .zmt-float-top {
        max-height: 42px;
    }
    .zmt-float-top span { font-size: 8px; }
    .zmt-float-pop {
        width: 178px;
        padding: 10px;
        right: calc(100% + 8px);
    }
    .zmt-float-qr {
        width: 146px;
        height: 146px;
    }
}
@media print {
    .zmt-float-tool { display: none !important; }
}
@media (prefers-reduced-motion: reduce) {
    .zmt-float-tool,
    .zmt-float-btn,
    .zmt-float-top,
    .zmt-float-pop {
        transition: none !important;
    }
}

/* ===== 全站字号适配：顶栏、侧栏略增，首页板块标题略降 ===== */
/* 首页侧栏：隐藏「常用推荐」父级图标和标题，其下栏目保持原样 */
.aside-card .aside-ul .aside-item.zmt-aside-common-head {
    display: none;
}
.header-nav .navbar-header > .menu-item > a {
    font-size: 16px;
}
.aside-card .aside-ul .aside-a {
    padding: 7px 5px;
    font-size: 14px;
    line-height: 1.35;
}
.aside-card .aside-ul .aside-item > .aside-a span {
    font-size: 14px;
    line-height: 1.3;
}
.aside-card .aside-item.aside-child {
    padding-left: 18px;
}
.aside-card .aside-ul .aside-a i {
    width: 17px;
    font-size: 14px;
}
.aside-card .aside-bottom .aside-btn,
.aside-card .aside-contribute .btn {
    font-size: 13px;
}
.content-card .zmt-section-head .card-title {
    font-size: 18px;
}
.zmt-section-titleline {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 10px;
    min-width: 0;
}
.content-card .zmt-section-head > .btn-more {
    flex: 0 0 auto;
    white-space: nowrap;
}
.zmt-section-tabs {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    min-width: 0;
}
.zmt-section-tab {
    display: inline-flex;
    align-items: center;
    padding: 2px 9px;
    border-radius: 12px;
    font-family: inherit;
    font-size: .76rem;
    font-weight: 400;
    line-height: 1.5;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    text-decoration: none;
    color: var(--muted-color2, #a6a8ab);
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.07);
    white-space: nowrap;
    transition: color .2s, background-color .2s, border-color .2s;
}
.zmt-section-tab:hover {
    color: var(--zmt-accent);
    background: rgba(var(--zmt-accent-rgb),.1);
    border-color: rgba(var(--zmt-accent-rgb),.45);
}
.zmt-section-tab.is-active {
    color: var(--zmt-accent);
    background: rgba(var(--zmt-accent-rgb),.14);
    border-color: rgba(var(--zmt-accent-rgb),.5);
    font-weight: 600;
}
.zmt-section-tab:focus {
    outline: none;
}
.zmt-section-tab:focus-visible {
    outline: 2px solid rgba(var(--zmt-accent-rgb),.55);
    outline-offset: 1px;
}
.zmt-section-loading {
    padding: 26px 0;
    text-align: center;
    color: var(--muted-color2, #a6a8ab);
    font-size: .88rem;
}
.zmt-section-empty-col {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
}
body:not(.io-black-mode) .zmt-section-tab {
    color: #555;
    background: rgba(0,0,0,.04);
    border-color: rgba(0,0,0,.07);
}
body:not(.io-black-mode) .zmt-section-tab:hover {
    color: var(--zmt-accent);
    background: rgba(var(--zmt-accent-rgb),.08);
    border-color: rgba(var(--zmt-accent-rgb),.4);
}
body:not(.io-black-mode) .zmt-section-tab.is-active {
    color: var(--zmt-accent);
    background: rgba(var(--zmt-accent-rgb),.1);
    border-color: rgba(var(--zmt-accent-rgb),.45);
}
body:not(.io-black-mode) .zmt-section-loading {
    color: #777;
}
@media (max-width: 767px) {
    .header-nav .navbar-header > .menu-item > a {
        font-size: 15px;
    }
    .content-card .zmt-section-head .card-title {
        font-size: 16px;
    }
    .zmt-section-titleline {
        gap: 6px 8px;
    }
    .zmt-section-tab {
        padding: 2px 8px;
        font-size: .72rem;
    }
}

/* ===== 底部：友情/站内导航 + 品牌 + 二维码（白天/黑夜自适应） ===== */
.zmt-footer {
    margin-top: 32px;
    padding: 0 32px 36px;
    background: #f5f6f8;
    border: 0;
}
body.aside-show:not(.zmt-aside-off):not(.zmt-no-aside) .zmt-footer {
    padding-left: calc(var(--main-aside-width, 100px) + 15px);
    padding-right: 20px;
}
.zmt-footer-inner {
    max-width: 1600px;
    margin: 0 auto;
}
.zmt-footer-card {
    background: #ffffff;
    border: 1px solid rgba(31, 35, 41, .06);
    border-radius: 8px;
    box-shadow: 0 1px 3px rgba(31, 35, 41, .03);
}
.zmt-footer-links-card {
    padding: 22px 28px;
    margin-bottom: 22px;
}
.zmt-footer-title {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    color: #1f2329;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.4;
}
.zmt-footer-title i {
    color: #86909c;
    font-size: 17px;
}
.zmt-footer-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    color: #4e5969;
    font-size: 13px;
    line-height: 2;
}
.zmt-footer-links a {
    color: #4e5969;
    text-decoration: none;
    padding: 0 8px;
    white-space: nowrap;
    transition: color .18s ease;
}
.zmt-footer-links a:hover {
    color: var(--zmt-accent, #ff7a1a);
}
.zmt-footer-dot {
    color: #c9cdd4;
    padding: 0 1px;
    user-select: none;
}
.zmt-footer-links .zmt-footer-more {
    color: #86909c;
}
.zmt-footer-main-card {
    display: grid;
    grid-template-columns: minmax(380px, 1.35fr) minmax(300px, 1fr) auto;
    grid-template-areas:
        "brand center qrs"
        "copy copy copy";
    gap: 22px 40px;
    padding: 32px 38px 22px;
}
.zmt-footer-main-card.zmt-footer-no-qrs {
    grid-template-columns: minmax(380px, 1.35fr) minmax(300px, 1fr);
    grid-template-areas:
        "brand center"
        "copy copy";
}
.zmt-footer-brand {
    grid-area: brand;
    display: flex;
    align-items: flex-start;
    gap: 16px;
    min-width: 0;
}
.zmt-footer-logo {
    flex: 0 0 56px;
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    overflow: hidden;
    background: linear-gradient(135deg, #ffb648 0%, #ff7a1a 100%);
    color: #fff;
    font-size: 28px;
    font-weight: 800;
    line-height: 1;
    box-shadow: 0 6px 16px rgba(255, 122, 26, .22);
}
.zmt-footer-logo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: transparent;
}
.zmt-footer-brand-text {
    min-width: 0;
}
.zmt-footer-name {
    color: #1f2329;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -0.5px;
}
.zmt-footer-tagline {
    margin-top: 2px;
    color: #86909c;
    font-size: 13px;
    letter-spacing: 1px;
}
.zmt-footer-desc {
    max-width: 460px;
    margin-top: 18px;
    color: #86909c;
    font-size: 13px;
    line-height: 1.8;
}
.zmt-footer-center {
    grid-area: center;
    min-width: 0;
    padding-top: 2px;
}
.zmt-footer-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 26px;
    color: #4e5969;
    font-size: 14px;
}
.zmt-footer-nav a {
    color: #4e5969;
    text-decoration: none;
    transition: color .18s ease;
}
.zmt-footer-nav a:hover {
    color: var(--zmt-accent, #ff7a1a);
}
.zmt-footer-social {
    display: flex;
    gap: 12px;
    margin-top: 26px;
}
.zmt-footer-social a {
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #f2f3f5;
    color: #4e5969;
    font-size: 16px;
    text-decoration: none;
    transition: background .18s ease, color .18s ease, transform .18s ease;
}
.zmt-footer-social a:hover {
    background: var(--zmt-accent, #ff7a1a);
    color: #fff;
    transform: translateY(-1px);
}
.zmt-footer-qrs {
    grid-area: qrs;
    display: flex;
    gap: 18px;
    align-items: flex-start;
    justify-self: end;
}
.zmt-footer-qr {
    text-align: center;
}
.zmt-footer-qr-box {
    width: 94px;
    height: 94px;
    padding: 6px;
    background: #fff;
    border: 1px solid #e5e6eb;
    border-radius: 4px;
}
.zmt-footer-qr-box img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.zmt-footer-qr span {
    display: block;
    margin-top: 8px;
    color: #86909c;
    font-size: 12px;
}
.zmt-footer-copy {
    grid-area: copy;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px 28px;
    flex-wrap: wrap;
    padding-top: 15px;
    border-top: 1px solid #f2f3f5;
    color: #86909c;
    font-size: 12px;
    line-height: 1.7;
}
.zmt-footer-copy a {
    color: #86909c;
    text-decoration: none;
}
.zmt-footer-copy a:hover {
    color: var(--zmt-accent, #ff7a1a);
}
.zmt-footer-copy-right {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 18px;
}
.io-black-mode .zmt-footer {
    background: #0e1012;
}
.io-black-mode .zmt-footer-card {
    background: #17191d;
    border-color: rgba(255, 255, 255, .07);
    box-shadow: none;
}
.io-black-mode .zmt-footer-title,
.io-black-mode .zmt-footer-name {
    color: #e8eaed;
}
.io-black-mode .zmt-footer-links,
.io-black-mode .zmt-footer-links a,
.io-black-mode .zmt-footer-nav,
.io-black-mode .zmt-footer-nav a {
    color: #a9afb8;
}
.io-black-mode .zmt-footer-links a:hover,
.io-black-mode .zmt-footer-nav a:hover,
.io-black-mode .zmt-footer-copy a:hover {
    color: var(--zmt-accent, #ff7a1a);
}
.io-black-mode .zmt-footer-dot,
.io-black-mode .zmt-footer-links .zmt-footer-more,
.io-black-mode .zmt-footer-tagline,
.io-black-mode .zmt-footer-desc,
.io-black-mode .zmt-footer-qr span,
.io-black-mode .zmt-footer-copy {
    color: #7f8790;
}
.io-black-mode .zmt-footer-social a {
    background: #22262b;
    color: #c7ccd3;
}
.io-black-mode .zmt-footer-social a:hover {
    background: var(--zmt-accent, #ff7a1a);
    color: #fff;
}
.io-black-mode .zmt-footer-qr-box {
    background: #fff;
    border-color: rgba(255, 255, 255, .12);
}
.io-black-mode .zmt-footer-copy {
    border-top-color: rgba(255, 255, 255, .08);
}
.io-black-mode .zmt-footer-copy a {
    color: #7f8790;
}
@media (max-width: 1199px) {
    .zmt-footer-main-card {
        grid-template-columns: minmax(320px, 1.2fr) minmax(260px, 1fr) auto;
        gap: 20px 28px;
        padding: 26px 28px 20px;
    }
    .zmt-footer-main-card.zmt-footer-no-qrs {
        grid-template-columns: minmax(320px, 1.2fr) minmax(260px, 1fr);
    }
    .zmt-footer-name {
        font-size: 26px;
    }
    .zmt-footer-qr-box {
        width: 86px;
        height: 86px;
    }
}
@media (max-width: 991px) {
    .zmt-footer {
        padding: 0 18px 28px;
    }
    body.aside-show:not(.zmt-aside-off):not(.zmt-no-aside) .zmt-footer {
        padding-left: 18px;
        padding-right: 18px;
    }
    .zmt-footer-links-card {
        padding: 18px 20px;
        margin-bottom: 16px;
    }
    .zmt-footer-main-card {
        grid-template-columns: 1fr;
        grid-template-areas:
            "brand"
            "center"
            "qrs"
            "copy";
        gap: 20px;
        padding: 24px 22px 20px;
    }
    .zmt-footer-main-card.zmt-footer-no-qrs {
        grid-template-areas:
            "brand"
            "center"
            "copy";
    }
    .zmt-footer-qrs {
        justify-self: start;
    }
    .zmt-footer-copy {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }
}
@media (max-width: 575px) {
    .zmt-footer {
        padding: 0 12px 24px;
        margin-top: 24px;
    }
    body.aside-show:not(.zmt-aside-off):not(.zmt-no-aside) .zmt-footer {
        padding-left: 12px;
        padding-right: 12px;
    }
    .zmt-footer-links-card {
        padding: 16px 16px;
    }
    .zmt-footer-title {
        font-size: 16px;
        margin-bottom: 8px;
    }
    .zmt-footer-links {
        font-size: 12px;
    }
    .zmt-footer-links a {
        padding: 0 5px;
    }
    .zmt-footer-main-card {
        padding: 20px 16px 18px;
    }
    .zmt-footer-brand {
        gap: 12px;
    }
    .zmt-footer-logo {
        flex-basis: 46px;
        width: 46px;
        height: 46px;
        font-size: 23px;
        border-radius: 8px;
    }
    .zmt-footer-name {
        font-size: 24px;
    }
    .zmt-footer-desc {
        margin-top: 12px;
    }
    .zmt-footer-qrs {
        gap: 14px;
    }
    .zmt-footer-qr-box {
        width: 82px;
        height: 82px;
    }
}

/* 首页「其他导航」下拉：两列排布（先填满左列 8 项，再填右列 7 项） */
.header-nav .navbar-header .sub-menu.zmt-submenu-two-col {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-flow: column;
    grid-template-rows: repeat(8, auto);
    width: 360px;
    min-width: 360px;
    box-sizing: border-box;
}
.header-nav .navbar-header .sub-menu.zmt-submenu-two-col > li {
    min-width: 0;
    max-width: none;
    box-sizing: border-box;
}
.header-nav .navbar-header .sub-menu.zmt-submenu-two-col > li > a {
    display: block;
}

/* 详情页：栏目路径彩色标签（按 term_id 稳定取色，刷新不跳色） */
.zmt-detail-term-path {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
}
.zmt-chip {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    padding: 3px 9px;
    border-radius: 12px;
    border: 1px solid hsla(var(--chip-h), 78%, 60%, .60);
    background: hsla(var(--chip-h), 76%, 52%, .28);
    color: hsl(var(--chip-h), 90%, 78%);
    font-size: .76rem;
    line-height: 1.45;
    font-weight: 500;
    text-decoration: none;
    transition: background .18s ease, border-color .18s ease, color .18s ease;
}
.zmt-chip:hover {
    background: hsla(var(--chip-h), 82%, 55%, .38);
    border-color: hsla(var(--chip-h), 85%, 65%, .80);
    color: hsl(var(--chip-h), 95%, 84%);
}
.zmt-term-sep {
    color: var(--muted-color2, #a6a8ab);
    opacity: .55;
    font-size: .72rem;
    padding: 0 1px;
}
body:not(.io-black-mode) .zmt-chip {
    color: hsl(var(--chip-h), 70%, 34%);
    background: hsla(var(--chip-h), 76%, 55%, .16);
    border-color: hsla(var(--chip-h), 65%, 45%, .45);
}
body:not(.io-black-mode) .zmt-chip:hover {
    background: hsla(var(--chip-h), 76%, 55%, .25);
    border-color: hsla(var(--chip-h), 65%, 45%, .65);
    color: hsl(var(--chip-h), 74%, 28%);
}
.zmt-tag[style*="--chip-h"] {
    color: hsl(var(--chip-h), 90%, 78%);
    background: hsla(var(--chip-h), 76%, 52%, .28);
    border-color: hsla(var(--chip-h), 78%, 60%, .60);
}
.zmt-tag[style*="--chip-h"]:hover {
    background: hsla(var(--chip-h), 82%, 55%, .38);
    border-color: hsla(var(--chip-h), 85%, 65%, .80);
    color: hsl(var(--chip-h), 95%, 84%);
}
body:not(.io-black-mode) .zmt-tag[style*="--chip-h"] {
    color: hsl(var(--chip-h), 70%, 34%);
    background: hsla(var(--chip-h), 76%, 55%, .16);
    border-color: hsla(var(--chip-h), 65%, 45%, .45);
}
body:not(.io-black-mode) .zmt-tag[style*="--chip-h"]:hover {
    background: hsla(var(--chip-h), 76%, 55%, .25);
    border-color: hsla(var(--chip-h), 65%, 45%, .65);
    color: hsl(var(--chip-h), 74%, 28%);
}

/* 详情页 / 博客文章：标签盒子 */
.zmt-detail-tags-card {
    padding: 16px 20px;
}
.zmt-detail-tags-card .zmt-block-head {
    margin-bottom: 12px !important;
}
.zmt-tagbox-list {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}
.zmt-tagbox-head {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 11px;
    color: var(--muted-color2, #a6a8ab);
    font-size: .82rem;
    font-weight: 600;
}
.zmt-tagbox-head i {
    color: var(--zmt-accent, #ff7a45);
}
.zmt-tagbox-empty {
    color: var(--muted-color2, #a6a8ab);
    font-size: .78rem;
}
.zmt-detail-tag {
    margin: 0;
}

/* 侧栏当前栏目高亮：覆盖竖排默认颜色 */
.aside-card .aside-ul .aside-item.active > .aside-a,
.aside-card .aside-ul .aside-item.active > .aside-a i,
.aside-card .aside-ul .aside-item.active > .aside-a span {
    color: var(--zmt-accent, #ff7a45) !important;
}
.aside-card .aside-ul .aside-item.active > .aside-a {
    background: rgba(255, 122, 69, .08);
}


