.crop-page[data-v-0dc4f78e]{display:flex;min-height:calc(100vh - 92px);flex-direction:column;gap:1rem;padding:1rem 1.5rem}.crop-hero[data-v-0dc4f78e]{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.crop-title[data-v-0dc4f78e]{font-size:1.5rem;line-height:1.2}.crop-description[data-v-0dc4f78e]{margin-top:.5rem;color:var(--text-secondary);font-size:.875rem}.image-meta[data-v-0dc4f78e]{min-width:148px;padding:.75rem 1rem;border:1px solid var(--border);border-radius:8px;background:var(--background-secondary)}.image-meta span[data-v-0dc4f78e]{display:block;color:var(--text-secondary);font-size:.75rem}.image-meta strong[data-v-0dc4f78e]{color:var(--text-primary);font-size:.95rem}.crop-workspace[data-v-0dc4f78e]{display:grid;flex:1;grid-template-columns:minmax(0,1fr) 340px;gap:1rem;min-height:0}.stage-panel[data-v-0dc4f78e],.control-panel[data-v-0dc4f78e]{border:1px solid var(--border);border-radius:8px;background:var(--background);box-shadow:0 12px 30px #0f172a0d}.stage-panel[data-v-0dc4f78e]{position:relative;display:flex;min-width:0;min-height:620px;overflow:hidden}.file-input[data-v-0dc4f78e]{display:none}.upload-zone[data-v-0dc4f78e]{display:flex;flex:1;min-height:420px;align-items:center;justify-content:center;flex-direction:column;gap:.5rem;margin:1rem;border:1px dashed var(--border);border-radius:8px;background:var(--background-secondary);color:var(--text-secondary);cursor:pointer}.upload-zone .el-icon[data-v-0dc4f78e]{color:var(--text-primary);font-size:2rem}.upload-zone strong[data-v-0dc4f78e]{color:var(--text-primary)}.crop-stage[data-v-0dc4f78e]{position:relative;display:flex;width:100%;align-items:center;justify-content:center;padding:1rem;overflow:hidden;background:linear-gradient(45deg,var(--background-secondary) 25%,transparent 25%),linear-gradient(-45deg,var(--background-secondary) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--background-secondary) 75%),linear-gradient(-45deg,transparent 75%,var(--background-secondary) 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px;touch-action:none}.source-image[data-v-0dc4f78e]{display:block;max-width:100%;max-height:calc(100vh - 210px);object-fit:contain;-webkit-user-select:none;user-select:none}.crop-shade[data-v-0dc4f78e]{position:absolute;inset:0;background:#00000085;pointer-events:none}.crop-rect[data-v-0dc4f78e]{position:absolute;border:2px solid #fff;box-shadow:0 0 0 1px #0000005c;cursor:move}.rule[data-v-0dc4f78e]{position:absolute;background:#ffffff8f;pointer-events:none}.rule-v[data-v-0dc4f78e]{top:0;bottom:0;width:1px}.rule-v.first[data-v-0dc4f78e]{left:33.333%}.rule-v.second[data-v-0dc4f78e]{left:66.666%}.rule-h[data-v-0dc4f78e]{right:0;left:0;height:1px}.rule-h.first[data-v-0dc4f78e]{top:33.333%}.rule-h.second[data-v-0dc4f78e]{top:66.666%}.resize-handle[data-v-0dc4f78e]{position:absolute;width:18px;height:18px;border:2px solid #fff;border-radius:50%;background:var(--el-color-primary)}.handle-nw[data-v-0dc4f78e]{top:-10px;left:-10px;cursor:nwse-resize}.handle-ne[data-v-0dc4f78e]{top:-10px;right:-10px;cursor:nesw-resize}.handle-sw[data-v-0dc4f78e]{bottom:-10px;left:-10px;cursor:nesw-resize}.handle-se[data-v-0dc4f78e]{right:-10px;bottom:-10px;cursor:nwse-resize}.control-panel[data-v-0dc4f78e]{display:flex;min-width:0;flex-direction:column;overflow:auto}.control-section[data-v-0dc4f78e]{padding:1rem;border-bottom:1px solid var(--border)}.control-section[data-v-0dc4f78e]:last-child{border-bottom:0}.control-section h2[data-v-0dc4f78e],.control-section h3[data-v-0dc4f78e]{margin:0 0 .75rem;color:var(--text-primary);font-size:1rem;font-weight:600}.control-section h3[data-v-0dc4f78e]{font-size:.875rem}.button-grid[data-v-0dc4f78e],.ratio-grid[data-v-0dc4f78e],.field-grid[data-v-0dc4f78e]{display:grid;gap:.5rem}.button-grid[data-v-0dc4f78e]{grid-template-columns:repeat(2,minmax(0,1fr))}.button-grid[data-v-0dc4f78e] .el-button{width:100%;min-width:0;margin-left:0}.ratio-grid[data-v-0dc4f78e]{grid-template-columns:repeat(5,minmax(0,1fr))}.ratio-grid button[data-v-0dc4f78e]{height:34px;border:1px solid var(--border);border-radius:6px;background:var(--background);color:var(--text-primary);cursor:pointer}.ratio-grid button.active[data-v-0dc4f78e]{border-color:var(--el-color-primary);background:var(--el-color-primary-light-9);color:var(--el-color-primary);font-weight:600}.field-grid[data-v-0dc4f78e]{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid label[data-v-0dc4f78e]{display:grid;gap:.25rem;min-width:0}.field-grid span[data-v-0dc4f78e]{color:var(--text-secondary);font-size:.75rem}.field-grid[data-v-0dc4f78e] .el-input-number{width:100%}.format-row[data-v-0dc4f78e]{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,108px);gap:.5rem;margin-bottom:.75rem}.format-row[data-v-0dc4f78e] .el-select,.format-row[data-v-0dc4f78e] .el-input-number{width:100%;min-width:0}.result-preview[data-v-0dc4f78e],.empty-preview[data-v-0dc4f78e]{display:flex;min-height:150px;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:8px;background:var(--background-secondary)}.result-preview[data-v-0dc4f78e]{flex-direction:column;gap:.5rem;padding:.75rem}.result-preview img[data-v-0dc4f78e]{max-width:100%;max-height:220px;object-fit:contain}.result-preview span[data-v-0dc4f78e],.empty-preview[data-v-0dc4f78e]{color:var(--text-secondary);font-size:.8125rem}@media (max-width: 1024px){.crop-workspace[data-v-0dc4f78e]{grid-template-columns:1fr}.stage-panel[data-v-0dc4f78e]{min-height:520px}.source-image[data-v-0dc4f78e]{max-height:560px}}@media (max-width: 1180px){.format-row[data-v-0dc4f78e]{grid-template-columns:1fr}}@media (max-width: 768px){.crop-page[data-v-0dc4f78e]{min-height:auto;padding:.75rem 1rem}.crop-hero[data-v-0dc4f78e]{align-items:stretch;flex-direction:column}.image-meta[data-v-0dc4f78e]{width:100%}.stage-panel[data-v-0dc4f78e]{min-height:360px}.crop-stage[data-v-0dc4f78e]{min-height:360px;padding:.5rem}.source-image[data-v-0dc4f78e]{max-height:440px}}@media (max-width: 480px){.crop-page[data-v-0dc4f78e]{padding:.5rem}.button-grid[data-v-0dc4f78e],.field-grid[data-v-0dc4f78e],.format-row[data-v-0dc4f78e]{grid-template-columns:1fr}.ratio-grid[data-v-0dc4f78e]{grid-template-columns:repeat(3,minmax(0,1fr))}}
