/* Photo crop editor: calm, mobile-first, square product photography */
.photo-editor-backdrop{position:fixed;inset:0;background:rgba(26,30,27,.67);backdrop-filter:blur(9px);z-index:520;display:flex;align-items:center;justify-content:center;padding:16px;overflow:auto}
.photo-editor-panel{width:min(540px,100%);background:#fcfbf8;border-radius:22px;padding:24px;box-shadow:0 28px 90px #161a163b;max-height:calc(100dvh - 24px);overflow:auto}
.photo-editor-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.photo-editor-top small{font-size:10px;letter-spacing:2px;color:#a17f57;font-weight:750}
.photo-editor-top h2{font:normal 31px Georgia,serif;margin:8px 0 6px;color:#202c28}
.photo-editor-close{border:0;border-radius:50%;background:#f1eee7;color:#3a453a;width:35px;height:35px;font-size:25px;flex-shrink:0}
.photo-editor-product{font-size:11px;color:#92948c;line-height:1.6;margin:7px 0 14px}
.photo-editor-frame{width:min(100%,360px);aspect-ratio:1;overflow:hidden;position:relative;margin:0 auto;background:#f1eee7;border-radius:15px;box-shadow:inset 0 0 0 1px #e5e0d7}
.photo-editor-frame canvas{width:100%;height:100%;touch-action:none;cursor:grab;user-select:none;display:block}
.photo-editor-frame canvas:active{cursor:grabbing}
.photo-editor-corners{position:absolute;inset:15px;pointer-events:none;border:1px solid #ffffffbb;border-radius:4px;box-shadow:0 0 0 1px #00000015}
.photo-editor-adjust{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;margin:18px 0 8px}
.photo-editor-adjust label{font-size:12px;font-weight:650;color:#5f665c;white-space:nowrap}
.photo-editor-adjust input{accent-color:#8f765c;width:100%}
.photo-editor-adjust button{background:none;border:0;color:#a2794d;font-size:11px;font-weight:700;white-space:nowrap}
.photo-editor-hint{font-size:11px;line-height:1.65;color:#9a9a90}
.photo-editor-message{min-height:20px;font-size:11px;line-height:1.5;color:#b35f50;margin:8px 0 0}
.photo-editor-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}
.photo-editor-actions button{min-width:125px}
.photo-editor-actions button:disabled{opacity:.5;cursor:wait}
@media(max-width:600px){.photo-editor-backdrop{padding:8px;align-items:flex-end}.photo-editor-panel{border-radius:21px 21px 0 0;padding:20px 19px 25px;max-height:96dvh}.photo-editor-frame{width:min(100%,330px)}.photo-editor-top h2{font-size:27px}.photo-editor-adjust{gap:8px}.photo-editor-adjust label{font-size:11px}}
