/* style.css - 独立样式表 */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
body {
    background: #eef0f3;
    font-family: "Microsoft Yahei", Helvetica, Arial, sans-serif;
    color: #333;
    line-height: 1.6;
}
a {
    color: #333;
    text-decoration: none;
}
a:hover {
    color: #ff6b6b;
}

/* ========== 容器：用于通栏模块内部的内容居中 ========== */
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* ============================================================
   模块1：LOGO + 时钟（通栏卡片）
   ============================================================ */
.zmt-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    background: #ffffff;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.07);
    padding: 10px 0;
    height: 100px;
}

/* LOGO+时钟 内容容器 */
.header-top-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

.logo-title {
    font-size: 40px;
    font-weight: 700;
    flex-shrink: 0;
}
.logo-title a {
    color: #ff0000;
}

.sub-nav {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    margin:0 10px;
}
#clock {
    font-size: 16px;
    color: #666;
    white-space: nowrap;
}

/* ============================================================
   模块2：导航菜单（通栏卡片）
   ============================================================ */
.nav-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    background: #ffffff;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.07);
    padding: 0 0;
    margin-top: 75px;
    border-top: 3px solid #ff6b6b;
}

.nav-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

.main-nav {
    flex: 1;
}

.header-menu {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0;
    padding: 0;
}
.header-menu > li {
    margin-right: 0px;
    position: relative;
}

.header-menu > li > a {
    font-size: 16px;
    color: #555;
    line-height: 62px;
    display: block;
    padding: 0 10px;
    position: relative;        /* 新增：给伪元素定位 */
    z-index: 1;                /* 新增：让文字压在伪元素之上 */
    background: transparent;   /* 不用 background 做 hover 了 */
    transition: color 0.3s ease;
}

/* 用伪元素当"背景"，从中间上下展开 */
.header-menu > li > a::before {
    content: "";
    position: absolute;
    inset: 0;                          /* 铺满整个 a */
    background: #ff6b6b;
    transform: scaleY(0);              /* 初始：压扁 → "无" */
    transform-origin: top;          /* 从中间向上下展开 */
    transition: none;
    z-index: -1;                       /* 压到文字下面 */
}

.header-menu > li > a:hover {
    color: #fff;                       /* 只改文字色 */
}

.header-menu > li > a:hover::before {
    transform: scaleY(1);              /* 展开到满 */
    transition: transform 0.3s ease;
}

/* 二级下拉菜单 - 桌面端 */
.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 160px;
    background: #fff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    list-style: none;
    z-index: 200;
    
    transform: scaleY(0);
    transform-origin: top;
    opacity: 0;
    visibility: hidden;

    transition: transform 0.3s ease,
                opacity 0.3s ease,
                visibility 0s;
}

.has-dropdown:hover .dropdown-menu {
    transform: scaleY(1);
    opacity: 1;
    visibility: visible;
    
    transition: transform 0.3s ease 0.1s,
                opacity 0.3s ease 0.1s,
                visibility 0s 0.1s;
}

.dropdown-menu li {
    width: 100%;
    margin: 0;
}

/* ===== 二级菜单的 a：改成伪元素背景 ===== */
.dropdown-menu li a {
    display: block;
    padding: 10px 20px;
    font-size: 16px;
    color: #555;
    white-space: nowrap;
    position: relative;        /* 给伪元素定位 */
    z-index: 1;                /* 文字压住伪元素 */
    background: transparent;   /* 不用 background 做 hover */
    transition: color 0.3s ease;
}

/* 伪元素当背景，从顶部往下展开 */
.dropdown-menu li a::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #ff6b6b;
    transform: scaleY(0);
    transform-origin: top;     /* 从上往下展开，和一级菜单一致 */
    transition: none;
    z-index: -1;
}

.dropdown-menu li a:hover {
    color: #fff;               /* 只改文字色 */
}

.dropdown-menu li a:hover::before {
    transform: scaleY(1);
    transition: transform 0.3s ease;
}

.mobile-bars {
    display: none;
    font-size: 28px;
    cursor: pointer;
    line-height: 1;
    padding: 10px;
}

