@media (max-width: 820px) {
    .shell {
        display: block;
    }

    .sidebar {
        position: fixed;
        inset: 0 auto 0 0;
        width: min(88vw, 310px);
        transform: translateX(-102%);
        transition: transform 180ms ease;
    }

    body.sidebar-open .sidebar {
        transform: translateX(0);
    }

    .backdrop {
        position: fixed;
        z-index: 15;
        inset: 0;
        width: 100%;
        height: 100%;
        background: #0009;
    }

    body.sidebar-open .backdrop {
        display: block;
    }

    .workspace {
        height: 100dvh;
    }

    .topbar {
        grid-template-columns: 40px minmax(180px, 1fr) 125px;
        padding: 12px;
    }

    .icon-button {
        display: block;
    }

    .topbar-information {
        grid-column: 2 / -1;
    }
}

@media (max-width: 560px) {
    .topbar {
        grid-template-columns: 40px minmax(0, 1fr);
    }

    .reasoning-control {
        grid-column: 2;
    }

    .topbar-information {
        grid-column: 1 / -1;
    }

    .messages {
        padding: 22px 14px;
    }

    .composer-area {
        padding: 10px 10px 12px;
    }

    .message.user .message-content {
        max-width: 92%;
    }

    .composer-actions span {
        display: none;
    }

    .composer-actions {
        justify-content: flex-end;
    }
}