/* GetYun client area mobile polish.
   Keep this file in the GetYun template so mobile fixes travel with the theme. */

@media (max-width: 991.98px) {
  html,
  body.nq,
  body.nq .template,
  body.nq .el-container,
  body.nq .main-content,
  body.nq .page-content,
  body.nq .container-fluid,
  body.nq .el-main {
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  body.nq {
    background: var(--nq-bg-2, #f4f7fb);
  }

  body.nq .main-content {
    margin-left: 0 !important;
    padding-top: 56px !important;
  }

  body.nq .page-content {
    padding: 12px 12px 72px !important;
  }

  body.nq .container-fluid {
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.nq .el-main,
  html body.nq .product_detail .el-main {
    padding: 62px 12px 72px !important;
    margin: 0 !important;
    width: 100% !important;
  }

  body.nq #page-topbar {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  body.nq .vertical-menu,
  body.nq .el-aside {
    max-width: min(82vw, 280px) !important;
  }

  body.nq .card,
  body.nq .main-card,
  body.nq .config-box,
  body.nq .content,
  body.nq .nq-api-page,
  body.nq .nq-dynamic-page .card,
  body.nq .nq-orderdetail-panel,
  body.nq .nq-product-detail-card,
  body.nq .nq-product-card-top,
  body.nq .nq-productdetail-client-shell,
  body.nq .nq-productdetail-module-tabs,
  body.nq .nq-productdetail-legacy-section,
  body.nq .nq-yx-section,
  body.nq .nq-yx-side-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body.nq .card.card-body,
  body.nq .main-card,
  body.nq .nq-api-page {
    padding: 14px !important;
    border-radius: 8px !important;
  }

  body.nq .nq-page-title-bar,
  body.nq .nq-card-head,
  body.nq .table-header,
  body.nq .nq-svc-toolbar,
  body.nq .nq-svc-table-toolbar,
  body.nq .nq-orderdetail-header,
  body.nq .nq-orderdetail-actions,
  body.nq .nq-api-key-bar,
  body.nq .nq-product-detail-topbar,
  body.nq .nq-yx-product-heading,
  body.nq .nq-productdetail-unified-header {
    width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    gap: 10px !important;
  }

  body.nq .nq-page-title-text,
  body.nq .card-title,
  body.nq .nq-card-head h4,
  body.nq .nq-product-title-text,
  body.nq .nq-productdetail-unified-title,
  body.nq .nq-productdetail-unified-title strong,
  body.nq .nq-service-card-title,
  body.nq .nq-service-card-sub {
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  body.nq .nq-card-head > *,
  body.nq .nq-svc-toolbar > *,
  body.nq .nq-svc-table-toolbar > *,
  body.nq .nq-orderdetail-header > *,
  body.nq .nq-product-detail-topbar > *,
  body.nq .nq-yx-product-heading > *,
  body.nq .nq-productdetail-unified-header > * {
    min-width: 0 !important;
  }

  body.nq .nq-card-head > button,
  body.nq .nq-card-head > .btn,
  body.nq .nq-svc-actions,
  body.nq .nq-svc-batch-actions,
  body.nq .nq-table-actions,
  body.nq .nq-service-card-actions,
  body.nq .nq-productdetail-actions,
  body.nq .nq-yx-product-actions,
  body.nq .nq-yx-operate-bar {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    max-width: 100% !important;
  }

  body.nq .btn,
  body.nq .el-button,
  body.nq button {
    max-width: 100%;
  }

  body.nq .table-responsive,
  body.nq .content-table,
  body.nq .tabledata,
  body.nq .nq-orderdetail-table-wrap,
  body.nq .nq-vb-table-wrap,
  body.nq .el-table,
  body.nq .el-table__body-wrapper,
  body.nq .el-table__header-wrapper {
    max-width: 100% !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  body.nq .table-responsive > table,
  body.nq .table-responsive > .table,
  body.nq .content-table table,
  body.nq .tabledata table,
  body.nq .nq-resource-table,
  body.nq .nq-orderdetail-table,
  body.nq .el-table__body,
  body.nq .el-table__header {
    min-width: 720px;
  }

  body.nq .el-table__empty-block {
    min-width: 100% !important;
  }

  body.nq .table td,
  body.nq .table th,
  body.nq .nq-resource-table td,
  body.nq .nq-resource-table th,
  body.nq .nq-orderdetail-table td,
  body.nq .nq-orderdetail-table th {
    padding: 10px 12px !important;
    vertical-align: middle !important;
  }

  body.nq .el-tabs__header,
  body.nq .el-tabs__nav-wrap,
  body.nq .product-tab-list,
  body.nq .nq-productdetail-client-tabs {
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
  }

  body.nq .el-tabs__nav,
  body.nq .product-tab-list {
    white-space: nowrap !important;
    flex-wrap: nowrap !important;
  }

  body.nq .el-tabs__item {
    margin: 0 !important;
    height: 42px !important;
    line-height: 42px !important;
    font-size: 14px !important;
  }

  body.nq .el-input,
  body.nq .el-select,
  body.nq .el-date-editor,
  body.nq .bootstrap-select,
  body.nq .form-control,
  body.nq textarea,
  body.nq select {
    max-width: 100% !important;
  }

  body.nq .el-input__inner,
  body.nq .el-textarea__inner,
  body.nq .form-control {
    min-height: 36px !important;
    font-size: 14px !important;
  }

  body.nq .el-input__suffix,
  body.nq .com-search .el-input__suffix,
  body.nq .nq-svc-search .el-input__suffix {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  body.nq .el-icon-search.input-search,
  body.nq .input-search,
  body.nq .el-input__suffix .el-icon-search {
    width: 28px !important;
    height: 100% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 16px !important;
    line-height: 1 !important;
  }

  body.nq .el-dialog__wrapper {
    padding: 0 10px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  body.nq .el-dialog,
  body.nq .el-message-box,
  body.nq .modal-dialog,
  body.nq .pay-dialog,
  body.nq .zf-dialog,
  body.nq .withdraw-dialog,
  body.nq .branch-confirm-dialog,
  body.nq .branch-rennew-dialog,
  body.nq .rz-dialog,
  body.nq .nq-client-dialog-modern {
    width: min(100%, 560px) !important;
    max-width: calc(100vw - 20px) !important;
    margin: 8vh auto 18px !important;
    border-radius: 10px !important;
  }

  body.nq .el-dialog__body {
    max-height: 72vh !important;
    overflow-y: auto !important;
    padding: 18px !important;
    box-sizing: border-box !important;
  }

  body.nq .dialog-main,
  body.nq .dialog-form,
  body.nq .content-msg,
  body.nq .msg-item,
  body.nq .white-ip-dialog .ip-status,
  body.nq .create-api-dialog .dialog-main,
  body.nq .delete-dialog .del-dialog-main {
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body.nq .dialog-footer,
  body.nq .del-dialog-footer,
  body.nq .el-dialog__footer,
  body.nq .form-footer {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    padding: 12px 18px 18px !important;
  }
}

@media (max-width: 767.98px) {
  body.nq .page-content {
    padding: 10px 10px 72px !important;
  }

  body.nq .card.card-body,
  body.nq .main-card,
  body.nq .nq-api-page {
    padding: 12px !important;
  }

  body.nq .nq-header-search,
  body.nq .nq-header-search-input {
    max-width: 120px !important;
  }

  body.nq .nq-svc-stats {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  body.nq .nq-svc-stat {
    min-width: 0 !important;
    padding: 10px 12px !important;
  }

  body.nq .nq-svc-stat-label {
    font-size: 12px !important;
  }

  body.nq .nq-svc-stat-value {
    font-size: 18px !important;
  }

  body.nq .nq-svc-toolbar {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  body.nq .nq-svc-actions,
  body.nq .nq-svc-search,
  body.nq .nq-svc-search .el-input,
  body.nq .nq-view-toggle {
    width: 100% !important;
  }

  body.nq .nq-svc-actions .btn,
  body.nq .nq-svc-batch-actions .btn,
  body.nq .nq-service-card-actions .btn {
    flex: 1 1 auto !important;
    min-width: 88px !important;
  }

  body.nq .nq-svc-status-filter {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 6px !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    padding-bottom: 2px !important;
    -webkit-overflow-scrolling: touch;
  }

  body.nq .nq-svc-status-btn {
    flex: 0 0 auto !important;
    height: 30px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    white-space: nowrap !important;
  }

  body.nq .nq-svc-table-toolbar {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  body.nq .nq-svc-batch-actions {
    width: 100% !important;
  }

  body.nq .nq-view-toggle {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
  }

  body.nq .nq-service-card-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  body.nq .nq-service-card {
    padding: 12px !important;
    border-radius: 8px !important;
  }

  body.nq .nq-service-card-head {
    align-items: flex-start !important;
    gap: 8px !important;
  }

  body.nq .nq-service-card-meta {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  body.nq .nq-service-card-meta-item {
    min-width: 0 !important;
    padding: 8px 0 !important;
    display: flex !important;
    justify-content: space-between !important;
    gap: 10px !important;
    border-bottom: 1px solid var(--nq-border-1, #edf0f5);
  }

  body.nq .nq-service-card-meta-item strong {
    min-width: 0 !important;
    text-align: right !important;
    word-break: break-word !important;
  }

  body.nq .nq-orderdetail-shell,
  body.nq .nq-orderdetail-party-grid,
  body.nq .nq-orderdetail-header {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  body.nq .nq-orderdetail-status-box {
    align-items: flex-start !important;
    text-align: left !important;
  }

  body.nq .nq-orderdetail-actions {
    justify-content: flex-start !important;
  }

  body.nq .nq-api-redesign .nq-card-head {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  body.nq .nq-api-redesign .nq-card-head .btn {
    width: 100% !important;
  }
}

@media (max-width: 575.98px) {
  body.nq .main-content {
    padding-top: 52px !important;
  }

  body.nq .page-content {
    padding: 8px 8px 70px !important;
  }

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

  body.nq .nq-page-title-text,
  body.nq .card-title {
    font-size: 16px !important;
    line-height: 1.35 !important;
  }

  body.nq .card.card-body,
  body.nq .main-card,
  body.nq .nq-api-page {
    padding: 10px !important;
    border-radius: 8px !important;
  }

  body.nq .el-message {
    min-width: calc(100vw - 24px) !important;
    left: 12px !important;
    transform: none !important;
    font-size: 14px !important;
  }

  body.nq .el-message-box {
    width: calc(100vw - 24px) !important;
  }

  body.nq .el-message-box__content,
  body.nq .el-message-box__message {
    font-size: 14px !important;
  }

  body.nq .el-dialog,
  body.nq .modal-dialog {
    max-width: calc(100vw - 16px) !important;
    margin-top: 6vh !important;
  }

  body.nq .el-dialog__header {
    padding: 14px 16px 8px !important;
  }

  body.nq .el-dialog__title,
  body.nq .dialog-title,
  body.nq .del-dialog-title {
    font-size: 16px !important;
    line-height: 1.4 !important;
  }

  body.nq .el-dialog__body {
    padding: 14px !important;
  }

  body.nq .dialog-footer .btn-ok,
  body.nq .dialog-footer .btn-no,
  body.nq .del-dialog-footer .btn-ok,
  body.nq .del-dialog-footer .btn-no,
  body.nq .el-dialog__footer .el-button,
  body.nq .form-footer .btn-ok,
  body.nq .form-footer .btn-no {
    flex: 1 1 120px !important;
    min-width: 0 !important;
    height: 36px !important;
    font-size: 14px !important;
  }

  body.nq .myPage .el-pagination,
  body.nq .el-pagination {
    display: flex !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 4px !important;
  }

  body.nq .el-pagination__sizes,
  body.nq .el-pagination__jump,
  body.nq .el-pagination__total,
  body.nq .page-total {
    display: none !important;
  }

  body.nq .table-responsive > table,
  body.nq .table-responsive > .table,
  body.nq .content-table table,
  body.nq .tabledata table,
  body.nq .nq-resource-table,
  body.nq .nq-orderdetail-table,
  body.nq .el-table__body,
  body.nq .el-table__header {
    min-width: 640px;
  }
}

@media (max-width: 767.98px) {
  html body.nq .product_detail {
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  html body.nq .product_detail .el-main {
    padding: 58px 8px 78px !important;
  }

  html body.nq .product_detail .config-box,
  html body.nq .product_detail .config-box > .content,
  html body.nq .product_detail .nq-product-module,
  html body.nq .product_detail .nq-product-detail-content,
  html body.nq .product_detail .nq-productdetail-unified-shell,
  html body.nq .product_detail .nq-productdetail-client-shell,
  html body.nq .product_detail .common_product_detail .main-card,
  html body.nq .product_detail #product_detail_cloud .main-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  html body.nq .product_detail .nq-product-detail-topbar,
  html body.nq .product_detail .nq-yx-product-heading,
  html body.nq .product_detail .nq-productdetail-unified-header {
    padding: 12px !important;
    flex-direction: column !important;
    align-items: stretch !important;
  }

  html body.nq .product_detail .nq-product-detail-title,
  html body.nq .product_detail .nq-yx-product-title,
  html body.nq .product_detail .nq-productdetail-unified-title-wrap,
  html body.nq .product_detail .nq-productdetail-unified-title {
    width: 100% !important;
    min-width: 0 !important;
  }

  html body.nq .product_detail .nq-productdetail-unified-title {
    flex-wrap: wrap !important;
    gap: 6px !important;
  }

  html body.nq .product_detail .nq-productdetail-unified-ip,
  html body.nq .product_detail .nq-product-status,
  html body.nq .product_detail .nq-yx-status,
  html body.nq .product_detail .nq-yx-running,
  html body.nq .product_detail .nq-yx-runtime-status,
  html body.nq .product_detail .nq-productdetail-instance-state {
    flex: 0 0 auto !important;
    max-width: 100% !important;
    white-space: nowrap !important;
  }

  html body.nq .product_detail .nq-productdetail-actions,
  html body.nq .product_detail .nq-yx-product-actions,
  html body.nq .product_detail .nq-yx-operate-bar,
  html body.nq .product_detail .nq-productdetail-unified-actions {
    width: 100% !important;
    justify-content: flex-start !important;
    margin-left: 0 !important;
  }

  html body.nq .product_detail .nq-productdetail-action-btn,
  html body.nq .product_detail .nq-yx-action,
  html body.nq .product_detail .nq-yx-operate-btn,
  html body.nq .product_detail .nq-yx-product-actions .el-button {
    min-width: 78px !important;
    height: 32px !important;
    font-size: 12px !important;
  }

  html body.nq .product_detail .nq-productdetail-more-menu {
    left: 0 !important;
    right: auto !important;
  }

  html body.nq .product_detail .nq-productdetail-client-tabs {
    height: 44px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    -webkit-overflow-scrolling: touch;
  }

  html body.nq .product_detail .nq-productdetail-client-tab {
    flex: 0 0 auto !important;
    min-width: auto !important;
    padding: 0 12px !important;
    font-size: 14px !important;
  }

  html body.nq .product_detail .nq-productdetail-local-overview,
  html body.nq .product_detail .nq-yx-overview-layout,
  html body.nq .product_detail .nq-product-info-grid,
  html body.nq .product_detail .nq-product-chart-grid,
  html body.nq .product_detail .echart-main,
  html body.nq .product_detail .nq-product-action-grid,
  html body.nq .product_detail .top-msg,
  html body.nq .product_detail .nq-yx-info-grid,
  html body.nq .product_detail .common_product_detail .basic-info .box,
  html body.nq .product_detail .finance-info > .box {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  html body.nq .product_detail .nq-productdetail-legacy-overview,
  html body.nq .product_detail .nq-productdetail-module-tabs,
  html body.nq .product_detail .nq-product-card-top,
  html body.nq .product_detail .common_product_detail .main-card > .finance-info,
  html body.nq .product_detail .common_product_detail .main-card > .basic-info,
  html body.nq .product_detail .common_product_detail .main-card > .tabs {
    border-radius: 8px !important;
  }

  html body.nq .product_detail .nq-yx-section,
  html body.nq .product_detail .nq-yx-side-card,
  html body.nq .product_detail .nq-productdetail-legacy-section,
  html body.nq .product_detail .nq-product-chart-card,
  html body.nq .product_detail .nq-product-action-card {
    padding: 12px !important;
  }

  html body.nq .product_detail .nq-yx-info-item,
  html body.nq .product_detail .nq-yx-side-row,
  html body.nq .product_detail .nq-yx-side-switch,
  html body.nq .product_detail .basic-info .box .item,
  html body.nq .product_detail .finance-info .item,
  html body.nq .product_detail .nq-product-info-item,
  html body.nq .product_detail .nq-productdetail-config-item {
    min-width: 0 !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 10px !important;
    padding: 9px 0 !important;
  }

  html body.nq .product_detail .nq-yx-info-item > span,
  html body.nq .product_detail .nq-yx-side-row > span,
  html body.nq .product_detail .nq-yx-side-switch > span,
  html body.nq .product_detail .basic-info .box .item .name,
  html body.nq .product_detail .finance-info .item .label,
  html body.nq .product_detail .nq-product-info-label {
    flex: 0 0 90px !important;
    width: 90px !important;
    min-width: 90px !important;
    max-width: 90px !important;
    color: var(--nq-text-3, #667085) !important;
  }

  html body.nq .product_detail .nq-yx-info-item strong,
  html body.nq .product_detail .nq-yx-side-row strong,
  html body.nq .product_detail .basic-info .box .item .r-info,
  html body.nq .product_detail .finance-info .item > span:not(.label),
  html body.nq .product_detail .nq-product-info-value {
    min-width: 0 !important;
    flex: 1 1 auto !important;
    text-align: right !important;
    justify-content: flex-end !important;
    word-break: break-word !important;
  }

  html body.nq .product_detail .nq-productdetail-chart-summary {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  html body.nq .product_detail .nq-productdetail-chart-summary-item {
    min-width: 0 !important;
    padding: 10px !important;
  }

  html body.nq .product_detail .echart-main > *,
  html body.nq .product_detail [id^="chart"],
  html body.nq .product_detail canvas {
    max-width: 100% !important;
  }

  html body.nq .product_detail .nq-productdetail-log-pane,
  html body.nq .product_detail #pane-6,
  html body.nq .product_detail .log,
  html body.nq .product_detail .nq-product-table {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-x: auto !important;
  }

  html body.nq .product_detail .nq-productdetail-dialog-portal .el-dialog,
  html body.nq .product_detail .nq-productdetail-dialog-box,
  html body.nq .product_detail .nq-productdetail-renew-dialog-box {
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
    margin-top: 6vh !important;
  }

  html body.nq .product_detail .nq-productdetail-dialog-portal .dialog-main,
  html body.nq .product_detail .nq-productdetail-renew-dialog .dialog-main,
  html body.nq .product_detail .nq-productdetail-renew-dialog-wrapper .dialog-main {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  html body.nq .product_detail .nq-productdetail-dialog-portal .os-content,
  html body.nq .product_detail .nq-productdetail-dialog-portal .os-select,
  html body.nq .product_detail .nq-productdetail-dialog-portal .pass-input,
  html body.nq .product_detail .nq-productdetail-renew-dialog .renew-content,
  html body.nq .product_detail .nq-productdetail-renew-dialog-wrapper .renew-content,
  html body.nq .product_detail .nq-productdetail-renew-dialog .pay-content,
  html body.nq .product_detail .nq-productdetail-renew-dialog-wrapper .pay-content {
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media (max-width: 420px) {
  html body.nq .product_detail .nq-productdetail-chart-summary {
    grid-template-columns: 1fr !important;
  }

  html body.nq .product_detail .nq-productdetail-action-btn,
  html body.nq .product_detail .nq-yx-action,
  html body.nq .product_detail .nq-yx-operate-btn,
  html body.nq .product_detail .nq-yx-product-actions .el-button {
    flex: 1 1 calc(50% - 6px) !important;
  }

  body.nq .nq-svc-stats {
    grid-template-columns: 1fr !important;
  }
}

/* 2026-06-08 mobile client-area hardening.
   These overrides stay in the GetYun template so the mobile behavior is portable. */
@media (max-width: 991.98px) {
  body.nq #page-topbar,
  body.nq #page-topbar .navbar-header {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body.nq #page-topbar .navbar-header {
    padding: 0 10px !important;
    gap: 8px !important;
    overflow: hidden !important;
  }

  body.nq .nq-header-left,
  body.nq .nq-header-right {
    min-width: 0 !important;
  }

  body.nq .nq-header-left {
    flex: 1 1 auto !important;
    overflow: hidden !important;
  }

  body.nq .nq-header-right {
    flex: 0 0 auto !important;
    justify-content: flex-end !important;
  }

  body.nq .nq-page-title-bar {
    position: fixed !important;
    top: 50px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    box-sizing: border-box !important;
    align-items: center !important;
    justify-content: flex-start !important;
    z-index: 98 !important;
  }

  body.nq .nq-page-title-bar ~ .container-fluid,
  body.nq .nq-page-title-bar ~ .page-content,
  body.nq .nq-page-title-bar ~ .content {
    margin-top: 42px !important;
  }

  body.nq .nq-page-title-text {
    width: 100% !important;
    min-width: 0 !important;
    text-align: left !important;
  }

  body.nq .el-drawer.drawer-menu,
  body.nq .el-drawer.nq-mobile-drawer {
    max-width: min(82vw, 280px) !important;
    overflow: hidden !important;
  }

  body.nq .drawer-menu-list-top {
    max-height: calc(100vh - 86px) !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 767.98px) {
  body.nq .nq-orderdetail-topbar {
    min-height: 42px !important;
    padding: 0 12px !important;
  }

  body.nq .nq-orderdetail-shell {
    padding: 0 8px 56px !important;
  }

  body.nq .nq-orderdetail-panel {
    margin-top: 10px !important;
    padding: 14px 10px 18px !important;
    border-radius: 8px !important;
  }

  body.nq .nq-orderdetail-header {
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-items: stretch !important;
    gap: 12px !important;
    padding-bottom: 14px !important;
  }

  body.nq .nq-orderdetail-brand {
    min-width: 0 !important;
    min-height: 0 !important;
    font-size: 18px !important;
  }

  body.nq .nq-orderdetail-brand img {
    max-width: 150px !important;
    max-height: 44px !important;
  }

  body.nq .nq-orderdetail-status-box {
    width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    text-align: left !important;
  }

  body.nq .nq-orderdetail-status {
    min-width: 64px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 4px 10px !important;
    border-radius: 999px !important;
    background: rgba(240, 68, 56, .1) !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
    white-space: nowrap !important;
  }

  body.nq .nq-orderdetail-status.is-paid {
    background: rgba(22, 163, 74, .12) !important;
  }

  body.nq .nq-orderdetail-status.is-cancelled,
  body.nq .nq-orderdetail-status.is-refunded {
    background: rgba(102, 112, 133, .12) !important;
  }

  body.nq .nq-orderdetail-pay-btn {
    flex: 0 0 auto !important;
    height: 32px !important;
    min-width: 74px !important;
    border-radius: 6px !important;
    line-height: 30px !important;
  }

  body.nq .nq-orderdetail-party-grid {
    padding: 14px 0 !important;
    gap: 12px !important;
  }

  body.nq .nq-orderdetail-party-row {
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 8px !important;
  }

  body.nq .nq-orderdetail-party-row span {
    flex: 0 0 72px !important;
  }

  body.nq .nq-orderdetail-party-row strong {
    flex: 1 1 auto !important;
    text-align: right !important;
  }

  body.nq .nq-orderdetail-table {
    min-width: 0 !important;
    table-layout: fixed !important;
  }

  body.nq .nq-orderdetail-table th,
  body.nq .nq-orderdetail-table td {
    padding: 9px 8px !important;
    font-size: 12px !important;
  }

  body.nq .nq-orderdetail-table .nq-orderdetail-type {
    width: 74px !important;
  }

  body.nq .nq-orderdetail-table .nq-orderdetail-amount {
    width: 84px !important;
  }

  body.nq .nq-orderdetail-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    padding-top: 12px !important;
  }

  body.nq .nq-orderdetail-actions .btn {
    width: 100% !important;
    height: 34px !important;
    justify-content: center !important;
    border-radius: 6px !important;
  }

  html body.nq .product_detail .nq-productdetail-local-overview,
  html body.nq .product_detail .nq-yx-overview-layout {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    align-items: stretch !important;
  }

  html body.nq .product_detail .nq-productdetail-local-overview > *,
  html body.nq .product_detail .nq-yx-overview-layout > *,
  html body.nq .product_detail .nq-yx-section,
  html body.nq .product_detail .nq-yx-side-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  html body.nq .product_detail .nq-yx-section,
  html body.nq .product_detail .nq-yx-side-card,
  html body.nq .product_detail .nq-productdetail-legacy-section {
    border-radius: 8px !important;
    padding: 12px !important;
  }

  html body.nq .product_detail .nq-yx-info-grid,
  html body.nq .product_detail .nq-product-info-grid {
    grid-template-columns: 1fr !important;
  }

  html body.nq .product_detail .nq-productdetail-client-tabs {
    width: 100% !important;
    display: flex !important;
  }

  html body.nq .product_detail .nq-productdetail-client-tab {
    min-height: 42px !important;
  }
}

@media (max-width: 575.98px) {
  body.nq #page-topbar .nq-header-nav,
  body.nq #page-topbar .nq-header-divider,
  body.nq #page-topbar .nq-header-search {
    display: none !important;
  }

  body.nq #page-topbar .nq-header-logo {
    max-width: 132px !important;
  }

  body.nq #page-topbar .nq-header-logo img {
    max-width: 118px !important;
    height: auto !important;
  }

  body.nq .nq-cart-main:not(.nq-cart-main--config),
  body.nq .nq-cart-content,
  body.nq .nq-product-list,
  body.nq .nq-product-grid,
  body.nq .nq-cart-group,
  body.nq .nq-cart-group-heading,
  body.nq .nq-cart-login,
  body.nq .nq-cart-empty {
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
  }

  body.nq .nq-cart-main:not(.nq-cart-main--config) {
    height: auto !important;
    min-height: calc(100vh - 50px) !important;
    overflow: visible !important;
    padding: 10px !important;
  }

  body.nq .nq-cart-main:not(.nq-cart-main--config) .nq-cart-content,
  body.nq .nq-cart-main:not(.nq-cart-main--config) .nq-product-grid {
    overflow: visible !important;
  }

  body.nq .nq-cart-mobile-nav {
    position: static !important;
    top: auto !important;
    margin: 0 0 10px !important;
  }

  body.nq .nq-cart-main:not(.nq-cart-main--config) .search-box,
  body.nq .nq-cart-main:not(.nq-cart-main--config) .nq-cart-search,
  body.nq .nq-cart-main:not(.nq-cart-main--config) .nq-goods-search,
  body.nq .nq-cart-main:not(.nq-cart-main--config) .nq-ct-search-wrap {
    position: relative !important;
    top: auto !important;
    z-index: 1 !important;
  }

  body.nq .nq-cart-main:not(.nq-cart-main--config) .search-box .search-icon,
  body.nq .nq-cart-main:not(.nq-cart-main--config) .nq-ct-search-wrap i,
  body.nq .nq-cart-main:not(.nq-cart-main--config) .el-input__suffix,
  body.nq .nq-cart-main:not(.nq-cart-main--config) .el-input__prefix {
    height: 100% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  body.nq .nq-cart-main--config .nq-spec-row,
  body.nq .nq-productconfig .nq-spec-row {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
  }

  body.nq .nq-cart-main--config .nq-spec-row .nq-productconfig-label,
  body.nq .nq-productconfig .nq-spec-row .nq-productconfig-label {
    width: 100% !important;
    margin: 0 !important;
    padding-bottom: 0 !important;
  }

  body.nq .nq-cart-main--config .nq-spec-row .nq-productconfig-field,
  body.nq .nq-productconfig .nq-spec-row .nq-productconfig-field {
    width: 100% !important;
    justify-content: flex-start !important;
  }

  body.nq .nq-cart-main--config .nq-spec-row .nq-spec-group,
  body.nq .nq-productconfig .nq-spec-row .nq-spec-group {
    width: 100% !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
  }

  body.nq .nq-cart-main--config .nq-spec-row .nq-spec-group {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.nq .nq-cart-main--config .nq-spec-row .nq-spec-hint,
  body.nq .nq-productconfig .nq-spec-row .nq-spec-hint {
    display: block !important;
    width: 100% !important;
  }

  body.nq .nq-cart-main--config .nq-spec-trigger,
  body.nq .nq-cart-main--config .nq-spec-drawer,
  body.nq .nq-productconfig .nq-spec-trigger,
  body.nq .nq-productconfig .nq-spec-drawer {
    display: none !important;
  }

  body.nq .nq-cart-main--config .nq-spec-item,
  body.nq .nq-productconfig .nq-spec-row .nq-spec-item {
    flex: 0 1 auto !important;
    min-height: 30px !important;
    padding: 6px 12px !important;
    font-size: 12px !important;
  }

  body.nq .nq-cart-main--config .nq-spec-row .nq-spec-item {
    width: 100% !important;
    min-width: 0 !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 8px !important;
    line-height: 34px !important;
    text-align: center !important;
  }
}

/* 2026-06-08m3: mobile fixes for billing, ticket detail, product detail, cart filter. */
@media (max-width: 767.98px) {
  body.nq .nq-mobile-drawer .nq-nav-group:not(.open) > .nq-nav-sub,
  body.nq .drawer-menu .nq-nav-group:not(.open) > .nq-nav-sub {
    display: none !important;
  }

  body.nq .nq-mobile-drawer .nq-nav-group:not(.open) > .nq-nav-link .nq-nav-arrow,
  body.nq .drawer-menu .nq-nav-group:not(.open) > .nq-nav-link .nq-nav-arrow {
    transform: none !important;
  }

  body.nq .nq-billing-page .card-body {
    padding: 12px !important;
  }

  body.nq .nq-billing-page .d-flex.justify-content-start {
    margin-bottom: 10px !important;
  }

  body.nq .nq-billing-page .nq-yx-status-filter {
    width: 100% !important;
    height: 40px !important;
  }

  body.nq .nq-billing-page .table-responsive {
    overflow: visible !important;
  }

  body.nq .nq-billing-page .nq-billing-table,
  body.nq .nq-billing-page .nq-billing-table thead,
  body.nq .nq-billing-page .nq-billing-table tbody,
  body.nq .nq-billing-page .nq-billing-table tr,
  body.nq .nq-billing-page .nq-billing-table th,
  body.nq .nq-billing-page .nq-billing-table td {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body.nq .nq-billing-page .nq-billing-table {
    border-collapse: separate !important;
    border-spacing: 0 !important;
  }

  body.nq .nq-billing-page .nq-billing-table thead {
    display: none !important;
  }

  body.nq .nq-billing-page .nq-billing-table tbody tr {
    position: relative !important;
    margin-bottom: 10px !important;
    padding: 12px !important;
    border: 1px solid var(--nq-border-1, #edf0f5) !important;
    border-radius: 8px !important;
    background: #fff !important;
  }

  body.nq .nq-billing-page .nq-billing-table tbody tr td {
    min-height: 0 !important;
    padding: 6px 0 !important;
    border: 0 !important;
    text-align: left !important;
    color: var(--nq-text-1, #172033) !important;
    word-break: break-word !important;
  }

  body.nq .nq-billing-page .nq-billing-table tbody tr td:nth-child(1) {
    position: absolute !important;
    right: 12px !important;
    top: 12px !important;
    width: auto !important;
    padding: 0 !important;
  }

  body.nq .nq-billing-page .nq-billing-table tbody tr td:nth-child(2) {
    padding-right: 42px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
  }

  body.nq .nq-billing-page .nq-billing-table tbody tr td:nth-child(3)::before { content: "类型"; }
  body.nq .nq-billing-page .nq-billing-table tbody tr td:nth-child(4)::before { content: "金额"; }
  body.nq .nq-billing-page .nq-billing-table tbody tr td:nth-child(5)::before { content: "付款时间"; }
  body.nq .nq-billing-page .nq-billing-table tbody tr td:nth-child(6)::before { content: "支付方式"; }
  body.nq .nq-billing-page .nq-billing-table tbody tr td:nth-child(7)::before { content: "退款时间"; }
  body.nq .nq-billing-page .nq-billing-table tbody tr td:nth-child(8)::before { content: "状态"; }

  body.nq .nq-billing-page .nq-billing-table tbody tr td:nth-child(n+3):nth-child(-n+8) {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 12px !important;
    border-bottom: 1px solid var(--nq-border-1, #edf0f5) !important;
  }

  body.nq .nq-billing-page .nq-billing-table tbody tr td:nth-child(n+3):nth-child(-n+8)::before {
    flex: 0 0 76px !important;
    color: var(--nq-text-3, #667085) !important;
    font-weight: 500 !important;
  }

  body.nq .nq-billing-page .nq-billing-table tbody tr td:nth-child(8) {
    align-items: center !important;
  }

  body.nq .nq-billing-page .nq-billing-table .status {
    min-width: 58px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 4px 10px !important;
    border-radius: 999px !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
  }

  body.nq .nq-billing-page .nq-billing-table tbody tr td:nth-child(9) {
    display: flex !important;
    flex-direction: row !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 8px !important;
    padding-top: 10px !important;
  }

  body.nq .nq-billing-page .nq-billing-table tbody tr td:nth-child(9) .btn {
    width: auto !important;
    min-width: 72px !important;
    height: 32px !important;
    padding: 0 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    border-radius: 6px !important;
    writing-mode: horizontal-tb !important;
    line-height: 30px !important;
  }

  body.nq .nq-billing-page .table-footer {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }

  body.nq .nq-billing-page .table-footer-left,
  body.nq .nq-billing-page .table-footer-right {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }

  body.nq .ticket-details .el-main {
    padding: 104px 10px 72px !important;
    min-height: 100vh !important;
    overflow-x: hidden !important;
  }

  body.nq .ticket-details .main-card,
  body.nq .ticket-details .nq-yx-ticket-page {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 12px !important;
    border-radius: 8px !important;
    box-sizing: border-box !important;
  }

  body.nq .ticket-details .nq-yx-ticket-page-title {
    font-size: 16px !important;
    line-height: 1.4 !important;
    margin: 0 0 10px !important;
  }

  body.nq .ticket-details .nq-yx-ticket-layout,
  body.nq .ticket-details .nq-yx-ticket-layout--detail {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  body.nq .ticket-details .nq-yx-ticket-main,
  body.nq .ticket-details .nq-yx-ticket-sidebar,
  body.nq .ticket-details .nq-yx-ticket-thread-shell,
  body.nq .ticket-details .nq-yx-ticket-reply-card,
  body.nq .ticket-details .nq-yx-ticket-side-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body.nq .ticket-details .nq-yx-ticket-header {
    align-items: flex-start !important;
    gap: 8px !important;
    padding: 10px !important;
    border-radius: 8px !important;
  }

  body.nq .ticket-details .nq-yx-ticket-back {
    flex: 0 0 32px !important;
    width: 32px !important;
    height: 32px !important;
  }

  body.nq .ticket-details .nq-yx-ticket-title-row {
    flex-wrap: wrap !important;
    gap: 6px !important;
  }

  body.nq .ticket-details .nq-yx-ticket-title {
    max-width: 100% !important;
    white-space: normal !important;
    word-break: break-word !important;
  }

  body.nq .ticket-details .nq-yx-ticket-meta {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 3px !important;
    font-size: 12px !important;
  }

  body.nq .ticket-details .nq-yx-ticket-thread {
    max-height: none !important;
    min-height: 160px !important;
    padding: 10px !important;
    overflow: visible !important;
  }

  body.nq .ticket-details .nq-yx-reply-item {
    display: grid !important;
    grid-template-columns: 32px minmax(0, 1fr) !important;
    gap: 8px !important;
  }

  body.nq .ticket-details .nq-yx-reply-body,
  body.nq .ticket-details .nq-yx-reply-content,
  body.nq .ticket-details .nq-yx-ticket-reply-bubble {
    max-width: 100% !important;
    min-width: 0 !important;
    word-break: break-word !important;
  }

  body.nq .ticket-details .nq-yx-ticket-textarea .el-textarea__inner {
    min-height: 96px !important;
  }

  body.nq .ticket-details .nq-yx-ticket-reply-footer {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
  }

  body.nq .ticket-details .nq-yx-send-btn {
    min-width: 96px !important;
    height: 34px !important;
  }

  body.nq .ticket-details .nq-yx-ticket-side-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  body.nq .ticket-details .nq-yx-ticket-side-row {
    display: flex !important;
    justify-content: space-between !important;
    gap: 10px !important;
    padding: 8px 0 !important;
    border-bottom: 1px solid var(--nq-border-1, #edf0f5) !important;
  }

  body.nq .ticket-details .nq-yx-ticket-side-row span {
    flex: 0 0 78px !important;
    color: var(--nq-text-3, #667085) !important;
  }

  body.nq .ticket-details .nq-yx-ticket-side-row strong {
    min-width: 0 !important;
    flex: 1 1 auto !important;
    text-align: right !important;
    word-break: break-word !important;
  }

  html body.nq .product_detail .el-main {
    padding-top: 104px !important;
  }

  html body.nq .product_detail .nq-product-detail-content,
  html body.nq .product_detail .content.nq-product-detail-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  html body.nq .product_detail .nq-productdetail-unified-header {
    margin-top: 0 !important;
  }

  html body.nq .product_detail .nq-yx-info-item,
  html body.nq .product_detail .nq-yx-side-row,
  html body.nq .product_detail .basic-info .box .item,
  html body.nq .product_detail .finance-info .item,
  html body.nq .product_detail .nq-product-info-item,
  html body.nq .product_detail .nq-productdetail-config-item {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 4px !important;
    align-items: start !important;
    padding: 10px 0 !important;
  }

  html body.nq .product_detail .nq-yx-info-item > span,
  html body.nq .product_detail .nq-yx-side-row > span,
  html body.nq .product_detail .basic-info .box .item .name,
  html body.nq .product_detail .finance-info .item .label,
  html body.nq .product_detail .nq-product-info-label {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    flex: none !important;
  }

  html body.nq .product_detail .nq-yx-info-item strong,
  html body.nq .product_detail .nq-yx-side-row strong,
  html body.nq .product_detail .basic-info .box .item .r-info,
  html body.nq .product_detail .finance-info .item > span:not(.label),
  html body.nq .product_detail .nq-product-info-value {
    width: 100% !important;
    min-height: 0 !important;
    flex: none !important;
    text-align: left !important;
    justify-content: flex-start !important;
    line-height: 1.5 !important;
  }

  body.nq .nq-cart-page .page-content-no-sidebar {
    padding: 0 0 24px !important;
  }

  body.nq .nq-cart-page .nq-cart-main:not(.nq-cart-main--config) {
    padding-top: 0 !important;
  }

  body.nq .nq-cart-page .nq-cart-group-heading {
    display: none !important;
  }

  body.nq .nq-cart-page .nq-cart-top-filters {
    position: sticky !important;
    top: 48px !important;
    z-index: 80 !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    margin: 0 0 10px !important;
    padding: 10px !important;
    border: 1px solid var(--nq-border-1, #edf0f5) !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: 0 6px 16px rgba(15, 23, 42, .06) !important;
  }

  body.nq .nq-cart-page .nq-cart-top-filters .el-select,
  body.nq .nq-cart-page .nq-cart-top-filters .el-input,
  body.nq .nq-cart-page .nq-cart-top-filters .el-button {
    width: 100% !important;
  }

  body.nq .nq-cart-page .nq-cart-top-filters .el-input__inner {
    height: 36px !important;
  }
}

/* 2026-06-08m4: final mobile cart list filter override after shared cart search rules. */
@media (max-width: 768px) {
  body.nq .nq-cart-page .nq-cart.nq-cart--list .nq-cart-main:not(.nq-cart-main--config) .search-box.nq-cart-top-filters {
    position: sticky !important;
    top: 48px !important;
    z-index: 180 !important;
  }

  body.nq .nq-cart-page .nq-cart.nq-cart--list .nq-cart-side {
    display: none !important;
  }
}

/* 2026-06-08m5: service cards and product-detail chart sizing stay inside the GetYun template. */
@media (max-width: 768px) {
  body.nq .product .nq-svc-table-toolbar {
    gap: 10px !important;
  }

  body.nq .product .nq-service-card-grid-wrap,
  body.nq .product .nq-service-card-grid,
  body.nq .product .nq-service-card {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body.nq .product .nq-service-card-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 12px !important;
  }

  html body.nq .product_detail .nq-productdetail-client-panel[data-panel="module"],
  html body.nq .product_detail .nq-productdetail-module-tabs,
  html body.nq .product_detail .nq-productdetail-module-tabs .el-tabs__content,
  html body.nq .product_detail .nq-productdetail-module-tabs .el-tab-pane,
  html body.nq .product_detail .nq-product-chart-grid,
  html body.nq .product_detail .echart-main,
  html body.nq .product_detail .echart-item,
  html body.nq .product_detail .nq-product-chart-card,
  html body.nq .product_detail .my-echart,
  html body.nq .product_detail [id^="chart"] {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  html body.nq .product_detail .my-echart,
  html body.nq .product_detail [id^="chart"] {
    height: 240px !important;
    overflow: hidden !important;
  }

  html body.nq .product_detail .my-echart > div,
  html body.nq .product_detail .my-echart canvas,
  html body.nq .product_detail [id^="chart"] > div,
  html body.nq .product_detail [id^="chart"] canvas {
    max-width: 100% !important;
  }
}

/* 2026-06-08m8: mobile drawer groups are collapsed unless the active branch opens them. */
@media (max-width: 991.98px) {
  body.nq .el-drawer.drawer-menu .nq-nav-group:not(.open) > .nq-nav-sub,
  body.nq .el-drawer.nq-mobile-drawer .nq-nav-group:not(.open) > .nq-nav-sub,
  body.nq .drawer-menu-list-top .nq-nav-group:not(.open) > .nq-nav-sub {
    display: none !important;
    height: 0 !important;
    overflow: hidden !important;
  }

  body.nq .el-drawer.drawer-menu .nq-nav-group.open > .nq-nav-sub,
  body.nq .el-drawer.nq-mobile-drawer .nq-nav-group.open > .nq-nav-sub,
  body.nq .drawer-menu-list-top .nq-nav-group.open > .nq-nav-sub {
    display: block !important;
    height: auto !important;
    overflow: visible !important;
  }
}

/* 2026-06-09m2: final mobile cart list filters stay in normal page flow after shared rules load. */
@media (max-width: 768px) {
  body.nq .nq-cart-list-page {
    --nq-cart-mobile-header: 50px;
  }

  body.nq .nq-cart-list-page .main-content-no-sidebar,
  body.nq .nq-cart-page.nq-cart-list-page .main-content-no-sidebar {
    height: auto !important;
    min-height: 100vh !important;
    padding-top: var(--nq-cart-mobile-header) !important;
    overflow: visible !important;
  }

  body.nq .nq-cart-list-page .page-content-no-sidebar,
  body.nq .nq-cart-page.nq-cart-list-page .page-content-no-sidebar {
    height: auto !important;
    padding: 0 0 24px !important;
    overflow: visible !important;
  }

  body.nq .nq-cart-list-page .nq-cart-container-fluid,
  body.nq .nq-cart-list-page .nq-cart-container-fluid.container-fluid,
  body.nq .nq-cart-page.nq-cart-list-page .nq-cart-container-fluid,
  body.nq .nq-cart-page.nq-cart-list-page .nq-cart-container-fluid.container-fluid {
    height: auto !important;
    min-height: 0 !important;
    margin-top: 0 !important;
    padding-right: 10px !important;
    padding-left: 10px !important;
    overflow-x: hidden !important;
    overflow-y: visible !important;
  }

  body.nq .nq-cart-list-page .nq-cart,
  body.nq .nq-cart-page.nq-cart-list-page .nq-cart {
    min-height: 0 !important;
    height: auto !important;
    overflow: visible !important;
  }

  body.nq .nq-cart-list-page .nq-cart--list .nq-cart-main,
  body.nq .nq-cart-page.nq-cart-list-page .nq-cart--list .nq-cart-main {
    padding-top: 0 !important;
    overflow: visible !important;
  }

  body.nq .nq-cart-list-page .nq-cart--list .search-box.nq-cart-top-filters,
  body.nq .nq-cart-page.nq-cart-list-page .nq-cart--list .search-box.nq-cart-top-filters,
  body.nq .nq-cart-page .nq-cart.nq-cart--list .nq-cart-main:not(.nq-cart-main--config) .search-box.nq-cart-top-filters {
    position: static !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    z-index: auto !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 12px !important;
    padding: 10px !important;
    box-sizing: border-box !important;
    border: 1px solid var(--nq-border-1, #edf0f5) !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: 0 6px 16px rgba(15, 23, 42, .06) !important;
    transform: none !important;
  }

  body.nq .nq-cart-list-page .nq-cart--list .shopping-box,
  body.nq .nq-cart-list-page .nq-cart--list .nq-product-grid,
  body.nq .nq-cart-page.nq-cart-list-page .nq-cart--list .shopping-box,
  body.nq .nq-cart-page.nq-cart-list-page .nq-cart--list .nq-product-grid {
    width: 100% !important;
    min-width: 0 !important;
  }
}
