.image-crop-panel{background:#fff;border:1px solid #eceff4;border-radius:8px;box-shadow:0 14px 36px #1118270f;display:flex;flex-direction:column;gap:16px;min-width:0;padding:20px}.image-crop-panel__head{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.image-crop-panel__title{color:#111827;font-weight:800;margin:0}.image-crop-panel__lead{color:#4b5563;line-height:1.6;margin:6px 0 0}.image-crop-panel__workspace{align-items:stretch;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) minmax(300px,360px)}.image-crop-panel__control-block,.image-crop-panel__controls,.image-crop-panel__preview-column{display:flex;flex-direction:column;min-width:0}.image-crop-panel__preview-column{gap:10px;min-height:0}.image-crop-panel__controls{gap:16px}.image-crop-panel__control-block{gap:8px}.image-crop-panel__control-label{color:#4b5563;font-size:14px;font-weight:800}.image-crop-panel__file-toolbar{align-items:center;display:flex;gap:10px;justify-content:space-between;min-width:0}.image-crop-panel__file-actions{align-items:center;display:flex;flex:0 0 auto;gap:8px;margin-left:auto}.image-crop-panel__file-name{color:#4b5563;font-size:14px;font-weight:800;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-crop-panel__preview-wrap{align-items:center;background:linear-gradient(45deg,#f5f7fb 25%,transparent 0),linear-gradient(-45deg,#f5f7fb 25%,transparent 0),linear-gradient(45deg,transparent 75%,#f5f7fb 0),linear-gradient(-45deg,transparent 75%,#f5f7fb 0);background-color:#fff;background-position:0 0,0 12px,12px -12px,-12px 0;background-size:24px 24px;border:1px solid #e5e7eb;border-radius:8px;display:flex;justify-content:center;min-height:260px;min-width:0;overflow:hidden}.image-crop-panel__preview-wrap--empty{background:transparent;border:0;flex:1 1 auto;min-height:260px;overflow:visible}.image-crop-panel__canvas{display:block;height:auto;max-height:72vh;max-width:100%;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.image-crop-panel__modes,.image-crop-panel__presets{display:grid;gap:8px}.image-crop-panel__modes{background:#f8fafc;border:1px solid #eceff4;border-radius:8px;padding:4px}.image-crop-panel__modes,.image-crop-panel__presets{grid-template-columns:repeat(2,minmax(0,1fr))}.image-crop-panel__secondary-action{align-items:center;display:inline-flex;justify-content:center}.image-crop-panel .image-crop-panel__preset-select{display:none}.image-crop-panel__actions{display:flex;flex-direction:column;gap:10px}.image-crop-panel__secondary-actions{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.image-crop-panel__secondary-actions--single{grid-template-columns:minmax(0,1fr)}.image-crop-panel__secondary-action{background:transparent;border:1px solid transparent;border-radius:14px;color:#4b5563;cursor:pointer;font:inherit;font-weight:800;gap:8px;min-height:46px;padding:0 16px;transition:border-color .18s ease,background-color .18s ease,color .18s ease}.image-crop-panel__secondary-action--clear{background:#fff;border-color:#11182714}.image-crop-panel__secondary-action--clear:hover:not(:disabled){background:#fff7f7;border-color:#ea555533;color:var(--danger-color)}.image-crop-panel__secondary-action--ready{background:#f0fdf4;border-color:#15803d29;color:#166534}.image-crop-panel__secondary-action--ready:hover:not(:disabled){background:#dcfce7;border-color:#15803d3d;color:#14532d}.image-crop-panel__secondary-action:disabled{cursor:not-allowed;opacity:.62}.image-crop-panel__secondary-action svg{flex-shrink:0;height:20px;width:20px}.image-crop-panel__secondary-action:focus-visible{outline:3px solid rgba(234,85,85,.28);outline-offset:2px}@media(max-width:992px){.image-crop-panel__workspace{align-items:start;grid-template-columns:minmax(0,1fr)}.image-crop-panel__canvas{max-height:64vh}}@media(max-width:640px){.image-crop-panel{padding:16px}.image-crop-panel__head{flex-direction:column}.image-crop-panel__file-toolbar{align-items:stretch;flex-direction:column}.image-crop-panel__file-actions{width:100%}.image-crop-panel__top-clear,.image-crop-panel__top-ready{flex:1 1 0;width:100%}.image-crop-panel .image-crop-panel__presets{display:none}.image-crop-panel .image-crop-panel__preset-select{display:flex}.image-crop-panel__secondary-actions{grid-template-columns:minmax(0,1fr)}}
