.forums-page {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: clamp(16px, 2.5vw, 48px) 0 clamp(28px, 4vw, 56px);
    min-height: calc(100vh - 120px);
}

.forums-page .forums-panel {
    width: 100%;
    max-width: none;
}

.forums-page .forums-app {
    width: 100%;
    max-width: none;
    display: grid;
    grid-template-columns: minmax(280px, 360px) minmax(0, 1fr) minmax(240px, 320px);
    grid-template-areas: "list thread side";
    gap: clamp(16px, 2vw, 28px);
    align-items: start;
}

.forums-page .forums-app > * {
    min-width: 0;
}

.forums-page .forums-pane--list {
    grid-area: list;
}

.forums-page .forums-pane--thread {
    grid-area: thread;
    min-width: 0;
}

.forums-page .forums-pane--side {
    grid-area: side;
    position: sticky;
    top: 120px;
    align-self: start;
}

.forums-page .forums-editor,
.forums-page .forums-editor__body,
.forums-page .forums-editor__textarea,
.forums-page .forum-form,
.forums-page .forum-form .input-box,
.forums-page .forums-search__input {
    width: 100%;
    max-width: 100%;
}

@media (max-width: 1100px) {
    .forums-page .forums-app {
        grid-template-columns: minmax(0, 1fr) minmax(240px, 320px);
        grid-template-areas:
            "thread thread"
            "list side";
    }

    .forums-page .forums-pane--side {
        display: grid;
        position: static;
    }

    .forums-page .forums-app.is-thread-open .forums-pane--list,
    .forums-page .forums-app:not(.is-thread-open) .forums-pane--thread {
        display: grid;
    }
}

@media (max-width: 768px) {
    .forums-page {
        padding: clamp(16px, 4vw, 28px) 0 var(--space-6);
    }

    .forums-page .forums-app {
        grid-template-columns: 1fr;
        grid-template-areas:
            "thread"
            "list"
            "side";
    }

    .forums-page .forums-pane--side {
        position: static;
    }

    .forums-page .forums-app.is-thread-open .forums-pane--list,
    .forums-page .forums-app:not(.is-thread-open) .forums-pane--thread {
        display: grid;
    }
}
