/* Fashionflo Stores v3.51.6 — Desktop Interaction & UX Polish
   DESKTOP ONLY. The approved v3.49.9 mobile assets remain untouched.
   Layout contract: Tools | hero canvas | view rail | contextual inspector + single bottom command bar.
*/
@media (min-width: 901px){
  .ffds-commerce-mode.ffds3514{
    --d-blue:#0b8fe6;
    --d-blue-dark:#0876bd;
    --d-navy:#12334f;
    --d-text:#173a57;
    --d-muted:#6d8294;
    --d-line:#dce6ed;
    --d-soft:#f7f9fb;
    --d-tools:96px;
    --d-views:124px;
    --d-inspector:398px;
    --d-header:80px;
    --d-footer:96px;
    min-height:100dvh!important;
    padding-bottom:var(--d-footer)!important;
    background:#fff!important;
  }
  .ffds-commerce-mode.ffds3514[data-current-step="design"]{height:100dvh!important;overflow:hidden!important;padding-bottom:0!important}

  /* Header — match approved mockup proportions. */
  .ffds-commerce-mode.ffds3514 .ffdy-header-v3330{
    height:var(--d-header)!important;
    grid-template-columns:280px minmax(520px,1fr) auto!important;
    padding:0 26px!important;
    gap:18px!important;
    border-bottom:1px solid #dfe8ee!important;
    box-shadow:0 2px 10px rgba(18,48,72,.035)!important;
  }
  .ffds-commerce-mode.ffds3514 .ffdy-brand-logo-v3330{width:50px!important;height:50px!important;max-width:50px!important;max-height:50px!important}
  .ffds-commerce-mode.ffds3514 .ffdy-brand-copy-v3330 strong{font-size:21px!important;letter-spacing:.025em!important}
  .ffds-commerce-mode.ffds3514 .ffdy-brand-copy-v3330 small{font-size:9px!important;letter-spacing:.17em!important;margin-top:5px!important}
  .ffds-commerce-mode.ffds3514 .ffdy-progress-v3330{gap:16px!important}
  .ffds-commerce-mode.ffds3514 .ffdy-progress-v3330>i{width:58px!important}
  .ffds-commerce-mode.ffds3514 .ffdy-progress-v3330 button{font-size:12px!important;gap:9px!important}
  .ffds-commerce-mode.ffds3514 .ffdy-progress-v3330 button b{width:34px!important;height:34px!important;font-size:12px!important}
  .ffds-commerce-mode.ffds3514 .ffdy-header-actions-v3330{gap:9px!important}
  .ffds-commerce-mode.ffds3514 .ffdy-header-action-v3330{height:43px!important;padding:0 15px!important;font-size:12px!important}
  .ffds-commerce-mode.ffds3514 .ffdy-save-state-v3330{font-size:11px!important}

  /* Main desktop shell. Do not use the mobile layout on desktop. */
  .ffds-commerce-mode.ffds3514 .ffds-step[data-step="design"]:not([hidden]){
    display:grid!important;
    grid-template-columns:var(--d-tools) minmax(0,1fr) var(--d-views) var(--d-inspector)!important;
    grid-template-rows:minmax(0,1fr)!important;
    width:100%!important;
    height:calc(100dvh - var(--d-header) - var(--d-footer))!important;
    min-height:650px!important;
    overflow:hidden!important;
    background:#fff!important;
  }

  /* Left creation rail — one home for creation tools. */
  .ffds-commerce-mode.ffds3514 .ffds-tools{
    grid-column:1!important;grid-row:1!important;
    width:auto!important;height:100%!important;
    padding:12px 8px!important;gap:5px!important;
    border-right:1px solid var(--d-line)!important;
    background:#fff!important;overflow-y:auto!important;overflow-x:hidden!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-tools button{
    min-height:82px!important;height:auto!important;padding:9px 4px!important;
    border:0!important;border-radius:12px!important;background:#fff!important;
    box-shadow:none!important;color:#21435e!important;gap:7px!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-tools button:hover{background:#f4faff!important;color:#087fce!important}
  .ffds-commerce-mode.ffds3514 .ffds-tools button.is-active{background:#eaf6ff!important;color:#087fce!important;box-shadow:inset 3px 0 0 var(--d-blue)!important}
  .ffds-commerce-mode.ffds3514 .ffds-tool-icon,.ffds-commerce-mode.ffds3514 .ffds-tool-icon svg{width:30px!important;height:30px!important}
  .ffds-commerce-mode.ffds3514 .ffds-tools small{font-size:11px!important;line-height:1.08!important;font-weight:850!important;max-width:74px!important;text-align:center!important}

  /* Canvas workspace — hero of the desktop UI. */
  .ffds-commerce-mode.ffds3514 .ffds-canvas-wrap{
    grid-column:2!important;grid-row:1!important;
    position:relative!important;width:100%!important;height:100%!important;min-width:0!important;
    padding:12px 14px 14px!important;
    background:var(--d-soft)!important;
    display:grid!important;grid-template-rows:56px minmax(0,1fr)!important;gap:8px!important;
    overflow:hidden!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-canvas-toolbar{
    grid-row:1!important;height:56px!important;margin:0!important;padding:0 2px!important;
    display:flex!important;align-items:center!important;gap:8px!important;z-index:15!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-canvas-toolbar button{
    height:40px!important;padding:0 14px!important;border:1px solid #d6e2ea!important;border-radius:11px!important;
    background:#fff!important;color:#31536c!important;font-size:11px!important;font-weight:800!important;box-shadow:none!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-canvas-toolbar button:hover:not(:disabled){border-color:#b9d8ea!important;color:#087fce!important;background:#fbfdff!important}
  .ffds-commerce-mode.ffds3514 .ffds-canvas-toolbar button:disabled{opacity:.42!important}

  /* Desktop has one compact active area selector above the garment — no duplicate product/colour/method strip. */
  .ffds-commerce-mode.ffds3514 .ffds-canvas-config{display:contents!important}
  .ffds-commerce-mode.ffds3514 .ffds-canvas-config>.ffds-config-product,
  .ffds-commerce-mode.ffds3514 .ffds-canvas-config>.ffds-config-choice,
  .ffds-commerce-mode.ffds3514 .ffds-canvas-config>.ffds-config-method,
  .ffds-commerce-mode.ffds3514 .ffds-canvas-config>[data-area-note-v3380],
  .ffds-commerce-mode.ffds3514 .ffds-canvas-config>[data-area-tabs-v3380]{display:none!important}
  .ffds-commerce-mode.ffds3514 .ffds-print-area-control{
    position:absolute!important;top:20px!important;left:50%!important;transform:translateX(-50%)!important;z-index:24!important;
    width:auto!important;min-width:300px!important;max-width:500px!important;height:42px!important;min-height:42px!important;
    margin:0!important;padding:0 42px 0 18px!important;border:1px solid #d3e0e9!important;border-radius:999px!important;
    background:#fff!important;box-shadow:0 5px 16px rgba(19,50,75,.065)!important;
    display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;cursor:pointer!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-print-area-control[hidden]{display:none!important}
  .ffds-commerce-mode.ffds3514 .ffds-print-area-control>span,.ffds-commerce-mode.ffds3514 .ffds-print-area-control>em{display:none!important}
  .ffds-commerce-mode.ffds3514 .ffds-print-area-control:before{
    content:attr(data-desktop-area-label-v3514);display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
    color:#183b57;font-size:11.5px;font-weight:850;letter-spacing:.002em;
  }
  .ffds-commerce-mode.ffds3514 .ffds-print-area-control:after{content:"⌄";position:absolute;right:16px;top:50%;transform:translateY(-56%);font-size:15px;font-weight:900;color:#4d6d86;pointer-events:none}
  .ffds-commerce-mode.ffds3514 .ffds-print-area-control select{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0!important;cursor:pointer!important;z-index:2!important}

  .ffds-commerce-mode.ffds3514 .ffds-canvas-card{
    grid-row:2!important;position:relative!important;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;
    margin:0!important;padding:6px!important;border:1px solid #dce6ed!important;border-radius:14px!important;
    background:#fff!important;box-shadow:0 2px 10px rgba(19,48,72,.025)!important;
    display:grid!important;place-items:center!important;overflow:hidden!important;
  }
  /* Keep the proven engine coordinate system square, but make it genuinely fill the desktop canvas. */
  .ffds-commerce-mode.ffds3514 .ffds-stage{
    position:relative!important;
    width:min(98%,calc(100dvh - 235px),920px)!important;
    height:auto!important;aspect-ratio:1/1!important;
    min-width:560px!important;min-height:560px!important;max-width:920px!important;max-height:none!important;
    margin:auto!important;padding:0!important;overflow:visible!important;transform-origin:center center!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-stage>img[data-ffgw-garment-image]{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important}
  .ffds-commerce-mode.ffds3514 .ffds-view-label,.ffds-commerce-mode.ffds3514 .ffds-method-badge,.ffds-commerce-mode.ffds3514 .ffds-emb-engine-badge{display:none!important}
  .ffds-commerce-mode.ffds3514 .ffds-drop-hint{bottom:9px!important;padding:7px 13px!important;background:rgba(255,255,255,.94)!important;border:1px dashed #d3e1eb!important;color:#7a91a4!important;font-size:10px!important}
  .ffds-commerce-mode.ffds3514 .ffds-object-float{display:none!important}

  /* The existing side wrapper becomes transparent to the desktop grid. */
  .ffds-commerce-mode.ffds3514 .ffds-side{display:contents!important}

  /* View rail immediately beside canvas, as in the approved mockup. */
  .ffds-commerce-mode.ffds3514 .ffds-views{
    grid-column:3!important;grid-row:1!important;
    width:auto!important;height:100%!important;min-width:0!important;
    padding:12px 10px!important;margin:0!important;gap:10px!important;
    display:flex!important;flex-direction:column!important;align-items:stretch!important;
    background:#f8fafc!important;border-left:1px solid #e0e8ee!important;border-right:1px solid #e0e8ee!important;
    overflow-y:auto!important;overflow-x:hidden!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-views>button,.ffds-commerce-mode.ffds3514 .ffds-extra-views button{
    width:100%!important;min-height:112px!important;padding:8px!important;border:1px solid #d9e4ec!important;border-radius:13px!important;
    background:#fff!important;color:#31526b!important;box-shadow:0 2px 7px rgba(19,48,72,.025)!important;
    display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:5px!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-views>button.is-selected,.ffds-commerce-mode.ffds3514 .ffds-extra-views button.is-selected{border:2px solid var(--d-blue)!important;box-shadow:0 0 0 2px rgba(11,143,230,.08)!important;color:#087fce!important}
  .ffds-commerce-mode.ffds3514 .ffds-view-thumb,.ffds-commerce-mode.ffds3514 .ffds-extra-views .ffds-view-thumb{width:92px!important;height:78px!important;border-radius:9px!important;background:#f1f5f8!important}
  .ffds-commerce-mode.ffds3514 .ffds-view-thumb img{width:100%!important;height:100%!important;object-fit:contain!important}
  .ffds-commerce-mode.ffds3514 .ffds-views>button strong,.ffds-commerce-mode.ffds3514 .ffds-extra-views strong{font-size:10.5px!important;line-height:1.1!important;font-weight:850!important}
  .ffds-commerce-mode.ffds3514 .ffds-extra-views{display:flex!important;flex-direction:column!important;gap:10px!important}
  .ffds-commerce-mode.ffds3514 .ffds-zoom{width:100%!important;min-height:58px!important;margin-top:1px!important;border:1px solid #d8e3eb!important;border-radius:12px!important;background:#fff!important;display:grid!important;grid-template-columns:30px 1fr 30px!important;padding:6px!important;box-shadow:0 2px 7px rgba(19,48,72,.025)!important}
  .ffds-commerce-mode.ffds3514 .ffds-zoom button{font-size:17px!important;color:#24475f!important}
  .ffds-commerce-mode.ffds3514 .ffds-zoom small{font-size:7.5px!important;color:#7690a3!important;font-weight:800!important}.ffds-commerce-mode.ffds3514 .ffds-zoom b{font-size:10px!important;color:#173a57!important}

  /* Contextual inspector — far right only, no duplicate controls. */
  .ffds-commerce-mode.ffds3514 .ffds-panel{
    grid-column:4!important;grid-row:1!important;
    width:100%!important;height:100%!important;max-height:none!important;min-width:0!important;
    padding:24px 24px 26px!important;margin:0!important;background:#fff!important;
    border:0!important;overflow-y:auto!important;overflow-x:hidden!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-panel-kicker{font-size:9.5px!important;letter-spacing:.14em!important;color:#0b86d6!important;font-weight:900!important}
  .ffds-commerce-mode.ffds3514 .ffds-panel h2{font-size:28px!important;line-height:1.05!important;letter-spacing:-.035em!important;margin:6px 0 7px!important;color:#12334f!important;font-weight:900!important}
  .ffds-commerce-mode.ffds3514 .ffds-panel>p{font-size:13.5px!important;line-height:1.45!important;color:#6b8092!important;margin:0 0 17px!important}
  .ffds-commerce-mode.ffds3514 .ffds-panel-start .ffds-start-actions{display:grid!important;gap:10px!important}
  .ffds-commerce-mode.ffds3514 .ffds-panel-start .ffds-start-actions>button{
    min-height:74px!important;padding:10px 13px!important;border:1px solid #d9e5ed!important;border-radius:13px!important;background:#fff!important;
    display:grid!important;grid-template-columns:48px minmax(0,1fr) 18px!important;align-items:center!important;gap:12px!important;text-align:left!important;color:#173a57!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-panel-start .ffds-start-actions>button:hover{border-color:#b9d8ea!important;background:#fbfdff!important}
  .ffds-commerce-mode.ffds3514 .ffds-panel-start .ffds-start-actions>button>span{width:46px!important;height:46px!important;border-radius:11px!important;background:#eaf6fe!important;color:#0b8fe6!important;display:grid!important;place-items:center!important}
  .ffds-commerce-mode.ffds3514 .ffds-panel-start .ffds-start-actions>button>span svg{width:25px!important;height:25px!important}
  .ffds-commerce-mode.ffds3514 .ffds-panel-start .ffds-start-actions b{font-size:14px!important;line-height:1.2!important;color:#173a57!important}
  .ffds-commerce-mode.ffds3514 .ffds-panel-start .ffds-start-actions small{display:block!important;margin-top:3px!important;font-size:10.5px!important;line-height:1.3!important;color:#718698!important;font-weight:600!important}
  .ffds-commerce-mode.ffds3514 .ffds-panel-start .ffds-start-actions em{font-size:22px!important;color:#496a82!important;font-style:normal!important}
  .ffds-commerce-mode.ffds3514 .ffds-faster{margin-top:14px!important;padding:15px 16px!important;border:1px solid #cde5f4!important;border-radius:13px!important;background:#eaf7ff!important}
  .ffds-commerce-mode.ffds3514 .ffds-faster strong{font-size:11px!important;color:#173a57!important}.ffds-commerce-mode.ffds3514 .ffds-faster span{display:block!important;margin-top:5px!important;font-size:10.5px!important;line-height:1.35!important;color:#58738a!important}
  .ffds-commerce-mode.ffds3514 .ffds-how{display:none!important}

  /* Keep the rich mobile-era functionality, but make its desktop inspector readable. */
  .ffds-commerce-mode.ffds3514 .ffds-desktop-tool-head-v3490{margin-bottom:14px!important}
  .ffds-commerce-mode.ffds3514 .ffds-field>span,.ffds-commerce-mode.ffds3514 .ffds-section-label{font-size:11px!important;font-weight:850!important;color:#284a63!important}
  .ffds-commerce-mode.ffds3514 .ffds-field input,.ffds-commerce-mode.ffds3514 .ffds-field textarea,.ffds-commerce-mode.ffds3514 .ffds-field select{font-size:13px!important}
  .ffds-commerce-mode.ffds3514 .ffds-upload-zone{min-height:180px!important}.ffds-commerce-mode.ffds3514 .ffds-upload-zone strong{font-size:15px!important}.ffds-commerce-mode.ffds3514 .ffds-upload-zone small{font-size:11px!important}
  .ffds-commerce-mode.ffds3514 .ffds-text-primary-v3491{min-height:50px!important}

  /* Single bottom command bar — product, colour, designs, production method, next. */
  .ffds-commerce-mode.ffds3514 .ffdy-design-footer-v3330{
    height:var(--d-footer)!important;position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:190!important;
    padding:10px 26px!important;background:rgba(255,255,255,.992)!important;backdrop-filter:blur(14px)!important;border-top:1px solid #dce6ed!important;
    box-shadow:0 -5px 20px rgba(18,48,72,.055)!important;
    display:grid!important;grid-template-columns:330px minmax(0,1fr) 390px!important;align-items:center!important;gap:18px!important;
  }
  .ffds-commerce-mode.ffds3514 .ffdy-footer-product-v3330{height:70px!important;padding:0!important;gap:12px!important}
  .ffds-commerce-mode.ffds3514 .ffdy-footer-product-v3330>i{display:none!important}
  .ffds-commerce-mode.ffds3514 .ffdy-footer-product-v3330>.ffdy-footer-product-image-v3514{width:62px!important;height:62px!important;flex:0 0 62px!important;object-fit:contain!important;border-radius:10px!important;background:#f2f5f7!important;border:1px solid #e0e7ed!important;padding:4px!important}
  .ffds-commerce-mode.ffds3514 .ffdy-footer-product-v3330 strong{font-size:14px!important;color:#173a57!important}.ffds-commerce-mode.ffds3514 .ffdy-footer-product-v3330 small{font-size:10.5px!important;color:#758a9b!important}
  .ffds-commerce-mode.ffds3514 .ffdy-footer-actions-v3330{height:100%!important;justify-content:flex-start!important;gap:14px!important;min-width:0!important}
  .ffds-commerce-mode.ffds3514 .ffdy-footer-actions-v3330>button[data-open-product-drawer]{display:none!important}
  .ffds-commerce-mode.ffds3514 .ffdy-footer-actions-v3330>button{
    height:58px!important;padding:0 18px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#24475f!important;font-size:11px!important;font-weight:850!important;box-shadow:none!important;
  }
  .ffds-commerce-mode.ffds3514 .ffdy-footer-actions-v3330>button:not(:first-child){border-left:1px solid #e0e7ed!important}
  .ffds-commerce-mode.ffds3514 .ffdy-footer-colour-v3514{display:flex!important;align-items:center!important;gap:10px!important;min-width:205px!important;text-align:left!important}
  .ffds-commerce-mode.ffds3514 .ffdy-footer-colour-v3514 i{width:42px!important;height:42px!important;border-radius:50%!important;background:var(--swatch,#111)!important;border:2px solid #fff!important;box-shadow:0 0 0 1px #cfdce5!important}
  .ffds-commerce-mode.ffds3514 .ffdy-footer-colour-v3514 span{display:grid!important;gap:2px!important}.ffds-commerce-mode.ffds3514 .ffdy-footer-colour-v3514 strong{font-size:12px!important}.ffds-commerce-mode.ffds3514 .ffdy-footer-colour-v3514 small{font-size:10px!important;color:#718698!important}
  .ffds-commerce-mode.ffds3514 .ffdy-footer-method-v3330{height:52px!important;min-width:280px!important;padding:4px!important;border-radius:999px!important;background:#f1f4f7!important;display:flex!important;gap:4px!important}
  .ffds-commerce-mode.ffds3514 .ffdy-footer-method-v3330 button{height:44px!important;min-width:130px!important;padding:0 18px!important;font-size:11px!important;border-radius:999px!important}
  .ffds-commerce-mode.ffds3514 .ffdy-footer-method-v3330 button.is-active{background:var(--d-blue)!important;color:#fff!important;box-shadow:0 3px 9px rgba(11,143,230,.18)!important}
  .ffds-commerce-mode.ffds3514 .ffdy-next-v3330{height:66px!important;border-radius:14px!important;background:linear-gradient(180deg,#159ded,#0b83d3)!important;font-size:13px!important;font-weight:900!important;box-shadow:0 7px 0 #0969a9,0 10px 20px rgba(10,128,207,.18)!important}

  /* Desktop product chooser is a centred catalogue modal, not a stretched mobile drawer. */
  .ffds-commerce-mode.ffds3514 .ffds-product-drawer{position:fixed!important;inset:0!important;z-index:460!important;display:grid!important;place-items:center!important;padding:32px!important;background:transparent!important}
  .ffds-commerce-mode.ffds3514 .ffds-product-drawer[hidden]{display:none!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-backdrop{position:absolute!important;inset:0!important;background:rgba(13,39,60,.42)!important;backdrop-filter:blur(3px)!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-sheet{position:relative!important;inset:auto!important;width:min(1160px,calc(100vw - 64px))!important;height:min(790px,calc(100dvh - 64px))!important;max-width:none!important;max-height:none!important;margin:0!important;border:1px solid #dce6ed!important;border-radius:20px!important;background:#fff!important;box-shadow:0 28px 90px rgba(13,42,64,.23)!important;display:grid!important;grid-template-rows:auto auto auto minmax(0,1fr) auto!important;overflow:hidden!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-sheet>header{padding:20px 22px 14px!important;border-bottom:1px solid #e6edf2!important}.ffds-commerce-mode.ffds3514 .ffds-drawer-sheet>header h2{font-size:27px!important;margin:4px 0 3px!important}.ffds-commerce-mode.ffds3514 .ffds-drawer-sheet>header p{font-size:12px!important}
  .ffds-commerce-mode.ffds3514 .ffds-product-search{margin:14px 22px 8px!important;height:48px!important;border-radius:12px!important}.ffds-commerce-mode.ffds3514 .ffds-drawer-filters{padding:0 22px 10px!important;border-bottom:1px solid #e8eef3!important}.ffds-commerce-mode.ffds3514 .ffds-category-tabs{gap:7px!important;flex-wrap:wrap!important;overflow:visible!important}.ffds-commerce-mode.ffds3514 .ffds-category-tabs button{height:34px!important;padding:0 15px!important;border-radius:999px!important;font-size:10px!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-products{padding:17px 22px 22px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;align-content:start!important;overflow-y:auto!important;background:#fbfcfd!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-product{min-height:310px!important;display:grid!important;grid-template-columns:1fr!important;grid-template-rows:195px auto!important;gap:0!important;border:1px solid #dbe6ed!important;border-radius:15px!important;background:#fff!important;overflow:hidden!important;padding:0!important;height:auto!important;box-shadow:0 3px 12px rgba(19,49,72,.035)!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-product:has(input:checked){border:2px solid var(--d-blue)!important;box-shadow:0 5px 18px rgba(10,143,229,.12)!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-product-media{width:100%!important;height:195px!important;padding:16px!important;background:#f4f7f9!important;border-radius:0!important}.ffds-commerce-mode.ffds3514 .ffds-drawer-product-media img{width:100%!important;height:100%!important;object-fit:contain!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-product-copy{padding:14px 15px 16px!important;display:grid!important;gap:4px!important;align-content:start!important}.ffds-commerce-mode.ffds3514 .ffds-drawer-product-copy>strong{font-size:15px!important;line-height:1.2!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}.ffds-commerce-mode.ffds3514 .ffds-drawer-product-copy>small{font-size:11px!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-sheet>footer{height:72px!important;padding:10px 22px!important;display:grid!important;grid-template-columns:120px minmax(0,1fr)!important;gap:10px!important;border-top:1px solid #e3ebf1!important;background:#fff!important}.ffds-commerce-mode.ffds3514 .ffds-drawer-cancel,.ffds-commerce-mode.ffds3514 .ffds-drawer-add{height:50px!important;border-radius:12px!important}

  /* Steps 2/3: leave the proven v3.49.9 commerce behaviour and layout intact. */
}


/* v3.51.2 — desktop interaction and parity polish. */
@media (min-width:901px){
  /* Hidden steps must really disappear. v3.51.1's !important design grid could
     otherwise keep Step 1 visible underneath Sizes & Quantity. */
  .ffds-commerce-mode.ffds3514 .ffds-step[hidden]{display:none!important}

  /* Desktop zoom is a visual-plane zoom: garment + production boundaries +
     artwork + text all scale together, exactly like a design canvas should. */
  .ffds-commerce-mode.ffds3514 .ffds-stage{
    transform:scale(var(--ffds-desktop-stage-scale-v3514,1.08))!important;
    transform-origin:50% 50%!important;
    transition:transform .16s ease!important;
    will-change:transform!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-stage>img[data-ffgw-garment-image]{transform:none!important}

  /* Natural text bounds. The engine used the whole print-area width as the
     text element width, which created a huge selection box and made resizing
     feel artificially constrained. Desktop text now hugs its actual content. */
  .ffds-commerce-mode.ffds3514 .ffds-group-text,
  .ffds-commerce-mode.ffds3514 .ffds-year{
    width:max-content!important;
    min-width:1px!important;
    max-width:none!important;
    display:inline-block!important;
    white-space:pre!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  /* Bottom colour is a real control, with a clear affordance. */
  .ffds-commerce-mode.ffds3514 .ffdy-footer-colour-v3514{cursor:pointer!important;position:relative!important;padding-right:34px!important}
  .ffds-commerce-mode.ffds3514 .ffdy-footer-colour-v3514:after{content:"⌄";position:absolute;right:14px;top:50%;transform:translateY(-58%);font-size:15px;font-weight:900;color:#58758c}
  .ffds-commerce-mode.ffds3514 .ffdy-footer-colour-v3514:hover{background:#f7fbfe!important}

  /* Replace the browser-native production-area select with a clean desktop
     popover while retaining the original select as the engine/state owner. */
  .ffds-commerce-mode.ffds3514 .ffds-print-area-control{overflow:visible!important}
  .ffds-commerce-mode.ffds3514 .ffds-print-area-control select{pointer-events:none!important}
  .ffds-commerce-mode.ffds3514 .ffds-area-menu-v3514{
    position:absolute!important;top:68px!important;left:50%!important;transform:translateX(-50%)!important;z-index:70!important;
    width:min(390px,calc(100% - 36px))!important;padding:7px!important;border:1px solid #d7e3eb!important;border-radius:14px!important;
    background:#fff!important;box-shadow:0 18px 46px rgba(19,49,72,.17)!important;display:grid!important;gap:5px!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-area-menu-v3514[hidden]{display:none!important}
  .ffds-commerce-mode.ffds3514 .ffds-area-menu-v3514>[data-area-menu-options-v3514]{display:grid!important;gap:5px!important}
  .ffds-commerce-mode.ffds3514 .ffds-area-menu-head-v3514{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:7px 9px 5px!important;color:#70879a!important;font-size:9px!important;font-weight:850!important;letter-spacing:.06em!important;text-transform:uppercase!important}
  .ffds-commerce-mode.ffds3514 .ffds-area-menu-v3514 button{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:12px!important;align-items:center!important;min-height:48px!important;width:100%!important;padding:8px 11px!important;border:1px solid transparent!important;border-radius:10px!important;background:#fff!important;text-align:left!important;color:#173a57!important;cursor:pointer!important}
  .ffds-commerce-mode.ffds3514 .ffds-area-menu-v3514 button:hover{background:#f4faff!important;border-color:#cfe7f6!important}
  .ffds-commerce-mode.ffds3514 .ffds-area-menu-v3514 button.is-selected{background:#eaf6ff!important;border-color:#9fd6f7!important;color:#087fce!important}
  .ffds-commerce-mode.ffds3514 .ffds-area-menu-v3514 button strong{font-size:11px!important;line-height:1.25!important;white-space:normal!important}
  .ffds-commerce-mode.ffds3514 .ffds-area-menu-v3514 button span{width:19px!important;height:19px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:#edf4f8!important;font-size:10px!important}
  .ffds-commerce-mode.ffds3514 .ffds-area-menu-v3514 button.is-selected span{background:#168ee0!important;color:#fff!important}

  /* Tighten the view rail and make side buttons read as one responsive control
     family rather than oversized mobile cards. */
  .ffds-commerce-mode.ffds3514 .ffds-views{padding:10px 8px!important;gap:8px!important}
  .ffds-commerce-mode.ffds3514 .ffds-views>button,
  .ffds-commerce-mode.ffds3514 .ffds-extra-views button{min-height:100px!important;padding:7px!important;border-radius:12px!important}
  .ffds-commerce-mode.ffds3514 .ffds-view-thumb,
  .ffds-commerce-mode.ffds3514 .ffds-extra-views .ffds-view-thumb{width:78px!important;height:68px!important}
  .ffds-commerce-mode.ffds3514 .ffds-zoom{min-height:54px!important}

  /* A little more breathing room around the canvas without increasing the
     inspector footprint. */
  .ffds-commerce-mode.ffds3514 .ffds-canvas-wrap{padding:10px 12px 12px!important;grid-template-rows:54px minmax(0,1fr)!important;gap:6px!important}
  .ffds-commerce-mode.ffds3514 .ffds-canvas-card{padding:3px!important}
  .ffds-commerce-mode.ffds3514 .ffds-panel{padding:20px 20px 24px!important}
}

/* Laptop desktop — retain the same architecture, just tighten dimensions. */
@media (min-width:901px) and (max-width:1500px){
  .ffds-commerce-mode.ffds3514{--d-tools:84px;--d-views:112px;--d-inspector:345px;--d-footer:86px}
  .ffds-commerce-mode.ffds3514 .ffdy-header-v3330{grid-template-columns:220px minmax(420px,1fr) auto!important;padding:0 16px!important}
  .ffds-commerce-mode.ffds3514 .ffdy-brand-copy-v3330 strong{font-size:18px!important}.ffds-commerce-mode.ffds3514 .ffdy-brand-copy-v3330 small{font-size:8px!important}.ffds-commerce-mode.ffds3514 .ffdy-progress-v3330>i{width:38px!important}
  .ffds-commerce-mode.ffds3514 .ffds-stage{width:min(98%,calc(100dvh - 220px),790px)!important;min-width:430px!important;min-height:430px!important;max-width:790px!important}
  .ffds-commerce-mode.ffds3514 .ffds-view-thumb,.ffds-commerce-mode.ffds3514 .ffds-extra-views .ffds-view-thumb{width:70px!important;height:60px!important}.ffds-commerce-mode.ffds3514 .ffds-views>button,.ffds-commerce-mode.ffds3514 .ffds-extra-views button{min-height:92px!important}
  .ffds-commerce-mode.ffds3514 .ffds-panel{padding:18px 16px 20px!important}.ffds-commerce-mode.ffds3514 .ffds-panel h2{font-size:24px!important}.ffds-commerce-mode.ffds3514 .ffds-panel>p{font-size:12px!important}
  .ffds-commerce-mode.ffds3514 .ffds-panel-start .ffds-start-actions>button{min-height:64px!important;grid-template-columns:42px minmax(0,1fr) 16px!important;padding:8px 10px!important;gap:9px!important}.ffds-commerce-mode.ffds3514 .ffds-panel-start .ffds-start-actions>button>span{width:40px!important;height:40px!important}.ffds-commerce-mode.ffds3514 .ffds-panel-start .ffds-start-actions b{font-size:12px!important}.ffds-commerce-mode.ffds3514 .ffds-panel-start .ffds-start-actions small{font-size:9.5px!important}
  .ffds-commerce-mode.ffds3514 .ffdy-design-footer-v3330{grid-template-columns:270px minmax(0,1fr) 320px!important;padding:8px 14px!important;gap:10px!important}.ffds-commerce-mode.ffds3514 .ffdy-footer-product-v3330>.ffdy-footer-product-image-v3514{width:52px!important;height:52px!important;flex-basis:52px!important}.ffds-commerce-mode.ffds3514 .ffdy-footer-colour-v3514{min-width:155px!important}.ffds-commerce-mode.ffds3514 .ffdy-footer-method-v3330{min-width:230px!important}.ffds-commerce-mode.ffds3514 .ffdy-footer-method-v3330 button{min-width:105px!important}.ffds-commerce-mode.ffds3514 .ffdy-next-v3330{height:58px!important}
}

@media (min-width:901px) and (max-width:1180px){
  .ffds-commerce-mode.ffds3514{--d-tools:76px;--d-views:92px;--d-inspector:290px;--d-footer:82px}
  .ffds-commerce-mode.ffds3514 .ffds-stage{width:min(98%,calc(100dvh - 216px),660px)!important;min-width:350px!important;min-height:350px!important;max-width:660px!important}
  .ffds-commerce-mode.ffds3514 .ffdy-header-v3330{grid-template-columns:180px minmax(350px,1fr) auto!important}.ffds-commerce-mode.ffds3514 .ffdy-save-state-v3330{display:none!important}
  .ffds-commerce-mode.ffds3514 .ffdy-design-footer-v3330{grid-template-columns:230px minmax(0,1fr) 270px!important}.ffds-commerce-mode.ffds3514 .ffdy-footer-colour-v3514{min-width:130px!important}.ffds-commerce-mode.ffds3514 .ffdy-footer-method-v3330{min-width:190px!important}.ffds-commerce-mode.ffds3514 .ffdy-footer-method-v3330 button{min-width:82px!important}
}

/* v3.51.6 — desktop finishing: compact chooser, clean controls, multi-text affordances,
   progress polish and non-sticky quantity/review workflow. Mobile remains frozen. */
@media (min-width:901px){
  /* Completed progress step: one clean checkmark, never checkmark + tiny step number. */
  .ffds-commerce-mode.ffds3514 .ffdy-progress-v3330 button.is-complete b{
    font-size:0!important;
    color:#0b8fe6!important;
    background:#eaf6ff!important;
    border:1px solid #cce9fb!important;
    box-shadow:none!important;
  }
  .ffds-commerce-mode.ffds3514 .ffdy-progress-v3330 button.is-complete b:before{
    content:"✓"!important;
    display:block!important;
    font-size:15px!important;
    font-weight:900!important;
    line-height:1!important;
  }
  .ffds-commerce-mode.ffds3514 .ffdy-progress-v3330 button.is-complete{
    color:#536d81!important;
  }

  /* CSS-drawn chevrons replace font glyphs/native-looking arrows. */
  .ffds-commerce-mode.ffds3514 .ffds-print-area-control:after,
  .ffds-commerce-mode.ffds3514 .ffdy-footer-colour-v3514:after{
    content:""!important;
    width:7px!important;height:7px!important;
    border-right:2px solid #58758c!important;
    border-bottom:2px solid #58758c!important;
    transform:translateY(-68%) rotate(45deg)!important;
    border-radius:1px!important;
    background:transparent!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-area-menu-icon-v3514{
    width:22px!important;height:22px!important;border-radius:50%!important;
    display:grid!important;place-items:center!important;background:#eef5f9!important;color:#58758c!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-area-menu-icon-v3514 svg{width:13px!important;height:13px!important;display:block!important}
  .ffds-commerce-mode.ffds3514 .ffds-area-menu-v3514 button.is-selected .ffds-area-menu-icon-v3514{background:#0b8fe6!important;color:#fff!important}

  /* Product catalogue: cards are browseable products, not giant hero panels. */
  .ffds-commerce-mode.ffds3514 .ffds-drawer-sheet{
    width:min(1040px,calc(100vw - 72px))!important;
    height:min(700px,calc(100dvh - 72px))!important;
    border-radius:18px!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-drawer-sheet>header{padding:18px 22px 13px!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-sheet>header h2{font-size:25px!important}
  .ffds-commerce-mode.ffds3514 .ffds-product-search{height:44px!important;margin:12px 22px 7px!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-filters{padding-bottom:9px!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-products{
    grid-template-columns:repeat(auto-fit,minmax(210px,250px))!important;
    justify-content:center!important;
    gap:14px!important;
    padding:14px 22px 18px!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-drawer-product{
    width:100%!important;min-height:244px!important;max-height:272px!important;
    grid-template-rows:145px minmax(0,1fr)!important;
    border-radius:14px!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-drawer-product-media{height:145px!important;padding:11px!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-product-copy{padding:11px 13px 13px!important;gap:3px!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-product-copy>strong{font-size:13.5px!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-product-copy>small{font-size:10px!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-sheet>footer{height:70px!important;padding:9px 22px!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-add{
    color:#fff!important;background:linear-gradient(180deg,#159ded,#0b83d3)!important;
    border:0!important;font-size:13px!important;font-weight:900!important;letter-spacing:.01em!important;
    box-shadow:0 5px 0 #096eaf,0 8px 16px rgba(10,128,207,.15)!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-drawer-add svg{width:18px!important;height:18px!important;stroke-width:2.1!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-add:hover{filter:brightness(1.025)!important;transform:translateY(-1px)!important}

  /* Multiple text: clear secondary CTA in inspector. */
  .ffds-commerce-mode.ffds3514 .ffds-text-add-another-v3514{
    width:100%!important;min-height:54px!important;margin:10px 0 2px!important;padding:9px 13px!important;
    border:1px dashed #9ed5f5!important;border-radius:12px!important;background:#f6fbff!important;color:#167fc3!important;
    display:grid!important;grid-template-columns:30px minmax(0,1fr)!important;grid-template-rows:auto auto!important;
    column-gap:9px!important;text-align:left!important;cursor:pointer!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-text-add-another-v3514>span{grid-row:1/3;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e4f4fe;font-size:20px;font-weight:500}
  .ffds-commerce-mode.ffds3514 .ffds-text-add-another-v3514>strong{font-size:12px!important;font-weight:850!important;align-self:end}
  .ffds-commerce-mode.ffds3514 .ffds-text-add-another-v3514>small{font-size:9.5px!important;color:#6b8497!important;align-self:start}
  .ffds-commerce-mode.ffds3514 .ffds-text-add-another-v3514:hover{background:#eef9ff!important;border-color:#67bdec!important}
  .ffds-commerce-mode.ffds3514 .ffds-desktop-extra-text-v3514{pointer-events:auto!important;cursor:move!important}

  /* Delete selected object directly on canvas. */
  .ffds-commerce-mode.ffds3514 .ffds-selection-box{overflow:visible!important}
  .ffds-commerce-mode.ffds3514 .ffds-selection-delete-v3514{
    position:absolute!important;top:-17px!important;right:-17px!important;z-index:9!important;
    width:34px!important;height:34px!important;padding:0!important;border-radius:50%!important;
    border:1px solid #f2b8b8!important;background:#fff!important;color:#d92929!important;
    display:grid!important;place-items:center!important;box-shadow:0 4px 12px rgba(118,31,31,.14)!important;cursor:pointer!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-selection-delete-v3514 svg{width:18px!important;height:18px!important;display:block!important}
  .ffds-commerce-mode.ffds3514 .ffds-selection-delete-v3514:hover{background:#fff1f1!important;border-color:#e57474!important}

  /* Once design is complete, quantity and review own their own navigation.
     The fixed design command bar is deliberately absent on these steps. */
  .ffds-commerce-mode.ffds3514[data-current-step="quantity"] .ffdy-design-footer-v3330,
  .ffds-commerce-mode.ffds3514[data-current-step="review"] .ffdy-design-footer-v3330{display:none!important}
  .ffds-commerce-mode.ffds3514[data-current-step="quantity"],
  .ffds-commerce-mode.ffds3514[data-current-step="review"]{padding-bottom:0!important}

  /* A selected text should read as its own object, not a print-area-width strip. */
  .ffds-commerce-mode.ffds3514 .ffds-desktop-extra-text-v3514,
  .ffds-commerce-mode.ffds3514 .ffds-group-text{max-width:none!important;min-width:1px!important;width:max-content!important;white-space:pre!important}
}

/* v3.51.6 — desktop canvas/utilities polish. Mobile remains isolated. */
@media (min-width:901px){
  /* Give the actual garment more of the viewport. The utility row no longer
     consumes a full horizontal strip above the canvas. */
  .ffds-commerce-mode.ffds3514 .ffds-canvas-wrap{
    grid-template-rows:minmax(0,1fr)!important;
    padding:10px 12px 12px 108px!important;
    gap:0!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-canvas-card{grid-row:1!important;height:100%!important;min-height:0!important}
  .ffds-commerce-mode.ffds3514 .ffds-stage{
    width:min(99%,calc(100dvh - 188px),980px)!important;
    min-width:610px!important;min-height:610px!important;max-width:980px!important;
  }

  /* T-Shirt-Elephant-style secondary utility stack beside the left tool rail. */
  .ffds-commerce-mode.ffds3514 .ffds-canvas-toolbar{
    position:absolute!important;left:12px!important;top:14px!important;z-index:36!important;
    width:84px!important;height:auto!important;margin:0!important;padding:0!important;
    display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-canvas-toolbar button{
    width:84px!important;height:38px!important;min-height:38px!important;padding:0 10px!important;
    justify-content:flex-start!important;display:flex!important;align-items:center!important;gap:7px!important;
    border-radius:999px!important;font-size:10px!important;white-space:nowrap!important;
    box-shadow:0 2px 7px rgba(19,48,72,.035)!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-canvas-toolbar button .ffds-i{width:15px!important;height:15px!important;flex:0 0 15px!important}

  /* The active production area is a compact floating canvas control. */
  .ffds-commerce-mode.ffds3514 .ffds-print-area-control{
    top:14px!important;min-width:330px!important;height:40px!important;min-height:40px!important;
    padding-right:44px!important;
  }

  /* On desktop text is always directly draggable. Lock state is not allowed to
     turn the visible text into a dead object. */
  .ffds-commerce-mode.ffds3514 .ffds-group-text,
  .ffds-commerce-mode.ffds3514 .ffds-year,
  .ffds-commerce-mode.ffds3514 .ffds-personalisation,
  .ffds-commerce-mode.ffds3514 .ffds-desktop-extra-text-v3514{
    pointer-events:auto!important;cursor:move!important;touch-action:none!important;
  }

  /* Tighter, calmer completed progress indicator. */
  .ffds-commerce-mode.ffds3514 .ffdy-progress-v3330 button.is-complete b{
    color:transparent!important;position:relative!important;overflow:hidden!important;
    background:#eaf6ff!important;border:1px solid #c8e7f9!important;
  }
  .ffds-commerce-mode.ffds3514 .ffdy-progress-v3330 button.is-complete b:before{
    content:"✓"!important;position:absolute!important;inset:0!important;display:grid!important;place-items:center!important;
    color:#0a88d8!important;font-size:15px!important;line-height:1!important;font-weight:900!important;
  }

  /* Product chooser: compact browse cards with less empty modal real estate. */
  .ffds-commerce-mode.ffds3514 .ffds-drawer-sheet{
    width:min(980px,calc(100vw - 88px))!important;
    height:min(630px,calc(100dvh - 88px))!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-drawer-products{
    grid-template-columns:repeat(auto-fit,minmax(185px,220px))!important;
    align-content:start!important;gap:12px!important;padding:12px 20px 14px!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-drawer-product{
    min-height:215px!important;max-height:238px!important;grid-template-rows:128px minmax(0,1fr)!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-drawer-product-media{height:128px!important;padding:9px!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-product-copy{padding:9px 11px 11px!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-product-copy>strong{font-size:12.5px!important}
  .ffds-commerce-mode.ffds3514 .ffds-drawer-add{
    min-height:48px!important;font-size:13px!important;font-weight:950!important;letter-spacing:.015em!important;
    text-transform:none!important;
  }

  /* Never leave the Design command bar stuck below quantity/review. JS also
     mirrors this state, but the CSS is a hard visual safety net. */
  .ffds-commerce-mode.ffds3514[data-current-step="quantity"] .ffdy-design-footer-v3330,
  .ffds-commerce-mode.ffds3514[data-current-step="review"] .ffdy-design-footer-v3330{display:none!important}
}

@media (min-width:901px) and (max-width:1500px){
  .ffds-commerce-mode.ffds3514 .ffds-canvas-wrap{padding-left:100px!important}
  .ffds-commerce-mode.ffds3514 .ffds-stage{width:min(99%,calc(100dvh - 182px),860px)!important;min-width:520px!important;min-height:520px!important;max-width:860px!important}
  .ffds-commerce-mode.ffds3514 .ffds-canvas-toolbar,.ffds-commerce-mode.ffds3514 .ffds-canvas-toolbar button{width:76px!important}
  .ffds-commerce-mode.ffds3514 .ffds-print-area-control{min-width:300px!important}
}

/* v3.51.6 — desktop canvas scale, utility rail, selection and progress polish. */
@media (min-width:901px){
  /* Give the canvas more of the viewport and slightly reduce inspector pressure. */
  .ffds-commerce-mode.ffds3514{--d-inspector:360px;--d-views:112px;--d-footer:88px}
  .ffds-commerce-mode.ffds3514 .ffds-canvas-wrap{padding:8px 10px 10px 104px!important}
  .ffds-commerce-mode.ffds3514 .ffds-canvas-card{border-radius:12px!important}
  .ffds-commerce-mode.ffds3514 .ffds-stage{
    width:min(99.5%,calc(100dvh - 160px),1020px)!important;
    min-width:640px!important;min-height:640px!important;max-width:1020px!important;
  }

  /* Secondary actions live in their own quiet rail, not in a full-width row. */
  .ffds-commerce-mode.ffds3514 .ffds-canvas-toolbar{
    left:10px!important;top:14px!important;width:82px!important;gap:7px!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-canvas-toolbar button{
    width:82px!important;height:36px!important;min-height:36px!important;
    border-radius:11px!important;padding:0 9px!important;font-size:9.5px!important;
    background:#fff!important;border:1px solid #dbe5ec!important;box-shadow:0 2px 6px rgba(18,48,72,.035)!important;
  }

  /* Strong direct-manipulation affordance: selected objects can be dragged by
     the outline and deleted without opening the inspector. */
  .ffds-commerce-mode.ffds3514 .ffds-selection-box{pointer-events:auto!important;cursor:move!important;touch-action:none!important;overflow:visible!important}
  .ffds-commerce-mode.ffds3514 .ffds-selection-box [data-handle]{cursor:nwse-resize!important}
  .ffds-commerce-mode.ffds3514 .ffds-selection-delete-v3514{
    top:-18px!important;right:-18px!important;width:36px!important;height:36px!important;border-radius:50%!important;
    border:1px solid #f1b5b5!important;background:#fff!important;color:#d32727!important;box-shadow:0 5px 14px rgba(130,30,30,.16)!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-selection-delete-v3514:hover{background:#fff3f3!important;border-color:#e57474!important}

  /* Completed step = a single balanced check bubble, no residual step number. */
  .ffds-commerce-mode.ffds3514 .ffdy-progress-v3330 button.is-complete b{
    font-size:0!important;text-indent:-9999px!important;width:34px!important;height:34px!important;
    border-radius:50%!important;background:#eaf6ff!important;border:1px solid #c9e7f8!important;
  }
  .ffds-commerce-mode.ffds3514 .ffdy-progress-v3330 button.is-complete b:before{
    content:"✓"!important;text-indent:0!important;font-size:16px!important;font-weight:900!important;color:#0b8fe6!important;
  }
  .ffds-commerce-mode.ffds3514 .ffdy-progress-v3330 button.is-complete span{color:#587087!important}

  /* Quantity / review own their actions. The design command bar must never
     remain pinned underneath them, even while the step transition is settling. */
  .ffds-commerce-mode.ffds3514[data-desktop-visible-step-v3515="quantity"] .ffdy-design-footer-v3330,
  .ffds-commerce-mode.ffds3514[data-desktop-visible-step-v3515="review"] .ffdy-design-footer-v3330,
  .ffds-commerce-mode.ffds3514.is-step-quantity .ffdy-design-footer-v3330,
  .ffds-commerce-mode.ffds3514.is-step-review .ffdy-design-footer-v3330{display:none!important;visibility:hidden!important;pointer-events:none!important}
}

@media (min-width:901px) and (max-width:1500px){
  .ffds-commerce-mode.ffds3514{--d-inspector:320px;--d-views:102px;--d-footer:84px}
  .ffds-commerce-mode.ffds3514 .ffds-canvas-wrap{padding-left:96px!important}
  .ffds-commerce-mode.ffds3514 .ffds-stage{width:min(99%,calc(100dvh - 154px),900px)!important;min-width:560px!important;min-height:560px!important;max-width:900px!important}
  .ffds-commerce-mode.ffds3514 .ffds-canvas-toolbar,.ffds-commerce-mode.ffds3514 .ffds-canvas-toolbar button{width:74px!important}
}


/* v3.51.6 — deterministic desktop text manipulation. */
@media (min-width:901px){
  .ffds-commerce-mode .ffds-group-text,
  .ffds-commerce-mode .ffds-desktop-extra-text-v3514{pointer-events:auto!important;cursor:grab!important;touch-action:none!important;user-select:none!important;}
  .ffds-commerce-mode .ffds-group-text:active,
  .ffds-commerce-mode .ffds-desktop-extra-text-v3514:active{cursor:grabbing!important;}
  .ffds-commerce-mode .ffds-selection-box{pointer-events:auto!important;}
  .ffds-commerce-mode .ffds-selection-delete-v3514{pointer-events:auto!important;z-index:8!important;}
}


/* v3.61.2 — focused desktop Studio interaction polish. Mobile uses its separate files. */
@media (min-width:901px){
  /* Production areas are selected directly on the garment. Keep the native
     selector in the DOM as the engine owner, but remove the redundant top UI. */
  .ffds-commerce-mode.ffds3514 .ffds-print-area-control,
  .ffds-commerce-mode.ffds3514 .ffds-area-note-v3380,
  .ffds-commerce-mode.ffds3514 .ffds-area-tabs-v3380,
  .ffds-commerce-mode.ffds3514 .ffds-area-menu-v3514{display:none!important}

  .ffds-commerce-mode.ffds3514 .ffds-area-outline-v3380{
    z-index:6!important;cursor:pointer!important;border-color:rgba(11,145,229,.62)!important;
    background:rgba(11,145,229,.025)!important;transition:border-color .12s ease,background .12s ease,box-shadow .12s ease!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-area-outline-v3380:hover{
    border-color:#078fe5!important;background:rgba(11,145,229,.07)!important;box-shadow:inset 0 0 0 1px rgba(11,145,229,.14)!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-area-outline-v3380:before{
    content:attr(data-area-label-v3561);position:absolute;left:4px;top:4px;max-width:calc(100% - 8px);
    padding:3px 6px;border-radius:999px;background:rgba(9,58,98,.88);color:#fff;
    font:800 9px/1.1 Inter,Arial,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;
  }

  /* The quick object toolbar existed in v3.56 but was hidden by desktop CSS. */
  .ffds-commerce-mode.ffds3514 .ffds-object-float:not([hidden]){
    display:flex!important;align-items:center!important;gap:3px!important;z-index:40!important;
    padding:4px!important;border:1px solid #d7e2eb!important;border-radius:12px!important;
    background:#fff!important;box-shadow:0 8px 24px rgba(15,41,65,.18)!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-object-float[hidden]{display:none!important}
  .ffds-commerce-mode.ffds3514 .ffds-object-float button{
    min-width:38px!important;width:38px!important;height:38px!important;padding:0!important;border-radius:9px!important;
    display:grid!important;place-items:center!important;color:#36546d!important;background:#fff!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-object-float button:hover{background:#edf7ff!important;color:#0878d1!important}
  .ffds-commerce-mode.ffds3514 .ffds-object-float button[data-object-quick="delete"]{color:#cc2929!important}
  .ffds-commerce-mode.ffds3514 .ffds-object-float button[data-object-quick="delete"]:hover{background:#fff1f1!important;color:#b91c1c!important}
  .ffds-commerce-mode.ffds3514 .ffds-object-float button span{display:none!important}

  /* Large invisible hit areas with small clean visible dots. */
  .ffds-commerce-mode.ffds3514 .ffds-selection-handle{
    width:30px!important;height:30px!important;border:0!important;background:transparent!important;box-shadow:none!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-selection-handle:after{
    content:"";position:absolute;left:50%;top:50%;width:12px;height:12px;transform:translate(-50%,-50%);
    border-radius:50%;background:#fff;border:2px solid #078fe5;box-shadow:0 1px 5px rgba(0,0,0,.18);pointer-events:none;
  }
  .ffds-commerce-mode.ffds3514 .ffds-selection-handle.nw{left:-17px!important;top:-17px!important}
  .ffds-commerce-mode.ffds3514 .ffds-selection-handle.ne{right:-17px!important;top:-17px!important}
  .ffds-commerce-mode.ffds3514 .ffds-selection-handle.sw{left:-17px!important;bottom:-17px!important}
  .ffds-commerce-mode.ffds3514 .ffds-selection-handle.se{right:-17px!important;bottom:-17px!important}

  .ffds-commerce-mode.ffds3514 .ffds-stage{transition:transform .14s cubic-bezier(.2,.7,.2,1)!important}
  .ffds-commerce-mode.ffds3514 .ffds-object,
  .ffds-commerce-mode.ffds3514 .ffds-group-text,
  .ffds-commerce-mode.ffds3514 .ffds-desktop-extra-text-v3514{will-change:transform,left,top,width,height}
}
@media (min-width:901px){
  .ffds-commerce-mode.ffds3514 .ffds-desktop-text-elements-v3561{display:block!important;margin:0 0 12px!important;padding:10px!important;border:1px solid #dce6ed!important;border-radius:12px!important;background:#fbfdff!important}
  .ffds-commerce-mode.ffds3514 .ffds-selection-handle.nw,
  .ffds-commerce-mode.ffds3514 .ffds-selection-handle.se{cursor:nwse-resize!important}
  .ffds-commerce-mode.ffds3514 .ffds-selection-handle.ne,
  .ffds-commerce-mode.ffds3514 .ffds-selection-handle.sw{cursor:nesw-resize!important}
}


/* v3.61.3 — deletion must win over the desktop text display rules.
   Earlier desktop rules use display:inline-block!important for natural text
   bounds, which unintentionally overrode the native [hidden] attribute and
   left the first/last deleted text visible as a ghost object. */
@media (min-width:901px){
  .ffds-commerce-mode.ffds3514 .ffds-group-text[hidden],
  .ffds-commerce-mode.ffds3514 .ffds-desktop-extra-text-v3514[hidden],
  .ffds-commerce-mode.ffds3514 .ffds-year[hidden]{display:none!important}
}

/* =====================================================================
   v3.61.4 — desktop quick-tool visual parity only.
   No desktop canvas/state logic changes. Uses the same icon + label language
   already approved on the separate mobile Studio.
   ===================================================================== */
@media (min-width:901px){
  .ffds-commerce-mode.ffds3514 .ffds-object-float:not([hidden]){
    gap:2px!important;padding:5px!important;border-radius:15px!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-object-float button{
    min-width:54px!important;width:auto!important;height:46px!important;padding:4px 6px!important;
    display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
    gap:3px!important;border-radius:10px!important;line-height:1!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-object-float button .ffds-i,
  .ffds-commerce-mode.ffds3514 .ffds-object-float button svg{width:18px!important;height:18px!important;flex:0 0 18px!important}
  .ffds-commerce-mode.ffds3514 .ffds-object-float button span{
    display:block!important;font-size:8px!important;font-weight:850!important;line-height:1!important;color:currentColor!important;
  }
  .ffds-commerce-mode.ffds3514 .ffds-object-float button[data-object-quick="delete"]{color:#c62f35!important}
}
