body,html,#app{height:100%;margin:0;padding:0;overflow:hidden}.canvas-container{display:flex;justify-content:center;align-items:center;position:relative;width:100%;height:100%;display:block}.bg{background-color:#fff;background-image:linear-gradient(45deg,#f3f3f3 25%,transparent 25%,transparent 75%,#f3f3f3 75%,#f3f3f3),linear-gradient(45deg,#f3f3f3 25%,#fff 25%,#fff 75%,#f3f3f3 75%,#f3f3f3);background-size:20px 20px;background-position:0 0,10px 10px;transition:all .5s ease}.bg.dark{background-color:#313131;background-image:linear-gradient(45deg,#333333 25%,transparent 25%,transparent 75%,#333333 75%,#333333),linear-gradient(45deg,#333 25%,#313131 25%,#313131 75%,#333 75%,#333);background-size:20px 20px;background-position:0 0,10px 10px}.drag-over{background-image:linear-gradient(45deg,#333333 25%,transparent 25%,transparent 75%,#333333 75%,#333333),linear-gradient(45deg,#333 25%,#313131 25%,#313131 75%,#333 75%,#333);transition:all .5s ease}canvas{height:100vh}.title{position:fixed;top:3%;left:50%;width:80%;transform:translate(-50%);text-align:center;color:#c83c5a;font-size:92px;font-weight:900;font-style:normal;margin:10px;line-height:1em!important;padding:0}.upload-button{background-color:#ff568a;border-width:0px;border-radius:50%;position:absolute;top:40%;left:50%;transform:translate(-50%,-60%);z-index:10;width:200px;height:200px;display:flex;justify-content:center;align-items:center;transition:all .5s ease}.upload-button:hover{cursor:pointer}.upload-container{width:100px;height:100px}.bottom-svg{width:100%;position:absolute;bottom:-20px;left:50%;transform:translate(-50%);z-index:10}.placeholder{height:300px;background-color:#009aff}.demo{margin-top:-10px;padding:20px;height:200px;background-color:#009aff;text-align:center;color:#fff;font-size:20px}.favicon:hover{cursor:pointer}.demoimg{width:80px;height:80px;border-radius:50%;margin:12px}.demoimg:hover{cursor:pointer}.description{display:inline-block;color:#fff;min-width:60px}select{width:150px;background-color:#1d1d1d;color:#fff;font-size:16px;border:none;border-radius:5px;padding:5px;margin:3px}.run-button{width:40px;height:40px;background-color:#1d90ee;border:none;border-radius:25px;padding:5px;margin:5px -20px 5px 20px;display:inline-block}.question-button{width:40px;height:40px;background-color:#1d1d1d;border:none;border-radius:25px;padding:5px;margin:5px -20px 40px 20px;display:inline-block}.question-button:hover,.run-button:hover{cursor:pointer}.save-button{width:40px;height:40px;background-color:#9dca5a;border:none;border-radius:25px;padding:5px;display:inline-block;margin:5px 5px 5px 20px}.save-button:hover{cursor:pointer}.goback{position:absolute;top:10px;left:10px;width:40px;height:40px;display:flex;justify-content:center;align-items:center;z-index:10;background-color:#d21d5a;border:none;border-radius:20px;padding:5px;margin:5px}.goback:hover{cursor:pointer}.github{position:absolute;top:10px;right:10px;width:40px;height:40px;display:flex;justify-content:center;align-items:center;z-index:10;border:none;border-radius:10px;-webkit-user-select:none;user-select:none}.github:hover{cursor:pointer}.floating-menu{position:absolute;background-color:#1d1d1d;border-radius:20px;color:#fff;max-width:100%;width:320px;height:200px;max-width:80%;padding:20px;bottom:25px;left:50%;transform:translate(-50%);z-index:10;display:flex;justify-content:center;align-items:center;transition:all .5s ease;-webkit-user-select:none;user-select:none}.dragLine{position:fixed;top:0;bottom:0;left:50%;width:9px;transform:translate(-100%);background-color:#0009;display:flex;justify-content:center;align-items:center}.dragLine:hover{cursor:ew-resize}.dragBall{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:56px;height:56px;background-color:#000000e6;border-radius:50%;display:flex;justify-content:center;align-items:center}@media (max-width: 768px){.upload-button{background-color:#ff568a;border-width:0px;border-radius:50%;position:absolute;top:55%;left:50%;transform:translate(-50%,-60%);z-index:10;width:200px;height:200px;display:flex;justify-content:center;align-items:center;transition:all .5s ease}.title{position:fixed;top:3%;left:50%;width:80%;transform:translate(-50%);text-align:center;color:#c83c5a;font-size:62px;font-weight:900;font-style:normal;margin:10px;line-height:1em!important;padding:0}.batch-header{display:none!important}.batch-header,.batch-options{flex-direction:column;align-items:anchor-center;padding:26px!important;margin-bottom:8px}.batch-options{background:#000c;padding:20px;border-radius:12px;margin-bottom:24px}}@media (max-width: 700px){.floating-menu{width:95vw;min-width:0;max-width:98vw;left:50%!important;padding:10px}}@media (max-width: 700px){.github{width:32px;height:32px;top:16px!important;left:90%!important;right:6px}}@media (max-width: 768px){html,body,#app{height:100vh!important;min-height:100vh!important;max-height:100vh!important;overflow:hidden!important;position:relative!important}.batch-header,.batch-options,.batch-grid,.batch-container{display:none!important}.batch-header-mobile,.batch-options-mobile,.batch-grid-mobile,.batch-container-mobile{display:block!important;width:100vw!important;max-width:100vw!important}.batch-header-mobile{background:#181818;padding:16px 0 8px;text-align:center;border-bottom:1px solid #222;position:sticky!important;top:0;z-index:10!important}.batch-header-mobile h2{font-size:1.1em;color:#fff;margin-bottom:10px;font-weight:700}.batch-stats-mobile{display:flex;justify-content:space-around;margin-bottom:10px;gap:4px}.stat-item-mobile{background:#232323;border-radius:8px;padding:8px 0;flex:1 1 0;margin:0 2px}.stat-value{font-size:1.1em;color:#fff;font-weight:600;display:block}.stat-label{font-size:.8em;color:#aaa;display:block}.header-actions-mobile{display:flex;gap:8px;margin:8px 0 0;justify-content:center}.action-button-mobile{flex:1 1 0;padding:10px 0;border:none;border-radius:6px;font-size:1em;font-weight:600;background:#232323;color:#fff;transition:background .2s}.action-button-mobile.primary{background:#4caf50;color:#fff}.action-button-mobile.secondary{background:#232323;color:#fff}.action-button-mobile:disabled{opacity:.5;cursor:not-allowed}.batch-options-mobile{background:#181818;padding:12px 0 8px;border-bottom:1px solid #222}.options-header-mobile{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:10px}.options-header-mobile h3{color:#fff;font-size:1em;margin:0;font-weight:700}.start-button-mobile{padding:10px 0;width:100%;border:none;border-radius:6px;background:#2196f3;color:#fff;font-size:1em;font-weight:600;margin-top:4px}.start-button-mobile:disabled{opacity:.5;cursor:not-allowed}.options-grid-mobile{display:flex;flex-direction:column;gap:10px;width:100%;margin-top:8px}.option-group-mobile{background:#232323;border-radius:8px;padding:8px 10px}.option-group-mobile label{color:#b0b0b0;font-size:.95em;margin-bottom:2px;display:block}.styled-select-mobile,.option-group-mobile select{width:100%;padding:8px 6px;font-size:1em;border-radius:6px;background:#181818;color:#fff;border:1px solid #333;margin-top:2px}.batch-grid-mobile{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px 4px 60px;background:#181818;min-height:40vh}.batch-item-mobile{background:#232323;border-radius:10px;overflow:hidden;position:relative;min-height:120px;display:flex;flex-direction:column;justify-content:flex-end}.image-container-mobile{width:100%;aspect-ratio:1/1;background:#111;position:relative;display:flex;align-items:center;justify-content:center}.preview-image-mobile{width:100%;height:100%;object-fit:cover;display:block}.preview-placeholder-mobile{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#222}.loading-spinner-mobile{width:24px;height:24px;border:3px solid #444;border-radius:50%;border-top-color:#fff;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.status-overlay-mobile{position:absolute;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:2}.status-content-mobile{text-align:center;color:#fff;font-size:.95em;width:100%}.progress-container-mobile{margin-bottom:4px}.progress-text-mobile{font-size:1.2em;font-weight:700}.status-text-mobile{display:block;margin:4px 0;text-transform:capitalize}.error-message-mobile{color:#f44336;font-size:.9em}.status-actions-mobile{display:flex;gap:6px;margin-top:6px;justify-content:center}.action-button-mobile.small{padding:6px 10px;font-size:.95em;border-radius:6px;background:#2196f3;color:#fff;border:none;font-weight:600}.action-button-mobile.small.download-overlay-btn-mobile{background:#4caf50}.action-button-mobile.small.compare-btn-mobile{background:#ff568a}.item-info-mobile{padding:4px 8px}.item-actions-mobile{display:flex;gap:6px;justify-content:flex-end}}@media (max-width: 768px){html,body,#app{height:100vh!important;min-height:100vh!important;max-height:100vh!important;overflow:hidden!important}.batch-container-mobile{height:100vh!important;max-height:100vh!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;background:#181818;display:flex;flex-direction:column;position:relative!important}}@media (max-width: 768px){.batch-grid-mobile{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;padding:12px 4px 60px!important;background:#181818!important;min-height:40vh!important;width:100%!important;box-sizing:border-box!important}}html,body,#app{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.batch-controls{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:#000c;padding:15px;border-radius:8px;color:#fff;max-width:80%;max-height:300px;overflow-y:auto}.batch-queue{margin-bottom:10px}.queue-item{display:flex;align-items:center;margin:5px 0;padding:5px;background:#ffffff1a;border-radius:4px}.queue-item .filename{flex:1;margin-right:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.queue-item .status{margin:0 10px;padding:2px 6px;border-radius:3px;font-size:.9em}.queue-item .status.pending{background:#666}.queue-item .status.processing{background:#2196f3}.queue-item .status.done{background:#4caf50}.queue-item .status.error{background:#f44336}.batch-actions{display:flex;gap:10px;justify-content:center}.batch-actions button{padding:8px 16px;border:none;border-radius:4px;background:#2196f3;color:#fff;cursor:pointer}.batch-actions button:disabled{background:#666;cursor:not-allowed}.batch-actions button:hover:not(:disabled){background:#1976d2}.batch-options{background:#000000e6;padding:15px;border-radius:8px;margin-bottom:20px;color:#fff}.batch-options .opt{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.batch-options .description{display:block;margin-bottom:5px;color:#ccc}.batch-options select{width:100%;padding:8px;border-radius:4px;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.batch-options select:focus{outline:none;border-color:#2196f3}.batch-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.batch-stats{display:flex;gap:10px}.batch-item{position:relative;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;background:#000c;border-radius:12px;overflow:hidden;min-height:220px;aspect-ratio:1/1;padding:0}.image-container{position:relative;aspect-ratio:1;overflow:hidden}.preview-image{width:100%;height:100%;object-fit:cover;filter:blur(3px);transform:scale(1.1)}.status-overlay{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;transition:background-color .3s ease;z-index:3}.status-overlay.processing{background:#2196f3b3}.status-overlay.done{background:#4caf50b3}.status-overlay.error{background:#f44336b3}.status-overlay.pending{background:#9e9e9eb3}.status-content{text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;padding:16px}.status-text{text-transform:capitalize;margin-top:5px;color:#fff;font-size:1.2em;font-weight:500}.status-actions{display:flex;gap:8px;margin-top:8px}.action-button.small{padding:8px 16px;font-size:.9em;min-width:100px;display:flex;align-items:center;justify-content:center;gap:6px}.action-button.small.download-overlay-btn{background:#fff;color:#222;font-weight:500;border-radius:6px;box-shadow:0 2px 8px #00000014;transition:all .2s ease}.action-button.small.download-overlay-btn:hover{background:#e0e0e0;transform:translateY(-1px)}.action-button.small.compare-btn{background:#2196f3;color:#fff;border:none;border-radius:6px;box-shadow:0 2px 8px #00000014;transition:all .2s ease}.action-button.small.compare-btn:hover{background:#1976d2;transform:translateY(-1px)}.action-button.small.compare-btn:disabled{background:#666;cursor:not-allowed;transform:none}.progress-container{display:flex;flex-direction:column;align-items:center;gap:8px}.progress-text{font-size:2.5em;font-weight:700;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.2)}.error-message{color:#f44336}.download-button,.retry-button{padding:8px 16px;border:none;border-radius:4px;background:#2196f3;color:#fff;cursor:pointer}.download-button:hover,.retry-button:hover{background:#1976d2}.batch-start{margin-top:20px;text-align:center}.start-button{padding:12px 24px;font-size:1.1em;background:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background .3s}.start-button:hover:not(:disabled){background:#388e3c}.batch-container{max-width:1200px;margin:0 auto;padding:20px}.batch-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;background:#000c;padding:20px;border-radius:12px}.header-left{display:flex;align-items:center;gap:24px}.header-left h2{margin:0;font-size:1.5em;color:#fff}.batch-stats{display:flex;gap:16px}.stat-item{display:flex;flex-direction:column;align-items:center;padding:8px 16px;background:#ffffff1a;border-radius:8px}.stat-value{font-size:1.2em;font-weight:700;color:#fff}.stat-label{font-size:.8em;color:#ffffffb3}.header-actions{display:flex;gap:12px}.action-button{display:flex;align-items:center;gap:8px;padding:10px 16px;border:none;border-radius:6px;font-size:.9em;cursor:pointer;transition:all .3s ease}.action-button.primary{background:#4caf50;color:#fff}.action-button.secondary{background:#ffffff1a;color:#fff}.action-button:disabled{opacity:.5;cursor:not-allowed}.action-button:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 2px 8px #0003}.batch-options{background:#000c;padding:20px;border-radius:12px;margin-bottom:24px}.options-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.options-header h3{margin:0;color:#fff;font-size:1.2em}.options-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.option-group{display:flex;flex-direction:column;gap:8px}.option-group label{color:#ffffffb3;font-size:.9em}.styled-select{padding:8px 12px;border-radius:6px;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.styled-select:focus{outline:none;border-color:#4caf50}.start-button{display:flex;align-items:center;gap:8px;padding:12px 24px;background:#4caf50;color:#fff;border:none;border-radius:6px;font-size:1em;cursor:pointer;transition:all .3s ease}.start-button:disabled{background:#666;cursor:not-allowed}.start-button:not(:disabled):hover{background:#388e3c;transform:translateY(-1px)}.batch-grid{max-height:60vh;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}.batch-item{background:#000c;border-radius:12px;overflow:hidden;transition:transform .3s ease}.batch-item:hover{transform:translateY(-2px)}.item-info{padding:0;display:flex;flex-direction:column;gap:8px}.filename{color:#fff;font-size:.9em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-actions{display:flex;gap:8px}.hero{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;padding-top:60px}.hero-title{font-size:2.5em;font-weight:800;color:#4caf50;margin-bottom:10px;text-align:center}.hero-subtitle{font-size:1.2em;color:#333;margin-bottom:32px;text-align:center}.upload-button{display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#ff568a;border:none;border-radius:50%;width:120px;height:120px;margin-bottom:24px;transition:background .3s}.upload-button:hover{background-color:#d21d5a}.upload-container{width:48px;height:48px}.upload-text{margin-top:12px;color:#fff;font-size:1em;font-weight:500}.demo-section{margin-top:32px;text-align:center}.demo-title{color:#888;font-size:1em;margin-bottom:8px}.demo-images{display:flex;gap:16px;justify-content:center}.demoimg{width:64px;height:64px;border-radius:12px;box-shadow:0 2px 8px #00000014;cursor:pointer;transition:transform .2s,box-shadow .2s}.demoimg:hover{transform:scale(1.08);box-shadow:0 4px 16px #4caf5026}@media (max-width: 700px){.hero{min-height:30vh;padding-top:16px;padding-bottom:16px}.hero-title{font-size:1.1em;margin-bottom:6px}.hero-subtitle{font-size:.95em;margin-bottom:12px;padding:0 8px}.upload-button{width:64px;height:64px;margin-bottom:12px}.upload-container{width:24px;height:24px}.upload-text{font-size:.85em;margin-top:8px}.demo-section{margin-top:12px}.demo-title{font-size:.9em;margin-bottom:4px}.demoimg{width:32px;height:32px;border-radius:6px}.batch-header,.batch-options{flex-direction:column;align-items:stretch;padding:6px;margin-bottom:8px}.batch-header h2{font-size:1em;margin-bottom:4px}.batch-stats{gap:4px;font-size:.85em}.batch-actions{flex-direction:column;gap:6px;margin-top:6px}.batch-options .options-header{flex-direction:column;gap:6px;margin-bottom:8px}.options-grid{grid-template-columns:1fr;gap:8px}.option-group label{font-size:.85em}.styled-select{font-size:.9em;padding:6px 8px}.start-button{padding:8px 12px;font-size:.95em}.batch-grid{grid-template-columns:1fr;gap:8px}.batch-item{border-radius:6px;margin-bottom:4px}.image-container{aspect-ratio:1;min-width:0;min-height:0;max-width:100%}.item-info{padding:6px;gap:2px}.filename{font-size:.75em;word-break:break-all}.item-actions{gap:4px}.action-button,.action-button.small{padding:5px 8px;font-size:.75em}.progress-ring{width:24px;height:24px}.status-content{font-size:.8em}.floating-menu{width:95vw;min-width:0;max-width:98vw;left:2.5vw;padding:10px}.goback,.github{width:32px;height:32px;top:6px;left:6px;right:6px}.dragLine{width:6px}}.image-dark-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#00000040;z-index:2;pointer-events:none;border-radius:inherit}.download-overlay-btn{margin-top:8px;background:#fff;color:#222;font-weight:500;border-radius:6px;box-shadow:0 2px 8px #00000014;transition:background .2s}.download-overlay-btn:hover{background:#e0e0e0}.compare-btn{background:#2196f3;color:#fff;border:none;border-radius:4px;padding:6px 12px;cursor:pointer;transition:background .3s}.compare-btn:hover{background:#1976d2}.compare-btn:disabled{background:#666;cursor:not-allowed}@media (max-width: 700px){.drag-content{padding:1.5rem}.drag-icon{width:48px;height:48px}.drag-text{font-size:1.2rem}}.canvas-container.drag-over{border:2px solid #4CAF50;transition:all .2s ease}.upload-button{transition:all .3s ease}.preview-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#0000001a}.loading-spinner{width:24px;height:24px;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.canvas-container{padding:10px}.title{font-size:1.2em;padding:10px}.app-logo{width:32px;height:32px}.upload-button{width:80px;height:80px}.upload-container{width:32px;height:32px}.floating-menu{position:fixed;bottom:0;left:0;right:0;width:100%;padding:15px;background:#000000e6;border-radius:12px 12px 0 0;transform:translateY(0);transition:transform .3s ease}.floating-menu .opt{display:grid;grid-template-columns:1fr;gap:10px}.floating-menu select{width:100%;padding:8px;font-size:14px}.goback,.github{width:32px;height:32px;top:10px}.goback{left:10px}.github{right:10px}.dragLine{width:4px}.dragBall{width:24px;height:24px}.batch-container{padding:10px}.batch-header{flex-direction:column;gap:10px;padding:10px}.header-left{flex-direction:column;align-items:center;gap:10px}.batch-stats{width:100%;justify-content:space-between}.stat-item{padding:5px 10px}.header-actions{width:100%;flex-direction:column;gap:8px}.action-button{width:100%;justify-content:center}.batch-options{padding:10px}.options-header{flex-direction:column;gap:10px}.options-grid,.batch-grid{grid-template-columns:1fr;gap:10px}.batch-item{min-height:180px}.status-content{padding:10px}.status-actions{flex-direction:column;width:100%}.action-button.small{width:100%}.demo{padding:10px}.demoimg{width:48px;height:48px}.upload-button,.action-button,.process-button,.download-button,select{min-height:44px}.batch-grid{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.preview-image{will-change:transform;transform:translateZ(0)}}@media (max-width: 360px){.title{font-size:1em}.upload-button{width:64px;height:64px}.upload-container{width:24px;height:24px}.batch-stats{font-size:.9em}.stat-item{padding:4px 8px}}
