@media (max-width: 1200px) {
    .process-flow-lane {
        gap: 0.8rem 1rem;
    }

    .process-flow-node {
        flex: 1 1 11rem;
        min-width: 11rem;
        max-width: 14rem;
    }

    .process-flow-node-card {
        min-width: 0;
        max-width: none;
        width: 100%;
    }
}

@media (max-width: 1180px) {
    .neo-chat-box .chat-layout,
    .neo-chat-box.has-todo-sidebar .chat-layout,
    .neo-chat-box.has-canvas-panel .chat-layout {
        flex-direction: column;
    }

    .neo-chat-box .chat-canvas-panel,
    .neo-chat-box .todo-sidebar,
    .neo-chat-box .todo-sidebar-restore {
        width: 100%;
        min-width: 0;
        max-width: none;
        position: static;
        top: auto;
    }

    .neo-chat-box .chat-canvas-markdown {
        min-height: 12rem;
    }
}

@media (max-width: 960px) {
    .mail-message-list th.sender,
    .mail-message-list td.sender {
        width: 18%;
    }

    .mail-message-list th.subject,
    .mail-message-list td.subject {
        width: auto;
    }

    .mail-message-list th.date,
    .mail-message-list td.date {
        width: 10%;
    }
}

@media (max-width: 860px) {
    .pagination-controls-flex {
        flex-wrap: wrap;
        row-gap: 0.5rem;
    }

    .unified-toolbar .toolbar-group {
        flex-wrap: wrap;
    }

    .unified-toolbar .toolbar-btn {
        padding: 0.45rem 0.75rem;
        font-size: 0.8rem;
    }

    .unified-toolbar .toolbar-btn.toggle-summary-btn {
        min-width: auto;
    }

    .split-layout {
        flex-direction: column;
        width: 100%;
    }

    .split-layout-aside {
        flex-basis: auto;
        width: auto;
    }

    .sticky-stack {
        position: static;
        max-height: none;
        overflow: visible;
    }

    .settings-panel {
        padding: 1rem;
    }

    .organization-profile-row,
    .organization-profile-sections {
        flex-direction: column;
    }

    .organization-settings-layout .split-layout-aside {
        width: auto;
    }

    .detail-grid {
        grid-template-columns: 1fr;
    }

    table.responsive-table,
    table.responsive-table thead,
    table.responsive-table tbody,
    table.responsive-table th,
    table.responsive-table td,
    table.responsive-table tr {
        display: block;
    }

    table.responsive-table .table-actions-cell {
        width: auto;
        text-align: left;
    }

    table.responsive-table .table-action-bar {
        justify-content: flex-start;
    }

    table.responsive-table thead {
        display: none;
    }

    table.responsive-table tr {
        padding: 0.8rem 0;
        border-bottom: 1px solid var(--table-border-color, var(--color-border));
    }

    table.responsive-table td {
        border-bottom: none;
        padding: 0.3rem 0;
    }
}

@media (max-width: 768px) {
    .contact-add-sections {
        flex-direction: column;
    }

    .contact-add-form-row {
        flex-direction: column;
    }

    .contact-add-field {
        flex-basis: 100%;
    }

    .neo-chat-box .chat-layout {
        flex-direction: column-reverse;
        width: 100%;
    }

    .neo-chat-box .chat-sidebar {
        width: 100% !important;
        min-width: unset !important;
        max-width: 100% !important;
        max-height: 300px;
        overflow-y: auto;
        box-sizing: border-box;
    }

    .neo-chat-box .sessions-list {
        max-height: 200px;
        width: 100%;
    }

    .neo-chat-box .chat-main {
        max-width: 100%;
        overflow-x: hidden;
    }

    .chat-response.user .response-content,
    .chat-response .message {
        max-width: 85%;
        word-break: break-word;
        overflow-wrap: break-word;
    }

    .chat-response .answer,
    .chat-response.assistant .response-content {
        max-width: 95%;
        word-break: break-word;
        overflow-wrap: break-word;
    }

    .chat-response .answer pre,
    .chat-response .response-content pre {
        max-width: 100%;
        overflow-x: auto;
    }

    .neo-chat-box .chat-context-project-select {
        max-width: 100%;
        min-width: 8rem;
    }

    .neo-chat-box.has-todo-sidebar .chat-layout {
        flex-direction: column;
    }

    .neo-chat-box .todo-sidebar,
    .neo-chat-box .todo-sidebar-restore {
        position: static;
        top: auto;
        z-index: auto;
        width: 100%;
        min-width: 0;
        max-width: 100%;
        max-height: none;
    }

    .neo-chat-box .todo-sidebar.is-minimized {
        width: 100%;
    }

    section#pricing-plans {
        flex-direction: column;
        align-items: center;
        gap: 1.25rem;
    }

    section#pricing-plans .plan {
        max-width: 100%;
        width: 100%;
        padding: 2rem 1.25rem;
    }

    section#pricing-plans .plan.preferred {
        transform: none;
        order: -1;
    }

    .pricing-hero h1 {
        font-size: 1.75rem;
    }
}

