@import "https://fonts.googleapis.com/css2?family=Lato:wght@300;400&display=swap";
*{box-sizing:border-box;margin:0;padding:0}body{color:#2c3e50;background:#f8f9fa;min-height:100vh;font-family:Lato,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-weight:300}input,button,select,textarea,p,span,li,a,label,small,div{font-family:Lato,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-weight:300}h1,h2,h3,h4,h5,h6{font-family:Lato,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-weight:400}.app-container{background:#fff;border-radius:12px;flex-direction:column;max-width:1400px;height:100vh;margin:0 auto;display:flex;overflow:hidden;box-shadow:0 2px 20px rgba(0,0,0,.05)}.header{color:#2c3e50;background:#fff;border-bottom:1px solid #e9ecef;padding:1.5rem 2rem}.header .section-title{color:#2c3e50;border-bottom:1px solid #e9ecef;align-items:center;gap:.5rem;margin:1rem 0 .5rem;padding-bottom:.5rem;font-size:1.1rem;font-weight:500;display:flex}.carousel-arrow{color:#2c3e50;cursor:pointer;z-index:1;background:rgba(255,255,255,.9);border:1px solid #dee2e6;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 6px rgba(0,0,0,.08)}.carousel-arrow:disabled{opacity:.4;cursor:not-allowed}.set-carousel{scrollbar-width:none;-ms-overflow-style:none}.set-carousel::-webkit-scrollbar{display:none}.header h1{align-items:center;gap:.5rem;font-size:1.8rem;font-weight:400;display:flex}.header-logo{justify-content:center;align-items:center;display:flex}.logo-image{object-fit:contain;width:auto;max-height:60px}.main-content{flex:1;margin-top:16px;display:flex;overflow:hidden}.controls-panel{background:#fff;border-right:1px solid #e9ecef;flex-direction:column;gap:2rem;width:350px;padding:2rem;display:flex;overflow-y:auto}.controls-panel h3{color:#2c3e50;border-bottom:1px solid #e9ecef;align-items:center;gap:.5rem;margin-bottom:1rem;padding-bottom:.5rem;font-size:1.1rem;font-weight:500;display:flex}.controls-panel h3 i{color:#6c757d}.user-info{flex-direction:column;gap:1rem;display:flex}.input-group{flex-direction:column;gap:.5rem;display:flex}.input-group label{color:#2c3e50;font-size:.9rem;font-weight:500}.input-group input{background:#fff;border:1px solid #e9ecef;border-radius:6px;padding:.75rem;font-size:1rem;transition:all .2s}.input-group input:focus{border-color:#6c757d;outline:none;box-shadow:0 0 0 2px rgba(108,117,125,.1)}.upload-section{flex-direction:column;gap:1rem;display:flex}.upload-area{text-align:center;cursor:pointer;background:#f8f9fa;border:2px dashed #6c757d;border-radius:8px;padding:1rem;transition:all .2s}.upload-area:hover,.upload-area.dragover{background:#e9ecef;border-color:#495057}.upload-content{align-items:center;gap:.75rem;display:inline-flex}.upload-content i{color:#6c757d;margin:0;font-size:1.6rem;display:inline-block}.upload-content p{color:#2c3e50;margin:0;font-size:1rem;font-weight:500}.image-controls{flex-direction:column;gap:1.5rem;display:flex}.control-group{flex-direction:column;gap:.5rem;display:flex}.control-group label{color:#2c3e50;font-size:.9rem;font-weight:500}.slider-container{align-items:center;gap:1rem;display:flex}.slider-container input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:0 0;border:none;outline:none;flex:1;height:6px;padding:0}.slider-container input[type=range]::-webkit-slider-runnable-track{background:#e9ecef;border-radius:3px;height:6px}.slider-container input[type=range]::-moz-range-track{background:#e9ecef;border-radius:3px;height:6px}.slider-container input[type=range]::-ms-track{color:transparent;background:0 0;border-color:transparent;height:6px}.slider-container input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background:#6c757d;border-radius:50%;width:16px;height:16px;margin-top:-5px;transition:all .2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}.slider-container input[type=range]::-webkit-slider-thumb:hover{background:#495057;transform:scale(1.1)}.slider-container input[type=range]::-moz-range-thumb{cursor:pointer;background:#6c757d;border:none;border-radius:50%;width:16px;height:16px;box-shadow:0 1px 3px rgba(0,0,0,.2)}.slider-container span{color:#6c757d;text-align:right;min-width:50px;font-size:.9rem;font-weight:500}.button-group{gap:.5rem;display:flex}.btn{cursor:pointer;background:#fff;border:1px solid #e9ecef;border-radius:6px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.1)}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.btn-primary{color:#fff;background:#2c3e50;border-color:#2c3e50}.btn-primary:hover{background:#34495e;border-color:#34495e}.btn-secondary{color:#fff;background:#6c757d;border-color:#6c757d}.btn-secondary:hover{background:#495057;border-color:#495057}.btn-warning{color:#fff;background:#dc3545;border-color:#dc3545}.btn-warning:hover{background:#c82333;border-color:#c82333}.save-section{border-top:1px solid #e9ecef;margin-top:auto;padding-top:2rem}.save-section .btn{justify-content:center;width:100%;padding:1rem;font-size:1rem}.canvas-area{background:#fff;flex-direction:column;flex:1;display:flex;position:relative}.canvas-container{background:#f8f9fa;flex:1;justify-content:center;align-items:center;padding:2rem;display:flex;position:relative;overflow:hidden}.canvas-inner{justify-content:center;align-items:center;width:100%;height:100%;transition:transform .22s,opacity .22s;display:flex}.canvas-inner.bg-switch-out{opacity:0;transform:translateY(-10px)}.canvas-inner.bg-switch-pre-in{opacity:0;transform:translateY(10px)}.canvas-inner.bg-switch-in{opacity:1;transform:translateY(0)}.canvas-container canvas{cursor:move;background:#fff;max-width:100%;max-height:100%}.canvas-overlay{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.instructions{text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,.95);border-radius:12px;padding:2rem;box-shadow:0 4px 20px rgba(0,0,0,.1)}.instructions i{color:#667eea;margin-bottom:1rem;font-size:2rem;display:block}.instructions p{color:#495057;font-size:1.1rem;font-weight:500}@media (max-width:768px){.main-content{padding-left:22px;padding-right:22px}.canvas-area{margin-top:32px;margin-bottom:32px}.app-container{height:auto;min-height:100vh;overflow:visible}.main-content{flex-direction:column;display:flex;overflow:visible}.controls-panel,.panel-switcher,.manipulation-panel{display:contents}.color-selector{width:calc(100% - 16px);box-shadow:none;border-radius:10px;order:1;margin:0 8px 8px;padding:10px}.upload-section{width:calc(100% - 16px);box-shadow:none;border-radius:10px;order:2;margin:0 8px 8px;padding:10px}.canvas-area{flex:none;order:3;width:100%;min-height:30vh}.user-info{width:calc(100% - 16px);box-shadow:none;border-radius:10px;order:4;margin:0 8px 8px;padding:10px}.header{padding:8px}.header h1{font-size:1.2rem}.logo-image{max-height:40px}.header .section-title{margin:.5rem 0 .25rem;padding-bottom:.25rem;font-size:.95rem}.canvas-container{min-height:30vh;padding:8px}.carousel-item{width:calc(50% - 8px)!important}.carousel-item img{aspect-ratio:8/5}.carousel-item div{margin-top:4px;font-size:11px}.set-carousel-wrap{box-shadow:none;border-radius:10px;margin:0 8px 8px;padding:10px}.set-carousel{width:100%;margin:0}h3{margin-bottom:.5rem;font-size:.95rem}.input-group{gap:.5rem}.input-group input{padding:.5rem;font-size:.9rem}.input-group label{font-size:.85rem}.upload-area{padding:.5rem}.upload-content i{font-size:1.2rem}.upload-content p{font-size:.9rem}.btn{padding:.5rem 1rem;font-size:.85rem}.control-group{gap:.5rem}.image-controls{gap:1rem}.color-selector,.upload-section,.user-info{gap:.5rem}.upload-section h3,.color-selector h3{margin-bottom:.25rem}.color-selector>div{margin-top:.25rem}.panel.is-hidden-up{opacity:1;pointer-events:auto;visibility:visible;max-height:none;overflow:visible;transform:translateY(0)}.panel-toggle-btn{display:none!important}}@media (max-width:480px){.button-group{flex-direction:column}.slider-container{flex-direction:column;align-items:stretch;gap:.5rem}.slider-container span{text-align:center}}.fa-spin,.fa-spinner,.fa-spinner:before{animation:none!important;transform:none!important}.image-preview{cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none;border:2px solid #667eea;border-radius:4px;transition:opacity .3s;position:absolute}.image-preview:hover{opacity:.9}.image-preview.selected{border-color:#4facfe;box-shadow:0 0 0 2px rgba(79,172,254,.3)}.resize-handle{cursor:pointer;background:#667eea;border:2px solid #fff;border-radius:50%;width:8px;height:8px;position:absolute}.resize-handle.nw{cursor:nw-resize;top:-4px;left:-4px}.resize-handle.ne{cursor:ne-resize;top:-4px;right:-4px}.resize-handle.sw{cursor:sw-resize;bottom:-4px;left:-4px}.resize-handle.se{cursor:se-resize;bottom:-4px;right:-4px}.status-message{border-radius:6px;margin:1rem 0;padding:1rem;font-weight:500}.status-message.success{color:#155724;background:#d4edda;border:1px solid #c3e6cb}.status-message.error{color:#721c24;background:#f8d7da;border:1px solid #f5c6cb}.status-message.loading{color:#0c5460;background:#d1ecf1;border:1px solid #bee5eb}.loading-bar-container{flex-direction:column;align-items:center;gap:.5rem;display:flex}.loading-bar{background:rgba(255,255,255,.3);border-radius:2px;width:100%;height:4px;position:relative;overflow:hidden}.loading-bar-fill{background:#0c5460;border-radius:2px;width:100%;height:100%}.color-selector,.upload-section,.user-info,.set-carousel-wrap{background:linear-gradient(#f7f7f7,#f3f3f3);border-radius:20px;padding:22px;transition:all .2s;box-shadow:0 1px rgba(0,0,0,.19),0 2px 8px rgba(0,0,0,.15)}.header{background:0 0;border-bottom:none;padding-left:22px;padding-right:22px}.app-container{box-shadow:none;background:0 0}.controls-panel{background:0 0;border:0;padding:0 22px 22px}.upload-area{border:2px dashed #d4d4d4}.upload-spinner{border:4px solid #d4d4d4;border-top-color:#666;border-radius:50%;width:40px;height:40px;animation:.8s linear infinite upload-spin}@keyframes upload-spin{to{transform:rotate(360deg)}}.carousel-arrow.right{right:6px}.carousel-arrow.left{left:6px}.set-carousel{width:calc(100% - 52px);margin:auto}body{background:linear-gradient(#fbfbfb,#efefef)}.canvas-container,.canvas-area{padding-top:0;background:0 0!important}.canvas-container canvas{border-radius:30px;box-shadow:0 4px 8px rgba(0,0,0,.125)}label[for=menuHolders]{margin:16px 0 6px}input#menuHolders{margin-top:6px}.set-carousel>button{box-shadow:inset 0 1px 2px rgba(255,255,255,.19),0 1px 2px rgba(0,0,0,.19),0 2px 4px rgba(0,0,0,.082);background:rgba(255,255,255,.89)!important;border:0!important;padding:6px!important}.set-carousel>button img{background:0 0!important}.set-carousel>.carousel-item{flex:none;min-width:0;width:calc(16.6667% - 13.3333px)!important}@media (max-width:1150px){.set-carousel>.carousel-item{width:calc(20% - 12.8px)!important}}@media (max-width:1023px){.set-carousel>.carousel-item{width:calc(33.3333% - 10.6667px)!important}}@media (max-width:767px){.set-carousel>.carousel-item{width:calc(50% - 8px)!important}}button.btn.panel-toggle-btn.looks-good-btn{margin-top:5px}button.btn.panel-toggle-btn.modify-design-btn{margin-bottom:7px}.panel-switcher{position:relative}.panel{will-change:transform,opacity,max-height;transition:transform .22s,opacity .22s,max-height .22s;overflow:hidden}.panel.is-visible{opacity:1;pointer-events:auto;visibility:visible;max-height:none;overflow:visible;transform:translateY(0)}.panel.is-hidden-up{opacity:0;pointer-events:none;visibility:hidden;max-height:0;transform:translateY(-12px)}@media (max-width:768px){.panel.is-hidden-up{opacity:1!important;pointer-events:auto!important;visibility:visible!important;max-height:none!important;overflow:visible!important;transform:translateY(0)!important}}.canvas-inner{align-items:flex-start}.color-selector:hover,.upload-section:hover,.user-info,.set-carousel-wrap:hover{transition:all .2s;box-shadow:0 1px rgba(0,0,0,.19),0 4px 16px rgba(0,0,0,.15)}.set-carousel>button{transition:all .2s}.set-carousel>button:hover{transition:all .2s;box-shadow:inset 0 2px 4px rgba(255,255,255,.19),0 2px 4px rgba(0,0,0,.19),0 4px 8px rgba(0,0,0,.082)}
