/* PFCS 5.3.14 — standalone, semantic full-page Designer. No legacy fullpage CSS. */
body.pf-next-route {
  --pfn-ink:#151515; --pfn-muted:#6c6c6c; --pfn-line:#e7e7e7;
  --pfn-bg:#f7f7f6; --pfn-bronze:#a87c4e; --pfn-radius:12px;
  margin:0; overflow:auto!important; background:#fff; color:var(--pfn-ink);
  font-family:Outfit,Inter,Arial,sans-serif; font-size:16px; line-height:1.45;
}
body.pf-next-route.gm-xindao-designer-open{overflow:auto!important}
body.pf-next-route.gm-xindao-designer-open:before{display:none!important;content:none!important}
body.pf-next-route *,body.pf-next-route *:before,body.pf-next-route *:after{box-sizing:border-box}
body.pf-next-route .pf-next-page{min-height:100dvh;background:#fff}
body.pf-next-route .pf-fp-page-header{
  height:70px;min-height:70px;display:grid;grid-template-columns:1fr minmax(0,1.4fr) 1fr;
  gap:24px;align-items:center;padding:0 30px;border-bottom:1px solid var(--pfn-line);background:#fff;
}
body.pf-next-route .pf-fp-brand{display:inline-flex;align-items:center;gap:8px;color:var(--pfn-ink);font-size:17px;font-weight:800;letter-spacing:.06em;text-decoration:none}
body.pf-next-route .pf-fp-brand .pf-fp-brand-logo{display:block;width:auto;max-width:200px;max-height:36px;object-fit:contain}
body.pf-next-route .pf-fp-brand span{font-size:11px;font-weight:500;letter-spacing:.13em;padding-left:9px;border-left:1px solid #aaa}
body.pf-next-route .pf-fp-product-title{font-size:14px;font-weight:600;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.pf-next-route .pf-fp-back{justify-self:end;text-decoration:none;font-size:14px;color:var(--pfn-ink)}
body.pf-next-route .pf-fp-main,body.pf-next-route .pf-next-product-form,body.pf-next-route .pf-next-source{width:100%;margin:0;padding:0;max-width:none}
body.pf-next-route .pf-next-source > .gm-xindao-config{border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;margin:0!important;padding:0!important;max-width:none!important;width:100%!important;overflow:visible!important}
body.pf-next-route .pf-next-source > .gm-xindao-config > :not(#gm-xindao-designer){display:none!important}
body.pf-next-route .pf-next-source #gm-xindao-designer:not(.pf-next-ready){visibility:hidden!important}
body.pf-next-route #gm-xindao-designer.pf-next-ready{
  display:block!important;position:static!important;inset:auto!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;
  transform:none!important;z-index:auto!important;width:100%!important;max-width:none!important;
  min-height:calc(100dvh - 70px)!important;height:auto!important;max-height:none!important;
  padding:0!important;margin:0!important;overflow:visible!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;
}
body.pf-next-route #gm-xindao-designer.pf-next-ready[hidden]{display:none!important}
body.pf-next-route #gm-xindao-designer.pf-next-ready > :not(.pf-next-app){display:none!important}
body.pf-next-route .pf-fp-loading{position:absolute;inset:80px 0 auto;z-index:1;text-align:center;padding:50px;color:#666;font-size:17px}
body.pf-next-route .pf-fp-loading[hidden],body.pf-next-route .pf-fp-init-error[hidden]{display:none!important}
body.pf-next-route .pf-fp-init-error{margin:25px auto;max-width:700px;padding:20px;border:1px solid #f0b8b8;background:#fff5f5;color:#a02828;border-radius:10px}
/* New UI: three explicit regions, never reuse legacy studio layout. */
body.pf-next-route .pf-next-app{display:grid;grid-template-columns:minmax(215px,22fr) minmax(390px,52fr) minmax(315px,26fr);min-height:calc(100dvh - 70px);height:calc(100dvh - 70px);overflow:hidden;background:#fff;color:var(--pfn-ink);font-family:Outfit,Inter,Arial,sans-serif}
body.pf-next-route .pf-next-navigation{min-width:0;display:flex;flex-direction:column;padding:32px 23px;border-right:1px solid var(--pfn-line);overflow:auto;background:#fff}
body.pf-next-route .pf-next-kicker,body.pf-next-route .pf-next-eyebrow{font-size:11px;font-weight:800;letter-spacing:.13em;color:var(--pfn-bronze);margin:0 0 12px}
body.pf-next-route .pf-next-navigation h2{font-size:22px;line-height:1.2;letter-spacing:-.03em;margin:0 0 12px;font-weight:700}
body.pf-next-route .pf-next-nav-hint,body.pf-next-route .pf-next-nav-foot{font-size:14px;line-height:1.5;color:var(--pfn-muted);margin:0}
body.pf-next-route .pf-next-nav-foot{margin-top:auto;padding-top:28px}
body.pf-next-route .pf-next-steps{display:grid;gap:8px;margin-top:28px}
body.pf-next-route .pf-next-step{display:grid;grid-template-columns:31px 1fr 14px;align-items:center;gap:9px;min-height:58px;padding:12px 10px;text-align:left;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--pfn-ink);cursor:pointer;font:inherit}
body.pf-next-route .pf-next-step:hover{background:#f7f7f7}
body.pf-next-route .pf-next-step[aria-current=step]{background:#f4f2ef;border-color:#e8e1d8}
body.pf-next-route .pf-next-step-number{display:grid;place-items:center;width:31px;height:31px;border:1px solid #ddd;border-radius:50%;font-size:12px;font-weight:700}
body.pf-next-route .pf-next-step[aria-current=step] .pf-next-step-number{background:#151515;color:#fff;border-color:#151515}
body.pf-next-route .pf-next-step-label{font-size:15px;font-weight:600;line-height:1.25}
body.pf-next-route .pf-next-step-arrow{font-size:22px;color:#888;line-height:1}
body.pf-next-route .pf-next-admin-open{margin-top:24px;border:1px solid #ddd;border-radius:9px;background:#fff;min-height:42px;font:inherit;font-size:13px;cursor:pointer}
/* The mobile presentation reuses the same native canvas, side tabs and supplier handlers. */
body.pf-next-route .pf-next-step-icon,body.pf-next-route .pf-next-mobile-label,
body.pf-next-route .pf-next-mobile-header,body.pf-next-route .pf-next-mobile-canvas-tools,
body.pf-next-route .pf-next-mobile-context-toggle,body.pf-next-route .pf-next-mobile-edit-actions,
body.pf-next-route .pf-next-mobile-finish{display:none}
/* Canvas: rail is inside the canvas frame on the left. */
body.pf-next-route .pf-next-center{display:flex;flex-direction:column;min-width:0;min-height:0;padding:22px 22px 16px;background:var(--pfn-bg);overflow:hidden}
body.pf-next-route .pf-next-stage-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 2px 17px;flex:0 0 auto}
body.pf-next-route .pf-next-stage-head .pf-next-eyebrow{margin:0 0 3px}
body.pf-next-route .pf-next-stage-head h2{font-size:20px;line-height:1.2;margin:0;font-weight:700}
body.pf-next-route .pf-next-history .gm-xindao-history-actions{display:flex!important;gap:8px!important}
body.pf-next-route .pf-next-history button{min-width:38px!important;min-height:38px!important;background:#fff!important;color:#111!important;border:1px solid #ddd!important;border-radius:8px!important;font-size:19px!important;padding:3px!important}
body.pf-next-route .pf-next-canvas-frame{display:grid;grid-template-columns:108px minmax(0,1fr);align-items:stretch;flex:1 1 auto;min-height:0;min-width:0;background:#fff;border:1px solid var(--pfn-line);border-radius:var(--pfn-radius);overflow:hidden}
body.pf-next-route .pf-next-side-rail{min-width:0;padding:12px 8px;border-right:1px solid #ededed;overflow-y:auto;overflow-x:hidden;background:#fcfcfc}
body.pf-next-route .pf-next-side-rail .gm-xindao-designer-position-tabs{display:grid!important;gap:10px!important;padding:0!important;margin:0!important;max-width:none!important;background:none!important;border:0!important}
body.pf-next-route .pf-next-side-rail .gm-xindao-designer-position-tab{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:5px!important;width:100%!important;min-width:0!important;max-width:none!important;min-height:94px!important;margin:0!important;padding:7px 5px!important;border:1px solid #e6e6e6!important;border-radius:9px!important;background:#fff!important;text-align:center!important;box-shadow:none!important;white-space:normal!important;cursor:pointer}
body.pf-next-route .pf-next-side-rail .gm-xindao-designer-position-tab.is-active{border-color:var(--pfn-bronze)!important;box-shadow:inset 0 0 0 1px var(--pfn-bronze)!important}
body.pf-next-route .pf-next-side-rail .pf-next-thumb{width:47px;height:47px;display:block;object-fit:contain;background:#f6f6f6;border-radius:6px}
body.pf-next-route .pf-next-side-rail .pf-next-thumb-empty{display:grid;place-items:center;font-size:17px;color:#888}
body.pf-next-route .pf-next-side-rail .gm-xindao-designer-position-name{font-size:10px!important;font-weight:700!important;line-height:1.25!important;word-break:normal!important}
body.pf-next-route .pf-next-side-rail .gm-xindao-designer-position-tab small{display:none!important}
body.pf-next-route .pf-next-side-rail .gm-xindao-designer-position-status{position:absolute;right:4px;top:4px}
body.pf-next-route .pf-next-canvas-slot{display:flex;min-height:0;min-width:0;align-items:center;justify-content:center;overflow:hidden;padding:14px}
body.pf-next-route #gm-xindao-designer .pf-next-canvas-slot .gm-xindao-canvas-wrap{display:flex!important;align-items:center!important;justify-content:center!important;min-height:0!important;min-width:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:8px!important;border:0!important;border-radius:0!important;overflow:hidden!important;background:#fff!important;box-shadow:none!important}
body.pf-next-route #gm-xindao-designer .pf-next-canvas-slot .gm-xindao-canvas-wrap.pf-next-zoomed{overflow:auto!important;align-items:flex-start!important;justify-content:flex-start!important}
body.pf-next-route .pf-next-canvas-slot canvas{display:block!important;flex:0 0 auto!important;max-width:none!important;box-shadow:none!important}
body.pf-next-route .pf-next-stage-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;flex:0 0 auto;padding-top:13px}
body.pf-next-route .pf-next-stage-foot>p{font-size:12px;color:#777;max-width:310px;margin:0}
body.pf-next-route .pf-next-zoom .gm-xindao-zoom-controls{display:flex!important;gap:7px!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
body.pf-next-route .pf-next-zoom .gm-xindao-zoom-label{display:none!important}
body.pf-next-route .pf-next-zoom .gm-xindao-zoom-actions{display:flex!important;align-items:center!important;gap:4px!important}
body.pf-next-route .pf-next-zoom button{padding:4px!important;min-width:28px!important;min-height:29px!important;background:#fff!important;color:#111!important;border:1px solid #ddd!important;border-radius:7px!important}
body.pf-next-route .pf-next-zoom input[type=range]{width:70px!important;accent-color:#111}
body.pf-next-route .pf-next-proof{display:flex!important;gap:8px!important;align-items:center!important;position:static!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
body.pf-next-route .pf-next-proof #gm-xindao-design-done{display:none!important}
body.pf-next-route .pf-next-proof #gm-xindao-download-preview,body.pf-next-route .pf-next-done{font:inherit;font-size:13px!important;font-weight:650!important;background:#fff!important;color:#111!important;border:1px solid #d9d9d9!important;border-radius:8px!important;min-height:37px!important;padding:7px 11px!important;cursor:pointer}
body.pf-next-route .pf-next-done{background:#111!important;color:#fff!important;border-color:#111!important}
/* Right contextual panel. */
body.pf-next-route .pf-next-right{display:flex;flex-direction:column;min-width:0;min-height:0;background:#fff;border-left:1px solid var(--pfn-line);overflow:hidden}
body.pf-next-route .pf-next-panel-top{padding:25px 23px 17px;border-bottom:1px solid var(--pfn-line);flex:0 0 auto}
body.pf-next-route .pf-next-panel-top .pf-next-eyebrow{margin:0 0 5px}
body.pf-next-route .pf-next-panel-heading{font-size:21px;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin:0}
body.pf-next-route .pf-next-panel-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 22px}
body.pf-next-route .pf-next-panel[hidden]{display:none!important}
body.pf-next-route .pf-next-panel{padding:20px 0 26px;min-width:0;font-size:15px;line-height:1.5}
body.pf-next-route .pf-next-panel h3{font-size:16px;font-weight:700;margin:22px 0 10px}
body.pf-next-route .pf-next-panel h3:first-child{margin-top:0}
body.pf-next-route .pf-next-copy{color:var(--pfn-muted);font-size:14px;line-height:1.55;margin:0 0 18px}
body.pf-next-route .pf-next-inline-note{font-size:13px;color:#777;background:#f7f7f7;border-radius:8px;padding:12px;margin-top:18px}
body.pf-next-route .pf-next-panel input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]),body.pf-next-route .pf-next-panel textarea,body.pf-next-route .pf-next-panel select{width:100%;max-width:100%;min-height:42px;padding:10px 12px;font:inherit;font-size:15px;color:#111;background:#fff;border:1px solid #dedede;border-radius:8px}
body.pf-next-route .pf-next-panel textarea{min-height:84px;resize:vertical}
body.pf-next-route .pf-next-panel label{display:block;max-width:100%;font-size:14px;color:#222;margin:0 0 12px}
body.pf-next-route .pf-next-panel label>span{display:block;font-weight:600;margin:0 0 6px}
body.pf-next-route .pf-next-panel input[type=range]{width:100%;accent-color:#111}
body.pf-next-route .pf-next-panel button{font-family:inherit}
body.pf-next-route .pf-next-panel button:focus-visible,body.pf-next-route .pf-next-step:focus-visible{outline:3px solid #a87c4e;outline-offset:2px}
body.pf-next-route .pf-next-color-choice .gm-xindao-color-choice{margin:0!important;padding:0!important;border:0!important;background:transparent!important}
/* Collapse only the native product-color list; the editor preview picker stays in the
   hidden supplier source tree. One visible color selector, one variation state. */
body.pf-next-route .pf-next-color-choice.pf-next-colors-collapsed .gm-xindao-product-color-swatch:nth-child(n+9):not(.is-active){display:none!important}
body.pf-next-route .pf-next-more-colors{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 13px;margin:6px 0 0;background:#fff;border:1px solid #dedede;border-radius:8px;color:#222;font:inherit;font-size:13px;font-weight:650;cursor:pointer}
body.pf-next-route .pf-next-more-colors:hover{border-color:var(--pfn-bronze);color:#111}
body.pf-next-route .pf-next-print-switch .gm-xindao-designer-position-switcher{display:block!important;position:static!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
body.pf-next-route .pf-next-print-switch #gm-xindao-designer-position-tabs{display:none!important}
body.pf-next-route .pf-next-print-switch .gm-xindao-designer-position-copy{display:none!important}
body.pf-next-route .pf-next-print-switch .gm-xindao-designer-position-controls{display:grid!important;gap:12px!important;grid-template-columns:1fr!important;padding:0!important;margin:0!important}
body.pf-next-route .pf-next-print-switch .gm-xindao-designer-position-controls label{margin:0!important}
body.pf-next-route .pf-next-print-switch .gm-xindao-designer-position-toggle{display:flex!important;align-items:center!important;gap:9px!important}
body.pf-next-route .pf-next-print-switch .gm-xindao-designer-position-toggle span{display:inline!important;margin:0!important}
body.pf-next-route .pf-next-text-fields #gm-xindao-text-tools{display:block!important;position:static!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important}
body.pf-next-route .pf-next-text-fields #gm-xindao-text-tools>strong{display:none!important}
body.pf-next-route .pf-next-text-fields .gm-xindao-studio-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important}
body.pf-next-route .pf-next-text-fields #gm-xindao-text-font{font-size:17px!important;font-weight:700!important}
body.pf-next-route .pf-next-text-fields .gm-xindao-text-advanced{display:block!important;border:0!important;padding:0!important;margin:10px 0!important}
body.pf-next-route .pf-next-text-fields .gm-xindao-text-advanced>summary{cursor:pointer}
body.pf-next-route .pf-next-primary-action{width:100%;min-height:46px;margin:14px 0 0;padding:11px 15px!important;border:1px solid #111!important;border-radius:8px!important;background:#111!important;color:#fff!important;font-size:15px!important;font-weight:650!important;cursor:pointer}
body.pf-next-route .pf-next-upload .gm-xindao-add-image-label{display:flex!important;justify-content:center;align-items:center;min-height:112px!important;width:100%!important;margin:0!important;padding:18px!important;background:#fafafa!important;border:2px dashed #ccc!important;border-radius:11px!important;color:#111!important;text-align:center!important;font-size:15px!important;font-weight:700!important;cursor:pointer}
body.pf-next-route .pf-next-image-tools #gm-xindao-image-tools{display:block!important;margin:0!important;padding:0!important;border:0!important;background:none!important}
body.pf-next-route .pf-next-image-tools #gm-xindao-image-tools>details{display:block!important}
body.pf-next-route .pf-next-size-summary{font-size:14px;font-weight:700;padding:10px 12px;margin-bottom:10px;background:#f7f7f7;border-radius:8px}
body.pf-next-route .pf-next-size-color{margin:0 0 10px;border:1px solid var(--pfn-line);border-radius:10px;overflow:hidden;background:#fff}
body.pf-next-route .pf-next-size-color>summary{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:13px;cursor:pointer;background:#fafafa}
body.pf-next-route .pf-next-size-color>summary strong{font-size:15px}
body.pf-next-route .pf-next-color-total{font-size:13px;color:#777}
body.pf-next-route .pf-next-size-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-top:1px solid #f0f0f0}
body.pf-next-route .pf-next-size-name{font-size:15px;font-weight:600;overflow-wrap:anywhere}
body.pf-next-route .pf-next-quantity{display:grid;grid-template-columns:34px 37px 34px;align-items:center;flex:0 0 auto;overflow:hidden;border:1px solid #ddd;border-radius:8px}
body.pf-next-route .pf-next-quantity button{height:37px;padding:0!important;margin:0!important;border:0!important;background:#fff!important;color:#111!important;font-size:20px!important;cursor:pointer}
body.pf-next-route .pf-next-quantity button:hover{background:#f5f5f5!important}
body.pf-next-route .pf-next-quantity button:disabled{opacity:.3;cursor:not-allowed}
body.pf-next-route .pf-next-qty-value{font-size:15px;font-weight:650;text-align:center}
body.pf-next-route .pf-next-layer-list{max-height:220px;overflow:auto}
body.pf-next-route .pf-next-admin-content>section{display:block!important;margin:15px 0!important;padding:12px!important;border:1px solid #e5e5e5!important;border-radius:9px!important}
body.pf-next-route .pf-next-admin-content [data-pf-print-controls]{display:block!important}
body.pf-next-route .pf-next-admin-back{min-height:40px;margin-top:20px;background:#fff;border:1px solid #ddd;border-radius:8px;padding:8px 12px;cursor:pointer}
/* The same supplier transform controls are accessible for selected print layers. */
body.pf-next-route .pf-next-transform-native{margin:0 0 12px}
body.pf-next-route .pf-next-app[data-active=product] .pf-next-transform-native,
body.pf-next-route .pf-next-app[data-active=sizes] .pf-next-transform-native,
body.pf-next-route .pf-next-app[data-active=admin] .pf-next-transform-native{display:none}
body.pf-next-route .pf-next-transform-native .gm-xindao-studio-transform{display:grid!important;position:static!important;gap:10px!important;margin:0!important;padding:12px!important;border:1px solid #e7e7e7!important;border-radius:10px!important;background:#fff!important}
body.pf-next-route .pf-next-transform-native .gm-xindao-studio-primary-controls{display:grid!important;gap:9px!important}
body.pf-next-route .pf-next-transform-native .gm-xindao-studio-finish{display:none!important}
body.pf-next-route .pf-next-transform-native input[type=range]{width:100%;accent-color:#151515}
/* Price and real supplier cart button are always in view. */
body.pf-next-route .pf-next-checkout{flex:0 0 auto;padding:15px 22px 18px;border-top:1px solid var(--pfn-line);background:#fff;box-shadow:0 -6px 18px rgba(0,0,0,.035)}
body.pf-next-route .pf-next-checkout .gm-xindao-price-summary{display:grid!important;gap:3px!important;margin:0 0 12px!important;padding:0!important;border:0!important}
body.pf-next-route .pf-next-checkout .gm-xindao-price-summary strong{font-size:23px!important;color:#111!important;font-weight:750!important;line-height:1.25!important}
body.pf-next-route .pf-next-checkout .gm-xindao-price-summary span{font-size:13px!important;color:#777!important}
body.pf-next-route .pf-next-checkout .gm-xindao-submit{display:block!important;margin:0!important}
body.pf-next-route .pf-next-checkout #gm-xindao-matrix-add{display:block!important;width:100%!important;min-height:49px!important;padding:12px 15px!important;margin:0!important;background:#111!important;color:#fff!important;border:1px solid #111!important;border-radius:8px!important;font-family:inherit!important;font-size:15px!important;font-weight:700!important;cursor:pointer}
body.pf-next-route .pf-next-checkout #gm-xindao-matrix-add:disabled{opacity:.5!important;cursor:not-allowed}
body.pf-next-route .pf-next-checkout #gm-xindao-submit-status{display:block!important;margin-top:5px;font-size:12px}
body.pf-next-route .pf-next-checkout #gm-xindao-review[hidden],body.pf-next-route .pf-next-checkout #gm-xindao-delivery[hidden],body.pf-next-route .pf-next-checkout #gm-xindao-delivery-estimate[hidden]{display:none!important}
body.pf-next-route .pf-next-checkout #gm-xindao-review:not([hidden]){max-height:30vh;overflow:auto;margin-top:10px}
body.pf-next-route .pf-next-checkout #gm-xindao-delivery:not([hidden]){max-height:18vh;overflow:auto}
/* Tablet: maintain useful tool width, reduce navigation footprint. */
@media(max-width:1199px) and (min-width:851px){
 body.pf-next-route .pf-next-app{grid-template-columns:minmax(185px,19fr) minmax(340px,47fr) minmax(295px,34fr)}
 body.pf-next-route .pf-next-navigation{padding:22px 13px}
 body.pf-next-route .pf-next-center{padding:15px 12px 12px}
 body.pf-next-route .pf-next-canvas-frame{grid-template-columns:83px minmax(0,1fr)}
 body.pf-next-route .pf-next-side-rail{padding:9px 5px}
 body.pf-next-route .pf-next-panel-scroll{padding:0 15px}
 body.pf-next-route .pf-next-checkout{padding:12px 15px}
}
/* Mobile: approved 2026-10-09 reference. One native canvas/side list, five icon tabs,
   one contextual panel. Desktop rules above remain unchanged. */
@media(max-width:850px){
 body.pf-next-route{overflow:auto!important;background:#fff}
 body.pf-next-route .pf-fp-page-header{display:none}
 body.pf-next-route #gm-xindao-designer.pf-next-ready{min-height:100dvh!important}
 body.pf-next-route .pf-next-app{display:flex;flex-direction:column;height:auto;min-height:100dvh;overflow:visible;max-width:100%;padding:12px 12px 0;background:#fff}
 body.pf-next-route .pf-next-center{order:1;display:flex;flex-direction:column;flex:0 0 auto;height:auto;min-height:0;overflow:visible;padding:0;background:#fff}
 body.pf-next-route .pf-next-mobile-header{display:flex;align-items:center;justify-content:space-between;min-height:50px;padding:0 7px 8px;border-top:1px solid #e4e4e4;border-left:1px solid #e4e4e4;border-right:1px solid #e4e4e4;border-radius:17px 17px 0 0}
 body.pf-next-route .pf-next-mobile-header strong{font-size:15px;font-weight:700;letter-spacing:.005em;line-height:1.2;color:#101010}
 body.pf-next-route .pf-next-mobile-close{display:grid;place-items:center;min-width:44px;min-height:44px;font-size:25px;font-weight:300;line-height:1;color:#555;text-decoration:none}
 body.pf-next-route .pf-next-mobile-canvas-tools{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:44px;padding:0 7px 4px;border-left:1px solid #e4e4e4;border-right:1px solid #e4e4e4}
 body.pf-next-route .pf-next-mobile-side-label{font-size:11px;letter-spacing:.045em;color:#777;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 body.pf-next-route .pf-next-mobile-canvas-actions{display:flex;align-items:center;gap:0}
 body.pf-next-route .pf-next-mobile-canvas-actions button{display:grid;place-items:center;min-width:44px;min-height:44px;border:0;background:transparent;color:#555;font-size:23px;line-height:1;cursor:pointer}
 body.pf-next-route .pf-next-mobile-canvas-actions button:disabled{opacity:.35}
 body.pf-next-route .pf-next-stage-head,body.pf-next-route .pf-next-stage-foot{display:none}
 body.pf-next-route .pf-next-canvas-frame{display:contents}
 body.pf-next-route .pf-next-canvas-slot{order:1;display:flex;align-items:center;justify-content:center;flex:0 0 auto;width:calc(100% - 2px);height:auto;aspect-ratio:1/1;min-height:0;overflow:hidden;padding:4px;margin:0 1px;border:1px solid #e5e5e5;border-radius:13px;background:#f3f3f3}
 body.pf-next-route #gm-xindao-designer .pf-next-canvas-slot .gm-xindao-canvas-wrap{width:100%!important;height:100%!important;min-height:0!important;padding:0!important;background:#fff!important}
 body.pf-next-route .pf-next-side-rail{order:2;display:block;flex:0 0 auto;width:100%;padding:8px 0 3px;border:0;overflow:visible;background:#fff}
 body.pf-next-route .pf-next-side-rail .gm-xindao-designer-position-tabs{display:flex!important;flex-wrap:wrap!important;align-items:center;justify-content:center;gap:6px!important;overflow:visible!important;padding:0!important;margin:0!important}
 body.pf-next-route .pf-next-side-rail .gm-xindao-designer-position-tab,
 body.pf-next-route #gm-xindao-designer.pf-next-ready .pf-next-side-rail .gm-xindao-designer-position-tab{display:inline-flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:100%!important;min-height:27px!important;padding:3px 9px!important;margin:0!important;border:0!important;border-radius:18px!important;background:#f1f1f1!important;box-shadow:none!important;color:#111!important}
 body.pf-next-route .pf-next-side-rail .gm-xindao-designer-position-tab.is-active{background:#e9e6e2!important}
 body.pf-next-route .pf-next-side-rail .pf-next-thumb,
 body.pf-next-route .pf-next-side-rail .gm-xindao-designer-position-status,
 body.pf-next-route .pf-next-side-rail .gm-xindao-designer-position-tab small{display:none!important}
 body.pf-next-route #gm-xindao-designer.pf-next-ready .pf-next-side-rail .gm-xindao-designer-position-name{display:block!important;width:auto!important;max-width:none!important;font-size:11px!important;font-weight:650!important;line-height:1.2!important;white-space:nowrap!important;overflow:visible!important;word-break:normal!important;padding:0!important;margin:0!important}
 body.pf-next-route .pf-next-navigation{order:2;display:block;flex:0 0 auto;overflow:visible;padding:8px 1px 0;margin:0;border:0;background:#fff}
 body.pf-next-route .pf-next-navigation h2,body.pf-next-route .pf-next-nav-hint,body.pf-next-route .pf-next-nav-foot,body.pf-next-route .pf-next-kicker{display:none}
 body.pf-next-route .pf-next-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;margin:0;overflow:visible}
 body.pf-next-route .pf-next-step{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;min-height:60px;padding:5px 0;border:0;border-radius:10px;background:transparent;text-align:center}
 body.pf-next-route .pf-next-step[aria-current=step]{background:#f4f4f4;border-color:transparent}
 body.pf-next-route .pf-next-step-icon{display:flex;align-items:center;justify-content:center;width:25px;height:25px}
 body.pf-next-route .pf-next-step-icon svg{display:block;width:22px;height:22px}
 body.pf-next-route .pf-next-step-number,body.pf-next-route .pf-next-desktop-label,body.pf-next-route .pf-next-step-arrow{display:none}
 body.pf-next-route .pf-next-mobile-label{display:block;font-size:10px;font-weight:600;line-height:1.25;letter-spacing:-.02em;white-space:nowrap}
 body.pf-next-route .pf-next-admin-open{display:block;width:100%;min-height:42px;margin:8px 0 0;font-size:12px}
 body.pf-next-route .pf-next-right{order:3;display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:visible;border:0;background:#fff}
 body.pf-next-route .pf-next-panel-top{display:none}
 body.pf-next-route .pf-next-mobile-context-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:51px;padding:11px 14px;margin:8px 0 0;border:1px solid #e5e5e5;border-bottom:0;border-radius:13px 13px 0 0;background:#fff;color:#111;font:inherit;text-align:left;cursor:pointer}
 body.pf-next-route .pf-next-mobile-context-title{font-size:17px;font-weight:700}
 body.pf-next-route .pf-next-mobile-chevron{font-size:23px;line-height:1;transition:transform .15s}
 body.pf-next-route .pf-next-mobile-context-closed .pf-next-mobile-chevron{transform:rotate(180deg)}
 body.pf-next-route .pf-next-panel-scroll{display:block;flex:none;min-height:0;overflow:visible;padding:0 13px 8px;border:1px solid #e5e5e5;border-top:0;border-radius:0 0 13px 13px}
 body.pf-next-route .pf-next-panel{padding:3px 0 10px;font-size:14px}
 body.pf-next-route .pf-next-panel .pf-next-copy{margin:0 0 10px;font-size:13px;color:#777;line-height:1.55}
 body.pf-next-route .pf-next-panel h3{font-size:14px;margin:12px 0 8px}
 body.pf-next-route .pf-next-mobile-context-closed .pf-next-panel-scroll{display:none}
 body.pf-next-route .pf-next-mobile-context-closed .pf-next-mobile-context-toggle{border-bottom:1px solid #e5e5e5;border-radius:13px}
 body.pf-next-route .pf-next-mobile-edit-actions{display:flex;gap:10px;margin:-1px 0 0;padding:0 13px 13px;border:1px solid #e5e5e5;border-top:0;border-radius:0 0 13px 13px;background:#fff}
 body.pf-next-route .pf-next-app:not([data-active=print]) .pf-next-mobile-edit-actions,
 body.pf-next-route .pf-next-mobile-context-closed .pf-next-mobile-edit-actions{display:none}
 body.pf-next-route .pf-next-app[data-active=print] .pf-next-panel-scroll{border-radius:0}
 body.pf-next-route .pf-next-mobile-edit-actions button{flex:1 1 0;min-width:0;min-height:46px;border:1px solid #e2e2e2;border-radius:9px;background:#fff;color:#111;font:inherit;font-size:13px;cursor:pointer}
 body.pf-next-route .pf-next-mobile-edit-actions button:disabled{opacity:.45;cursor:not-allowed}
 body.pf-next-route .pf-next-mobile-finish{display:flex;gap:9px;margin:12px 0 0}
 body.pf-next-route .pf-next-mobile-finish button{flex:1;min-height:44px;border:1px solid #dcdcdc;border-radius:9px;background:#fff;font:inherit;font-size:12px;font-weight:650;color:#222}
 body.pf-next-route .pf-next-mobile-finish .pf-next-mobile-done{background:#151515;color:#fff;border-color:#151515}
 body.pf-next-route .pf-next-secondary{margin:14px 0 22px}
 body.pf-next-route .pf-next-checkout{position:sticky;bottom:0;z-index:30;flex:0 0 auto;margin:0 -12px;padding:9px 14px max(12px,env(safe-area-inset-bottom));border-top:1px solid #e5e5e5;background:#fff;box-shadow:0 -5px 14px rgba(0,0,0,.07)}
 body.pf-next-route .pf-next-price{gap:8px;margin-bottom:6px}
 body.pf-next-route .pf-next-price strong{font-size:20px;line-height:1.15}
 body.pf-next-route .pf-next-price small{font-size:11px;max-width:50%;line-height:1.25}
 body.pf-next-route .pf-next-checkout #gm-xindao-matrix-add{min-height:44px!important;font-size:14px!important}
 body.pf-next-route .pf-next-app.pf-next-mobile-canvas-expanded .pf-next-center{position:fixed;inset:0;z-index:99999;overflow-y:auto;padding:12px;background:#fff}
 body.pf-next-route .pf-next-app.pf-next-mobile-canvas-expanded .pf-next-canvas-slot{max-height:calc(100dvh - 200px);aspect-ratio:1/1;margin:auto}
 body.pf-next-route .pf-next-mobile-canvas-actions button:focus-visible,body.pf-next-route .pf-next-mobile-context-toggle:focus-visible,body.pf-next-route .pf-next-step:focus-visible{outline:2px solid #a87c4e;outline-offset:2px}
}
@media(prefers-reduced-motion:reduce){body.pf-next-route *,body.pf-next-route *:before,body.pf-next-route *:after{scroll-behavior:auto!important;transition:none!important}}

/* Native text-layer typography additions; these settings are saved in the same design payload. */
body.pf-next-route .pf-next-text-format{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin:14px 0 16px}
body.pf-next-route .pf-next-text-format button{min-height:39px;border:1px solid #e5e5e5;border-radius:7px;background:#fff;color:#111;font-size:17px;cursor:pointer}
body.pf-next-route .pf-next-text-format button[aria-pressed=true]{border-color:#111;background:#111;color:#fff}
body.pf-next-route .pf-next-text-format button[data-next-text-align=right]{transform:scaleX(-1)}
body.pf-next-route .pf-next-arc-label{display:block;margin:8px 0 15px!important}
body.pf-next-route .pf-next-arc-label input{display:block;margin-top:10px}
/* Native history controls used to be absolutely positioned in the old modal. */
body.pf-next-route .pf-next-history .gm-xindao-history-actions{position:static!important;inset:auto!important;top:auto!important;right:auto!important;transform:none!important;z-index:auto!important}
body.pf-next-route .pf-next-stage-foot .pf-next-proof{width:auto!important;min-width:0!important;flex:0 1 auto!important}

/* Override ID-specific old modal positioning only for the two retained native widgets. */
body.pf-next-route #gm-xindao-designer.pf-next-ready .pf-next-history .gm-xindao-history-actions{position:static!important;top:auto!important;right:auto!important;left:auto!important;bottom:auto!important;transform:none!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important}
@media(min-width:851px){body.pf-next-route #gm-xindao-designer.pf-next-ready .pf-next-side-rail .gm-xindao-designer-position-tab{width:100%!important;min-width:0!important;max-width:100%!important}}
body.pf-next-route #gm-xindao-designer.pf-next-ready .pf-next-stage-foot #gm-xindao-download-preview{font-family:inherit!important;font-size:13px!important;font-weight:650!important;background:#fff!important;color:#111!important;border:1px solid #d9d9d9!important;border-radius:8px!important;min-height:37px!important;padding:7px 11px!important;cursor:pointer}
@media(max-width:850px){body.pf-next-route #gm-xindao-designer.pf-next-ready .pf-next-stage-foot #gm-xindao-download-preview{font-size:11px!important;min-height:30px!important;padding:5px 8px!important}}
/* Final viewport fit: primary actions should stay above the fixed price panel. */
body.pf-next-route .pf-next-stage-foot>p{display:none}
body.pf-next-route .pf-next-panel{padding-top:14px;padding-bottom:16px}
body.pf-next-route .pf-next-panel .pf-next-copy{margin-bottom:12px}
body.pf-next-route .pf-next-panel label{margin-bottom:8px}
body.pf-next-route .pf-next-panel textarea{min-height:66px}
body.pf-next-route .pf-next-text-format{margin:8px 0 9px}
body.pf-next-route .pf-next-arc-label{margin:5px 0 9px!important}
body.pf-next-route .pf-next-arc-label input{margin-top:6px}
/* The legacy engine's collapsible settings class is internal state, not Next UI state. */
body.pf-next-route #gm-xindao-designer.pf-next-ready.gm-xindao-settings-collapsible #gm-xindao-designer-position-switcher{display:block!important;position:static!important;visibility:visible!important}
/* Old mobile-modal selectors must not hide the actual native inputs inside Next panels. */
body.pf-next-route #gm-xindao-designer.pf-next-ready .pf-next-text-fields #gm-xindao-text-tools,
body.pf-next-route #gm-xindao-designer.pf-next-ready .pf-next-image-tools #gm-xindao-image-tools{display:block!important;visibility:visible!important;opacity:1!important}

/* 5.3.13: one compact checkout; preserve original supplier price/stock DOM in disclosures. */
body.pf-next-route .pf-next-price{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:9px}
body.pf-next-route .pf-next-price strong{font-size:23px;line-height:1.2;font-weight:750;color:#111}
body.pf-next-route .pf-next-price small{font-size:12px;color:#777;text-align:right}
body.pf-next-route .pf-next-secondary{margin:14px 0 24px;border-top:1px solid #ececec}
body.pf-next-route .pf-next-detail{border-bottom:1px solid #ececec;padding:0}
body.pf-next-route .pf-next-detail>summary{padding:12px 0;cursor:pointer;font-size:13px;font-weight:600;list-style-position:inside}
body.pf-next-route .pf-next-detail>div{padding:0 0 12px;font-size:12px}
body.pf-next-route .pf-next-price-native .gm-xindao-price-summary{display:grid;gap:4px}
/* The native total/unit feed the sticky price. Do not repeat them inside details. */
body.pf-next-route .pf-next-price-native .gm-xindao-price-summary>strong,body.pf-next-route .pf-next-price-native .pf-next-native-unit,body.pf-next-route .pf-next-price-native .gm-xindao-delivery-summary{display:none!important}
body.pf-next-route .pf-next-delivery-native #gm-xindao-review:not([hidden]),body.pf-next-route .pf-next-delivery-native #gm-xindao-delivery:not([hidden]),body.pf-next-route .pf-next-delivery-native #gm-xindao-delivery-estimate:not([hidden]){max-height:none;overflow:visible}
body.pf-next-route .pf-next-feedback:empty{display:none}
body.pf-next-route .pf-next-feedback{margin-top:10px;font-size:12px}

