.crop-dialog{width:min(760px,calc(100% - 24px));max-height:calc(100svh - 24px);padding:24px;border:1px solid #d6c7d6;border-radius:20px;color:#342c3d;background:#f8f3e9;overflow:auto;box-shadow:0 25px 100px #17112166}.crop-dialog::backdrop{background:#211d32c9}.crop-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.crop-heading h2{font:36px Georgia,serif;margin:4px 0}.crop-heading .eyebrow{color:#65506c;font-size:10px;letter-spacing:.16em}.crop-dialog button{font:inherit;min-height:44px;min-width:44px;border:1px solid #b7a5b9;border-radius:10px;background:#fffaf2;color:#342c3d;padding:10px 16px;cursor:pointer}.crop-dialog button:focus-visible{outline:3px solid #754183;outline-offset:3px}.crop-dialog button:disabled{opacity:.6;cursor:wait}.crop-cancel{font-size:25px!important}.crop-instructions{font-size:13px;line-height:1.6;color:#5d5265;margin:14px 0 30px}.crop-stage{position:relative;width:min(100%,calc(48svh * var(--crop-ratio)));margin:0 auto 26px;touch-action:none;line-height:0}.crop-stage canvas{width:100%;height:auto;border-radius:2px}.crop-stage svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.crop-stage polygon{stroke:#ffe9a5;stroke-width:.7;vector-effect:non-scaling-stroke;fill:#ffffff18}.crop-stage .crop-handle{position:absolute;transform:translate(-50%,-50%);width:44px;height:44px;padding:0;border-radius:50%;border:2px solid #fff7df;color:white;background:#61446a;box-shadow:0 1px 9px #0006;touch-action:none;font-size:13px}.crop-tools,.crop-footer{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.crop-message{min-height:1.5em;font-size:13px;color:#5d4264;line-height:1.5}.crop-footer{justify-content:flex-end;border-top:1px solid #d8cbd8;padding-top:16px}.crop-dialog .crop-save{background:#51405d;color:#fff9ef;border-color:#51405d}.crop-dialog form{margin:0}@media(max-width:480px){.crop-dialog{padding:20px}.crop-heading h2{font-size:30px}.crop-stage{width:min(calc(100% - 22px),calc(44svh * var(--crop-ratio)))}.crop-footer button{flex:1}}
