 /* ===== Main Layout ===== */
        .main-layout {
            padding: 48px 0;}
        .main-layout .container {
            display: grid; grid-template-columns: 1fr 320px; gap: 36px;}


        /* ===== Article List ===== */
        .article-list { display: flex; flex-direction: column; gap: 20px;}

        /* 置顶图文卡片 */
        .article-featured {
            background: #fff; border-radius: var(--radius); overflow: hidden;
            box-shadow: var(--shadow); transition: var(--transition); cursor: pointer;
            border: 1px solid transparent;}
        .article-featured:hover {
            box-shadow: var(--shadow-hover); border-color: var(--primary-border);
            transform: translateY(-2px);}
        .article-featured-img {
            width: 100%; height: 280px; overflow: hidden;}
        .article-featured-img img {
            width: 100%; height: 100%; object-fit: cover;
            transition: transform 0.5s ease;}
        .article-featured:hover .article-featured-img img { transform: scale(1.03);}
        .article-featured-body { padding: 24px 28px;}
        .article-featured-body .tag-row {
            display: flex; align-items: center; gap: 8px; margin-bottom: 12px;}
        .article-featured-body .tag-top {
            background: var(--primary); color: #fff; font-size: 11px;
            padding: 2px 10px; border-radius: 10px; font-weight: 600;}
        .article-featured-body .tag-category {
            background: var(--primary-bg); color: var(--primary); font-size: 11px;
            padding: 2px 10px; border-radius: 10px;}
        .article-featured-body h3 {
            font-size: 20px; color: var(--text-dark); font-weight: 600;
            line-height: 1.5; margin-bottom: 10px;}
        .article-featured:hover h3 { color: var(--primary);}
        .article-featured-body .summary {
            font-size: 14px; color: var(--text-muted); line-height: 1.8;
            display: -webkit-box; -webkit-line-clamp: 3;
            -webkit-box-orient: vertical; overflow: hidden; margin-bottom: 14px;}
        .article-featured-body .meta {
            display: flex; align-items: center; gap: 16px;
            font-size: 12px; color: var(--text-muted);}
        .article-featured-body .meta svg { width: 14px; height: 14px; stroke: currentColor; stroke-width: 2; fill: none; stroke-linecap: round; stroke-linejoin: round; margin-right: 3px; vertical-align: -2px;}

        /* 普通图文卡片 - 左图右文 */
        .article-media {
            display: grid; grid-template-columns: 240px 1fr; gap: 24px;
            background: #fff; border-radius: var(--radius); overflow: hidden;
            box-shadow: var(--shadow); transition: var(--transition); cursor: pointer;
            border: 1px solid transparent;}
        .article-media:hover {
            box-shadow: var(--shadow-hover); border-color: var(--primary-border);
            transform: translateY(-2px);}
        .article-media-img {
            width: 100%; height: 100%; min-height: 160px; overflow: hidden;}
        .article-media-img img {
            width: 100%; height: 100%; object-fit: cover;
            transition: transform 0.5s ease;}
        .article-media:hover .article-media-img img { transform: scale(1.05);}
        .article-media-body {
            padding: 20px 24px 20px 0; display: flex; flex-direction: column;
            justify-content: center;}
        .article-media-body .tag-row {
            display: flex; align-items: center; gap: 8px; margin-bottom: 8px;}
        .article-media-body .tag-category {
            background: var(--primary-bg); color: var(--primary); font-size: 11px;
            padding: 2px 10px; border-radius: 10px;}
        .article-media-body h3 {
            font-size: 16px; color: var(--text-dark); font-weight: 600;
            line-height: 1.5; margin-bottom: 8px;
            display: -webkit-box; -webkit-line-clamp: 2;
            -webkit-box-orient: vertical; overflow: hidden;}
        .article-media:hover h3 { color: var(--primary);}
        .article-media-body .summary {
            font-size: 13px; color: var(--text-muted); line-height: 1.7;
            display: -webkit-box; -webkit-line-clamp: 2;
            -webkit-box-orient: vertical; overflow: hidden; margin-bottom: 12px;}
        .article-media-body .meta {
            display: flex; align-items: center; gap: 16px;
            font-size: 12px; color: var(--text-muted); margin-top: auto;}
        .article-media-body .meta svg { width: 13px; height: 13px; stroke: currentColor; stroke-width: 2; fill: none; stroke-linecap: round; stroke-linejoin: round; margin-right: 3px; vertical-align: -2px;}

        /* 纯文字卡片 - 标题+摘要 */
        .article-text {
            background: #fff; border-radius: var(--radius);
            box-shadow: var(--shadow); transition: var(--transition); cursor: pointer;
            border: 1px solid transparent; padding: 22px 28px;
            position: relative; overflow: hidden;}
        .article-text::before {
            content: ''; position: absolute; left: 0; top: 0; bottom: 0;
            width: 4px; background: var(--primary); border-radius: 0 2px 2px 0;
            opacity: 0; transition: opacity 0.3s ease;}
        .article-text:hover {
            box-shadow: var(--shadow-hover); border-color: var(--primary-border);
            transform: translateY(-2px);}
        .article-text:hover::before { opacity: 1;}
        .article-text .tag-row {
            display: flex; align-items: center; gap: 8px; margin-bottom: 8px;}
        .article-text .tag-category {
            background: var(--primary-bg); color: var(--primary); font-size: 11px;
            padding: 2px 10px; border-radius: 10px;}
        .article-text h3 {
            font-size: 16px; color: var(--text-dark); font-weight: 600;
            line-height: 1.5; margin-bottom: 8px;
            display: -webkit-box; -webkit-line-clamp: 2;
            -webkit-box-orient: vertical; overflow: hidden;}
        .article-text:hover h3 { color: var(--primary);}
        .article-text .summary {
            font-size: 13px; color: var(--text-muted); line-height: 1.7;
            display: -webkit-box; -webkit-line-clamp: 2;
            -webkit-box-orient: vertical; overflow: hidden; margin-bottom: 12px;}
        .article-text .meta {
            display: flex; align-items: center; gap: 16px;
            font-size: 12px; color: var(--text-muted);}
        .article-text .meta svg { width: 13px; height: 13px; stroke: currentColor; stroke-width: 2; fill: none; stroke-linecap: round; stroke-linejoin: round; margin-right: 3px; vertical-align: -2px;}

        /* ===== Sidebar ===== */
        .sidebar { display: flex; flex-direction: column; gap: 24px;}

        .sidebar-panel {
            background: #fff; border-radius: var(--radius);
            box-shadow: var(--shadow); overflow: hidden;}
        .sidebar-panel-head {
            padding: 16px 20px; border-bottom: 1px solid var(--border);
            display: flex; align-items: center; gap: 8px;}
        .sidebar-panel-head h3 {
            font-size: 16px; color: var(--primary); font-weight: 600;
            display: flex; align-items: center; gap: 8px;}
        .sidebar-panel-head h3::before {
            content: ''; width: 3px; height: 16px; background: var(--primary);
            border-radius: 2px;}
        .sidebar-panel-body { padding: 12px 20px;}

        /* 热门新闻 */
        .hot-item {
            display: flex; gap: 12px; padding: 12px 0;
            border-bottom: 1px dashed var(--border); transition: var(--transition);}
        .hot-item:last-of-type { border-bottom: none;}
        .hot-item:hover { padding-left: 4px;}
        .hot-item .rank {
            flex-shrink: 0; width: 24px; height: 24px; border-radius: 6px;
            display: flex; align-items: center; justify-content: center;
            font-size: 12px; font-weight: 700; margin-top: 2px;}
        .hot-item:nth-child(1) .rank { background: var(--primary); color: #fff;}
        .hot-item:nth-child(2) .rank { background: var(--primary-light); color: #fff;}
        .hot-item:nth-child(3) .rank { background: var(--accent); color: #fff;}
        .hot-item:nth-child(n+4) .rank { background: var(--bg-gray); color: var(--text-muted);}
        .hot-item h4 {
            font-size: 13px; color: var(--text-dark); font-weight: 400; line-height: 1.5;
            display: -webkit-box; -webkit-line-clamp: 2;
            -webkit-box-orient: vertical; overflow: hidden;}
        .hot-item:hover h4 { color: var(--primary);}


        /* 联系卡片 */
        .contact-card {
            background: var(--primary); color: #fff; border-radius: var(--radius);
            padding: 24px 20px; box-shadow: var(--shadow);}
        .contact-card h4 { font-size: 16px; font-weight: 600; margin-bottom: 14px;}
        .contact-card .info-item {
            display: flex; align-items: flex-start; gap: 10px;
            font-size: 13px; opacity: 0.85; margin-bottom: 10px;}
        .contact-card .info-item svg { width: 16px; height: 16px; stroke: currentColor; stroke-width: 2; fill: none; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; margin-top: 2px;}
        .contact-card .info-item:last-child { margin-bottom: 0;}


        /* ===== Footer ===== */
        .footer { background: #1a0d14; color: rgba(255,255,255,0.6); padding: 48px 0 0;}
        .footer-grid {
            display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 40px;
            padding-bottom: 32px; border-bottom: 1px solid rgba(255,255,255,0.08);}
        .footer-about h3 { color: #fff; font-size: 18px; margin-bottom: 12px;}
        .footer-about p { font-size: 13px; line-height: 1.8;}
        .footer-col h4 { color: #fff; font-size: 15px; margin-bottom: 14px; font-weight: 600;}
        .footer-col a { display: block; font-size: 13px; padding: 4px 0;}
        .footer-col a:hover { color: var(--accent);}
        .footer-bottom {
            text-align: center; padding: 20px 0; margin-top: 20px;
            font-size: 12px; color: rgba(255,255,255,0.35);}

        /* ===== Back to Top ===== */
        .back-top {
            position: fixed; bottom: 32px; right: 32px; width: 44px; height: 44px;
            background: var(--primary); color: #fff; border-radius: 50%;
            display: flex; align-items: center; justify-content: center;
            font-size: 20px; cursor: pointer; box-shadow: 0 4px 12px rgba(114,39,81,0.3);
            transition: var(--transition); opacity: 0; pointer-events: none; z-index: 99;}
        .back-top.show { opacity: 1; pointer-events: auto;}
        .back-top:hover { transform: translateY(-3px); background: var(--primary-dark);}

        /* ===== Responsive ===== */
        @media (max-width: 1024px) {
            .main-layout .container { grid-template-columns: 1fr;}
            .sidebar { order: 2;}
        }
        @media (max-width: 768px) {
            .mobile-toggle { display: block;}
            .nav { display: none;}
            .nav.open {
                display: flex; flex-direction: column; position: absolute;
                top: 100%; left: 0; right: 0; background: #fff;
                padding: 12px 20px; box-shadow: 0 8px 24px rgba(0,0,0,0.1);
                border-top: 1px solid var(--border);}
            .nav-item { position: static;}
            .nav-dropdown {
                position: static; box-shadow: none; border: none;
                background: var(--primary-bg); border-radius: 6px; min-width: auto;
                margin: 0 0 4px 12px; padding: 0;
                opacity: 0; max-height: 0; overflow: hidden; pointer-events: none;
                transform: none; transition: max-height 0.35s ease, opacity 0.3s ease;}
            .nav-dropdown.open {
                max-height: 200px; opacity: 1; pointer-events: auto;
                margin-top: 4px; margin-bottom: 8px;}
            .nav-dropdown a { padding: 10px 16px; font-size: 13px; border-left: 3px solid var(--primary-border);}
            .nav-dropdown a:hover { border-left-color: var(--primary); background: rgba(114,39,81,0.06);}
            .nav-item > a.has-dropdown::after { content: '\25B8'; margin-left: 6px; font-size: 10px; transition: transform 0.3s ease; display: inline-block;}
            .nav-item > a.has-dropdown.open::after { transform: rotate(90deg);}
            .banner-inner { flex-direction: column; align-items: flex-start; gap: 12px;}
            .page-banner { padding: 0;}
            .banner-info h2 { font-size: 20px;}
            .article-featured-img { height: 200px;}
            .article-media { grid-template-columns: 1fr;}
            .article-media-img { height: 200px;}
            .article-media-body { padding: 16px 20px;}
            .footer-grid { grid-template-columns: 1fr; gap: 24px;}
        }
        @media (max-width: 480px) {
            .top-bar { display: none;}
            .article-featured-body { padding: 16px 18px;}
            .article-featured-body h3 { font-size: 17px;}
            .article-text { padding: 16px 18px;}
        }