/* ============================================================
   内容区（独立卡片，非通栏）
   ============================================================ */
.content-wrap {
    display: flex;
    margin: 150px 0 10px 0;
    gap: 10px;
}

.content {
    flex: 1;
    min-width: 0;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.index-h2 {
    padding: 20px 0 10px;
    font-size: 18px;
    font-weight: 600;
    color: #1a1a1a;
}

/* ===== 轮播图 ===== */
.slider-wrapper {
    margin-bottom: 0;
    overflow: hidden;
    position: relative;
    background: #fff;
    border: none;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.07);
}
.slider-container {
    position: relative;
    overflow: hidden;
}
.slide-track {
    display: flex;
    transition: transform 0.5s ease;
}
.slide {
    min-width: 100%;
    position: relative;
    overflow: hidden;
}

.slide a {
    display: block;
    position: relative;
    overflow: hidden;
}

.slide img {
    width: 100%;
    max-height: 300px;
    min-height: 300px;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease, filter 0.4s ease;
}

.slide a:hover img {
    transform: scale(1.05);
    filter: brightness(1.05);
}

.slide-title {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    margin: 0;
    padding: 10px 20px;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    background: rgba(0, 0, 0, 0.5);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: background 0.4s ease, padding 0.4s ease, letter-spacing 0.3s ease;
    z-index: 2;
}

.slide-title::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%) scaleY(0);
    width: 3px;
    height: 60%;
    background: #ff6b6b;
    transition: transform 0.3s ease;
}

.slide a:hover .slide-title {
    background: rgba(0, 0, 0, 0.75);
    padding-left: 24px;
    letter-spacing: 0.5px;
}

.slide a:hover .slide-title::before {
    transform: translateY(-50%) scaleY(1);
}

.slider-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    font-size: 32px;
    text-align: center;
    color: #fff;
    z-index: 10;
    border: 1px solid rgba(255, 255, 255, 0.8);
    background: rgba(0, 0, 0, 0.25);
    cursor: pointer;
    transition: 0.3s;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.slider-btn span {
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1;
    margin-top: -4px;
}
.prev {
    left: 12px;
}
.next {
    right: 12px;
}

.slider-btn:hover {
    background: rgba(0, 0, 0, 0.7);
    transform: translateY(-40%) scale(1.1);
}
.slider-btn:active {
    transform: translateY(-40%) scale(0.95);
}

.slider-dots {
    position: absolute;
    bottom: 56px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 10px;
    z-index: 10;
}
.slider-dots span {
    display: block;
    width: 12px;
    height: 12px;
    background: rgba(0, 0, 0, 0.25);
    border: 1px solid rgba(255, 255, 255, 0.8);
    cursor: pointer;
    transition: 0.3s;
    border-radius: 50%;
}
.slider-dots span.active {
    background: #ff6b6b;
    width: 32px;
    border-radius: 6px;
}
.slider-dots span.active:hover {
    background: #ff0000;
}

.slider-dots span:hover {
    background: rgba(0, 0, 0, 0.7);
}
.slider-dots span.active:hover {
    background: #ff0000;
}

.slide a::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 107, 107, 0);
    transition: background 0.4s ease;
    pointer-events: none;
    z-index: 1;
}

.slide a:hover::after {
    background: rgba(255, 107, 107, 0.05);
}

/* ========== 面包屑导航 ========== */
.breadcrumb {
    background: #fff;
    padding: 12px 20px;
    margin-bottom: 0;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.07);
    font-size: 16px;
    color: #999;
    overflow: hidden;
}
.breadcrumb ul {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
}
.breadcrumb li + li::before {
    content: "/";
    margin-right: 8px;
    color: #ccc;
}
.breadcrumb a {
    color: #666;
}
.breadcrumb a:hover {
    color: #ff6b6b;
}
.breadcrumb li:last-child {
    color: #333;
}

/* ========== 分类标题 ========== */
.category-header {
    background: #fff;
    padding: 24px 28px;
    margin-bottom: 0;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.07);
}
.category-header h1 {
    font-size: 24px;
    font-weight: 700;
    color: #1a1a1a;
}
.category-header p {
    color: #999;
    font-size: 16px;
    margin-top: 4px;
}

