*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:20px}.container{max-width:1400px;margin:0 auto;background:#fff;border-radius:20px;box-shadow:0 20px 40px rgba(0,0,0,.1);overflow:hidden}.header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:30px;text-align:center}.header h1{font-size:2.5em;margin-bottom:10px}.header p{opacity:.9;font-size:1.1em}.main-content{display:grid;grid-template-columns:1fr 450px;grid-gap:30px;gap:30px;padding:30px}.upload-area{border:3px dashed #ddd;border-radius:15px;padding:60px;text-align:center;cursor:pointer;transition:all .3s ease;background:#f8f9fa}.upload-area:hover{border-color:#667eea;background:#f0f4ff}.upload-area.dragover{border-color:#667eea;background:#e8f2ff;transform:scale(1.02)}.upload-icon{font-size:4em;color:#667eea;margin-bottom:20px}.preview-section{position:relative}.preview-container{position:relative;border:1px solid #ddd;border-radius:15px;overflow:hidden;background:#f8f9fa;min-height:400px;display:flex;flex-direction:column}.preview-header{padding:15px;display:flex;justify-content:flex-end;border-bottom:1px solid #ddd;background:#fff}.change-image-btn{background:#6c757d;color:#fff;border:none;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:14px;transition:background-color .3s}.change-image-btn:hover{background:#5a6268}.preview-image{max-width:100%;max-height:400px;border-radius:10px}.comparison-container{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px;padding:20px;flex:1 1;align-items:center;justify-content:center}.comparison-item{text-align:center}.comparison-item h4{margin-bottom:10px;color:#333}.controls-panel{background:#f8f9fa;border-radius:15px;padding:30px;height:-moz-fit-content;height:fit-content}.control-group{margin-bottom:25px}.control-group label{display:block;margin-bottom:8px;font-weight:600;color:#333}.slider-container{display:flex;align-items:center;gap:15px}.slider{flex:1 1;height:6px;border-radius:3px;background:#ddd;outline:none;-webkit-appearance:none}.slider::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:#667eea;cursor:pointer}.algorithm-selector{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;margin-bottom:15px}.algorithm-btn{padding:10px;border:2px solid #ddd;border-radius:8px;background:#fff;cursor:pointer;transition:all .3s ease;text-align:center;font-size:14px}.algorithm-btn.active{border-color:#667eea;background:#f0f4ff;color:#667eea}.color-presets{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:10px;gap:10px;margin-bottom:15px}.color-preset{width:40px;height:40px;border-radius:50%;border:2px solid #ddd;cursor:pointer;transition:all .3s ease}.color-preset.active{border-color:#333;transform:scale(1.1)}.input-group{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.input-field{padding:10px;border:1px solid #ddd;border-radius:8px;font-size:14px}.btn{width:100%;padding:15px;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:10px}.btn-primary{background:#667eea;color:#fff}.btn-primary:hover{background:#5a6fd8;transform:translateY(-2px)}.btn-primary:disabled{background:#ccc;cursor:not-allowed;transform:none}.btn-secondary{background:#28a745;color:#fff}.btn-secondary:hover{background:#218838;transform:translateY(-2px)}.btn-secondary:disabled{background:#ccc;cursor:not-allowed;transform:none}.hidden{display:none!important}.loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:#667eea}.loading-spinner{border:4px solid #f3f3f3;border-top-color:#667eea;border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.instructions{background:#e8f4f8;border-left:4px solid #667eea;padding:20px;margin-bottom:20px;border-radius:10px}.instructions h3{color:#667eea;margin-bottom:10px}.instructions ol{padding-left:20px}.instructions li{margin-bottom:5px;color:#555}.quality-indicator{display:inline-block;padding:5px 10px;border-radius:15px;font-size:12px;font-weight:600;margin-left:10px}.quality-good{background:#d4edda;color:#155724}.quality-medium{background:#fff3cd;color:#856404}.quality-poor{background:#f8d7da;color:#721c24}@media (max-width:768px){.main-content{grid-template-columns:1fr}.controls-panel{order:-1}.comparison-container{grid-template-columns:1fr}}