@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700&family=Poppins:wght@300;400;500;600&display=swap";@import"https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap";:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: #e74c3c;--toastify-color-transparent: rgba(255, 255, 255, .7);--toastify-icon-color-info: var(--toastify-color-info);--toastify-icon-color-success: var(--toastify-color-success);--toastify-icon-color-warning: var(--toastify-color-warning);--toastify-icon-color-error: var(--toastify-color-error);--toastify-toast-width: 320px;--toastify-toast-offset: 16px;--toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background: #fff;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--toastify-toast-bd-radius: 6px;--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient( to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55 );--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error);--toastify-color-progress-bgo: .2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;padding:4px;width:var(--toastify-toast-width);box-sizing:border-box;color:#fff}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%)}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right)}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%)}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right)}@media only screen and (max-width : 480px){.Toastify__toast-container{width:100vw;padding:0;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}}.Toastify__toast{--y: 0;position:relative;-ms-touch-action:none;touch-action:none;min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:var(--toastify-toast-bd-radius);box-shadow:0 4px 12px #0000001a;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);cursor:default;direction:ltr;z-index:0;overflow:hidden}.Toastify__toast--stacked{position:absolute;width:100%;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";position:absolute;left:0;right:0;height:calc(var(--g) * 1px);bottom:100%}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-body{margin:auto 0;-ms-flex:1 1 auto;flex:1 1 auto;padding:6px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.Toastify__toast-body>div:last-child{word-break:break-word;-ms-flex:1;flex:1}.Toastify__toast-icon{-webkit-margin-end:10px;margin-inline-end:10px;width:20px;-ms-flex-negative:0;flex-shrink:0;display:-ms-flexbox;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.5s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}@media only screen and (max-width : 480px){.Toastify__toast{margin-bottom:0;border-radius:0}}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;-ms-flex-item-align:start;align-self:flex-start;z-index:1}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:100%;z-index:var(--toastify-z-index);opacity:.7;transform-origin:left;border-bottom-left-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right;border-bottom-left-radius:initial;border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp{position:absolute;bottom:0;left:0;width:100%;height:5px;border-bottom-left-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg);opacity:1}to{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(110%,var(--y),0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(-110%,var(--y),0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-timing-function:ease-in;animation-duration:.3s}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sidebar{width:18%;min-height:100vh;border-right:1.5px solid #EAE1D0;background-color:#fff;font-size:max(1vw,10px)}.sidebar-options{padding-top:50px;padding-left:20%;display:flex;flex-direction:column;gap:20px}.sidebar-option{display:flex;align-items:center;gap:12px;border:1px solid #EAE1D0;border-right:0;padding:10px 15px;border-radius:8px 0 0 8px;cursor:pointer;text-decoration:none;color:#8b7355;background-color:#fff;transition:.3s}.sidebar-option img{width:20px}.sidebar-option:hover{background-color:#fffdf5}.sidebar-option.active{background-color:#fffdf5;border-color:#d4af37;color:#d4af37;font-weight:700;box-shadow:-4px 0 10px #d4af370d}@media (max-width: 900px){.sidebar-options{padding-left:10%}.sidebar-option p{display:none}.sidebar-option{padding:10px;justify-content:center;border-radius:8px;border-right:1px solid #EAE1D0;margin-right:10%}.sidebar-option.active{border:1px solid #D4AF37}}.add-container{width:100%;min-height:100vh;background-color:#faf8f5;padding:40px 20px;box-sizing:border-box;display:flex;justify-content:center;align-items:flex-start;font-family:Inter,-apple-system,sans-serif}.add-card-wrapper{width:100%;max-width:750px;background-color:#fff;border:1px solid #EFEAE2;border-radius:16px;padding:35px;box-shadow:0 10px 30px #8b73550a}.add-header-title{margin-bottom:30px;border-bottom:1px solid #F3EDE2;padding-bottom:15px}.add-header-title h2{color:#5c4a37;font-size:24px;font-weight:600;margin:0 0 5px;letter-spacing:-.5px}.add-header-title p{color:#a3907a;font-size:14px;margin:0}.add-form{display:flex;flex-direction:column;gap:24px}.form-group{display:flex;flex-direction:column;gap:8px;width:100%}.add-form-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}.input-label{font-size:14px;font-weight:600;color:#6e5a44}.optional{font-weight:400;color:#b5a695;font-size:13px}.luxury-input,.luxury-textarea,.luxury-select{width:100%;border:1px solid #D9CFC1;border-radius:8px;padding:12px 14px;font-size:15px;color:#4a3e31;background-color:#fcfbfa;outline:none;transition:all .25s ease;box-sizing:border-box}.luxury-input:focus,.luxury-textarea:focus,.luxury-select:focus{border-color:#c5a059;background-color:#fff;box-shadow:0 0 0 3px #c5a0591f}.luxury-textarea{resize:vertical}.center-items{align-items:flex-start}.add-img-upload{width:100%;max-width:220px}.upload-box-label{display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px dashed #D9CFC1;border-radius:12px;padding:12px;cursor:pointer;background-color:#fcfbfa;transition:all .25s ease;min-height:140px;box-sizing:border-box}.upload-box-label:hover{border-color:#c5a059;background-color:#faf6ee}.upload-box-label.drag-active{border-color:#c5a059;border-style:solid;background-color:#f5ede2;box-shadow:inset 0 0 8px #c5a0591a;transform:scale(1.02)}.placeholder-img{width:50px;opacity:.6;margin-bottom:8px}.preview-wrapper{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%}.has-preview{width:100%;max-height:120px;object-fit:contain;border-radius:6px}.remove-img-btn{background-color:#fff0f0;color:#d11a2a;border:1px solid #F3C2C2;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.remove-img-btn:hover{background-color:#d11a2a;color:#fff;border-color:#d11a2a}.upload-text{font-size:12px;color:#9c8c78;text-align:center;margin-top:5px}.add-grid-properties{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.price-input-wrapper{position:relative;display:flex;align-items:center}.currency-symbol{position:absolute;left:14px;color:#8c7c68;font-weight:500;font-size:16px;pointer-events:none}.price-padding{padding-left:30px!important}.toggle-container{display:flex;align-items:center;gap:8px;font-size:12px;color:#9e8e7a;background:#f5efe4;padding:4px 10px;border-radius:20px}.toggle-switch{position:relative;display:inline-block;width:36px;height:18px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#d5c9b9;transition:.3s ease;border-radius:18px}.toggle-slider:before{position:absolute;content:"";height:14px;width:14px;left:2px;bottom:2px;background-color:#fff;transition:.3s ease;border-radius:50%}input:checked+.toggle-slider{background-color:#c5a059}input:checked+.toggle-slider:before{transform:translate(18px)}.form-actions{margin-top:15px;border-top:1px solid #F3EDE2;padding-top:25px;display:flex;justify-content:flex-end}.add-luxury-btn{width:100%;background-color:#5c4a37;color:#fff;border:none;padding:14px 28px;font-size:14px;font-weight:600;letter-spacing:.5px;border-radius:8px;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 12px #5c4a3726}.add-luxury-btn:hover{background-color:#473829;box-shadow:0 6px 16px #5c4a3740;transform:translateY(-1px)}.add-luxury-btn:active{transform:translateY(1px)}.add-restricted-container{display:flex;justify-content:center;align-items:center;min-height:50vh;padding:20px}.add-restricted-card{background:#fff;border:1px solid #EFEAE2;padding:30px;border-radius:12px;text-align:center;max-width:400px;box-shadow:0 10px 25px #00000005}.add-restricted-card p{margin:0 0 8px;color:#5c4a37;font-weight:600;font-size:18px}.add-restricted-card span{color:#a3907a;font-size:14px}@media (max-width: 680px){.add-grid-properties{grid-template-columns:1fr;gap:16px}.add-card-wrapper{padding:20px}.add-luxury-btn{width:100%}}.manage-categories{width:90%;margin:30px auto;color:#8b7355}.add-category-box{background-color:#fffdf5;padding:20px;border-radius:12px;box-shadow:0 4px 12px #d4af371a}.add-category-box h2,.category-list-box h2{color:#d4af37;margin-bottom:20px}.category-form{display:flex;gap:30px;align-items:center;flex-wrap:wrap}.upload-section img{width:120px;height:120px;object-fit:cover;border:2px dashed #D4AF37;border-radius:8px;cursor:pointer;background-color:#fff}.input-section{display:flex;flex-direction:column;gap:15px;flex-grow:1;max-width:400px}.input-section input{padding:12px;border:1px solid #D4AF37;border-radius:6px;font-size:16px;outline:none;color:#8b7355}.input-section button{background-color:#d4af37;color:#fff;border:none;padding:15px;border-radius:30px;font-weight:700;cursor:pointer}.divider{border:none;height:1px;background-color:#eae1d0;margin:40px 0}.category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:20px}.category-card{background-color:#fffdf5;border:1px solid #EAE1D0;border-radius:8px;padding:15px;text-align:center;position:relative}.category-card img{width:80px;height:80px;object-fit:cover;border-radius:50%;margin-bottom:10px;border:2px solid #D4AF37}.category-card p{font-weight:700;margin-bottom:10px}.delete-btn{color:#c94c4c;cursor:pointer;font-size:14px;font-weight:700}.upload-section{display:flex;flex-direction:column;align-items:center;gap:6px}.upload-hint{font-size:12px;color:#8b7355}.remove-image-btn{font-size:12px;color:#c94c4c;cursor:pointer;font-weight:700;text-decoration:underline}.btn-group{display:flex;gap:10px}.submit-btn{flex:2;background-color:#d4af37;color:#fff;border:none;padding:15px;border-radius:30px;font-weight:700;cursor:pointer}.cancel-btn{flex:1;background-color:#888;color:#fff;border:none;padding:15px;border-radius:30px;font-weight:700;cursor:pointer}.card-actions{display:flex;justify-content:center;gap:15px;margin-top:8px}.edit-btn{color:#4a90e2;cursor:pointer;font-size:14px;font-weight:700}*{margin:0;padding:0;box-sizing:border-box}.admin-dashboard{min-height:100vh;padding:30px;font-family:Poppins,sans-serif;background:radial-gradient(circle at top right,rgba(212,175,55,.18),transparent 25%),linear-gradient(to bottom,#fffdf8,#f7f2e8)}.dashboard-loading{min-height:100vh;display:flex;flex-direction:column;gap:18px;justify-content:center;align-items:center;background:#fffdf8}.loader-ring{width:55px;height:55px;border:5px solid #f2e6c7;border-top:5px solid #d4af37;border-radius:50%;animation:spin 1s linear infinite}.dashboard-loading p{color:#8b6508;font-weight:500}@keyframes spin{to{transform:rotate(360deg)}}.dashboard-hero{position:relative;overflow:hidden;padding:50px;border-radius:30px;margin-bottom:35px;background:linear-gradient(135deg,#fff7e8,#f7ead0);border:1px solid #f0dfb2;box-shadow:0 10px 40px #d4af371f}.hero-content{position:relative;z-index:2}.hero-badge{width:fit-content;display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:50px;margin-bottom:22px;background:#d4af371f;color:#b88912;font-size:14px;font-weight:500}.dashboard-hero h1{font-family:Playfair Display,serif;font-size:3rem;color:#9d740d;margin-bottom:18px}.dashboard-hero p{max-width:700px;line-height:1.9;font-size:15px;color:#7a6a56}.hero-glow{position:absolute;right:-80px;top:-80px;width:250px;height:250px;background:#ffd70033;filter:blur(80px)}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px;margin-bottom:35px}.summary-card{display:flex;align-items:center;gap:18px;padding:24px;background:#fffc;border-radius:24px;border:1px solid #f1e7cd;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:.3s ease;box-shadow:0 8px 25px #d4af3714}.summary-card:hover{transform:translateY(-6px)}.summary-icon{width:65px;height:65px;border-radius:20px;display:flex;align-items:center;justify-content:center}.gold-icon{background:linear-gradient(135deg,#f6d365,#d4af37);color:#fff}.soft-gold-icon{background:linear-gradient(135deg,#f7e6b2,#e8c96e);color:#9d740d}.premium-icon{background:linear-gradient(135deg,#fff1c7,#f3cc63);color:#9d740d}.summary-card h3{font-size:2rem;color:#9d740d}.summary-card p{margin-top:5px;color:#8a7b68;font-size:14px}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:28px}.dashboard-card{background:#ffffffd9;border-radius:28px;padding:30px;border:1px solid #f2e6c9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 30px #d4af3714}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.card-header h2{font-family:Playfair Display,serif;font-size:1.8rem;color:#9d740d}.card-header p{margin-top:8px;color:#9a8d78;font-size:14px}.card-icon{width:58px;height:58px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ffe49b,#d4af37);color:#fff}.soft-card-icon{background:linear-gradient(135deg,#f8e8b5,#e7c86f);color:#9d740d}.stats-list{display:flex;flex-direction:column;gap:22px}.stat-card{padding:18px;border-radius:20px;background:#fffdfa;border:1px solid #f2e7cc;transition:.3s ease}.stat-card:hover{transform:scale(1.02);box-shadow:0 8px 22px #d4af3714}.stat-top{display:flex;justify-content:space-between;margin-bottom:12px}.stat-category{font-weight:600;color:#6e5733;text-transform:capitalize}.stat-number{color:#c79c16;font-weight:700}.views-text{color:#b88912}.progress-bar-bg{width:100%;height:10px;background:#f1eadb;border-radius:50px;overflow:hidden}.progress-bar-fill{height:100%;border-radius:50px;transition:width 1s ease}.gold-fill{background:linear-gradient(to right,#f7d978,#d4af37)}.soft-fill{background:linear-gradient(to right,#f1d892,#ddb74b)}@media (max-width: 768px){.admin-dashboard{padding:18px}.dashboard-hero{padding:32px 24px}.dashboard-hero h1{font-size:2rem}.dashboard-grid{grid-template-columns:1fr}.dashboard-card{padding:22px}.card-header{flex-direction:column;align-items:flex-start;gap:18px}.summary-card h3{font-size:1.5rem}}.order-item{display:grid;grid-template-columns:.5fr 2fr 1fr 1fr 1fr;align-items:start;gap:30px;border:1px solid tomato;padding:20px;margin:30px 0;font-size:14px;color:#505050}.order-item-food,.order-item-name{font-weight:600}.order-item-name{margin-top:30px;margin-bottom:5px}.order-item-address{margin-bottom:10px}.order-item select{background-color:#ffe8e4;border:1px solid tomato;width:max(10vw,120px);padding:10px;outline:none}@media (max-width:1000px){.order-item{font-size:12px;grid-template-columns:.5fr 2fr 1fr;padding:15px 8px}.order-item select{padding:5px;font-size:12px}.order-item img{width:40px}}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:#fffdf5}.login-container{background-color:#fff;width:100%;max-width:400px;padding:40px;border-radius:12px;box-shadow:0 10px 30px #8b73551a;border:1px solid #EAE1D0}.login-header{text-align:center;margin-bottom:30px}.login-header h2{color:#d4af37;font-size:28px;margin-bottom:8px;font-weight:600}.login-header p{color:#8b7355;font-size:14px}.login-form{display:flex;flex-direction:column;gap:20px}.input-group p{color:#8b7355;font-size:14px;margin-bottom:6px;font-weight:500}.input-group input{width:100%;padding:12px 15px;border:1.5px solid #EAE1D0;border-radius:6px;outline:none;font-size:15px;color:#8b7355;background-color:#fafafa;transition:.3s}.input-group input:focus{border-color:#d4af37;background-color:#fff;box-shadow:0 0 0 3px #d4af371a}.login-btn{margin-top:10px;width:100%;padding:12px;background-color:#d4af37;color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:700;cursor:pointer;transition:.3s}.login-btn:hover{background-color:#c5a028;box-shadow:0 4px 12px #d4af374d}:root{--jw-bg: #FAF8F5;--jw-surface: #FFFFFF;--jw-border: #EFEAE2;--jw-border-strong: #D9CFC1;--jw-text-heading: #5C4A37;--jw-text-body: #4A3E31;--jw-text-muted: #8A7B68;--jw-text-faint: #A3907A;--jw-accent: #C5A059;--jw-accent-dark: #B08D47;--jw-accent-soft: #FAF6EE;--jw-accent-soft-border: #F0E4CE;--jw-primary: #5C4A37;--jw-primary-hover: #473829;--jw-success: #178344;--jw-success-bg: #E8FFF0;--jw-warning: #B88916;--jw-warning-bg: #FFF4DD;--jw-danger: #D11A2A;--jw-danger-bg: #FFF0F0;--jw-danger-border: #F3C2C2;--jw-neutral: #6B6258;--jw-neutral-bg: #F1EEE9;--jw-radius-sm: 8px;--jw-radius-md: 12px;--jw-radius-lg: 16px;--jw-radius-pill: 30px;--jw-shadow-card: 0 10px 25px rgba(92, 74, 55, .06);--jw-shadow-card-hover: 0 14px 30px rgba(92, 74, 55, .12);--jw-shadow-focus: 0 0 0 3px rgba(197, 160, 89, .15);--jw-font: "Inter", -apple-system, sans-serif}.slider-manager{width:100%;padding:25px;box-sizing:border-box;font-family:var(--jw-font)}.slider-header{margin-bottom:25px}.slider-header h2{color:var(--jw-text-heading);font-size:28px;font-weight:700;letter-spacing:-.5px}.slider-upload-box{background:var(--jw-surface);border:1px solid var(--jw-border);padding:25px;border-radius:var(--jw-radius-lg);box-shadow:var(--jw-shadow-card);margin-bottom:35px;display:flex;flex-direction:column;gap:18px;max-width:500px}.upload-preview{width:100%;height:220px;border-radius:var(--jw-radius-md);overflow:hidden;border:2px dashed var(--jw-border-strong);background:#fcfbfa;display:flex;align-items:center;justify-content:center;transition:all .25s ease}.upload-preview:hover{border-color:var(--jw-accent);background:var(--jw-accent-soft)}.upload-preview.drag-active{border-color:var(--jw-accent);border-style:solid;background:var(--jw-accent-soft);box-shadow:inset 0 0 8px #c5a05926;transform:scale(1.02)}.upload-preview img{width:100%;height:100%;object-fit:contain}.empty-preview{color:var(--jw-text-muted);font-size:16px;display:flex;flex-direction:column;align-items:center;gap:8px}.preview-icon{font-size:32px;display:block;opacity:.7}.empty-preview p{margin:0;font-size:12px}.slider-upload-box input[type=file]{display:none}.slider-upload-box input[type=text],.slider-upload-box input[type=number]{border:1px solid var(--jw-border-strong);padding:11px 14px;border-radius:var(--jw-radius-sm);background:#fcfbfa;color:var(--jw-text-body);font-size:14px;outline:none;transition:all .25s ease;font-family:var(--jw-font)}.slider-upload-box input[type=text]:focus,.slider-upload-box input[type=number]:focus{border-color:var(--jw-accent);background:var(--jw-surface);box-shadow:var(--jw-shadow-focus)}.file-input-label{border:1px solid var(--jw-border-strong);padding:11px 14px;border-radius:var(--jw-radius-sm);background:#fcfbfa;cursor:pointer;text-align:center;font-weight:600;font-size:14px;color:var(--jw-text-heading);transition:all .25s ease}.file-input-label:hover{background:var(--jw-accent-soft);border-color:var(--jw-accent)}.slider-upload-box button{border:none;background:var(--jw-primary);color:#fff;padding:14px 28px;border-radius:var(--jw-radius-sm);cursor:pointer;font-size:14px;font-weight:600;letter-spacing:.5px;transition:all .25s ease;box-shadow:0 4px 12px #5c4a3726}.slider-upload-box button:hover{background:var(--jw-primary-hover);box-shadow:0 6px 16px #5c4a3740;transform:translateY(-1px)}.slider-upload-box button:disabled{opacity:.7;cursor:not-allowed}.slider-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:25px}.slider-card{background:var(--jw-surface);border:1px solid var(--jw-border);border-radius:var(--jw-radius-lg);overflow:hidden;box-shadow:var(--jw-shadow-card);transition:.3s ease}.slider-card:hover{transform:translateY(-5px);box-shadow:var(--jw-shadow-card-hover)}.slider-image{width:100%;height:220px;object-fit:cover;background:var(--jw-bg)}.slider-info{padding:20px}.slider-info p{margin-bottom:8px;color:var(--jw-text-body);font-size:14px}.slider-info span{color:var(--jw-accent-dark);font-weight:600}.slider-actions{display:flex;gap:10px;padding:0 20px 20px;flex-wrap:wrap}.slider-actions button{flex:1;border:none;padding:12px;border-radius:var(--jw-radius-sm);cursor:pointer;font-size:13px;font-weight:600;transition:.2s ease}.toggle-btn{background:var(--jw-accent);color:#fff}.toggle-btn:hover{background:var(--jw-accent-dark)}.move-btn{background:var(--jw-accent-soft);color:var(--jw-accent-dark);flex:0 0 44px}.move-btn:hover{background:var(--jw-accent-soft-border)}.delete-btn{background:var(--jw-danger-bg);color:var(--jw-danger);border:1px solid var(--jw-danger-border)!important}.delete-btn:hover{background:var(--jw-danger);color:#fff}.weight-edit-box{display:flex;flex-direction:column;gap:10px;margin-bottom:16px;padding:14px;background:var(--jw-bg);border:1px solid var(--jw-border);border-radius:var(--jw-radius-md)}.weight-edit-box label{font-size:13px;font-weight:600;color:var(--jw-text-heading);letter-spacing:.3px}.weight-edit-box input{width:100%;border:1px solid var(--jw-border-strong);background:var(--jw-surface);padding:10px 12px;border-radius:var(--jw-radius-sm);outline:none;font-size:13px;color:var(--jw-text-body);transition:.25s ease;font-family:var(--jw-font)}.weight-edit-box input:focus{border-color:var(--jw-accent);box-shadow:var(--jw-shadow-focus)}.save-weight-btn{border:none;background:var(--jw-success);color:#fff;padding:11px;border-radius:var(--jw-radius-sm);cursor:pointer;font-size:13px;font-weight:600;transition:.25s ease}.save-weight-btn:hover{background:#0f6a35;transform:translateY(-1px)}@media (max-width: 768px){.weight-edit-box{padding:12px}.weight-edit-box input{font-size:16px}.save-weight-btn{width:100%}}@media (max-width: 768px){.slider-manager{padding:15px}.slider-grid{grid-template-columns:1fr}.slider-image{height:200px}.slider-actions{flex-direction:column}.slider-actions button,.move-btn{width:100%;flex:1}}.admin-cat-container{padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#fff;border-radius:8px}.admin-cat-container h2{color:#111;margin-bottom:20px}.cat-sort-layout{display:flex;gap:25px;align-items:flex-start}.cat-sort-sidebar{width:280px;border-right:1px solid #e0e0e0;padding-right:15px;flex-shrink:0}.cat-sort-sidebar h4{margin-top:0;color:#444}.cat-list{list-style:none;padding:0;margin:0}.cat-list-item{padding:12px;margin:6px 0;border-radius:6px;cursor:pointer;background:#f9f9f9;border:1px solid #eee;display:flex;flex-direction:column;gap:4px;transition:all .2s ease}.cat-list-item:hover{border-color:#d4af37}.cat-list-item.active{background:#fffcf7;border-color:#d4af37}.cat-name{color:#333}.cat-list-item.active .cat-name{color:#b8962e}.cat-sort-badge{font-size:11px;color:#888}.cat-sort-badge b{color:#d4af37}.cat-sort-main{flex:1}.cat-sort-header{display:flex;justify-content:space-between;align-items:center;background:#fffcf7;padding:15px 20px;border-radius:8px;border:1px solid #f0e6d2}.cat-sort-header h3{margin:0;color:#111}.cat-sort-header p{margin:4px 0 0;font-size:13px;color:#666}.cat-sort-control{display:flex;align-items:center;gap:10px}.cat-sort-control label{font-size:14px;font-weight:600;color:#333}.cat-sort-select{padding:8px 12px;border-radius:6px;border:1px solid #d4af37;background:#fff;font-weight:500;color:#8a733e;cursor:pointer;outline:none}.cat-sort-select:hover{border-color:#b8962e}.cat-product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:15px;margin-top:20px}.cat-item-card{border:1px solid #eee;border-radius:8px;padding:12px;text-align:center;background:#fff;transition:box-shadow .2s ease}.cat-item-card:hover{box-shadow:0 4px 12px #0000000d}.cat-item-img-wrap{width:100%;height:140px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:4px}.cat-item-img-wrap img{max-width:100%;max-height:100%;object-fit:contain}.cat-item-title{margin:10px 0 4px;font-size:14px;color:#222;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cat-item-weight{font-size:13px;font-weight:600;color:#d4af37}.cat-loading,.cat-empty{padding:50px 0;text-align:center;color:#888}.lw-upload-container{width:100%;max-width:750px;background-color:var(--jw-surface);border:1px solid var(--jw-border);border-radius:var(--jw-radius-lg);padding:35px;box-shadow:var(--jw-shadow-card)}.lw-upload-header h2{color:var(--jw-text-heading);font-size:24px;font-weight:600;margin:0 0 5px;letter-spacing:-.5px}.lw-upload-header p{color:var(--jw-text-faint);font-size:14px;margin:0}.lw-form-group{display:flex;flex-direction:column;gap:8px;width:100%}.lw-input-label{font-size:14px;font-weight:600;color:var(--jw-text-heading);opacity:.9}.lw-luxury-input,.lw-luxury-textarea,.lw-luxury-select{width:100%;border:1px solid var(--jw-border-strong);border-radius:var(--jw-radius-sm);padding:11px 14px;font-size:14px;color:var(--jw-text-body);background-color:#fcfbfa;outline:none;transition:all .25s ease;box-sizing:border-box;font-family:var(--jw-font)}.lw-luxury-input:focus,.lw-luxury-textarea:focus,.lw-luxury-select:focus{border-color:var(--jw-accent);background-color:var(--jw-surface);box-shadow:var(--jw-shadow-focus)}.lw-luxury-textarea{resize:vertical}.lw-center-items{align-items:flex-start}.lw-file-upload-area{width:100%;border:2px dashed var(--jw-border-strong);padding:12px;min-height:140px;border-radius:var(--jw-radius-md);background:#fcfbfa;cursor:pointer;transition:all .25s ease;text-align:center;position:relative;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.lw-grid-properties{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.lw-toggle-text{font-size:13px;color:var(--jw-text-heading);font-weight:500}.lw-toggle-switch{position:relative;display:inline-block;width:36px;height:18px}.lw-toggle-switch input{opacity:0;width:0;height:0}.lw-toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--jw-border-strong);transition:.3s ease;border-radius:18px}.lw-toggle-slider:before{position:absolute;content:"";height:14px;width:14px;left:2px;bottom:2px;background-color:#fff;transition:.3s ease;border-radius:50%}.lw-toggle-switch input:checked+.lw-toggle-slider{background-color:var(--jw-accent)}.lw-toggle-switch input:checked+.lw-toggle-slider:before{transform:translate(18px)}.lw-form-actions{margin-top:10px;border-top:1px solid var(--jw-border);padding-top:20px}.lw-luxury-btn{width:100%;background-color:var(--jw-primary);color:#fff;border:none;padding:14px 28px;font-size:14px;font-weight:600;letter-spacing:.5px;border-radius:var(--jw-radius-sm);cursor:pointer;transition:all .25s ease;box-shadow:0 4px 12px #5c4a3726}.lw-luxury-btn:hover{background-color:var(--jw-primary-hover);box-shadow:0 6px 16px #5c4a3740;transform:translateY(-1px)}.lw-luxury-btn:disabled{opacity:.7;cursor:not-allowed}@media (max-width: 680px){.lw-grid-properties{grid-template-columns:1fr;gap:14px}.lw-upload-container{padding:20px}}.lw-products-page{min-height:100vh;background:var(--jw-bg);padding:30px;font-family:var(--jw-font)}.lw-products-container{max-width:1400px;margin:auto}.lw-products-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:15px}.lw-products-title{font-size:28px;font-weight:700;color:var(--jw-text-heading);letter-spacing:-.5px}.lw-products-subtitle{color:var(--jw-text-faint);margin-top:6px;font-size:14px}.lw-products-count{background:var(--jw-accent);color:#fff;padding:10px 18px;border-radius:var(--jw-radius-sm);font-weight:600}.lw-products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:25px}.lw-product-card{background:var(--jw-surface);border:1px solid var(--jw-border);border-radius:var(--jw-radius-lg);overflow:hidden;box-shadow:var(--jw-shadow-card);transition:.3s ease;display:flex;flex-direction:column}.lw-product-card:hover{transform:translateY(-5px);box-shadow:var(--jw-shadow-card-hover)}.lw-product-image-wrapper{position:relative;height:280px;background-color:var(--jw-bg)}.lw-product-image{width:100%;height:100%;object-fit:cover}.lw-trending-badge{position:absolute;top:15px;right:15px;background:var(--jw-accent);color:#fff;padding:6px 12px;border-radius:var(--jw-radius-pill);font-size:11px;font-weight:700;letter-spacing:.5px;box-shadow:0 4px 10px #5c4a3726}.lw-product-content{padding:20px;display:flex;flex-direction:column;flex-grow:1}.lw-product-top{display:flex;justify-content:space-between;gap:10px}.lw-product-name{font-size:18px;font-weight:700;color:var(--jw-text-heading);line-height:1.4}.lw-product-code{font-size:12px;color:var(--jw-text-faint)}.lw-product-category{margin-top:10px;color:var(--jw-warning);font-weight:600}.lw-product-details{display:flex;justify-content:space-between;margin-top:15px;font-size:14px;color:var(--jw-text-body)}.lw-status{margin-top:15px;display:inline-block;padding:7px 14px;border-radius:var(--jw-radius-pill);font-size:13px;font-weight:600}.lw-status.active{background:var(--jw-success-bg);color:var(--jw-success)}.lw-status.inactive{background:var(--jw-warning-bg);color:var(--jw-warning)}.lw-status.hidden{background:var(--jw-neutral-bg);color:var(--jw-neutral)}.lw-status.out_of_stock{background:var(--jw-danger-bg);color:var(--jw-danger)}.lw-product-actions{display:flex;gap:12px;margin-top:20px}.lw-edit-btn,.lw-delete-btn{flex:1;border:none;padding:12px;border-radius:var(--jw-radius-sm);cursor:pointer;font-weight:600;transition:.2s ease}.lw-edit-btn{background:var(--jw-accent);color:#fff}.lw-edit-btn:hover{background:var(--jw-accent-dark)}.lw-delete-btn{background:var(--jw-danger-bg);color:var(--jw-danger);border:1px solid var(--jw-danger-border)}.lw-delete-btn:hover{background:var(--jw-danger);color:#fff}.lw-loading,.lw-empty-state{background:var(--jw-surface);padding:40px;text-align:center;border-radius:var(--jw-radius-lg);color:var(--jw-text-muted);font-size:15px;box-shadow:var(--jw-shadow-card)}@media (max-width: 768px){.lw-products-page{padding:20px}.lw-products-header{flex-direction:column;align-items:flex-start;gap:15px}.lw-products-title{font-size:24px}.lw-products-grid{grid-template-columns:1fr}}.lw-edit-input{width:100%;margin-top:10px;padding:10px 12px;border:1px solid var(--jw-border-strong);border-radius:var(--jw-radius-sm);font-size:13px;outline:none;background:#fcfbfa;color:var(--jw-text-body);transition:.25s ease;font-family:var(--jw-font)}.lw-edit-input:focus{border-color:var(--jw-accent);background:var(--jw-surface);box-shadow:var(--jw-shadow-focus)}textarea.lw-edit-input{font-family:inherit;line-height:1.5}select.lw-edit-input{cursor:pointer}.lw-inline-checkbox{display:flex;align-items:center;gap:10px;margin-top:18px;font-size:14px;font-weight:500;color:var(--jw-text-body)}.lw-inline-checkbox input{width:18px;height:18px}.lw-save-btn{flex:1;background:var(--jw-success);color:#fff;border:none;padding:12px;border-radius:var(--jw-radius-sm);cursor:pointer;font-weight:600;transition:.3s ease}.lw-save-btn:hover{background:#0f6a35}.lw-cancel-btn{flex:1;background:var(--jw-neutral);color:#fff;border:none;padding:12px;border-radius:var(--jw-radius-sm);cursor:pointer;font-weight:600;transition:.3s ease}.lw-cancel-btn:hover{opacity:.85}.lw-analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;margin-bottom:30px}.lw-analytics-card{background:var(--jw-surface);border:1px solid var(--jw-border);padding:22px;border-radius:var(--jw-radius-lg);box-shadow:var(--jw-shadow-card);transition:.3s ease}.lw-analytics-card:hover{transform:translateY(-4px);box-shadow:var(--jw-shadow-card-hover)}.lw-analytics-card h3{font-size:13px;color:var(--jw-text-faint);margin-bottom:10px;font-weight:600;text-transform:uppercase;letter-spacing:.4px}.lw-analytics-card p{font-size:30px;font-weight:700;color:var(--jw-accent-dark)}.lw-top-products-card{background:var(--jw-surface);border:1px solid var(--jw-border);border-radius:var(--jw-radius-lg);padding:24px;box-shadow:var(--jw-shadow-card);margin-top:30px}.lw-top-products-card h3{font-size:16px;margin-bottom:18px;color:var(--jw-text-heading);font-weight:700}.lw-top-products-list{display:flex;flex-direction:column;gap:16px}.lw-top-product-item{display:flex;align-items:center;gap:14px;padding-bottom:14px;border-bottom:1px solid var(--jw-border)}.lw-top-product-item:last-child{border-bottom:none;padding-bottom:0}.lw-rank-badge{width:36px;height:36px;border-radius:50%;background:var(--jw-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;flex-shrink:0}.lw-top-product-info{display:flex;flex-direction:column}.lw-top-product-name{font-size:14px;font-weight:600;color:var(--jw-text-heading)}.lw-top-product-views{font-size:12px;color:var(--jw-text-faint);margin-top:4px}.lw-upload-page{width:100%;min-height:100vh;background-color:var(--jw-bg);padding:40px 20px;box-sizing:border-box;display:flex;justify-content:center;align-items:flex-start;font-family:var(--jw-font)}.lw-upload-container{width:100%;max-width:850px;background-color:var(--jw-surface);border:1px solid var(--jw-border);border-radius:var(--jw-radius-lg);padding:35px;box-shadow:var(--jw-shadow-card)}.lw-upload-header{margin-bottom:25px;border-bottom:1px solid var(--jw-border);padding-bottom:15px}.lw-upload-title{font-size:24px;font-weight:600;color:var(--jw-text-heading);margin:0 0 5px;letter-spacing:-.5px}.lw-upload-subtitle{color:var(--jw-text-faint);font-size:14px}.lw-upload-form{display:flex;flex-direction:column;gap:20px}.lw-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.lw-input-group{display:flex;flex-direction:column;gap:8px}.lw-input-group label{font-size:14px;font-weight:600;color:var(--jw-text-heading);opacity:.9}.lw-input,.lw-select,.lw-textarea{width:100%;border:1px solid var(--jw-border-strong);border-radius:var(--jw-radius-sm);padding:11px 14px;font-size:14px;color:var(--jw-text-body);background-color:#fcfbfa;outline:none;transition:all .25s ease;box-sizing:border-box;font-family:var(--jw-font)}.lw-input:focus,.lw-select:focus,.lw-textarea:focus{border-color:var(--jw-accent);background-color:var(--jw-surface);box-shadow:var(--jw-shadow-focus)}.lw-label-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.disabled-group{opacity:.6}.lw-toggle{position:relative;display:inline-block;width:36px;height:18px}.lw-toggle input{opacity:0;width:0;height:0}.lw-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--jw-border-strong);transition:.3s ease;border-radius:18px}.lw-slider:before{position:absolute;content:"";height:14px;width:14px;left:2px;bottom:2px;background-color:#fff;transition:.3s ease;border-radius:50%}.lw-toggle input:checked+.lw-slider{background-color:var(--jw-accent)}.lw-toggle input:checked+.lw-slider:before{transform:translate(18px)}.lw-textarea{resize:vertical;min-height:90px}.lw-file-upload-area{border:2px dashed var(--jw-border-strong);padding:12px;min-height:140px;border-radius:var(--jw-radius-md);background:#fcfbfa;cursor:pointer;transition:all .25s ease;text-align:center;position:relative;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.lw-file-upload-area:hover{border-color:var(--jw-accent);background-color:var(--jw-accent-soft)}.lw-file-upload-area.drag-active{border-color:var(--jw-accent);border-style:solid;background:var(--jw-accent-soft);box-shadow:inset 0 0 8px #c5a05926;transform:scale(1.02)}.lw-file-input{display:none}.lw-upload-label{display:block;cursor:pointer;width:100%}.lw-upload-content{display:flex;flex-direction:column;align-items:center;gap:8px}.lw-upload-icon{font-size:32px;display:block;opacity:.7}.lw-upload-content p{color:var(--jw-text-muted);font-size:12px;margin:0}.lw-preview-image{width:100%;max-width:220px;max-height:160px;object-fit:contain;border-radius:6px;border:1px solid var(--jw-border)}.lw-checkbox-wrapper{display:flex;align-items:center;gap:10px;margin-top:4px}.lw-checkbox-wrapper input{width:18px;height:18px}.lw-submit-btn{width:100%;background-color:var(--jw-primary);color:#fff;border:none;padding:14px 28px;font-size:14px;font-weight:600;letter-spacing:.5px;border-radius:var(--jw-radius-sm);cursor:pointer;transition:all .25s ease;box-shadow:0 4px 12px #5c4a3726}.lw-submit-btn:hover{background-color:var(--jw-primary-hover);box-shadow:0 6px 16px #5c4a3740;transform:translateY(-1px)}.lw-submit-btn:disabled{opacity:.7;cursor:not-allowed}.lw-message{padding:12px 16px;border-radius:var(--jw-radius-sm);font-size:13px;font-weight:600}.lw-success{background:var(--jw-success-bg);color:var(--jw-success)}.lw-error{background:var(--jw-danger-bg);color:var(--jw-danger)}@media (max-width: 680px){.lw-upload-container{padding:20px}.lw-form-grid{grid-template-columns:1fr}}.lw-sku-preview{display:flex;align-items:center;gap:8px;margin-top:10px}.lw-sku-label{font-size:12px;color:var(--jw-text-muted);font-weight:500}.lw-sku-value{font-size:12px;font-weight:700;color:var(--jw-accent-dark);background:var(--jw-accent-soft);border:1px solid var(--jw-accent-soft-border);padding:3px 10px;border-radius:var(--jw-radius-pill);letter-spacing:.5px}.lw-sku-loading{font-size:12px;color:var(--jw-text-faint);font-style:italic}.lw-status-card{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;background:var(--jw-bg);border:1px solid var(--jw-border);border-radius:var(--jw-radius-md);padding:18px}.lw-field-label{font-size:14px;font-weight:600;color:var(--jw-text-heading);opacity:.9;margin-bottom:6px;display:block}@media (max-width: 680px){.lw-status-card{grid-template-columns:1fr}}import React,{useEffect,useState}from "react"; import axios from "axios"; import toast,{Toaster}from "react-hot-toast"; import "./jewelry-theme.css"; import "./KundanCollection.css"; const rawUrl = import.meta.env.VITE_API_URL || "http://localhost:4000"; const url = rawUrl.endsWith("/") ? rawUrl.slice(0,-1) : rawUrl; const authHeader = () => ({headers: {Authorization: `Bearer ${localStorage.getItem("token")}`},}); const VALID_STATUSES = ["active","inactive","hidden","out_of_stock"]; const KundanCollection = () =>{const [products,setProducts] = useState([]);const [loading,setLoading] = useState(true);const [editingId,setEditingId] = useState(null);const [editData,setEditData] = useState({});// ── Fetch Products ────────────────────────────────────── const fetchProducts = async () =>{try{setLoading(true);const res = await axios.get(`${url}/api/kundan/list?status=all`);if (res.data && res.data.success){setProducts(res.data.products || [])}}catch (err){console.error("Admin Fetch Error:",err);toast.error("Failed to load products")}finally{setLoading(false)}}useEffect(() => {fetchProducts();},[]);// ── Delete Product ────────────────────────────────────── const deleteProduct = async (id) =>{if (!window.confirm("Delete this Kundan product?")) return;try{const res = await axios.delete(`${url}/api/kundan/delete/${id}`,authHeader());toast.success(res.data.message || "Deleted");fetchProducts()}catch (err){const status = err.response?.status;if (status === 401 || status === 403) toast.error("Unauthorized.");else toast.error(err.response?.data?.message || "Delete failed")}}// ── Start Edit Mode ───────────────────────────────────── const startEdit = (item) =>{setEditingId(item.id);setEditData({display_name: item.display_name || "",short_description: item.short_description || "",category: item.category || "Kundan",net_weight: item.net_weight !== null && item.net_weight !== undefined ? parseFloat(item.net_weight) : 0,k_pure_weight: item.k_pure_weight !== null && item.k_pure_weight !== undefined ? parseFloat(item.k_pure_weight) : 0,k_fitting_charge: item.k_fitting_charge !== null && item.k_fitting_charge !== undefined ? parseFloat(item.k_fitting_charge) : 0,making_charges: item.making_charges !== null && item.making_charges !== undefined ? parseFloat(item.making_charges) : 0,purity: item.purity || "22K",price: item.price !== null && item.price !== undefined ? parseFloat(item.price) : 0,is_trending: item.is_trending || 0,status: item.status || "active",})}const handleEditChange = (e) =>{const{name,value,type,checked}= e.target;setEditData((prev) => ({...prev,[name]: type === "checkbox" ? (checked ? 1 : 0) : value,}))}// ── Save Changes ──────────────────────────────────────── const saveEdit = async (id) =>{if (!editData.display_name?.trim()){toast.error("Display name is required");return}try{const res = await axios.put(`${url}/api/kundan/update/${id}`,editData,authHeader());toast.success(res.data.message || "Updated");setEditingId(null);fetchProducts()}catch (err){const status = err.response?.status;if (status === 401 || status === 403) toast.error("Unauthorized.");else toast.error(err.response?.data?.message || "Update failed")}}// ── Quick Toggle Status ───────────────────────────────── const quickToggleStatus = async (id,currentStatus) =>{const next = currentStatus === "active" ? "inactive" : "active";try{await axios.patch(`${url}/api/kundan/status/${id}`,{status: next},authHeader());toast.success(`Status → ${next}`);fetchProducts()}catch{toast.error("Status update failed")}}return (<div className="lw-products-page"> <Toaster position="top-center" /> <div className="lw-products-container"> <div className="lw-products-header"> <div> <h2 className="lw-products-title">Kundan Collection</h2> <p className="lw-products-subtitle"> {products.length} products total </p> </div> </div> {loading ? (<div className="lw-loading">Loading Products...</div>) : products.length === 0 ? (<div className="lw-empty-state">No Kundan Products Found</div>) : (<div className="lw-products-grid"> {products.map((item) => (<div className="lw-product-card" key={item.id}> {} <div className="lw-product-image-wrapper"> <img src={item.image_url ? `${url}${item.image_url}` : "https://via.placeholder.com/300"} alt={item.display_name} className="lw-product-image" onError={(e) => {e.target.src = "https://via.placeholder.com/300";}} /> {} <span className="lw-trending-badge" style={{background: item.status === "active" ? "var(--jw-success)" : "var(--jw-neutral)",cursor: "pointer",}} onClick={() => quickToggleStatus(item.id,item.status)} title="Click to toggle status" > {item.status ? item.status.toUpperCase() : "ACTIVE"} </span> {} {item.is_trending === 1 && (<span className="lw-trending-badge" style={{background: "var(--jw-accent)",top: "36px"}}> TRENDING </span>)} </div> {} <div className="lw-product-content"> {} <div style={{display: "flex",justifyContent: "space-between",alignItems: "center",marginBottom: "8px"}}> <span style={{fontSize: "11px",fontWeight: "700",color: "var(--jw-accent-dark)",background: "var(--jw-accent-soft)",padding: "2px 6px",borderRadius: "4px"}}> ID: {item.id} </span> <span style={{fontSize: "11px",color: "#777",fontWeight: "600",letterSpacing: "0.5px"}}> {item.sku} </span> </div> {} {editingId === item.id ? (<input type="text" name="display_name" className="lw-edit-input" value={editData.display_name} onChange={handleEditChange} placeholder="Product name *" style={{fontWeight: "bold",marginBottom: "8px"}} />) : (<h3 className="lw-product-name" style={{margin: "0 0 10px 0",fontSize: "16px",color: "#111"}}> {item.display_name} </h3>)} {} {editingId === item.id && (<textarea name="short_description" className="lw-edit-input" value={editData.short_description} onChange={handleEditChange} placeholder="Short description" rows={2} style={{marginBottom: "10px",resize: "vertical",width: "100%"}} />)} {} <div className="lw-product-details" style={{display: "flex",flexDirection: "column",gap: "6px"}}> {} <span style={{display: "flex",justifyContent: "space-between",alignItems: "center"}}> Purity: {editingId === item.id ? (<select name="purity" value={editData.purity} onChange={handleEditChange} className="lw-edit-input" style={{width: "90px",padding: "4px"}} > <option value="22K">22K</option> <option value="18K">18K</option> <option value="24K">24K</option> <option value="916">916</option> </select>) : (<strong>{item.purity || "22K"}</strong>)} </span> {} {[{label: "Net Wt",key: "net_weight",suffix: "g",step: "0.001"},{label: "Kundan Wt",key: "k_pure_weight",suffix: "g",step: "0.001"},{label: "Fitting",key: "k_fitting_charge",suffix: "₹",step: "0.01"},{label: "Making",key: "making_charges",suffix: "₹",step: "0.01"},].map(({label,key,suffix,step}) => {const rawValue = editingId === item.id ? editData[key] : item[key]; const numericValue = rawValue !== null && rawValue !== undefined ? parseFloat(rawValue) : 0; return (<span key={key} style={{display: "flex",justifyContent: "space-between",alignItems: "center"}}> {label}: {editingId === item.id ? (<input type="number" step={step} name={key} value={editData[key] ?? 0} onChange={handleEditChange} className="lw-edit-input" style={{width: "90px",padding: "4px",marginTop: "2px"}} />) : (<strong style={{color: "#222"}}> {suffix === "₹" ? `₹${numericValue.toFixed(2)}` : `${numericValue.toFixed(3)}${suffix}`} </strong>)} </span>);})} {} <span style={{display: "flex",justifyContent: "space-between",borderTop: "1px solid #eee",paddingTop: "8px",marginTop: "4px",alignItems: "center"}}> Price: {editingId === item.id ? (<input type="number" step="0.01" name="price" value={editData.price ?? 0} onChange={handleEditChange} className="lw-edit-input" style={{width: "90px",padding: "4px"}} />) : (<strong style={{color: "var(--jw-accent-dark)",fontSize: "15px"}}> {item.price !== null && item.price !== undefined && Number(item.price) > 0 ? `₹${Number(item.price).toLocaleString("en-IN",{minimumFractionDigits: 2})}` : "Price on Request"} </strong>)} </span> {} {editingId === item.id && (<> {} <span style={{display: "flex",justifyContent: "space-between",alignItems: "center",marginTop: "6px"}}> Status: <select name="status" value={editData.status} onChange={handleEditChange} className="lw-edit-input" style={{width: "120px"}} > {VALID_STATUSES.map((s) => (<option key={s} value={s}>{s}</option>))} </select> </span> {} <span style={{display: "flex",justifyContent: "space-between",alignItems: "center",marginTop: "6px"}}> Trending: <label className="lw-toggle"> <input type="checkbox" name="is_trending" checked={editData.is_trending === 1} onChange={handleEditChange} /> <span className="lw-slider"></span> </label> </span> </>)} </div> {} {editingId !== item.id && (<div style={{display: "flex",gap: "12px",marginTop: "10px",fontSize: "11px",color: "#999"}}> <span>👁 {item.total_views || 0} views</span> <span>💬 {item.whatsapp_clicks || 0} WhatsApp</span> </div>)} {} <div style={{display: "flex",gap: "10px",marginTop: "14px"}}> {editingId === item.id ? (<> <button onClick={() => saveEdit(item.id)} style={{flex: 1,padding: "12px",background: "var(--jw-success)",color: "white",borderRadius: "8px",border: "none",cursor: "pointer",fontWeight: "600"}}> Save </button> <button onClick={() => setEditingId(null)} style={{flex: 1,padding: "12px",background: "var(--jw-neutral)",color: "white",borderRadius: "8px",border: "none",cursor: "pointer",fontWeight: "600"}}> Cancel </button> </>) : (<> <button onClick={() => startEdit(item)} style={{flex: 1,padding: "12px",background: "var(--jw-accent)",color: "white",borderRadius: "8px",border: "none",cursor: "pointer",fontWeight: "600"}}> Edit </button> <button onClick={() => deleteProduct(item.id)} style={{flex: 1,padding: "12px",background: "var(--jw-danger-bg)",color: "var(--jw-danger)",border: "1px solid var(--jw-danger-border)",borderRadius: "8px",cursor: "pointer",fontWeight: "600"}}> Delete </button> </>)} </div> </div> </div>))} </div>)} </div> </div>)}; export default KundanCollection;.cad-upload.add{width:100%;max-width:880px;margin:32px auto;padding:26px;background:var(--jw-surface);border:1px solid var(--jw-border);border-radius:var(--jw-radius-lg);box-shadow:var(--jw-shadow-card);position:relative;overflow:hidden;font-family:var(--jw-font)}.cad-upload.add:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--jw-accent) 0%,var(--jw-accent-soft-border) 50%,var(--jw-accent) 100%)}.cad-upload.add form{display:flex;flex-direction:column;gap:16px}.add-img-upload{display:flex;flex-direction:column;gap:6px;width:100%;max-width:460px}.add-img-upload p{font-size:12.5px;font-weight:600;color:var(--jw-text-heading);opacity:.9}.add-img-upload-wide{max-width:100%}.cad-gallery-count{color:var(--jw-text-muted);font-weight:500;text-transform:none;letter-spacing:normal}.cad-dropzone{position:relative;border:2px dashed var(--jw-border-strong);border-radius:var(--jw-radius-md);background:#fcfbfa;min-height:96px;display:flex;align-items:center;justify-content:center;transition:all .25s ease}.cad-dropzone:hover{border-color:var(--jw-accent);background-color:var(--jw-accent-soft)}.cad-dropzone.drag-active{border-color:var(--jw-accent);border-style:solid;background-color:var(--jw-accent-soft);box-shadow:inset 0 0 8px #c5a05926;transform:scale(1.02)}.cad-dropzone-label{display:block;width:100%;cursor:pointer}.cad-dropzone-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:18px 20px;text-align:center}.cad-dropzone-icon{font-size:24px;line-height:1;opacity:.7}.cad-dropzone-content p{margin:0;font-size:12.5px;font-weight:600;color:var(--jw-text-body)}.cad-dropzone-hint{font-size:11px;color:var(--jw-text-muted)}.cad-preview-wrap{position:relative;display:inline-flex;padding:14px}.cad-preview-image{max-width:100%;max-height:220px;object-fit:contain;border-radius:6px;background:var(--jw-surface);border:1px solid var(--jw-border)}.cad-preview-remove{position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:50%;border:none;background:var(--jw-danger);color:#fff;font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .15s ease,transform .15s ease}.cad-preview-remove:hover{background:#b91c1c;transform:scale(1.05)}.cad-gallery-dropzone{min-height:96px;padding:10px;display:block}.cad-gallery-dropzone .cad-dropzone-content{padding:18px 20px}.cad-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:8px}.cad-gallery-thumb{position:relative;border-radius:var(--jw-radius-sm);overflow:hidden;aspect-ratio:1 / 1;border:1px solid var(--jw-border);background:var(--jw-surface)}.cad-gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block}.cad-gallery-thumb.is-main{border-color:var(--jw-accent);box-shadow:0 0 0 2px #c5a05959}.cad-gallery-main-badge{position:absolute;bottom:4px;left:4px;background:#5c4a37e6;color:var(--jw-accent-soft);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 6px;border-radius:6px}.cad-gallery-remove{position:absolute;top:4px;right:4px;width:20px;height:20px;border-radius:50%;border:none;background:#d11a2aeb;color:#fff;font-size:13px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .15s ease,transform .15s ease}.cad-gallery-remove:hover{background:var(--jw-danger);transform:scale(1.08)}.cad-gallery-add-more{display:flex;align-items:center;justify-content:center;aspect-ratio:1 / 1;border:2px dashed var(--jw-border-strong);border-radius:var(--jw-radius-sm);color:var(--jw-accent-dark);font-size:12px;font-weight:700;cursor:pointer;transition:all .2s ease}.cad-gallery-add-more:hover{border-color:var(--jw-accent);background-color:var(--jw-accent-soft)}.add-product-name,.add-category,.add-weight,.add-size,.add-dimensions{display:flex;flex-direction:column;gap:6px}.add-product-name p,.add-category p,.add-weight p,.add-size p,.add-dimensions p{font-size:12.5px;font-weight:600;color:var(--jw-text-heading);opacity:.9}.add-product-name input,.add-weight input,.add-size input,.add-dimensions input,.add-category input{width:100%;padding:9px 12px;border:1px solid var(--jw-border-strong);border-radius:var(--jw-radius-sm);background:#fcfbfa;color:var(--jw-text-body);font-size:13.5px;transition:all .25s ease;-moz-appearance:none;appearance:none;-webkit-appearance:none;font-family:var(--jw-font)}.add-product-name input:focus,.add-weight input:focus,.add-size input:focus,.add-dimensions input:focus,.add-category input:focus{outline:none;border-color:var(--jw-accent);background-color:var(--jw-surface);box-shadow:var(--jw-shadow-focus)}.category-dropdown{position:relative;width:100%}.category-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:9px 12px;border:1px solid var(--jw-border-strong);border-radius:var(--jw-radius-sm);background:#fcfbfa;color:var(--jw-text-body);font-size:13.5px;font-weight:600;cursor:pointer;transition:all .2s ease}.category-trigger:hover{border-color:var(--jw-accent);background:var(--jw-accent-soft)}.category-trigger.is-open{border-color:var(--jw-accent);background-color:var(--jw-surface);box-shadow:var(--jw-shadow-focus)}.category-chevron{color:var(--jw-accent-dark);flex-shrink:0;transition:transform .2s ease}.category-chevron.is-open{transform:rotate(180deg)}.category-panel{position:absolute;z-index:20;top:calc(100% + 8px);left:0;right:0;margin:0;padding:8px;list-style:none;background:var(--jw-surface);border:1px solid var(--jw-border);border-radius:var(--jw-radius-md);box-shadow:var(--jw-shadow-card-hover);max-height:260px;overflow-y:auto;animation:category-panel-in .16s ease}@keyframes category-panel-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.category-option{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-radius:var(--jw-radius-sm);font-size:13.5px;color:var(--jw-text-body);cursor:pointer;transition:background-color .15s ease,color .15s ease}.category-option:hover{background:var(--jw-accent-soft);color:var(--jw-accent-dark)}.category-option.is-selected{background:var(--jw-accent-soft);color:var(--jw-accent-dark);font-weight:700}.category-option.is-selected svg{color:var(--jw-accent)}.category-option-add{margin-top:6px;border-top:1px solid var(--jw-border);border-radius:0;padding-top:13px;color:var(--jw-accent-dark);font-weight:600}.category-option-add:hover{background:var(--jw-accent-soft)}.add-product-name input::placeholder,.add-weight input::placeholder,.add-size input::placeholder,.add-dimensions input::placeholder,.add-category input::placeholder{color:var(--jw-text-faint)}.add-category-custom-row{display:flex;gap:10px;align-items:center}.add-category-custom-row input{flex:1}.add-category button{padding:9px 16px;background:var(--jw-neutral-bg);color:var(--jw-neutral);border:1px solid var(--jw-border-strong);border-radius:var(--jw-radius-sm);font-size:12.5px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.add-category button:hover{background:var(--jw-border-strong);color:var(--jw-text-heading)}.add-multi-field{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.cad-upload-btn{width:100%;padding:11px 24px;border:none;border-radius:var(--jw-radius-sm);background:var(--jw-primary);color:#fff;font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 12px #5c4a3726}.cad-upload-btn:hover{background:var(--jw-primary-hover);box-shadow:0 6px 16px #5c4a3740;transform:translateY(-1px)}.cad-upload-btn:active{transform:translateY(0)}@media (max-width: 768px){.add-multi-field{grid-template-columns:1fr}.cad-upload.add{padding:20px;border-radius:var(--jw-radius-md)}}.list-container{width:100%;min-height:100vh;background-color:#faf8f5;padding:40px 20px;box-sizing:border-box;font-family:Inter,-apple-system,sans-serif}.list-card-wrapper{width:100%;max-width:1200px;margin:0 auto;background-color:#fff;border:1px solid #EFEAE2;border-radius:16px;padding:30px;box-shadow:0 10px 30px #8b735508}.list-top-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;margin-bottom:25px;border-bottom:1px solid #F3EDE2;padding-bottom:20px}.list-title-header h2{color:#5c4a37;font-size:24px;font-weight:600;margin:0 0 4px;letter-spacing:-.5px}.list-title-header p{color:#a3907a;font-size:13px;margin:0}.search-input-wrapper{position:relative;width:100%;max-width:320px}.list-search-bar{width:100%;border:1px solid #D9CFC1;border-radius:8px;padding:10px 14px;font-size:14px;color:#4a3e31;background-color:#fcfbfa;outline:none;transition:all .25s ease;box-sizing:border-box}.list-search-bar:focus{border-color:#c5a059;background-color:#fff;box-shadow:0 0 0 3px #c5a0591f}.category-tabs-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.category-tab-chip{background-color:#fcfbfa;border:1px solid #D9CFC1;color:#7e7060;padding:7px 16px;border-radius:20px;font-size:12.5px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.category-tab-chip:hover{border-color:#c5a059;color:#c5a059;background-color:#fff}.category-tab-chip.active-chip{background-color:#5c4a37;border-color:#5c4a37;color:#fff;font-weight:600}.add-category-chip{border-style:dashed;color:#c5a059;border-color:#c5a059;background-color:#fff;font-weight:600}.add-category-chip:hover{background-color:#faf6ee}.add-category-input-group{display:flex;align-items:center;gap:6px}.add-category-input{border:1px solid #C5A059;border-radius:20px;padding:6px 14px;font-size:12.5px;color:#4a3e31;outline:none;background-color:#fff;min-width:160px}.add-category-confirm-btn{background-color:#5c4a37;color:#fff;border:none;border-radius:20px;padding:7px 14px;font-size:12px;font-weight:600;cursor:pointer}.add-category-confirm-btn:hover{background-color:#473829}.add-category-cancel-btn{background:transparent;border:1px solid #D9CFC1;color:#7e7060;border-radius:50%;width:28px;height:28px;cursor:pointer;font-size:12px}.table-responsive-scroll{width:100%;overflow-x:auto;border-radius:8px;border:1px solid #EFEAE2;background-color:#fff}.luxury-data-table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}.luxury-data-table th{background-color:#fcfbfa;color:#6e5a44;font-weight:600;padding:14px 16px;border-bottom:1px solid #EFEAE2;font-size:13px;letter-spacing:.2px}.luxury-data-table td{padding:12px 16px;border-bottom:1px solid #F6F3ED;vertical-align:middle}.luxury-data-table tbody tr:hover{background-color:#fffcf7}.table-image-container{position:relative;width:64px;height:64px;border:1px solid #EFEAE2;border-radius:8px;overflow:hidden;background-color:#fcfbfa;display:flex;justify-content:center;align-items:center}.table-item-img{width:100%;height:100%;object-fit:cover}.image-change-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#5c4a37bf;display:flex;justify-content:center;align-items:center;opacity:0;cursor:pointer;transition:opacity .2s ease}.image-change-overlay span{color:#fff;font-size:11px;font-weight:500}.table-image-container:hover .image-change-overlay{opacity:1}.table-inline-input,.table-inline-textarea,.table-inline-select{width:100%;background:transparent;border:1px solid transparent;border-radius:6px;padding:8px 10px;font-size:14px;color:#4a3e31;font-family:inherit;box-sizing:border-box;outline:none;transition:all .2s ease}.table-inline-input.editable:hover,.table-inline-textarea.editable:hover,.table-inline-select.editable:hover{border-color:#d9cfc1;background-color:#fcfbfa}.table-inline-input.editable:focus,.table-inline-textarea.editable:focus,.table-inline-select.editable:focus{border-color:#c5a059;background-color:#fff;box-shadow:0 0 0 3px #c5a05914}.table-inline-textarea{resize:none}.name-field{font-weight:500;color:#3b3024}.read-only{color:#7e7060;cursor:not-allowed;-webkit-appearance:none;-moz-appearance:none;appearance:none}.table-price-wrapper{position:relative;display:flex;align-items:center}.table-currency-symbol{position:absolute;left:8px;color:#8c7c68;font-size:14px;font-weight:500;pointer-events:none}.price-input-field{padding-left:22px!important}.table-action-buttons{display:flex;gap:8px;justify-content:flex-end}.row-save-btn,.row-delete-btn{border:none;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.row-save-btn{background-color:#5c4a37;color:#fff}.row-save-btn:hover{background-color:#473829}.row-delete-btn{background-color:#fdf2f2;color:#9c3a3a;border:1px solid #FAD7D7}.row-delete-btn:hover{background-color:#9c3a3a;color:#fff;border-color:#9c3a3a}.table-status-message{text-align:center;padding:50px 0!important}.spinner-loader{width:28px;height:28px;margin:0 auto 12px;border:3px solid #F3EDE2;border-top-color:#c5a059;border-radius:50%;animation:spinner-rotate .7s linear infinite}@keyframes spinner-rotate{to{transform:rotate(360deg)}}.status-text{font-size:14px;color:#a3907a;display:block}.status-text.no-data{color:#bcb0a1;font-style:italic}.luxury-pagination-nav{display:flex;justify-content:space-between;align-items:center;margin-top:25px;padding-top:20px;border-top:1px solid #F3EDE2}.pag-nav-btn{background-color:#fff;border:1px solid #D9CFC1;color:#5c4a37;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.pag-nav-btn:hover:not(:disabled){border-color:#c5a059;color:#c5a059}.pag-nav-btn:disabled{opacity:.4;cursor:not-allowed}.pag-numbers-container{display:flex;gap:6px}.pag-number-btn{background:transparent;border:1px solid transparent;color:#7e7060;width:32px;height:32px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;display:flex;justify-content:center;align-items:center;transition:all .2s ease}.pag-number-btn:hover{background-color:#fcfbfa;color:#c5a059}.pag-number-btn.active-page{background-color:#f5efe4;border-color:#c5a059;color:#5c4a37;font-weight:600}@media (max-width: 768px){.list-top-bar{flex-direction:column;align-items:flex-start}.search-input-wrapper{max-width:100%}.list-card-wrapper{padding:16px}}.admin-ticker-container{max-width:800px;margin:20px auto;padding:24px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000014;font-family:system-ui,-apple-system,sans-serif}.admin-subtitle{color:#666;font-size:14px;margin-bottom:20px}.status-alert{padding:12px;border-radius:6px;margin-bottom:16px;font-weight:500}.status-alert.success{background:#e6f4ea;color:#137333}.status-alert.error{background:#fce8e6;color:#c5221f}.admin-ticker-preview-section{margin-bottom:24px}.admin-ticker-preview{padding:10px 16px;border:1px solid;border-radius:6px;font-size:13px;font-weight:500;display:flex;align-items:center;overflow:hidden;white-space:nowrap}.admin-ticker-form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px;flex:1}.form-group label{font-size:13px;font-weight:600;color:#333}.form-group input[type=text],.form-group input[type=number],.form-group textarea{padding:10px;border:1px solid #ccc;border-radius:5px;font-size:14px}.toggle-group{flex-direction:row;align-items:center;gap:12px}.toggle-group input[type=checkbox]{width:20px;height:20px;cursor:pointer}.form-row{display:flex;gap:16px}.color-picker-input{display:flex;align-items:center;gap:8px}.color-picker-input input[type=color]{border:none;width:36px;height:36px;cursor:pointer;background:none}.save-btn{padding:12px;background-color:#2563eb;color:#fff;border:none;border-radius:6px;font-size:15px;font-weight:600;cursor:pointer;margin-top:12px}.save-btn:hover{background-color:#1d4ed8}.save-btn:disabled{background-color:#93c5fd;cursor:not-allowed}*{padding:0;margin:0;box-sizing:border-box;font-family:Outfit}body{min-height:100vh;background-color:#fcfcfc}a{text-decoration:none;color:inherit}hr{border:none;height:1px;background-color:#a9a9a9}.app-content{display:flex}.flex-col{display:flex;flex-direction:column;gap:10px}.cursor{cursor:pointer}
