/* Workshop estimate relocation */
.app[data-department=workshop] .legacy-layer-actions{display:none!important}
.app[data-department=workshop] .canvas-column.has-workshop-estimate{padding-bottom:176px}
.app[data-department=workshop] .canvas-column.has-workshop-estimate .stage{bottom:176px}
.app[data-department=workshop] .canvas-column.has-workshop-estimate .canvas-bottom{bottom:194px}
.app[data-department=workshop] .workshop-estimate-horizontal{position:absolute!important;z-index:4;left:20px;right:20px;bottom:18px;margin:0!important;border:1px solid color-mix(in srgb,var(--accent) 68%,transparent)!important;border-radius:16px;padding:16px 18px!important;box-shadow:none!important;background:#18191cf5!important;display:grid!important;grid-template-columns:minmax(165px,.75fr) minmax(250px,1.3fr) minmax(170px,.65fr);grid-template-rows:auto auto;gap:7px 24px;align-items:center}
.app[data-department=workshop] .workshop-estimate-horizontal>.row:nth-child(1){grid-column:1;grid-row:1;margin:0!important}
.app[data-department=workshop] .workshop-estimate-horizontal>.row:nth-child(2){grid-column:1;grid-row:2;margin:0!important}
.app[data-department=workshop] .workshop-estimate-horizontal>p:nth-of-type(1){grid-column:2;grid-row:1;margin:0}
.app[data-department=workshop] .workshop-estimate-horizontal>p:nth-of-type(2){grid-column:2;grid-row:2;margin:0}
.app[data-department=workshop] .workshop-estimate-horizontal>.primary{grid-column:3;grid-row:1;width:100%!important;margin:0!important;min-height:48px}
.app[data-department=workshop] .workshop-estimate-horizontal>.quiet{grid-column:3;grid-row:2;width:100%;margin:0!important;padding:7px 10px}
.app[data-department=workshop] .workshop-estimate-horizontal .price{font-size:27px}

/* Direct manipulation layer rows */
.app[data-department=workshop] .layer-row-manageable{display:grid;grid-template-columns:30px 18px minmax(0,1fr) 30px;align-items:center;gap:5px;padding:6px;background:var(--raised);border:1px solid transparent;border-radius:8px;margin:6px 0;transition:border-color .15s,background .15s,opacity .15s}
.app[data-department=workshop] .layer-row-manageable.active{border-color:var(--accent);background:var(--surface2)}
.app[data-department=workshop] .layer-row-manageable.dragging{opacity:.45}
.app[data-department=workshop] .layer-row-manageable.layer-drop-target{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}
.app[data-department=workshop] .layer-select{min-width:0;padding:4px;background:transparent;display:flex;align-items:center;gap:8px;text-align:left}
.app[data-department=workshop] .layer-select img{width:28px;height:28px;object-fit:contain}
.app[data-department=workshop] .layer-select .layer-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
.app[data-department=workshop] .layer-visibility,.app[data-department=workshop] .layer-delete{width:30px;height:30px;display:grid;place-items:center;background:transparent;border-radius:6px;padding:0;color:var(--muted)}
.app[data-department=workshop] .layer-visibility:hover{color:var(--accent);background:var(--surface)}
.app[data-department=workshop] .layer-delete:hover{color:#ff6b73;background:#ff4d5715}
.app[data-department=workshop] .layer-visibility .icon,.app[data-department=workshop] .layer-delete .icon{width:16px;height:16px}
.app[data-department=workshop] .layer-drag-handle{display:grid;place-items:center;color:var(--muted);cursor:grab}
.app[data-department=workshop] .layer-drag-handle .icon{width:16px;height:16px}

/* Merch card commerce row */
.app[data-department=merch] .merch-card-shell{min-width:0}
.app[data-department=merch] .merch-card-shell>.product-card{display:block}
.app[data-department=merch] .merch-card-commerce{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.app[data-department=merch] .merch-card-commerce .price{margin:0;font-size:16px;font-weight:650}
.app[data-department=merch] .merch-quick-add{width:42px;height:42px;display:grid;place-items:center;padding:0;border-radius:9px;background:transparent;color:var(--accent);border:1px solid var(--accent);flex:0 0 auto;transition:background .16s,color .16s,transform .16s}
.app[data-department=merch] .merch-quick-add:hover{background:var(--accent);color:var(--on-accent);transform:translateY(-1px)}
.app[data-department=merch] .merch-quick-add .icon{width:20px;height:20px}

/* Product recommendations */
.app[data-department=merch] .product-recommendations{max-width:1240px;margin:58px auto 0;padding-top:36px;border-top:1px solid var(--line)}
.app[data-department=merch] .recommendation-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}
.app[data-department=merch] .recommendation-head h2{font-size:34px}
.app[data-department=merch] .recommendation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.app[data-department=merch] .recommendation-card{min-width:0}
.app[data-department=merch] .recommendation-product{width:100%;background:transparent;text-align:left;padding:0}
.app[data-department=merch] .recommendation-image{aspect-ratio:4/5;border-radius:12px;overflow:hidden;background:var(--raised);margin-bottom:14px}
.app[data-department=merch] .recommendation-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.app[data-department=merch] .recommendation-product:hover img{transform:scale(1.025)}
.app[data-department=merch] .recommendation-card h3{margin-top:6px;font-size:20px}
.app[data-department=merch] .recommendation-commerce{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}

@media(max-width:850px){
 .app[data-department=workshop] .canvas-column.has-workshop-estimate{padding-bottom:210px}
 .app[data-department=workshop] .canvas-column.has-workshop-estimate .stage{bottom:210px}
 .app[data-department=workshop] .canvas-column.has-workshop-estimate .canvas-bottom{bottom:226px}
 .app[data-department=workshop] .workshop-estimate-horizontal{grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto;gap:8px 18px}
 .app[data-department=workshop] .workshop-estimate-horizontal>.row:nth-child(1),.app[data-department=workshop] .workshop-estimate-horizontal>.row:nth-child(2){grid-column:1}
 .app[data-department=workshop] .workshop-estimate-horizontal>p:nth-of-type(1),.app[data-department=workshop] .workshop-estimate-horizontal>p:nth-of-type(2){grid-column:2}
 .app[data-department=workshop] .workshop-estimate-horizontal>.primary{grid-column:1;grid-row:3}
 .app[data-department=workshop] .workshop-estimate-horizontal>.quiet{grid-column:2;grid-row:3}
 .app[data-department=merch] .recommendation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:580px){
 .app[data-department=workshop] .canvas-column.has-workshop-estimate{padding-bottom:0}
 .app[data-department=workshop] .canvas-column.has-workshop-estimate .stage{bottom:0}
 .app[data-department=workshop] .canvas-column.has-workshop-estimate .canvas-bottom{bottom:16px}
 .app[data-department=workshop] .workshop-estimate-horizontal{position:relative!important;left:auto;right:auto;bottom:auto;margin:470px 14px 14px!important;display:flex!important;flex-direction:column;align-items:stretch}
 .app[data-department=workshop] .recommendation-grid,.app[data-department=merch] .recommendation-grid{grid-template-columns:1fr}
 .app[data-department=merch] .recommendation-head{align-items:start;flex-direction:column}
}


/* v20 refinements — compact merch commerce + estimate panel at true viewer bottom */
.app[data-department=merch] .merch-card-commerce{gap:14px;margin-top:12px}
.app[data-department=merch] .merch-quick-add{width:auto!important;min-width:122px;height:42px;display:inline-flex!important;align-items:center;justify-content:center;gap:8px;padding:0 14px!important;border-radius:9px;background:var(--accent)!important;color:#111!important;border:1px solid var(--accent)!important;font-size:13px;font-weight:750;line-height:1;white-space:nowrap;flex:0 0 auto;transition:filter .16s,transform .16s}
.app[data-department=merch] .merch-quick-add:hover{background:var(--accent)!important;color:#111!important;filter:brightness(1.06);transform:translateY(-1px)}
.app[data-department=merch] .merch-quick-add .icon{width:18px;height:18px;color:#111!important}

/* Recommendations are compact related-product strips, not a second full-size product grid. */
.app[data-department=merch] .product-recommendations{max-width:1040px;margin:48px auto 0;padding-top:28px}
.app[data-department=merch] .recommendation-head{align-items:end;margin-bottom:18px}
.app[data-department=merch] .recommendation-head h2{font-size:28px}
.app[data-department=merch] .recommendation-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.app[data-department=merch] .recommendation-card{min-width:0;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.app[data-department=merch] .recommendation-product{display:grid;grid-template-columns:78px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;row-gap:4px;align-items:center;width:100%;background:transparent;text-align:left;padding:0}
.app[data-department=merch] .recommendation-image{grid-column:1;grid-row:1/3;width:78px;height:92px;aspect-ratio:auto!important;border-radius:9px;overflow:hidden;background:var(--raised);margin:0}
.app[data-department=merch] .recommendation-image img{width:100%;height:100%;object-fit:cover}
.app[data-department=merch] .recommendation-product>.eyebrow{grid-column:2;grid-row:1;align-self:end;font-size:10px}
.app[data-department=merch] .recommendation-card h3{grid-column:2;grid-row:2;align-self:start;margin:0;font-size:16px;line-height:1.15}
.app[data-department=merch] .recommendation-commerce{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
.app[data-department=merch] .recommendation-commerce strong{font-size:14px;white-space:nowrap}
.app[data-department=merch] .recommendation-commerce .merch-quick-add{min-width:112px;height:36px;padding:0 10px!important;font-size:12px}
.app[data-department=merch] .recommendation-commerce .merch-quick-add .icon{width:16px;height:16px}

/* The estimate belongs at the bottom of the viewer, in normal flow — no padding spacer. */
.app[data-department=workshop] .canvas-column.has-workshop-estimate{padding:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}
.app[data-department=workshop] .canvas-column.has-workshop-estimate .stage{top:0!important;left:0!important;right:0!important;bottom:128px!important;min-height:0!important}
.app[data-department=workshop] .canvas-column.has-workshop-estimate .canvas-bottom{bottom:140px!important}
.app[data-department=workshop] .workshop-estimate-horizontal{position:relative!important;z-index:4;left:auto!important;right:auto!important;bottom:auto!important;width:calc(100% - 24px)!important;max-width:none!important;margin:auto 12px 12px!important;border-radius:14px;padding:11px 14px!important;grid-template-columns:minmax(140px,.72fr) minmax(220px,1.45fr) minmax(155px,.62fr)!important;grid-template-rows:auto auto!important;gap:5px 18px!important;align-items:center!important}
.app[data-department=workshop] .workshop-estimate-horizontal .price{font-size:25px!important}
.app[data-department=workshop] .workshop-estimate-horizontal p{font-size:11px!important;line-height:1.45!important}
.app[data-department=workshop] .workshop-estimate-horizontal>.primary{min-height:44px!important;padding:9px 13px!important}
.app[data-department=workshop] .workshop-estimate-horizontal>.quiet{padding:5px 8px!important;font-size:12px!important}
@media(max-width:850px){
 .app[data-department=workshop] .canvas-column.has-workshop-estimate{padding:0!important}
 .app[data-department=workshop] .canvas-column.has-workshop-estimate .stage{bottom:158px!important}
 .app[data-department=workshop] .canvas-column.has-workshop-estimate .canvas-bottom{bottom:170px!important}
 .app[data-department=workshop] .workshop-estimate-horizontal{width:calc(100% - 20px)!important;margin:auto 10px 10px!important;grid-template-columns:1fr 1fr!important;grid-template-rows:auto auto auto!important;gap:5px 12px!important}
}
@media(max-width:680px){
 .app[data-department=merch] .recommendation-grid{grid-template-columns:1fr!important}
 .app[data-department=merch] .recommendation-head{align-items:start;flex-direction:column}
 .app[data-department=merch] .recommendation-card{max-width:420px}
}
@media(max-width:580px){
 .app[data-department=workshop] .canvas-column.has-workshop-estimate{height:auto!important;min-height:700px!important;padding:0!important}
 .app[data-department=workshop] .canvas-column.has-workshop-estimate .stage{bottom:190px!important}
 .app[data-department=workshop] .canvas-column.has-workshop-estimate .canvas-bottom{bottom:202px!important}
 .app[data-department=workshop] .workshop-estimate-horizontal{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;width:calc(100% - 16px)!important;margin:auto 8px 8px!important;display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto!important;gap:6px!important}
 .app[data-department=workshop] .workshop-estimate-horizontal>*{grid-column:1!important;grid-row:auto!important}
}

/* v21 — literal layout fix: horizontal cart button + estimate pinned to viewer bottom */
.app[data-department=merch] .merch-card-commerce,
.app[data-department=merch] .recommendation-commerce{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
}
.app[data-department=merch] .merch-quick-add{
  box-sizing:border-box!important;
  display:inline-flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  width:auto!important;
  min-width:132px!important;
  max-width:100%!important;
  height:42px!important;
  min-height:42px!important;
  padding:0 14px!important;
  margin:0!important;
  border:1px solid var(--accent)!important;
  border-radius:9px!important;
  background:var(--accent)!important;
  color:#111!important;
  font-size:13px!important;
  font-weight:750!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  flex:0 0 auto!important;
}
.app[data-department=merch] .merch-quick-add .icon{
  display:block!important;
  flex:0 0 18px!important;
  width:18px!important;
  height:18px!important;
  color:#111!important;
  stroke:#111!important;
}
.app[data-department=merch] .merch-quick-add span{
  display:block!important;
  flex:0 0 auto!important;
  color:#111!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.app[data-department=merch] .merch-quick-add:hover,
.app[data-department=merch] .merch-quick-add:focus-visible{
  background:var(--accent)!important;
  color:#111!important;
  filter:brightness(.96)!important;
  transform:none!important;
}
.app[data-department=merch] .recommendation-commerce .merch-quick-add{
  min-width:124px!important;
  height:38px!important;
  min-height:38px!important;
  padding:0 12px!important;
  font-size:12px!important;
}

/* The estimate is physically anchored to the bottom of the 3D viewer column. */
.app[data-department=workshop] .canvas-column.has-workshop-estimate{
  position:relative!important;
  display:block!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
}
.app[data-department=workshop] .canvas-column.has-workshop-estimate .stage{
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  bottom:124px!important;
  min-height:0!important;
}
.app[data-department=workshop] .canvas-column.has-workshop-estimate .canvas-bottom{
  bottom:136px!important;
}
.app[data-department=workshop] .workshop-estimate-horizontal{
  box-sizing:border-box!important;
  position:absolute!important;
  z-index:6!important;
  left:10px!important;
  right:10px!important;
  bottom:0!important;
  width:auto!important;
  max-width:none!important;
  height:116px!important;
  min-height:116px!important;
  margin:0!important;
  padding:10px 14px!important;
  display:grid!important;
  grid-template-columns:minmax(130px,.75fr) minmax(220px,1.45fr) minmax(160px,.7fr)!important;
  grid-template-rows:1fr 1fr!important;
  gap:4px 16px!important;
  align-items:center!important;
  border:1px solid color-mix(in srgb,var(--accent) 68%,transparent)!important;
  border-bottom-left-radius:0!important;
  border-bottom-right-radius:0!important;
  background:#18191cf8!important;
  box-shadow:none!important;
}
.app[data-department=workshop] .workshop-estimate-horizontal>.row:nth-child(1){grid-column:1!important;grid-row:1!important;margin:0!important}
.app[data-department=workshop] .workshop-estimate-horizontal>.row:nth-child(2){grid-column:1!important;grid-row:2!important;margin:0!important}
.app[data-department=workshop] .workshop-estimate-horizontal>p:nth-of-type(1){grid-column:2!important;grid-row:1!important;margin:0!important}
.app[data-department=workshop] .workshop-estimate-horizontal>p:nth-of-type(2){grid-column:2!important;grid-row:2!important;margin:0!important}
.app[data-department=workshop] .workshop-estimate-horizontal>.primary{grid-column:3!important;grid-row:1!important;width:100%!important;min-height:42px!important;margin:0!important;padding:8px 12px!important}
.app[data-department=workshop] .workshop-estimate-horizontal>.quiet{grid-column:3!important;grid-row:2!important;width:100%!important;margin:0!important;padding:5px 8px!important}
.app[data-department=workshop] .workshop-estimate-horizontal .price{font-size:24px!important}
.app[data-department=workshop] .workshop-estimate-horizontal p{font-size:11px!important;line-height:1.35!important}

@media(max-width:850px){
  .app[data-department=workshop] .canvas-column.has-workshop-estimate .stage{bottom:154px!important}
  .app[data-department=workshop] .canvas-column.has-workshop-estimate .canvas-bottom{bottom:166px!important}
  .app[data-department=workshop] .workshop-estimate-horizontal{
    height:146px!important;
    min-height:146px!important;
    grid-template-columns:1fr 1fr!important;
    grid-template-rows:auto auto auto!important;
    gap:4px 12px!important;
  }
  .app[data-department=workshop] .workshop-estimate-horizontal>.row:nth-child(1),
  .app[data-department=workshop] .workshop-estimate-horizontal>.row:nth-child(2){grid-column:1!important}
  .app[data-department=workshop] .workshop-estimate-horizontal>p:nth-of-type(1),
  .app[data-department=workshop] .workshop-estimate-horizontal>p:nth-of-type(2){grid-column:2!important}
  .app[data-department=workshop] .workshop-estimate-horizontal>.primary{grid-column:1!important;grid-row:3!important}
  .app[data-department=workshop] .workshop-estimate-horizontal>.quiet{grid-column:2!important;grid-row:3!important}
}
@media(max-width:580px){
  .app[data-department=workshop] .canvas-column.has-workshop-estimate{
    height:700px!important;
    min-height:700px!important;
  }
  .app[data-department=workshop] .canvas-column.has-workshop-estimate .stage{bottom:206px!important}
  .app[data-department=workshop] .canvas-column.has-workshop-estimate .canvas-bottom{bottom:218px!important}
  .app[data-department=workshop] .workshop-estimate-horizontal{
    left:8px!important;
    right:8px!important;
    bottom:0!important;
    height:198px!important;
    min-height:198px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto!important;
    gap:4px!important;
  }
  .app[data-department=workshop] .workshop-estimate-horizontal>*{grid-column:1!important;grid-row:auto!important}
}

/* v22 — make the Workshop center column span the full maker row, then pin estimate flush to its bottom. */
.app[data-department=workshop] .maker{
  align-items:stretch!important;
}
.app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate{
  position:relative!important;
  align-self:stretch!important;
  height:auto!important;
  min-height:650px!important;
  max-height:none!important;
  top:auto!important;
  bottom:auto!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
}
.app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .stage{
  position:absolute!important;
  inset:0 0 116px 0!important;
  min-height:0!important;
  height:auto!important;
}
.app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .canvas-bottom{
  bottom:128px!important;
}
.app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .workshop-estimate-horizontal{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100%!important;
  height:116px!important;
  min-height:116px!important;
  max-height:116px!important;
  margin:0!important;
  border-radius:0!important;
  border-left:0!important;
  border-right:0!important;
  border-bottom:0!important;
}
@media(max-width:850px){
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .stage{inset:0 0 146px 0!important}
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .canvas-bottom{bottom:158px!important}
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .workshop-estimate-horizontal{height:146px!important;min-height:146px!important;max-height:146px!important}
}
@media(max-width:580px){
  .app[data-department=workshop] .maker{align-items:start!important}
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate{height:700px!important;min-height:700px!important;align-self:auto!important}
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .stage{inset:0 0 198px 0!important}
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .canvas-bottom{bottom:210px!important}
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .workshop-estimate-horizontal{height:198px!important;min-height:198px!important;max-height:198px!important}
}

/* v23 — complete estimate card above divider: full border/corners, no wrapped price. */
.app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate{
  overflow:hidden!important;
}
.app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .stage{
  inset:0 0 150px 0!important;
}
.app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .canvas-bottom{
  bottom:162px!important;
}
.app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .workshop-estimate-horizontal{
  box-sizing:border-box!important;
  left:12px!important;
  right:12px!important;
  bottom:12px!important;
  width:auto!important;
  height:126px!important;
  min-height:126px!important;
  max-height:126px!important;
  padding:12px 16px!important;
  margin:0!important;
  grid-template-columns:minmax(205px,.82fr) minmax(270px,1.35fr) minmax(180px,.72fr)!important;
  grid-template-rows:1fr 1fr!important;
  gap:6px 18px!important;
  border:1px solid var(--accent)!important;
  border-radius:14px!important;
  overflow:hidden!important;
  background:#18191cf8!important;
}
.app[data-department=workshop] .workshop-estimate-horizontal>.row{
  flex-wrap:nowrap!important;
  min-width:0!important;
  gap:10px!important;
}
.app[data-department=workshop] .workshop-estimate-horizontal>.row:nth-child(1),
.app[data-department=workshop] .workshop-estimate-horizontal>.row:nth-child(2){
  justify-content:space-between!important;
}
.app[data-department=workshop] .workshop-estimate-horizontal .price{
  font-size:24px!important;
  line-height:1.1!important;
  white-space:nowrap!important;
  flex:0 0 auto!important;
}
.app[data-department=workshop] .workshop-estimate-horizontal>.row:nth-child(2)>span{
  white-space:nowrap!important;
  flex:0 1 auto!important;
}
.app[data-department=workshop] .workshop-estimate-horizontal>p{
  overflow:hidden!important;
}
@media(max-width:850px){
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .stage{inset:0 0 174px 0!important}
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .canvas-bottom{bottom:186px!important}
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .workshop-estimate-horizontal{
    left:10px!important;right:10px!important;bottom:10px!important;
    height:154px!important;min-height:154px!important;max-height:154px!important;
    grid-template-columns:1fr 1fr!important;
  }
}
@media(max-width:580px){
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .stage{inset:0 0 224px 0!important}
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .canvas-bottom{bottom:236px!important}
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .workshop-estimate-horizontal{
    left:8px!important;right:8px!important;bottom:8px!important;
    height:208px!important;min-height:208px!important;max-height:208px!important;
  }
}

/* v25 — one responsive price only, centered in the left estimate column. */
.app[data-department=workshop] .workshop-estimate-horizontal>.row:nth-child(1){
  display:none!important;
}
.app[data-department=workshop] .workshop-estimate-horizontal>.row:nth-child(2){
  grid-column:1!important;
  grid-row:1/3!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0 8px!important;
}
.app[data-department=workshop] .workshop-estimate-horizontal>.row:nth-child(2)>span{
  display:none!important;
}
.app[data-department=workshop] .workshop-estimate-horizontal #design-subtotal,
.app[data-department=workshop] .workshop-estimate-horizontal .price{
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  font-size:clamp(27px,2.15vw,34px)!important;
  line-height:1!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:visible!important;
}

/* Restore the explanatory copy and actions to predictable desktop slots. */
@media(min-width:851px){
  .app[data-department=workshop] .workshop-estimate-horizontal{
    grid-template-columns:minmax(190px,.78fr) minmax(280px,1.42fr) minmax(180px,.72fr)!important;
    grid-template-rows:1fr 1fr!important;
  }
  .app[data-department=workshop] .workshop-estimate-horizontal>p:nth-of-type(1){grid-column:2!important;grid-row:1!important}
  .app[data-department=workshop] .workshop-estimate-horizontal>p:nth-of-type(2){grid-column:2!important;grid-row:2!important}
  .app[data-department=workshop] .workshop-estimate-horizontal>.primary{grid-column:3!important;grid-row:1!important}
  .app[data-department=workshop] .workshop-estimate-horizontal>.quiet{grid-column:3!important;grid-row:2!important}
}

/* Tablet: price remains centered in its own left area; actions share the bottom row. */
@media(min-width:581px) and (max-width:850px){
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .stage{inset:0 0 190px 0!important}
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .canvas-bottom{bottom:202px!important}
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .workshop-estimate-horizontal{
    height:170px!important;
    min-height:170px!important;
    max-height:170px!important;
    grid-template-columns:minmax(150px,.72fr) minmax(230px,1.28fr)!important;
    grid-template-rows:1fr 1fr 44px!important;
    gap:5px 14px!important;
  }
  .app[data-department=workshop] .workshop-estimate-horizontal>.row:nth-child(2){grid-column:1!important;grid-row:1/3!important}
  .app[data-department=workshop] .workshop-estimate-horizontal>p:nth-of-type(1){grid-column:2!important;grid-row:1!important}
  .app[data-department=workshop] .workshop-estimate-horizontal>p:nth-of-type(2){grid-column:2!important;grid-row:2!important}
  .app[data-department=workshop] .workshop-estimate-horizontal>.primary{grid-column:1!important;grid-row:3!important}
  .app[data-department=workshop] .workshop-estimate-horizontal>.quiet{grid-column:2!important;grid-row:3!important}
}

/* Phone: price gets a dedicated centered row before the copy and actions. */
@media(max-width:580px){
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate{
    height:760px!important;
    min-height:760px!important;
  }
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .stage{inset:0 0 290px 0!important}
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .canvas-bottom{bottom:302px!important}
  .app[data-department=workshop] .maker>.canvas-column.has-workshop-estimate .workshop-estimate-horizontal{
    height:270px!important;
    min-height:270px!important;
    max-height:270px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:58px auto auto 44px 38px!important;
    gap:6px!important;
    padding:12px 14px!important;
  }
  .app[data-department=workshop] .workshop-estimate-horizontal>.row:nth-child(2){grid-column:1!important;grid-row:1!important}
  .app[data-department=workshop] .workshop-estimate-horizontal>p:nth-of-type(1){grid-column:1!important;grid-row:2!important}
  .app[data-department=workshop] .workshop-estimate-horizontal>p:nth-of-type(2){grid-column:1!important;grid-row:3!important}
  .app[data-department=workshop] .workshop-estimate-horizontal>.primary{grid-column:1!important;grid-row:4!important}
  .app[data-department=workshop] .workshop-estimate-horizontal>.quiet{grid-column:1!important;grid-row:5!important}
  .app[data-department=workshop] .workshop-estimate-horizontal #design-subtotal,
  .app[data-department=workshop] .workshop-estimate-horizontal .price{font-size:30px!important}
}


/* v26 — one recommendation section, aligned to the product-detail content width. */
.app[data-department=merch] .product-recommendations{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:1240px!important;
  margin:48px auto 0!important;
  padding-left:0!important;
  padding-right:0!important;
}
.app[data-department=merch] .recommendation-grid{
  width:100%!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
@media(max-width:850px){
  .app[data-department=merch] .recommendation-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:580px){
  .app[data-department=merch] .recommendation-grid{grid-template-columns:1fr!important}
}