/* ========== 文章列表 ========== */
.excerpts {
    background: #fff;
    padding: 0 20px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.07);
}
.article-item {
    padding: 15px 0;
    border-bottom: 1px solid #f0f2f4;
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}
.article-item:last-child {
    border-bottom: none;
}
.item-pic {
    flex-shrink: 0;
    width: 180px;
    align-self: center;
}
.item-pic img {
    width: 100%;
    min-height: 110px;
    max-height: 110px;
    object-fit: cover;
    background: #eef1f5;
}
.item-intro {
    flex: 1;
    min-width: 0;
}
.item-title {
    font-size: 16px;
    font-weight: 600;
    color: #1a1a1a;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
}
.item-title:hover {
    color: #ff6b6b;
}
.item-desc {
    font-size: 14px;
    color: #777;
    margin: 6px 0;
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.item-push-info {
    font-size: 14px;
    color: #999;
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    border-left: 2px solid #0958d9;
    padding-left: 10px;
}

.item-tags {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.item-tags a {
    padding: 2px 8px;
    font-size: 14px;
}
.item-tags a.tcolor1 {
    color: #cf1322;
    background: #fff1f0;
}
.item-tags a.tcolor2 {
    color: #0958d9;
    background: #e6f4ff;
}
.item-tags a.tcolor3 {
    color: #00b42a;
    background: #f0fff4;
}
.item-tags a.tcolor4 {
    color: #d46b08;
    background: #fff7e6;
}
.item-tags a.tcolor5 {
    color: #7b2fbe;
    background: #f9f0ff;
}
.item-tags a.tcolor6 {
    color: #08979c;
    background: #e6fffb;
}
.item-tags a.tcolor7 {
    color: #c41d7f;
    background: #fff0f6;
}
.item-tags a.tcolor8 {
    color: #389e0d;
    background: #f6ffed;
}
.item-tags a.tcolor9 {
    color: #d4380d;
    background: #fff2e8;
}
.item-tags a.tcolor10 {
    color: #531dab;
    background: #f9f0ff;
}
.item-tags a:hover {
    color: #fff;
    background: #ff6b6b;
}

/* ========== 分页导航 ========== */
.pagination {
    text-align: center;
    padding: 20px 0;
}
.pagination ul {
    display: flex;
    gap: 4px;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin: 0;
}
.pagination li a {
    padding: 4px 14px;
    border: 1px solid #e0e4e8;
    color: inherit;
    text-decoration: none;
    display: block;
}
.pagination li a:hover,
.pagination li a.active {
    background: #ff6b6b;
    color: #fff;
}

/* ========== 文章详情页 ========== */
.article-container {
    background: #fff;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.07);
    padding: 30px 35px;
    overflow: hidden;
}
.article-header {
    border-bottom: 1px solid #f0f2f4;
    padding-bottom: 20px;
    margin-bottom: 22px;
}
.article-header .title {
    font-size: 28px;
    font-weight: 700;
    color: #1a1a1a;
}
.other-info {
    margin-top: 12px;
    font-size: 14px;
    color: #888;
}
.other-info span {
    margin-right: 18px;
}

.article-content {
    font-size: 14px;
    line-height: 1.8;
    color: #2c3e50;
    overflow: hidden;
    word-wrap: break-word;
}
.article-content h2,
.article-content h3,
.article-content h4,
.article-content h5,
.article-content h6 {
    margin: 8px 0;
    font-weight: 600;
    line-height: 1.5;
    color: #1a1a1a;
}
.article-content h2 {
    font-size: 22px;
    background: #f5f8fc;
    border-left: 4px solid #0958d9;
    padding-left: 14px;
}
.article-content h3 {
    font-size: 18px;
    border-left: 4px solid #ff6b6b;
    padding-left: 14px;
}
.article-content h4,
.article-content h5,
.article-content h6 {
    font-size: 16px;
}
.article-content a {
    color: #0958d9;
}
.article-content p {
    margin-bottom: 18px;
}
.article-content img {
    max-width: 100%;
    min-height: 200px;
    margin: 10px auto;
    display: block;
}
.article-content ul,
.article-content ol {
    margin: 16px 0;
    padding-left: 0;
    list-style: none;
}

.article-content li {
    margin-bottom: 8px;
    line-height: 1.8;
    color: #333;
    font-size: 14px;
}
.article-content li:last-child {
    margin-bottom: 0;
}

/* 无序列表 */
.article-content ul li {
    position: relative;
    padding-left: 24px;
}
.article-content ul li::before {
    content: "";
    position: absolute;
    left: 12px;
    top: 9px;
    bottom: 9px;
    width: 2px;
    background: #e5e7eb;
}

/* 有序列表 */
.article-content ol {
    counter-reset: list-index;
}
.article-content ol li {
    counter-increment: list-index;
    padding-left: 28px;
    position: relative;
}
.article-content ol li::before {
    content: counter(list-index) ".";
    position: absolute;
    left: 0;
    top: 0;
    width: 22px;
    text-align: right;
    color: #666;
    font-weight: 500;
}

/* 分享模块 */
.share {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 30px 0 10px;
    padding-top: 20px;
    border-top: 1px solid #f0f2f4;
}
.share-title {
    display: flex;
    align-items: center;
    gap: 8px;
}
.share-title .social-share a {
    display: inline-block;
    width: 32px;
    height: 32px;
    background: #eee;
    border-radius: 50%;
    text-align: center;
    line-height: 32px;
    color: #555;
    margin-right: 4px;
    font-size: 14px;
}
.share-title .social-share a:hover {
    background: #ff6b6b;
    color: #fff;
}
.share-qrcode {
    display: flex;
    align-items: center;
    gap: 12px;
}
#page-qrcode {
    width: 80px;
    height: 80px;
    background: #f9f9f9;
    border: 1px solid #eaeef2;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    color: #bbb;
}

/* ========== 上一篇/下一篇 ========== */
.nearby {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-top: 24px;
    padding-top: 20px;
    border-top: 1px solid #f0f2f4;
}
.nearby a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 4px 0;
    font-size: 14px;
    color: #333;
    text-decoration: none;
    min-width: 0;
    transition: color 0.2s;
}

