/* ===== 响应式：1024 平板 / 768 手机 / 480 小屏 ===== */

@media (max-width: 1024px) {
    :root {
        --gutter: 20px;
        --sidebar-w: 230px;
        --space-16: 48px;
    }

    .site-header__inner { gap: var(--space-6); }
    .header-search input { width: 160px; }
    .grid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .site-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 768px) {
    :root {
        --gutter: 16px;
        --text-3xl: 30px;
        --text-2xl: 24px;
    }

    .site-header { position: static; }
    .site-header__inner { height: 60px; }

    .site-nav,
    .header-search { display: none; }

    .nav-toggle { display: inline-flex; margin-left: auto; }

    .page-main { padding: var(--space-8) 0 var(--space-12); }
    .feed-item__title { font-size: var(--text-lg); }

    .layout-split { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
    .layout-split > aside { position: static; }

    .filter-panel {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: var(--space-3);
    }
    .filter-panel__group { margin-bottom: 0; }
    .filter-panel .btn { grid-column: 1 / -1; }

    .grid--2,
    .grid--3 { grid-template-columns: minmax(0, 1fr); }
    .topic-list { grid-template-columns: minmax(0, 1fr); }
    .site-footer__grid { grid-template-columns: minmax(0, 1fr); gap: 0; }

    /* 页脚转折叠手风琴 */
    .site-footer__brand { padding-bottom: var(--space-5); }
    .site-footer__group + .site-footer__group { border-top: 1px solid rgba(213, 220, 212, 0.12); }
    .site-footer h4 { margin: 0; border-bottom: 0; }
    .site-footer__toggle {
        width: 100%;
        justify-content: space-between;
        padding: 14px 0;
        cursor: pointer;
    }
    .site-footer__list { display: none; padding-bottom: var(--space-4); }
    .site-footer__group.is-open .site-footer__list { display: block; }
    .site-footer__chevron {
        display: inline-block;
        color: var(--footer-muted);
        transition: transform var(--transition-fast);
    }
    .site-footer__group.is-open .site-footer__chevron { transform: rotate(180deg); }

    .section-title { flex-direction: column; gap: var(--space-1); }
    .card { padding: var(--space-4); }
}

@media (max-width: 480px) {
    :root {
        --text-3xl: 28px;
        --text-2xl: 22px;
    }

    .topic-group__head { flex-wrap: wrap; gap: 6px 10px; }
    .filter-panel { grid-template-columns: minmax(0, 1fr); }
    .data-table th,
    .data-table td { padding: 10px 12px; }
}
