/* Crops are scoped to opted-in gallery images and to the modal editor. */
.product-visual .cf-gallery-crop{display:block;position:relative;width:100%;aspect-ratio:1;overflow:hidden;border-radius:8px;background:#fff}
.product-visual .cf-gallery-crop>img{position:absolute;display:block;max-width:none;height:auto;aspect-ratio:auto;object-fit:contain;transform-origin:center;border-radius:0;margin:0}
.product-visual .cf-gallery-crop-thumb{border-radius:5px}
[data-gallery-edit-status]:empty{display:none}
.cf-image-field .cf-gallery-edit-button{margin:0 0 6px;width:100%;font-size:11px;padding:7px 5px}
.cf-admin-crop-preview{display:block;position:relative;overflow:hidden;width:100%;aspect-ratio:1;background:#fff;border-radius:7px}
.cf-image-field .cf-admin-crop-preview>img{position:absolute;display:block;max-width:none;height:auto!important;aspect-ratio:auto;object-fit:contain;transform-origin:center;margin:0}
.cf-gallery-edit-dialog{width:min(920px,calc(100vw - 28px));max-height:92dvh;overflow:auto;padding:24px;border:1px solid #ded2e5;border-radius:16px;background:#fff;color:#292039;box-shadow:0 24px 90px #21133040}
.cf-gallery-edit-dialog::backdrop{background:#20182799}
.cf-gallery-edit-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}
.cf-gallery-edit-head h2{font-size:24px;margin:0 0 6px}
.cf-gallery-edit-head p{margin:0;font-size:13px;color:#776b7c;overflow-wrap:anywhere}
.cf-gallery-edit-grid{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:24px;align-items:start}
.cf-gallery-edit-viewport{position:relative;overflow:hidden;width:100%;aspect-ratio:1;background:#f2edf5;border:1px solid #d2c4db;cursor:grab;touch-action:none;user-select:none}
.cf-gallery-edit-viewport.is-dragging{cursor:grabbing}
.cf-gallery-edit-viewport>img{position:absolute;max-width:none;height:auto;aspect-ratio:auto;pointer-events:none;transform-origin:center}
.cf-gallery-edit-viewport:focus-visible{outline:3px solid #79569e;outline-offset:3px}
.cf-gallery-edit-guides{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to right,transparent 33.2%,#fff9 33.2%,#fff9 33.5%,transparent 33.5%,transparent 66.5%,#fff9 66.5%,#fff9 66.8%,transparent 66.8%),linear-gradient(to bottom,transparent 33.2%,#fff9 33.2%,#fff9 33.5%,transparent 33.5%,transparent 66.5%,#fff9 66.5%,#fff9 66.8%,transparent 66.8%)}
.cf-gallery-edit-controls{display:grid;gap:20px;min-width:0}
.cf-gallery-edit-controls label{display:grid;gap:8px;font-size:13px;font-weight:600}
.cf-gallery-edit-controls input[type=range]{width:100%;padding:0;accent-color:#ce387b}
.cf-gallery-edit-controls input[type=number]{width:100%;min-width:0;padding:9px;border:1px solid #ded2e5;border-radius:6px;font:inherit}
.cf-gallery-edit-numbers{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;gap:8px;align-items:center}
.cf-gallery-edit-controls .button{white-space:normal}
.cf-gallery-edit-rotate{display:flex;gap:8px}.cf-gallery-edit-rotate button{flex:1}
.cf-gallery-edit-dialog .help{font-size:12px;line-height:1.5}
.cf-gallery-edit-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-end;margin-top:22px;padding-top:18px;border-top:1px solid #eee5f0}
.cf-gallery-edit-actions [data-edit-original]{margin-right:auto}
.cf-gallery-edit-status{min-height:1.5em}
@media(max-width:600px){.cf-gallery-edit-dialog{padding:16px}.cf-gallery-edit-grid{grid-template-columns:1fr;gap:18px}.cf-gallery-edit-controls{grid-template-columns:1fr 1fr;gap:12px}.cf-gallery-edit-controls .cf-gallery-edit-rotate,.cf-gallery-edit-controls>[data-edit-center],.cf-gallery-edit-controls>.help{grid-column:1/-1}.cf-gallery-edit-head h2{font-size:20px}.cf-gallery-edit-actions{gap:8px}.cf-gallery-edit-actions .button{flex:1 1 auto}.cf-gallery-edit-actions [data-edit-original]{flex-basis:100%;margin:0}}