.nearby a:hover {
    color: #ff6b6b;
}
.nav-title {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.nav-label {
    flex-shrink: 0;
    font-size: 14px;
    color: #999;
    padding: 2px 8px;
    background: #f0f2f4;
    transition: background 0.2s;
}
.nearby a:hover .nav-label {
    background: #e8eaec;
}
.nav-prev {
    justify-content: flex-start;
}
.nav-next {
    justify-content: flex-end;
}
.nav-next .nav-title {
    text-align: right;
}

/* ========== 相关文章 ========== */
.related-articles {
    margin-top: 24px;
    padding-top: 20px;
    border-top: 1px solid #f0f2f4;
}
.related-articles .pannel-title {
    border-bottom: 1px solid #f0f2f4;
    padding-bottom: 10px;
    margin-bottom: 10px;
}
.related-articles .pannel-title h3 {
    font-size: 18px;
    font-weight: 600;
    color: #1a1a1a;
}
.related-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px 24px;
}
.related-item {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 3px 0;
    min-width: 0;
    overflow: hidden;
}
.related-item .item-title {
    flex: 1;
    font-size: 14px;
    font-weight: 500;
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
}
.related-item .item-title a {
    color: #333;
}
.related-item .item-title a:hover {
    color: #ff6b6b;
}
.related-item .item-time {
    flex-shrink: 0;
    font-size: 14px;
    color: #999;
}

/* ========== 侧边栏 ========== */
.sidebar {
    max-width: 30%;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
    position: sticky;
    top: 150px;
    align-self: flex-start;
}
.sidebar .block,
.sidebar .side-tabs {
    background: #fff;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.07);
    padding: 20px 24px;
}
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}
.side-h3 {
    font-size: 18px;
    margin-bottom: 12px;
    padding-bottom: 8px;
    border-bottom: 1px solid #f0f2f4;
}

