#storeBuilderApp #md15{box-sizing:border-box;min-width:0;padding:16px;margin:12px 0 20px;border:1px solid #7891a5;border-radius:16px;background:#132a3a;color:#fff5df}
#storeBuilderApp #md15 :is(h3,h4,p,label,strong,span),.md15-dialog :is(h3,p){color:#fff5df}
#storeBuilderApp #md15 h3{font-size:22px;margin:0 0 6px}#storeBuilderApp #md15 h4{font-size:17px;margin:12px 0}#storeBuilderApp #md15 p{font-size:14px;line-height:1.6;margin:8px 0}
.md15-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.md15-actions{display:flex;gap:8px;flex-wrap:wrap}
#storeBuilderApp #md15 button,.md15-dialog button{box-sizing:border-box;min-width:44px;min-height:44px;padding:10px 14px;border:1px solid #91a7b8;border-radius:11px;background:#29435c;color:#fff8e7;font:inherit;font-weight:700;line-height:1.45;white-space:normal;word-break:keep-all;overflow-wrap:break-word;cursor:pointer}
#storeBuilderApp #md15 [data-md=recommend],#storeBuilderApp #md15 [data-md=generate],.md15-dialog [data-yes]{background:#f1d38b;color:#142a3b}
#storeBuilderApp #md15 button:focus-visible,.md15-dialog button:focus-visible{outline:3px solid #ffdc8a;outline-offset:3px}#storeBuilderApp #md15 button:disabled{opacity:.65;cursor:wait}
#storeBuilderApp #md15 .md15-free{font-size:13px;color:#ffe39a}.md15-grid{box-sizing:border-box;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;min-width:0;max-width:100%;scroll-snap-type:x proximity;overflow-x:auto}
#storeBuilderApp #md15 .md15-card{display:block;min-width:0;padding:0;overflow:hidden;text-align:left;scroll-snap-align:start}#storeBuilderApp #md15 .md15-card[aria-pressed=true]{border:2px solid #ffdb83}#storeBuilderApp #md15 .md15-card strong,#storeBuilderApp #md15 .md15-card>span:last-child{display:block;padding:8px 10px 0}#storeBuilderApp #md15 .md15-card>span:last-child{font-size:13px;padding:4px 10px 10px}
#storeBuilderApp #md15 .md15-scene{display:block;position:relative;aspect-ratio:3/2;width:100%;overflow:hidden;background-size:100% 100%;background-position:center}
#storeBuilderApp #md15 .md15-scene img{position:absolute;display:block;min-width:0;max-width:none;max-height:none;height:auto;border:0;border-radius:0;margin:0;padding:0}
#storeBuilderApp #md15Result{border-top:1px solid #70899b;margin-top:16px;padding-top:8px;min-width:0}#storeBuilderApp #md15Preview,#storeBuilderApp #md15Pending img{display:block;width:100%;height:auto;max-height:70dvh;object-fit:contain;border-radius:12px;margin:8px 0 12px}
.md15-generate{display:grid;grid-template-columns:minmax(0,1fr) 120px auto;align-items:end;gap:10px;padding:16px 0 0}.md15-generate label{display:grid;gap:6px;min-width:0;font-size:14px}.md15-generate p{grid-column:1/-1}
#storeBuilderApp #md15 input,#storeBuilderApp #md15 select{box-sizing:border-box;width:100%;min-width:0;min-height:44px;border:1px solid #91a7b8;border-radius:10px;background:#0d1f30;color:#fff8e7;padding:8px;font:inherit}#storeBuilderApp #md15 input::placeholder{color:#c8d4df;opacity:1}
#storeBuilderApp #md15 [hidden]{display:none!important}.md15-dialog{box-sizing:border-box;width:min(94vw,480px);max-height:90dvh;overflow:auto;padding:24px;background:#132a3a;color:#fff5df;border:1px solid #d9bc75;border-radius:16px;font:inherit}.md15-dialog::backdrop{background:#041320ba}
/* A two-card viewport is calculated from the container, not a fixed card width. */
@media(max-width:760px){
  html.savorip-creation-surface :is(#productGrid,.vw-collection-grid,.vw-ip-grid,.vw-style-grid,.w12-grid,.vw-saved-grid,#storeArtworkRail,#storeSourceRail,#storePreviewGrid,#familyArtGrid,#familyProductGrid,#collectionGrid,#artworkGrid,#artGrid,#roomGrid,#frameGrid,.v8-rail){box-sizing:border-box;display:grid!important;grid-template-columns:none!important;grid-template-rows:repeat(2,max-content)!important;grid-auto-flow:column!important;grid-auto-columns:calc((100% - 8px)/2)!important;gap:8px!important;width:100%!important;min-width:0!important;max-width:100%!important;padding-inline:0!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x proximity}
  html.savorip-creation-surface :is(#productGrid,.vw-collection-grid,.vw-ip-grid,.vw-style-grid,.w12-grid,.vw-saved-grid,#storeArtworkRail,#storeSourceRail,#storePreviewGrid,#familyArtGrid,#familyProductGrid,#collectionGrid,#artworkGrid,#artGrid,#roomGrid,#frameGrid,.v8-rail)>*{box-sizing:border-box;width:100%!important;min-width:0!important;max-width:none!important;flex-basis:auto!important;margin-inline:0!important;scroll-snap-align:start;overflow-wrap:anywhere}
  html.savorip-creation-surface #visualWorkshop #productGrid .product-choice{box-sizing:border-box;width:100%!important;min-width:0!important;flex-basis:auto!important}
  html.savorip-creation-surface :is(.vw-collection-grid,.vw-ip-grid,.vw-style-grid,.w12-grid,#productGrid,#storeArtworkRail,#storeSourceRail)>* img{max-width:100%;object-fit:contain}
  html.savorip-creation-surface :is(.vw-inspirations,.vw-collection,.product-selector-panel,.store-products-layout,.store-source-picker,.store-studio-workbench,.studio-stage-column){box-sizing:border-box;min-width:0!important;max-width:100%!important}
  html.savorip-creation-surface :is(#studioProductTray,.studio-scene-picker){box-sizing:border-box;display:grid!important;grid-template-columns:none!important;grid-template-rows:auto!important;grid-auto-flow:column!important;grid-auto-columns:calc((100% - 8px)/2)!important;gap:8px!important;min-width:0!important;max-width:100%!important;overflow-x:auto!important;padding-inline:0!important}
  html.savorip-creation-surface :is(#studioProductTray,.studio-scene-picker)>*{box-sizing:border-box;width:100%!important;min-width:0!important;margin-inline:0!important}
  #storeBuilderApp #md15{padding:12px 8px;border-radius:12px}#storeBuilderApp #md15 .md15-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 8px)/2);gap:8px}
  #storeBuilderApp #md15 .md15-card strong{font-size:14px;padding:8px 6px 0}#storeBuilderApp #md15 .md15-card>span:last-child{font-size:12px;padding:4px 6px 10px}.md15-generate{grid-template-columns:minmax(0,1fr) 90px}.md15-generate>button{grid-column:1/-1}
  #storeBuilderApp #md15>.md15-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}#storeBuilderApp #md15>.md15-actions button{padding-inline:6px;font-size:14px}
}