@media (max-width: 760px) {
    .process-flow-shell {
        padding: 1rem;
    }

    .process-flow-lane {
        flex-direction: column;
        align-items: stretch;
        overflow-x: visible;
    }

    .process-flow-stage-branch {
        margin-left: 0;
        padding-top: 0;
    }

    .process-flow-stage-branch::before,
    .process-flow-stage-branch::after {
        display: none;
    }

    .process-flow-node {
        width: 100%;
        min-width: min(100%, 10.5rem);
        max-width: 13rem;
    }

    .process-flow-node:not(:last-child)::after {
        top: calc(100% + 0.5rem);
        left: 0.42rem;
        width: 0;
        height: 0.9rem;
        border-top: none;
        border-left: 2px solid var(--color-border);
        transform: none;
    }

    .process-flow-node-card {
        min-width: 0;
        max-width: none;
        width: 100%;
    }

    .process-flow-node-card::after {
        display: none;
    }
}

@media (max-width: 720px) {
    .toolbar-btn-compact {
        box-sizing: border-box;
        width: 3.2rem;
        min-width: 3.2rem;
        max-width: 3.2rem;
        height: 3.2rem;
        min-height: 3.2rem;
        max-height: 3.2rem;
        padding: 0;
        gap: 0;
        font-size: 0;
        line-height: 1;
        border-radius: 0.8rem;
    }

    .toolbar-btn-compact .button-label {
        display: none !important;
    }

    .toolbar-btn-compact .button-icon {
        font-size: 1.65rem;
        font-weight: 700;
    }

    .toolbar-strip {
        gap: 0.55rem;
    }

    .toolbar-strip .toolbar-btn {
        flex: 0 0 auto;
        width: 3.2rem;
        min-width: 3.2rem;
        max-width: 3.2rem;
        height: 3.2rem;
        min-height: 3.2rem;
        max-height: 3.2rem;
    }

    .toolbar-strip .toggle-summary-btn {
        flex: 0 0 auto;
        width: 3.2rem;
        min-width: 3.2rem;
        max-width: 3.2rem;
        height: 3.2rem;
        min-height: 3.2rem;
        max-height: 3.2rem;
        padding: 0;
    }

    .meta-bar {
        gap: 0.45rem 0.85rem;
        font-size: 0.72rem;
    }

    .status-marker {
        font-size: 0.75rem;
    }

    .neo-chat-box .chat-canvas-letterhead {
        flex-direction: column;
        gap: 1rem;
    }

    .neo-chat-box .chat-canvas-letterhead-brand.placement-right,
    .neo-chat-box .chat-canvas-letterhead-contact.placement-right {
        margin-left: 0;
        text-align: left;
        justify-items: start;
    }

    .neo-chat-box .chat-helper-actions {
        justify-content: flex-start;
    }

    .neo-chat-box .chat-helper-actions .chat-attachment-picker-trigger {
        margin-right: 0;
    }

    .neo-chat-box .chat-context-bar .project-group,
    .neo-chat-box .chat-context-bar .project-item-group,
    .neo-chat-box .chat-context-bar .github-group {
        flex-basis: 100%;
    }

    .communication-page {
        gap: 0.85rem;
        padding: 0.85rem;
    }

    .communication-chat-launch {
        justify-content: flex-start;
        margin-bottom: 0;
    }

    .unified-toolbar .toolbar-btn.toggle-summary-btn,
    .unified-toolbar .left-controls .toggle-summary-btn,
    .unified-toolbar .pagination-buttons .toolbar-btn {
        min-width: 3rem;
        width: 3rem;
    }

    .folder-tab {
        font-size: 1rem;
    }

    table.mail-message-list {
        border: 0;
        width: 100%;
        background: transparent;
        box-shadow: none;
    }

    .mail-message-list thead {
        display: none;
    }

    .mail-message-list tbody {
        display: block;
    }

    .mail-message-list tr.mail-row {
        display: grid;
        position: relative;
        grid-template-columns: 2rem minmax(0, 1fr);
        grid-template-areas:
            'select sender'
            'select subject';
        column-gap: 0.65rem;
        row-gap: 0.12rem;
        align-items: start;
        margin: 0;
        padding: 0.48rem 4.8rem 0.52rem 0.15rem;
        border: 0;
        border-bottom: 1px solid var(--border-color, var(--color-hex-e0e0e0));
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    .mail-message-list th.sender,
    .mail-message-list td.sender,
    .mail-message-list th.subject,
    .mail-message-list td.subject,
    .mail-message-list th.date,
    .mail-message-list td.date {
        width: auto;
        min-width: 0;
        max-width: none;
    }

    .mail-message-list tr.mail-row.unread {
        box-shadow: inset 3px 0 0 var(--brand-accent, var(--color-primary));
        padding-left: 0.45rem;
    }

    .mail-message-list tbody tr.mail-row:last-child {
        border-bottom: none;
    }

    .mail-message-list td {
        display: block;
        min-width: 0;
        padding: 0 !important;
        border: 0 !important;
        font-size: 0.86rem;
        line-height: 1.2rem;
    }

    .mail-message-list td[data-label]::before {
        display: none;
    }

    .mail-message-list td.table-select-cell {
        grid-area: select;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 0.3rem;
        align-self: stretch;
    }

    .mail-message-list td.table-select-cell input[type=checkbox] {
        transform: scale(1.05);
        margin: 0;
    }

    .mail-message-list td.table-select-cell .reply-shortcut {
        margin-left: 0;
        line-height: 1;
    }

    .mail-message-list td.sender {
        grid-area: sender;
        padding-top: 0.03rem !important;
    }

    .mail-message-list td.subject {
        grid-area: subject;
    }

    .mail-message-list td.date {
        position: absolute;
        top: 0.52rem;
        right: 0.1rem;
        text-align: right;
        margin-top: 0;
        font-size: 0.68rem;
        line-height: 0.95rem;
        white-space: nowrap;
    }

    .mail-message-list td.sender a {
        display: block;
        max-width: 100%;
        overflow: visible;
        text-overflow: clip;
        white-space: normal;
        word-break: break-word;
    }

    .mail-message-list td.subject .table-copy-stack {
        display: block;
        min-width: 0;
    }

    .mail-message-list td.subject .table-secondary-copy {
        margin-top: 0.05rem;
    }

    .mail-message-list .table-primary-copy,
    .mail-message-list .table-secondary-copy {
        display: -webkit-box;
        line-clamp: 2;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        word-break: break-word;
    }

    .mail-message-list .table-link {
        font-size: 0.82rem;
        line-height: 1rem;
    }

    .mail-message-list .table-primary-copy {
        font-size: 0.88rem;
        line-height: 1.08rem;
    }

    .mail-message-list .table-secondary-copy {
        font-size: 0.78rem;
        line-height: 0.98rem;
    }

    .bulk-actions-toolbar {
        position: sticky;
        bottom: 0;
    }

    .bulk-actions-toolbar .bulk-actions-inner {
        border-radius: 0.5rem 0.5rem 0 0;
    }
}

@media (max-width: 700px) {
    .profile-page {
        padding: 0.7rem;
    }

    .profile-form .avatar-editor {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 640px) {
    .pagination-controls-flex {
        flex-direction: row;
    }

    nav#top-nav .nav-current-organization {
        max-width: min(46vw, 11rem);
        font-size: 0.9rem;
    }

    .nav-submenu {
        gap: 0.125rem;
    }

    .nav-submenu a {
        padding: 4px 8px;
        font-size: 13px;
    }

    body#signin main,
    body#signup main,
    body#login-success main {
        padding: 0 1rem;
    }

    body#signin form,
    body#signup form {
        padding: 1.5rem;
    }
}