/* 热门/热评 */
.side-tabs .tabs {
    display: flex;
    border-bottom: 2px solid #f0f2f4;
    margin-bottom: 16px;
}
.side-tabs .tabs a {
    padding: 6px;
    font-size: 18px;
    font-weight: 500;
    color: #888;
    cursor: pointer;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
}
.side-tabs .tabs a.active {
    font-size: 18px;
    font-weight: 600;
    color: #1a1a1a;
    border-bottom-color: #ff6b6b;
}
.side-tabs .tab-panel {
    width: 100%;
    position: relative;
    overflow: hidden;
}
.side-tabs .panel {
    display: none;
}
.side-tabs .panel:first-child {
    display: block;
}
.side-tabs .panel .hot-list {
    list-style: none;
    padding: 0;
    margin: 0;
}
.side-tabs .panel .hot-list li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 0;
    border-bottom: 1px solid #f5f6f8;
    gap: 10px;
}
.side-tabs .panel .hot-list li:last-child {
    border-bottom: none;
}
.side-tabs .panel .hot-list .item-title {
    flex: 1;
    font-size: 14px;
    font-weight: 500;
    color: #1a1a1a;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-decoration: none;
}
.side-tabs .panel .hot-list .orange {
    color: #d46b08;
}
.side-tabs .panel .hot-list .item-title:hover {
    color: #ff6b6b;
}
.side-tabs .panel .hot-list .item-date {
    flex-shrink: 0;
    font-size: 14px;
    color: #aaa;
}

/* 页脚友情链接 */
.footer-links {
    margin-bottom: 20px;
}

.footer-links .friend-links-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px 24px;
}

.footer-links .friend-links-list a {
    font-size: 14px;
    color: #999;
    transition: color 0.2s;
}

.footer-links .friend-links-list a:hover {
    color: #ff6b6b;
}

/* 页脚分隔线 */
.footer-divider {
    width: 60px;
    height: 2px;
    background: #eaeef2;
    margin: 0 auto 16px;
    border: 0;
}

/* ============================================================
   模块3：底部（通栏卡片）
   ============================================================ */
.footer {
    background: #ffffff;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.07);
    padding: 30px 0;
    margin-top: 10px;
    text-align: center;
    color: #888;
    font-size: 14px;
}

/* ========== 工具按钮 ========== */
.bottom_tools {
    position: fixed;
    right: 24px;
    bottom: 40px;
    z-index: 99;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}
.bottom_tools .qr_tool,
.bottom_tools #scrollUp {
    width: 44px;
    height: 44px;
    background: #ff6b6b;
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    cursor: pointer;
}
.bottom_tools #scrollUp {
    background: #ff6b6b;
    color: #fff;
    border: none;
    font-size: 18px;
}
.bottom_tools .qr_img {
    position: fixed;
    right: 80px;
    bottom: 80px;
    width: 180px;
    height: 180px;
    display: none;
}
.bottom_tools .qr_tool img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.bottom_tools .qr_img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
}

/* ========================================
   响应式
   ======================================== */
