.image-editor-page{max-width:1400px;margin:3rem auto;padding:0 2rem}.image-editor-header{text-align:center;margin-bottom:2rem}.image-editor-header h2{font-size:2.5rem;font-weight:700;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-hover) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.image-editor-header p{font-size:1.125rem;color:var(--text-secondary)}.mode-tabs{display:flex;gap:1rem;margin-bottom:2rem;border-bottom:2px solid var(--border-color)}.mode-tab{display:flex;align-items:center;gap:.5rem;padding:1rem 2rem;background:none;border:none;color:var(--text-secondary);font-weight:600;cursor:pointer;position:relative;transition:var(--transition);-webkit-tap-highlight-color:transparent}.mode-tab:hover,.mode-tab.active{color:var(--primary)}.mode-tab.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--primary)}.editor-content{display:grid;grid-template-columns:350px 1fr;gap:2rem}.editor-controls{background:var(--bg-secondary);border-radius:1rem;padding:2rem;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);display:flex;flex-direction:column;gap:1.5rem;max-height:calc(100vh - 300px);overflow-y:auto}.upload-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;background:linear-gradient(135deg,var(--primary),var(--primary-hover));color:#fff;border-radius:.5rem;font-weight:600;cursor:pointer;transition:var(--transition)}.upload-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #2563eb66}.image-info{padding:.75rem;background:var(--bg-tertiary);border-radius:.5rem;color:var(--text-secondary);font-size:.875rem}.crop-hint{padding:.75rem;background:#2563eb1a;border-left:3px solid var(--primary);border-radius:.375rem;color:var(--text-primary);font-size:.875rem}.control-group{display:flex;flex-direction:column;gap:.75rem}.control-group label{font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.control-group input[type=checkbox]{width:1.125rem;height:1.125rem;cursor:pointer}.control-group input[type=number],.control-group input[type=range],.control-group select{width:100%;padding:.75rem;border:2px solid var(--border-color);border-radius:.5rem;background:var(--bg-primary);color:var(--text-primary);font-family:inherit;transition:var(--transition)}.control-group input[type=number]:focus,.control-group select:focus{border-color:var(--primary);outline:none}.control-group input:disabled{opacity:.5;cursor:not-allowed}.btn-process{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;background:linear-gradient(135deg,var(--success),#059669);color:#fff;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-process:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.btn-process:disabled{opacity:.6;cursor:not-allowed}.spinning{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.editor-preview{background:var(--bg-secondary);border-radius:1rem;padding:2rem;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);min-height:500px;display:flex;align-items:center;justify-content:center}.no-image{display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--text-secondary)}.preview-container{display:flex;flex-direction:column;gap:1.5rem;width:100%}.preview-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:2rem;width:100%}@media(max-width:1200px){.preview-wrapper{grid-template-columns:1fr}}.error-message{padding:1rem;background:linear-gradient(135deg,#ef44441a,#dc26261a);border:1px solid rgba(239,68,68,.3);border-radius:.5rem;color:#ef4444;font-weight:500;text-align:center}.original-preview,.result-preview{display:flex;flex-direction:column;gap:1rem}.original-preview h3,.result-preview h3{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.image-wrapper{position:relative;user-select:none;-webkit-user-select:none;touch-action:none;background:var(--bg-tertiary);border-radius:.5rem;overflow:hidden;display:inline-block;width:fit-content;max-width:100%}.image-wrapper.cropping{cursor:crosshair}.image-wrapper img{max-width:100%;display:block}.crop-overlay{position:absolute;border:2px dashed var(--primary);background:#2563eb1a;box-shadow:0 0 0 9999px #00000080}.crop-handle{position:absolute;background:#fff;border:2px solid var(--primary);pointer-events:auto;z-index:10}.crop-handle.nw,.crop-handle.ne,.crop-handle.sw,.crop-handle.se{width:12px;height:12px;border-radius:50%}.crop-handle.nw{top:-6px;left:-6px;cursor:nw-resize}.crop-handle.ne{top:-6px;right:-6px;cursor:ne-resize}.crop-handle.sw{bottom:-6px;left:-6px;cursor:sw-resize}.crop-handle.se{bottom:-6px;right:-6px;cursor:se-resize}.crop-handle.n,.crop-handle.s{left:50%;transform:translate(-50%);width:12px;height:8px;border-radius:4px}.crop-handle.n{top:-4px;cursor:n-resize}.crop-handle.s{bottom:-4px;cursor:s-resize}.crop-handle.w,.crop-handle.e{top:50%;transform:translateY(-50%);width:8px;height:12px;border-radius:4px}.crop-handle.w{left:-4px;cursor:w-resize}.crop-handle.e{right:-4px;cursor:e-resize}.crop-handle:hover{background:var(--primary);transform:scale(1.2)}.crop-handle.n:hover,.crop-handle.s:hover{transform:translate(-50%) scale(1.2)}.crop-handle.w:hover,.crop-handle.e:hover{transform:translateY(-50%) scale(1.2)}.result-preview img{max-width:100%;border-radius:.5rem;box-shadow:0 4px 12px #0000001a}.result-info{padding:1rem;background:var(--bg-tertiary);border-radius:.5rem;font-size:.875rem;color:var(--text-secondary)}.result-info p{margin:.25rem 0}.btn-download{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.75rem;background:var(--success);color:#fff;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-download:hover{opacity:.9;transform:translateY(-2px)}@media(max-width:1200px){.editor-content{grid-template-columns:1fr}}@media(max-width:768px){.image-editor-page{padding:0 1rem;margin:2rem auto}.image-editor-header h2{font-size:1.875rem}.mode-tabs{gap:.5rem}.mode-tab{padding:.75rem 1rem;font-size:.875rem}.editor-controls{padding:1.5rem}}@media(max-width:480px){.image-editor-page{padding:0 .75rem;margin:1.5rem auto}.image-editor-header h2{font-size:1.5rem}.mode-tab{padding:.625rem .75rem}.editor-controls{padding:1.25rem}}.custom-select-wrapper{position:relative}.custom-select{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:.5rem;cursor:pointer;transition:border-color .3s ease,background-color .3s ease;-webkit-user-select:none;user-select:none;min-height:48px;-webkit-tap-highlight-color:transparent;-webkit-transform:translateZ(0);transform:translateZ(0)}.custom-select:hover{border-color:var(--primary)}.custom-select:active{transform:scale(.98)}.custom-select-value{color:var(--text-primary);font-size:.938rem;font-weight:500;flex:1}.custom-select-arrow{color:var(--text-secondary);transition:transform .3s ease;flex-shrink:0;margin-left:.5rem}.custom-select-arrow.open{transform:rotate(180deg)}.custom-select-dropdown{position:absolute;top:calc(100% + .5rem);left:0;right:0;background:var(--bg-secondary);border:2px solid var(--primary);border-radius:.5rem;box-shadow:0 4px 12px #00000026;overflow:hidden;z-index:100;animation:slideDown .2s ease;-webkit-transform:translateZ(0);transform:translateZ(0);will-change:opacity,transform}@keyframes slideDown{0%{opacity:0;transform:translate3d(0,-10px,0)}to{opacity:1;transform:translateZ(0)}}.custom-select-option{padding:.75rem 1rem;cursor:pointer;transition:background-color .2s ease;color:var(--text-primary);font-size:.938rem;font-weight:500;-webkit-tap-highlight-color:transparent}.custom-select-option:hover{background:#2563eb1a}.custom-select-option:active{opacity:.8}.custom-select-option.active{background:var(--primary);color:#fff;font-weight:600}
