/* Phone-specific safe areas and responsive fiscal/agenda flows. */
@media (max-width:680px) {
  .product-modal,.customer-modal{align-items:stretch;padding:8px 8px calc(78px + env(safe-area-inset-bottom))}
  .product-modal .product-modal-card,.customer-modal .customer-fiscal-form{max-height:calc(100dvh - 94px - env(safe-area-inset-bottom));padding-bottom:0;overscroll-behavior:contain}
  .product-modal-card .product-form-actions,.customer-fiscal-form .product-form-actions{position:sticky;z-index:8;bottom:0;grid-template-columns:1fr;margin:2px -14px 0;padding:10px 14px calc(10px + env(safe-area-inset-bottom));border-top:1px solid #dbe5f0;background:rgba(255,255,255,.98);box-shadow:0 -10px 22px rgba(15,23,42,.08)}
  .product-modal-card .product-form-actions .btn,.customer-fiscal-form .product-form-actions .btn{min-height:48px}

  .agenda-pro-page{min-width:0;overflow-x:hidden}
  .agenda-pro-page:has(.agenda-workspace) .agenda-pro-hero,.agenda-day-panel>header,.agenda-report>header{padding:16px}
  .agenda-pro-page:has(.agenda-workspace) .agenda-pro-hero h1{font-size:25px}
  .agenda-pro-page:has(.agenda-workspace) .agenda-date-toolbar{gap:7px}
  .agenda-pro-page:has(.agenda-workspace) .agenda-date-toolbar div{min-width:0;flex:1}
  .agenda-date-toolbar .today{padding:0 8px}
  .agenda-pro-page:has(.agenda-workspace) .agenda-timeline{padding:6px 10px 16px}
  .agenda-compact-slot{grid-template-columns:46px minmax(0,1fr)}
  .agenda-compact-event{grid-template-columns:9px minmax(0,1fr) 28px;gap:5px;padding:5px 6px}
  .agenda-compact-event>*{min-width:0}
  .agenda-modal-backdrop{padding:8px 8px calc(76px + env(safe-area-inset-bottom))}
  .agenda-modal{width:100%;max-height:calc(100dvh - 92px - env(safe-area-inset-bottom))}
  .agenda-modal>header{padding:13px 15px}
  .agenda-pro-form{grid-template-columns:1fr;padding:14px}
  .agenda-pro-form .span-2,.agenda-pro-form footer{grid-column:1}
  .agenda-pro-form footer{position:sticky;bottom:0;z-index:4;margin:4px -14px -14px;padding:10px 14px;background:#fff}
  .agenda-pro-form footer .btn{width:100%;min-height:46px}

  .nfe-new-page,.nfe-detail-page,.nfe-list-panel{min-width:0}
  .nfe-form-tabs{display:flex;overflow-x:auto;overscroll-behavior-inline:contain}
  .nfe-form-tabs button{flex:0 0 auto;min-width:122px}
  .nfe-new-page .nfe55-form,.nfe-detail-page .nfe55-form{padding:10px}
  .nfe-new-page .nfe-tab-panel,.nfe-detail-page .nfe-tab-panel{grid-template-columns:1fr!important}
  .nfe-new-page .nfe-tab-panel>*,.nfe-detail-page .nfe-tab-panel>*{grid-column:1!important;min-width:0}
  .nfe-detail-actions{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
}

/* 2026-10-30 - Refinamento final do modulo de Mesas no piloto mobile. */
@media (max-width: 760px) {
    html body:has([data-tables-screen]),
    html body:has([data-order-screen][data-order-type="table"]) {
        overflow-x: hidden !important;
    }

    html body:has([data-tables-screen]) .tables-grid {
        gap: 8px !important;
        padding-bottom: calc(104px + env(safe-area-inset-bottom)) !important;
    }

    html body:has([data-tables-screen]) .table-card {
        min-height: 94px !important;
        gap: 3px !important;
        padding: 7px 4px !important;
        border-radius: 13px !important;
    }

    html body:has([data-tables-screen]) .table-card .table-shape {
        width: 46px !important;
        height: 22px !important;
        border-width: 3px !important;
    }

    html body:has([data-tables-screen]) .table-card strong {
        font-size: 21px !important;
    }

    html body:has([data-tables-screen]) .table-card small {
        font-size: 12px !important;
    }

    html body:has([data-tables-screen]) .float-add {
        right: 14px !important;
        bottom: calc(76px + env(safe-area-inset-bottom)) !important;
        width: 56px !important;
        height: 56px !important;
        border-radius: 17px !important;
        font-size: 32px !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .order-layout,
    html body:has([data-order-screen][data-order-type="table"]) .order-left {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .order-left > .page-head.compact {
        gap: 8px !important;
        margin-bottom: 8px !important;
        padding: 11px !important;
        border-radius: 14px !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .order-left > .page-head.compact > div:first-child {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 8px !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .order-left > .page-head.compact h1 {
        flex: 0 0 auto !important;
        margin: 0 !important;
        font-size: 24px !important;
        line-height: 1.05 !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .order-left > .page-head.compact p {
        margin: 0 !important;
        padding-left: 12px !important;
        font-size: 11px !important;
        line-height: 1.2 !important;
        text-align: right !important;
        white-space: normal !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .order-left > .page-head.compact p::before {
        width: 7px !important;
        height: 7px !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .order-left > .page-head.compact .header-actions {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        width: 100% !important;
        min-width: 0 !important;
        gap: 6px !important;
        overflow: visible !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .order-left > .page-head.compact .header-actions form,
    html body:has([data-order-screen][data-order-type="table"]) .order-left > .page-head.compact .header-actions .btn {
        width: 100% !important;
        min-width: 0 !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .order-left > .page-head.compact .header-actions .btn,
    html body:has([data-order-screen][data-order-type="table"]) .order-left > .page-head.compact .header-actions .btn.primary {
        min-height: 44px !important;
        padding: 5px 7px !important;
        font-size: 12px !important;
        line-height: 1.1 !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .table-optional-fields {
        gap: 6px !important;
        margin-bottom: 8px !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .table-optional-section > summary {
        min-height: 38px !important;
        padding: 6px 9px !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .search-add {
        grid-template-columns: 66px minmax(0, 1fr) !important;
        gap: 7px !important;
        margin-bottom: 8px !important;
        padding: 9px !important;
        border-radius: 14px !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .search-add .mobile-section-title {
        font-size: 16px !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .search-add > [data-order-product-search],
    html body:has([data-order-screen][data-order-type="table"]) .search-add > [data-order-quantity],
    html body:has([data-order-screen][data-order-type="table"]) .search-add > .btn.primary {
        min-height: 46px !important;
        height: 46px !important;
        font-size: 15px !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .order-items {
        margin-bottom: 8px !important;
        padding: 9px 11px !important;
        border-radius: 14px !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .order-items .mobile-section-title {
        font-size: 16px !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .order-items article {
        gap: 6px 10px !important;
        padding: 10px 0 !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .order-items article > strong {
        font-size: 15px !important;
        line-height: 1.25 !important;
        overflow-wrap: anywhere !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .order-items article > span,
    html body:has([data-order-screen][data-order-type="table"]) .order-items article > b {
        font-size: 14px !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .order-items .item-note-editor summary,
    html body:has([data-order-screen][data-order-type="table"]) .order-items .link-danger {
        font-size: 13px !important;
    }

    html body:has([data-order-screen][data-order-type="table"]) .order-current-total {
        padding-top: 10px !important;
        font-size: 15px !important;
    }
}

/* 2026-10-30 - fluxo de orcamentos no celular (piloto GE Informatica).
 * Mantem cabecalhos, formulario e listagem dentro da largura util da tela.
 */
@media (max-width: 760px) {
    html body .quote-detail-head,
    html body .quote-page-head {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        align-items: stretch !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        min-height: 0 !important;
        padding: 12px !important;
        gap: 10px !important;
        overflow: hidden !important;
    }

    html body .quote-detail-head > div,
    html body .quote-page-head > div,
    html body .quote-detail-head h1,
    html body .quote-page-head h1,
    html body .quote-detail-head p,
    html body .quote-page-head p {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    html body .quote-detail-head h1,
    html body .quote-page-head h1 {
        font-size: 24px !important;
        line-height: 1.12 !important;
        word-break: normal !important;
        overflow-wrap: anywhere !important;
        white-space: normal !important;
    }

    html body .quote-detail-head h1::before {
        display: block !important;
        width: max-content !important;
        max-width: 100% !important;
        margin: 0 0 7px !important;
        padding: 4px 8px !important;
        font-size: 10px !important;
        line-height: 1.15 !important;
        white-space: nowrap !important;
        word-break: normal !important;
        writing-mode: horizontal-tb !important;
    }

    html body .quote-detail-head p,
    html body .quote-page-head p {
        margin: 4px 0 0 !important;
        font-size: 13px !important;
        line-height: 1.3 !important;
        overflow-wrap: anywhere !important;
    }

    html body .quote-head-actions,
    html body .quote-page-actions {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        align-items: stretch !important;
        width: 100% !important;
        min-width: 0 !important;
        gap: 7px !important;
    }

    html body .quote-head-actions > *,
    html body .quote-page-actions > *,
    html body .quote-head-actions form,
    html body .quote-page-actions form {
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    html body .quote-head-actions .btn,
    html body .quote-page-actions .btn,
    html body .quote-page-actions .module-action-card {
        justify-content: center !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 40px !important;
        padding: 8px !important;
        font-size: 12px !important;
        line-height: 1.2 !important;
        white-space: normal !important;
    }

    html body .quote-page-actions .module-view-actions {
        grid-column: 1 / -1 !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        gap: 7px !important;
    }

    html body .quote-form-panel,
    html body .quote-items-panel,
    html body .quote-list-panel {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        padding: 10px !important;
        overflow: hidden !important;
    }

    html body .quote-detail-panel .quote-form,
    html body .quote-client-grid,
    html body .quote-commercial-grid,
    html body .quote-items-detail-panel .quote-item-form {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    html body .quote-section-card-title {
        width: auto !important;
        min-width: 0 !important;
        margin: -10px -10px 10px !important;
        padding: 12px !important;
        gap: 6px !important;
    }

    html body .quote-section-card-title h2,
    html body .quote-section-card-title h3 {
        min-width: 0 !important;
        margin: 0 !important;
        font-size: 20px !important;
        line-height: 1.18 !important;
        overflow-wrap: anywhere !important;
    }

    html body .quote-client-grid,
    html body .quote-commercial-grid,
    html body .quote-items-detail-panel .quote-item-form {
        grid-template-columns: minmax(0, 1fr) !important;
        padding: 10px !important;
        gap: 10px !important;
    }

    html body .quote-client-grid > *,
    html body .quote-commercial-grid > *,
    html body .quote-items-detail-panel .quote-item-form > * {
        grid-column: 1 !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    html body .quote-items-table,
    html body .quote-items-preview-table {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: auto !important;
        overscroll-behavior-inline: contain !important;
    }

    html body .quote-list-heading {
        margin-bottom: 10px !important;
    }

    html body .quote-list-heading h2 {
        font-size: 22px !important;
    }

    html body .quote-list-filter {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        gap: 8px !important;
        margin-bottom: 10px !important;
    }

    html body .quote-list-filter > label,
    html body .quote-list-filter > button {
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    html body .quote-list-filter > label:first-of-type,
    html body .quote-list-filter > button {
        grid-column: 1 / -1 !important;
    }

    html body .quote-list-filter input,
    html body .quote-list-filter select,
    html body .quote-list-filter .btn {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 42px !important;
        padding: 8px 10px !important;
        font-size: 13px !important;
    }

    html body .quote-list-workspace,
    html body .quote-list-scroll,
    html body .quote-list-panel .quote-list-table,
    html body .quote-list-panel .quote-list-table tbody {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: visible !important;
    }

    html body .quote-list-panel .quote-list-table thead {
        display: none !important;
    }

    html body .quote-list-panel .quote-list-table tbody {
        display: grid !important;
        gap: 9px !important;
    }

    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        width: 100% !important;
        min-width: 0 !important;
        gap: 7px 10px !important;
        padding: 11px !important;
        border: 1px solid #dbe4ef !important;
        border-left: 4px solid #fb923c !important;
        border-radius: 12px !important;
        background: #fff !important;
        box-shadow: 0 4px 12px rgba(15, 23, 42, .05) !important;
    }

    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td {
        display: none !important;
        width: auto !important;
        min-width: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
    }

    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(1),
    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(2),
    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(3),
    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(5),
    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(6),
    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(7),
    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(8) {
        display: block !important;
    }

    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(1) {
        grid-column: 1 !important;
        grid-row: 1 !important;
    }

    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(7) {
        grid-column: 2 !important;
        grid-row: 1 !important;
        justify-self: end !important;
    }

    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(2) {
        grid-column: 1 / -1 !important;
        grid-row: 2 !important;
        padding-top: 7px !important;
        border-top: 1px solid #eef2f7 !important;
    }

    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(3) {
        grid-column: 1 !important;
        grid-row: 3 !important;
        color: #64748b !important;
        font-size: 12px !important;
    }

    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(3)::before {
        content: "Data: " !important;
        font-weight: 800 !important;
    }

    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(6) {
        grid-column: 2 !important;
        grid-row: 3 !important;
        justify-self: end !important;
    }

    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(5) {
        grid-column: 1 / -1 !important;
        grid-row: 4 !important;
        color: #64748b !important;
        font-size: 12px !important;
    }

    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(5)::before {
        content: "Pagamento: " !important;
        font-weight: 800 !important;
    }

    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(8) {
        grid-column: 1 / -1 !important;
        grid-row: 5 !important;
        padding-top: 8px !important;
        border-top: 1px solid #eef2f7 !important;
    }

    html body .quote-list-panel .quote-actions {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        gap: 6px !important;
    }

    html body .quote-list-panel .quote-actions form {
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    html body .quote-list-panel .quote-actions .icon-action {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 38px !important;
        gap: 6px !important;
        padding: 7px 8px !important;
        border-radius: 9px !important;
        font-size: 11px !important;
        font-weight: 800 !important;
    }

    html body .quote-list-panel .quote-actions .icon-action::after {
        content: attr(title) !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    html body .quote-list-panel .quote-actions .icon-action svg {
        flex: 0 0 auto !important;
        width: 16px !important;
        height: 16px !important;
    }

    html body .quote-items-preview-panel {
        width: 100% !important;
        min-width: 0 !important;
        margin-top: 12px !important;
        padding: 10px !important;
    }
}

/* Piloto GE Informatica: cadastro de produtos legivel e acionavel no celular. */
@media (max-width: 760px) {
    body .products-page:not(.customers-page) .products-list-panel {
        min-width: 0 !important;
        padding: 9px !important;
        overflow: hidden !important;
    }

    body .products-page:not(.customers-page) .products-list-head,
    body .products-page:not(.customers-page) .products-list-summary {
        min-width: 0 !important;
        gap: 7px !important;
    }

    body .products-page:not(.customers-page) .product-panel-title h2 {
        font-size: 20px !important;
        line-height: 1.05 !important;
    }

    body .products-page:not(.customers-page) .product-panel-title p {
        margin-top: 3px !important;
        font-size: 10px !important;
        line-height: 1.2 !important;
    }

    body .products-page:not(.customers-page) .products-search {
        min-width: 0 !important;
        padding: 7px !important;
        gap: 6px !important;
        overflow: hidden !important;
    }

    body .products-page:not(.customers-page) .products-search-primary {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 6px !important;
        width: 100% !important;
    }

    body .products-page:not(.customers-page) .products-search-field {
        grid-column: 1 / -1 !important;
        min-width: 0 !important;
    }

    body .products-page:not(.customers-page) .products-search-field input,
    body .products-page:not(.customers-page) .products-search-primary > .btn {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 34px !important;
        height: 34px !important;
        font-size: 11px !important;
    }

    /* Os filtros continuam disponiveis, mas em uma faixa horizontal compacta. */
    body .products-page:not(.customers-page) .products-filter-groups {
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 6px !important;
        width: 100% !important;
        max-width: 100% !important;
        padding: 1px 0 4px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        overscroll-behavior-inline: contain !important;
        scrollbar-width: thin !important;
    }

    body .products-page:not(.customers-page) .product-filter-group {
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: 0 !important;
        padding: 4px 6px 6px !important;
        border-radius: 9px !important;
    }

    body .products-page:not(.customers-page) .product-filter-group legend {
        padding: 0 3px !important;
        font-size: 8px !important;
    }

    body .products-page:not(.customers-page) .product-filter-options,
    body .products-page:not(.customers-page) .product-status-filters {
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 4px !important;
    }

    body .products-page:not(.customers-page) .product-filter-chip {
        flex: 0 0 auto !important;
        min-width: 0 !important;
        min-height: 28px !important;
        padding: 3px 7px !important;
        gap: 4px !important;
        font-size: 9px !important;
        white-space: nowrap !important;
    }

    body .products-page:not(.customers-page) .product-filter-chip input {
        width: 15px !important;
        height: 15px !important;
        margin: 0 !important;
    }

    /* Acoes em massa aparecem somente quando algum produto estiver selecionado. */
    body .products-page:not(.customers-page) .products-list-panel:not(:has(.products-table .product-select-col input:checked)) .products-bulk-bar {
        display: none !important;
    }

    body .products-page:not(.customers-page) .products-bulk-bar {
        display: flex !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: 5px !important;
        margin: 6px 0 !important;
        padding: 6px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }

    body .products-page:not(.customers-page) .products-bulk-bar .btn {
        flex: 0 0 auto !important;
        min-height: 31px !important;
        padding: 5px 8px !important;
        font-size: 9px !important;
    }

    body .products-page:not(.customers-page) .products-table-wrap,
    body .products-page:not(.customers-page) .products-table,
    body .products-page:not(.customers-page) .products-table tbody {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: visible !important;
    }

    body .products-page:not(.customers-page) .products-table tbody {
        display: grid !important;
        gap: 7px !important;
    }

    body .products-page:not(.customers-page) .products-table tbody tr {
        position: relative !important;
        display: grid !important;
        grid-template-columns: 48px minmax(0, 1fr) auto !important;
        grid-template-rows: auto auto auto !important;
        gap: 3px 8px !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 88px !important;
        margin: 0 !important;
        padding: 9px !important;
        border: 1px solid #dbe3ec !important;
        border-radius: 13px !important;
        background: #fff !important;
        box-shadow: 0 5px 14px rgba(15, 23, 42, .06) !important;
        overflow: visible !important;
    }

    body .products-page:not(.customers-page) .products-table tbody td {
        display: none !important;
        width: auto !important;
        min-width: 0 !important;
        padding: 0 !important;
        border: 0 !important;
    }

    /* Seletores por identidade, sem depender da posicao numerica da coluna. */
    body .products-page:not(.customers-page) .products-table tbody td.product-select-col,
    body .products-page:not(.customers-page) .products-table tbody td[data-product-column="photo"],
    body .products-page:not(.customers-page) .products-table tbody td:has(.product-name),
    body .products-page:not(.customers-page) .products-table tbody td[data-product-column="stock"],
    body .products-page:not(.customers-page) .products-table tbody td[data-product-column="price"],
    body .products-page:not(.customers-page) .products-table tbody td.actions-cell,
    body .products-page:not(.customers-page) .products-table tbody td.product-select-col + td[data-product-column="photo"] + td {
        display: block !important;
    }

    body .products-page:not(.customers-page) .products-table tbody td.product-select-col {
        position: absolute !important;
        top: 7px !important;
        left: 7px !important;
        z-index: 2 !important;
    }

    body .products-page:not(.customers-page) .products-table tbody td.product-select-col input {
        width: 20px !important;
        height: 20px !important;
        margin: 0 !important;
    }

    body .products-page:not(.customers-page) .products-table tbody td[data-product-column="photo"] {
        grid-column: 1 !important;
        grid-row: 1 / span 3 !important;
        align-self: center !important;
    }

    body .products-page:not(.customers-page) .product-thumb {
        width: 46px !important;
        height: 58px !important;
        border-radius: 9px !important;
        font-size: 9px !important;
    }

    body .products-page:not(.customers-page) .products-table tbody td:has(.product-name) {
        grid-column: 2 / 4 !important;
        grid-row: 1 !important;
        padding-right: 54px !important;
    }

    body .products-page:not(.customers-page) .product-name {
        display: block !important;
        max-width: 100% !important;
        color: #0f172a !important;
        font-size: 13px !important;
        font-weight: 800 !important;
        line-height: 1.18 !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        overflow-wrap: anywhere !important;
    }

    body .products-page:not(.customers-page) .product-description {
        display: block !important;
        margin-top: 2px !important;
        font-size: 9px !important;
        line-height: 1.15 !important;
        color: #64748b !important;
    }

    body .products-page:not(.customers-page) .products-table tbody td.product-select-col + td[data-product-column="photo"] + td {
        grid-column: 2 !important;
        grid-row: 2 !important;
        color: #64748b !important;
        font-size: 10px !important;
        line-height: 1.1 !important;
    }

    body .products-page:not(.customers-page) .products-table tbody td[data-product-column="stock"] {
        grid-column: 2 !important;
        grid-row: 3 !important;
        align-self: end !important;
        color: #15803d !important;
        font-size: 11px !important;
        font-weight: 800 !important;
    }

    body .products-page:not(.customers-page) .products-table tbody td[data-product-column="stock"]::before {
        content: "Estoque: " !important;
        color: #64748b !important;
        font-weight: 600 !important;
    }

    body .products-page:not(.customers-page) .products-table tbody td[data-product-column="price"] {
        grid-column: 3 !important;
        grid-row: 3 !important;
        align-self: end !important;
        color: #0f172a !important;
        font-size: 13px !important;
        font-weight: 900 !important;
        white-space: nowrap !important;
    }

    body .products-page:not(.customers-page) .products-table tbody td.actions-cell {
        position: absolute !important;
        top: 7px !important;
        right: 7px !important;
        z-index: 4 !important;
    }

    body .products-page:not(.customers-page) .actions-cell .counter-more-actions {
        position: relative !important;
        display: block !important;
    }

    body .products-page:not(.customers-page) .actions-cell .counter-more-actions > summary {
        min-width: 44px !important;
        min-height: 30px !important;
        padding: 5px 7px !important;
        border: 1px solid #bfdbfe !important;
        border-radius: 9px !important;
        background: #eff6ff !important;
        color: #1d4ed8 !important;
        font-size: 0 !important;
        cursor: pointer !important;
    }

    body .products-page:not(.customers-page) .actions-cell .counter-more-actions > summary > span:first-child {
        font-size: 18px !important;
        line-height: 1 !important;
    }

    body .products-page:not(.customers-page) .actions-cell .counter-more-chevron {
        font-size: 11px !important;
    }

    body .products-page:not(.customers-page) .actions-cell .product-more-menu {
        right: 0 !important;
        left: auto !important;
        min-width: 210px !important;
        max-width: calc(100vw - 38px) !important;
        z-index: 30 !important;
    }
}

/* Ordem final do piloto: impede que regras mobile legadas recomprimam as mesas. */
@media (max-width: 760px) {
  html body .page-head[data-tables-screen],
  html body .tables-completed-page-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: start !important;
    overflow: hidden !important;
  }

  html body .page-head[data-tables-screen] .tables-head-actions,
  html body .tables-completed-page-head .tables-completed-head-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 8px !important;
  }

  html body .page-head[data-tables-screen] .tables-live-summary,
  html body .tables-completed-page-head .tables-live-summary {
    grid-column: 1 / -1 !important;
  }

  html body .tables-completed-wrap,
  html body .tables-completed-table,
  html body .tables-completed-table tbody {
    width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

  html body .tables-completed-table,
  html body .tables-completed-table tbody {
    display: block !important;
  }

  html body .tables-completed-table thead {
    display: none !important;
  }

  html body .tables-completed-table tbody {
    display: grid !important;
    gap: 10px !important;
  }

  html body .tables-completed-table tbody tr {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body .counter-panel .tables-completed-table tbody td {
    display: grid !important;
    width: auto !important;
    min-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    white-space: normal !important;
  }

  html body .tables-completed-table tbody td:nth-child(3),
  html body .tables-completed-table tbody td:nth-child(6),
  html body .tables-completed-table tbody td:nth-child(8) {
    grid-column: 1 / -1 !important;
  }
}

/* Piloto GE Informatica: painel gerencial compacto e consistente no celular. */
@media (max-width: 760px) {
    body .mobile-admin-dashboard {
        padding: 8px 10px calc(68px + env(safe-area-inset-bottom)) !important;
    }

    body .mobile-admin-dashboard .mobile-admin-top {
        min-height: 0 !important;
        margin: 2px 0 8px !important;
        padding: 9px 10px !important;
        grid-template-columns: 34px minmax(0, 1fr) 34px !important;
        border-radius: 14px !important;
    }

    body .mobile-admin-dashboard .mobile-admin-home,
    body .mobile-admin-dashboard .mobile-admin-refresh {
        width: 32px !important;
        height: 32px !important;
        border-radius: 10px !important;
        font-size: 17px !important;
    }

    body .mobile-admin-dashboard .mobile-admin-top span {
        margin-bottom: 1px !important;
        font-size: 9px !important;
    }

    body .mobile-admin-dashboard .mobile-admin-top h1 {
        font-size: 20px !important;
        line-height: 1 !important;
    }

    body .mobile-admin-dashboard .mobile-admin-top p {
        margin-top: 2px !important;
        font-size: 10px !important;
    }

    body .mobile-admin-dashboard .mobile-admin-filter {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 6px !important;
        margin-bottom: 7px !important;
        padding: 8px !important;
        border-radius: 13px !important;
    }

    body .mobile-admin-dashboard .mobile-admin-filter label {
        gap: 2px !important;
        font-size: 10px !important;
    }

    body .mobile-admin-dashboard .mobile-admin-filter input,
    body .mobile-admin-dashboard .mobile-admin-filter .btn {
        min-height: 32px !important;
        height: 32px !important;
        font-size: 11px !important;
    }

    body .mobile-admin-dashboard .mobile-admin-filter .btn {
        grid-column: 1 / -1 !important;
    }

    body .mobile-admin-dashboard .mobile-admin-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 6px !important;
        margin: 7px 0 !important;
    }

    body .mobile-admin-dashboard .mobile-admin-card,
    body .mobile-admin-dashboard .mobile-admin-card.wide {
        min-height: 62px !important;
        padding: 8px 9px !important;
        gap: 3px !important;
        border-radius: 13px !important;
        align-content: center !important;
    }

    body .mobile-admin-dashboard .mobile-admin-card.wide {
        grid-column: 1 / -1 !important;
        min-height: 68px !important;
    }

    body .mobile-admin-dashboard .mobile-admin-card span {
        font-size: 10px !important;
        line-height: 1.12 !important;
    }

    body .mobile-admin-dashboard .mobile-admin-card strong {
        font-size: 17px !important;
        line-height: 1.05 !important;
    }

    body .mobile-admin-dashboard .mobile-admin-card small {
        font-size: 8px !important;
        line-height: 1.05 !important;
    }

    body .mobile-admin-dashboard .mobile-admin-card.cyan {
        color: #fff !important;
        background: linear-gradient(135deg, #22d3ee, #0891b2) !important;
        box-shadow: 0 9px 18px rgba(8, 145, 178, .2) !important;
    }

    body .mobile-admin-dashboard .mobile-admin-card.cyan :is(span, strong, small) {
        color: #fff !important;
    }

    body .mobile-admin-dashboard .mobile-admin-panel {
        min-height: 0 !important;
        height: auto !important;
        margin-top: 8px !important;
        padding: 10px !important;
        border-radius: 14px !important;
        align-self: start !important;
    }

    body .mobile-admin-dashboard .mobile-panel-title {
        margin-bottom: 7px !important;
    }

    body .mobile-admin-dashboard .mobile-panel-title h2 {
        font-size: 16px !important;
    }

    body .mobile-admin-dashboard .mobile-panel-title a {
        font-size: 12px !important;
    }

    body .mobile-admin-dashboard .mobile-mini-chart {
        min-height: 128px !important;
        padding-top: 4px !important;
    }

    body .mobile-admin-dashboard .mobile-ranking {
        gap: 6px !important;
    }

    body .mobile-admin-dashboard .mobile-ranking li {
        min-height: 0 !important;
        padding: 7px !important;
        border-radius: 11px !important;
    }

    body .mobile-admin-dashboard .mobile-ranking li > span {
        width: 28px !important;
        height: 28px !important;
    }

    body .mobile-admin-dashboard .mobile-ranking strong {
        font-size: 12px !important;
        line-height: 1.18 !important;
    }

    /* Dashboard completo aberto por "Ver tudo". */
    body .dashboard-modern {
        display: grid !important;
        gap: 8px !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    body .dashboard-modern .dashboard-hero {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
        min-height: 0 !important;
        padding: 10px !important;
    }

    body .dashboard-modern .dashboard-greeting h1 {
        margin: 2px 0 !important;
        font-size: 24px !important;
        line-height: 1.05 !important;
    }

    body .dashboard-modern .dashboard-greeting p {
        margin: 0 !important;
        font-size: 11px !important;
    }

    body .dashboard-modern .dashboard-hero-actions {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 34px !important;
        gap: 6px !important;
        width: 100% !important;
    }

    body .dashboard-modern .dashboard-config-button {
        grid-column: 2 !important;
        grid-row: 1 !important;
        width: 34px !important;
        height: 34px !important;
        min-height: 34px !important;
        padding: 0 !important;
    }

    body .dashboard-modern .dashboard-period-card {
        grid-column: 1 / -1 !important;
        grid-row: 2 !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        min-width: 0 !important;
        width: 100% !important;
        gap: 6px !important;
        padding: 8px !important;
    }

    body .dashboard-modern .dashboard-period-title,
    body .dashboard-modern .dashboard-filter-btn {
        grid-column: 1 / -1 !important;
    }

    body .dashboard-modern .dashboard-period-title {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
    }

    body .dashboard-modern .dashboard-period-card input,
    body .dashboard-modern .dashboard-filter-btn {
        min-height: 34px !important;
        height: 34px !important;
        font-size: 11px !important;
    }

    body .dashboard-modern .dashboard-metric-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 6px !important;
    }

    body .dashboard-modern .dashboard-metric-card {
        min-width: 0 !important;
        min-height: 66px !important;
        padding: 8px !important;
        gap: 7px !important;
        border-radius: 12px !important;
    }

    body .dashboard-modern .dashboard-metric-card::after {
        display: none !important;
    }

    body .dashboard-modern .dashboard-metric-icon {
        width: 32px !important;
        height: 32px !important;
        flex: 0 0 32px !important;
        font-size: 13px !important;
    }

    body .dashboard-modern .dashboard-metric-copy {
        min-width: 0 !important;
        gap: 1px !important;
    }

    body .dashboard-modern .dashboard-metric-copy > span,
    body .dashboard-modern .dashboard-metric-copy small {
        font-size: 9px !important;
        line-height: 1.1 !important;
    }

    body .dashboard-modern .dashboard-metric-copy strong {
        font-size: 14px !important;
        line-height: 1.1 !important;
        overflow-wrap: anywhere !important;
    }

    body .dashboard-modern .dashboard-main-grid {
        display: flex !important;
        flex-direction: column !important;
        gap: 8px !important;
        width: 100% !important;
    }

    body .dashboard-modern .dashboard-panel {
        flex: 0 0 auto !important;
        align-self: stretch !important;
        min-width: 0 !important;
        min-height: 0 !important;
        height: auto !important;
        padding: 10px !important;
        border-radius: 13px !important;
    }

    body .dashboard-modern .dashboard-panel-head {
        margin-bottom: 7px !important;
    }

    body .dashboard-modern .dashboard-panel-head h2 {
        font-size: 16px !important;
    }

    body .dashboard-modern .dashboard-line-chart {
        height: 150px !important;
    }

    body .dashboard-modern .dashboard-summary-strip {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        margin-top: 6px !important;
    }

    body .dashboard-modern .dashboard-summary-strip span {
        padding: 6px !important;
        border-right: 0 !important;
    }

    body .dashboard-modern .dashboard-ranking-panel,
    body .dashboard-modern .dashboard-product-list {
        min-height: 0 !important;
        height: auto !important;
    }

    body .dashboard-modern .dashboard-product-list {
        gap: 0 !important;
    }

    body .dashboard-modern .dashboard-product-list li {
        grid-template-columns: 26px minmax(0, 1fr) auto !important;
        min-height: 0 !important;
        gap: 7px !important;
        padding: 7px 0 !important;
    }

    body .dashboard-modern .dashboard-product-copy strong {
        display: block !important;
        max-width: 100% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body .ranking-dialog {
        width: calc(100vw - 12px) !important;
        max-height: calc(100dvh - 12px) !important;
        border-radius: 15px !important;
    }

    body .ranking-dialog .ranking-header,
    body .ranking-dialog .ranking-body,
    body .ranking-dialog .ranking-footer {
        padding: 11px !important;
    }

    body .ranking-dialog .ranking-filters {
        gap: 6px !important;
    }

    body .ranking-dialog .ranking-results {
        overflow: auto !important;
    }

    body .ranking-dialog .ranking-table {
        min-width: 520px !important;
    }
}

/* GE Informatica: mesas abertas e finalizadas organizadas no celular. */
@media (max-width: 760px) {
  body .page-head[data-tables-screen],
  body .tables-completed-page-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  body .page-head[data-tables-screen] > div:first-child,
  body .tables-completed-page-head > div:first-child {
    min-width: 0 !important;
    width: 100% !important;
  }

  body .page-head[data-tables-screen] .tables-head-actions,
  body .tables-completed-page-head .tables-completed-head-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 8px !important;
  }

  body .page-head[data-tables-screen] .tables-head-actions > *,
  body .tables-completed-page-head .tables-completed-head-actions > * {
    min-width: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  body .page-head[data-tables-screen] .operation-action-card,
  body .tables-completed-page-head .operation-action-card {
    min-height: 68px !important;
    padding: 8px !important;
    gap: 7px !important;
  }

  body .page-head[data-tables-screen] .operation-action-icon,
  body .tables-completed-page-head .operation-action-icon {
    width: 38px !important;
    height: 38px !important;
  }

  body .page-head[data-tables-screen] .operation-action-card strong,
  body .tables-completed-page-head .operation-action-card strong {
    font-size: 12px !important;
    line-height: 1.15 !important;
    white-space: normal !important;
  }

  body .page-head[data-tables-screen] .tables-live-summary,
  body .tables-completed-page-head .tables-live-summary {
    grid-column: 1 / -1 !important;
    display: grid !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 8px !important;
    padding: 10px 12px !important;
  }

  body .tables-live-summary-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  body .tables-live-summary-stats small {
    overflow: hidden !important;
    font-size: 9px !important;
    line-height: 1.15 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  body .tables-live-summary-stats strong {
    font-size: 15px !important;
  }

  body .tables-grid {
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  body .table-card {
    min-width: 0 !important;
    min-height: 118px !important;
    padding: 8px 5px !important;
    overflow: hidden !important;
  }

  body .table-card [data-table-payment-state] {
    max-width: 100% !important;
    padding: 4px 5px !important;
    font-size: 10px !important;
    line-height: 1.1 !important;
    text-align: center !important;
    white-space: normal !important;
  }

  body .tables-completed-toolbar .delivery-filter {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
    gap: 8px !important;
  }

  body .tables-completed-toolbar .delivery-filter .btn {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }

  body .counter-panel:has(.tables-completed-table) {
    padding: 10px !important;
    overflow: visible !important;
  }

  body .tables-completed-wrap {
    width: 100% !important;
    overflow: visible !important;
  }

  body .tables-completed-table,
  body .tables-completed-table tbody {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  body .tables-completed-table thead {
    display: none !important;
  }

  body .tables-completed-table tbody {
    display: grid !important;
    gap: 10px !important;
  }

  body .tables-completed-table tbody tr {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px 12px !important;
    width: 100% !important;
    padding: 13px !important;
    overflow: visible !important;
    border: 1px solid #dbe5f0 !important;
    border-radius: 13px !important;
    background: #fff !important;
    box-shadow: 0 7px 18px rgba(15, 23, 42, .06) !important;
  }

  body .counter-panel .tables-completed-table tbody td {
    display: grid !important;
    width: auto !important;
    min-width: 0 !important;
    gap: 3px !important;
    padding: 0 !important;
    overflow-wrap: anywhere !important;
    border: 0 !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
  }

  body .tables-completed-table tbody td::before {
    color: #718096 !important;
    font-size: 9px !important;
    font-weight: 900 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
  }

  body .tables-completed-table tbody td:nth-child(1)::before { content: "Mesa"; }
  body .tables-completed-table tbody td:nth-child(2)::before { content: "Venda"; }
  body .tables-completed-table tbody td:nth-child(3)::before { content: "Cliente"; }
  body .tables-completed-table tbody td:nth-child(4)::before { content: "Abertura"; }
  body .tables-completed-table tbody td:nth-child(5)::before { content: "Fechamento"; }
  body .tables-completed-table tbody td:nth-child(6)::before { content: "Pagamento"; }
  body .tables-completed-table tbody td:nth-child(7)::before { content: "Total"; }
  body .tables-completed-table tbody td:nth-child(8)::before { content: "Acoes"; }

  body .tables-completed-table tbody td:nth-child(3),
  body .tables-completed-table tbody td:nth-child(6),
  body .tables-completed-table tbody td:nth-child(8) {
    grid-column: 1 / -1 !important;
  }

  body .tables-completed-actions .actions-cell {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    width: 100% !important;
  }

  body .tables-completed-actions > .actions-cell > .counter-icon-action.view {
    width: 44px !important;
    min-height: 40px !important;
  }

  body .tables-completed-actions .counter-more-actions {
    min-width: 0 !important;
  }
}

/* Mobile workspace v2: dense, touch-safe and free of desktop overflow. */
.tables-completed-actions .actions-cell,
.delivery-page .actions-cell,
.delivery-table .actions-cell {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:4px;
  flex-wrap:nowrap;
  white-space:nowrap;
}
.tables-completed-actions .btn,
.delivery-page .actions-cell .btn,
.delivery-table .actions-cell .btn {
  min-height:32px;
  padding:5px 8px;
  font-size:11px;
  line-height:1;
}
.tables-completed-actions .counter-more-actions,
.delivery-page .actions-cell .counter-more-actions {
  flex:0 0 auto;
}

@media (max-width:760px) {
  html,
  body {
    width:100%;
    max-width:100%;
    overflow-x:hidden;
  }

  .app-main,
  .main-content,
  .page-content,
  .mobile-shell,
  .mobile-workspace {
    min-width:0;
    max-width:100%;
  }

  /* Mobile home: more destinations without oversized tiles. */
  .mobile-admin-dashboard {
    padding:10px 10px calc(70px + env(safe-area-inset-bottom));
  }
  .mobile-admin-dashboard .mobile-admin-top,
  .mobile-admin-dashboard .mobile-admin-filter,
  .mobile-admin-dashboard .mobile-admin-card,
  .mobile-admin-dashboard .mobile-admin-panel {
    padding:10px;
    border-radius:14px;
  }
  .mobile-admin-dashboard .mobile-admin-top {
    grid-template-columns:36px minmax(0,1fr) 36px;
    gap:8px;
    margin:4px 0 10px;
  }
  .mobile-admin-dashboard .mobile-admin-top h1 {
    font-size:22px;
    line-height:1.05;
  }
  .mobile-admin-dashboard .mobile-admin-top p,
  .mobile-admin-dashboard .mobile-admin-card span {
    font-size:11px;
  }
  .mobile-admin-dashboard .mobile-admin-filter {
    gap:7px;
    margin-bottom:8px;
  }
  .mobile-admin-dashboard .mobile-admin-filter input,
  .mobile-admin-dashboard .mobile-admin-filter .btn {
    min-height:36px;
  }
  .mobile-admin-dashboard .mobile-admin-cards {
    gap:7px;
    margin:8px 0;
  }
  .mobile-admin-dashboard .mobile-admin-card {
    min-height:78px;
    padding:10px;
  }
  .mobile-admin-dashboard .mobile-admin-card strong {
    font-size:19px;
  }
  .mobile-admin-dashboard .mobile-admin-card small {
    font-size:9px;
  }
  .mobile-admin-dashboard .mobile-quick-grid {
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:7px;
  }
  .mobile-admin-dashboard .mobile-quick-link {
    min-width:0;
    min-height:76px;
    padding:7px 4px;
    border-radius:13px;
    gap:4px;
  }
  .mobile-admin-dashboard .mobile-quick-link > span {
    width:30px;
    height:30px;
    border-radius:10px;
  }
  .mobile-admin-dashboard .mobile-quick-link > span svg {
    width:17px;
    height:17px;
  }
  .mobile-admin-dashboard .mobile-quick-link strong {
    font-size:11px;
    line-height:1.12;
    overflow-wrap:anywhere;
  }
  .mobile-admin-dashboard .mobile-quick-link small {
    font-size:9px;
    line-height:1.1;
  }

  /* Tables and completed deliveries: actions remain visible at 100% zoom. */
  .tables-completed-page-head,
  .delivery-compact-page-head {
    padding:12px!important;
  }
  .tables-completed-tabs,
  .delivery-tabs {
    gap:4px;
  }
  .tables-completed-tabs .btn,
  .delivery-tabs .btn {
    min-height:36px;
    padding:7px 9px;
    font-size:11px;
  }
  .tables-completed-actions,
  .delivery-page .actions-cell,
  .delivery-table .actions-cell {
    min-width:0;
    gap:3px;
  }
  .tables-completed-actions .btn,
  .delivery-page .actions-cell .btn,
  .delivery-table .actions-cell .btn {
    min-width:30px;
    min-height:30px;
    padding:4px 6px;
    font-size:10px;
  }

  /* Product and customer lists: compact filters and useful cards. */
  .products-page .page-hero,
  .customers-page .page-hero,
  .products-page .products-hero,
  .customers-page .customers-hero {
    padding:13px!important;
    gap:9px!important;
  }
  .products-page .page-hero h1,
  .customers-page .page-hero h1,
  .products-page .products-hero h1,
  .customers-page .customers-hero h1 {
    font-size:25px!important;
  }
  .products-page .hero-actions,
  .products-page .page-actions {
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:6px!important;
  }
  .products-page .hero-actions .btn,
  .products-page .page-actions .btn {
    min-width:0!important;
    min-height:38px!important;
    padding:6px!important;
    font-size:10px!important;
  }
  .products-page .products-panel,
  .customers-page .customers-panel,
  .products-page .panel,
  .customers-page .panel {
    padding:12px!important;
  }
  .products-page .products-list-head,
  .customers-page .customers-list-head {
    margin-bottom:8px!important;
  }
  .products-page .products-search,
  .customers-page .customers-search,
  .products-page .filter-panel,
  .customers-page .filter-panel {
    padding:9px!important;
    gap:7px!important;
  }
  .products-page .product-card,
  .products-page .product-mobile-card {
    min-height:0!important;
    padding:10px!important;
    gap:6px!important;
  }
  .products-page .product-name {
    display:block!important;
    font-size:13px!important;
    line-height:1.15!important;
    color:#132238!important;
  }
  .products-page .product-description {
    display:-webkit-box!important;
    margin-top:3px!important;
    color:#66758a!important;
    font-size:10px!important;
    line-height:1.22!important;
    overflow:hidden!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
  }

  /* Receivables: filters and settlement fields no longer dominate the page. */
  .receivables-page .receivables-head {
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    padding:12px!important;
    gap:8px!important;
  }
  .receivables-page .receivables-head h1 {
    font-size:24px!important;
  }
  .receivables-page .receivable-new-button {
    width:auto!important;
    min-height:38px!important;
    padding:7px 10px!important;
    font-size:11px!important;
    align-self:start;
  }
  .receivables-page .receivables-filters {
    grid-template-columns:minmax(0,1fr) minmax(100px,.42fr)!important;
    padding:9px!important;
    gap:7px!important;
  }
  .receivables-page .receivables-filters .field-search,
  .receivables-page .receivables-filters .filter-search {
    grid-column:1/-1!important;
  }
  .receivables-page .receivables-filters .btn,
  .receivables-page .receivables-filters input,
  .receivables-page .receivables-filters select {
    min-height:38px!important;
    font-size:11px!important;
  }
  .receivables-page .receivable-tabs {
    display:flex!important;
    gap:4px!important;
    overflow-x:auto!important;
    scrollbar-width:none;
  }
  .receivables-page .receivable-tabs .btn,
  .receivables-page .receivable-tabs a {
    flex:0 0 auto;
    min-height:34px!important;
    padding:6px 9px!important;
    font-size:10px!important;
  }
  .receivables-page .receivable-metrics,
  .receivables-page .metrics-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }
  .receivables-page .metric-card {
    min-height:72px!important;
    padding:9px!important;
  }
  .receivables-page .metric-card strong {
    font-size:18px!important;
  }
  .receivables-page .receivable-bulk-form,
  .receivables-page .bulk-receive-panel {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    padding:10px!important;
    gap:7px!important;
  }
  .receivables-page .receivable-bulk-form .bulk-summary,
  .receivables-page .bulk-receive-panel .bulk-summary,
  .receivables-page .receivable-bulk-form .btn,
  .receivables-page .bulk-receive-panel .btn {
    grid-column:1/-1!important;
  }
  .receivables-page .receivable-bulk-form input,
  .receivables-page .receivable-bulk-form select,
  .receivables-page .bulk-receive-panel input,
  .receivables-page .bulk-receive-panel select {
    min-height:38px!important;
    font-size:11px!important;
  }
  .receivables-page .receivable-record,
  .receivables-page .receivable-mobile-card {
    padding:10px!important;
    gap:5px!important;
  }

  /* Counter / PDV: override late desktop rules with a true phone layout. */
  html body.counter-pdv-body,
  html body.counter-pdv-body .counter-pdv-layout,
  html body.counter-pdv-body .counter-pdv-shell {
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
  }
  html body.counter-pdv-body .counter-pdv-layout {
    padding-bottom:calc(106px + env(safe-area-inset-bottom))!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .order-left {
    min-width:0!important;
    min-height:390px!important;
    max-height:none!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .pdv-header {
    padding:10px 12px!important;
    gap:7px!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .pdv-header h1 {
    font-size:23px!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .quick-actions {
    display:flex!important;
    gap:5px!important;
    overflow-x:auto!important;
    padding:7px!important;
    scrollbar-width:none;
  }
  html body.counter-pdv-body .counter-pdv-layout .quick-actions .quick-btn {
    flex:0 0 auto!important;
    width:auto!important;
    min-width:112px!important;
    min-height:48px!important;
    padding:6px 8px!important;
    gap:6px!important;
    font-size:11px!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .quick-actions .quick-btn .icon-box {
    width:30px!important;
    height:30px!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .search-add {
    display:grid!important;
    grid-template-columns:92px minmax(0,1fr)!important;
    gap:6px!important;
    padding:7px!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .pdv-search-field {
    grid-column:1/-1!important;
    min-width:0!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .pdv-search-field > svg,
  html body.counter-pdv-body .counter-pdv-layout .pdv-search-field .search-icon {
    left:12px!important;
    width:20px!important;
    height:20px!important;
    pointer-events:none!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .pdv-search-field > input,
  html body.counter-pdv-body .counter-pdv-layout .pdv-search-field input {
    width:100%!important;
    min-width:0!important;
    height:42px!important;
    min-height:42px!important;
    padding:7px 34px 7px 42px!important;
    font-size:13px!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .qty-box {
    width:92px!important;
    min-width:0!important;
    height:42px!important;
    grid-template-columns:27px 38px 27px!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .qty-box button,
  html body.counter-pdv-body .counter-pdv-layout .qty-box input {
    min-width:0!important;
    height:40px!important;
    font-size:13px!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .add-item-btn {
    width:100%!important;
    min-width:0!important;
    min-height:42px!important;
    height:42px!important;
    padding:5px 10px!important;
    font-size:14px!important;
    gap:6px!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .add-item-btn svg {
    width:18px!important;
    height:18px!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .items-table-wrapper {
    min-height:180px!important;
    max-height:44vh!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .items-table tbody tr,
  html body.counter-pdv-body .counter-pdv-layout .pdv-mobile-item {
    min-height:74px!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .items-table td,
  html body.counter-pdv-body .counter-pdv-layout .pdv-mobile-item {
    padding:7px 6px!important;
    font-size:11px!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .items-table .product-name {
    font-size:12px!important;
    line-height:1.15!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .product-results,
  html body.counter-pdv-body .counter-pdv-layout .search-results {
    max-height:42vh!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .product-result,
  html body.counter-pdv-body .counter-pdv-layout .search-result-item {
    min-height:54px!important;
    padding:7px!important;
    font-size:11px!important;
  }
  html body.counter-pdv-body .counter-mobile-checkout {
    min-height:58px!important;
    padding:6px 8px calc(6px + env(safe-area-inset-bottom))!important;
    gap:7px!important;
  }
  html body.counter-pdv-body .counter-mobile-checkout .btn,
  html body.counter-pdv-body .counter-mobile-checkout button,
  html body.counter-pdv-body .counter-mobile-checkout a {
    min-height:42px!important;
    padding:7px 10px!important;
    font-size:13px!important;
  }
  html body.counter-pdv-body .counter-mobile-checkout .checkout-total {
    font-size:16px!important;
  }
  html body.counter-pdv-body .counter-cash-toolbar {
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:6px!important;
    padding:5px 8px calc(5px + env(safe-area-inset-bottom))!important;
  }
  html body.counter-pdv-body .counter-cash-toolbar .btn,
  html body.counter-pdv-body .counter-cash-toolbar button {
    min-width:0!important;
    min-height:36px!important;
    padding:5px!important;
    font-size:10px!important;
  }

  /* Payment: keep labels and monetary field readable on narrow phones. */
  .cashier-page,
  .cashier-shell,
  .cashier-payment-card {
    min-width:0!important;
    max-width:100%!important;
  }
  .cashier-page .cashier-payment-row,
  .cashier-shell .cashier-payment-row {
    grid-template-columns:minmax(0,1fr) minmax(90px,.58fr) 32px!important;
    gap:5px!important;
  }
  .cashier-page .cashier-payment-row select,
  .cashier-page .cashier-payment-row input,
  .cashier-shell .cashier-payment-row select,
  .cashier-shell .cashier-payment-row input {
    width:100%!important;
    min-width:0!important;
    min-height:40px!important;
    padding:6px 7px!important;
    font-size:11px!important;
    text-overflow:ellipsis!important;
  }
  .cashier-page .cashier-payment-row .input-prefix,
  .cashier-shell .cashier-payment-row .input-prefix {
    width:26px!important;
    min-width:26px!important;
    font-size:10px!important;
  }
  .cashier-page .cashier-payment-row .btn,
  .cashier-shell .cashier-payment-row .btn {
    width:32px!important;
    min-width:32px!important;
    min-height:40px!important;
    padding:0!important;
  }
  .cashier-page .cashier-card,
  .cashier-shell .cashier-card {
    padding:11px!important;
  }
}

@media (max-width:390px) {
  .mobile-admin-dashboard .mobile-quick-grid {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .mobile-admin-dashboard .mobile-quick-link {
    min-height:70px;
    padding-inline:3px;
  }
  .mobile-admin-dashboard .mobile-quick-link small {
    display:none;
  }
  .receivables-page .receivables-head {
    grid-template-columns:1fr!important;
  }
  .receivables-page .receivable-new-button {
    justify-self:start;
  }
  html body.counter-pdv-body .counter-pdv-layout .search-add {
    grid-template-columns:84px minmax(0,1fr)!important;
  }
  html body.counter-pdv-body .counter-pdv-layout .qty-box {
    width:84px!important;
    grid-template-columns:24px 36px 24px!important;
  }
}
/* 2026-10-29 - ajuste operacional mobile (piloto GE Informatica)
 * Prioriza conteudo e acoes essenciais em telas estreitas, sem alterar regras.
 */
@media (max-width: 760px) {
    html,
    body {
        max-width: 100%;
        overflow-x: hidden !important;
    }

    body .page-head,
    body .products-hero,
    body .service-order-head,
    body .tables-completed-page-head,
    body .nfse-hero,
    body .nfe-page-head {
        min-height: 0 !important;
        height: auto !important;
        padding: 12px !important;
        gap: 10px !important;
    }

    body .page-head h1,
    body .products-hero h1,
    body .service-order-head h1,
    body .tables-completed-page-head h1,
    body .nfse-hero h1,
    body .nfe-page-head h1 {
        width: auto !important;
        max-width: 100% !important;
        margin: 0 !important;
        font-size: 24px !important;
        line-height: 1.08 !important;
        word-break: normal !important;
        overflow-wrap: anywhere !important;
    }

    body .page-head p,
    body .products-hero p,
    body .service-order-head p,
    body .tables-completed-page-head p,
    body .nfse-hero p,
    body .nfe-page-head p {
        margin: 4px 0 0 !important;
        font-size: 13px !important;
        line-height: 1.3 !important;
    }

    /* Clientes: elimina a area vazia criada pelo cabecalho flexivel. */
    body .customers-page .customers-list-panel,
    body .customers-page .products-list-head,
    body .customers-page .customers-list-tools,
    body .customers-page .customers-search {
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        position: static !important;
        inset: auto !important;
        transform: none !important;
    }

    body .customers-page .customers-list-panel {
        padding: 10px !important;
    }

    body .customers-page .products-list-head {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 8px !important;
        margin: 0 0 8px !important;
    }

    body .customers-page .customers-list-tools,
    body .customers-page .customers-search {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        gap: 6px !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body .customers-page .customers-search input {
        grid-column: 1 / -1 !important;
        min-width: 0 !important;
    }

    body .customers-page .customers-search .status-filters,
    body .customers-page .customers-search fieldset {
        grid-column: 1 / -1 !important;
        margin: 0 !important;
    }

    /* Produtos: listagem simples, sempre mostrando nome, codigo, estoque e preco. */
    body .products-page:not(.customers-page) .products-table,
    body .products-page:not(.customers-page) .products-table tbody {
        display: block !important;
        width: 100% !important;
    }

    body .products-page:not(.customers-page) .products-table thead {
        display: none !important;
    }

    body .products-page:not(.customers-page) .products-table tr {
        display: grid !important;
        grid-template-columns: 34px minmax(0, 1fr) auto !important;
        grid-auto-rows: auto !important;
        gap: 3px 8px !important;
        min-height: 0 !important;
        margin: 0 0 8px !important;
        padding: 9px !important;
        border: 1px solid #dbe3ec !important;
        border-radius: 12px !important;
        background: #fff !important;
    }

    body .products-page:not(.customers-page) .products-table td {
        display: none !important;
        width: auto !important;
        min-width: 0 !important;
        padding: 0 !important;
        border: 0 !important;
    }

    body .products-page:not(.customers-page) .products-table td:nth-child(1),
    body .products-page:not(.customers-page) .products-table td:nth-child(2),
    body .products-page:not(.customers-page) .products-table td:nth-child(3),
    body .products-page:not(.customers-page) .products-table td:nth-child(4),
    body .products-page:not(.customers-page) .products-table td:nth-child(12),
    body .products-page:not(.customers-page) .products-table td:nth-child(16),
    body .products-page:not(.customers-page) .products-table td:nth-child(17) {
        display: block !important;
    }

    body .products-page:not(.customers-page) .products-table td:nth-child(1) {
        grid-column: 1;
        grid-row: 1 / span 3;
    }

    body .products-page:not(.customers-page) .products-table td:nth-child(2) {
        grid-column: 1;
        grid-row: 2 / span 2;
    }

    body .products-page:not(.customers-page) .products-table td:nth-child(4) {
        grid-column: 2;
        grid-row: 1;
    }

    body .products-page:not(.customers-page) .products-table td:nth-child(3) {
        grid-column: 2;
        grid-row: 2;
        font-size: 11px !important;
        color: #64748b !important;
    }

    body .products-page:not(.customers-page) .products-table td:nth-child(12) {
        grid-column: 2;
        grid-row: 3;
        font-size: 13px !important;
        font-weight: 700 !important;
        color: #15803d !important;
    }

    body .products-page:not(.customers-page) .products-table td:nth-child(16) {
        grid-column: 3;
        grid-row: 3;
        font-size: 13px !important;
        font-weight: 700 !important;
    }

    body .products-page:not(.customers-page) .products-table td:nth-child(17) {
        grid-column: 3;
        grid-row: 1 / span 2;
        align-self: start;
    }

    body .products-page:not(.customers-page) .product-name,
    body .products-page:not(.customers-page) .product-description {
        display: block !important;
        max-width: 100% !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
    }

    body .products-page:not(.customers-page) .product-name {
        font-size: 13px !important;
        line-height: 1.2 !important;
    }

    body .products-page:not(.customers-page) .product-description {
        margin-top: 2px !important;
        font-size: 11px !important;
        line-height: 1.2 !important;
        color: #64748b !important;
    }

    /* Contas a pagar: filtro compacto e sem texto duplicado. */
    body .payables-page .payables-head {
        display: block !important;
        min-height: 0 !important;
        padding: 10px !important;
    }

    body .payables-page .payables-title {
        margin-bottom: 8px !important;
    }

    body .payables-page .payables-filter,
    body .payables-page .finance-compact-filters {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        min-width: 0 !important;
        gap: 6px !important;
        padding: 8px !important;
        position: static !important;
        transform: none !important;
    }

    body .payables-page .payables-filter > *,
    body .payables-page .finance-compact-filters > * {
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 !important;
    }

    body .payables-page .payables-filter > label:first-child,
    body .payables-page .finance-compact-filters > label:first-child,
    body .payables-page [data-open-payable-modal] {
        grid-column: 1 / -1 !important;
    }

    body .payables-page [data-open-payable-modal] {
        min-height: 38px !important;
        font-size: 12px !important;
        line-height: 1.1 !important;
    }

    body .payables-page [data-open-payable-modal]::after {
        content: none !important;
        display: none !important;
    }

    body .payables-page .payables-metrics,
    body .payables-page .employee-summary-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    body .payables-page .metric-card,
    body .payables-page .employee-summary-card {
        min-height: 0 !important;
        padding: 10px !important;
    }

    /* Cabecalhos fiscais e de OS sem sobreposicao. */
    body .nfe-page-head,
    body .nfse-page .nfse-hero,
    body .service-order-head,
    body .tables-completed-page-head {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        align-items: start !important;
    }

    body .nfe-page-head-actions,
    body .nfse-page .nfse-hero-actions,
    body .service-order-head-tools,
    body .tables-completed-head-actions {
        display: flex !important;
        flex-wrap: wrap !important;
        width: 100% !important;
        min-width: 0 !important;
        gap: 6px !important;
        position: static !important;
        transform: none !important;
    }

    body .nfe-page-head-actions > *,
    body .nfse-page .nfse-hero-actions > *,
    body .service-order-head-tools > *,
    body .tables-completed-head-actions > * {
        flex: 1 1 120px !important;
        min-width: 0 !important;
        min-height: 38px !important;
        padding: 7px 9px !important;
        font-size: 11px !important;
    }

    body .nfse-page .nfse-hero h1 {
        font-size: 24px !important;
        white-space: nowrap !important;
        overflow: visible !important;
    }

    body .nfse-page .nfse-hero p {
        max-width: 100% !important;
    }

    body .nfe-list,
    body .nfse-documents-list,
    body .tables-completed-wrap {
        min-width: 0 !important;
        width: 100% !important;
    }

    body .nfe-list .nfe-row,
    body .nfe-table tbody tr,
    body .nfse-documents-list article,
    body .nfse-documents-list .document-row {
        min-height: 0 !important;
        padding: 9px !important;
        gap: 6px !important;
    }

    body .os-dashboard-shell .service-order-head-copy,
    body .tables-completed-page-head > * {
        min-width: 0 !important;
        max-width: 100% !important;
    }

    body .tables-completed-tabs,
    body .tables-completed-toolbar,
    body .tables-completed-actions {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 6px !important;
        min-width: 0 !important;
    }

    /* Receber/pagar: evita que filtros e botoes ultrapassem o viewport. */
    body .receivables-head,
    body .receivables-filters,
    body .receivables-bulk,
    body .payables-head,
    body .payables-filter {
        max-width: 100% !important;
        overflow: hidden !important;
    }

    body .receivables-filters {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 6px !important;
    }

    body .receivables-filters > * {
        min-width: 0 !important;
        max-width: 100% !important;
    }

    body .receivables-filters > :first-child {
        grid-column: 1 / -1 !important;
    }

    /* Pagamento do balcao: preserva o nome completo da forma. */
    body .cashier-payment-row {
        display: grid !important;
        grid-template-columns: minmax(0, 1.65fr) minmax(82px, .75fr) 30px !important;
        gap: 4px !important;
        width: 100% !important;
    }

    body .cashier-payment-row > * {
        min-width: 0 !important;
        width: 100% !important;
    }

    body .cashier-payment-row .select-wrap .pdv-icon,
    body .cashier-payment-row .select-wrap > .pdv-icon {
        display: none !important;
    }

    body .cashier-payment-row select {
        min-width: 0 !important;
        width: 100% !important;
        padding: 7px 26px 7px 8px !important;
        font-size: 12px !important;
    }

    body .cashier-payment-row input {
        min-width: 0 !important;
        padding: 7px 5px !important;
        font-size: 12px !important;
    }
}

/* Ordem definitiva do piloto de mesas: mantida no fim da folha. */
@media (max-width: 760px) {
    html body .page-head[data-tables-screen],
    html body .tables-completed-page-head {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        align-items: start !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    html body .page-head[data-tables-screen] .tables-head-actions,
    html body .tables-completed-page-head .tables-completed-head-actions {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        min-width: 0 !important;
        gap: 8px !important;
    }

    html body .page-head[data-tables-screen] .tables-live-summary,
    html body .tables-completed-page-head .tables-live-summary {
        grid-column: 1 / -1 !important;
    }

    html body .tables-completed-wrap,
    html body .tables-completed-table,
    html body .tables-completed-table tbody {
        width: 100% !important;
        min-width: 0 !important;
        overflow: visible !important;
    }

    html body .tables-completed-table,
    html body .tables-completed-table tbody {
        display: block !important;
    }

    html body .tables-completed-table thead {
        display: none !important;
    }

    html body .tables-completed-table tbody {
        display: grid !important;
        gap: 10px !important;
    }

    html body .tables-completed-table tbody tr {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    html body .counter-panel .tables-completed-table tbody td {
        display: grid !important;
        width: auto !important;
        min-width: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        white-space: normal !important;
    }

    html body .tables-completed-table tbody td:nth-child(3),
    html body .tables-completed-table tbody td:nth-child(6),
    html body .tables-completed-table tbody td:nth-child(8) {
        grid-column: 1 / -1 !important;
    }
}

/* Ordem definitiva do piloto de produtos: campos identificados, nao numerados. */
@media (max-width: 760px) {
    html body .products-page:not(.customers-page) .products-table tbody td {
        display: none !important;
        position: static !important;
        grid-column: auto !important;
        grid-row: auto !important;
    }

    html body .products-page:not(.customers-page) .products-table tbody td.product-select-col,
    html body .products-page:not(.customers-page) .products-table tbody td[data-product-column="photo"],
    html body .products-page:not(.customers-page) .products-table tbody td:has(.product-name),
    html body .products-page:not(.customers-page) .products-table tbody td[data-product-column="stock"],
    html body .products-page:not(.customers-page) .products-table tbody td[data-product-column="price"],
    html body .products-page:not(.customers-page) .products-table tbody td.actions-cell,
    html body .products-page:not(.customers-page) .products-table tbody td.product-select-col + td[data-product-column="photo"] + td {
        display: block !important;
    }

    html body .products-page:not(.customers-page) .products-table tbody td.product-select-col {
        position: absolute !important;
        top: 7px !important;
        left: 7px !important;
        z-index: 2 !important;
    }

    html body .products-page:not(.customers-page) .products-table tbody td[data-product-column="photo"] {
        grid-column: 1 !important;
        grid-row: 1 / span 3 !important;
        align-self: center !important;
    }

    html body .products-page:not(.customers-page) .products-table tbody td:has(.product-name) {
        grid-column: 2 / 4 !important;
        grid-row: 1 !important;
        padding-right: 54px !important;
    }

    html body .products-page:not(.customers-page) .products-table tbody td.product-select-col + td[data-product-column="photo"] + td {
        grid-column: 2 !important;
        grid-row: 2 !important;
    }

    html body .products-page:not(.customers-page) .products-table tbody td[data-product-column="stock"] {
        grid-column: 2 !important;
        grid-row: 3 !important;
        align-self: end !important;
    }

    html body .products-page:not(.customers-page) .products-table tbody td[data-product-column="price"] {
        grid-column: 3 !important;
        grid-row: 3 !important;
        align-self: end !important;
    }

    html body .products-page:not(.customers-page) .products-table tbody td.actions-cell {
        position: absolute !important;
        top: 7px !important;
        right: 7px !important;
        z-index: 4 !important;
    }

    /* Neutraliza os campos que regras antigas exibiam pelo numero da coluna. */
    html body .products-page:not(.customers-page) .products-table tbody td:nth-child(4):not(:has(.product-name)),
    html body .products-page:not(.customers-page) .products-table tbody td:nth-child(12):not([data-product-column="stock"]),
    html body .products-page:not(.customers-page) .products-table tbody td:nth-child(16):not([data-product-column="price"]),
    html body .products-page:not(.customers-page) .products-table tbody td:nth-child(17):not(.actions-cell):not([data-product-column="price"]) {
        display: none !important;
    }
}

/* Ordem definitiva do piloto de orcamentos: deve prevalecer sobre ajustes antigos. */
@media (max-width: 760px) {
    html body .page-head.quote-detail-head,
    html body .page-head.quote-page-head {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        padding: 12px !important;
        gap: 10px !important;
        overflow: hidden !important;
    }

    html body .page-head.quote-detail-head > div,
    html body .page-head.quote-page-head > div {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    html body .page-head.quote-detail-head h1,
    html body .page-head.quote-page-head h1 {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        font-size: 24px !important;
        line-height: 1.12 !important;
        word-break: normal !important;
        overflow-wrap: anywhere !important;
        white-space: normal !important;
        writing-mode: horizontal-tb !important;
    }

    html body .page-head.quote-detail-head h1::before {
        display: block !important;
        width: max-content !important;
        max-width: 100% !important;
        white-space: nowrap !important;
        word-break: normal !important;
        writing-mode: horizontal-tb !important;
    }

    html body .quote-head-actions,
    html body .quote-page-actions {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        min-width: 0 !important;
        gap: 7px !important;
    }

    html body .quote-list-panel .quote-list-table {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }
}

/* 2026-10-30 - lista de Ordens de Servico no celular (piloto GE Informatica). */
@media (max-width: 760px) {
    html body .page-head.service-order-head.service-order-head-compact {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        padding: 12px !important;
        gap: 12px !important;
        overflow: visible !important;
    }

    html body .service-order-head .os-list-head-row,
    html body .service-order-head .service-order-head-copy,
    html body .service-order-head .service-order-head-tools,
    html body .service-order-head .os-list-dashboard-row,
    html body .service-order-head .os-dashboard-shell {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        position: static !important;
        transform: none !important;
    }

    html body .service-order-head .service-order-head-copy h1 {
        margin: 0 !important;
        font-size: 28px !important;
        line-height: 1.08 !important;
    }

    html body .service-order-head .service-order-head-copy p {
        margin: 5px 0 0 !important;
        font-size: 13px !important;
        line-height: 1.35 !important;
    }

    html body .service-order-head .os-list-head-actions {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        min-width: 0 !important;
        gap: 7px !important;
        margin-top: 10px !important;
    }

    html body .service-order-head .os-list-head-actions .operation-action-card {
        display: grid !important;
        grid-template-columns: 38px minmax(0, 1fr) !important;
        align-items: center !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 58px !important;
        padding: 8px !important;
        gap: 7px !important;
        overflow: hidden !important;
    }

    html body .service-order-head .os-list-head-actions .operation-action-icon {
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
    }

    html body .service-order-head .os-list-head-actions .operation-action-card span:last-child {
        min-width: 0 !important;
        overflow: hidden !important;
    }

    html body .service-order-head .os-list-head-actions .operation-action-card small,
    html body .service-order-head .os-list-head-actions .operation-action-card strong {
        display: block !important;
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    html body .service-order-head .os-dashboard-toggle {
        justify-self: end !important;
        min-height: 30px !important;
        margin: 0 0 4px !important;
        padding: 4px 6px !important;
    }

    html body .service-order-head .os-dashboard-cards {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        min-width: 0 !important;
        gap: 8px !important;
    }

    html body .service-order-head .os-dashboard-shell.is-collapsed .os-dashboard-cards {
        display: none !important;
    }

    html body .service-order-head .os-dashboard-card {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 88px !important;
        padding: 10px !important;
        gap: 5px 7px !important;
        overflow: hidden !important;
    }

    html body .service-order-head .os-dashboard-card span {
        grid-column: 1 / -1 !important;
        min-width: 0 !important;
        font-size: 10px !important;
        line-height: 1.2 !important;
        overflow-wrap: anywhere !important;
    }

    html body .service-order-head .os-dashboard-card strong {
        font-size: 25px !important;
    }

    html body .service-order-head .os-dashboard-card small {
        align-self: end !important;
        min-width: 0 !important;
        font-size: 10px !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    html body .service-order-list-panel {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        margin-top: 12px !important;
        padding: 10px !important;
        overflow: hidden !important;
        position: relative !important;
        z-index: 1 !important;
    }

    html body .service-order-list-panel .os-list-filter {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        padding: 10px !important;
        gap: 8px !important;
        margin: 0 0 12px !important;
        position: static !important;
        transform: none !important;
    }

    html body .service-order-list-panel .os-list-filter > label,
    html body .service-order-list-panel .os-list-filter > div {
        flex: none !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 !important;
    }

    html body .service-order-list-panel .os-list-filter .os-filter-search,
    html body .service-order-list-panel .os-list-filter .os-filter-actions,
    html body .service-order-list-panel .os-list-filter .os-custom-period:not([hidden]) {
        grid-column: 1 / -1 !important;
    }

    html body .service-order-list-panel .os-list-filter input,
    html body .service-order-list-panel .os-list-filter select,
    html body .service-order-list-panel .os-list-filter .btn {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 42px !important;
        padding: 8px 10px !important;
        font-size: 13px !important;
    }

    html body .service-order-list-panel .os-filter-actions {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    html body .service-order-list-panel .os-list-grid-wrap,
    html body .service-order-list-panel .os-list-grid {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }

    html body .service-order-list-panel .os-list-grid > thead,
    html body .service-order-list-panel .os-order-spacer {
        display: none !important;
    }

    html body .service-order-list-panel .os-order-group {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 0 10px !important;
        border: 1px solid #dbe4ef !important;
        border-radius: 12px !important;
        overflow: hidden !important;
        background: #fff !important;
        box-shadow: 0 5px 14px rgba(15, 23, 42, .06) !important;
    }

    html body .service-order-list-panel .os-master-row {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        width: 100% !important;
        min-width: 0 !important;
        gap: 8px 10px !important;
        padding: 11px !important;
        background: #f7fff9 !important;
    }

    html body .service-order-list-panel .os-master-row > td {
        display: block !important;
        width: auto !important;
        min-width: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        box-shadow: none !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
    }

    html body .service-order-list-panel .os-master-row > td:nth-child(1) {
        grid-column: 1 !important;
        grid-row: 1 !important;
    }

    html body .service-order-list-panel .os-master-row > td:nth-child(4) {
        grid-column: 2 !important;
        grid-row: 1 !important;
        justify-self: end !important;
    }

    html body .service-order-list-panel .os-master-row > td:nth-child(2) {
        grid-column: 1 / -1 !important;
        grid-row: 2 !important;
        padding-top: 7px !important;
        border-top: 1px solid #e8eef5 !important;
    }

    html body .service-order-list-panel .os-master-row > td:nth-child(3) {
        grid-column: 1 !important;
        grid-row: 3 !important;
    }

    html body .service-order-list-panel .os-master-row > td:nth-child(5) {
        grid-column: 2 !important;
        grid-row: 3 !important;
        justify-self: end !important;
        text-align: right !important;
    }

    html body .service-order-list-panel .os-master-row > td:nth-child(6) {
        grid-column: 1 / -1 !important;
        grid-row: 4 !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 6px !important;
        padding-top: 8px !important;
        border-top: 1px solid #e8eef5 !important;
    }

    html body .service-order-list-panel .os-actions-cell > a,
    html body .service-order-list-panel .os-actions-cell > form,
    html body .service-order-list-panel .os-actions-cell > form .btn {
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    html body .service-order-list-panel .os-actions-cell .btn {
        min-height: 38px !important;
        padding: 7px 8px !important;
    }

    html body .service-order-list-panel .os-detail-row,
    html body .service-order-list-panel .os-detail-row > td,
    html body .service-order-list-panel .os-detail-grid {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    html body .service-order-list-panel .os-detail-row > td {
        padding: 0 !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    html body .service-order-list-panel .os-detail-grid section {
        width: 100% !important;
        min-width: 0 !important;
        padding: 10px !important;
        border-top: 1px solid #dbe4ef !important;
        border-left: 0 !important;
        overflow-x: auto !important;
    }

    html body .service-order-list-panel .os-detail-grid table {
        min-width: 360px !important;
    }
}

/* 2026-10-30 - Contas a Receber no celular (piloto GE Informatica). */
@media (max-width: 760px) {
    html body .receivables-page,
    html body .receivables-page > *,
    html body .receivables-page .panel,
    html body .receivables-page .table-wrap {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    html body .receivables-page {
        overflow-x: hidden !important;
    }

    html body .receivables-page .receivables-head {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 12px !important;
        gap: 10px !important;
        overflow: visible !important;
    }

    html body .receivables-page .receivables-title-row {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100% !important;
        min-width: 0 !important;
        gap: 9px !important;
    }

    html body .receivables-page .receivables-title-row > div,
    html body .receivables-page .receivables-title-row > button {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    html body .receivables-page .receivables-head h1 {
        margin: 0 !important;
        font-size: 28px !important;
        line-height: 1.08 !important;
    }

    html body .receivables-page .receivables-head p {
        margin: 5px 0 0 !important;
        font-size: 13px !important;
        line-height: 1.35 !important;
    }

    html body .receivables-page .bank-sync-card,
    html body .receivables-page .bank-sync-card button {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    html body .receivables-page .bank-sync-card button {
        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr) !important;
        gap: 4px 7px !important;
    }

    html body .receivables-page .bank-sync-copy {
        min-width: 0 !important;
    }

    html body .receivables-page .bank-sync-action {
        grid-column: 1 / -1 !important;
        justify-self: start !important;
    }

    html body .receivables-page .receivable-new-button {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 42px !important;
        margin: 0 !important;
    }

    html body .receivables-page .receivables-filters {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        padding: 10px !important;
        gap: 8px !important;
        margin: 0 !important;
        overflow: visible !important;
    }

    html body .receivables-page .receivables-filters > * {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 !important;
    }

    html body .receivables-page .receivables-filters .receivable-customer-filter,
    html body .receivables-page .receivables-filters [data-custom-period-field]:not([hidden]) {
        grid-column: 1 / -1 !important;
    }

    html body .receivables-page .receivables-filters input,
    html body .receivables-page .receivables-filters select,
    html body .receivables-page .receivables-filters .btn,
    html body .receivables-page .receivables-filters summary {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 42px !important;
        padding: 8px 10px !important;
        font-size: 13px !important;
    }

    html body .receivables-page .finance-filter-menu-panel {
        position: fixed !important;
        z-index: 1000 !important;
        top: 82px !important;
        left: 12px !important;
        right: 12px !important;
        width: auto !important;
        min-width: 0 !important;
        max-height: calc(100dvh - 165px) !important;
        padding: 12px !important;
        overflow-y: auto !important;
    }

    html body .receivables-page .receivables-tabs {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        gap: 6px !important;
        padding: 8px !important;
        margin: 0 !important;
        overflow: hidden !important;
    }

    html body .receivables-page .receivables-tabs a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 38px !important;
        padding: 6px !important;
        font-size: 11px !important;
        line-height: 1.15 !important;
        text-align: center !important;
        white-space: normal !important;
    }

    html body .receivables-page > .metrics {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        gap: 8px !important;
        margin: 0 !important;
        overflow: hidden !important;
    }

    html body .receivables-page > .metrics article {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 82px !important;
        padding: 10px !important;
        gap: 4px !important;
        overflow: hidden !important;
    }

    html body .receivables-page > .metrics article span {
        font-size: 10px !important;
        line-height: 1.2 !important;
        overflow-wrap: anywhere !important;
    }

    html body .receivables-page > .metrics article strong {
        min-width: 0 !important;
        font-size: 20px !important;
        line-height: 1.1 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    html body .receivables-page > .panel {
        padding: 10px !important;
        overflow: hidden !important;
    }

    html body .receivables-page .receivable-bulk-form,
    html body .receivables-page .receivable-bulk-form.is-active,
    html body .receivables-page .receivable-bulk-form:not(.is-active) {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        align-items: end !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 0 10px !important;
        padding: 10px !important;
        gap: 8px !important;
        overflow: hidden !important;
    }

    html body .receivables-page .receivable-bulk-form > div,
    html body .receivables-page .receivable-bulk-form > button {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    html body .receivables-page .receivable-bulk-form > label {
        display: grid !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    html body .receivables-page .receivable-bulk-form > label,
    html body .receivables-page .receivable-bulk-form > button {
        display: grid !important;
    }

    html body .receivables-page .receivable-bulk-form input,
    html body .receivables-page .receivable-bulk-form select,
    html body .receivables-page .receivable-bulk-form .btn {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        min-height: 42px !important;
        padding: 8px !important;
        font-size: 12px !important;
    }

    html body .receivables-page .receivable-bulk-submit {
        width: 100% !important;
        min-width: 0 !important;
    }

    html body .receivables-page > .panel:not(.receivable-detail-panel) > .table-wrap,
    html body .receivables-page > .panel:not(.receivable-detail-panel) > .table-wrap > .modern-table,
    html body .receivables-page > .panel:not(.receivable-detail-panel) > .table-wrap > .modern-table > tbody {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: visible !important;
    }

    html body .receivables-page > .panel:not(.receivable-detail-panel) > .table-wrap > .modern-table > thead {
        display: none !important;
    }

    html body .receivables-page > .panel:not(.receivable-detail-panel) > .table-wrap > .modern-table > tbody {
        display: grid !important;
        gap: 9px !important;
    }

    html body .receivables-page > .panel:not(.receivable-detail-panel) > .table-wrap > .modern-table > tbody > tr[data-receivable-row] {
        position: relative !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        gap: 7px 10px !important;
        padding: 11px !important;
        border: 1px solid #dbe4ef !important;
        border-left: 4px solid #f97316 !important;
        border-radius: 12px !important;
        background: #fff !important;
        box-shadow: 0 5px 14px rgba(15, 23, 42, .06) !important;
        overflow: visible !important;
    }

    html body .receivables-page > .panel:not(.receivable-detail-panel) > .table-wrap > .modern-table > tbody > tr[data-receivable-row].receivable-overdue {
        border-left-color: #e11d48 !important;
        background: #fff8f8 !important;
    }

    html body .receivables-page tr[data-receivable-row] > td {
        display: block !important;
        width: auto !important;
        min-width: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        box-shadow: none !important;
    }

    html body .receivables-page tr[data-receivable-row] > td:nth-child(1) {
        position: absolute !important;
        z-index: 2 !important;
        top: 10px !important;
        right: 10px !important;
        width: 22px !important;
        min-width: 22px !important;
    }

    html body .receivables-page tr[data-receivable-row] > td:nth-child(2) {
        grid-column: 1 / -1 !important;
        grid-row: 1 !important;
        padding-right: 34px !important;
    }

    html body .receivables-page tr[data-receivable-row] > td:nth-child(3) {
        grid-column: 1 !important;
        grid-row: 2 !important;
    }

    html body .receivables-page tr[data-receivable-row] > td:nth-child(8) {
        grid-column: 2 !important;
        grid-row: 2 !important;
        justify-self: end !important;
    }

    html body .receivables-page tr[data-receivable-row] > td:nth-child(4) {
        grid-column: 1 / -1 !important;
        grid-row: 3 !important;
        padding-top: 7px !important;
        border-top: 1px solid #e8eef5 !important;
    }

    html body .receivables-page tr[data-receivable-row] > td:nth-child(5) {
        grid-column: 1 !important;
        grid-row: 4 !important;
        color: #64748b !important;
        font-size: 12px !important;
    }

    html body .receivables-page tr[data-receivable-row] > td:nth-child(5)::before {
        content: "Parcela: " !important;
        font-weight: 800 !important;
    }

    html body .receivables-page tr[data-receivable-row] > td:nth-child(6) {
        grid-column: 2 !important;
        grid-row: 4 !important;
        justify-self: end !important;
        color: #64748b !important;
        font-size: 12px !important;
    }

    html body .receivables-page tr[data-receivable-row] > td:nth-child(6)::before {
        content: "Venc.: " !important;
        font-weight: 800 !important;
    }

    html body .receivables-page tr[data-receivable-row] > td:nth-child(7) {
        grid-column: 1 / -1 !important;
        grid-row: 5 !important;
        justify-self: end !important;
        color: #059669 !important;
        font-size: 18px !important;
        font-weight: 900 !important;
    }

    html body .receivables-page tr[data-receivable-row] > td:nth-child(9) {
        grid-column: 1 / -1 !important;
        grid-row: 6 !important;
        padding-top: 8px !important;
        border-top: 1px solid #e8eef5 !important;
    }

    html body .receivables-page .modern-table td.receivable-actions,
    html body .receivables-page .receivable-more-actions,
    html body .receivables-page .receivable-more-actions > summary {
        display: flex !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    html body .receivables-page .receivable-more-actions > summary {
        align-items: center !important;
        justify-content: center !important;
        min-height: 38px !important;
    }

    html body .receivables-page .receivable-actions-menu {
        right: 0 !important;
        left: auto !important;
        width: min(260px, calc(100vw - 48px)) !important;
        min-width: 0 !important;
    }

    html body .receivables-page .receivable-detail-panel {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    html body .receivables-page .receivable-detail-panel .table-wrap {
        overflow-x: auto !important;
    }
}

/* 2026-10-30 - correcao definitiva da listagem mobile de orcamentos. */
@media (max-width: 760px) {
    html body .quote-list-panel,
    html body .quote-list-workspace,
    html body .quote-list-scroll,
    html body .quote-list-panel .quote-list-table,
    html body .quote-list-panel .quote-list-table tbody {
        position: static !important;
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
        inset: auto !important;
        transform: none !important;
    }

    html body .quote-list-panel {
        padding-bottom: calc(92px + env(safe-area-inset-bottom)) !important;
    }

    html body .quote-list-panel .quote-list-table tbody {
        display: grid !important;
        gap: 10px !important;
    }

    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] {
        position: relative !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: hidden !important;
    }

    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td,
    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] strong,
    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] small {
        min-width: 0 !important;
        max-width: 100% !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: anywhere !important;
        line-height: 1.3 !important;
    }

    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(1) {
        padding-right: 104px !important;
    }

    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(7) {
        position: absolute !important;
        top: 10px !important;
        right: 10px !important;
        max-width: 96px !important;
    }

    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(2) {
        padding-top: 9px !important;
    }

    html body .quote-list-panel .quote-list-table tbody tr[data-quote-row] > td:nth-child(2) strong {
        display: block !important;
        font-size: 14px !important;
        line-height: 1.25 !important;
    }

    html body .quote-list-panel .quote-items-preview-panel {
        display: none !important;
        position: static !important;
        width: 0 !important;
        height: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
    }
}

/* 2026-10-30 - Contas a Pagar no mesmo padrao mobile de Contas a Receber. */
@media (max-width: 760px) {
    html body .payables-page,
    html body .payables-page > *,
    html body .payables-page .panel,
    html body .payables-page .table-wrap {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    html body .payables-page {
        overflow-x: hidden !important;
    }

    html body .payables-page .payables-head {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 12px !important;
        gap: 10px !important;
        overflow: visible !important;
    }

    html body .payables-page .payables-title {
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    html body .payables-page .payables-title h1 {
        margin: 0 !important;
        font-size: 28px !important;
        line-height: 1.08 !important;
    }

    html body .payables-page .payables-title p {
        margin: 5px 0 0 !important;
        font-size: 13px !important;
        line-height: 1.35 !important;
    }

    html body .payables-page .payables-filter {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        padding: 10px !important;
        gap: 8px !important;
        margin: 0 !important;
        overflow: visible !important;
    }

    html body .payables-page .payables-filter > * {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 !important;
    }

    html body .payables-page .payables-filter .payables-search,
    html body .payables-page .payables-filter [data-custom-period-field]:not([hidden]),
    html body .payables-page .payables-filter [data-open-payable-modal] {
        grid-column: 1 / -1 !important;
    }

    html body .payables-page .payables-filter input,
    html body .payables-page .payables-filter select,
    html body .payables-page .payables-filter .btn,
    html body .payables-page .payables-filter summary {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 42px !important;
        padding: 8px 10px !important;
        font-size: 13px !important;
    }

    html body .payables-page .finance-filter-menu-panel {
        position: fixed !important;
        z-index: 1000 !important;
        top: 82px !important;
        left: 12px !important;
        right: 12px !important;
        width: auto !important;
        min-width: 0 !important;
        max-height: calc(100dvh - 165px) !important;
        padding: 12px !important;
        overflow-y: auto !important;
    }

    html body .payables-page .payables-tabs {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        gap: 6px !important;
        padding: 8px !important;
        margin: 0 !important;
        overflow: hidden !important;
    }

    html body .payables-page .payables-tabs a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 38px !important;
        padding: 6px !important;
        font-size: 12px !important;
        line-height: 1.15 !important;
        text-align: center !important;
        white-space: normal !important;
    }

    html body .payables-page .employee-payable-cards {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        gap: 8px !important;
        margin: 0 !important;
    }

    html body .payables-page .employee-payable-card {
        display: grid !important;
        grid-template-columns: 38px minmax(0, 1fr) !important;
        align-items: center !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 88px !important;
        padding: 10px !important;
        gap: 8px !important;
        overflow: hidden !important;
    }

    html body .payables-page .employee-payable-card:last-child:nth-child(odd) {
        grid-column: 1 / -1 !important;
    }

    html body .payables-page .employee-payable-card-icon {
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        font-size: 18px !important;
    }

    html body .payables-page .employee-payable-card span:last-child {
        min-width: 0 !important;
        overflow: hidden !important;
    }

    html body .payables-page .employee-payable-card small,
    html body .payables-page .employee-payable-card em {
        font-size: 9px !important;
        line-height: 1.2 !important;
        overflow-wrap: anywhere !important;
    }

    html body .payables-page .employee-payable-card strong {
        min-width: 0 !important;
        font-size: 17px !important;
        line-height: 1.1 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    html body .payables-page > .metrics {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        gap: 8px !important;
        margin: 0 !important;
    }

    html body .payables-page > .metrics article {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 82px !important;
        padding: 10px !important;
        overflow: hidden !important;
    }

    html body .payables-page > .metrics article:last-child:nth-child(odd) {
        grid-column: 1 / -1 !important;
    }

    html body .payables-page > .metrics article span {
        font-size: 10px !important;
        line-height: 1.2 !important;
        overflow-wrap: anywhere !important;
    }

    html body .payables-page > .metrics article strong {
        min-width: 0 !important;
        font-size: 20px !important;
        line-height: 1.1 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    html body .payables-page > .panel {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        padding: 10px !important;
        padding-bottom: calc(92px + env(safe-area-inset-bottom)) !important;
        overflow: hidden !important;
    }

    html body .payables-page .payable-bulk-bar {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        padding: 10px !important;
        gap: 8px !important;
        margin: 0 0 10px !important;
    }

    html body .payables-page .payable-bulk-bar > * {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    html body .payables-page > .panel > .table-wrap,
    html body .payables-page > .panel > .table-wrap > .modern-table,
    html body .payables-page > .panel > .table-wrap > .modern-table > tbody {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }

    html body .payables-page > .panel > .table-wrap > .modern-table > thead {
        display: none !important;
    }

    html body .payables-page > .panel > .table-wrap > .modern-table > tbody {
        display: grid !important;
        gap: 9px !important;
    }

    html body .payables-page tr[data-payable-row] {
        position: relative !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        gap: 7px 10px !important;
        padding: 11px !important;
        border: 1px solid #dbe4ef !important;
        border-left: 4px solid #f97316 !important;
        border-radius: 12px !important;
        background: #fff !important;
        box-shadow: 0 5px 14px rgba(15, 23, 42, .06) !important;
        overflow: visible !important;
    }

    html body .payables-page tr[data-payable-row].receivable-overdue {
        border-left-color: #e11d48 !important;
        background: #fff8f8 !important;
    }

    html body .payables-page tr[data-payable-row] > td {
        display: block !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: 100% !important;
        padding: 0 !important;
        border: 0 !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        box-shadow: none !important;
    }

    html body .payables-page tr[data-payable-row] > td:nth-child(1) {
        grid-column: 1 / -1 !important;
        grid-row: 1 !important;
        padding-right: 0 !important;
        font-size: 14px !important;
    }

    html body .payables-page .payable-beneficiary-wrap {
        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr) !important;
        align-items: start !important;
        width: 100% !important;
        min-width: 0 !important;
        gap: 8px !important;
    }

    html body .payables-page .payable-beneficiary-content,
    html body .payables-page .payable-supplier-name {
        min-width: 0 !important;
        max-width: 100% !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
    }

    html body .payables-page tr[data-payable-row] > td:nth-child(2) {
        grid-column: 1 !important;
        grid-row: 2 !important;
        color: #64748b !important;
    }

    html body .payables-page tr[data-payable-row] > td:nth-child(2)::before {
        content: "NF-e: " !important;
        font-weight: 800 !important;
    }

    html body .payables-page tr[data-payable-row] > td:nth-child(9) {
        grid-column: 2 !important;
        grid-row: 2 !important;
        justify-self: end !important;
    }

    html body .payables-page tr[data-payable-row] > td:nth-child(3) {
        grid-column: 1 / -1 !important;
        grid-row: 3 !important;
        padding-top: 7px !important;
        border-top: 1px solid #e8eef5 !important;
        color: #334155 !important;
        font-size: 13px !important;
    }

    html body .payables-page tr[data-payable-row] > td:nth-child(4) {
        grid-column: 1 !important;
        grid-row: 4 !important;
        color: #64748b !important;
        font-size: 12px !important;
    }

    html body .payables-page tr[data-payable-row] > td:nth-child(4)::before {
        content: "Parcela: " !important;
        font-weight: 800 !important;
    }

    html body .payables-page tr[data-payable-row] > td:nth-child(5) {
        grid-column: 2 !important;
        grid-row: 4 !important;
        justify-self: end !important;
        color: #64748b !important;
        font-size: 12px !important;
    }

    html body .payables-page tr[data-payable-row] > td:nth-child(5)::before {
        content: "Emissao: " !important;
        font-weight: 800 !important;
    }

    html body .payables-page tr[data-payable-row] > td:nth-child(6) {
        grid-column: 1 !important;
        grid-row: 5 !important;
        align-self: auto !important;
        color: #64748b !important;
        font-size: 12px !important;
        font-weight: 400 !important;
        white-space: normal !important;
    }

    html body .payables-page tr[data-payable-row] > td:nth-child(6)::before {
        content: "Vencimento: " !important;
        font-weight: 800 !important;
    }

    html body .payables-page tr[data-payable-row] > td:nth-child(7) {
        grid-column: 2 !important;
        grid-row: 5 !important;
        justify-self: end !important;
        align-self: auto !important;
        color: #059669 !important;
        font-size: 18px !important;
        font-weight: 900 !important;
        white-space: nowrap !important;
    }

    html body .payables-page tr[data-payable-row] > td:nth-child(8) {
        grid-column: 1 / -1 !important;
        grid-row: 6 !important;
        margin: 0 !important;
    }

    html body .payables-page tr[data-payable-row] > td:nth-child(10) {
        grid-column: 1 / -1 !important;
        grid-row: 7 !important;
        padding-top: 8px !important;
        border-top: 1px solid #e8eef5 !important;
    }

    html body .payables-page td.actions,
    html body .payables-page .payable-more-actions,
    html body .payables-page .payable-more-actions > summary {
        display: flex !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    html body .payables-page .payable-more-actions > summary {
        align-items: center !important;
        justify-content: center !important;
        min-height: 38px !important;
    }

    html body .payables-page .payable-more-actions .counter-more-menu {
        right: 0 !important;
        left: auto !important;
        width: min(260px, calc(100vw - 48px)) !important;
        min-width: 0 !important;
    }
}

/* 2026-10-30 - Tele-entrega compacta e busca de produtos legivel no mobile. */
@media (max-width: 760px) {
    html body:has(.delivery-start),
    html body:has([data-order-screen][data-order-type="delivery"]) {
        overflow-x: hidden !important;
    }

    html body .delivery-start {
        width: 100% !important;
        max-width: 100% !important;
        padding-bottom: calc(92px + env(safe-area-inset-bottom)) !important;
    }

    html body .delivery-start-heading {
        align-items: flex-start !important;
        gap: 10px !important;
        margin-bottom: 10px !important;
    }

    html body .delivery-start-heading h1 {
        margin: 2px 0 4px !important;
        font-size: 25px !important;
        line-height: 1.05 !important;
    }

    html body .delivery-start-heading p {
        max-width: 310px !important;
        font-size: 12px !important;
        line-height: 1.3 !important;
    }

    html body .delivery-start-heading .btn {
        flex: 0 0 auto !important;
        min-height: 40px !important;
        padding: 7px 10px !important;
        font-size: 12px !important;
    }

    html body .delivery-start-summary {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 6px 10px !important;
        margin-bottom: 10px !important;
        padding: 10px 12px !important;
        border-radius: 13px !important;
        font-size: 11px !important;
    }

    html body .delivery-start-number {
        font-size: 18px !important;
    }

    html body .delivery-start-status {
        justify-self: start !important;
        margin: 0 !important;
        padding: 5px 8px !important;
        font-size: 10px !important;
    }

    html body .delivery-start-columns,
    html body .delivery-start-side,
    html body .delivery-start-fields {
        gap: 10px !important;
    }

    html body .delivery-start-card {
        padding: 13px !important;
        border-radius: 14px !important;
    }

    html body .delivery-start-section-title {
        gap: 9px !important;
        margin-bottom: 12px !important;
    }

    html body .delivery-start-step {
        width: 29px !important;
        height: 29px !important;
        border-radius: 9px !important;
    }

    html body .delivery-start-section-title h2 {
        font-size: 16px !important;
    }

    html body .delivery-start-section-title p,
    html body .delivery-start label,
    html body .delivery-start-search small,
    html body .delivery-start-tip {
        font-size: 11px !important;
    }

    html body .delivery-start input,
    html body .delivery-start select {
        min-height: 44px !important;
        margin-top: 5px !important;
        padding: 8px 10px !important;
        font-size: 13px !important;
    }

    html body .delivery-start-search {
        margin-bottom: 12px !important;
        padding-bottom: 12px !important;
    }

    html body .delivery-start-search-icon {
        top: 31px !important;
    }

    html body .delivery-start-address-title {
        margin: 14px 0 10px !important;
        padding-top: 12px !important;
        font-size: 13px !important;
    }

    html body .delivery-start-tip {
        margin: 0 !important;
        padding: 10px !important;
        line-height: 1.4 !important;
    }

    html body .delivery-start-actions {
        gap: 10px !important;
        margin-top: 10px !important;
        padding: 12px !important;
        border-radius: 14px !important;
    }

    html body .delivery-start-actions p,
    html body .delivery-start-actions strong {
        font-size: 11px !important;
        line-height: 1.3 !important;
    }

    html body .delivery-start-action-buttons {
        gap: 7px !important;
    }

    html body .delivery-start-actions .btn {
        min-height: 44px !important;
        padding: 8px 10px !important;
        font-size: 12px !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .order-layout,
    html body:has([data-order-screen][data-order-type="delivery"]) .order-left {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .order-left > .page-head.compact {
        gap: 8px !important;
        margin-bottom: 8px !important;
        padding: 11px !important;
        border-radius: 14px !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .order-left > .page-head.compact > div:first-child {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 8px !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .order-left > .page-head.compact h1 {
        margin: 0 !important;
        font-size: 23px !important;
        line-height: 1.05 !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .order-left > .page-head.compact p {
        margin: 0 !important;
        padding-left: 12px !important;
        font-size: 11px !important;
        line-height: 1.2 !important;
        text-align: right !important;
        white-space: normal !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .order-left > .page-head.compact .header-actions {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        width: 100% !important;
        min-width: 0 !important;
        gap: 6px !important;
        overflow: visible !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .order-left > .page-head.compact .header-actions form,
    html body:has([data-order-screen][data-order-type="delivery"]) .order-left > .page-head.compact .header-actions .btn {
        width: 100% !important;
        min-width: 0 !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .order-left > .page-head.compact .header-actions .btn,
    html body:has([data-order-screen][data-order-type="delivery"]) .order-left > .page-head.compact .header-actions .btn.primary {
        min-height: 44px !important;
        padding: 5px 7px !important;
        font-size: 12px !important;
        line-height: 1.1 !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .delivery-customer-summary {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px 12px !important;
        margin-bottom: 8px !important;
        padding: 11px !important;
        border-radius: 14px !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .delivery-customer-summary > div {
        min-width: 0 !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .delivery-customer-summary span {
        font-size: 10px !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .delivery-customer-summary strong {
        display: block !important;
        overflow-wrap: anywhere !important;
        font-size: 14px !important;
        line-height: 1.25 !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .delivery-customer-summary > p,
    html body:has([data-order-screen][data-order-type="delivery"]) .delivery-customer-summary > details {
        grid-column: 1 / -1 !important;
        margin: 0 !important;
        font-size: 12px !important;
        line-height: 1.3 !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .search-add {
        grid-template-columns: 66px minmax(0, 1fr) !important;
        gap: 7px !important;
        margin-bottom: 8px !important;
        padding: 9px !important;
        border-radius: 14px !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .search-add .mobile-section-title {
        font-size: 16px !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .search-add > [data-order-product-search],
    html body:has([data-order-screen][data-order-type="delivery"]) .search-add > [data-order-quantity],
    html body:has([data-order-screen][data-order-type="delivery"]) .search-add > .btn.primary {
        min-height: 46px !important;
        height: 46px !important;
        font-size: 15px !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .search-add > .product-suggestions {
        position: static !important;
        grid-column: 1 / -1 !important;
        grid-row: 3 !important;
        max-height: min(36dvh, 260px) !important;
        margin: -1px 0 0 !important;
        padding: 5px !important;
        gap: 5px !important;
        overflow-x: hidden !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .product-suggestions button {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 4px !important;
        min-height: 0 !important;
        padding: 8px 9px !important;
        overflow: hidden !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .product-suggestions button > strong,
    html body:has([data-order-screen][data-order-type="delivery"]) .product-suggestions button > span {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 !important;
        overflow-wrap: anywhere !important;
        white-space: normal !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .product-suggestions button > strong {
        border: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        font-size: 12px !important;
        line-height: 1.25 !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .product-suggestions button > span {
        padding: 4px 6px !important;
        font-size: 10px !important;
        line-height: 1.2 !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .order-items {
        margin-bottom: 8px !important;
        padding: 9px 11px !important;
        border-radius: 14px !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .order-items article {
        gap: 6px 10px !important;
        padding: 10px 0 !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .order-items article > strong {
        font-size: 15px !important;
        line-height: 1.25 !important;
        overflow-wrap: anywhere !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .order-items article > span,
    html body:has([data-order-screen][data-order-type="delivery"]) .order-items article > b {
        font-size: 14px !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .order-items .item-note-editor summary,
    html body:has([data-order-screen][data-order-type="delivery"]) .order-items .link-danger {
        font-size: 13px !important;
    }
}

/* 2026-10-30 - Acoes de andamento da entrega em bloco compacto. */
@media (max-width: 760px) {
    html body:has([data-order-screen][data-order-type="delivery"]) .order-actions {
        gap: 8px !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .delivery-whatsapp-actions {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        gap: 7px !important;
        margin: 0 !important;
        padding: 9px !important;
        border: 1px solid #dbe5f0 !important;
        border-radius: 14px !important;
        background: #fff !important;
        box-shadow: 0 8px 20px rgba(15, 23, 42, .05) !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .delivery-whatsapp-actions::before {
        content: "Andamento da entrega · atualiza e avisa o cliente" !important;
        grid-column: 1 / -1 !important;
        display: block !important;
        margin: 0 0 2px !important;
        color: #475569 !important;
        font-size: 11px !important;
        font-weight: 800 !important;
        line-height: 1.2 !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .delivery-whatsapp-actions > form {
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .delivery-whatsapp-actions > form:nth-of-type(3) {
        grid-column: 1 / -1 !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .delivery-whatsapp-actions .btn {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 48px !important;
        margin: 0 !important;
        padding: 7px 8px !important;
        border-radius: 10px !important;
        font-size: 11px !important;
        line-height: 1.15 !important;
        text-align: center !important;
        white-space: normal !important;
        box-shadow: none !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .delivery-whatsapp-actions > form:nth-of-type(1) .btn {
        border-color: #f59e0b !important;
        background: #f59e0b !important;
        color: #fff !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .delivery-whatsapp-actions > form:nth-of-type(2) .btn {
        border-color: #2563eb !important;
        background: #2563eb !important;
        color: #fff !important;
    }

    html body:has([data-order-screen][data-order-type="delivery"]) .delivery-whatsapp-actions > form:nth-of-type(3) .btn {
        border-color: #7c3aed !important;
        background: #7c3aed !important;
        color: #fff !important;
    }
}
