:root{--bg-main:#0f111a;--bg-card:#1a1d2d;--primary:#6366f1;--primary-hover:#4f46e5;--secondary:#374151;--secondary-hover:#4b5563;--text-main:#f8fafc;--text-muted:#94a3b8;--border-color:#ffffff1a;--success:#10b981}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-main);color:var(--text-main);min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6;overflow-x:hidden}.app-container{z-index:1;flex-direction:column;min-height:100vh;display:flex;position:relative}.global-dropzone{outline:none}.global-drag-overlay{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:9999;color:var(--primary);border:4px dashed var(--primary);pointer-events:none;background:#0f111ae6;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.global-drag-overlay h2{color:#fff;margin-top:1rem;font-size:2rem}.animate-bounce{animation:1s infinite bounce}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}.bg-glow{z-index:-1;pointer-events:none;background:radial-gradient(circle at top,#6366f126 0%,#0f111a00 70%);width:100%;height:600px;position:absolute;top:0;left:50%;transform:translate(-50%)}header{justify-content:center;align-items:center;padding:2rem;display:flex}.logo-container{align-items:center;gap:1rem;transition:transform .3s;display:flex}.logo-container:hover{transform:scale(1.05)}.logo-img{object-fit:contain;height:50px}main{flex-direction:column;flex:1;gap:3rem;width:100%;max-width:1200px;margin:0 auto;padding:2rem;display:flex}h1{background:linear-gradient(135deg,#fff 0%,#a5b4fc 100%);-webkit-text-fill-color:transparent;letter-spacing:-.02em;-webkit-background-clip:text;margin-bottom:1rem;font-size:3.5rem;font-weight:800}.subtitle{color:var(--text-muted);max-width:600px;margin:0 auto;font-size:1.25rem}.upload-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:24px;padding:3rem;box-shadow:0 25px 50px -12px #00000040}.dropzone-area{border:2px dashed var(--border-color);text-align:center;cursor:pointer;background:#0003;border-radius:16px;padding:4rem 2rem;transition:all .3s}.dropzone-area:hover,.drag-active .dropzone-area{border-color:var(--primary);background:#6366f10d;transform:translateY(-2px)}.drop-icon{color:var(--primary);width:64px;height:64px;margin-bottom:1.5rem}.drop-title{margin-bottom:.5rem;font-size:1.5rem;font-weight:600}.drop-desc{color:var(--text-muted)}.result-area{flex-direction:column;gap:2rem;display:flex}.image-comparison{grid-template-columns:1fr 1fr;gap:2rem;display:grid}.image-box{border:1px solid var(--border-color);background:#0000004d;border-radius:16px;flex-direction:column;align-items:center;min-height:300px;padding:1rem;display:flex;position:relative}.image-label{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10;background:#0009;border-radius:999px;padding:.25rem .75rem;font-size:.875rem;font-weight:500;position:absolute;top:1rem;left:1rem}.checkerboard{background-image:linear-gradient(45deg,#2a2d3e 25%,#0000 25%),linear-gradient(-45deg,#2a2d3e 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#2a2d3e 75%),linear-gradient(-45deg,#0000 75%,#2a2d3e 75%);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px}.processed-image-container{border-radius:8px;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.preview-img{object-fit:contain;border-radius:8px;max-width:100%;max-height:400px;transition:transform .3s}.image-overlay-tools{opacity:0;background:#00000080;justify-content:center;align-items:center;gap:1rem;width:100%;height:100%;transition:opacity .3s;display:flex;position:absolute;top:0;left:0}.group:hover .image-overlay-tools{opacity:1}.tool-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:all .2s;display:flex;box-shadow:0 4px 6px #0000004d}.tool-btn:hover{background:var(--primary-hover);transform:scale(1.1)}.history-section{background:var(--bg-card);border:1px solid var(--border-color);border-radius:24px;padding:2rem}.history-title{color:var(--text-muted);margin-bottom:1.5rem;font-size:1.25rem}.history-gallery{gap:1rem;padding-bottom:1rem;display:flex;overflow-x:auto}.history-item{cursor:pointer;border:2px solid #0000;border-radius:12px;width:100px;min-width:100px;height:100px;transition:border-color .2s;position:relative}.history-item:hover{border-color:var(--primary)}.history-thumb{border-radius:10px;justify-content:center;align-items:center;width:100%;height:100%;display:flex;overflow:hidden}.history-thumb img{object-fit:contain;max-width:100%;max-height:100%}.delete-history-btn{color:#fff;cursor:pointer;opacity:0;background:#ef4444;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;transition:opacity .2s;display:flex;position:absolute;top:-5px;right:-5px}.history-item:hover .delete-history-btn{opacity:1}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#000000d9;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-card);border:1px solid var(--border-color);border-radius:24px;flex-direction:column;display:flex;position:relative;box-shadow:0 25px 50px -12px #00000080}.fullscreen-modal{width:100%;max-width:1000px;height:80vh;padding:2rem}.fullscreen-preview{width:auto;max-width:90vw;max-height:90vh;box-shadow:none;background:0 0;border:none;padding:1rem}.preview-container{border-radius:12px;justify-content:center;align-items:center;padding:2rem;display:flex;overflow:hidden;box-shadow:0 0 40px #00000080}.full-img{object-fit:contain;max-width:100%;max-height:70vh}.preview-actions{justify-content:center;margin-top:1.5rem;display:flex}.modal-header-actions{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.icon-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;transition:color .3s}.icon-btn:hover{color:#fff}.close-btn{z-index:10;position:absolute;top:1.5rem;right:1.5rem}.fullscreen-preview .close-btn{color:#fff;top:-2rem;right:-2rem}.eraser-toolbar{background:#0000004d;border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:1rem;display:flex}.brush-size-control{align-items:center;gap:1rem;display:flex}.eraser-actions{gap:1rem;display:flex}.eraser-canvas-container{background:#000;border-radius:12px;flex:1;justify-content:center;align-items:center;min-height:400px;display:flex;position:relative;overflow:hidden}.canvas-wrapper{max-width:100%;max-height:100%;display:inline-block;position:relative}.eraser-canvas{cursor:crosshair;touch-action:none;max-width:100%;max-height:100%}.helper-text{text-align:center;color:var(--text-muted);margin-top:1rem;font-size:.9rem}.loading-container{flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;height:100%;display:flex}.spinner{border:4px solid #6366f11a;border-left-color:var(--primary);border-radius:50%;width:48px;height:48px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.progress-bar-container{background:#ffffff1a;border-radius:999px;width:80%;height:6px;overflow:hidden}.progress-bar{background:var(--primary);height:100%;transition:width .3s}.actions{justify-content:center;gap:1rem;margin-top:1rem;display:flex}.btn{cursor:pointer;border:none;border-radius:12px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s;display:flex}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover);transform:translateY(-2px)}.btn-secondary{background:var(--secondary);color:#fff}.btn-secondary:hover{background:var(--secondary-hover)}footer{text-align:center;color:var(--text-muted);flex-direction:column;gap:.5rem;padding:2rem;display:flex}footer a{color:var(--primary);text-decoration:none;transition:color .2s}footer a:hover{color:var(--primary-hover)}@media (width<=768px){h1{font-size:2.5rem}.image-comparison{grid-template-columns:1fr}.upload-card{padding:1.5rem}.eraser-toolbar{flex-direction:column;gap:1rem}}
