/*
 * Qigu Plugin Sales & License Center
 * Unified mobile layout layer — v1.6.0
 * Loaded after sales.css to provide one predictable mobile system.
 */

@media (max-width: 767px) {
  html,
  body,
  body.qps-standalone-page {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 0;
    overflow-x: hidden !important;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
  }

  body.qps-standalone-page {
    padding-bottom: env(safe-area-inset-bottom, 0px);
  }

  .qps-site,
  .qps-site *,
  .qps-simple-checkout,
  .qps-simple-checkout * {
    box-sizing: border-box;
    min-width: 0;
  }

  .qps-site img,
  .qps-simple-checkout img {
    display: block;
    max-width: 100%;
    height: auto;
  }

  .qps-site p,
  .qps-site li,
  .qps-site td,
  .qps-site th,
  .qps-site a,
  .qps-site span,
  .qps-simple-checkout p,
  .qps-simple-checkout label {
    overflow-wrap: anywhere;
    word-break: normal;
  }

  .qps-container,
  .qps-product-landing .qps-container {
    width: calc(100% - 24px) !important;
    max-width: none !important;
    margin-inline: auto !important;
  }

  /* Header and mobile navigation */
  .qps-header {
    top: 0;
    width: 100%;
    padding-top: env(safe-area-inset-top, 0px);
  }

  .qps-header-inner,
  .qps-product-landing .qps-header-inner {
    height: 62px !important;
    gap: 10px !important;
  }

  .qps-brand {
    flex: 1 1 auto;
    gap: 9px !important;
    min-width: 0;
  }

  .qps-brand img {
    flex: 0 0 auto;
    width: auto !important;
    height: 32px !important;
    max-width: 48px !important;
    object-fit: contain;
  }

  .qps-brand > span:last-child {
    display: block;
    max-width: calc(100vw - 130px);
    overflow: hidden;
    color: #241a23;
    font-size: 16px !important;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .qps-menu-toggle {
    display: grid !important;
    place-items: center;
    flex: 0 0 44px;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    margin-left: auto;
    padding: 0 !important;
    border-radius: 14px !important;
  }

  .qps-nav {
    position: fixed !important;
    z-index: 10020 !important;
    top: calc(env(safe-area-inset-top, 0px) + 70px) !important;
    right: 12px !important;
    left: auto !important;
    display: none;
    width: calc(100vw - 24px) !important;
    max-width: 350px !important;
    max-height: calc(100dvh - env(safe-area-inset-top, 0px) - 84px) !important;
    margin: 0 !important;
    padding: 10px !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    border: 1px solid rgba(245, 10, 104, .12) !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, .99) !important;
    box-shadow: 0 24px 64px rgba(49, 25, 37, .24) !important;
    -webkit-overflow-scrolling: touch;
  }

  .qps-nav.is-open {
    display: flex !important;
  }

  body.admin-bar .qps-nav {
    top: calc(env(safe-area-inset-top, 0px) + 116px) !important;
    max-height: calc(100dvh - env(safe-area-inset-top, 0px) - 130px) !important;
  }

  .qps-nav > a,
  .qps-nav-products > a {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    min-height: 48px !important;
    padding: 12px 14px !important;
    border-radius: 12px !important;
    font-size: 15px !important;
  }

  .qps-products-dropdown {
    position: static !important;
    width: 100% !important;
    margin: 4px 0 8px !important;
    padding: 8px !important;
    border-radius: 14px !important;
    box-shadow: none !important;
  }

  .qps-buy-top {
    display: none !important;
  }

  /* Shared typography and touch targets */
  .qps-btn,
  .qps-site button,
  .qps-site input[type="submit"],
  .qps-site input[type="button"] {
    min-height: 46px;
    touch-action: manipulation;
  }

  .qps-section {
    padding: 52px 0 !important;
  }

  .qps-section-head {
    margin-bottom: 26px !important;
  }

  .qps-section-head h2,
  .qps-demo-copy h2 {
    max-width: 100%;
    font-size: 26px !important;
    line-height: 1.28 !important;
    letter-spacing: -.55px !important;
  }

  .qps-section-head p,
  .qps-demo-copy > p {
    font-size: 14px !important;
    line-height: 1.72 !important;
  }

  /* Home hero */
  .qps-hero {
    min-height: auto !important;
    padding: calc(env(safe-area-inset-top, 0px) + 86px) 0 42px !important;
    overflow: hidden;
  }

  .qps-hero:after {
    display: none !important;
  }

  .qps-hero-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    align-items: stretch !important;
  }

  .qps-hero-copy {
    order: 1;
    max-width: none !important;
    padding: 0 !important;
    text-align: left !important;
  }

  .qps-hero .qps-badge {
    max-width: 100%;
    padding: 7px 11px;
    font-size: 10.5px !important;
    line-height: 1.45;
    text-align: left;
  }

  .qps-hero h1 {
    max-width: none !important;
    margin: 14px 0 12px !important;
    font-size: clamp(29px, 8vw, 36px) !important;
    line-height: 1.12 !important;
    letter-spacing: -.9px !important;
  }

  .qps-hero-topline,
  .qps-hero-bottomline {
    display: block !important;
  }

  .qps-hero-copy > p {
    max-width: none !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.76 !important;
  }

  .qps-hero-assurance,
  .qps-trust {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 7px !important;
    justify-content: stretch !important;
    margin-top: 14px !important;
  }

  .qps-hero-assurance span,
  .qps-trust span {
    display: flex !important;
    align-items: center;
    justify-content: center !important;
    min-height: 40px;
    padding: 8px 6px !important;
    border: 1px solid rgba(245, 10, 104, .09);
    border-radius: 11px !important;
    background: rgba(255, 255, 255, .72);
    font-size: 10.5px !important;
    line-height: 1.25;
    text-align: center;
  }

  .qps-hero-assurance span {
    padding-left: 15px !important;
  }

  .qps-hero-assurance span:before {
    left: 6px !important;
    width: 5px !important;
    height: 5px !important;
    box-shadow: none !important;
  }

  .qps-trust svg {
    flex: 0 0 auto;
    font-size: 14px !important;
  }

  .qps-hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
    margin-top: 18px !important;
  }

  .qps-hero-actions .qps-btn {
    width: 100% !important;
    min-height: 48px !important;
    padding: 12px 16px !important;
  }

  .qps-hero-visual {
    order: 2;
    min-height: auto !important;
    width: 100% !important;
    max-width: none !important;
    margin: 2px auto 0 !important;
    padding: 4px 0;
  }

  .qps-hero-visual:before {
    inset: 4px 7% 2px !important;
    border-radius: 20px !important;
  }

  .qps-hero-glow {
    left: 16% !important;
    right: 16% !important;
    bottom: 0 !important;
    height: 28% !important;
    filter: blur(22px) !important;
  }

  .qps-hero-visual > img {
    width: min(92%, 360px) !important;
    max-width: 100% !important;
    max-height: 176px !important;
    margin: 0 auto !important;
    transform: none !important;
    filter: drop-shadow(0 16px 24px rgba(62, 34, 45, .13)) !important;
    object-fit: contain;
  }

  .qps-hero-float {
    display: none !important;
  }

  .qps-value-strip {
    margin-top: 10px !important;
  }

  .qps-value-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .qps-value-grid > div {
    min-height: 102px !important;
    padding: 14px 11px !important;
  }

  /* Home cards and demo */
  .qps-pain-grid,
  .qps-step-grid,
  .qps-audience-grid,
  .qps-pricing-grid,
  .qps-feature-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .qps-pain-grid article,
  .qps-step-grid article,
  .qps-audience-grid article,
  .qps-feature-grid article,
  .qps-price-card,
  .qps-future-plans {
    min-height: auto !important;
    padding: 18px !important;
    border-radius: 17px !important;
  }

  .qps-demo-grid {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  .qps-demo-copy {
    text-align: left !important;
  }

  .qps-demo-visual {
    width: 100% !important;
    height: 226px !important;
  }

  .qps-demo-front {
    height: 190px !important;
  }

  .qps-demo-admin {
    height: 150px !important;
  }

  .qps-price-card.is-recommended {
    transform: none !important;
  }

  .qps-faq-list {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .qps-faq details {
    border-radius: 14px !important;
  }

  .qps-faq summary {
    min-height: 54px !important;
    padding: 12px 14px !important;
    gap: 10px !important;
    font-size: 13px !important;
  }

  .qps-faq details p {
    padding: 0 14px 15px !important;
    font-size: 13px !important;
    line-height: 1.7 !important;
  }

  /* Product version page */
  .qps-product-hero {
    padding: calc(env(safe-area-inset-top, 0px) + 86px) 0 34px !important;
    overflow: hidden !important;
  }

  .qps-product-hero-grid {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    gap: 12px !important;
    align-items: stretch !important;
  }

  .qps-product-hero-copy {
    order: 1;
    padding: 0 !important;
    text-align: left !important;
  }

  .qps-product-hero-copy .qps-badge {
    max-width: 100%;
    font-size: 10.5px !important;
  }

  .qps-product-hero-copy h1 {
    max-width: none !important;
    margin: 14px 0 12px !important;
    font-size: clamp(29px, 8vw, 35px) !important;
    line-height: 1.13 !important;
    letter-spacing: -.9px !important;
  }

  .qps-product-hero-topline {
    display: block !important;
    white-space: normal !important;
  }

  .qps-product-hero-copy > p {
    max-width: none !important;
    font-size: 14px !important;
    line-height: 1.74 !important;
  }

  .qps-product-hero-copy .qps-hero-actions {
    margin-top: 18px !important;
  }

  .qps-product-mini-points {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin-top: 14px !important;
  }

  .qps-product-mini-points span {
    display: flex;
    align-items: center;
    min-height: 38px;
    padding: 8px 8px 8px 17px !important;
    border: 1px solid rgba(245, 10, 104, .09);
    border-radius: 10px;
    background: #fff9fb;
    font-size: 11px !important;
    line-height: 1.3;
  }

  .qps-product-hero-visual {
    order: 2;
    min-height: 0 !important;
    width: 100% !important;
    max-width: none !important;
    margin: 2px auto 0 !important;
    padding: 3px 0;
  }

  .qps-product-hero-visual:before {
    inset: 3px 7% 2px !important;
    border-radius: 20px !important;
  }

  .qps-product-hero-visual img {
    width: min(94%, 380px) !important;
    max-width: 100% !important;
    max-height: 205px !important;
    margin: 0 auto !important;
    filter: drop-shadow(0 16px 24px rgba(56, 30, 43, .13)) !important;
    object-fit: contain;
  }

  .qps-product-proof {
    margin-top: 4px !important;
  }

  .qps-product-proof > .qps-container {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    border-radius: 16px !important;
  }

  .qps-product-proof-item {
    min-height: 104px !important;
    padding: 14px 11px !important;
    gap: 10px !important;
  }

  .qps-product-proof-item i {
    flex-basis: 36px !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 11px !important;
    font-size: 17px !important;
  }

  .qps-product-proof-item strong {
    font-size: 13px !important;
  }

  .qps-product-proof-item small {
    font-size: 10.5px !important;
    line-height: 1.4 !important;
  }

  .qps-product-plans,
  .qps-plan-compare {
    padding-block: 52px !important;
  }

  .qps-product-plan-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    width: 100%;
    max-width: none !important;
    margin-top: 24px !important;
  }

  .qps-product-plan-card {
    width: 100%;
    min-height: 0 !important;
    padding: 22px 18px !important;
    border-radius: 18px !important;
  }

  .qps-product-plan-card:hover {
    transform: none !important;
  }

  .qps-plan-top p {
    min-height: 0 !important;
  }

  .qps-plan-price {
    margin: 20px 0 16px !important;
    font-size: 37px !important;
  }

  .qps-product-plan-card ul {
    margin-bottom: 18px !important;
    padding-top: 15px !important;
  }

  .qps-product-plan-card li {
    font-size: 13px !important;
    line-height: 1.5 !important;
  }

  .qps-recommend-ribbon {
    right: -38px !important;
    top: 16px !important;
  }

  .qps-plan-assurance {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin-top: 20px !important;
  }

  .qps-plan-assurance span {
    padding: 0 !important;
    font-size: 11.5px !important;
    line-height: 1.55;
  }

  .qps-plan-assurance span:after {
    display: none !important;
  }

  /* Mobile comparison cards: no squeezed three-column table */
  .qps-compare-table {
    display: grid !important;
    gap: 10px !important;
    width: 100% !important;
    margin-top: 24px !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .qps-compare-row.is-head {
    display: none !important;
  }

  .qps-compare-row:not(.is-head) {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    padding: 15px !important;
    border: 1px solid #eedfe4 !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 10px 24px rgba(98, 39, 62, .05);
  }

  .qps-compare-row:not(.is-head) > span {
    display: grid !important;
    grid-template-columns: 106px minmax(0, 1fr) !important;
    gap: 10px;
    align-items: center;
    min-height: 28px;
    padding: 0 !important;
    font-size: 12.5px !important;
    text-align: left !important;
  }

  .qps-compare-row:not(.is-head) > span:first-child {
    display: block !important;
    padding-bottom: 8px !important;
    border-bottom: 1px solid #f1e5e9;
    color: #2d2029;
    font-size: 14px !important;
    font-weight: 800;
  }

  .qps-compare-row:not(.is-head) > span:nth-child(2):before {
    content: "单站授权版";
    color: #8c7580;
    font-size: 11px;
    font-weight: 650;
  }

  .qps-compare-row:not(.is-head) > span:nth-child(3):before {
    content: "安装服务版";
    color: #d00859;
    font-size: 11px;
    font-weight: 750;
  }

  /* CTA and footer */
  .qps-final-cta {
    padding: 38px 0 !important;
  }

  .qps-final-inner {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 20px !important;
    text-align: left !important;
  }

  .qps-final-inner h2,
  .qps-product-landing .qps-final-cta h2 {
    font-size: 23px !important;
    line-height: 1.3 !important;
  }

  .qps-final-inner > div:last-child {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
    width: 100%;
  }

  .qps-final-inner > div:last-child .qps-btn {
    width: 100% !important;
    min-width: 0 !important;
  }

  .qps-footer {
    padding-top: 38px !important;
  }

  .qps-footer-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 24px 18px !important;
  }

  .qps-footer-brand,
  .qps-footer-qr {
    grid-column: 1 / -1 !important;
  }

  .qps-footer-qr {
    justify-content: flex-start !important;
  }

  .qps-footer-qr img {
    width: 68px !important;
    height: 68px !important;
  }

  .qps-footer-bottom {
    flex-direction: column !important;
    gap: 8px;
    padding-block: 18px !important;
    font-size: 10px !important;
    text-align: center;
  }

  /* Store shell: account, login, cart and checkout */
  .qps-store-hero {
    padding: calc(env(safe-area-inset-top, 0px) + 78px) 0 16px !important;
  }

  .qps-store-hero h1 {
    margin: 14px 0 8px !important;
    font-size: 28px !important;
    line-height: 1.18 !important;
  }

  .qps-store-hero p {
    font-size: 14px !important;
    line-height: 1.7 !important;
  }

  .qps-store-links {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    overflow-x: auto !important;
    padding-bottom: 4px;
    scrollbar-width: none;
  }

  .qps-store-links::-webkit-scrollbar {
    display: none;
  }

  .qps-store-links a {
    flex: 0 0 auto !important;
    white-space: nowrap;
  }

  .qps-store-main {
    padding: 6px 0 44px !important;
  }

  .qps-store-card {
    padding: 14px 10px !important;
    overflow: hidden;
    border-radius: 20px !important;
  }

  .qps-woo-content,
  .qps-woo-content > .woocommerce {
    width: 100% !important;
    min-width: 0 !important;
  }

  .qps-page-account.qps-account-logged-in .qps-woo-content > .woocommerce {
    display: block !important;
  }

  .qps-page-account.qps-account-logged-in .woocommerce-MyAccount-navigation {
    position: static !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 0 14px !important;
    padding: 8px !important;
    overflow: hidden;
    border-radius: 15px !important;
  }

  .qps-page-account.qps-account-logged-in .woocommerce-MyAccount-navigation ul {
    display: flex !important;
    flex-flow: row nowrap !important;
    gap: 7px !important;
    overflow-x: auto !important;
    padding: 0 0 3px !important;
    scrollbar-width: none;
  }

  .qps-page-account.qps-account-logged-in .woocommerce-MyAccount-navigation ul::-webkit-scrollbar {
    display: none;
  }

  .qps-page-account.qps-account-logged-in .woocommerce-MyAccount-navigation li {
    flex: 0 0 auto !important;
    width: auto !important;
  }

  .qps-page-account.qps-account-logged-in .woocommerce-MyAccount-navigation li a {
    min-height: 42px !important;
    padding: 10px 13px !important;
    white-space: nowrap;
  }

  .qps-page-account.qps-account-logged-in .woocommerce-MyAccount-content {
    width: 100% !important;
    min-height: 0 !important;
    padding: 15px 12px !important;
    overflow: visible !important;
    border-radius: 16px !important;
  }

  .qps-page-account.qps-account-logged-out #customer_login {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .qps-page-account.qps-account-logged-out #customer_login > .u-column1,
  .qps-page-account.qps-account-logged-out #customer_login > .u-column2,
  .qps-page-account.qps-account-logged-out #customer_login > .col-1,
  .qps-page-account.qps-account-logged-out #customer_login > .col-2 {
    padding: 18px 14px !important;
    border-radius: 16px !important;
  }

  .qps-page-account input.input-text,
  .qps-page-account input[type="email"],
  .qps-page-account input[type="password"],
  .qps-page-account input[type="text"],
  .qps-page-account textarea,
  .qps-page-account select,
  .qps-woo-shell input,
  .qps-woo-shell textarea,
  .qps-woo-shell select {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 48px;
    font-size: 16px !important;
  }

  .qps-account-section-head {
    display: block !important;
  }

  .qps-account-section-head h2 {
    font-size: 25px !important;
  }

  .qps-account-text-link {
    margin-top: 12px;
  }

  .qps-download-card,
  .qps-account-license-card {
    padding: 15px 12px !important;
    border-radius: 15px !important;
  }

  /* WooCommerce tables */
  .qps-page-account .woocommerce-orders-table,
  .qps-page-account .woocommerce-orders-table tbody,
  .qps-page-account .woocommerce-orders-table tr,
  .qps-page-account .woocommerce-orders-table td {
    display: block !important;
    width: 100% !important;
  }

  .qps-page-account .woocommerce-orders-table thead {
    display: none !important;
  }

  .qps-page-account .woocommerce-orders-table tr {
    margin-bottom: 12px;
    padding: 12px !important;
    border: 1px solid #f0e2e7 !important;
    border-radius: 13px;
    background: #fff;
  }

  .qps-page-account .woocommerce-orders-table td {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 7px 0 !important;
    border: 0 !important;
    text-align: right !important;
  }

  .qps-page-account .woocommerce-orders-table td:before {
    flex: 0 0 42%;
    color: #7d6872;
    font-weight: 650;
    text-align: left;
  }

  .qps-page-account .woocommerce-orders-table__cell-order-actions {
    display: block !important;
    text-align: left !important;
  }

  .qps-page-account .woocommerce-orders-table__cell-order-actions .button {
    width: 100%;
    margin-top: 5px;
  }

  .qps-woo-content .woocommerce-cart-form,
  .qps-woo-content .woocommerce-checkout-review-order-table,
  .qps-woo-content .woocommerce-order-details {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .qps-woo-content .woocommerce-cart-form table.cart {
    min-width: 660px;
  }

  .qps-woo-shell .woocommerce .col2-set,
  .qps-woo-shell .woocommerce-page .col2-set {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .qps-woo-shell .woocommerce-checkout #customer_details,
  .qps-woo-shell .woocommerce-checkout #order_review,
  .qps-woo-shell .cart-collaterals .cart_totals {
    width: 100% !important;
    padding: 17px 13px !important;
    border-radius: 16px !important;
  }

  .qps-woo-shell .woocommerce-checkout .form-row-first,
  .qps-woo-shell .woocommerce-checkout .form-row-last {
    float: none !important;
    width: 100% !important;
  }

  /* Custom direct checkout */
  .qps-simple-checkout {
    min-height: 100dvh;
    padding-bottom: calc(36px + env(safe-area-inset-bottom, 0px)) !important;
    overflow-x: hidden;
  }

  .qps-checkout-header {
    width: calc(100% - 24px) !important;
    height: auto !important;
    min-height: 68px;
    padding: calc(env(safe-area-inset-top, 0px) + 10px) 0 10px !important;
  }

  .qps-checkout-wrap {
    display: flex !important;
    flex-direction: column !important;
    width: calc(100% - 20px) !important;
    margin-top: 18px !important;
    gap: 14px !important;
  }

  .qps-order-summary {
    order: -1;
    position: static !important;
    width: 100%;
    padding: 18px 14px !important;
    border-radius: 17px !important;
  }

  .qps-checkout-form-card {
    width: 100%;
    padding: 19px 14px !important;
    border-radius: 17px !important;
  }

  .qps-checkout-passwords {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  .qps-checkout-form-card input,
  .qps-checkout-form-card select,
  .qps-checkout-form-card textarea {
    width: 100%;
    max-width: 100%;
    min-height: 50px;
    font-size: 16px !important;
  }

  .qps-checkout-submit {
    width: 100%;
    min-height: 50px;
  }

  /* Payment page */
  .qps-payment-shell {
    width: calc(100% - 20px) !important;
    margin: 0 auto !important;
    padding: calc(env(safe-area-inset-top, 0px) + 84px) 0 28px !important;
  }

  .qps-payment-card {
    padding: 22px 14px !important;
    border-radius: 18px !important;
  }

  .qps-payment-state {
    width: 58px;
    height: 58px;
  }

  .qps-payment-card h1 {
    font-size: 27px !important;
  }

  .qps-payment-intro {
    font-size: 14px !important;
  }

  .qps-payment-order-info {
    grid-template-columns: 1fr !important;
  }

  .qps-payment-qr {
    width: min(100%, 280px) !important;
    padding: 13px !important;
  }

  .qps-payment-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
  }

  .qps-payment-actions .qps-btn {
    width: 100%;
  }

  /* WeChat floating consultation */
  .qps-wechat-consult {
    right: 10px !important;
    bottom: calc(env(safe-area-inset-bottom, 0px) + 72px) !important;
  }

  .qps-wechat-trigger {
    width: 48px !important;
    height: 48px !important;
  }

  .qps-wechat-trigger-icon {
    width: 38px !important;
    height: 38px !important;
    font-size: 27px !important;
  }

  .qps-wechat-panel {
    right: 10px !important;
    bottom: calc(env(safe-area-inset-bottom, 0px) + 128px) !important;
    left: 10px !important;
    width: auto !important;
    max-height: calc(100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 150px) !important;
    padding: 18px !important;
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .qps-wechat-qr {
    width: min(170px, 52vw) !important;
    height: min(170px, 52vw) !important;
  }
}

@media (max-width: 390px) {
  .qps-container,
  .qps-product-landing .qps-container {
    width: calc(100% - 18px) !important;
  }

  .qps-brand > span:last-child {
    max-width: calc(100vw - 124px);
    font-size: 15px !important;
  }

  .qps-hero,
  .qps-product-hero {
    padding-top: calc(env(safe-area-inset-top, 0px) + 80px) !important;
  }

  .qps-hero h1,
  .qps-product-hero-copy h1 {
    font-size: 27px !important;
  }

  .qps-hero-assurance,
  .qps-trust,
  .qps-product-mini-points,
  .qps-product-proof > .qps-container,
  .qps-value-grid {
    grid-template-columns: 1fr !important;
  }

  .qps-hero-assurance span,
  .qps-trust span {
    justify-content: flex-start !important;
    padding-inline: 12px !important;
    font-size: 11px !important;
  }

  .qps-hero-visual > img {
    max-height: 158px !important;
  }

  .qps-product-hero-visual img {
    max-height: 184px !important;
  }

  .qps-product-proof-item,
  .qps-value-grid > div {
    min-height: auto !important;
  }

  .qps-footer-grid {
    grid-template-columns: 1fr !important;
  }

  .qps-footer-brand,
  .qps-footer-qr {
    grid-column: auto !important;
  }

  .qps-compare-row:not(.is-head) > span {
    grid-template-columns: 92px minmax(0, 1fr) !important;
  }
}

@media (hover: none), (pointer: coarse) {
  .qps-btn:hover,
  .qps-price-card:hover,
  .qps-product-plan-card:hover,
  .qps-wechat-trigger:hover {
    transform: none !important;
  }

  .qps-wechat-trigger-text {
    display: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .qps-site *,
  .qps-simple-checkout * {
    scroll-behavior: auto !important;
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
  }
}


/* =========================================================
 * v1.6.0 — Mobile sales experience refresh
 * Reference direction: compact SaaS mobile rhythm, single CTA,
 * snap cards, stronger whitespace and dedicated mobile buy bar.
 * Desktop layout is intentionally untouched.
 * ========================================================= */
@media (max-width: 767px) {
  body.qps-standalone-page:has(.qps-site) {
    padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px)) !important;
    background: #fff;
  }

  .qps-container,
  .qps-product-landing .qps-container {
    width: calc(100% - 32px) !important;
  }

  /* Cleaner mobile header: brand + menu only. */
  .qps-header {
    border-bottom: 1px solid rgba(62, 36, 49, .07) !important;
    background: rgba(255, 255, 255, .95) !important;
    box-shadow: 0 8px 24px rgba(57, 29, 43, .04) !important;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
  }
  .qps-header-inner,
  .qps-product-landing .qps-header-inner { height: 60px !important; }
  .qps-menu-toggle {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    border-radius: 12px !important;
    background: #fff7fa !important;
    box-shadow: none !important;
  }

  /* Hero: one promise, one dominant action, image as proof. */
  .qps-hero,
  .qps-product-hero {
    padding-top: calc(env(safe-area-inset-top, 0px) + 82px) !important;
    padding-bottom: 34px !important;
    background: linear-gradient(180deg,#fff 0%,#fff8fb 68%,#fff 100%) !important;
  }
  .qps-hero-grid,
  .qps-product-hero-grid { gap: 20px !important; }
  .qps-hero-copy,
  .qps-product-hero-copy { text-align: center !important; }
  .qps-hero .qps-badge,
  .qps-product-hero-copy .qps-badge {
    display: inline-flex !important;
    width: auto !important;
    max-width: 94% !important;
    justify-content: center;
    padding: 7px 12px !important;
    border-radius: 999px !important;
    font-size: 10px !important;
    text-align: center !important;
  }
  .qps-hero h1,
  .qps-product-hero-copy h1 {
    margin: 15px auto 12px !important;
    max-width: 340px !important;
    font-size: clamp(30px, 8.7vw, 38px) !important;
    line-height: 1.08 !important;
    letter-spacing: -1.25px !important;
  }
  .qps-hero-copy > p,
  .qps-product-hero-copy > p {
    max-width: 350px !important;
    margin-inline: auto !important;
    color: #74646d !important;
    font-size: 13.5px !important;
    line-height: 1.72 !important;
  }
  .qps-hero-assurance {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 6px !important;
    margin-top: 14px !important;
  }
  .qps-hero-assurance span {
    min-height: 0 !important;
    padding: 6px 9px 6px 19px !important;
    border-radius: 999px !important;
    background: #fff !important;
    font-size: 10px !important;
  }
  .qps-hero-assurance span:before { left: 8px !important; }
  .qps-trust { display: none !important; }
  .qps-hero-actions {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 3px !important;
    max-width: 360px;
    margin: 18px auto 0 !important;
  }
  .qps-hero-actions .qps-btn-blue {
    order: 1;
    min-height: 50px !important;
    border-radius: 12px !important;
    box-shadow: 0 14px 30px rgba(245,10,104,.18) !important;
  }
  .qps-hero-actions .qps-btn-outline {
    order: 2;
    min-height: 40px !important;
    margin-top: 3px;
    border-color: transparent !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #6d5863 !important;
  }
  .qps-hero-visual,
  .qps-product-hero-visual {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  .qps-hero-visual > img { max-height: 210px !important; width: min(100%, 390px) !important; }
  .qps-product-hero-visual img { max-height: 230px !important; width: min(100%, 400px) !important; }

  /* Section rhythm: shorter, clearer, left-aligned. */
  .qps-section { padding: 46px 0 !important; }
  .qps-section-head { margin-bottom: 23px !important; text-align: left !important; }
  .qps-section-head > span,
  .qps-eyebrow {
    display: inline-flex !important;
    padding: 6px 10px !important;
    border-radius: 999px !important;
    font-size: 10px !important;
  }
  .qps-section-head h2,
  .qps-demo-copy h2 {
    margin-top: 10px !important;
    font-size: 26px !important;
    line-height: 1.2 !important;
    letter-spacing: -.75px !important;
  }
  .qps-section-head p,
  .qps-demo-copy > p { color: #7a6871 !important; font-size: 13px !important; line-height: 1.72 !important; }

  /* Compact proof strip becomes a swipe row instead of a tall 2x2 block. */
  .qps-value-strip { margin-top: 0 !important; padding: 10px 0 6px !important; background:#fff !important; }
  .qps-value-grid {
    display: flex !important;
    gap: 10px !important;
    width: calc(100vw - 16px) !important;
    margin-left: 16px !important;
    padding: 4px 16px 10px 0 !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }
  .qps-value-grid::-webkit-scrollbar { display:none; }
  .qps-value-grid > div {
    flex: 0 0 76vw !important;
    max-width: 300px;
    min-height: 88px !important;
    padding: 15px 16px !important;
    scroll-snap-align: start;
    border: 1px solid #f0e4e8 !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 10px 24px rgba(90,45,62,.05) !important;
  }
  .qps-value-grid > div:after { display:none !important; }

  /* Repeated card groups become horizontal snap rails: less vertical fatigue. */
  .qps-pain-grid,
  .qps-step-grid,
  .qps-audience-grid,
  .qps-feature-grid {
    display: flex !important;
    gap: 12px !important;
    width: calc(100vw - 16px) !important;
    margin-left: 0 !important;
    padding: 2px 16px 12px 0 !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
  }
  .qps-pain-grid::-webkit-scrollbar,
  .qps-step-grid::-webkit-scrollbar,
  .qps-audience-grid::-webkit-scrollbar,
  .qps-feature-grid::-webkit-scrollbar { display:none; }
  .qps-pain-grid article,
  .qps-step-grid article,
  .qps-audience-grid article,
  .qps-feature-grid article {
    flex: 0 0 82vw !important;
    max-width: 330px;
    min-height: 172px !important;
    padding: 20px !important;
    scroll-snap-align: start;
    border-radius: 18px !important;
    box-shadow: 0 12px 30px rgba(91,45,62,.06) !important;
  }
  .qps-step-grid article { min-height: 190px !important; }
  .qps-audience-grid article { min-height: 140px !important; }
  .qps-feature-grid article { min-height: 170px !important; }
  .qps-transition-line { margin-top: 18px !important; border-radius: 15px !important; font-size: 12.5px !important; }

  /* Template showcase: one substantial card at a time, swipe to explore. */
  .qps-template-showcase.is-compact .qps-template-preview-grid {
    display: flex !important;
    gap: 14px !important;
    width: calc(100vw - 16px) !important;
    padding: 2px 16px 14px 0 !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }
  .qps-template-showcase.is-compact .qps-template-preview-grid::-webkit-scrollbar { display:none; }
  .qps-template-showcase.is-compact .qps-template-preview-card {
    flex: 0 0 86vw !important;
    max-width: 360px;
    scroll-snap-align: start;
    border-radius: 20px !important;
  }
  .qps-template-showcase.is-compact .qps-template-preview-image { height: 255px !important; }
  .qps-template-showcase.is-compact .qps-template-preview-copy { padding: 19px 18px 20px !important; }
  .qps-template-style-switch {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scrollbar-width: none;
  }
  .qps-template-style-switch::-webkit-scrollbar { display:none; }
  .qps-template-style-switch button { flex:0 0 auto; min-height:36px; }
  .qps-template-included {
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:12px !important;
    padding:17px !important;
    border-radius:16px !important;
  }
  .qps-template-included .qps-btn { width:100% !important; }

  /* Demo: proof image first, then the explanation and actions. */
  .qps-demo-grid { display:flex !important; flex-direction:column !important; gap:22px !important; }
  .qps-demo-visual { order:1 !important; height:220px !important; }
  .qps-demo-copy { order:2 !important; }
  .qps-demo-copy .qps-hero-actions { align-items:stretch !important; margin-inline:0 !important; }
  .qps-demo-access { margin-top:15px !important; padding:14px !important; border-radius:14px !important; }

  /* Product proof on detail page also becomes a compact swipe rail. */
  .qps-product-proof > .qps-container {
    display:flex !important;
    gap:10px !important;
    width:calc(100vw - 16px) !important;
    margin-left:16px !important;
    padding:4px 16px 10px 0 !important;
    overflow-x:auto !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }
  .qps-product-proof > .qps-container::-webkit-scrollbar { display:none; }
  .qps-product-proof-item {
    flex:0 0 78vw !important;
    max-width:300px;
    min-height:92px !important;
    padding:14px !important;
    scroll-snap-align:start;
    border:1px solid #eee1e6 !important;
    border-radius:15px !important;
    background:#fff !important;
    box-shadow:0 10px 24px rgba(91,45,62,.05) !important;
  }
  .qps-product-proof-item:after { display:none !important; }

  /* Pricing: editorial cards with the recommended plan visually dominant. */
  .qps-pricing-grid { gap:14px !important; }
  .qps-price-card,
  .qps-product-plan-card {
    padding:23px 19px !important;
    border-radius:19px !important;
    box-shadow:0 14px 36px rgba(91,45,62,.07) !important;
  }
  .qps-price-card h3 { font-size:38px !important; }
  .qps-price-card ul { padding-top:14px !important; }
  .qps-future-plans {
    padding:18px !important;
    border-radius:17px !important;
    background:#f8f3f5 !important;
    box-shadow:none !important;
  }
  .qps-recommend-ribbon {
    right:-30px !important;
    top:15px !important;
    width:112px !important;
    font-size:10px !important;
  }

  /* Footer is intentionally quieter on phones. */
  .qps-footer { padding-top:32px !important; }
  .qps-footer-grid { grid-template-columns:1fr 1fr !important; gap:22px 16px !important; }
  .qps-footer-brand p { max-width:300px; }

  /* Persistent mobile purchase action. */
  .qps-mobile-buybar {
    position:fixed;
    z-index:10050;
    right:0;
    bottom:0;
    left:0;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    min-height:64px;
    padding:9px max(14px,env(safe-area-inset-right,0px)) calc(9px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px));
    border-top:1px solid rgba(92,54,70,.09);
    background:rgba(255,255,255,.96);
    box-shadow:0 -12px 34px rgba(57,29,43,.10);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
  }
  .qps-mobile-buybar > span { display:flex; flex-direction:column; gap:1px; min-width:0; }
  .qps-mobile-buybar small { color:#8a7780; font-size:9.5px; line-height:1.2; }
  .qps-mobile-buybar strong { color:#2b1d25; font-size:18px; line-height:1.1; letter-spacing:-.4px; white-space:nowrap; }
  .qps-mobile-buybar strong .woocommerce-Price-amount { color:inherit !important; font-size:inherit !important; }
  .qps-mobile-buybar a {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-width:132px;
    min-height:44px;
    padding:10px 18px;
    border-radius:11px;
    background:linear-gradient(135deg,#ff367f,#e60061);
    color:#fff !important;
    font-size:13px;
    font-weight:800;
    text-decoration:none !important;
    box-shadow:0 10px 22px rgba(245,10,104,.20);
  }
}

@media (min-width: 768px) {
  .qps-mobile-buybar { display:none !important; }
}

@media (max-width: 390px) {
  .qps-container,
  .qps-product-landing .qps-container { width:calc(100% - 26px) !important; }
  .qps-hero h1,
  .qps-product-hero-copy h1 { font-size:30px !important; }
  .qps-pain-grid article,
  .qps-step-grid article,
  .qps-audience-grid article,
  .qps-feature-grid article { flex-basis:86vw !important; }
  .qps-mobile-buybar a { min-width:118px; padding-inline:14px; }
}

/* v1.6.1: mobile reading-first refinement.
 * Keep only the visual template showcase swipeable; restore normal grids/lists for functional content.
 */
@media (max-width: 767px) {
  /* Compact mobile menu: natural row height, no stretched vertical rhythm. */
  .qps-nav,
  .qps-nav.is-open {
    height: auto !important;
    min-height: 0 !important;
    align-items: stretch !important;
    align-content: flex-start !important;
    justify-content: flex-start !important;
    gap: 2px !important;
    padding: 8px !important;
  }

  .qps-nav > a,
  .qps-nav-products > a {
    height: auto !important;
    min-height: 40px !important;
    margin: 0 !important;
    padding: 9px 12px !important;
    line-height: 1.35 !important;
  }

  .qps-nav-products {
    flex: 0 0 auto !important;
    width: 100% !important;
    margin: 0 !important;
  }

  .qps-products-dropdown {
    margin: 2px 0 6px !important;
    padding: 6px !important;
  }

  .qps-products-dropdown > a {
    min-height: 42px !important;
    padding: 8px 9px !important;
  }

  /* Four top value points: simple 2x2 overview, no swiping. */
  .qps-value-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: auto !important;
    margin: 0 auto !important;
    padding: 4px 0 8px !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
  }

  .qps-value-grid > div {
    flex: none !important;
    width: auto !important;
    max-width: none !important;
    min-height: 112px !important;
    padding: 14px 13px !important;
    scroll-snap-align: none !important;
  }

  .qps-value-grid > div span { min-width: 0; }
  .qps-value-grid > div strong { font-size: 13px !important; line-height: 1.45 !important; }
  .qps-value-grid > div small { margin-top: 4px !important; font-size: 10.5px !important; line-height: 1.55 !important; }

  /* Problem cards: compact 2-column reading grid. */
  .qps-pain-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
  }

  .qps-pain-grid article {
    flex: none !important;
    width: auto !important;
    max-width: none !important;
    min-height: 154px !important;
    padding: 16px !important;
    scroll-snap-align: none !important;
  }

  .qps-pain-grid article:last-child:nth-child(odd) {
    grid-column: 1 / -1;
    min-height: 118px !important;
  }

  /* Four-step flow: visible at a glance as a 2x2 process. */
  .qps-step-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
  }

  .qps-step-grid article {
    flex: none !important;
    width: auto !important;
    max-width: none !important;
    min-height: 172px !important;
    padding: 16px !important;
    scroll-snap-align: none !important;
  }

  /* Functional features: one compact card per row; no hidden content behind swipes. */
  .qps-feature-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
  }

  .qps-feature-grid article {
    flex: none !important;
    width: auto !important;
    max-width: none !important;
    min-height: 0 !important;
    padding: 16px !important;
    scroll-snap-align: none !important;
    border-radius: 16px !important;
  }

  .qps-feature-grid article strong { font-size: 14px !important; line-height: 1.45 !important; }
  .qps-feature-grid article p { margin-top: 4px !important; font-size: 11.5px !important; line-height: 1.65 !important; }

  /* Audience: five compact cards, no gesture required. */
  .qps-audience-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
  }

  .qps-audience-grid article {
    flex: none !important;
    width: auto !important;
    max-width: none !important;
    min-height: 112px !important;
    padding: 15px !important;
    scroll-snap-align: none !important;
  }

  .qps-audience-grid article:last-child:nth-child(odd) { grid-column: 1 / -1; }

  /* Keep the template preview as the page's only intentional swipe interaction. */
  .qps-template-style-switch {
    flex-wrap: wrap !important;
    overflow: visible !important;
  }

  /* Product-detail proof points return to a visible 2x2 grid. */
  .qps-product-proof > .qps-container {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: calc(100% - 24px) !important;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
  }

  .qps-product-proof-item {
    flex: none !important;
    width: auto !important;
    max-width: none !important;
    min-height: 100px !important;
    padding: 13px !important;
    scroll-snap-align: none !important;
  }
}

@media (max-width: 360px) {
  .qps-value-grid,
  .qps-pain-grid,
  .qps-step-grid,
  .qps-audience-grid,
  .qps-product-proof > .qps-container {
    grid-template-columns: 1fr !important;
  }

  .qps-pain-grid article:last-child:nth-child(odd),
  .qps-audience-grid article:last-child:nth-child(odd) {
    grid-column: auto;
  }

  .qps-value-grid > div,
  .qps-pain-grid article,
  .qps-step-grid article,
  .qps-audience-grid article,
  .qps-product-proof-item {
    min-height: 0 !important;
  }
}