@media (max-width: 768px) {
    /* 头部固定 */
    .zmt-header {
        padding: 8px 0;
    }

    .zmt-header .container {
        padding: 0 20px;
    }

    .header-top-inner {
        justify-content: space-between;
    }

    .logo-title {
        font-size: 36px;
    }
    #clock {
        font-size: 14px;
    }

    /* 导航模块 */
    .nav-wrapper {
        position: static;
        margin-top: 8px;
        padding: 0;
        background: #fff;
        box-shadow: none;
        height:50px;
    }

    .nav-inner {
        justify-content: flex-end;
    }

    .mobile-bars {
        display: block;
        font-size: 24px;
        padding: 10px;
        order: 1;
    }

    .main-nav {
        position: fixed;
        top: 0;
        right: 0;
        width: 260px;
        height: 100vh;
        background: #fff;
        box-shadow: -2px 0 12px rgba(0, 0, 0, 0.08);
        margin: 0;
        display: block;
        transform: translateX(100%);
        transition: transform 0.3s ease;
        z-index: 999;
        overflow-y: auto;
        padding: 20px 0;
    }
    .main-nav.active {
        transform: translateX(0);
    }

    .nav-mask {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.3);
        z-index: 998;
    }
    .nav-mask.active {
        display: block;
    }

    .header-menu {
        flex-direction: column;
        align-items: flex-start;
        width: 100%;
    }
    .header-menu > li {
        margin: 0;
        width: 100%;
        border-bottom: 1px solid #f0f2f4;
    }
    .header-menu > li > a {
        line-height: 48px;
        padding: 0 20px;
    }

    .dropdown-menu {
        position: static;
        box-shadow: none;
        opacity: 1;
        visibility: visible;
        transform: none;
        display: none;
        background: #f8f9fa;
        padding-left: 20px;
    }
    .has-dropdown.open .dropdown-menu {
        display: block;
    }

    .content-wrap {
        flex-direction: column;
        gap: 10px;
        margin-top: 135px;
    }

    .sidebar {
        max-width: 100%;
        position: static;
    }
    .article-container {
        padding: 18px;
    }
    .share {
        flex-direction: column;
        gap: 12px;
        align-items: flex-start;
    }
    .share-qrcode {
        width: 100%;
    }
    .item-pic {
        width: 120px;
    }

    .nearby {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    .nav-next {
        justify-content: flex-start;
    }
    .nav-next .nav-title {
        text-align: left;
    }

    .related-list {
        grid-template-columns: 1fr;
    }

    pre[class*="language-"] {
        font-size: 13px;
        padding: 0.8em;
    }
    code[class*="language-"] {
        font-size: 13px;
    }

    .footer {
        padding: 20px 12px;
        font-size: 13px;
        margin-top: 10px;
    }

    .bottom_tools {
        right: 12px;
        bottom: 20px;
    }
    .bottom_tools .qr_tool,
    .bottom_tools #scrollUp {
        width: 38px;
        height: 38px;
        font-size: 16px;
    }
    .bottom_tools .qr_img {
        right: 60px;
        bottom: 60px;
        width: 120px;
        height: 120px;
    }
}
/* ========================================
   代码高亮 (Prism.js 兼容)
   ======================================== */

code[class*=language-],pre[class*=language-]{color:#f8f8f2;background:0 0;text-shadow:0 1px rgba(0,0,0,.3);font-family:Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}
pre[class*=language-]{padding:1em;margin:1em 0;overflow:auto;max-width:100%;}
:not(pre)>code[class*=language-],pre[class*=language-]{background:#272822}
:not(pre)>code[class*=language-]{padding:.1em;white-space:normal}

.hl.cdata,.hl.comment,.hl.doctype,.hl.prolog{color:#8292a2}
.hl.punctuation{color:#f8f8f2}
.hl.namespace{opacity:.7}
.hl.constant,.hl.deleted,.hl.property,.hl.symbol,.hl.tag{color:#f92672}
.hl.boolean,.hl.number{color:#ae81ff}
.hl.attr-name,.hl.builtin,.hl.char,.hl.inserted,.hl.selector,.hl.string{color:#a6e22e}
.language-css .hl.string,.style .hl.string,.hl.entity,.hl.operator,.hl.url,.hl.variable{color:#f8f8f2}
.hl.atrule,.hl.attr-value,.hl.class-name,.hl.function{color:#e6db74}
.hl.keyword{color:#66d9ef}
.hl.important,.hl.regex{color:#fd971f}
.hl.bold,.hl.important{font-weight:700}
.hl.italic{font-style:italic}
.hl.entity{cursor:help}

/* 代码块滚动条，非必须 */

pre[class*="language-"]::-webkit-scrollbar {
    height: 6px;
}
pre[class*="language-"]::-webkit-scrollbar-track {
    background: #1e1e1e;
}
pre[class*="language-"]::-webkit-scrollbar-thumb {
    background: #555;
}
pre[class*="language-"]::-webkit-scrollbar-thumb:hover {
    background: #777;
}



