/* ==========================================================================
   Discuz X5 Modern Theme - Responsive
   ========================================================================== */

/* Tablet: 768px - 1024px */
@media (max-width: 1024px) {
    .modern-layout {
        grid-template-columns: 1fr;
    }
    .modern-header__nav {
        display: none;
    }
    .modern-sidebar-toggle {
        display: flex;
    }
    .modern-header__inner {
        padding: 0 var(--modern-space-4);
    }
    .modern-header__nav--mobile-open {
        display: flex;
        flex-direction: column;
        position: absolute;
        top: var(--modern-header-height);
        left: 0;
        right: 0;
        background: var(--modern-surface);
        border-bottom: 1px solid var(--modern-border);
        padding: var(--modern-space-3);
        box-shadow: var(--modern-shadow-lg);
        z-index: var(--modern-z-dropdown);
    }
    .modern-layout__main,
    .modern-layout__main--wide {
        padding: var(--modern-space-4);
    }
    .modern-thread-card {
        grid-template-columns: auto 1fr;
        gap: var(--modern-space-3);
        padding: var(--modern-space-3) var(--modern-space-4);
    }
    .modern-thread-card__stats {
        display: none;
    }
    .modern-forum-grid {
        grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    }
}

/* Mobile: < 768px */
@media (max-width: 767px) {
    :root {
        --modern-header-height: 52px;
    }
    .modern-header__search input {
        width: 140px;
        height: 34px;
        padding: 6px 32px 6px 10px;
    }
    .modern-header__search input:focus {
        width: 180px;
    }
    .modern-header__logo img {
        height: 24px;
    }
    .modern-layout__main,
    .modern-layout__main--wide {
        padding: var(--modern-space-3);
    }
    .modern-sidebar {
        position: fixed;
        top: 0;
        left: -100%;
        width: 280px;
        height: 100vh;
        z-index: calc(var(--modern-z-fixed) + 1);
        transition: left var(--modern-transition-base);
        box-shadow: var(--modern-shadow-xl);
    }
    .modern-sidebar--open {
        left: 0;
    }
    .modern-sidebar-overlay {
        display: block;
    }
    .modern-sidebar-overlay--visible {
        display: block;
    }
    .modern-sidebar-open {
        overflow: hidden;
    }
    .modern-thread-card {
        grid-template-columns: 40px 1fr;
        gap: var(--modern-space-3);
        padding: var(--modern-space-3);
    }
    .modern-thread-card__avatar img {
        width: 36px;
        height: 36px;
    }
    .modern-thread-card__title {
        font-size: var(--modern-font-size-sm);
    }
    .modern-thread-card__meta {
        font-size: var(--modern-font-size-xs);
    }
    .modern-forum-grid {
        grid-template-columns: 1fr;
        gap: var(--modern-space-3);
    }
    .modern-post {
        grid-template-columns: 44px 1fr;
        gap: var(--modern-space-3);
        padding: var(--modern-space-4) var(--modern-space-3);
    }
    .modern-post__avatar img {
        width: 38px;
        height: 38px;
    }
    .modern-thread__title {
        font-size: var(--modern-font-size-xl);
    }
    .modern-fab {
        display: flex;
    }
    .modern-back-to-top {
        bottom: 72px;
        right: var(--modern-space-4);
        width: 40px;
        height: 40px;
    }
    .modern-thread-actions {
        flex-wrap: wrap;
        padding: var(--modern-space-2) var(--modern-space-3);
    }
    .modern-header__user .modern-header__user-btn span.modern-text-sm {
        display: none;
    }
}

/* Small Mobile: < 480px */
@media (max-width: 479px) {
    .modern-header__search {
        display: none;
    }
    .modern-header__search--mobile-visible {
        display: flex;
        position: absolute;
        top: var(--modern-header-height);
        left: 0;
        right: 0;
        padding: var(--modern-space-2) var(--modern-space-3);
        background: var(--modern-surface);
        border-bottom: 1px solid var(--modern-border);
        box-shadow: var(--modern-shadow-md);
    }
    .modern-header__search--mobile-visible input {
        width: 100%;
    }
    .modern-header__actions {
        gap: var(--modern-space-1);
    }
    .modern-thread-card {
        padding: var(--modern-space-2) var(--modern-space-3);
    }
}

/* Desktop Wide: > 1400px */
@media (min-width: 1400px) {
    .modern-layout {
        grid-template-columns: var(--modern-sidebar-width) 1fr 300px;
    }
    .modern-layout__aside {
        display: block;
    }
}

/* Hide aside by default on non-wide screens */
@media (max-width: 1399px) {
    .modern-layout__aside {
        display: none;
    }
}

/* Print Styles */
@media print {
    #modern-header,
    .modern-sidebar,
    .modern-fab,
    .modern-back-to-top,
    .modern-thread-actions {
        display: none !important;
    }
    .modern-layout {
        display: block;
    }
    .modern-body {
        background: #fff;
        color: #000;
    }
}
