.crop-positioned{object-fit:var(--crop-desktop-fit,cover)!important;object-position:var(--crop-desktop-x,50%) var(--crop-desktop-y,35%)!important;transform-origin:var(--crop-desktop-x,50%) var(--crop-desktop-y,35%);transform:scale(var(--crop-desktop-zoom,1))}
.thumbnail-crop-frame{overflow:hidden;aspect-ratio:1200/630;background:var(--cream)}
.thumbnail-crop-frame img{width:100%;height:100%}
.photo-crop-editor{margin:22px 0;padding:20px 16px;border:1px solid var(--olive);background:var(--white)}
.photo-crop-editor[hidden]{display:none!important}
.photo-crop-editor h4{font:22px/1.4 var(--serif);margin:0 0 10px}
.photo-crop-editor p{font:11px/1.8 var(--sans);margin:10px 0}
.crop-options{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.crop-options button{border:1px solid var(--line)!important;padding:8px 12px!important;min-height:42px;font-size:11px}
.crop-options button[aria-pressed=true]{background:var(--ink)!important;color:var(--cream)}
.crop-stage{position:relative;max-width:300px;width:100%;overflow:hidden;margin:16px auto;background:var(--cream);touch-action:none;cursor:grab;isolation:isolate}
.crop-stage:active{cursor:grabbing}.crop-stage img{position:absolute;inset:0;width:100%;height:100%;max-width:none;pointer-events:none;user-select:none}
.crop-grid{position:absolute;inset:0;pointer-events:none;border:1px solid #fff9;background:linear-gradient(to right,transparent 33%,#fff6 33%,#fff6 calc(33% + 1px),transparent calc(33% + 1px),transparent 66%,#fff6 66%,#fff6 calc(66% + 1px),transparent calc(66% + 1px)),linear-gradient(to bottom,transparent 33%,#fff6 33%,#fff6 calc(33% + 1px),transparent calc(33% + 1px),transparent 66%,#fff6 66%,#fff6 calc(66% + 1px),transparent calc(66% + 1px))}
.photo-crop-editor label{display:block;font-size:11px;margin-top:12px}
.admin-dialog .photo-crop-editor input[type=range]{width:100%;padding:0;border:0;min-height:40px;margin:0;accent-color:var(--ink);background:transparent}
.crop-footer{display:flex;gap:10px;margin-top:15px}.crop-footer .button{flex:1;justify-content:center;padding-inline:12px;gap:8px}
@media(max-width:760px){.crop-positioned{object-fit:var(--crop-mobile-fit,cover)!important;object-position:var(--crop-mobile-x,50%) var(--crop-mobile-y,35%)!important;transform-origin:var(--crop-mobile-x,50%) var(--crop-mobile-y,35%);transform:scale(var(--crop-mobile-zoom,1))}.photo-crop-editor{padding:16px 12px}.crop-footer{flex-wrap:wrap}}
