.ai-upload-section{display:flex;flex-direction:row;align-items:flex-start;gap:20px;margin:20px 0;flex-wrap:wrap}.ai-upload-container{display:flex;flex-direction:column;gap:10px;flex:0 0 auto}.ai-upload-wrapper{position:relative;display:inline-block}.ai-upload-label{font-size:.875rem;font-weight:600;color:#333;margin-bottom:4px;display:block}@media (max-width: 640px){.ai-upload-section{flex-direction:column}.ai-upload-container{width:100%}}.ai-upload-button{width:150px;height:150px;border:2px dashed #ccc;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;transition:all .3s ease;padding:0;position:relative;overflow:hidden}.ai-upload-button:hover{border-color:#999;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.ai-upload-button.has-image{border-color:#9829ea;border-style:solid;padding:0}.ai-upload-button.has-image:hover{border-color:#9829ea}.ai-upload-button.validation-error{border-color:#f44336!important;border-style:solid!important;border-width:3px!important;animation:shake-error .5s ease-in-out}@keyframes shake-error{0%,to{transform:translate(0)}25%{transform:translate(-8px)}50%{transform:translate(8px)}75%{transform:translate(-8px)}}.ai-upload-icon{font-size:48px;font-weight:300;color:#666;line-height:1}.ai-upload-text{font-size:16px;font-weight:500;color:#666}.ai-upload-preview{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;display:none;z-index:1}.ai-upload-button.has-image .ai-upload-preview{display:block}.ai-upload-button.has-image .ai-upload-icon,.ai-upload-button.has-image .ai-upload-text{display:none;visibility:hidden;opacity:0}.ai-upload-remove{position:absolute;top:8px;right:8px;width:28px;height:28px;background:#000000b3;color:#fff;border:none;border-radius:50%;cursor:pointer;font-size:18px;line-height:1;display:none;align-items:center;justify-content:center;z-index:10;transition:all .2s}.ai-upload-remove:hover{background:#ff3b30e6;transform:scale(1.1)}.ai-upload-button.has-image .ai-upload-remove{display:flex}.ai-upload-status{font-size:14px;color:#666;min-height:20px}.ai-upload-status.success{color:#9829ea}.ai-upload-status.error{color:#f44336}.ai-upload-status.warning{color:#ff9800}.ai-upload-input{display:none}@media (max-width: 768px){.ai-upload-section{flex-direction:column;align-items:center}.ai-upload-button{width:120px;height:120px}.ai-upload-icon{font-size:36px}.ai-upload-text{font-size:14px}}.global-upload-modal-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:9999;justify-content:center;align-items:center}.global-upload-modal-overlay.active{display:flex}.global-upload-modal{background:#fff;border-radius:8px;width:90%;max-width:600px;max-height:90vh;padding:1rem;box-shadow:0 10px 40px #0003;display:flex;flex-direction:column;position:relative}.global-upload-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding-bottom:1rem;border-bottom:1px solid #eee}.global-upload-modal-title{font-size:1.4rem;font-weight:600;color:#333}.global-upload-modal-close{background:none;border:none;font-size:2.4rem;color:#666;cursor:pointer;line-height:1;padding:.5rem;transition:color .2s}.global-upload-modal-close:hover{color:#333}.global-upload-modal-content{flex-grow:1;overflow-y:auto;margin-bottom:.5rem}.global-upload-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;padding:2rem}.upload-preview-image{max-width:100%;max-height:400px;object-fit:contain;display:none;margin:0 auto}.upload-preview-file{display:none;align-items:center;padding:2rem;border:1px solid #eee;border-radius:8px;width:100%}.file-icon{font-size:3rem;margin-right:1.5rem}.file-info{flex-grow:1}.file-name{font-weight:500;margin-bottom:.5rem;word-break:break-all}.file-size{color:#666;font-size:1.2rem}.upload-info-notice{display:flex;align-items:center;gap:12px;margin-top:20px;padding:12px 16px;background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;max-width:100%;width:100%;box-sizing:border-box}.upload-info-notice svg{flex-shrink:0}.upload-info-notice span{color:#1e40af;font-size:14px;line-height:1.5;text-align:left}.upload-progress-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;padding:3rem 2rem;text-align:center}.progress-title{font-size:1.6rem;font-weight:600;margin-bottom:1rem;color:#333}.progress-bar-container{width:100%;max-width:400px;height:20px;background-color:#e9ecef;border-radius:50px;overflow:hidden;margin:0 auto 1rem;position:relative;box-shadow:inset 0 2px 5px #0000001a}#uploadProgressBar.progress-bar{display:block;height:100%;background:linear-gradient(90deg,#990de4,#983dee);width:1%;border-radius:50px;transition:width .3s ease;box-shadow:0 0 10px #990de480;position:relative;overflow:hidden}#uploadProgressBar.progress-bar:after{content:"";position:absolute;top:0;left:0;bottom:0;right:0;background-image:linear-gradient(-45deg,rgba(255,255,255,.2) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.2) 50%,rgba(255,255,255,.2) 75%,transparent 75%,transparent);background-size:30px 30px;animation:progressStripes 1s linear infinite}@keyframes progressStripes{0%{background-position:0 0}to{background-position:30px 30px}}#uploadProgressBar.progress-bar.complete{animation:progressPulse 1.5s infinite}@keyframes progressPulse{0%{box-shadow:0 0 #990de4b3}70%{box-shadow:0 0 0 15px #990de400}to{box-shadow:0 0 #990de400}}.progress-text{font-size:1.4rem;font-weight:700;color:#333;margin:20px 0;transition:color .3s}.progress-text.complete{color:#333}.image-selection-state{padding:1rem 2rem}.image-selection-state .upload-info-notice{margin-bottom:1.5rem;margin-top:0}.selection-title{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;text-align:center;color:#333}.image-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.6rem;margin:0 auto;max-width:600px}.image-option{display:flex;align-items:center;justify-content:center;position:relative;border:3px solid transparent;border-radius:8px;overflow:hidden;cursor:pointer;transition:all .3s ease;aspect-ratio:1;background-color:#f5f5f5}.image-option:hover{border-color:#0003}.image-option.selected{border-color:#000;box-shadow:0 4px 12px #0000004d}.image-option img{width:100%;height:100%;object-fit:contain;display:block}.image-option-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0000001a;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s}.image-option.selected .image-option-overlay{opacity:1}.checkmark{font-size:2rem;color:#fff;font-weight:700}.image-loading-spinner{width:60px;height:60px;border:6px solid #f0f0f0;border-top-color:#9829ea;border-radius:50%;animation:spin-center .8s linear infinite}@keyframes spin-center{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.image-option.failed{cursor:not-allowed;border-color:#fca5a5;background-color:#fef2f2}.image-option.failed:hover{border-color:#fca5a5}.image-failed-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.image-failed-state .failed-text{font-size:14px;font-weight:500;color:#ef4444}.global-upload-modal-buttons{display:flex;justify-content:flex-end;gap:1rem;padding-top:1rem;border-top:1px solid #eee}.global-upload-modal-cancel,.global-upload-modal-confirm{padding:.6rem 1.2rem;border-radius:4px;border:none;cursor:pointer;font-size:1.2rem;transition:all .3s ease}.global-upload-modal-cancel{background-color:#f5f5f5;color:#333}.global-upload-modal-cancel:hover{background-color:#e5e5e5}.global-upload-modal-confirm{background-color:#000;color:#fff}.global-upload-modal-confirm:hover{background-color:#333}.global-upload-modal-confirm:disabled{background-color:#ccc;cursor:not-allowed}@media (max-width: 600px){.image-grid{grid-template-columns:1fr;gap:1.2rem}.progress-title{font-size:1rem}.selection-title{font-size:1.3rem}}.cart-dual-images{display:flex;flex-direction:row;gap:6px;align-items:center;justify-content:center;width:100%;height:100%}.cart-dual-images__item{width:60px;height:60px;object-fit:cover;border-radius:4px;border:1px solid #e5e5e5;transition:transform .2s ease}.cart-dual-images__item:hover{transform:scale(1.05);border-color:#9829ea;box-shadow:0 2px 8px #9829ea33}.line-item__image-wrapper:has(.cart-dual-images){width:auto;min-width:130px}@media (max-width: 640px){.cart-dual-images__item{width:45px;height:45px}.line-item__image-wrapper:has(.cart-dual-images){min-width:100px}}.upload-error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center;min-height:300px}.upload-error-state .error-icon{font-size:4rem;margin-bottom:1.5rem;animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.upload-error-state .error-title{font-size:1.5rem;font-weight:600;color:#dc2626;margin-bottom:1rem}.upload-error-state .error-message{font-size:1rem;color:#4b5563;margin-bottom:1rem;line-height:1.6}.upload-error-state .error-details{font-size:.875rem;color:#9ca3af;padding:.75rem 1rem;background:#f3f4f6;border-radius:6px;border-left:3px solid #dc2626;margin-top:1rem;max-width:400px;text-align:left;font-family:monospace;word-break:break-word}@media (max-width: 640px){.upload-error-state{padding:2rem 1rem;min-height:250px}.upload-error-state .error-icon{font-size:3rem}.upload-error-state .error-title{font-size:1.3rem}.upload-error-state .error-message{font-size:.9rem;text-align:center}}.carousel-container{perspective:1000px;width:100%;height:200px;display:flex;align-items:center;justify-content:center;margin-bottom:2rem;position:relative}.carousel-group{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;gap:2rem;opacity:0;transition:opacity .5s ease-out;pointer-events:none}.carousel-group.active{opacity:1;pointer-events:all;animation:fadeIn .5s ease-out}.image-card{width:90px;height:132px;border-radius:4px;box-shadow:0 25px 50px -12px #00000080;border:3px solid #a78bfa;border-bottom-width:12px;background-color:#fff;overflow:hidden;transition:transform .3s ease}.image-card:hover{transform:translateY(-5px)}.image-card img{width:100%;height:100%;object-fit:cover}.animate-slide-in-left{animation:slideInLeft .8s ease-out forwards}.animate-slide-in-right{animation:slideInRight .8s ease-out .2s both}@keyframes slideInLeft{0%{opacity:0;transform:translate(12px) scale(.5) rotate(-16deg)}60%{transform:translate(12px) scale(1.2) rotate(-8deg)}to{opacity:1;transform:translate(20px) scale(1) rotate(-16deg)}}@keyframes slideInRight{0%{opacity:0;transform:translate(-12px) scale(.5) rotate(12deg)}60%{transform:translate(-12px) scale(1.2) rotate(12deg)}to{opacity:1;transform:translate(-20px) scale(1) rotate(12deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.carousel-container{height:180px}.carousel-group{gap:1.5rem}.image-card{width:80px;height:120px}}@media (max-width: 480px){.carousel-container{height:160px}.carousel-group{gap:1rem}.image-card{width:70px;height:105px}.upload-info-notice{padding:10px 12px;gap:10px;margin-top:16px}.image-selection-state .upload-info-notice{margin-top:0;margin-bottom:1rem}.upload-info-notice svg{width:18px;height:18px}.upload-info-notice span{font-size:13px}.image-selection-state{padding:1rem}@keyframes slideInLeft{0%{opacity:0;transform:translate(8px) scale(.5) rotate(-12deg)}60%{transform:translate(8px) scale(1.15) rotate(-6deg)}to{opacity:1;transform:translate(12px) scale(1) rotate(-12deg)}}@keyframes slideInRight{0%{opacity:0;transform:translate(-8px) scale(.5) rotate(12deg)}60%{transform:translate(-8px) scale(1.15) rotate(6deg)}to{opacity:1;transform:translate(-12px) scale(1) rotate(12deg)}}}
/*# sourceMappingURL=/cdn/shop/t/6/assets/imageUpload/image-uploader.css.map */
