.image-crop-open{overflow:hidden!important}.image-crop-overlay{position:fixed;inset:0;z-index:2400;display:grid;place-items:center;padding:20px;background:#000c;backdrop-filter:blur(8px);overflow:auto;overscroll-behavior:contain}.image-crop-dialog{width:min(100%,620px);max-height:calc(100dvh - 40px);overflow:auto;min-width:0;padding:24px;border:1px solid #39302a;border-radius:22px;background:#101010;color:#f8f6f2;box-shadow:0 28px 100px #000a}.image-crop-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.image-crop-heading h2{margin:0;font-size:24px}.image-crop-dialog>p{font-size:12px;line-height:1.6;margin:12px 0 18px}.image-crop-stage{position:relative;display:block;max-width:100%;width:min(100%,470px);margin:0 auto;background:repeating-conic-gradient(#202020 0% 25%,#161616 0% 50%) 50% / 18px 18px;border:1px solid #666;border-radius:10px;overflow:hidden;touch-action:none;cursor:grab;outline-offset:4px}.image-crop-stage:active{cursor:grabbing}.image-crop-stage.is-avatar{border-radius:50%}.image-crop-stage canvas{display:block;width:100%;height:100%;pointer-events:none}.image-crop-zoom{display:grid;grid-template-columns:auto minmax(0,1fr) 50px;align-items:center;gap:14px;margin:20px 0;font-size:12px}.image-crop-zoom input{width:100%;height:44px;accent-color:#ff7600}.image-crop-zoom output{text-align:right;font-variant-numeric:tabular-nums}.image-crop-tools,.image-crop-actions{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.image-crop-actions{margin-top:20px;padding-top:18px;border-top:1px solid #303030}.image-crop-dialog .btn{min-height:44px;white-space:normal}.image-crop-actions .btn-primary{margin-left:auto}@media(max-width:600px){.image-crop-overlay{align-items:center;padding:12px}.image-crop-dialog{padding:18px;max-height:calc(100dvh - 24px);border-radius:18px}.image-crop-heading h2{font-size:21px}.image-crop-stage{width:min(100%,360px)}.image-crop-zoom{gap:9px}.image-crop-actions>.btn{flex:1}.image-crop-dialog>p{font-size:11px}}
.image-crop-stage{width:min(100%,470px,max(120px,calc((100dvh - 400px) * var(--crop-aspect,1))));flex-shrink:0}
.image-crop-dialog:focus-within{scroll-padding-bottom:85px}
.image-crop-actions{position:sticky;bottom:-24px;z-index:2;background:#101010;padding-bottom:4px}
@media(max-width:600px){.image-crop-stage{width:min(100%,360px,max(120px,calc((100dvh - 360px) * var(--crop-aspect,1))))}.image-crop-actions{bottom:-18px}}
@media(max-height:540px) and (min-width:600px){
 .image-crop-overlay{padding:10px}
 .image-crop-dialog{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,1fr);column-gap:22px;align-items:center;padding:16px 20px;max-height:calc(100dvh - 20px);width:min(100%,850px)}
 .image-crop-heading,.image-crop-dialog>p{grid-column:1/-1}
 .image-crop-heading h2{font-size:21px}
 .image-crop-dialog>p{margin:7px 0 12px}
 .image-crop-stage{grid-column:1;grid-row:3/span 3;width:min(100%,470px,max(100px,calc((100dvh - 175px) * var(--crop-aspect,1))))}
 .image-crop-zoom{grid-column:2;grid-row:3;margin:4px 0 12px;gap:8px}
 .image-crop-tools{grid-column:2;grid-row:4}
 .image-crop-actions{grid-column:2;grid-row:5;position:static;margin-top:12px;padding-top:12px}
 .image-crop-actions>.btn{flex:1}
}
