 /* ========== Reset ========== */
    *, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
    html { height: 100%; }
    body {
        font-family: "Microsoft YaHei", "微软雅黑", SimSun, Arial, sans-serif;
        font-size: 16px;
        color: #333;
        background: #f5f6fa;
        min-width: 320px;
    }
    a { text-decoration: none; color: #333; }
    a:hover { color: #2D64B3; }
    ul, li { list-style: none; }
    input, button { font-family: inherit; border: none; outline: none; }

    /* ========== 布局容器 ========== */
    .container {
        width: 1200px;
        max-width: 100%;
        margin: 0 auto;
    }

 

    /* ========== 内容区域 ========== */
    .main-content {
        padding: 24px 0 40px;
    }
    .main-content .container {
        background: #fff;
        border-radius: 8px;
        box-shadow: 0 1px 6px rgba(0,0,0,0.06);
        padding: 0 24px 24px;
    }

    /* 结果信息栏 */
    .result-bar {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 20px 0 16px;
        border-bottom: 2px solid #2D64B3;
    }
    .result-bar .result-title {
        font-size: 18px;
        font-weight: 700;
        color: #2D64B3;
    }
    .result-bar .result-title span {
        font-weight: 400;
        font-size: 14px;
        color: #999;
        margin-left: 10px;
    }
    .result-bar .result-count {
        font-size: 14px;
        color: #888;
    }
    .result-bar .result-count strong {
        color: #2D64B3;
    }
    .result-bar .result-right {
        display: flex;
        align-items: center;
        gap: 16px;
    }
    .advice-btn {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 6px 18px;
        background: #FF9900;
        color: #fff;
        font-size: 14px;
        font-weight: 600;
        border-radius: 5px;
        text-decoration: none;
        transition: background 0.2s;
    }
    .advice-btn:hover {
        background: #e68a00;
        color: #fff;
    }

    /* 主题和行业导航 */
    .filter-nav {
        margin-top: 16px;
        padding: 16px 0;
        border-bottom: 1px solid #e8e8e8;
    }
    .filter-section {
        display: flex;
        align-items: flex-start;
        gap: 0;
        margin-bottom: 12px;
    }
    .filter-section:last-child {
        margin-bottom: 0;
    }
    .filter-section .section-toggle {
        flex-shrink: 0;
        width: 18px;
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 12px;
        color: #2D64B3;
        cursor: pointer;
        user-select: none;
        transition: transform 0.3s;
        line-height: 30px;
    }
    .filter-section .section-toggle.expanded {
        transform: rotate(90deg);
    }
    .filter-section .filter-label {
        flex-shrink: 0;
        font-size: 14px;
        font-weight: 600;
        color: #333;
        line-height: 30px;
        margin-right: 10px;
    }
    .filter-tags {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        align-items: center;
    }
    .filter-tags .tag {
        display: inline-block;
        padding: 6px 14px;
        font-size: 13px;
        color: #555;
        background: #f5f6fa;
        border: 1px solid #e0e0e0;
        border-radius: 4px;
        cursor: pointer;
        transition: all 0.2s;
        white-space: nowrap;
        text-decoration: none;
    }
    .filter-tags .tag:hover {
        color: #2D64B3;
        background: #eef3fb;
        border-color: #2D64B3;
        text-decoration: none;
    }
    .filter-tags .tag.active {
        color: #fff;
        background: #2D64B3;
        border-color: #2D64B3;
    }
    .filter-tags-wrapper {
        flex: 1;
        min-width: 0;
        overflow: hidden;
        transition: max-height 0.3s ease;
    }
    .filter-tags-wrapper.collapsed {
        max-height: 32px;
    }
    .filter-tags-wrapper.expanded {
        max-height: 500px;
    }

    /* 列表表头 */
    .list-header {
        display: flex;
        align-items: center;
        padding: 12px 0;
        border-bottom: 1px solid #e8e8e8;
        font-size: 13px;
        color: #999;
    }
    .list-header .col-title  { flex: 1; padding-left: 4px; }
    .list-header .col-source { width: 240px; text-align: center; }
    .list-header .col-date   { width: 120px; text-align: center; }
    .list-header .col-action { width: 120px; text-align: center; }

    /* 列表项 */
    .list-body { min-height: 200px; }
    .list-item {
        display: flex;
        align-items: center;
        padding: 14px 0;
        border-bottom: 1px solid #f0f0f0;
        transition: background 0.15s;
    }
    .list-item:hover { background: #f8fafd; }
    .list-item:last-child { border-bottom: none; }
    .list-item .col-title {
        flex: 1;
        padding-left: 4px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .list-item .col-title a {
        font-size: 15px;
        color: #333;
        transition: color 0.15s;
    }
    .list-item .col-title a:hover { color: #2D64B3; }
    .class-tag {
        display: inline-block;
        padding: 2px 8px;
        font-size: 12px;
        font-weight: 600;
        color: #fff;
        background: #2D64B3;
        border-radius: 3px;
        margin-right: 8px;
        vertical-align: middle;
    }
    .class-tag-10 { background: #3b82f6; }
    .class-tag-11 { background: #10b981; }
    .class-tag-15 { background: #0ea5e9; }
    .class-tag-14 { background: #f59e0b; }
    .class-tag-30 { background: #8b5cf6; }
    .class-tag-40 { background: #6b7280; }
    .list-item .col-source {
        width: 240px;
        text-align: center;
        font-size: 13px;
        color: #888;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .list-item .col-date {
        width: 120px;
        text-align: center;
        font-size: 13px;
        color: #999;
    }
    /* === 加入素材库功能样式 === */
    :root {
        --primary: #667eea;
        --primary-dark: #5a67d8;
        --secondary: #764ba2;
        --success: #b8740f;
        --danger: #ef4444;
        --info: #3b82f6;
    }

    .list-item .col-action {
        width: 120px;
        text-align: center;
    }

    /* 加入素材库按钮 */
    .add-list-btn {
        padding: 6px 14px;
        background: linear-gradient(135deg, var(--primary), var(--secondary));
        color: #fff;
        border: none;
        border-radius: 6px;
        cursor: pointer;
        font-size: 13px;
        font-weight: 500;
        display: inline-flex;
        align-items: center;
        gap: 4px;
        transition: all 0.2s ease;
        font-family: '微软雅黑', sans-serif;
        white-space: nowrap;
    }
    .add-list-btn:hover {
        transform: scale(1.05);
        box-shadow: 0 4px 12px rgba(102, 126, 234, 0.4);
    }
    .add-list-btn.added {
        background: var(--success);
        cursor: default;
    }
    .add-list-btn.added:hover {
        transform: none;
        box-shadow: none;
    }

    /* ===== ClassCode=10 卡片式列表 ===== */
    .list-item-policy {
        display: flex;
        align-items: stretch;
        padding: 16px 0;
        border-bottom: 1px solid #f0f0f0;
        gap: 20px;
        transition: background 0.15s;
    }
    .list-item-policy:hover { background: #f8fafd; }
    .list-item-policy:last-child { border-bottom: none; }
    .policy-left {
        flex: 3;
        min-width: 0;
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 10px;
    }
    .policy-title {
        font-size: 16px;
        padding:10px 0;
        /* font-weight: 600; */
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .policy-title a { color: #1a1a1a; }
    .policy-title a:hover { color: #2D64B3; }
    /* 热点图标（IsHot=1） */
    .hot-icon {
        display: inline-block;
        margin-left: 6px;
        font-size: 14px;
        line-height: 1;
        vertical-align: middle;
        cursor: default;
    }
    .policy-meta {
        font-size: 13px;
        color: #888;
        display: flex;
        gap: 32px;
        flex-wrap: wrap;
        align-items: center;
    }
    .policy-meta .meta-item {
        white-space: nowrap;
        display: inline-flex;
        align-items: center;
        gap: 3px;
    }
    .policy-meta .meta-icon { font-size: 14px; line-height: 1; }
    .policy-meta .meta-val { color: #444; }
    .policy-right {
        flex: 1;
        padding:10px 0;
        min-width: 160px;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 6px;
        align-content: flex-start;
        justify-content: flex-end;
    }
    .policy-btn {
        display: inline-block;
        padding: 4px 10px;
        font-size: 12px;
        text-align: center;
        border-radius: 4px;
        border: 1px solid #d9d9d9;
        background: #fff;
        color: #555;
        cursor: pointer;
        transition: all 0.2s;
        text-decoration: none;
        white-space: nowrap;
    }
    .policy-btn:hover {
        border-color: #2D64B3;
        color: #2D64B3;
        text-decoration: none;
    }
    .policy-btn.primary {
        background: #2D64B3;
        color: #fff;
        border-color: #2D64B3;
    }
    .policy-btn.primary:hover { background: #1a4d8f; color: #fff; }

    /* Toast提示 */
    .toast-container {
        position: fixed;
        top: 20px;
        right: 20px;
        z-index: 300;
        display: flex;
        flex-direction: column;
        gap: 10px;
    }
    .toast {
        padding: 14px 20px;
        border-radius: 10px;
        color: #fff;
        font-size: 14px;
        font-weight: 500;
        display: flex;
        align-items: center;
        gap: 8px;
        box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -2px rgba(0,0,0,0.05);
        transform: translateX(120%);
        transition: transform 0.3s ease;
        max-width: 360px;
        font-family: '微软雅黑', sans-serif;
    }
    .toast.show { transform: translateX(0); }
    .toast-success { background: var(--success); }
    .toast-error { background: var(--danger); }
    .toast-info { background: var(--info); }

    /* 征集状态标签 */
    .advice-status {
        display: inline-block;
        padding: 2px 8px;
        font-size: 12px;
        font-weight: 600;
        border-radius: 3px;
        margin-right: 8px;
        vertical-align: middle;
    }
    .advice-status.collecting {
        background: #52c41a;
        color: #fff;
    }
    .advice-status.ended {
        background: #d9d9d9;
        color: #666;
    }

    /* 空状态 */
    .list-empty {
        text-align: center;
        padding: 60px 0;
        color: #bbb;
        font-size: 16px;
    }

    /* 加载中 */
    .list-loading {
        text-align: center;
        padding: 60px 0;
        color: #aaa;
        font-size: 15px;
    }
    .list-loading::after {
        content: '';
        display: inline-block;
        width: 18px;
        height: 18px;
        border: 2px solid #ddd;
        border-top-color: #2D64B3;
        border-radius: 50%;
        animation: spin 0.8s linear infinite;
        margin-left: 8px;
        vertical-align: middle;
    }
    @keyframes spin { to { transform: rotate(360deg); } }

    /* ========== 分页 ========== */
    .pagination {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        padding: 24px 0 8px;
        flex-wrap: wrap;
    }
    .pagination a,
    .pagination span {
        display: inline-block;
        min-width: 36px;
        height: 36px;
        line-height: 36px;
        text-align: center;
        padding: 0 10px;
        border: 1px solid #ddd;
        border-radius: 4px;
        font-size: 14px;
        color: #555;
        background: #fff;
        transition: all 0.15s;
    }
    .pagination a:hover {
        border-color: #2D64B3;
        color: #2D64B3;
    }
    .pagination span.current {
        background: #2D64B3;
        color: #fff;
        border-color: #2D64B3;
    }
    .pagination span.disabled {
        color: #ccc;
        border-color: #eee;
        cursor: not-allowed;
    }
    .pagination .page-info {
        border: none;
        font-size: 13px;
        color: #999;
    }



    /* ========== 汉堡菜单按钮(手机端) ========== */
    .menu-toggle {
        display: none;
        background: none;
        border: none;
        cursor: pointer;
        padding: 6px;
    }
    .menu-toggle .bar {
        display: block;
        width: 24px;
        height: 3px;
        background: #fff;
        border-radius: 2px;
        margin: 4px 0;
        transition: all 0.3s;
    }

    /* ========== 响应式: 手机端 ========== */
    @media screen and (max-width: 768px) {
        .container { width: 100%; padding: 0 12px; }

        /* 顶部第一行 */
        .header-top .container { padding: 0 12px; }
        .logo-area .site-name { font-size: 17px; letter-spacing: 1px; }
        .logo-area img { width: auto; height: auto; max-width: 200px; }
        .header-links a { font-size: 12px; padding: 4px 6px; }
        .header-links a.btn-login { padding: 4px 10px; }

        /* 搜索区域 */
        .header-search { height: 220px; }
        .search-wrapper .search-title { font-size: 20px; letter-spacing: 2px; margin-bottom: 16px; }
        .search-box { width: 100%; }
        .search-box input { height: 42px; font-size: 14px; }
        .search-box button { width: 70px; height: 42px; font-size: 15px; }

        /* 导航栏（手机端样式统一由 css/top.css 控制：前三个常驻，其余折叠） */

        /* 内容区域 */
        .main-content { padding: 12px 0 24px; }
        .main-content .container { padding: 0 12px 16px; border-radius: 0; }

        /* 结果栏 */
        .result-bar { flex-wrap: wrap; gap: 4px; padding: 14px 0 10px; }
        .result-bar .result-title { font-size: 16px; }

        /* 列表表头隐藏 */
        .list-header { display: none; }

        /* 列表项手机端 */
        .list-item {
            flex-wrap: wrap;
            padding: 12px 0;
        }
        .list-item .col-title {
            flex: 1 1 100%;
            padding-left: 0;
        }
        .list-item .col-title a { font-size: 14px; }
        .list-item .col-source {
            width: auto;
            text-align: left;
            font-size: 12px;
            margin-top: 6px;
            padding-right: 12px;
        }
        .list-item .col-date {
            width: auto;
            text-align: left;
            font-size: 12px;
            margin-top: 6px;
        }
        .list-item .col-action {
            width: auto;
            margin-top: 6px;
        }

        /* 卡片列表手机端 */
        .list-item-policy {
            flex-direction: column;
            gap: 10px;
            padding: 14px 0;
        }
        .policy-right {
            flex-direction: row;
            flex-wrap: wrap;
            gap: 6px;
            min-width: auto;
        }
        .policy-btn {
            flex: 1 1 auto;
            min-width: 70px;
            font-size: 11px;
            padding: 4px 8px;
        }
        .policy-title { font-size: 15px; }
        .policy-meta { font-size: 12px; gap: 10px; }

        /* 分页 */
        .pagination a, .pagination span {
            min-width: 30px;
            height: 30px;
            line-height: 30px;
            font-size: 12px;
            padding: 0 6px;
        }
    }

    /* 中等屏幕微调 */
    @media screen and (min-width: 769px) and (max-width: 1200px) {
        .container { width: 96%; }
        .nav-list > li > a { padding: 0 16px; font-size: 15px; }
        .list-item .col-source { width: 140px; }
    }