.qp-root {
  --qp-ink: #242323;
  --qp-muted: #6f6c6a;
  --qp-paper: #f4f3f1;
  --qp-surface: #fff;
  --qp-line: #ddd9d6;
  --qp-green: #5f6361;
  --qp-green-dark: #353836;
  --qp-green-soft: #eeeeec;
  --qp-red: #d71920;
  --qp-red-dark: #a90f15;
  --qp-red-soft: #fff1ef;
  --qp-gold: #d8d5d2;
  display: block;
  width: 100vw;
  max-width: 100vw !important;
  position: relative;
  left: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  color: var(--qp-ink);
  background: var(--qp-paper);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.4;
}
body.qp-page-active .qp-hidden-page-heading,
body.qp-page-active main > .wp-block-group:first-child:has(.wp-block-post-title),
body.qp-page-active article > header,
body.qp-page-active .wp-block-group:has(> .wp-block-post-title),
body.qp-page-active .entry-header {
  display: none !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body.qp-page-active .wp-block-post-title,
body.qp-page-active .post-edit-link,
body.qp-page-active .edit-link {
  display: none !important;
}
body.qp-page-active .wp-block-post-content,
body.qp-page-active .entry-content,
body.qp-page-active .site-main,
body.qp-page-active main {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
body.qp-page-active .wp-site-blocks > main,
body.qp-page-active main > article,
body.qp-page-active article > .entry-content {
  margin-block-start: 0 !important;
  padding-block-start: 0 !important;
}
body.qp-page-active.ast-theme-transparent-header,
body.qp-page-active {
  overflow-x: hidden;
}
body.qp-page-active #page,
body.qp-page-active .site,
body.qp-page-active .site-content,
body.qp-page-active .content-area,
body.qp-page-active .site-main,
body.qp-page-active .entry-content,
body.qp-page-active .wp-block-post-content,
body.qp-page-active .ast-container,
body.qp-page-active .ast-article-single,
body.qp-page-active .entry-content > .wp-block-group,
body.qp-page-active .entry-content > .wp-block-cover,
body.qp-page-active .entry-content > .wp-block-columns {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.qp-page-active .site-content .ast-container,
body.qp-page-active .ast-container .content-area,
body.qp-page-active .entry-content > *:has(.qp-root) {
  display: block !important;
}
body.qp-page-active .qp-root {
  width: 100vw !important;
  max-width: 100vw !important;
  left: 50% !important;
  right: auto !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}
.qp-root *, .qp-root *::before, .qp-root *::after { box-sizing: border-box; }
.qp-root button, .qp-root input, .qp-root textarea { font: inherit; }
.qp-root button { cursor: pointer; }
.qp-root button:disabled { cursor: not-allowed; opacity: .45; }
.qp-root h1, .qp-root h2, .qp-root h3, .qp-root p { margin-top: 0; }
.qp-loading { padding: 30px; text-align: center; color: var(--qp-muted); }
.qp-app { position: relative; min-height: 720px; overflow: clip; border: 1px solid var(--qp-line); }
.qp-topbar { min-height: 62px; padding: 0 24px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 20px; background: var(--qp-surface); border-bottom: 1px solid var(--qp-line); position: sticky; top: 0; z-index: 30; }
.qp-brand { min-width: 150px; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 2px; }
.qp-brand-logo { width: auto; max-width: 175px; height: 29px; display: block; object-fit: contain; object-position: left center; }
.qp-brand-fallback { color: var(--qp-green); font: 700 16px Arial, sans-serif; letter-spacing: .12em; }
.qp-brand-mark { width: 38px; height: 38px; display: grid; place-items: center; color: #fff; background: var(--qp-green); border-radius: 11px 4px; font: 500 21px Georgia, serif; }
.qp-brand small { display: block; color: var(--qp-muted); font-size: 10px; letter-spacing: .02em; }
.qp-brand small b { color: var(--qp-green); font-size: 9px; letter-spacing: .11em; }
.qp-master-login { justify-self: end; margin: 0; }
.qp-master-login input { width: 92px; min-height: 30px; padding: 4px 8px; background: #f5f5f2; border-color: #e0e1dc; font-size: 11px; text-align: center; }
.qp-master-login input:focus { width: 128px; }
.qp-master-login.is-active input { border-color: #cda7a3; background: #f7eceb; }
.qp-language-switch { display: flex; align-items: center; gap: 2px; padding: 3px; background: #eeeee9; border-radius: 8px; }
.qp-language-switch button { min-width: 30px; min-height: 30px; padding: 4px 6px; color: var(--qp-muted); background: transparent; border: 0; border-radius: 6px; font-size: 10px; font-weight: 700; }
.qp-language-switch button.is-active { color: #fff; background: var(--qp-green); }
.qp-primary-button, .qp-secondary-button { min-height: 38px; padding: 8px 13px; border-radius: 7px; border: 1px solid transparent; font-weight: 600; text-decoration: none; }
.qp-primary-button { color: #fff; background: var(--qp-green); }
.qp-primary-button:hover:not(:disabled) { color: #fff; background: var(--qp-green-dark); }
.qp-secondary-button { color: var(--qp-ink); background: var(--qp-surface); border-color: var(--qp-line); }
.qp-customer-copy-toggle { color: var(--qp-green); border-color: #a9bda9; }
.qp-customer-copy-toggle.is-active { color: #fff; background: var(--qp-green); border-color: var(--qp-green); }
.qp-master-toolbar { min-height: 52px; padding: 8px 24px; display: grid; gap: 8px; background: #17211d; border-bottom: 1px solid #0d1511; }
.qp-master-toolbar-row { min-width: 0; display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.qp-master-toolbar-row-extra { padding-top: 2px; border-top: 1px solid rgba(255,255,255,.08); }
.qp-master-toolbar-side { min-width: 0; display: flex; align-items: center; gap: 14px; }
.qp-master-toolbar-side-left { flex: 1 1 auto; min-width: 0; }
.qp-master-toolbar-side-right { flex: 0 0 auto; margin-left: auto; }
.qp-master-toolbar-side-full { width: 100%; justify-content: flex-end; }
.qp-master-badge { display: flex; align-items: center; gap: 7px; color: #fff; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.qp-master-badge span { color: var(--qp-gold); font-size: 10px; }
.qp-toolbar-separator { color: rgba(255,255,255,.58); font-size: 14px; line-height: 1; }
.qp-toolbar-label { color: #cdd5d1; font-size: 10px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.qp-catalog-type-switch, .qp-dashboard-navigation, .qp-master-price-switch, .qp-data-source-switch, .qp-master-record-actions { display: flex; gap: 4px; }
.qp-catalog-type-switch { flex: 0 0 auto; padding-right: 10px; border-right: 1px solid rgba(255,255,255,.16); }
.qp-dashboard-navigation { flex: 0 0 auto; padding-right: 10px; border-right: 1px solid rgba(255,255,255,.16); }
.qp-catalog-type-switch a, .qp-dashboard-navigation button, .qp-master-price-switch a, .qp-data-source-switch a, .qp-data-source-switch button, .qp-master-record-actions button { min-height: 31px; padding: 6px 10px; color: #cdd5d1; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.14); border-radius: 6px; font-size: 10px; font-weight: 700; text-decoration: none; }
.qp-catalog-type-switch a.is-active, .qp-dashboard-navigation button.is-active, .qp-master-price-switch a.is-active, .qp-data-source-switch .is-active, .qp-master-record-actions button.is-active { color: #fff; background: var(--qp-green); border-color: var(--qp-green); }
.qp-data-source-switch button:disabled { opacity: .72; cursor: wait; }
.qp-data-source-switch .qp-onpage-publish { color: #fff; background: #a92d26; border-color: #cf5a52; }
.qp-data-source-switch .qp-onpage-publish:hover { background: #c0362e; border-color: #e27a73; }
.qp-master-record-actions button:hover { color: #fff; background: rgba(255,255,255,.13); }
.qp-master-record-actions button { position: relative; }
.qp-toolbar-alert { min-width: 15px; height: 15px; margin-left: 5px; display: inline-grid; place-items: center; color: #fff; background: #c42e25; border-radius: 50%; font-size: 8px; line-height: 1; }
.qp-recent-count { min-width: 17px; height: 17px; margin-left: 5px; padding: 0 4px; display: inline-grid; place-items: center; color: #fff; background: var(--qp-red); border-radius: 9px; box-shadow: 0 0 0 1px rgba(255,255,255,.14); font-size: 9px; font-weight: 800; line-height: 1; }
.qp-snapshot-switch { min-width: 118px; display: grid; gap: 1px; color: #cdd5d1; font-size: 7px; text-transform: uppercase; }
.qp-snapshot-switch select { min-height: 31px; max-width: 165px; padding: 4px 6px; color: #fff; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.18); border-radius: 6px; font-size: 9px; }
.qp-language-switch-dark { flex: 0 0 auto; background: rgba(255,255,255,.08); }
.qp-language-switch-dark button { color: #cdd5d1; }
.qp-language-switch-dark button.is-active { color: #fff; background: var(--qp-green); }
.qp-toolbar-button { min-height: 31px; padding: 6px 11px; color: #fff; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.18); border-radius: 6px; font-size: 10px; font-weight: 700; }
.qp-toolbar-button:hover { background: rgba(255,255,255,.14); }
.qp-master-toolbar .qp-customer-copy-toggle { color: #fff; border-color: rgba(255,255,255,.18); }
.qp-master-toolbar .qp-customer-copy-toggle.is-active { color: #fff; background: var(--qp-green); border-color: var(--qp-green); }
.qp-toolbar-send { color: #fff; background: var(--qp-red); border-color: var(--qp-red); }
.qp-toolbar-send:hover { background: var(--qp-red-dark); }
.qp-master-logout { color: #f3d6d2; border-color: rgba(225,145,135,.42); background: rgba(139,48,40,.22); }
.qp-master-logout:hover { color: #fff; background: #8b3028; border-color: #a9473d; }
.qp-client-strip { min-height: 88px; padding: 9px 24px; display: flex; justify-content: flex-end; gap: 10px; align-items: start; background: #eeeee9; border-bottom: 1px solid var(--qp-line); }
.qp-client-strip .qp-client-field, .qp-client-strip .qp-operator-stack { width: 200px; flex: 0 0 200px; }
.qp-client-strip .qp-notes-field { width: 410px; flex: 0 1 410px; }
.qp-operator-stack { min-width: 0; display: grid; gap: 5px; align-content: start; }
.qp-operator-stack label { min-width: 0; }
.qp-client-send { min-width: 145px; min-height: 36px; margin-top: 18px; padding: 7px 11px; align-self: start; color: #fff; background: var(--qp-red); border: 1px solid var(--qp-red); border-radius: 6px; font-size: 10px; font-weight: 700; white-space: nowrap; }
.qp-client-send:hover { background: var(--qp-red-dark); border-color: var(--qp-red-dark); }
.qp-validity { width: 66px; flex: 0 0 66px; margin-top: 1px; }
.qp-customer-copy-inline { justify-self: start; padding: 1px 2px; color: var(--qp-muted); background: transparent; border: 0; border-bottom: 1px solid #afb5ad; border-radius: 0; font-size: 9px; font-weight: 400; line-height: 1.25; }
.qp-customer-copy-inline:hover, .qp-customer-copy-inline.is-active { color: var(--qp-green-dark); border-color: var(--qp-green-dark); }
.qp-client-strip label > span, .qp-client-strip div > span { display: block; margin-bottom: 4px; color: var(--qp-muted); font-size: 10px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.qp-root input, .qp-root textarea { width: 100%; min-height: 36px; padding: 7px 9px; color: var(--qp-ink); background: #fff; border: 1px solid #d5d7d1; border-radius: 7px; outline: none; font-weight: 300; }
.qp-root textarea { min-height: 62px; line-height: 1.25; resize: vertical; }
.qp-root input:focus, .qp-root textarea:focus { border-color: var(--qp-green); box-shadow: 0 0 0 3px rgba(157,48,42,.14); }
.qp-workspace { display: grid; grid-template-columns: minmax(0, 1fr) 380px; }
.qp-app.is-dashboard .qp-workspace { grid-template-columns: minmax(0, 1fr); }
.qp-app.is-dashboard .qp-catalog { padding: 22px 32px 55px; }
.qp-app.is-public .qp-workspace { grid-template-columns: minmax(0, 1fr); }
.qp-app.is-public .qp-catalog { padding-right: 32px; padding-left: 32px; }
.qp-app.is-omni .qp-workspace { grid-template-columns: minmax(0, 1fr); }
.qp-app.is-omni .qp-catalog { padding-right: 32px; padding-left: 32px; }
.qp-app.is-omni .qp-product-grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 610px), 1fr)); }
.qp-app.is-omni .qp-product-card { grid-template-columns: minmax(150px, 34%) minmax(0, 1fr); }
.qp-catalog { min-width: 0; padding: 20px 25px 70px; }
.qp-catalog-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; }
.qp-eyebrow { margin-bottom: 5px !important; color: var(--qp-green); font-size: 10px; line-height: 1.2; font-weight: 700; letter-spacing: .12em; }
.qp-catalog-heading h1 { margin-bottom: 3px; font: 400 clamp(28px, 3vw, 42px) Georgia, serif; letter-spacing: -.02em; }
.qp-catalog-heading > div > p:last-child { margin-bottom: 0; color: var(--qp-muted); font-size: 14px; }
.qp-search { position: relative; flex: 0 1 330px; }
.qp-search > span { position: absolute; left: 12px; top: 7px; z-index: 1; color: var(--qp-muted); font-size: 20px; }
.qp-search input { padding-left: 37px; min-height: 43px; }
.qp-tabs { display: grid; padding: 10px 0 6px; border-bottom: 1px solid var(--qp-line); }
.qp-tab-row { min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr); align-items: center; padding: 3px 0; border-bottom: 1px solid rgba(222,223,217,.7); }
.qp-tab-row:last-child { border-bottom: 0; }
.qp-tab-buttons { min-width: 0; display: flex; gap: 5px; overflow-x: auto; padding: 2px 2px 4px; scrollbar-width: thin; }
.qp-tabs button { flex: 0 0 auto; padding: 8px 13px; color: var(--qp-muted); background: transparent; border: 1px solid transparent; border-radius: 7px; white-space: nowrap; }
.qp-tab-row-1 button { color: var(--qp-green-dark); background: var(--qp-green-soft); border-color: #d4cfcc; font-weight: 700; }
.qp-smart-tabs-separator { flex: 0 0 auto; width: 1px; height: 24px; margin: 4px 8px; background: #aeb7aa; }
.qp-tab-row-1 .qp-smart-tab { color: #8f221d; background: #f7e3e1; border-color: #e2b8b4; letter-spacing: .05em; }
.qp-tab-row-1 .qp-smart-tab:hover { background: #f1d3d0; }
.qp-tab-row-1 .qp-extra-smart-tab { margin-left: 3px; color: var(--qp-green-dark); background: var(--qp-green-soft); border-color: #d4cfcc; }
.qp-tab-row-1 .qp-extra-smart-tab:hover { color: #fff; background: var(--qp-green-dark); }
.qp-tab-row-3 button { padding: 5px 9px; font-size: 10px; }
.qp-tabs button.is-active { color: #fff; background: var(--qp-green); }
.qp-tabs .qp-smart-tab.is-active { color: #fff; background: var(--qp-red); border-color: var(--qp-red); }
.qp-subcategory-nav { margin: 15px 0 5px; padding: 9px 10px; display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 10px; background: #fff; border: 1px solid var(--qp-line); border-radius: 9px; }
.qp-subcategory-nav > span { color: var(--qp-muted); font-size: 9px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; white-space: nowrap; }
.qp-subcategory-nav > div { min-width: 0; display: flex; gap: 5px; overflow-x: auto; padding: 1px 1px 4px; scrollbar-width: thin; scroll-behavior: smooth; }
.qp-subcategory-nav button { flex: 0 0 auto; min-height: 33px; padding: 5px 8px 5px 11px; display: inline-flex; align-items: center; gap: 7px; color: var(--qp-green-dark); background: var(--qp-green-soft); border: 1px solid #d4cfcc; border-radius: 7px; font-size: 10px; font-weight: 700; white-space: nowrap; }
.qp-subcategory-nav button:hover { background: #d5e4d1; border-color: #abc2aa; }
.qp-subcategory-nav button small { min-width: 20px; height: 20px; padding: 0 5px; display: inline-grid; place-items: center; color: var(--qp-muted); background: rgba(255,255,255,.72); border-radius: 10px; font-size: 8px; }
.qp-subcategory-nav button.is-active { color: #fff; background: var(--qp-green); border-color: var(--qp-green); }
.qp-subcategory-nav button.is-active small { color: var(--qp-green-dark); background: #fff; }
.qp-result-line { padding: 14px 0 6px; display: flex; justify-content: space-between; color: var(--qp-muted); font-size: 11px; }
.qp-result-line strong { color: var(--qp-ink); }
.qp-subcategory { margin-top: 20px; }
.qp-subcategory-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; margin-bottom: 10px; padding-bottom: 7px; border-bottom: 1px solid var(--qp-line); }
.qp-subcategory-heading h2 { margin: 0; font: 400 21px Georgia, serif; }
.qp-subcategory-heading span { color: var(--qp-muted); font-size: 10px; }
.qp-product-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 440px), 1fr)); gap: 13px; }
.qp-subcategory.has-more:not(.is-expanded):not(.is-measuring) .qp-product-card.is-after-first-row { display: none; }
.qp-subcategory-toggle { display: block; margin: 13px auto 0; padding: 8px 14px; color: var(--qp-green-dark); background: var(--qp-green-soft); border: 1px solid #d4cfcc; border-radius: 7px; font-size: 11px; font-weight: 700; }
.qp-subcategory-toggle:hover { color: #fff; background: var(--qp-green); border-color: var(--qp-green); }
.qp-subcategory-toggle[hidden] { display: none; }
.qp-product-card { min-height: 230px; overflow: hidden; display: grid; grid-template-columns: minmax(150px, 40%) minmax(0, 1fr); background: var(--qp-surface); border: 1px solid var(--qp-line); border-radius: 11px; transition: transform .18s ease, box-shadow .18s ease; }
.qp-product-card:hover { transform: translateY(-2px); box-shadow: 0 9px 25px rgba(28,40,34,.08); }
.qp-product-card.is-dashboard-focus { border-color: var(--qp-green); box-shadow: 0 0 0 3px rgba(91,115,95,.2), 0 10px 28px rgba(28,40,34,.1); }
.qp-product-image-wrap { min-height: 230px; position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; background: #fff; border-right: 1px solid var(--qp-line); }
.qp-product-image { width: 100%; height: 100%; max-height: 260px; display: block; object-fit: contain; padding: 14px; }
.qp-code-badge { position: absolute; top: 10px; left: 10px; padding: 5px 8px; color: var(--qp-ink); background: rgba(255,255,255,.95); border-radius: 5px; font-size: 12px; font-weight: 800; letter-spacing: .04em; }
.qp-product-content { min-width: 0; min-height: 230px; padding: 18px; display: flex; flex-direction: column; }
.qp-product-content h3 { margin-bottom: 12px; color: var(--qp-ink); font: 300 16px/1.45 Arial, sans-serif; }
.qp-compatible-lines { margin: -4px 0 10px; display: flex; flex-wrap: wrap; gap: 4px; }
.qp-compatible-lines span { padding: 3px 8px; color: #5d6260; background: #eeeeec; border: 1px solid #dededa; border-radius: 4px; font-size: 9px; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; }
.qp-compatible-lines b { margin-left: 4px; color: var(--qp-ink); font-size: 10px; }
.qp-product-measurements { margin: 0 0 12px; display: grid; grid-template-columns: minmax(52px, auto) minmax(0, 1fr); align-items: stretch; color: var(--qp-ink); font-size: 10px; line-height: 1.25; }
.qp-product-measurements.is-inches { margin-top: -8px; color: #566158; }
.qp-measure-secondary { min-width: 0; padding: 3px 9px 3px 0; display: flex; flex-direction: column; justify-content: center; text-align: right; }
.qp-measure-secondary:empty { display: none; }
.qp-measure-secondary > div { display: flex; justify-content: flex-end; gap: 4px; white-space: nowrap; }
.qp-measure-secondary b { font-weight: 700; }
.qp-measure-secondary sup { position: relative; top: -.2em; font-size: .65em; }
.qp-measure-dimensions { min-width: 0; padding-left: 9px; display: grid; gap: 7px; border-left: 1px solid #8a8f88; }
.qp-measure-secondary:empty + .qp-measure-dimensions { grid-column: 1 / -1; }
.qp-dimension-table { min-width: 0; position: relative; display: grid; gap: 2px; }
.qp-dimension-table + .qp-dimension-table { padding-top: 6px; border-top: 1px dotted #cfd2cc; }
.qp-dimension-table > div { min-width: 0; display: grid; grid-template-columns: 13px minmax(0, auto) 1fr; align-items: baseline; column-gap: 3px; }
.qp-dimension-table b { font-size: 11px; font-weight: 800; }
.qp-dimension-table span { min-width: 0; overflow-wrap: anywhere; }
.qp-dimension-table sup { position: relative; top: -.35em; margin-left: 1px; font-size: 7px; line-height: 1; }
.qp-dimension-table.is-inches { color: #566158; }
.qp-product-footer { margin-top: auto; display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.qp-product-footer.is-omni { display: block; }
.qp-product-footer .qp-primary-button { min-height: 34px; padding: 6px 10px; font-size: 12px; }
.qp-product-variants { margin-top: auto; display: grid; border-top: 1px solid var(--qp-line); }
.qp-product-variant { min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; align-items: center; padding: 8px 0; }
.qp-product-variant + .qp-product-variant { border-top: 1px solid #eaebe7; }
.qp-product-variant .qp-primary-button { min-height: 32px; padding: 5px 9px; font-size: 11px; }
.qp-variant-details { min-width: 0; display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: 6px; align-items: baseline; }
.qp-variant-label { color: var(--qp-green); font-size: 10px; font-weight: 700; text-transform: uppercase; }
.qp-variant-code { overflow: hidden; color: var(--qp-ink); font-size: 12px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.qp-variant-details .qp-price { grid-column: 1 / -1; margin-top: 2px; }
.qp-price { font-size: 15px; font-weight: 700; }
.qp-omni-prices { width: 100%; margin-top: auto; display: grid; grid-template-columns: repeat(auto-fit, minmax(92px, 1fr)); gap: 6px; }
.qp-omni-prices span { min-width: 0; padding: 7px 8px; display: grid; gap: 3px; background: #f3f3f0; border: 1px solid #dededa; border-radius: 7px; }
.qp-omni-prices b { color: var(--qp-green); font-size: 8px; line-height: 1; letter-spacing: .08em; }
.qp-omni-prices strong { min-width: 0; color: var(--qp-ink); font-size: clamp(10px, 1.05vw, 13px); line-height: 1.15; font-weight: 800; overflow-wrap: anywhere; white-space: normal; }
.qp-product-variant .qp-omni-prices { grid-column: 1 / -1; margin-top: 4px; }
.qp-vat-note { color: var(--qp-muted); font-size: 9px; }
.qp-empty-search { padding: 50px 15px; text-align: center; color: var(--qp-muted); }
.qp-catalog-error { margin-top: 24px; padding: 24px; color: #7b3129; background: #fff1ef; border: 1px solid #e8c2bd; border-radius: 10px; }
.qp-catalog-error p { margin: 6px 0 0; }
.qp-load-more { display: block; margin: 25px auto 0; padding: 10px 18px; color: var(--qp-green); background: #fff; border: 1px solid var(--qp-green); border-radius: 8px; font-weight: 700; }
.qp-popular-section { margin-top: 20px; padding: 14px; background: #ecefe9; border: 1px solid #d8ddd7; border-radius: 11px; }
.qp-popular-heading h2 { margin: 0 0 10px; font: 400 18px Georgia, serif; }
.qp-popular-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
.qp-popular-card { min-width: 0; min-height: 112px; position: relative; overflow: hidden; display: grid; grid-template-columns: minmax(58px, 38%) minmax(0, 1fr); background: #fff; border: 1px solid var(--qp-line); border-radius: 8px; }
.qp-popular-rank { position: absolute; top: 6px; left: 6px; z-index: 1; width: 20px; height: 20px; display: grid; place-items: center; color: #fff; background: var(--qp-green); border-radius: 50%; font-size: 9px; font-weight: 700; }
.qp-popular-image-wrap { min-width: 0; min-height: 112px; display: grid; place-items: center; background: #fff; border-right: 1px solid #eaebe7; }
.qp-popular-image-wrap img { width: 100%; height: 100%; object-fit: contain; padding: 6px; }
.qp-popular-content { min-width: 0; flex: 1; padding: 9px; display: flex; flex-direction: column; }
.qp-popular-content > strong { color: var(--qp-green); font-size: 11px; }
.qp-popular-content > span { min-height: 32px; margin: 3px 0; overflow: hidden; display: -webkit-box; color: var(--qp-ink); font-size: 10px; line-height: 1.3; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.qp-popular-content > small { color: var(--qp-muted); font-size: 8px; }
.qp-popular-content > div { margin-top: auto; padding-top: 7px; display: flex; align-items: center; justify-content: space-between; gap: 5px; }
.qp-popular-content b { font-size: 11px; }
.qp-popular-content .qp-primary-button { min-height: 27px; padding: 3px 6px; font-size: 9px; }
.qp-catalog-divider { margin: 20px 0 4px; border-top: 1px solid var(--qp-line); }
.qp-smart-line-filters { margin: 18px 0 5px; padding: 10px 12px; display: flex; align-items: center; flex-wrap: wrap; gap: 6px; background: #fff; border: 1px solid var(--qp-line); border-radius: 9px; }
.qp-smart-line-filters > span { margin-right: 4px; color: var(--qp-muted); font-size: 9px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.qp-smart-line-filters button { min-height: 30px; padding: 5px 12px; color: #8f221d; background: #f7e3e1; border: 1px solid #e2b8b4; border-radius: 7px; font-size: 10px; font-weight: 700; }
.qp-smart-line-filters button.is-active { color: #fff; background: var(--qp-red); border-color: var(--qp-red); }
.qp-smart-line { margin-top: 18px; container-type: inline-size; }
.qp-smart-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
@container (max-width: 1020px) {
  .qp-smart-grid { grid-template-columns: minmax(0, 1fr); }
}
.qp-smart-card { min-width: 0; overflow: hidden; display: block; background: var(--qp-surface); border: 1px solid var(--qp-line); border-radius: 12px; transition: transform .18s ease, box-shadow .18s ease; }
.qp-smart-card:hover { transform: translateY(-2px); box-shadow: 0 9px 25px rgba(28,40,34,.08); }
.qp-smart-heading { border-bottom: 1px solid var(--qp-line); }
.qp-smart-media-wrap { min-width: 0; min-height: 300px; position: relative; overflow: hidden; display: grid; place-items: center; background: #f0eeeb; }
.qp-smart-slideshow { width: 100%; height: 100%; position: relative; }
.qp-smart-slides { width: 100%; height: 100%; }
.qp-smart-media { width: 100%; height: 100%; max-height: 430px; display: block; object-fit: contain; padding: 8px; background: #fff; }
.qp-smart-slide[hidden] { display: none; }
.qp-smart-nav { width: 38px; height: 38px; padding: 0; position: absolute; top: 50%; z-index: 2; display: grid; place-items: center; color: var(--qp-red); background: #fff; border: 1px solid var(--qp-red); border-radius: 10px; transform: translateY(-50%); font: 400 23px/1 Arial, sans-serif; cursor: pointer; }
.qp-smart-nav:hover { color: #fff; background: var(--qp-red); }
.qp-smart-nav-prev { left: 12px; }
.qp-smart-nav-next { right: 12px; }
.qp-smart-media-counter { padding: 6px 9px; position: absolute; right: 12px; bottom: 12px; z-index: 2; color: #fff; background: rgba(38,42,41,.76); border-radius: 8px; font: 600 11px/1 Arial, sans-serif; }
.qp-smart-placeholder { color: var(--qp-muted); font: 700 16px Arial, sans-serif; letter-spacing: .14em; }
.qp-smart-title-overlay { position: absolute; top: 14px; left: 14px; max-width: calc(100% - 28px); padding: 9px 13px; color: #6f7571; background: #fff; border: 1px solid var(--qp-red); border-radius: 7px; box-shadow: 0 4px 16px rgba(0,0,0,.12); }
.qp-smart-title-overlay p { margin: 0 0 2px; font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; opacity: .82; }
.qp-smart-title-overlay h3 { margin: 0; color: #6f7571; font: 700 23px/1.1 Arial, Helvetica, sans-serif; letter-spacing: .03em; text-transform: uppercase; }
.qp-smart-content { min-width: 0; padding: 15px 16px; border-bottom: 1px solid var(--qp-line); }
.qp-smart-included { display: grid; gap: 11px; }
.qp-smart-included section { min-width: 0; }
.qp-smart-included h4 { margin: 0 0 4px; color: var(--qp-red); font-size: 9px; letter-spacing: .07em; text-transform: uppercase; }
.qp-smart-common-box { padding: 10px 11px; color: var(--qp-ink); background: #f8ecea; border: 1px solid #e4c7c3; border-radius: 8px; }
.qp-smart-common-box h4 { color: #8f221d; }
.qp-smart-common-box li span { color: #6e4a46; }
.qp-smart-common-box li small { color: #8f221d; }
.qp-smart-variant-group { padding: 9px 10px 10px; border: 1px solid #ead0cc; border-radius: 8px; }
.qp-smart-variant-group.is-surface { background: #fcf3f2; }
.qp-smart-variant-group.is-structure { background: #f8efee; border-color: #e4c7c3; }
.qp-smart-variant-group > h4 { margin-bottom: 7px; font-size: 10px; }
.qp-smart-variant-options { display: grid; grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)); gap: 7px; }
.qp-smart-variant-options > section { padding: 7px 8px; background: rgba(255,255,255,.8); border: 1px solid rgba(93,82,76,.15); border-radius: 6px; }
.qp-smart-variant-options h5 { margin: 0 0 4px; color: var(--qp-ink); font-size: 10px; line-height: 1.2; text-transform: uppercase; }
.qp-smart-included ul { margin: 0; padding: 0; list-style: none; }
.qp-smart-included li { padding: 3px 0; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: baseline; gap: 5px; border-bottom: 1px dotted #e3ddd9; font-size: 10px; line-height: 1.3; }
.qp-smart-included li strong { color: var(--qp-ink); }
.qp-smart-included li span { min-width: 0; color: var(--qp-muted); }
.qp-smart-included li small { color: var(--qp-red); white-space: nowrap; }
.qp-smart-price-note { margin-top: 13px; padding: 10px 11px; color: #5f5555; background: #faf7f7; border-left: 3px solid var(--qp-red); border-radius: 0 6px 6px 0; font-size: 10px; line-height: 1.4; }
.qp-smart-price-note p { margin: 0 0 3px; }
.qp-smart-price-note p:last-child { margin-bottom: 0; }
.qp-smart-price-note strong { color: var(--qp-ink); }
.qp-smart-led-note { margin: 0 16px 12px; padding: 9px 11px; display: grid; gap: 2px; color: #5b2926; background: #f4eae9; border: 1px solid #ddc5c2; border-radius: 6px; font-size: 10px; line-height: 1.4; }
.qp-smart-led-note strong { color: #8f221d; }
.qp-smart-pricing { padding: 13px 16px 15px; border-bottom: 1px solid var(--qp-line); }
.qp-smart-more { background: #fff; }
.qp-smart-more > summary { min-height: 39px; padding: 8px 16px; display: flex; align-items: center; justify-content: space-between; gap: 10px; color: #8f221d; background: #fbf1f0; border: 0; cursor: pointer; font-size: 10px; font-weight: 700; letter-spacing: .04em; list-style: none; }
.qp-smart-more > summary::-webkit-details-marker { display: none; }
.qp-smart-more > summary::after { content: "+"; width: 21px; height: 21px; display: grid; place-items: center; color: #fff; background: var(--qp-red); border-radius: 50%; font-size: 15px; line-height: 1; }
.qp-smart-more[open] > summary::after { content: "−"; }
.qp-smart-more-open { display: none; }
.qp-smart-more[open] .qp-smart-more-closed { display: none; }
.qp-smart-more[open] .qp-smart-more-open { display: inline; }
.qp-smart-more-body { animation: qp-smart-reveal .18s ease-out; }
@keyframes qp-smart-reveal {
  from { opacity: 0; transform: translateY(-5px); }
  to { opacity: 1; transform: translateY(0); }
}
.qp-smart-warning { margin: 0 0 10px; padding: 7px 9px; color: #7b3129; background: #fff1ef; border-radius: 6px; font-size: 10px; }
.qp-smart-footer { min-height: 52px; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.qp-smart-price { font-size: 19px; }
.qp-smart-add { min-height: 34px; padding: 6px 10px; font-size: 11px; }
.qp-smart-matrix-wrap { max-width: 100%; overflow-x: auto; background: #fff; display: inline-block; vertical-align: top; }
.qp-smart-matrix-wrap table { width: auto; min-width: 0; border-collapse: separate; border-spacing: 4px; table-layout: fixed; }
.qp-smart-matrix-wrap col.qp-smart-matrix-axis-col { width: 182px; }
.qp-smart-matrix-wrap col.qp-smart-matrix-price-col { width: 124px; }
.qp-smart-matrix-wrap th { padding: 7px 8px; color: #8f221d; background: #f8ecea; border-radius: 6px; font-size: 12px; line-height: 1.2; text-align: center; text-transform: uppercase; }
.qp-smart-matrix-wrap thead th:first-child { text-align: left; }
.qp-smart-matrix-wrap thead th:first-child span, .qp-smart-matrix-wrap thead th:first-child small { display: block; }
.qp-smart-matrix-wrap thead th:first-child small { margin-top: 3px; color: var(--qp-muted); font-size: 10px; font-weight: 600; }
.qp-smart-matrix-wrap tbody th { width: 23%; color: #8f221d; background: #f8ecea; text-align: left; }
.qp-smart-matrix-wrap td { padding: 0; text-align: center; }
.qp-smart-matrix-wrap td button { width: 100%; min-height: 43px; padding: 5px 4px; color: var(--qp-ink); background: #fff; border: 1px solid #cfd3cd; border-radius: 6px; transition: transform .15s ease, background .15s ease, color .15s ease, border-color .15s ease; }
.qp-smart-matrix-wrap td button:hover:not(:disabled) { transform: translateY(-1px); color: #fff; background: var(--qp-red); border-color: var(--qp-red); }
.qp-smart-matrix-wrap td button strong, .qp-smart-matrix-wrap td button small { display: block; }
.qp-smart-matrix-wrap td button strong { font: 600 13px Arial, sans-serif; }
.qp-smart-matrix-wrap td button small { margin-top: 2px; font-size: 8px; opacity: .78; }
.qp-smart-matrix-wrap td button:disabled { color: #8b928e; background: #eceeeb; border-color: #d9ddd9; }
.qp-smart-matrix-public { min-height: 43px; display: grid; place-items: center; color: var(--qp-muted); background: #f1f2ef; border-radius: 6px; font: 600 10px Arial, sans-serif; }
.qp-smart-accessories { padding: 14px 16px 16px; border-top: 1px solid var(--qp-line); background: #fbf1f0; }
.qp-smart-accessories > h4 { margin: 0 0 8px; color: var(--qp-red); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.qp-smart-accessory-list ul { margin: 0; padding: 0; list-style: none; }
.qp-smart-accessory-list li { padding: 3px 0; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: baseline; gap: 5px; border-bottom: 1px dotted #cddac9; font-size: 10px; line-height: 1.3; }
.qp-smart-accessory-list li strong { color: var(--qp-ink); }
.qp-smart-accessory-list li span { color: var(--qp-muted); }
.qp-smart-accessory-list li small { color: var(--qp-red); white-space: nowrap; }
.qp-smart-accessory-total { margin-top: 11px; display: flex; align-items: center; justify-content: flex-end; gap: 12px; }
.qp-smart-accessory-total > strong { font: 400 17px Georgia, serif; white-space: nowrap; }
.qp-smart-accessory-total .qp-primary-button { min-height: 31px; padding: 5px 9px; font-size: 9px; }
.qp-quote-panel { align-self: start; position: sticky; top: 70px; height: calc(100vh - 70px); min-height: 620px; display: flex; flex-direction: column; background: var(--qp-surface); border-left: 1px solid var(--qp-line); box-shadow: -8px 0 25px rgba(25,35,30,.035); z-index: 20; }
.qp-quote-header { flex: 0 0 auto; min-height: 0; padding: 19px 20px 14px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: start; gap: 10px; border-bottom: 1px solid var(--qp-line); }
.qp-quote-header-main { min-width: 0; }
.qp-quote-header h2 { margin: 0; font: 400 24px Georgia, serif; }
.qp-quote-heading-row { display: flex; align-items: center; gap: 8px; }
.qp-quote-module-strip { max-width: 270px; display: flex; gap: 4px; margin: 7px 0 8px; padding-bottom: 2px; overflow-x: auto; scrollbar-width: thin; }
.qp-quote-module-card { width: 37px; height: 37px; flex: 0 0 37px; display: grid; place-items: center; overflow: hidden; background: #f6f7f4; border: 1px solid #e0e3de; border-radius: 4px; }
.qp-quote-module-card img { width: 100%; height: 100%; display: block; object-fit: contain; padding: 2px; }
.qp-quote-module-card span { padding: 3px; color: var(--qp-muted); font-size: 8px; font-weight: 700; line-height: 1.1; text-align: center; overflow-wrap: anywhere; }
.qp-clear-draft-top { width: auto; min-width: 0; min-height: 22px; height: 22px; margin: 0; padding: 0 7px; display: inline-flex; align-items: center; justify-content: center; color: #9a443b; background: #f7efed; border: 1px solid #ead5d1; border-radius: 5px; font-size: 8px; font-weight: 700; line-height: 1; white-space: nowrap; }
.qp-count { padding: 5px 8px; color: var(--qp-green); background: var(--qp-green-soft); border-radius: 7px; font-size: 10px; font-weight: 700; }
.qp-quote-smart-origin { margin: 0 20px 10px; padding: 7px 9px; display: flex; gap: 7px; align-items: baseline; color: #31433a; background: var(--qp-green-soft); border-radius: 5px; font-size: 10px; line-height: 1.3; }
.qp-quote-smart-origin strong { color: var(--qp-green); font-size: 9px; letter-spacing: .08em; }
.qp-close { display: none; }
.qp-lines { flex: 0 1 auto; min-height: 0; max-height: calc(100vh - 330px); overflow-y: auto; }
.qp-empty-quote { min-height: 160px; padding: 28px 25px; display: flex; flex-direction: column; align-items: center; justify-content: center; color: var(--qp-muted); text-align: center; }
.qp-empty-quote > span { width: 44px; height: 44px; display: grid; place-items: center; margin-bottom: 11px; color: var(--qp-green); background: var(--qp-green-soft); border-radius: 9px; font-size: 23px; }
.qp-empty-quote strong { color: var(--qp-ink); }
.qp-empty-quote p { margin: 5px 0 0; font-size: 11px; }
.qp-line { padding: 15px 18px; border-bottom: 1px solid #eaebe7; }
.qp-quote-line-group + .qp-quote-line-group { border-top: 7px solid #f1f2ee; }
.qp-quote-line-group > h3 { margin: 0; padding: 7px 18px 6px; color: var(--qp-muted); background: #f7f7f5; border-bottom: 1px solid #e4e5e1; font: 800 8px/1.25 Arial, sans-serif; letter-spacing: .08em; text-transform: uppercase; }
.qp-line-heading { display: grid; grid-template-columns: 42px minmax(0, 1fr) auto; align-items: start; gap: 8px; }
.qp-line-thumb { width: 42px; height: 42px; overflow: hidden; display: grid; place-items: center; background: #fff; border: 1px solid #e3e5e0; border-radius: 6px; }
.qp-line-thumb img { width: 100%; height: 100%; display: block; object-fit: contain; padding: 3px; }
.qp-line-copy { min-width: 0; }
.qp-line-heading strong, .qp-line-heading span { display: block; }
.qp-line-heading strong { font-size: 11px; line-height: 1.35; }
.qp-line-heading span { margin-top: 3px; color: var(--qp-muted); font-size: 10px; font-weight: 300; line-height: 1.35; }
.qp-line-heading button, .qp-extra-line button { padding: 0 3px; color: #9a655c; background: none; border: 0; font-size: 18px; }
.qp-line-actions { display: grid; grid-template-columns: repeat(3, 23px); align-items: start; gap: 2px; }
.qp-line-actions.is-remove-only { grid-template-columns: 23px; }
.qp-line-actions button { width: 23px; height: 23px; display: grid; place-items: center; color: var(--qp-green-dark); background: #eef2ec; border: 1px solid #d6ddd3; border-radius: 5px; font-size: 13px; line-height: 1; }
.qp-line-actions button:hover:not(:disabled) { color: #fff; background: var(--qp-green); border-color: var(--qp-green); }
.qp-line-actions button:disabled { opacity: .28; cursor: default; }
.qp-line-actions .qp-remove-line { color: #9a443b; background: #f7efed; border-color: #ead5d1; font-size: 17px; }
.qp-special-line { margin: 6px 0 0 50px; }
.qp-line .qp-special-toggle { min-height: 0; padding: 0 1px; display: inline-flex; align-items: center; gap: 4px; color: var(--qp-red); background: transparent; border: 0; border-bottom: 1px solid rgba(225, 23, 35, .34); border-radius: 0; font-size: 10px; font-weight: 300; line-height: 1.35; opacity: 1; text-transform: none; letter-spacing: 0; }
.qp-line .qp-special-toggle span { font-size: 9px; line-height: 1; }
.qp-special-toggle:hover { color: #9e141b; background: transparent; border-color: rgba(225, 23, 35, .75); }
.qp-special-toggle.is-active { color: var(--qp-red); background: transparent; border-color: rgba(225, 23, 35, .75); font-weight: 400; }
.qp-special-summary { margin-top: 3px; padding: 4px 6px; display: grid; gap: 1px; color: #665552; background: #faf6f4; border-left: 2px solid #9a655c; border-radius: 4px; font-size: 7px; }
.qp-special-summary strong { color: var(--qp-ink); font-size: 8px; }
.qp-special-form { margin-top: 5px; padding: 6px; background: #f8f5f2; border: 1px solid #dfd5cf; border-radius: 7px; font-size: 8px; }
.qp-special-standard { margin: 0 0 4px; color: var(--qp-muted); font-size: 6px; line-height: 1.3; }
.qp-special-dimensions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; }
.qp-special-dimensions label span { display: block; margin-bottom: 2px; color: var(--qp-muted); font-size: 6px; }
.qp-special-dimensions input { min-height: 26px; padding: 3px 5px; font-size: 8px; }
.qp-special-dimensions .qp-special-discount { grid-column: 1 / -1; }
.qp-special-actions { margin-top: 7px; display: flex; gap: 5px; }
.qp-special-actions button { min-height: 25px; padding: 3px 6px; border-radius: 7px; font-size: 7px; }
.qp-line-controls { display: grid; grid-template-columns: 96px 70px minmax(0, 1fr); gap: 8px; align-items: end; margin-top: 11px; }
.qp-line-controls label span, .qp-line-controls > div span { display: block; margin-bottom: 3px; color: var(--qp-muted); font-size: 9px; }
.qp-line-controls input { min-height: 32px; padding: 4px 6px; font-weight: 300; }
.qp-line-controls > div { text-align: right; }
.qp-line-controls > div strong { display: block; font-size: 13px; }
.qp-line-fixed-quantity { padding-bottom: 7px; text-align: left !important; }
.qp-line-fixed-quantity strong { font-size: 12px !important; }
.qp-line-price-breakdown span { display: block; margin-bottom: 2px; font-size: 8px; line-height: 1.2; }
.qp-extra-line { padding: 12px 18px; display: flex; justify-content: space-between; gap: 8px; background: #f7f6f2; border-bottom: 1px solid var(--qp-line); font-size: 11px; }
.qp-extra-line small, .qp-extra-line strong { display: block; }
.qp-extra-line small { color: var(--qp-muted); text-transform: uppercase; }
.qp-extra-line > div:last-child { display: flex; align-items: center; gap: 7px; }
.qp-extra-section { padding: 12px 18px; border-top: 1px solid var(--qp-line); }
.qp-add-extra { width: 100%; padding: 8px; color: var(--qp-green); background: transparent; border: 1px dashed #a9bda9; border-radius: 7px; font-size: 11px; font-weight: 700; }
.qp-extra-form { display: grid; gap: 6px; }
.qp-extra-form > div { display: grid; grid-template-columns: 1fr auto; gap: 6px; }
.qp-extra-form input, .qp-extra-form button { min-height: 35px; }
.qp-totals { padding: 14px 18px 18px; border-top: 1px solid var(--qp-line); background: #fafaf8; }
.qp-totals > div { display: flex; justify-content: space-between; margin-bottom: 7px; color: var(--qp-muted); font-size: 11px; }
.qp-totals > div strong { color: var(--qp-ink); }
.qp-totals .qp-subtotal { margin-bottom: 10px; }
.qp-global-discount { align-items: flex-end; }
.qp-global-discount label { display: flex; align-items: center; gap: 8px; }
.qp-global-discount label span { color: var(--qp-muted); }
.qp-global-discount input { width: 64px; min-height: 32px; padding: 5px 7px; color: var(--qp-ink); background: #fff; border: 1px solid var(--qp-line); border-radius: 6px; font: 300 12px Arial, sans-serif; text-align: right; }
.qp-totals .qp-grand-total { margin: 12px 0 13px; padding-top: 12px; align-items: flex-end; color: var(--qp-ink); border-top: 1px solid var(--qp-line); font-weight: 700; }
.qp-grand-total strong { font: 400 23px Georgia, serif; }
/* Astra's page-top control must remain outside the fixed quote summary on desktop. */
body.qp-page-active .ast-scroll-to-top-right,
body.qp-page-active #ast-scroll-top,
body.qp-page-active .ast-scroll-to-top {
  right: 396px !important;
  bottom: 20px !important;
  z-index: 19 !important;
}
.qp-clear-draft:not(.qp-clear-draft-top) { width: 100%; padding: 7px 10px; color: #7a3630; background: transparent; border: 1px solid #d9c4c0; border-radius: 7px; font-size: 10px; font-weight: 700; }
.qp-clear-draft:not(.qp-clear-draft-top):hover { color: #fff; background: #8b3028; border-color: #8b3028; }
.qp-clear-draft-top:hover { color: #fff; background: var(--qp-red); border-color: var(--qp-red); }
.qp-full { width: 100%; }
.qp-notice { position: fixed; left: 50%; bottom: 22px; z-index: 100000; transform: translateX(-50%); padding: 10px 16px; color: #fff; background: var(--qp-ink); border-radius: 8px; box-shadow: 0 8px 25px rgba(0,0,0,.2); font-size: 12px; }
.qp-notice.is-error { background: #8b3028; }
.qp-resume-layer { position: fixed; inset: 0; z-index: 100010; padding: 20px; display: grid; place-items: center; background: rgba(17,25,21,.55); }
.qp-resume-layer[hidden] { display: none; }
.qp-resume-dialog { width: min(100%, 470px); padding: 28px; background: #fff; border-radius: 13px; box-shadow: 0 24px 70px rgba(0,0,0,.25); }
.qp-resume-dialog h2 { margin: 0 0 8px; font: 400 31px Georgia, serif; }
.qp-resume-dialog > p:not(.qp-eyebrow) { color: var(--qp-muted); font-size: 13px; }
.qp-resume-dialog input { width: 100%; min-height: 39px; margin-top: 14px; padding: 7px 10px; color: var(--qp-ink); background: #fff; border: 1px solid var(--qp-line); border-radius: 7px; font: 300 13px Arial, sans-serif; }
.qp-resume-error { display: block; margin-top: 8px; color: var(--qp-red); font-size: 11px; }
.qp-resume-dialog.is-message { text-align: center; border-top: 4px solid var(--qp-red); }
.qp-resume-dialog.is-message .qp-resume-actions { grid-template-columns: 1fr; }
.qp-resume-actions { margin: 20px 0 12px; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.qp-resume-dialog > small { display: block; color: var(--qp-muted); font-size: 10px; line-height: 1.45; }
.qp-led-choice-layer { position: fixed; inset: 0; z-index: 100020; padding: 20px; display: grid; place-items: center; }
.qp-led-choice-backdrop { position: absolute; inset: 0; width: 100%; height: 100%; padding: 0; background: rgba(17,25,21,.58); border: 0; }
.qp-led-choice-dialog { width: min(100%, 500px); position: relative; padding: 28px; color: var(--qp-ink); background: #fff; border-radius: 13px; box-shadow: 0 24px 70px rgba(0,0,0,.28); }
.qp-led-choice-dialog h2 { margin: 0 0 8px; font: 400 31px Georgia, serif; }
.qp-led-choice-dialog > p:not(.qp-eyebrow) { margin: 0; color: var(--qp-muted); font-size: 13px; line-height: 1.45; }
.qp-led-choice-actions { margin: 22px 0 13px; display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.qp-led-choice-actions button { min-height: 44px; }
.qp-led-choice-cancel { width: 100%; padding: 5px; color: var(--qp-muted); background: transparent; border: 0; font-size: 11px; }
.qp-mobile-cart, .qp-backdrop { display: none; }
.qp-backdrop[hidden] { display: none !important; }
.qp-app.is-master-records .qp-workspace { grid-template-columns: minmax(0, 1fr); }
.qp-dashboard { width: 100%; max-width: 1540px; margin: 0 auto; }
.qp-dashboard-hero { min-height: 200px; padding: clamp(25px, 4vw, 52px); position: relative; overflow: hidden; display: flex; align-items: center; color: var(--qp-ink); background: linear-gradient(125deg, #f3f2f0 0%, #e8e6e4 66%, #dcd9d6 100%); border: 1px solid #d3cfcc; border-radius: 14px; }
.qp-dashboard-hero::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 6px; background: var(--qp-red); }
.qp-dashboard-hero-copy { max-width: 920px; position: relative; z-index: 1; }
.qp-dashboard-hero h1 { margin-bottom: 10px; font: 400 clamp(31px, 4vw, 52px)/1.05 Georgia, serif; letter-spacing: -.025em; }
.qp-dashboard-hero p:not(.qp-eyebrow) { margin: 0; color: #595654; font-size: 14px; line-height: 1.65; }
.qp-dashboard-hero .qp-primary-button { min-height: 43px; margin-top: 22px; }
.qp-dashboard-features { margin-top: 18px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.qp-dashboard-feature { min-height: 132px; padding: 20px; position: relative; overflow: hidden; display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 14px; color: var(--qp-ink); background: #fff; border: 1px solid var(--qp-line); border-radius: 12px; font-family: Arial, sans-serif; text-align: left; transition: transform .18s ease, box-shadow .18s ease; }
.qp-dashboard-feature:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(45,38,34,.08); }
.qp-dashboard-feature-mark { display: flex; flex-direction: column; align-items: center; gap: 8px; }
.qp-dashboard-feature-mark small { color: var(--qp-muted); font-size: 8px; font-weight: 700; letter-spacing: .08em; }
.qp-dashboard-feature-mark b { width: 38px; height: 38px; display: grid; place-items: center; color: var(--qp-green); background: #f0eeec; border-radius: 50%; font-size: 17px; }
.qp-dashboard-feature h3 { margin: 0 0 7px; font: 400 20px Georgia, serif; }
.qp-dashboard-feature p { margin: 0; color: var(--qp-muted); font-size: 10px; line-height: 1.55; }
.qp-dashboard-feature.is-smart { padding-right: 52px; color: #fff !important; background: var(--qp-red); border-color: var(--qp-red); cursor: pointer; }
.qp-dashboard-feature.is-smart h3 { color: #fff !important; }
.qp-dashboard-feature.is-smart .qp-dashboard-feature-mark small, .qp-dashboard-feature.is-smart p { color: rgba(255,255,255,.86) !important; }
.qp-dashboard-feature.is-smart .qp-dashboard-feature-mark b { color: var(--qp-green); background: #fff; }
.qp-dashboard-feature-arrow { position: absolute; right: 18px; bottom: 17px; width: 28px; height: 28px; display: grid; place-items: center; color: var(--qp-green); background: #fff; border-radius: 50%; font-size: 16px; }
.qp-dashboard-grid { margin-top: 18px; display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(300px, .75fr); gap: 18px; align-items: start; }
.qp-dashboard-grid.is-public { grid-template-columns: 1fr; }
.qp-dashboard-panel { min-width: 0; overflow: hidden; background: #fff; border: 1px solid var(--qp-line); border-radius: 12px; }
.qp-dashboard-guide { margin-top: 18px; overflow: visible; }
.qp-guide-grid { padding: 18px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .8fr); gap: 18px; border-top: 1px solid #ecece7; }
.qp-guide-grid article { padding: 15px; background: #f7f6f4; border: 1px solid #e3dfdc; border-radius: 10px; }
.qp-guide-grid h3 { margin: 0 0 10px; font: 700 13px/1.3 Arial, sans-serif; letter-spacing: .03em; text-transform: uppercase; }
.qp-guide-grid p, .qp-guide-grid li { color: var(--qp-muted); font-size: 10px; line-height: 1.55; }
.qp-guide-grid ul { margin: 0; padding-left: 17px; }
.qp-guide-grid li + li { margin-top: 5px; }
.qp-guide-grid code, .qp-access-link-card code { padding: 2px 5px; color: var(--qp-ink); background: #fff; border: 1px solid #ddd8d4; border-radius: 5px; font-size: 9px; }
.qp-access-url { display: block; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.qp-agent-rules { margin-top: 10px !important; list-style: none; padding-left: 0 !important; }
.qp-agent-rules li { display: flex; gap: 8px; align-items: flex-start; }
.qp-access-heading { border-top: 1px solid #ecece7; }
.qp-access-link-list { padding: 0 18px 18px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.qp-access-link-card { min-width: 0; padding: 12px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: center; background: #fff; border: 1px solid #e3dfdc; border-radius: 10px; }
.qp-access-link-card h3 { margin: 0 0 4px; font: 700 12px/1.25 Arial, sans-serif; }
.qp-access-link-card p { margin: 0 0 7px; color: var(--qp-muted); font-size: 9px; line-height: 1.4; }
.qp-access-link-card a { padding: 8px 10px; color: #fff; background: var(--qp-ink); border-radius: 7px; font-size: 9px; font-weight: 800; text-decoration: none; white-space: nowrap; }
.qp-access-link-card a:hover { background: var(--qp-red); }
.qp-izzy-hero { background: linear-gradient(135deg, #f3f0ec 0%, #fff 58%, #f8e7e6 100%); }
.qp-izzy-says { max-width: 760px; margin: 16px 0 18px; padding: 14px 16px; background: #fff; border: 1px solid #ead8d4; border-left: 4px solid var(--qp-red); border-radius: 10px; box-shadow: 0 10px 24px rgba(45,38,34,.05); }
.qp-izzy-says span { display: block; margin-bottom: 5px; color: var(--qp-red); font-size: 9px; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.qp-izzy-says p { margin: 0 !important; color: var(--qp-ink); font-size: 14px !important; line-height: 1.45 !important; }
.qp-access-groups { padding: 0 18px 18px; display: grid; gap: 14px; }
.qp-public-brand-panel { margin-top: 18px; }
.qp-public-brand-grid { padding: 0 18px 18px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.qp-public-brand-card { display: block; padding: 18px; color: var(--qp-ink); background: #fff; border: 1px solid #e3dfdc; border-radius: 12px; text-decoration: none; box-shadow: 0 8px 22px rgba(45,38,34,.05); transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease; }
.qp-public-brand-card:hover { transform: translateY(-1px); border-color: #c8b8b3; box-shadow: 0 12px 28px rgba(45,38,34,.08); }
.qp-public-brand-card strong { display: block; margin-bottom: 6px; font-size: 20px; letter-spacing: .04em; }
.qp-public-brand-card span { display: block; color: #595654; font-size: 14px; }
.qp-public-brand-card small { display: inline-block; margin-top: 12px; color: var(--qp-red); font-size: 11px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.qp-access-price-group { padding: 14px; background: #f7f6f4; border: 1px solid #e3dfdc; border-radius: 10px; }
.qp-access-price-group > h3 { margin: 0 0 11px; color: var(--qp-ink); font: 700 13px/1.2 Arial, sans-serif; letter-spacing: .04em; text-transform: uppercase; }
.qp-access-language-group + .qp-access-language-group { margin-top: 12px; }
.qp-access-language-group h4 { margin: 0 0 7px; color: var(--qp-muted); font: 800 9px/1 Arial, sans-serif; letter-spacing: .08em; text-transform: uppercase; }
.qp-access-link-card button { padding: 8px 10px; color: #fff; background: var(--qp-ink); border: 0; border-radius: 7px; font-size: 9px; font-weight: 800; white-space: nowrap; }
.qp-access-link-card button:hover { background: var(--qp-red); }
.qp-dashboard-section-heading { min-height: 78px; padding: 17px 19px 14px; display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; border-bottom: 1px solid var(--qp-line); }
.qp-dashboard-section-heading h2 { margin: 0 0 3px; font: 400 23px Georgia, serif; }
.qp-dashboard-section-heading p { margin: 0; color: var(--qp-muted); font-size: 11px; }
.qp-dashboard-section-heading > span { min-width: 28px; height: 28px; display: grid; place-items: center; color: var(--qp-green-dark); background: var(--qp-green-soft); border-radius: 50%; font-size: 10px; font-weight: 800; }
.qp-dashboard-table-wrap { width: 100%; overflow-x: auto; }
.qp-dashboard table { width: 100%; border-collapse: collapse; table-layout: auto; }
.qp-dashboard th { padding: 8px 10px; color: var(--qp-muted); background: #f5f6f2; border-bottom: 1px solid var(--qp-line); font-size: 8px; letter-spacing: .07em; text-align: left; text-transform: uppercase; white-space: nowrap; }
.qp-dashboard td { padding: 9px 10px; border-bottom: 1px solid #ecece7; font-size: 10px; vertical-align: middle; }
.qp-dashboard tbody tr:last-child td { border-bottom: 0; }
.qp-dashboard td:first-child { width: 88px; color: var(--qp-muted); white-space: nowrap; }
.qp-dashboard td:nth-child(2) { min-width: 155px; }
.qp-dashboard td:nth-child(3) { width: 90px; }
.qp-dashboard-code { padding: 2px 4px; color: var(--qp-green-dark); background: transparent; border: 0; border-bottom: 1px solid #9fb29f; font-size: 10px; font-weight: 800; letter-spacing: .035em; }
.qp-dashboard-code:hover { color: #fff; background: var(--qp-green); border-color: var(--qp-green); border-radius: 4px; }
.qp-dashboard-code.is-removed { color: #8b7772; border-bottom: 0; text-decoration: line-through; }
.qp-update-cell { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.qp-history-hide { width: 20px; height: 20px; padding: 0; flex: 0 0 auto; color: #8b7772; background: transparent; border: 1px solid #dccbc7; border-radius: 5px; font-size: 13px; line-height: 18px; }
.qp-history-hide:hover { color: #fff; background: #96342b; border-color: #96342b; }
.qp-history-actions { padding: 8px 12px; display: flex; justify-content: flex-end; gap: 6px; background: #fbfbf8; border-bottom: 1px solid var(--qp-line); }
.qp-history-actions button { min-height: 25px; padding: 4px 8px; color: var(--qp-muted); background: #fff; border: 1px solid var(--qp-line); border-radius: 5px; font-size: 8px; font-weight: 700; }
.qp-history-actions button:hover { color: var(--qp-green-dark); border-color: var(--qp-green); }
.qp-history-inspect { margin-top: 6px; }
.qp-history-inspect summary { width: max-content; color: var(--qp-green-dark); cursor: pointer; font-size: 8px; font-weight: 700; }
.qp-history-inspect ul { width: min(520px, 56vw); margin: 7px 0 0; padding: 8px; display: grid; gap: 7px; background: #f8faf6; border: 1px solid #dce6d9; border-radius: 6px; list-style: none; }
.qp-history-inspect li { display: grid; grid-template-columns: minmax(90px, .8fr) minmax(120px, 1fr) minmax(120px, 1fr); gap: 8px; align-items: start; font-size: 8px; line-height: 1.35; }
.qp-history-inspect li > b { overflow-wrap: anywhere; }
.qp-history-inspect li > span { color: var(--qp-muted); overflow-wrap: anywhere; }
.qp-history-inspect li small { display: block; margin-bottom: 2px; color: #7a8b80; font-size: 7px; font-weight: 800; text-transform: uppercase; }
.qp-update-badges { display: flex; flex-wrap: wrap; gap: 4px; }
.qp-update-badge { min-height: 21px; padding: 2px 6px 2px 4px; display: inline-flex; align-items: center; gap: 4px; color: #4d5b52; background: #f1f4ef; border: 1px solid #dce4d9; border-radius: 5px; font-size: 8px; font-weight: 700; white-space: nowrap; }
.qp-update-badge b { min-width: 16px; height: 16px; display: inline-grid; place-items: center; color: #fff; background: var(--qp-green); border-radius: 3px; font-size: 8px; line-height: 1; }
.qp-update-added b { background: #428253; }
.qp-update-removed b { background: #9b4b43; }
.qp-update-price b { background: #997229; }
.qp-update-description b { background: #566e96; }
.qp-update-measurements b { background: #6f5b8e; }
.qp-dashboard-news-list { display: grid; }
.qp-dashboard-news-card { padding: 16px 18px; border-bottom: 1px solid #ecece7; }
.qp-dashboard-news-card:last-child { border-bottom: 0; }
.qp-dashboard-news-card time { display: block; margin-bottom: 5px; color: var(--qp-muted); font-size: 8px; letter-spacing: .06em; text-transform: uppercase; }
.qp-dashboard-news-card h3 { margin: 0 0 5px; font: 700 13px/1.35 Arial, sans-serif; }
.qp-dashboard-news-card p { margin: 0 0 9px; color: var(--qp-muted); font-size: 10px; line-height: 1.45; }
.qp-dashboard-news-card a { color: var(--qp-green-dark); font-size: 9px; font-weight: 800; text-decoration: none; }
.qp-dashboard-news-card a:hover { text-decoration: underline; }
.qp-dashboard-empty { min-height: 120px; padding: 28px 18px; display: grid; place-items: center; color: var(--qp-muted); font-size: 11px; text-align: center; }
.qp-history-row-actions { display: flex; gap: 3px; }
.qp-missing-images { grid-column: 1 / -1; }
.qp-missing-images details { padding: 12px 18px 16px; }
.qp-missing-images summary { cursor: pointer; color: var(--qp-green-dark); font-size: 10px; font-weight: 700; }
.qp-missing-images details > div { padding-top: 10px; display: flex; flex-wrap: wrap; gap: 5px; }
.qp-missing-images button { padding: 4px 7px; color: var(--qp-green-dark); background: var(--qp-green-soft); border: 1px solid #d4cfcc; border-radius: 5px; font-size: 9px; font-weight: 700; }
.qp-master-records tr.has-warning td:first-child { box-shadow: inset 4px 0 0 #c42e25; }
.qp-master-records tr.has-warning td:last-child span { color: #8d241e; font-weight: 700; }
.qp-record-stats table { min-width: 820px; }
.qp-record-stats td:nth-child(3), .qp-record-stats td:nth-child(4) { white-space: normal; line-height: 1.4; }
.qp-resume-warning { margin: 14px 0; padding: 11px 12px; color: #67251f; background: #fff1ef; border: 1px solid #d99a93; border-radius: 8px; }
.qp-resume-warning p { margin: 3px 0 7px; font-size: 10px; }
.qp-resume-warning ul { margin: 0; padding: 0; display: grid; gap: 3px; list-style: none; }
.qp-resume-warning li { display: flex; justify-content: space-between; gap: 12px; font-size: 10px; }
.qp-app.is-master-records .qp-quote-panel { display: none; }
.qp-app.is-master-records .qp-catalog-heading, .qp-app.is-master-records .qp-tabs { display: none; }
.qp-master-records { width: 100%; max-width: calc(100vw - 48px); min-width: 0; overflow: hidden; }
.qp-master-record-header { margin-bottom: 16px; display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; }
.qp-master-record-header h2 { margin: 0 0 3px; font: 400 clamp(26px, 3vw, 38px) Georgia, serif; }
.qp-master-record-header > div > span { color: var(--qp-muted); font-size: 10px; }
.qp-master-record-header > div:last-child { display: flex; align-items: center; gap: 8px; }
.qp-master-record-search { width: min(330px, 36vw); position: relative; }
.qp-master-record-search span { position: absolute; left: 10px; top: 6px; color: var(--qp-muted); font-size: 20px; }
.qp-master-record-search input { min-height: 38px; padding-left: 34px; }
.qp-quote-dashboard-summary { margin: -4px 0 10px; padding: 10px 12px; display: inline-flex; align-items: baseline; gap: 12px; background: #fff; border: 1px solid var(--qp-line); border-radius: 9px; }
.qp-quote-dashboard-summary strong { color: var(--qp-muted); font-size: 9px; letter-spacing: .06em; text-transform: uppercase; }
.qp-quote-dashboard-summary span { color: var(--qp-ink); font-size: 18px; font-weight: 800; }
.qp-quote-dashboard-tools { margin: 0 0 12px; display: flex; align-items: flex-end; flex-wrap: wrap; gap: 8px; }
.qp-quote-dashboard-tools label { display: grid; gap: 3px; color: var(--qp-muted); font-size: 8px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.qp-quote-dashboard-tools input { min-height: 32px; padding: 6px 8px; font-size: 10px; }
.qp-quote-status-filter { display: flex; gap: 5px; padding: 4px; background: #f5f6f3; border: 1px solid var(--qp-line); border-radius: 9px; }
.qp-quote-status-filter button { min-height: 30px; padding: 5px 9px; color: var(--qp-ink); background: #fff; border: 1px solid #d5d9d4; border-radius: 7px; font-size: 10px; font-weight: 800; }
.qp-quote-status-filter button.is-active { color: #fff; background: var(--qp-green); border-color: var(--qp-green); }
.qp-master-filters { margin: -2px 0 13px; padding: 8px; display: flex; flex-wrap: wrap; gap: 6px; background: #f5f6f3; border: 1px solid var(--qp-line); border-radius: 9px; }
.qp-master-filters button { min-height: 31px; padding: 4px 6px 4px 10px; display: inline-flex; align-items: center; gap: 7px; color: var(--qp-ink); background: #fff; border: 1px solid #d5d9d4; border-radius: 7px; font-size: 10px; font-weight: 700; }
.qp-master-filters button small { min-width: 20px; height: 20px; padding: 0 5px; display: inline-grid; place-items: center; color: var(--qp-muted); background: #eceeea; border-radius: 11px; font-size: 9px; }
.qp-master-filters button.has-recent { border-color: #b93028; box-shadow: inset 0 0 0 1px #b93028; }
.qp-master-filters button.is-active { color: #fff; background: var(--qp-green); border-color: var(--qp-green); box-shadow: none; }
.qp-master-filters button.is-active.has-recent { border-color: #e1483d; box-shadow: inset 0 0 0 2px #e1483d; }
.qp-master-filters button.is-active small { color: var(--qp-green-dark); background: #fff; }
.qp-master-loading { min-height: 220px; display: grid; place-items: center; color: var(--qp-muted); background: #fff; border: 1px solid var(--qp-line); border-radius: 10px; }
.qp-master-horizontal-scroll { width: 100%; height: 18px; margin: 0 0 5px; overflow-x: scroll; overflow-y: hidden; background: #eef0ec; border: 1px solid var(--qp-line); border-radius: 7px; }
.qp-master-horizontal-scroll > div { height: 1px; }
.qp-master-table-wrap { width: 100%; max-width: 100%; max-height: calc(100vh - 290px); overflow: auto; background: #fff; border: 1px solid var(--qp-line); border-radius: 10px; }
.qp-master-table-wrap table { width: max-content; min-width: 100%; table-layout: fixed; border-collapse: separate; border-spacing: 0; font-size: 10px; }
.qp-master-records.is-quote-records .qp-master-table-wrap, .qp-master-records.is-quote-records .qp-master-horizontal-scroll { width: max-content; max-width: 100%; }
.qp-master-records.is-quote-records .qp-master-table-wrap table { min-width: 0; }
.qp-master-table-wrap th { position: sticky; top: 0; z-index: 2; padding: 9px 10px; color: #fff; background: var(--qp-green); border-right: 1px solid rgba(255,255,255,.15); text-align: left; white-space: nowrap; }
.qp-master-table-wrap td { padding: 8px 10px; border-right: 1px solid #dadce0; border-bottom: 1px solid #dadce0; vertical-align: top; white-space: nowrap; }
.qp-master-table-wrap tr:nth-child(even) td { background: #fafbf9; }
.qp-master-table-wrap tr.is-new-record > td { background: #fff1f1 !important; }
.qp-master-table-wrap tr.is-new-record:hover > td { background: #ffe6e6 !important; }
.qp-master-table-wrap tr.is-clickable { cursor: pointer; }
.qp-master-table-wrap tr.is-clickable:hover td, .qp-master-table-wrap tr.is-clickable:focus td { background: #f5eceb; }
.qp-master-table-wrap tr.is-clickable.is-new-record:hover > td, .qp-master-table-wrap tr.is-clickable.is-new-record:focus > td { background: #ffe6e6 !important; }
.qp-master-table-wrap tr.is-clickable:focus { outline: 2px solid var(--qp-green); outline-offset: -2px; }
.qp-master-table-wrap td.is-long { white-space: normal; }
.qp-master-table-wrap td span { display: block; overflow: hidden; text-overflow: ellipsis; }
.qp-master-table-wrap td.is-editable span { min-height: 16px; padding: 2px 4px; border: 1px dashed transparent; border-radius: 4px; cursor: text; }
.qp-master-table-wrap td.is-editable span:hover, .qp-master-table-wrap td.is-editable span:focus { background: #fff; border-color: #d9a5a5; outline: none; }
.qp-master-table-wrap td.is-editable span.is-saving { opacity: .55; }
.qp-master-table-wrap td.is-long span { display: -webkit-box; white-space: normal; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; }
.qp-master-table-wrap td.is-number { text-align: right; font-variant-numeric: tabular-nums; }
.qp-master-table-wrap td.is-link a { color: var(--qp-green); font-weight: 700; }
.qp-master-table-wrap td.is-state { vertical-align: middle; }
.qp-quote-state-select { width: 100%; min-height: 28px; padding: 4px 6px; color: var(--qp-ink); background: #fff; border: 1px solid #d5d9d4; border-radius: 7px; font-size: 10px; font-weight: 800; }
.qp-quote-state-select:focus { outline: 2px solid rgba(225,20,31,.18); border-color: var(--qp-red); }
.qp-quote-state-pill { display: inline-flex; min-height: 22px; align-items: center; padding: 3px 8px; border-radius: 999px; font-size: 9px; font-weight: 800; background: #eef0ec; color: var(--qp-ink); }
.qp-quote-state-pill.is-closed { background: #f5eeee; color: #7d312c; }
.qp-quote-state-pill.is-order { background: #edf6ef; color: #286138; }
.qp-record-expand-cell { padding: 5px !important; text-align: center; }
.qp-record-expand-cell button { width: 24px; height: 24px; padding: 0; display: inline-grid; place-items: center; color: #fff; background: var(--qp-green); border: 0; border-radius: 6px; font-size: 15px; line-height: 1; }
.qp-record-detail-row td { padding: 0 !important; background: #f0f3ee !important; white-space: normal; }
.qp-record-detail-row[hidden] { display: none; }
.qp-record-detail-grid { padding: 12px; display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 7px; }
.qp-record-detail-field { min-width: 0; padding: 8px 9px; background: #fff; border: 1px solid #dfe3dd; border-radius: 6px; }
.qp-record-detail-field small { display: block; margin-bottom: 4px; color: var(--qp-muted); font-size: 7px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.qp-record-detail-field > span, .qp-record-detail-field > a { display: block; overflow: visible; color: var(--qp-ink); font-size: 9px; line-height: 1.4; white-space: normal; overflow-wrap: anywhere; }
.qp-record-detail-field > a { color: var(--qp-green-dark); font-weight: 700; }
.qp-onpage-tree { overflow: visible; }
.qp-onpage-orphan-warning { margin-bottom: 10px; padding: 8px 11px; display: flex; align-items: center; justify-content: space-between; color: #842f29; background: #fff1ef; border: 1px solid #dfb2ad; border-radius: 7px; font-size: 10px; }
.qp-onpage-orphan-warning span { min-width: 23px; height: 23px; display: grid; place-items: center; color: #fff; background: #a83931; border-radius: 50%; font-weight: 700; }
.qp-onpage-tree-list { padding: 8px; background: #f4f5f2; border: 1px solid var(--qp-line); border-radius: 10px; }
.qp-onpage-tree-node { margin: 5px 0; background: #fff; border: 1px solid #daddd7; border-radius: 7px; overflow: hidden; }
.qp-onpage-tree-node.is-orphan { border-left: 3px solid #b33b33; }
.qp-onpage-tree-node > summary { min-height: 40px; padding: 7px 9px; display: grid; grid-template-columns: 18px minmax(140px, 1fr) auto 28px; align-items: center; gap: 7px; cursor: pointer; list-style: none; }
.qp-onpage-tree-node > summary::-webkit-details-marker { display: none; }
.qp-onpage-tree-node > summary:hover { background: #f3f1ef; }
.qp-onpage-tree-node[open] > summary { background: #efedeb; border-bottom: 1px solid #daddd7; }
.qp-onpage-tree-toggle { width: 17px; height: 17px; display: grid; place-items: center; color: #fff; background: var(--qp-green); border-radius: 5px; }
.qp-onpage-tree-toggle::before { content: "+"; position: relative; top: -1px; font-size: 13px; line-height: 1; }
.qp-onpage-tree-node[open] > summary .qp-onpage-tree-toggle::before { content: "−"; }
.qp-onpage-tree-node > summary strong { min-width: 0; overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.qp-onpage-tree-node > summary small { color: var(--qp-muted); font-size: 8px; white-space: nowrap; }
.qp-onpage-tree-node > summary em { min-width: 23px; height: 23px; display: grid; place-items: center; color: var(--qp-muted); background: #eef0ec; border-radius: 12px; font-size: 8px; font-style: normal; }
.qp-onpage-node-body { padding: 9px; }
.qp-onpage-technical { margin: 0 0 7px; border: 1px solid #d8ddd5; border-radius: 6px; overflow: hidden; }
.qp-onpage-technical > summary { min-height: 31px; padding: 5px 8px; display: flex; align-items: center; gap: 6px; color: var(--qp-green-dark); background: #f3f6f1; cursor: pointer; font-size: 9px; font-weight: 700; list-style: none; }
.qp-onpage-technical > summary::-webkit-details-marker { display: none; }
.qp-onpage-technical > summary span { width: 17px; height: 17px; display: grid; place-items: center; color: #fff; background: var(--qp-green); border-radius: 5px; }
.qp-onpage-technical > summary span::before { content: "+"; position: relative; top: -1px; font-size: 13px; line-height: 1; }
.qp-onpage-technical[open] > summary span::before { content: "−"; }
.qp-onpage-technical > div { padding: 8px; border-top: 1px solid #d8ddd5; }
.qp-onpage-fields { margin: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 5px; }
.qp-onpage-fields > div { min-width: 0; padding: 6px 7px; background: #f8f9f7; border: 1px solid #e1e3df; border-radius: 5px; }
.qp-onpage-fields dt { margin: 0 0 3px; color: var(--qp-green-dark); font-size: 9px; font-weight: 700; }
.qp-onpage-fields dt small { margin-left: 5px; color: var(--qp-muted); font-size: 7px; font-weight: 400; }
.qp-onpage-fields dd { margin: 0; overflow-wrap: anywhere; font-size: 10px; line-height: 1.35; }
.qp-onpage-relations { margin-top: 7px; padding: 7px 8px; background: #f3f0ea; border-radius: 5px; font-size: 9px; }
.qp-onpage-relations > b { display: block; margin-bottom: 4px; }
.qp-onpage-relations ul { margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 5px; list-style: none; }
.qp-onpage-relations li { padding: 4px 6px; display: inline-flex; gap: 5px; background: #fff; border: 1px solid #ded8ce; border-radius: 4px; }
.qp-onpage-relations span { color: var(--qp-muted); }
.qp-onpage-children { margin: 9px 0 0 10px; padding-left: 10px; border-left: 2px solid #cfc8c5; }
.qp-price-compare { min-width: 145px; display: grid; gap: 3px; }
.qp-price-compare span { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
.qp-price-compare small { color: var(--qp-muted); font-size: 9px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; }
.qp-price-compare strong { color: var(--qp-ink); font-size: 20px; }
.qp-price-compare em { color: var(--qp-muted); font-size: 14px; font-style: normal; text-decoration: line-through; }
.qp-price-compare.has-change strong { color: var(--qp-red); }
.qp-release-form { margin: 12px 0 16px; padding: 12px; display: grid; grid-template-columns: minmax(180px, 1fr) 170px minmax(240px, 1.4fr); gap: 10px; background: #f4f3f1; border: 1px solid var(--qp-line); border-radius: 12px; }
.qp-release-form label { display: grid; gap: 5px; color: var(--qp-muted); font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.qp-release-form input, .qp-release-form textarea { width: 100%; padding: 9px 10px; color: var(--qp-ink); background: #fff; border: 1px solid var(--qp-line); border-radius: 8px; font: inherit; font-weight: 300; text-transform: none; letter-spacing: 0; }
.qp-release-manager table small { display: block; margin-top: 3px; color: var(--qp-muted); font-size: 10px; font-weight: 400; }
.qp-release-actions { display: flex; flex-wrap: wrap; gap: 6px; }

@media (max-width: 1180px) {
  .qp-workspace { grid-template-columns: minmax(0, 1fr) 350px; }
  .qp-client-strip.has-customer-email { grid-template-columns: minmax(110px, .7fr) minmax(250px, 1.7fr) minmax(150px, 1fr) minmax(150px, 1fr) 72px; }
  .qp-popular-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .qp-dashboard-grid { grid-template-columns: minmax(0, 1.45fr) minmax(270px, .75fr); }
  .qp-access-link-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  @supports not (container-type: inline-size) {
    .qp-smart-grid { grid-template-columns: minmax(0, 1fr); }
  }
}
@media (max-width: 820px) {
  .qp-master-records { max-width: calc(100vw - 24px); }
  .qp-topbar { min-height: 60px; padding: 0 14px; display: flex; justify-content: space-between; }
  .qp-brand small { display: none; }
  .qp-master-login input { width: 72px; }
  .qp-master-login input:focus { width: 96px; }
  .qp-language-switch button { min-width: 27px; padding-right: 4px; padding-left: 4px; }
  .qp-client-strip { padding: 10px 14px; display: grid; grid-template-columns: 1fr; }
  .qp-client-strip .qp-client-field, .qp-client-strip .qp-operator-stack, .qp-client-strip .qp-notes-field, .qp-validity { width: auto; flex: auto; }
  .qp-client-strip .qp-validity { display: none; }
  .qp-client-send { width: 100%; margin-top: 0; }
  .qp-master-toolbar { padding: 8px 12px; gap: 6px; overflow-x: auto; }
  .qp-master-toolbar-row { width: max-content; min-width: 100%; gap: 8px; flex-wrap: nowrap; }
  .qp-master-toolbar-side { gap: 6px; flex-wrap: nowrap; }
  .qp-master-toolbar-side-left { flex: 1 1 auto; min-width: max-content; }
  .qp-master-toolbar-side-right { flex: 0 0 auto; margin-left: auto; }
  .qp-master-toolbar-side-full { justify-content: flex-end; }
  .qp-master-badge { width: auto; margin: 0; white-space: nowrap; }
  .qp-catalog-type-switch, .qp-dashboard-navigation, .qp-master-price-switch, .qp-data-source-switch, .qp-master-record-actions { flex: 0 0 auto; overflow: visible; }
  .qp-language-switch-dark { margin-left: 0; }
  .qp-toolbar-button { flex: 1 1 auto; }
  .qp-workspace { display: block; }
  .qp-catalog { padding: 18px 14px 90px; }
  .qp-app.is-dashboard .qp-catalog { padding: 14px 12px 35px; }
  .qp-dashboard-hero { min-height: 0; padding: 25px 21px; }
  .qp-dashboard-hero .qp-primary-button { width: 100%; }
  .qp-dashboard-features { grid-template-columns: 1fr; }
  .qp-public-brand-grid { grid-template-columns: 1fr; padding: 0 0 18px; }
  .qp-dashboard-grid { grid-template-columns: 1fr; }
  .qp-guide-grid { grid-template-columns: 1fr; }
  .qp-access-link-list { grid-template-columns: 1fr; padding-right: 0; padding-left: 0; }
  .qp-access-link-card { grid-template-columns: 1fr; }
  .qp-dashboard-table-wrap table { min-width: 650px; }
  .qp-history-inspect ul { width: 480px; }
  .qp-app.is-public .qp-catalog, .qp-app.is-omni .qp-catalog { padding-right: 14px; padding-left: 14px; }
  .qp-catalog-heading { display: block; }
  .qp-search { display: block; margin-top: 17px; }
  .qp-tab-row { grid-template-columns: 1fr; padding: 3px 0; }
  .qp-product-grid { grid-template-columns: 1fr; }
  .qp-popular-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .qp-smart-grid { grid-template-columns: minmax(0, 1fr); }
  .qp-smart-card { min-height: 0; grid-template-columns: 1fr; }
  .qp-smart-media-wrap { min-height: 0; aspect-ratio: 16 / 10; border-right: 0; border-bottom: 1px solid var(--qp-line); }
  .qp-smart-media { max-height: none; }
  .qp-smart-title-overlay { top: 9px; left: 9px; max-width: calc(100% - 18px); padding: 7px 10px; }
  .qp-smart-title-overlay h3 { font-size: 19px; }
  .qp-smart-included { grid-template-columns: 1fr; }
  .qp-product-card { grid-template-columns: minmax(125px, 38%) minmax(0, 1fr); min-height: 210px; }
  .qp-product-image-wrap { min-height: 210px; }
  .qp-product-image { max-height: 230px; padding: 10px; }
  .qp-product-content { min-height: 210px; padding: 14px; }
  .qp-quote-panel { display: none; position: fixed; inset: 8vh 0 0; top: auto; height: 92vh; min-height: 0; border-radius: 15px 15px 0 0; border-left: 0; z-index: 100002; box-shadow: 0 -12px 35px rgba(0,0,0,.18); }
  .qp-quote-panel.is-open { display: flex; }
  .qp-close { display: block; position: absolute; top: 14px; right: 14px; padding: 4px; color: var(--qp-ink); background: transparent; border: 0; font-size: 24px; }
  .qp-count { margin-right: 28px; }
  .qp-mobile-cart { position: fixed; left: 12px; right: 12px; bottom: 12px; z-index: 100000; padding: 13px 15px; display: flex; align-items: center; justify-content: space-between; color: #fff; background: var(--qp-green); border: 0; border-radius: 10px; box-shadow: 0 8px 28px rgba(215,25,32,.22); }
  .qp-mobile-cart span { display: flex; align-items: center; gap: 6px; }
  .qp-mobile-cart span strong { min-width: 21px; height: 21px; display: grid; place-items: center; color: var(--qp-green); background: #fff; border-radius: 50%; font-size: 10px; }
  body.qp-page-active .ast-scroll-to-top-right,
  body.qp-page-active #ast-scroll-top,
  body.qp-page-active .ast-scroll-to-top { right: 18px !important; bottom: 82px !important; z-index: 99999 !important; }
  .qp-backdrop { display: block; position: fixed; inset: 0; z-index: 100001; background: rgba(17,25,21,.45); border: 0; }
  .qp-notice { bottom: 76px; width: max-content; max-width: calc(100vw - 30px); text-align: center; }
  .qp-resume-actions { grid-template-columns: 1fr; }
  .qp-led-choice-actions { grid-template-columns: 1fr; }
  .qp-master-record-header { align-items: stretch; flex-direction: column; }
  .qp-master-record-header > div:last-child { align-items: stretch; flex-direction: column; }
  .qp-master-record-search { width: 100%; }
  .qp-master-filters { flex-wrap: nowrap; overflow-x: auto; }
  .qp-master-filters button { flex: 0 0 auto; }
  .qp-master-table-wrap { max-height: calc(100vh - 330px); }
  .qp-release-form { grid-template-columns: 1fr; }
  .qp-onpage-tree-node > summary { grid-template-columns: 18px minmax(90px, 1fr) 24px; }
  .qp-onpage-tree-node > summary small { display: none; }
  .qp-onpage-fields { grid-template-columns: 1fr; }
  .qp-onpage-children { margin-left: 3px; padding-left: 6px; }
}
/* Scoped outside the WordPress theme and the inert app while rules are shown. */
dialog.qp-usage-dialog {
  box-sizing: border-box;
  width: min(640px, calc(100vw - 32px));
  max-height: calc(100dvh - 40px);
  margin: auto;
  padding: 28px;
  border: 1px solid #dedada;
  border-top: 4px solid #e1141f;
  border-radius: 14px;
  background: #fff;
  color: #303030;
  font: 14px/1.55 Arial, sans-serif;
  overflow-y: auto;
}
dialog.qp-usage-dialog:not([open]) { display: none !important; }
dialog.qp-usage-dialog::backdrop { background: rgb(0 0 0 / 45%); }
.qp-usage-dialog h2 { margin: 12px 0; color: #303030; font: 600 25px/1.25 Arial, sans-serif; }
.qp-usage-dialog p { margin: 12px 0; }
.qp-usage-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.qp-usage-heading strong { color: #e1141f; font-size: 20px; }
.qp-usage-heading select { width: auto; min-width: 72px; padding: 6px 12px; font: inherit; }
.qp-usage-visibility { border-left: 3px solid #e1141f; padding: 1px 14px; background: #fff4f4; }
.qp-usage-dialog summary { cursor: pointer; font-weight: 600; }
.qp-usage-dialog details { border-block: 1px solid #e5e5e5; padding: 12px 0; }
.qp-usage-check { display: flex; align-items: flex-start; gap: 10px; margin: 18px 0; font-weight: 400; }
.qp-usage-check input { width: 18px; height: 18px; flex: 0 0 18px; margin: 3px 0 0; accent-color: #e1141f; }
.qp-usage-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.qp-usage-dialog button { padding: 9px 14px; border: 1px solid #ccc; border-radius: 8px; background: #f4f3f3; color: #303030; font: 600 14px/1.4 Arial, sans-serif; cursor: pointer; }
.qp-usage-dialog [data-usage-accept] { background: #e1141f; color: #fff; border-color: #e1141f; }
.qp-usage-dialog button:disabled { opacity: .45; cursor: not-allowed; }
.qp-usage-dialog :focus-visible { outline: 2px solid #c40f1b; outline-offset: 3px; }
.qp-usage-version { display: block; color: #666; margin-top: 14px; }
.qp-usage-error { color: #a00010; }
.qp-usage-footer { padding: 12px 20px; text-align: right; }
.qp-usage-footer button { background: transparent; color: #666; border: 0; text-decoration: underline; font-size: 12px; padding: 6px; }
@media (max-width: 600px) { dialog.qp-usage-dialog { padding: 18px; } }
