.page-content--design {
    padding: 0;
    margin: 0;
    max-width: none;
}

.page-content--design .room-design-app {
    --design-viewport-height: calc(100dvh - 168px);
    width: 100%;
    color: var(--text);
    background: var(--bg);
}

.page-content--design .room-design-app .layout {
    display: grid;
    grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
    gap: 0;
    padding: 0;
    min-height: var(--design-viewport-height);
}

.page-content--design .room-design-app .panel {
    border-radius: 0;
    box-shadow: inset -1px 0 0 #e6e7ea;
    min-height: var(--design-viewport-height);
    max-height: var(--design-viewport-height);
    overflow-y: auto;
    padding: 1.25rem;
}

.page-content--design .room-design-app .viewer-wrap {
    min-height: var(--design-viewport-height);
    height: var(--design-viewport-height);
}

.page-content--design .room-design-app .viewer {
    min-height: var(--design-viewport-height);
    height: 100%;
    border-radius: 0;
    box-shadow: none;
}

@media (max-width: 980px) {
    .page-content--design .room-design-app {
        --design-viewport-height: calc(100dvh - 152px);
    }

    .page-content--design .room-design-app .layout {
        grid-template-columns: 1fr;
        grid-template-rows: auto minmax(520px, 1fr);
    }

    .page-content--design .room-design-app .panel {
        min-height: auto;
        max-height: none;
        box-shadow: none;
        border-bottom: 1px solid #e6e7ea;
    }

    .page-content--design .room-design-app .viewer-wrap,
    .page-content--design .room-design-app .viewer {
        min-height: max(560px, calc(100dvh - 360px));
        height: max(560px, calc(100dvh - 360px));
    }
}

@media (max-width: 768px) {
    .page-content--design .room-design-app .panel {
        padding: 1rem;
    }
}