@media (max-width: 56.25rem) {
    .danger-panel {
        flex-direction: column;
        align-items: stretch;
    }
}

@media (max-width: 43.75rem) {
    .selection-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .selection-toolbar-actions {
        width: 100%;
    }

    .action-toolbar {
        gap: 0.6rem;
    }

    .action-tile {
        flex: 1 1 100%;
        justify-content: flex-start;
    }

    .recording-dialog-actions,
    .media-actions-row {
        flex-direction: column;
        align-items: stretch;
    }

    .recording-trigger {
        width: 100%;
    }

    .surface-section-header,
    .recording-status-row {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 37.5rem) {
    .card-list-item {
        flex-direction: column;
    }

    .card-list-media,
    .card-list-media.is-compact {
        width: 100%;
        min-height: 7.5rem;
        max-height: 11.25rem;
        border-radius: 0;
    }

    .card-list-controls {
        flex-direction: row;
        border-left: none;
        border-top: 1px solid var(--border-color, var(--color-hex-e0e0e0));
        padding: 0.5rem 1rem;
        justify-content: flex-end;
    }

    .dialog-lightbox {
        padding: 1rem;
    }
}

@media (max-width: 540px) {
    .toolbar-btn-compact {
        width: 2.85rem;
        min-width: 2.85rem;
        height: 2.85rem;
        min-height: 2.85rem;
    }

    .communication-chat-overlay {
        padding: 0;
    }

    .communication-chat-dialog {
        width: 100vw;
        height: 100dvh;
        max-width: none;
        max-height: none;
        padding: 0.85rem;
        border-radius: 0;
    }

    .communication-page {
        padding: 0.7rem;
    }
}