.shop-media-portal{display:grid;gap:1.25rem;width:100%;max-width:64rem;margin-inline:auto;min-width:0}
.shop-media-portal header,.shop-media-portal section{min-width:0}
.shop-media-portal h1,.shop-media-portal h2,.shop-media-portal h3{overflow-wrap:anywhere}
.shop-media-portal .shop-media-form{display:grid;gap:.85rem;max-width:38rem;margin-block:1rem;min-width:0}
.shop-media-portal .shop-field{display:grid;gap:.35rem;min-width:0}
.shop-media-portal input[type=text],.shop-media-portal input[type=file],.shop-media-portal select{box-sizing:border-box;width:100%;max-width:100%;min-width:0}
.shop-media-portal .shop-button{max-width:100%;white-space:normal;overflow-wrap:anywhere;justify-self:start}
.shop-media-portal .shop-media-list{display:grid;gap:1rem;list-style:none;padding:0;margin:0;min-width:0}
.shop-media-portal .shop-media-item{min-width:0}
.shop-media-portal .shop-media-item .shop-media-figure{max-width:28rem}
.shop-media-portal .shop-media-delete{display:grid;gap:.75rem;border-top:1px solid #d6d3df;padding-top:1rem;margin-top:1rem}
.shop-media-portal .shop-media-confirm{display:flex;align-items:flex-start;gap:.6rem;overflow-wrap:anywhere}
.shop-media-portal .shop-media-confirm input{flex:0 0 auto;margin-top:.25rem}
.shop-media-portal .shop-media-note{white-space:pre-wrap;overflow-wrap:anywhere}
.shop-media-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:1rem;width:100%;max-width:64rem;min-width:0}
.shop-media-gallery .shop-media-figure,.shop-media-portal .shop-media-figure{margin:0;min-width:0}
.shop-media-gallery .shop-media-image-link,.shop-media-portal .shop-media-image-link{display:block;max-width:100%;border-radius:.5rem;overflow:hidden}
.shop-media-gallery .shop-media-image,.shop-media-portal .shop-media-image{display:block;width:100%;max-width:100%;height:auto;max-height:24rem;aspect-ratio:4/3;object-fit:contain;background:#f4f2f7}
.shop-media-gallery figcaption,.shop-media-portal figcaption{margin-top:.5rem;overflow-wrap:anywhere;white-space:pre-wrap}
.shop-media-gallery a:focus-visible,.shop-media-portal a:focus-visible,.shop-media-portal button:focus-visible,.shop-media-portal input:focus-visible,.shop-media-portal select:focus-visible{outline:3px solid #513ab5;outline-offset:3px}
@media(max-width:640px){.shop-media-portal .shop-button{width:100%;text-align:center;justify-self:stretch}.shop-media-gallery{grid-template-columns:1fr}.shop-media-gallery .shop-media-image,.shop-media-portal .shop-media-image{max-height:18rem}}
