/* Phone-only app shell. Desktop/tablet rules and document/PDF canvases are untouched. */
.qm-phone-home { display:none; }
@media screen and (max-width:767px) {
  body.qm-redesign { --phone-gutter:20px; --phone-dock:calc(74px + env(safe-area-inset-bottom,0px)); --qm-ink:#17191d; --qm-muted:#66717d; --qm-line:#e2e7ec; background:var(--qm-soft)!important; -webkit-tap-highlight-color:transparent; }
  [data-theme='dark'] body.qm-redesign { --qm-ink:#f1f4f8; --qm-muted:#a7b2c0; --qm-line:#343d49; }
  body.qm-redesign.has-mobile-nav { padding-bottom:var(--phone-dock)!important; }
  body.qm-redesign.has-mobile-nav>.main-content:not(.main-content-workspace) { padding-bottom:0!important; }
  body.qm-redesign.qm-phone-sheet-open { overflow:hidden; }
  body.qm-redesign #site-header.ct-header { position:sticky!important; top:0; z-index:995; background:var(--qm-surface)!important; border-bottom:1px solid var(--qm-line)!important; }
  body.qm-redesign #site-header.ct-header .header-inner { height:64px!important; padding:0 var(--phone-gutter)!important; gap:12px!important; }
  body.qm-redesign #site-header.ct-header .brand-logo-img { width:137px!important; max-width:137px!important; }
  body.qm-redesign #site-header.ct-header :is(.header-theme-toggle-btn,.mobile-menu-toggle) { width:42px; height:42px; min-height:42px; border:1px solid var(--qm-line)!important; border-radius:14px; background:var(--qm-soft)!important; color:var(--qm-ink)!important; box-shadow:none; }
  body.qm-redesign #site-header.ct-header .mobile-menu-toggle .hamburger-bar { background:var(--qm-ink)!important; }
  body.qm-redesign #site-header.ct-header .mobile-nav-drawer.is-open { max-height:calc(100dvh - 64px - var(--phone-dock)); overflow-y:auto; overscroll-behavior:contain; border-bottom:1px solid var(--qm-line); border-radius:0 0 24px 24px; }
  body.qm-redesign #site-header.ct-header .mobile-nav-inner { padding:16px 20px 24px; }
  body.qm-redesign #site-header.ct-header .mobile-nav-link { min-height:48px; border-radius:12px; font-size:14px; }
  body.qm-redesign :is(a,button,input,select,textarea,[role='button']):focus-visible { outline:3px solid var(--qm-blue); outline-offset:3px; }
  body.qm-redesign :is(button,a) { touch-action:manipulation; }
  body.qm-redesign .main-content :is(input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea) { font-size:16px!important; }
  body.qm-redesign .main-content :is(.btn,.ws-btn,.ws-pill,.pc-primary,.pc-link-btn) { min-height:46px; }

  /* A stable five-destination dock, with no floating control obscuring content. */
  body.qm-redesign .qm-phone-dock { display:flex!important; position:fixed; inset:auto 0 0; height:var(--phone-dock); padding:7px 8px calc(7px + env(safe-area-inset-bottom,0px)); gap:2px; z-index:990; background:var(--qm-surface)!important; border-top:1px solid var(--qm-line)!important; box-shadow:0 -6px 24px #17191d05!important; box-sizing:border-box; }
  body.qm-redesign .qm-phone-dock .mobile-nav-item { flex:1 1 0; min-width:0; min-height:56px; gap:5px; padding:4px 0; border:0; border-radius:14px; background:transparent; font:500 10px/1.2 var(--ct-font-body); color:var(--qm-muted)!important; text-decoration:none; justify-content:center; }
  body.qm-redesign .qm-phone-dock .mobile-nav-item>svg { width:22px; height:22px; stroke-width:1.7; }
  body.qm-redesign .qm-phone-dock .mobile-nav-item.active { color:var(--qm-ink)!important; font-weight:700; background:var(--qm-soft); }
  body.qm-redesign .qm-phone-dock .mobile-nav-item>span:not(.qm-phone-tab-plus) { max-width:100%; overflow-wrap:anywhere; }
  .qm-phone-tab-plus { display:grid; place-items:center; width:38px; height:30px; border-radius:10px; background:var(--qm-primary-bg); color:var(--qm-primary-text); }
  body.qm-redesign .qm-phone-tab-plus svg { width:21px; height:21px; stroke:var(--qm-primary-text)!important; }
  body.qm-redesign.keyboard-open .qm-phone-dock { visibility:hidden!important; pointer-events:none; }
  /* Editors already have a task-specific bottom action bar. Keep just one. */
  body.qm-redesign.page-generator .qm-phone-dock { display:none!important; }
  body.qm-redesign.page-generator.has-mobile-nav { padding-bottom:0!important; }

  /* Accessible More sheet; contents scroll independently of the background. */
  body.qm-redesign #mobile-more-sheet { z-index:12000; background:#10152266; backdrop-filter:blur(5px); }
  body.qm-redesign #mobile-more-dialog { width:100%; max-height:88dvh; background:var(--qm-surface)!important; color:var(--qm-ink); border-radius:28px 28px 0 0; padding:12px 20px calc(24px + env(safe-area-inset-bottom,0px)); border:1px solid var(--qm-line); }
  body.qm-redesign #mobile-more-dialog .mobile-sheet-header { padding:0 0 14px; margin:0; border:0; }
  body.qm-redesign #mobile-more-dialog .mobile-sheet-title { font:600 24px/1.4 var(--ct-font-display); color:var(--qm-ink)!important; }
  body.qm-redesign #mobile-more-dialog .mobile-sheet-close { width:44px; height:44px; border-radius:14px; background:var(--qm-soft); color:var(--qm-ink); border:1px solid var(--qm-line); font-size:26px; }
  body.qm-redesign #mobile-more-dialog .mobile-sheet-group { border:1px solid var(--qm-line); border-radius:18px; overflow:hidden; background:var(--qm-soft); margin:0 0 14px; }
  body.qm-redesign #mobile-more-dialog .mobile-sheet-row { display:flex; align-items:center; justify-content:space-between; width:100%; min-height:56px; padding:10px 12px; gap:12px; border:0; border-bottom:1px solid var(--qm-line); border-radius:0; font:500 14px/1.5 var(--ct-font-body); text-align:left; text-decoration:none; color:var(--qm-ink)!important; background:transparent; cursor:pointer; }
  body.qm-redesign #mobile-more-dialog .mobile-sheet-row:last-child { border-bottom:0; }
  body.qm-redesign #mobile-more-dialog .mobile-sheet-row-left { min-width:0; gap:12px; }
  body.qm-redesign #mobile-more-dialog .mobile-sheet-row-icon { width:34px; height:34px; flex:0 0 34px; border-radius:10px; background:var(--qm-surface)!important; color:var(--qm-body)!important; }
  body.qm-redesign #mobile-more-dialog .mobile-sheet-row-icon svg { width:19px; height:19px; }
  .qm-phone-profile { display:flex; align-items:center; gap:12px; padding:0 0 18px; }
  .qm-phone-avatar { display:grid; place-items:center; flex:0 0 44px; width:44px; height:44px; border-radius:15px; background:var(--qm-card-soft); color:var(--qm-ink); overflow:hidden; }
  .qm-phone-avatar img { width:100%; height:100%; object-fit:cover; }
  .qm-phone-profile>div { min-width:0; flex:1; }
  .qm-phone-profile strong,.qm-phone-profile small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .qm-phone-profile strong { font-size:14px; }.qm-phone-profile small { margin-top:3px; font-size:11px; color:var(--qm-muted); }
  .qm-phone-plan { font-size:9px; font-weight:700; background:var(--qm-card-soft); color:var(--qm-accent-ink); border-radius:6px; padding:5px 7px; }
  .qm-phone-language { padding:14px 12px; border-bottom:1px solid var(--qm-line); }
  .qm-phone-language>span { display:block; color:var(--qm-muted); font-size:12px; margin-bottom:10px; }
  .qm-phone-language>div { display:flex; gap:6px; }
  .qm-phone-language a { flex:1; display:grid; place-items:center; min-height:44px; padding:5px; background:var(--qm-surface); color:var(--qm-ink); border:1px solid var(--qm-line); border-radius:10px; text-decoration:none; font-size:12px; }
  .qm-phone-language a[aria-current] { border-color:var(--qm-accent-ink); background:var(--qm-card-soft); font-weight:700; }

  /* Task-first home screen. The existing desktop hero stays intact. */
  body.qm-redesign .qm-landing { background:var(--qm-soft); }
  .qm-phone-home { display:block; padding:26px var(--phone-gutter) 0; }
  .qm-phone-welcome>p { margin:0 0 8px; font-size:13px; font-weight:500; color:var(--qm-muted); }
  .qm-phone-home #qm-phone-title { max-width:360px; margin:0 0 22px; font:600 30px/1.18 var(--ct-font-display); letter-spacing:-.035em; color:var(--qm-ink); }
  .qm-phone-create { background:var(--qm-surface); border:1px solid var(--qm-line); border-radius:22px; padding:18px; }
  .qm-phone-create-top { display:flex; gap:13px; align-items:flex-start; margin-bottom:16px; }
  .qm-phone-document-icon { display:grid; place-items:center; flex:0 0 46px; width:46px; height:52px; border:1px solid #dfe6f2; background:linear-gradient(140deg,#edf3ff,#f1edfa); color:#4d6089; border-radius:14px; }
  .qm-phone-document-icon svg { width:25px; height:25px; }
  body.qm-redesign .qm-phone-home h2 { font:600 17px/1.4 var(--ct-font-display); color:var(--qm-ink); letter-spacing:-.02em; margin:0; }
  .qm-phone-create-top p { margin:5px 0 0; font-size:12px; line-height:1.5; color:var(--qm-muted); }
  .qm-phone-start { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:48px; padding:12px 16px; border-radius:14px; background:var(--qm-primary-bg); color:var(--qm-primary-text)!important; text-decoration:none; font-size:14px; font-weight:600; box-sizing:border-box; }
  .qm-phone-start svg,.qm-phone-preview-heading svg { width:20px; height:20px; }
  .qm-phone-free { display:block; margin-top:12px; text-align:center; font-size:10px; line-height:1.5; color:var(--qm-muted); }
  .qm-phone-tools { margin-top:25px; scroll-margin-top:85px; }
  .qm-phone-tool-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:13px; }
  .qm-phone-tool { display:grid; grid-template-columns:36px minmax(0,1fr); grid-template-rows:auto auto; column-gap:10px; align-items:center; padding:14px 12px; min-height:82px; border:1px solid var(--qm-line); border-radius:17px; background:var(--qm-surface); color:var(--qm-ink); text-decoration:none; }
  .qm-phone-tool-icon { grid-row:1 / 3; display:grid; place-items:center; width:36px; height:38px; border-radius:11px; background:var(--qm-card-soft); color:var(--qm-body); }
  .qm-phone-tool-blue { background:#edf2ff; color:#536d9e; }.qm-phone-tool-lilac { background:#f2eef9; color:#796595; }
  .qm-phone-tool svg { width:20px; height:20px; }
  .qm-phone-tool strong { font-size:12px; line-height:1.45; font-weight:600; }.qm-phone-tool small { font-size:10px; line-height:1.5; color:var(--qm-muted); margin-top:3px; }
  .qm-phone-preview-heading { display:flex; align-items:center; justify-content:space-between; margin-top:24px; gap:15px; }
  .qm-phone-preview-heading>a { display:grid; place-items:center; width:44px; height:44px; color:var(--qm-ink); border-radius:12px; background:var(--qm-surface); border:1px solid var(--qm-line); }
  body.qm-redesign .qm-hero { padding-top:12px; }
  body.qm-redesign .qm-hero-copy { display:none; }
  body.qm-redesign .qm-showcase { margin-top:0; border-radius:22px; padding:12px; }
  body.qm-redesign .qm-demo-app { border-radius:15px; }
  body.qm-redesign .qm-demo-topbar { padding:12px; }
  body.qm-redesign .qm-demo-explore { font-size:11px; min-height:40px; padding:9px 10px; }
  body.qm-redesign .qm-demo-paper-space { padding:12px; }
  body.qm-redesign .qm-audience { padding:25px 0 30px; }
  body.qm-redesign .qm-audience>div { gap:10px; }
  body.qm-redesign .qm-audience>div span { font-size:12px; padding:8px 12px; background:var(--qm-surface); border:1px solid var(--qm-line); border-radius:999px; }
  body.qm-redesign .qm-section { padding:36px 0; }
  body.qm-redesign .qm-landing h2:not(#mobile-more-title) { font-size:26px; line-height:1.25; }
  body.qm-redesign .qm-phone-home h2 { font-size:17px!important; line-height:1.4!important; }
  body.qm-redesign .qm-section-heading { text-align:left; margin-bottom:22px; }
  body.qm-redesign .qm-section-heading>p:last-child { font-size:14px; line-height:1.7; }
  body.qm-redesign .qm-step-grid { gap:10px; }
  body.qm-redesign .qm-step-card { padding:20px; display:grid; grid-template-columns:36px 1fr; column-gap:14px; border-radius:18px; background:var(--qm-surface); }
  body.qm-redesign .qm-step-number { grid-column:1; grid-row:1 / 3; margin:0; font-size:14px; width:34px; height:34px; display:grid; place-items:center; background:var(--qm-card-soft); color:var(--qm-ink); border-radius:11px; }
  body.qm-redesign .qm-step-card h3 { font-size:17px; margin:0 0 7px; }
  body.qm-redesign .qm-step-card>p { grid-column:2; font-size:13px; margin:0; line-height:1.6; min-height:0; }
  body.qm-redesign .qm-step-visual { display:none; }
  body.qm-redesign .qm-feature-row { gap:22px; }
  body.qm-redesign .qm-feature-row+.qm-feature-row { margin-top:45px; }
  body.qm-redesign .qm-feature-visual { border-radius:22px; min-height:260px; }
  body.qm-redesign .qm-use-card { padding:18px; border-radius:18px; min-height:125px; }
  body.qm-redesign .qm-use-card h3 { font-size:15px; line-height:1.4; }
  body.qm-redesign .qm-details-grid { gap:14px; }
  body.qm-redesign .qm-details-grid article { background:var(--qm-surface); padding:20px; border:1px solid var(--qm-line); border-radius:18px; }
  body.qm-redesign .qm-plan-panel { padding:24px; border-radius:22px; gap:22px; }
  body.qm-redesign .ct-reviews-section { padding:36px 0!important; }
  body.qm-redesign .qm-faq-layout { gap:22px; }
  body.qm-redesign .qm-faq-item { background:var(--qm-surface); border:1px solid var(--qm-line); padding:0 16px; border-radius:16px; margin-bottom:10px; }
  body.qm-redesign .qm-faq-item summary { min-height:56px; padding-block:15px; font-size:13px; }
  body.qm-redesign .qm-final-panel { padding:30px 22px; border-radius:22px; }
  body.qm-redesign .qm-footer { background:var(--qm-surface)!important; padding-top:32px; }
  body.qm-redesign .qm-footer-grid { gap:24px; padding-bottom:30px; }
  body.qm-redesign .qm-footer li>a { display:inline-flex; align-items:center; min-height:40px; }
  body.qm-redesign .qm-footer ul { gap:0; }

  /* Workspace: spacious cards and compact, horizontally scrollable shortcuts. */
  body.qm-redesign.page-workspace { background:var(--qm-soft)!important; }
  body.qm-redesign .ws-app-frame { background:var(--qm-soft)!important; min-height:calc(100dvh - var(--phone-dock))!important; height:auto!important; max-height:none!important; overflow:visible!important; }
  body.qm-redesign .main-content-workspace { height:auto!important; max-height:none!important; overflow:visible!important; padding-bottom:0!important; }
  body.qm-redesign .ws-main-canvas { background:transparent!important; padding-bottom:24px!important; height:auto!important; max-height:none!important; overflow:visible!important; }
  body.qm-redesign :is(.ws-mob-dash-hero,.ws-mob-subhead-bar) { background:var(--qm-soft)!important; border:0!important; box-shadow:none!important; padding:24px 20px 18px!important; }
  body.qm-redesign .ws-mob-greeting-sub { color:var(--qm-muted)!important; font-size:12px; font-weight:500; text-transform:none; letter-spacing:0; }
  body.qm-redesign .ws-mob-greeting-title { color:var(--qm-ink)!important; font-size:25px; font-weight:600; max-width:calc(100vw - 112px); }
  body.qm-redesign .ws-mob-avatar-badge { background:var(--qm-primary-bg)!important; color:var(--qm-primary-text); border-color:var(--qm-surface)!important; box-shadow:none; }
  body.qm-redesign .ws-mob-hero-cta { min-height:86px; padding:17px; border-radius:20px; background:var(--qm-primary-bg)!important; box-shadow:none!important; }
  body.qm-redesign :is(.ws-mob-cta-heading,.ws-mob-cta-caption,.ws-mob-cta-icon-box) { color:var(--qm-primary-text)!important; }
  body.qm-redesign .ws-mob-cta-heading { font-size:16px; font-weight:600; }
  body.qm-redesign .ws-mob-cta-caption { white-space:normal; line-height:1.5; opacity:.8; }
  body.qm-redesign .ws-mob-cta-arrow { background:var(--qm-primary-text); color:var(--qm-primary-bg); box-shadow:none; }
  body.qm-redesign .ws-mob-kpi-grid { gap:12px; margin-top:16px; }
  body.qm-redesign .ws-mob-dash-hero .ws-mob-kpi-grid { display:none; }
  body.qm-redesign .ws-kpi-grid-4 { padding:0 20px; margin:0 0 20px; gap:10px; }
  body.qm-redesign .ws-kpi-grid-4 .ws-stat-card { min-height:140px; padding:15px; border-radius:18px; }
  body.qm-redesign .ws-kpi-grid-4 .ws-stat-card-label { font-size:11px; text-transform:none; letter-spacing:0; line-height:1.4; }
  body.qm-redesign .ws-kpi-grid-4 .ws-stat-card-val { font-size:25px; font-weight:600; }
  body.qm-redesign .ws-mob-kpi-card { background:var(--qm-surface)!important; border:1px solid var(--qm-line)!important; border-radius:18px; box-shadow:none; padding:16px; }
  body.qm-redesign .ws-mob-kpi-val { color:var(--qm-ink)!important; font-size:24px; font-weight:600; }
  body.qm-redesign :is(.ws-mob-kpi-sub,.ws-mob-kpi-glyph) { color:var(--qm-muted)!important; }
  body.qm-redesign .ws-mob-quick-actions { gap:8px; padding:16px 0 2px!important; }
  body.qm-redesign .ws-mob-quick-chip { flex:0 0 auto!important; max-width:none; min-height:46px; padding:10px 13px; gap:6px; font-size:12px; font-weight:500; border-radius:14px; background:var(--qm-surface)!important; border:1px solid var(--qm-line)!important; color:var(--qm-ink)!important; box-shadow:none!important; }
  body.qm-redesign .ws-mob-quick-chip span { overflow:visible; text-overflow:clip; }
  body.qm-redesign .ws-mob-quick-chip svg { color:var(--qm-body)!important; }
  body.qm-redesign .ws-mob-quick-chip.ws-chip-primary { background:var(--qm-card-soft)!important; border-color:var(--qm-line)!important; }
  body.qm-redesign .ws-mob-nav-row { min-height:44px; }
  body.qm-redesign .ws-mob-back-btn { width:44px; height:44px; border:1px solid var(--qm-line); background:var(--qm-surface)!important; color:var(--qm-ink)!important; border-radius:14px; }
  body.qm-redesign .ws-mob-view-badge { font:600 20px/1.4 var(--ct-font-display); color:var(--qm-ink)!important; }
  body.qm-redesign :is(.mobile-quote-card,.ws-entity-card,.ws-files-card,.ws-profit-chart-card) { background:var(--qm-surface)!important; border-color:var(--qm-line)!important; border-radius:18px; box-shadow:none!important; }
  body.qm-redesign :is(.mobile-quote-num,.mobile-quote-client,.mobile-quote-amount) { color:var(--qm-ink)!important; }
  body.qm-redesign :is(.mobile-quote-date,.mobile-quote-card-meta) { color:var(--qm-muted)!important; }

  /* Editors reuse their existing guided flow, actions, template and item sheets. */
  body.qm-redesign.page-generator :is(.gen-editor-toolbar-wrap,.mobile-view-mode-bar,.quotation-studio-nav,.housi-subbar) { background:var(--qm-soft)!important; border-color:var(--qm-line)!important; box-shadow:none!important; }
  body.qm-redesign.page-generator .mobile-view-mode-bar { padding:10px 20px!important; }
  body.qm-redesign.page-generator .mobile-view-mode-inner { border-radius:14px; background:var(--qm-card-soft)!important; border-color:var(--qm-line)!important; }
  body.qm-redesign.page-generator .mob-view-tab-btn { min-height:44px; font-size:13px; color:var(--qm-muted)!important; border-radius:10px!important; }
  body.qm-redesign.page-generator .mob-view-tab-btn.active { background:var(--qm-surface)!important; color:var(--qm-ink)!important; box-shadow:0 2px 6px #17191d08!important; }
  body.qm-redesign.page-generator .mob-view-tab-btn :is(span,svg) { color:inherit!important; }
  body.qm-redesign.quotation-studio .studio-steps { border-radius:16px!important; background:var(--qm-surface)!important; border-color:var(--qm-line)!important; gap:4px!important; }
  body.qm-redesign.quotation-studio .studio-steps button { min-height:54px!important; border-radius:11px!important; }
  body.qm-redesign.quotation-studio .studio-steps button.active { background:var(--qm-card-soft)!important; color:var(--qm-ink)!important; }
  body.qm-redesign.quotation-studio .studio-steps button .step-text { color:var(--qm-muted)!important; font-size:11px!important; }
  body.qm-redesign.quotation-studio .studio-steps button.active .step-text { color:var(--qm-ink)!important; }
  body.qm-redesign.quotation-studio .studio-steps button.active .step-badge { background:var(--qm-primary-bg)!important; color:var(--qm-primary-text)!important; }
  body.qm-redesign.page-generator .editor-card { border-radius:18px!important; background:var(--qm-surface)!important; border-color:var(--qm-line)!important; box-shadow:none!important; }
  body.qm-redesign.page-generator .card-header-bar { padding:15px!important; background:var(--qm-surface)!important; border-color:var(--qm-line)!important; }
  body.qm-redesign.page-generator .card-header-bar h2 { color:var(--qm-ink)!important; }
  body.qm-redesign.page-generator button[onclick*='QuotationImporter.openModal'] { min-height:44px; padding:10px 12px; border:1px solid var(--qm-line); border-radius:12px; background:var(--qm-soft); color:var(--qm-ink); font:500 12px/1.4 var(--ct-font-body); }
  /* Keep template choice in its existing sheet instead of crowding every editing step. */
  body.qm-redesign.page-generator.quotation-studio .generator-workspace.form-only-mode #generator-editor #card-template-styling > .card-body-content { display:none!important; }
  body.qm-redesign #generator-editor #card-template-styling .ct-tmpl-chip { display:none!important; }
  body.qm-redesign #generator-editor #card-template-styling .qm-active-tmpl-pill { max-width:90px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; background:var(--qm-soft)!important; color:var(--qm-ink)!important; border-color:var(--qm-line)!important; }
  body.qm-redesign.page-generator.quotation-studio #card-template-styling .qm-tmpl-header-bar { flex-wrap:nowrap!important; gap:8px!important; padding:12px!important; }
  body.qm-redesign.page-generator.quotation-studio #card-template-styling .qm-tmpl-header-left { min-width:0; flex:1; }
  body.qm-redesign.page-generator.quotation-studio #card-template-styling .qm-tmpl-header-right { flex-wrap:wrap!important; justify-content:flex-end; max-width:65%; }
  body.qm-redesign.page-generator.quotation-studio #card-template-styling .mobile-colour-toggle { display:inline-flex!important; align-items:center; min-height:44px; padding:8px; border:1px solid var(--qm-line); border-radius:10px; background:var(--qm-soft); color:var(--qm-ink); font-size:11px; }
  body.qm-redesign.page-generator.quotation-studio #card-template-styling:not(.colours-expanded) .color-swatch-group { display:none!important; }
  body.qm-redesign.page-generator.quotation-studio #card-template-styling.colours-expanded .qm-tmpl-header-bar { flex-wrap:wrap!important; }
  body.qm-redesign.page-generator.quotation-studio #card-template-styling.colours-expanded .qm-tmpl-header-right { max-width:100%; }
  body.qm-redesign.page-generator.quotation-studio #card-template-styling :is(.btn-swatch,.swatch-custom-wrap) { width:32px!important; height:32px!important; }
  body.qm-redesign.page-generator.quotation-studio #card-template-styling .tmpl-strip-gallery-btn { min-height:44px!important; height:auto!important; padding:8px!important; border-radius:10px; background:var(--qm-card-soft)!important; color:var(--qm-ink)!important; border-color:var(--qm-line)!important; font-size:11px!important; }
  body.qm-redesign.page-generator :is(.ws-input,.form-input,.input-group,.form-group) { min-width:0; max-width:100%; }
  body.qm-redesign.page-generator input[type='date'] { min-width:0; width:100%; box-sizing:border-box; padding-inline:8px!important; }
  body.qm-redesign .mobile-item-card { background:var(--qm-surface)!important; border-color:var(--qm-line)!important; border-radius:16px; }
  body.qm-redesign :is(.mobile-item-card-title,.mobile-item-card-total) { color:var(--qm-ink)!important; }
  body.qm-redesign.page-generator :is(.studio-step-footer,#generator-mobile-bar) { background:var(--qm-surface)!important; border-color:var(--qm-line)!important; padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))!important; box-shadow:0 -4px 18px #17191d08!important; }
  body.qm-redesign.page-generator .studio-next { min-height:46px; border-radius:14px; background:var(--qm-primary-bg)!important; color:var(--qm-primary-text)!important; }
  body.qm-redesign.page-generator :is(.studio-back,.studio-position,.mobile-sticky-total-val) { color:var(--qm-ink)!important; }
  body.qm-redesign.page-generator :is(.ct-mob-action-primary,.btn-step-next,.btn-step-finish) { min-height:46px; background:var(--qm-primary-bg)!important; color:var(--qm-primary-text)!important; border-radius:14px; }
  body.qm-redesign.page-proposal-builder .proposal-quick-preview { min-height:46px; background:var(--qm-primary-bg)!important; color:var(--qm-primary-text)!important; border-radius:12px; box-shadow:none; }
  body.qm-redesign.page-generator :is(.mobile-sheet-modal,.mobile-sheet-modal .mobile-sheet-header) { background:var(--qm-surface)!important; color:var(--qm-ink)!important; border-color:var(--qm-line)!important; }
  body.qm-redesign.page-generator .mobile-sheet-modal :is(h2,h3,.mobile-sheet-title,label) { color:var(--qm-ink)!important; }
  body.qm-redesign #mob-templates-sheet-modal { overflow-x:hidden; padding-inline:20px; }
  body.qm-redesign #mob-templates-sheet-modal .mob-templates-grid { grid-template-columns:minmax(0,1fr)!important; gap:10px; }
  body.qm-redesign #mob-templates-sheet-modal .mob-sheet-template-card { width:100%; min-width:0; box-sizing:border-box; padding:14px; border-radius:16px; background:var(--qm-soft)!important; border-color:var(--qm-line)!important; }
  body.qm-redesign #mob-templates-sheet-modal .mob-sheet-template-card.selected { background:var(--qm-card-soft)!important; border-color:var(--qm-accent-ink)!important; box-shadow:none; }
  body.qm-redesign #mob-templates-sheet-modal :is(.mob-card-info,.mob-card-title) { color:var(--qm-ink)!important; }
  body.qm-redesign #mob-templates-sheet-modal .qm-tmpl-filter-tab { min-height:44px; color:var(--qm-body)!important; }
  body.qm-redesign #mob-templates-sheet-modal .qm-tmpl-filter-tab.active { background:var(--qm-card-soft)!important; color:var(--qm-ink)!important; }
  body.qm-redesign .qm-exp-modal-container { max-height:calc(100dvh - 20px)!important; border-radius:24px!important; }
  body.qm-redesign .ct-pricing { padding:28px 20px 40px!important; }
  body.qm-redesign .ct-pricing .pricing-intro h1 { font-size:34px; text-align:left; line-height:1.18; }
  body.qm-redesign .ct-pricing .pricing-intro p { text-align:left; font-size:14px; line-height:1.7; }
  body.qm-redesign .ct-pricing .pricing-reassurance { display:flex; flex-wrap:wrap; justify-content:flex-start; gap:8px 12px; margin-top:18px; font-size:10px; line-height:1.5; color:var(--qm-muted); }
  body.qm-redesign .ct-pricing .price-card { border-radius:22px; }
  body.qm-redesign .pay-card { border-radius:22px; margin:24px 16px; padding:24px; }
  html:is([lang='si'],[lang='ta']) body.qm-redesign .qm-phone-home #qm-phone-title { font-family:inherit; font-size:27px; line-height:1.5; letter-spacing:0; }
  html:is([lang='si'],[lang='ta']) body.qm-redesign .qm-phone-home :is(h2,strong,a) { font-family:inherit; letter-spacing:0; }
  html:is([lang='si'],[lang='ta']) body.qm-redesign .qm-phone-tool { grid-template-columns:1fr; padding:12px; gap:6px; align-content:start; }
  html:is([lang='si'],[lang='ta']) body.qm-redesign .qm-phone-tool-icon { grid-row:auto; }
  html:is([lang='si'],[lang='ta']) body.qm-redesign .qm-phone-dock .mobile-nav-item { font-family:inherit; font-size:9px; line-height:1.5; }
  html:is([lang='si'],[lang='ta']) body.qm-redesign { --phone-dock:calc(84px + env(safe-area-inset-bottom,0px)); }
}
@media screen and (max-width:359px) { body.qm-redesign { --phone-gutter:16px; }.qm-phone-tool { grid-template-columns:1fr; gap:6px; }.qm-phone-tool-icon { grid-row:auto; } }
@media (prefers-reduced-motion:reduce) { .qm-phone-dock,.qm-phone-more { transition:none!important; } }
