/* ========================================
   Nova Resource - 响应式样式
   ======================================== */

/* 大屏 */
@media (max-width: 1200px) {
    :root { --nova-container: 100%; }
    .container { padding: 0 16px; }
    .posts-grid { grid-template-columns: repeat(3, 1fr); }
}

/* 平板 */
@media (max-width: 992px) {
    .header-search { display: none; }
    .header-nav { display: none; }
    .mobile-menu-btn { display: flex; }

    .latest-content,
    .archive-layout,
    .single-layout {
        grid-template-columns: 1fr;
    }
    .latest-sidebar,
    .archive-sidebar,
    .single-sidebar {
        order: -1;
    }

    .posts-grid { grid-template-columns: repeat(2, 1fr); }
    .cms-grid { grid-template-columns: 1fr 1fr; }
    .cms-card.cms-featured { grid-row: span 1; flex-direction: row; }
    .cms-featured .cms-thumb { width: 120px; height: 80px; }
    .cms-featured .cms-card-title { font-size: 14px; margin-top: 0; }
    .cms-featured .cms-card-excerpt { display: none; }

    .vip-intro-inner { grid-template-columns: 1fr; gap: 24px; }
    .vip-intro-plans { justify-content: center; }

    .nova-vip-pricing { grid-template-columns: 1fr; max-width: 400px; margin: 32px auto; }
    .pricing-card.featured { transform: none; }

    .features-grid { grid-template-columns: repeat(2, 1fr); }
    .related-grid { grid-template-columns: repeat(2, 1fr); }

    .nova-user-center { grid-template-columns: 1fr; }
    .uc-sidebar { position: static; }
    .uc-stats-grid { grid-template-columns: repeat(2, 1fr); }
    .uc-affiliate { grid-template-columns: 1fr; }

    .footer-widgets { grid-template-columns: 1fr 1fr; }
}

/* 手机 */
@media (max-width: 768px) {
    body { font-size: 14px; }
    .header-inner { height: 56px; gap: 12px; }
    .logo-text { font-size: 18px; }
    .header-actions .nova-btn { display: none; }
    .header-actions .user-link .user-name { display: none; }

    .nova-slider { height: 240px; border-radius: var(--nova-radius); }
    .slider-content { left: 20px; max-width: 280px; }
    .slider-title { font-size: 18px; }
    .slider-excerpt { display: none; }
    .slider-cat { font-size: 11px; }

    .home-search-banner { padding: 32px 20px; }
    .banner-title { font-size: 20px; }
    .banner-subtitle { font-size: 13px; }
    .banner-search { flex-direction: column; border-radius: var(--nova-radius); padding: 12px; gap: 8px; }
    .banner-search-input { width: 100%; text-align: center; }
    .banner-search-btn { width: 100%; justify-content: center; }

    .posts-grid { grid-template-columns: 1fr; gap: 16px; }
    .cms-grid { grid-template-columns: 1fr; }
    .cms-card { flex-direction: row; }
    .cms-thumb { width: 100px; height: 70px; }

    .vip-intro-plans { flex-direction: column; }
    .vip-plan-card { padding: 16px; }

    .section-header { flex-direction: column; align-items: flex-start; gap: 12px; }
    .section-tabs { gap: 12px; }

    .single-article { padding: 20px 16px; }
    .article-title { font-size: 20px; }
    .article-meta { gap: 10px; font-size: 12px; }
    .article-content { font-size: 14px; }

    .article-nav { grid-template-columns: 1fr; }
    .related-grid { grid-template-columns: 1fr 1fr; gap: 12px; }

    .article-actions { flex-wrap: wrap; }
    .action-btn { flex: 1 1 calc(50% - 6px); }

    .nova-filter-bar { padding: 10px 12px; gap: 8px; }
    .filter-link { padding: 3px 10px; font-size: 12px; }

    .uc-stats-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
    .uc-stat-card { padding: 16px 12px; }
    .uc-stat-card .stat-num { font-size: 20px; }
    .uc-content { padding: 20px 16px; }

    .uc-table { font-size: 12px; }
    .uc-table th, .uc-table td { padding: 8px 6px; }

    .features-grid { grid-template-columns: 1fr; }
    .nova-stats-bar { grid-template-columns: 1fr; }

    .footer-widgets { grid-template-columns: 1fr; gap: 24px; }
    .footer-bottom { flex-direction: column; gap: 12px; text-align: center; }
    .footer-nav { justify-content: center; flex-wrap: wrap; }

    .back-to-top { bottom: 20px; right: 20px; width: 40px; height: 40px; }

    .modal-content { padding: 24px 20px; }
    .pay-amount { font-size: 28px; }

    .submit-form { padding: 20px 16px; }
    .form-actions { flex-direction: column; align-items: stretch; }

    .error-code { font-size: 80px; }
    .error-actions { flex-direction: column; align-items: center; }

    .nova-top-notice .container { padding: 0 32px; }
}

/* 小屏手机 */
@media (max-width: 480px) {
    .posts-grid { grid-template-columns: 1fr; }
    .uc-stats-grid { grid-template-columns: 1fr; }
    .related-grid { grid-template-columns: 1fr; }
    .banner-tags { display: none; }
}

/* 横屏 */
@media (max-height: 500px) and (orientation: landscape) {
    .mobile-menu-panel { width: 320px; }
}
