.product-gallery { min-width:0; }
dialog > .close { z-index:3; }
.gallery-stage { position:relative; aspect-ratio:3 / 4; background:#f1f1ef; overflow:hidden; border-radius:6px; }
.product-detail .gallery-main { width:100%; height:100%; object-fit:contain; display:block; }
.gallery-stage .icon { position:absolute; top:50%; transform:translateY(-50%); width:36px; height:36px; background:#fff; color:#202120; border:1px solid #ddd; border-radius:4px; }
.gallery-prev { left:8px; }
.gallery-next { right:8px; }
.gallery-thumbnails { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:6px; margin-top:10px; }
.gallery-thumbnails button { padding:0; border:2px solid transparent; border-radius:4px; overflow:hidden; aspect-ratio:3 / 4; background:#f1f1ef; }
.gallery-thumbnails button[aria-pressed="true"] { border-color:#626746; }
.product-detail .gallery-thumbnails img { width:100%; height:100%; object-fit:cover; display:block; }
.photo-editor-heading { display:flex; justify-content:space-between; align-items:center; margin-bottom:10px; }
#photo-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:12px; }
.photo-editor-item { min-width:0; }
.photo-editor-item > img { display:block; width:100%; aspect-ratio:3 / 4; object-fit:cover; border-radius:4px; }
.photo-editor-tools { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:2px; margin-top:4px; }
.photo-editor-tools .icon { width:100%; height:32px; min-width:0; border:1px solid #ddd; border-radius:4px; padding:0; font-size:18px; }
#photo-status { font-size:14px; min-height:20px; margin:6px 0; }
.icon:disabled { opacity:.35; cursor:default; }
.product-color-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.form .product-color-option { display:flex; flex-direction:row; align-items:center; gap:8px; padding:10px; border:1px solid #dedfd9; border-radius:4px; cursor:pointer; font-size:14px; }
.form .product-color-option:has(input:checked) { border-color:#626746; background:#f1f3ed; }
.form .product-color-option input { width:16px; height:16px; padding:0; margin:0; accent-color:#626746; flex-shrink:0; }
.color-sample { width:22px; height:22px; border:1px solid #888; border-radius:50%; flex-shrink:0; }
.swatches button { width:30px; height:30px; padding:0; border:1px solid #aaa; border-radius:50%; cursor:pointer; }
.swatches button:hover, .swatches button:focus-visible { outline:2px solid #626746; outline-offset:3px; }
.purchase-color-options { display:flex; gap:8px; flex-wrap:wrap; }
.purchase-color-options label { display:flex; align-items:center; gap:6px; padding:8px; border:1px solid #dedfd9; border-radius:4px; cursor:pointer; font-size:14px; }
.purchase-color-options label:has(input:checked) { border-color:#626746; background:#f1f3ed; }
.purchase-color-options input { width:16px; height:16px; margin:0; accent-color:#626746; }
.purchase-colors { margin:12px 0; }
.delete-product-button { display:inline-flex; align-items:center; justify-content:center; color:#a32b32; vertical-align:middle; margin-left:6px; }
.delete-product-button svg { width:20px; height:20px; }
.delete-product-actions { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:10px; margin-top:24px; }
.primary.danger { background:#a32b32; color:#fff; }
.primary.danger:hover { background:#85232a; }
@media(max-width:600px) { .product-color-options { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:480px) { .product-color-options { grid-template-columns:1fr; } }
.gallery-stage .icon svg, .photo-editor-tools .icon svg { width:18px; height:18px; margin:auto; display:block; }
.photo-editor-item:first-child [data-action="photo-main"] svg { fill:#626746; stroke:#626746; }
@media(max-width:600px) { .gallery-stage { aspect-ratio:1; max-height:380px; } #photo-list { grid-template-columns:repeat(2,minmax(0,1fr)); } }
