@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{color:#111827;font-synthesis:none;background:#f4f6fb;font-family:Inter,Arial,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer}svg{width:20px;height:20px}.primary,.green,.topbar button{border:0;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:14px;font-weight:600;display:inline-flex}.primary{box-shadow:0 12px 24px #1111af24;color:#fff!important;background:#1111af!important}.green{color:#fff!important;background:#078848!important}.login{--brand:#1111af;place-items:center;min-height:100vh;display:grid}.login.purple{--brand:#5d0aa3}.login .primary{box-shadow:0 12px 24px color-mix(in srgb, var(--brand) 25%, transparent);background:var(--brand)!important}.login-card{background:#fff;border-radius:36px;grid-template-columns:45% 55%;width:min(1120px,90vw);min-height:620px;display:grid;overflow:hidden;box-shadow:0 28px 70px #8790a92b}.welcome{background:var(--brand);color:#fff;text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.welcome:after{content:"";border:1px solid #ffffff25;border-radius:50%;width:520px;height:520px;position:absolute;bottom:-270px;left:-180px}.logo-wrap{place-items:center;width:180px;height:180px;margin-bottom:18px;display:grid;position:relative}.logo-ring{border:1.7px dashed #ffffff52;border-radius:50%;animation:18s linear infinite ring;position:absolute;inset:0}.brand-logo{z-index:2;object-fit:contain;background:#fff;border-radius:50%;width:128px;height:128px;padding:8px;animation:3.2s ease-in-out infinite glow}.welcome h1{margin:18px 0 7px;font-size:29px}.welcome p{opacity:.78;font-weight:700}.login form{align-self:center;gap:20px;padding:58px;display:grid}.eyebrow,.login label,.modal label{text-transform:uppercase;color:#475569;font-size:13px;font-weight:700}.roles{grid-template-columns:1fr 1fr;gap:14px;display:grid}.roles button{background:#fff;border:1px solid #e4e7ec;border-radius:17px;justify-content:center;align-items:center;gap:12px;min-height:64px;font-weight:800;display:flex}.roles button.active{color:#fff;background:var(--brand);box-shadow:0 14px 24px color-mix(in srgb, var(--brand) 25%, transparent)}input,select{background:#fff;border:1px solid #e2e6ed;border-radius:15px;outline:none;width:100%;padding:15px 16px}.login label{gap:10px;display:grid}.form-error{color:#dc2626;background:#fff1f2;border-radius:10px;padding:10px}.app{--sidebar-width:312px;grid-template-columns:var(--sidebar-width) minmax(0, 1fr);min-height:100vh;transition:grid-template-columns .25s;display:grid}.app.sidebar-expanded{grid-template-columns:var(--sidebar-width) minmax(0, 1fr)}.app.sidebar-collapsed{grid-template-columns:0 minmax(0,1fr)}.sidebar{width:var(--sidebar-width);z-index:20;opacity:1;visibility:visible;background:#fff;border-right:1px solid #e6e8ef;min-width:0;max-height:100vh;padding:16px 14px;transition:transform .25s,opacity .2s,visibility .25s;position:sticky;top:0;overflow:auto;transform:translate(0)}.sidebar.closed{opacity:0;visibility:hidden;pointer-events:none;transform:translate(-100%)}aside{background:#fff;border-right:1px solid #e6e8ef;max-height:100vh;padding:16px 14px;position:sticky;top:0;overflow:auto}.brand{align-items:center;gap:10px;min-height:52px;padding-right:58px;display:flex;position:relative}.brand>img{object-fit:contain;flex:none;width:42px;height:42px}.brand-text{flex-direction:column;min-width:0;display:flex}.brand-text b,.brand-text small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-close{color:#0017a8;cursor:pointer;background:#e3e7ff;border:0;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;padding:0;font-size:28px;font-weight:600;line-height:1;transition:background-color .2s,color .2s,transform .2s;display:flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.sidebar-close:hover{color:#000d78;background:#cfd5ff;transform:translateY(-50%)scale(1.05)}.sidebar-close:focus-visible,.sidebar-open:focus-visible{outline-offset:3px;outline:3px solid #818cf8}.sidebar-open{z-index:1100;color:#fff;cursor:pointer;background:#0017a8;border:0;border-radius:0 10px 10px 0;justify-content:center;align-items:center;width:36px;height:46px;padding:0;font-size:30px;font-weight:600;line-height:1;transition:width .2s,background-color .2s,box-shadow .2s;display:flex;position:fixed;top:25px;left:0;box-shadow:5px 8px 22px #0017a83b}.sidebar-open:hover{background:#1111af;width:40px;box-shadow:7px 10px 26px #0017a84d}.brand div{display:grid}.brand small{color:#64748b}.side-search{border:1px solid #e4e7ee;border-radius:12px;align-items:center;gap:9px;margin:16px 0;padding:0 12px;display:flex;position:relative}.side-search input{border:0;min-width:0;padding:10px 0;font-size:14px}.side-search button{background:0 0;border:0;padding:3px}.side-search button svg{width:15px;height:15px}.side-title{justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.side-title span{color:#1111af;white-space:nowrap;background:#eef0ff;border-radius:18px;padding:6px 10px;font-weight:700}.side-link{color:#526078;text-align:left;background:#fff;border:0;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;width:100%;margin:10px 0;padding:8px 12px;font-size:13px;font-weight:650;line-height:1.1;display:flex}.side-link:hover{color:#0505a2;background:#f4f5ff}.side-link.active{color:#0505a2;background:#eceeff}.side-link span{color:#09089c;letter-spacing:.01em;background:#f4f3ff;border:1px solid #ddddfe;border-radius:999px;flex:none;justify-content:center;align-items:center;min-width:42px;height:24px;padding:0 10px;font-size:12px;font-weight:800;line-height:1;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffffbf}.side-empty{color:#64748b;text-align:center;padding:18px;font-size:13px}.content{width:100%;min-width:0;padding:22px 26px}.sidebar-backdrop{display:none}.sidebar-close svg{stroke-width:3px;width:24px;height:24px}.sidebar-open svg{stroke-width:3px;width:26px;height:26px}.topbar{background:#fff;border:1px solid #e6e8ed;border-radius:26px;justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;display:flex}.topbar h2,.topbar p{margin:3px 0}.topbar p{color:#718096;font-size:14px}.topbar nav{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.topbar button{white-space:nowrap;background:#fff;border:1px solid #e3e6ed;min-height:44px;font-size:12px}.sync{white-space:nowrap;background:#fff;border:1px solid #e3e6ed;border-radius:16px;align-items:center;gap:12px;padding:8px;display:inline-flex}.sync-icon{color:#1600ff;stroke-width:2px;flex-shrink:0;width:20px;height:20px}.sync-content{flex-direction:column;gap:1px;display:flex}.sync-content b{color:#334155;font-size:12px;line-height:1.2}.sync-content small{color:#64748b;font-size:11px;line-height:1.2}.notice{color:#334155;cursor:pointer;width:44px;min-width:44px;height:44px;transition:border-color .2s,background-color .2s,color .2s;position:relative;background:#fff!important;border:1px solid #e3e6ed!important;border-radius:14px!important;padding:0!important}.notice:hover,.notice[aria-expanded=true]{color:#1111af;background:#f5f5ff!important;border-color:#c7c9ff!important}.notice svg{width:20px;height:20px}.notice-badge{color:#fff;background:#ef4444;border:2px solid #fff;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 5px;font-size:10px;font-weight:800;line-height:1;display:inline-flex;position:absolute;top:-6px;right:-6px}.pagination{justify-content:flex-end;align-items:center;gap:10px;padding:24px 28px;display:flex;overflow-x:auto}.pagination button{color:#111827;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:10px;min-width:40px;height:38px;padding:0 5px;font-size:12px;font-weight:600;transition:color .2s,background .2s,border-color .2s}.pagination button:hover:not(:disabled):not(.active){color:#10069f;border-color:#10069f}.pagination button.active{color:#fff;background:#10069f;border-color:#10069f;font-weight:700}.pagination button:disabled{color:#d1d5db;cursor:not-allowed;background:#fafafa}.pagination-ellipsis{color:#6b7280;text-align:center;min-width:24px}@media (width<=640px){.pagination{justify-content:flex-start;padding:18px 16px}.pagination button{min-width:44px;height:44px}}.panel{background:#fff;border:1px solid #e6e8ed;border-radius:26px;margin-top:24px;padding:26px}.panel-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.panel h3,.panel p{margin:3px 0}.panel p,.modal p{color:#718096}.filters{grid-template-columns:minmax(0,1fr) 275px;gap:12px;margin:18px 0;display:grid}.filters label{position:relative}.filters label svg{color:#1010ae;position:absolute;top:15px;left:15px}.filters input{background:#f8fafc;padding-left:46px}.product-table{overflow:auto}.product-row{border-bottom:1px solid #edf0f5;grid-template-columns:60px 120px 170px 90px minmax(220px,1fr) 80px 110px 230px;align-items:center;gap:20px;min-width:1120px;padding:16px 12px;font-size:14px;display:grid}.product-row.head{color:#657084;font-size:12px;font-weight:800}.serial{color:#0808a2;text-align:center;background:#eef;border:1px solid #d9dcff;border-radius:24px;padding:7px;font-weight:800}.product-image{object-fit:contain;background:#f8fafc;border-radius:12px;width:58px;height:58px}.product-image.default-product-logo{filter:grayscale();opacity:.45;padding:8px}.product-image,.image-placeholder{object-fit:contain;background:#f7f8fc;border:1px solid #edf0f5;border-radius:12px;width:70px;height:62px}.image-placeholder{color:#cbd5e1;place-items:center;display:grid}.uom{color:#1111af;text-align:center;background:#eef0ff;border-radius:20px;padding:8px}.actions{gap:7px;display:flex}.actions button{background:#fff;border:1px solid #e4e7ed;border-radius:12px;align-items:center;gap:6px;padding:9px 11px;display:inline-flex}.actions .delete{color:#ef4444;background:#fff5f5}.empty{color:#64748b;align-content:center;place-items:center;min-height:290px;display:grid}.empty>svg{color:#1111af;width:42px;height:42px}.empty h3{color:#111827;margin-bottom:0}.backdrop{-webkit-backdrop-filter:blur(7px);z-index:50;overscroll-behavior:contain;background:#1f293780;place-items:center;padding:18px;display:grid;position:fixed;inset:0;overflow:hidden}.modal{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#fff;border-radius:28px;width:min(880px,96vw);max-height:94vh;overflow:auto;box-shadow:0 30px 80px #0005}.modal.wide{width:min(1250px,96vw)}.modal>header{z-index:5;background:#fff;border-bottom:1px solid #e7e9ef;justify-content:space-between;padding:24px 26px 8px;display:flex;position:sticky;top:0}.modal header h2{margin:0}.modal header p{margin:4px}.icon-btn{background:#fff;border:1px solid #e4e7ed;border-radius:14px;height:42px;padding:10px}.three-col{grid-template-columns:1.3fr .9fr 1fr;gap:22px;padding:26px;display:grid}.card-form{background:#fafbff;border:1px solid #e0e5ef;border-radius:24px;min-width:0;margin:0;padding:0 20px 20px}.card-form h3{border-bottom:1px solid #e0e5ef;align-items:center;gap:10px;padding-bottom:14px;display:flex}.card-form label{grid-template-columns:145px minmax(0,1fr);align-items:center;margin:12px 0;display:grid}.image-upload{background:#f0f2ff;border-radius:20px;grid-template-columns:145px 1fr;align-items:center;gap:18px;margin-bottom:18px;padding:18px;display:grid}.preview{color:#94a3b8;background:#e9ecff;border-radius:18px;place-items:center;display:grid;overflow:hidden}.preview img{object-fit:contain;width:100%;height:100%}.preview img.default-preview-logo{filter:grayscale();opacity:.45}.image-upload p{font-size:13px}.save-product{width:100%;margin-top:12px}.bulk-upload-section{background:#fafbff;border:1px solid #e0e5ef;border-radius:24px;min-width:0;padding:0 20px 20px}.bulk-upload-card{overflow:hidden}.bulk-upload-card h3{align-items:center;gap:10px;display:flex}.bulk-upload-form-card{background:#fff;border:1px solid #e0e5ef;border-radius:24px;min-width:0;padding:20px}.file-choice{cursor:pointer;background:#fff;border:1px solid #e1e5ed;border-radius:16px;justify-content:center;gap:8px;padding:15px;grid-template-columns:none!important;display:flex!important}.file-choice svg{width:18px;height:18px}.file-choice:has(input:disabled){cursor:not-allowed;opacity:.65}.zip-choice{color:#124f8c;background:#f2f8ff;border-color:#b9d8f8;margin-top:16px}.file-name{color:#64748b;white-space:nowrap;text-overflow:ellipsis;background:#f8fafc;border:1px solid #e4e7ed;border-radius:12px;align-items:center;min-height:48px;margin:14px 0;padding:0 14px;font-size:14px;font-weight:500;display:flex;overflow:hidden}.bulk-button{color:#fff;cursor:pointer;background:#2015b8;border:0;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:55px;padding:14px;font-size:15px;font-weight:800;transition:background .25s,box-shadow .25s,opacity .25s;display:flex;box-shadow:0 10px 20px #2015b82e}.bulk-button svg{width:19px;height:19px}.bulk-button:disabled{cursor:not-allowed;opacity:.55}.bulk-button.uploaded,.bulk-button.uploaded:disabled{color:#fff;opacity:1;background:#16a34a;box-shadow:0 10px 20px #16a34a33}.upload-progress-card{background:#fff;border:1px solid #e1e5ed;border-radius:16px;margin-top:15px;padding:14px 13px}.upload-progress-info{justify-content:space-between;align-items:center;gap:10px;display:flex}.upload-progress-info span{color:#64748b;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:14px;font-weight:700;overflow:hidden}.upload-progress-info b{color:#2015b8;flex-shrink:0;font-size:14px}.upload-progress-track{background:#e4e7ed;border-radius:999px;width:100%;height:10px;margin-top:11px;overflow:hidden}.upload-progress-bar{border-radius:inherit;background:#2411eb;height:100%;transition:width .18s}.bulk-button.uploaded+.upload-progress-card .upload-progress-info b{color:#16a34a}.bulk-button.uploaded+.upload-progress-card .upload-progress-bar{background:#16a34a}.format{color:#64748b;text-align:center;margin:16px 0 0;font-size:12px;line-height:1.6}.remove-all-products{color:#ef2929;cursor:pointer;background:#fff7f7;border:2px solid #ff3b3b;border-radius:20px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:58px;margin-top:28px;font-size:15px;font-weight:800;transition:color .2s,background .2s,box-shadow .2s,opacity .2s;display:flex}.remove-all-products svg{width:19px;height:19px}.remove-all-products:hover:not(:disabled){background:#f7737357;box-shadow:0 10px 22px #ef292933}.remove-all-products:disabled{cursor:not-allowed;opacity:.55}.danger{color:#dc2626;background:#fff8f8;border:2px solid #ef4444;border-radius:15px;justify-content:center;gap:8px;width:100%;margin-top:28px;padding:15px;font-weight:800;display:flex}.stacked{text-transform:none!important;display:block!important}.stacked>div{margin-top:9px}.add-category{grid-template-columns:1fr auto;gap:9px;display:grid}.category-search{position:relative}.category-search svg{color:#1111af;position:absolute;top:14px;left:14px}.category-search input{padding-left:45px}.category-tools{gap:10px;margin:16px 0;display:flex}.category-tools button{color:#0808a2;background:#f7f7ff;border:1px solid #d8dcff;border-radius:20px;padding:10px;font-size:14px;font-weight:700}.category-tools .delete-selected{color:#ef4444;background:#fff8f8;border-color:#fee2e2;justify-content:center;align-items:center;gap:5px;font-weight:700;display:flex}.category-tools .delete-selected svg{flex-shrink:0;width:15px;height:15px}.category-tools button:disabled{opacity:.45}.category-list{scrollbar-width:auto;scrollbar-color:#8d8d8d transparent;max-height:320px;padding-right:4px;overflow-y:auto}.category-list::-webkit-scrollbar{width:11px}.category-list::-webkit-scrollbar-track{background:0 0}.category-list::-webkit-scrollbar-thumb{background:#8d8d8d;border:2px solid #fff;border-radius:999px}.category-item{box-sizing:border-box;background:#fff;border:1px solid #e5e7eb;border-radius:20px;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:46px;margin:6px 0;padding:10px 15px;transition:border-color .2s,background-color .2s;display:grid}.category-item.selected{background:#f3f1ff;border-color:#afa2ff}.category-item input[type=checkbox]{appearance:none;cursor:pointer;background:#fff;border:2px solid #cfd6e1;border-radius:6px;place-content:center;width:20px;height:20px;margin:0;padding:11px;display:grid}.category-item input[type=checkbox]:before{content:"";opacity:0;border-bottom:2px solid #fff;border-left:2px solid #fff;width:12px;height:7px;transform:translateY(-1px)rotate(-45deg)}.category-item input[type=checkbox]:checked{background:#1710ad;border-color:#1710ad}.category-item input[type=checkbox]:checked:before{opacity:1}.category-info{gap:3px;min-width:0;display:grid}.category-info b{color:#070707;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;line-height:1.15;overflow:hidden}.category-info small{color:#64748b;font-size:14px;font-weight:500}.category-item button{color:#ff2929;cursor:pointer;background:#fff3f3;border:1px solid #ffd2d2;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 17px;font-size:14px;font-weight:700;transition:background-color .2s,transform .2s;display:inline-flex}.category-item button svg{stroke-width:2px;flex-shrink:0;width:17px;height:17px}.category-item button:hover{background:#ffe5e5;transform:translateY(-1px)}.category-item button:active{transform:translateY(0)}.modal-body{padding:24px}.modal-body label{gap:8px;margin:12px 0;display:grid}.two{grid-template-columns:1fr 1fr;gap:20px;display:grid}.upload-row{border:1px solid #e4e7ed;border-radius:18px;justify-content:space-between;align-items:center;margin:12px 0;padding:18px;display:flex}.upload-row small{color:#64748b;display:block}.modal footer{border-top:1px solid #e4e7ed;justify-content:flex-end;gap:12px;padding:18px 28px;display:flex}.modal footer button{background:#fff;border:1px solid #e4e7ed;border-radius:14px;padding:13px 20px}:is(.modal:has(.product-view),.modal:has(.edit-product)){border-radius:36px;width:min(1100px,100vw - 40px);max-width:1000px;overflow:hidden}.product-view,.edit-product{grid-template-columns:313px 1fr;gap:30px;padding:32px;display:grid}.product-view-image-card,.edit-product-image-card{text-align:center;background:#f8fafc;border:1px solid #e5e7eb;border-radius:22px;flex-direction:column;align-items:center;min-height:300px;padding:16px;display:flex}.product-view-image,.edit-product-image{background:#fff;border-radius:16px;place-items:center;width:100%;height:120px;display:grid;overflow:hidden}.product-view-image img,.edit-product-image img{object-fit:contain;width:100%;height:110px}.no-image-layer{border-radius:inherit;background:#fff;place-items:center;width:100%;height:100%;display:grid;position:relative;overflow:hidden}.product-view-image .no-image-layer img,.edit-product-image .no-image-layer img{object-fit:contain;filter:grayscale();opacity:.1;width:88px;height:88px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.no-image-layer span{z-index:1;color:#94a3b8;font-size:17px;font-weight:700;position:relative}.product-view-image-card b,.edit-product-image-card b{color:#334155;margin-top:18px;font-size:16px;display:block}.product-view-image-card p,.edit-product-image-card p{color:#64748b;margin:28px 0 0;font-size:15px;line-height:1.45}.product-view-details{gap:14px;margin:0;display:grid}.product-view-details>div{border:0;grid-template-columns:36% minmax(0,1fr);align-items:center;padding:0;display:grid}.product-view-details dt{color:#334155;font-size:13px;font-weight:700}.product-view-details dd{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:18px;align-items:center;min-height:60px;margin:0;padding:0 18px;font-size:15px;font-weight:500;display:flex}.edit-product-fields{gap:14px;display:grid}.edit-product-fields label{color:#334155;grid-template-columns:36% minmax(0,1fr);align-items:center;font-size:13px;font-weight:700;display:grid}.edit-product-fields input,.edit-product-fields select{color:#111827;width:100%;height:60px;font:inherit;background:#fff;border:1px solid #e2e8f0;border-radius:18px;outline:none;padding:0 18px}.edit-product-fields input:focus,.edit-product-fields select:focus{border-color:#2015b8;box-shadow:0 0 0 3px #2015b81a}.upload-edit-image{border-radius:16px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:50px;margin-top:auto;display:flex}.upload-edit-image svg{width:18px;height:18px}.product-view-footer,.edit-product-footer{background:#fff;border-top:1px solid #e5e7eb;justify-content:flex-end;gap:14px;padding:24px 32px;display:flex}.product-view-footer button,.edit-product-footer button{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:16px;justify-content:center;align-items:center;gap:8px;min-height:52px;padding:0 24px;font-weight:700;display:inline-flex}.edit-product-footer button.primary{color:#fff;background:#2015b8;border-color:#2015b8}.edit-product-footer button:disabled{cursor:not-allowed;opacity:.65}@media (width<=760px){:is(.modal:has(.product-view),.modal:has(.edit-product)){border-radius:24px;width:calc(100vw - 24px);max-height:calc(100vh - 24px)}.product-view,.edit-product{grid-template-columns:1fr;padding:20px}.product-view-image-card,.edit-product-image-card{min-height:300px}.product-view-details>div,.edit-product-fields label{grid-template-columns:1fr;gap:7px}.product-view-footer,.edit-product-footer{padding:18px 20px}}.toast{z-index:100;color:#fff;border-radius:12px;align-items:center;gap:10px;min-width:300px;max-width:450px;padding:14px 16px;display:flex;position:fixed;top:20px;right:24px;box-shadow:0 15px 40px #0003}.toast.success{background:#16a34a}.toast.error{background:#dc2626}.toast button{color:#fff;background:0 0;border:0;margin-left:auto;padding:2px}.toast button svg{width:16px}.stats{grid-template-columns:repeat(4,1fr);gap:18px;margin-top:28px;display:grid}.stats>div{background:#fff;border:1px solid #e6e8ed;border-radius:25px;grid-template-columns:36px 1fr;align-items:center;padding:28px;display:grid}.stats b{font-size:28px}.stats span{color:#64748b;grid-column:2}.order-row{border:1px solid #e6e8ed;border-radius:24px;grid-template-columns:50px 120px 1fr 130px 120px 100px 70px;align-items:center;gap:14px;margin:12px 0;padding:18px 22px;display:grid}.order-row div{display:grid}.order-row small{color:#718096;margin-top:6px}.order-row em{color:#d24523;text-align:center;background:#fff0eb;border-radius:20px;padding:8px;font-style:normal}.page-loading{justify-content:center;align-items:center;gap:10px;min-height:100vh;display:flex}.spin{animation:1s linear infinite ring}@keyframes ring{to{transform:rotate(360deg)}}@keyframes glow{50%{box-shadow:0 0 0 13px #ffffff20,0 18px 38px #0004}}@media (width<=1200px){.app{grid-template-columns:250px minmax(0,1fr)}.topbar{flex-direction:column;align-items:flex-start}.topbar nav{flex-wrap:wrap;width:100%}.three-col{grid-template-columns:1fr 1fr}.category-manager{grid-column:1/-1}}@media (width<=800px){.app{display:block}aside{border-bottom:1px solid #e6e8ef;border-right:0;max-height:none;position:static}.side-link:not(.active){display:none}.content{padding:12px}.login-card{border-radius:0;grid-template-columns:1fr;width:100%;min-height:100vh}.welcome{min-height:260px;padding:20px}.logo-wrap{width:120px;height:120px;margin:0}.brand-logo{width:88px;height:88px}.welcome h1{margin:10px 0 4px;font-size:21px}.welcome p{font-size:11px}.login form{padding:25px 18px 35px}.roles{grid-template-columns:1fr}.topbar{border-radius:18px;padding:16px}.topbar nav{grid-template-columns:1fr 1fr;display:grid}.sync{grid-column:1/-1}.panel{border-radius:18px;margin-top:12px;padding:14px}.panel-heading{flex-direction:column;align-items:stretch}.panel-heading>button{width:100%}.filters{grid-template-columns:1fr}.three-col{grid-template-columns:1fr;padding:14px}.category-manager{grid-column:auto}.modal,.modal.wide{border-radius:22px;width:100%;max-height:calc(100dvh - 24px)}.backdrop{align-items:center;padding:12px}.card-form{padding:16px}.card-form label{grid-template-columns:1fr;gap:7px}.image-upload{grid-template-columns:100px 1fr;padding:12px}.preview{height:100px}.product-view{grid-template-columns:1fr;padding:18px}.product-view>img,.view-placeholder{width:100%;height:240px}.toast{min-width:0;top:12px;left:12px;right:12px}.stats{grid-template-columns:1fr 1fr;gap:10px}.order-row{min-width:800px}.two{grid-template-columns:1fr}}@media (width<=480px){.welcome{min-height:235px}.topbar nav{grid-template-columns:1fr}.sync{grid-column:auto}.three-col{padding:8px}.image-upload{text-align:center;grid-template-columns:1fr}.preview{width:120px;margin:auto}.add-category{grid-template-columns:1fr}.category-tools{flex-direction:column}.stats{grid-template-columns:1fr}.modal>header{padding:16px}.product-row{min-width:1040px}}@media (prefers-reduced-motion:reduce){.logo-ring,.brand-logo,.spin{animation:none}}.month-filter{position:relative;overflow:hidden}.month-filter input[type=month]{opacity:0;cursor:pointer;width:100%!important;height:100%!important;position:absolute!important;inset:0!important}.month-filter input[type=month]::-webkit-calendar-picker-indicator{cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.address-text{overflow-wrap:anywhere;word-break:break-word;width:180px;min-width:0;max-width:180px;line-height:1.45;display:block}.data-row{grid-template-columns:50px 160px minmax(180px,1fr) 110px 70px 110px 90px auto;align-items:start;column-gap:24px;display:grid}.data-row>.address-text{min-width:0;max-width:240px}.customer-table .row-actions{min-width:255px}.order-table .row-actions{min-width:0}.customer-details-dialog{width:min(950px,100vw - 32px);max-height:calc(100dvh - 30px)}.customer-details-dialog .modal-x,.modify-order .modal-x{background:#fff;border:1px solid #e2e7ee;border-radius:16px;place-items:center;width:52px;height:52px;display:grid}.customer-details-fields{gap:16px;padding:30px;display:grid;overflow:auto}.customer-details-fields label{color:#344054;text-transform:none;grid-template-columns:190px minmax(0,1fr);align-items:center;gap:18px;font-weight:700;display:grid}.customer-details-fields input,.customer-details-fields textarea,.readonly-value{color:#111827;background:#fff;border:1px solid #e1e6ed;border-radius:18px;min-height:58px;padding:16px 18px;font-weight:400}.customer-details-fields textarea{resize:vertical;min-height:90px;font:inherit}.readonly-value{color:#68758b;background:#f7f9fb}.address-value{white-space:pre-wrap;overflow-wrap:anywhere;min-height:90px}.customer-details-dialog footer{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:14px;padding:22px 30px;display:flex}.customer-details-dialog footer button{background:#fff;border:1px solid #e1e6ed;border-radius:16px;align-items:center;gap:8px;min-height:52px;padding:0 24px;font-weight:700;display:inline-flex}.order-print-sheet{display:none}@media print{@page{size:A4 portrait;margin:12mm}html,body,#root{background:#fff!important;width:100%!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important}body *{visibility:hidden!important}.order-print-sheet,.order-print-sheet *{visibility:visible!important}.order-print-sheet{z-index:2147483647;box-sizing:border-box;color:#000;break-inside:avoid;background:#fff;width:100%;height:auto;margin:0;padding:0;font-size:10pt;display:block;position:fixed;top:0;left:0}.order-print-sheet header{break-inside:avoid;border-bottom:2px solid #111;justify-content:space-between;align-items:center;padding-bottom:10px;display:flex}.order-print-sheet header h1{margin:0;font-size:18pt}.order-print-sheet header p{margin:4px 0 0;font-size:11pt;font-weight:700}.order-print-sheet section{break-inside:avoid;grid-template-columns:1fr 1fr;gap:6px 30px;margin:14px 0;display:grid}.order-print-sheet section p{margin:4px 0}.order-print-sheet table{border-collapse:collapse;width:100%}.order-print-sheet th,.order-print-sheet td{text-align:left;border:1px solid #777;padding:6px}.order-print-sheet tr{break-inside:avoid}.order-print-sheet tfoot{font-weight:800}}@media (width<=700px){.admin-scroll-table{overflow:visible}.admin-scroll-table .data-table{min-width:0!important}.admin-scroll-table .data-head{display:none}.admin-scroll-table .data-row{gap:12px 14px;padding:16px;grid-template-columns:70px minmax(0,1fr)!important;min-width:0!important;display:grid!important}.admin-scroll-table .data-row>*{grid-column:2;min-width:0}.admin-scroll-table .data-row>.serial{grid-area:1/1/span 2}.admin-scroll-table .data-row>.row-actions{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;min-width:0;display:grid}.admin-scroll-table .row-actions button{justify-content:center}.customer-table .data-row>span:before{color:#64748b;margin-bottom:4px;font-size:10px;font-weight:800;display:block}.customer-table .data-row>span:nth-child(3):before{content:"ADDRESS"}.customer-table .data-row>span:nth-child(4):before{content:"TIN NUMBER"}.customer-table .data-row>span:nth-child(5):before{content:"PHONE NUMBER"}.customer-table .data-row>span:nth-child(6):before{content:"WHATSAPP NUMBER"}.customer-details-fields{padding:18px}.customer-details-fields label{grid-template-columns:1fr;gap:7px}.customer-details-dialog footer{padding:16px 18px}.order-tools .month-filter{flex:100%;min-width:0}.order-table .data-row>.status{grid-column:2}.order-table .data-row>.customer-cell{padding:10px 0}.order-pagination{overflow-x:auto;justify-content:flex-start!important}}.month-filter span{color:#1111af}.month-filter input{cursor:pointer;border:0;padding:0;width:32px!important}.order-pagination{justify-content:flex-end!important}.admin-scroll-table{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;width:100%;padding-bottom:7px;overflow-x:auto}.admin-scroll-table::-webkit-scrollbar{height:10px}.admin-scroll-table::-webkit-scrollbar-thumb{background:#cbd2df;border-radius:999px}.admin-scroll-table::-webkit-scrollbar-track{background:#f1f3f7;border-radius:999px}.admin-scroll-table::-webkit-scrollbar-button{background:0 0;width:0;height:0;display:none}.admin-scroll-table::-webkit-scrollbar-button:single-button{background:0 0;width:0;height:0;display:none}.admin-scroll-table .order-table{min-width:1120px}.admin-scroll-table .customer-table{min-width:1150px}.order-selector{max-height:none;position:static;overflow:hidden}.selector-search{border:1px solid #e3e7ee;border-radius:14px;align-items:center;gap:8px;min-height:46px;padding:0 12px;display:flex}.selector-search svg{color:#1111af;width:16px}.selector-search input{border:0;padding:0;font-size:12px}.select-order-list,.remove-order-list{border:1px solid #e5e7eb;border-radius:14px;max-height:190px;margin-top:12px;overflow:auto}.select-order-list label,.remove-order-list label{cursor:pointer;border-bottom:1px solid #edf0f4;align-items:center;gap:10px;padding:12px;display:flex}.select-order-list input,.remove-order-list input,.modify-item>input:first-child{accent-color:#1111af;width:16px;height:16px}.select-order-list span,.remove-order-list span{gap:3px;display:grid}.select-order-list small,.remove-order-list small{color:#64748b}.remove-orders{background:#fff9f9;border:1px solid #fecaca;border-radius:16px;margin-top:12px;padding:12px}.remove-orders h4{color:#a61b1b;margin:0 0 10px}.remove-orders>button,.remove-selected-products{color:#b91c1c;background:#fff;border:1px solid #fecaca;border-radius:12px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:42px;font-size:12px;font-weight:700;display:flex}.remove-orders button:disabled,.remove-selected-products:disabled{opacity:.45;cursor:not-allowed}.remove-order-list{background:#fff;max-height:155px;margin-bottom:10px}.modify-head,.modify-item{grid-template-columns:28px minmax(230px,1fr) 60px 80px 105px 50px!important}.modify-item input[type=number]{border-radius:10px;padding:9px}.remove-selected-products{margin-top:10px}.empty-state{border:1px dashed #dce1e9;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:300px;display:flex}.empty-state svg,.modify-empty svg{color:#1111af;width:44px;height:44px}.empty-state b,.modify-empty b{font-size:18px}.empty-state span,.modify-empty p{color:#64748b}.modify-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:300px;padding:30px;display:flex}.modify-empty span{font-weight:700}.customer-modal-body{grid-template-columns:1fr 1fr;gap:20px;padding:20px 24px 24px;display:grid}.customer-add-card,.customer-bulk-card{background:#fff;border:1px solid #e1e5ed;border-radius:26px;padding:22px}.customer-bulk-card{background:#fafbff}.customer-add-card h2,.customer-bulk-card h2{color:#344054;justify-content:center;align-items:center;gap:12px;margin:0 0 14px;display:flex}.customer-add-card label{text-transform:none;color:#344054;grid-template-columns:190px minmax(0,1fr);align-items:center;margin-bottom:12px;display:grid}.customer-add-card input{padding:13px 16px}.customer-add-card>button{width:100%;min-height:52px;margin-top:2px}.customer-drop{color:#344054;background:#f7f7ff;border:2px dashed #a6a2f4;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;min-height:188px;display:flex}.customer-drop>svg{width:40px;height:40px}.customer-drop b{color:#0b0ba5;font-size:17px}.customer-drop span{font-weight:600}.customer-drop small{color:#667085}.delete-all-customers{color:#e11d2e;background:#fff8f8;border:2px solid #ff3b3b;border-radius:20px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:66px;margin-top:22px;font-weight:750;display:flex}@media (width<=800px){.modify-body{overflow:auto;grid-template-columns:270px minmax(700px,1fr)!important}.order-selector{display:block!important}.customer-modal-body{grid-template-columns:1fr}.customer-add-card label{grid-template-columns:1fr;gap:6px}}.order-panel{padding:24px;overflow:hidden}.order-heading{align-items:center}.order-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.order-tools>button,.entry-count,.month-filter{white-space:nowrap;background:#fff;border:1px solid #e2e6ee;border-radius:16px;align-items:center;gap:8px;min-height:48px;padding:0 18px;font-weight:700;display:inline-flex}.export-btn{color:#087d45}.month-filter{color:#1111af;padding-right:8px}.month-filter input{color:#202842;border:0;width:150px;padding:0}.month-filter button,.order-search button{background:0 0;border:0;place-items:center;padding:4px;display:grid}.month-filter button svg,.order-search button svg{width:16px}.order-search{color:#1111af;background:#f9fafc;border:1px solid #e2e6ee;border-radius:20px;align-items:center;gap:14px;min-height:64px;margin:22px 0 20px;padding:0 20px;display:flex}.order-search input{background:0 0;border:0;padding:0;font-weight:550}.data-table{min-width:0}.data-head,.data-row{align-items:center;gap:14px;display:grid}.order-table .data-head,.order-table .data-row{grid-template-columns:72px 130px minmax(230px,1.5fr) 120px 70px 125px 135px 150px}.order-table .status-select-wrap{border-radius:999px;width:100%;min-width:0;position:relative}.order-table .status-select-wrap.accepted{color:#164cc5;background:#edf3ff}.order-table .status-select-wrap.packed{color:#c34b00;background:#fff7e5}.order-table .status-select-wrap.shipped{color:#6d32a8;background:#f5edff}.order-table .status-select-wrap.delivered{color:#008344;background:#eafbf2}.order-table .status-select{border-radius:inherit;width:100%;min-height:46px;color:inherit;font:inherit;text-align:center;text-align-last:center;appearance:none;cursor:pointer;background:0 0;border:0;outline:0;padding:10px 42px 10px 18px;font-weight:800}.status-select option{text-align:left}.order-table .status-select-arrow{color:currentColor;pointer-events:none;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.order-table .status-select-wrap:has(.status-select:disabled){opacity:.65}.order-table .status-select:disabled{cursor:wait}.order-table .row-actions{white-space:nowrap;gap:8px}.customer-table .data-head,.customer-table .data-row{grid-template-columns:62px 180px minmax(230px,1.4fr) 140px 150px 170px 210px}.data-head{color:#667085;letter-spacing:.02em;padding:14px 26px;font-size:12px;font-weight:800}.data-row{background:#fff;border:1px solid #e4e7ed;border-radius:26px;min-height:112px;margin-bottom:14px;padding:18px 22px;box-shadow:0 9px 22px #1f293708}.serial{color:#1111af;background:#f1f1ff;border:1px solid #dcdcff;border-radius:999px;place-items:center;min-width:54px;min-height:42px;display:grid}.order-id{color:#0b0ba5;overflow-wrap:anywhere;padding-right:16px;display:block}.customer-cell{gap:5px;min-width:0;display:grid;overflow:hidden}.customer-cell small{color:#69778e;overflow-wrap:anywhere}.status{border-radius:999px;width:fit-content;padding:10px 14px;font-size:13px;font-style:normal;font-weight:750}.status.delivered{color:#008344;background:#eafbf2}.status.packed{color:#c34b00;background:#fff7e5}.status.accepted{color:#164cc5;background:#edf3ff}.status.shipped{color:#6d32a8;background:#f5edff}.status.cancelled{color:#bf1010;background:#fff0f0}.row-actions{gap:8px;display:flex}.row-actions button{background:#fff;border:1px solid #e2e6ed;border-radius:999px;align-items:center;gap:7px;min-height:44px;padding:0 14px;display:inline-flex}.row-actions svg{width:18px}.row-actions .danger-icon{color:#dc2626;padding:0 12px}.empty-state{color:#64748b;text-align:center;padding:60px 20px}.pagination span{align-items:center;gap:10px;display:inline-flex}.pagination i{font-style:normal}.pagination button{justify-content:center;align-items:center;gap:5px;display:inline-flex}.pagination button.active{color:#fff;background:#1111af;border-color:#1111af}.pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination svg{width:15px}.modify-order{width:min(1260px,100vw - 40px);max-height:calc(100dvh - 30px)}.modify-body{grid-template-columns:300px minmax(0,1fr);gap:22px;padding:22px;display:grid;overflow:auto}.modify-body>section,.order-selector{background:#fff;border:1px solid #e3e7ee;border-radius:24px;padding:20px}.modify-body h3{align-items:center;gap:10px;margin:0 0 18px;display:flex}.modify-body h3 svg{color:#1111af}.selected-order{background:#f7f8ff;border:1px solid #dcdfff;border-radius:16px;gap:7px;padding:18px;display:grid}.selected-order span,.order-selector p{color:#64748b;font-size:13px;line-height:1.5}.order-fields{background:#fafbfe;border:1px solid #e5e8ef;border-radius:20px;gap:12px;padding:18px;display:grid}.order-fields label{color:#475569;grid-template-columns:120px minmax(0,1fr);align-items:center;font-size:12px;font-weight:800;display:grid}.order-fields input,.order-fields select{border-radius:13px;padding:11px 14px}.product-search{border:1px solid #e3e7ee;border-radius:16px;align-items:center;gap:10px;min-height:54px;margin-top:16px;padding:0 14px;display:flex}.product-search input{border:0;padding:0}.product-results{z-index:2;background:#fff;border:1px solid #e3e7ee;border-radius:14px;margin-top:5px;padding:6px;position:relative;box-shadow:0 12px 30px #1720331c}.product-results button{text-align:left;background:#fff;border:0;gap:8px;width:100%;padding:10px;display:flex}.product-results button:hover{background:#f4f5ff}.modify-items{border:1px solid #e3e7ee;border-radius:18px;margin-top:14px;overflow:hidden}.modify-head,.modify-item{grid-template-columns:minmax(260px,1fr) 70px 85px 110px 60px;align-items:center;gap:12px;padding:12px;display:grid}.modify-head{background:#eef1f6;font-size:12px;font-weight:800}.modify-item{border-top:1px solid #edf0f4}.modify-item>div{gap:4px;display:grid}.modify-item small{color:#64748b}.modify-item input{border-radius:10px;padding:9px}.modify-item button{color:#dc2626;background:#fff;border:1px solid #fecaca;border-radius:10px;width:40px;height:40px}.modify-order footer{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:12px;padding:18px 24px;display:flex}.modify-order footer button{background:#fff;border:1px solid #e3e7ee;border-radius:14px;min-height:48px;padding:0 20px;font-weight:700}.customer-view-modal{width:min(600px,100vw - 30px)}.customer-view-modal dl{gap:12px;padding:24px;display:grid}.customer-view-modal dl div{border:1px solid #e5e7eb;border-radius:14px;grid-template-columns:150px 1fr;gap:15px;padding:14px;display:grid}.customer-view-modal dt{color:#475569;font-weight:750}.customer-view-modal dd{margin:0}@media (width<=1250px){.data-table{overflow-x:auto}.order-table .data-head,.order-table .data-row{min-width:1120px}.customer-table .data-head,.customer-table .data-row{min-width:1150px}}@media (width<=800px){.order-panel{padding:14px}.order-heading{align-items:stretch}.order-tools{justify-content:stretch}.order-tools>*{flex:180px;justify-content:center}.month-filter input{width:120px}.order-stats{grid-template-columns:1fr 1fr}.modify-order{border-radius:22px;width:100%;max-height:calc(100dvh - 24px)}.modify-body{grid-template-columns:1fr;padding:14px}.order-selector{display:none}.modify-head,.modify-item{min-width:700px}.modify-items{overflow-x:auto}.order-fields label{grid-template-columns:1fr;gap:6px}}@media (width<=480px){.order-stats{grid-template-columns:1fr}.data-row{border-radius:18px}.customer-view-modal dl div{grid-template-columns:1fr}.pagination{justify-content:flex-start}.pagination button{min-width:36px}.pagination button svg{display:none}}.bell-wrap{flex:none;position:relative}.notification-panel{z-index:100;background:#fff;border:1px solid #e3e6ed;border-radius:18px;width:min(380px,100vw - 32px);max-height:min(430px,100vh - 120px);position:absolute;top:calc(100% + 12px);right:0;overflow:hidden auto;box-shadow:0 22px 55px #1f293733}.notification-panel>header{z-index:1;background:#fff;border-bottom:1px solid #edf0f5;justify-content:space-between;align-items:center;padding:14px 16px;display:flex;position:sticky;top:0}.notification-panel>header button{background:0 0;border:0;border-radius:9px;width:32px;min-width:32px;min-height:32px;padding:0}.notification-panel article{border-bottom:1px solid #edf0f5;grid-template-columns:25px minmax(0,1fr);gap:10px;padding:14px;display:grid}.notification-panel article.unread{background:#f4f5ff}.notification-panel article>svg{color:#16a34a}.notification-panel article p{overflow-wrap:anywhere;white-space:normal;color:#475569;margin:4px 0;font-size:12px}.notification-panel article small{color:#94a3b8;font-size:10px}.notification-empty{text-align:center;color:#64748b;padding:30px}.catalogue-form{--catalogue-blue:#170bb2;--catalogue-border:#e3e6ee;--catalogue-text:#3d475c;gap:20px;font-size:14px;display:grid}.catalogue-form label>span:first-child,.catalogue-date-label>span{color:var(--catalogue-text);letter-spacing:.04em;margin-bottom:10px;font-size:14px;font-weight:700;display:block}.catalogue-title-label>input,.catalogue-date-field{box-sizing:border-box;border:1px solid var(--catalogue-border);background:#fff;border-radius:18px;width:100%;min-height:40px}.catalogue-title-label>input{color:var(--catalogue-text);font:inherit;outline:none;padding:0 18px}.catalogue-date-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.catalogue-date-field{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:0 16px;display:grid;position:relative}.catalogue-date-field>svg{width:21px;color:var(--catalogue-blue)}.catalogue-date-field>input[type=text]{color:#2f3850;background:0 0;border:0;outline:0;min-width:0;font-size:14px;font-weight:600}.catalogue-date-field>input::placeholder{color:#777;opacity:1}.catalogue-calendar-button{width:34px;height:34px;color:var(--catalogue-blue);cursor:pointer;background:#f2f1ff;border:0;border-radius:8px;place-items:center;padding:0;display:grid}.catalogue-calendar-button svg{width:17px}.catalogue-native-picker{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;bottom:0;right:18px}.catalogue-categories{border:1px solid var(--catalogue-border);background:#fafbff;border-radius:28px;padding:20px}.catalogue-search{border:1px solid var(--catalogue-border);background:#fff;border-radius:17px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-height:52px;padding:0 14px 0 16px;display:grid}.catalogue-search svg{width:21px;color:var(--catalogue-blue)}.catalogue-search input{min-width:0;color:var(--catalogue-text);font:inherit;background:0 0;border:0;outline:0;font-size:14px}.catalogue-search>span{color:#09008c;white-space:nowrap;background:#eef;border-radius:999px;place-self:center end;padding:10px 14px;font-size:14px;font-weight:700}.catalogue-check{box-sizing:border-box;border:1px solid var(--catalogue-border);width:100%;min-width:0;height:auto;min-height:52px;color:var(--catalogue-text);cursor:pointer;background:#fff;border-radius:17px;padding:10px 20px;text-transform:none!important;align-items:center!important;gap:15px!important;margin:0!important;display:flex!important}.catalogue-check-all{background:#f0efff;border-color:#b9b5ff;margin-top:15px!important}.catalogue-check input{width:20px;height:20px;accent-color:var(--catalogue-blue);flex:0 0 20px;margin:0}.catalogue-check>span{min-width:0;color:inherit;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;flex:1;line-height:1.35;overflow:visible;letter-spacing:0!important;margin:0!important;font-size:12px!important;font-weight:600!important}.catalogue-check i{color:#728096;background:#f0f2f7;border-radius:999px;flex:none;padding:4px 9px;font-size:13px;font-style:normal;font-weight:700}.catalogue-category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px;display:grid}.catalogue-empty{color:#7b8496;text-align:center;margin:20px 0 0}.catalogue-footer{justify-content:flex-end;gap:14px;display:flex}.catalogue-footer button{font-size:14px}.modal:has(.design-body){width:min(850px,100vw - 32px);overflow:hidden}.design-body{background:#f8fafc;padding:20px}.design-body:before{content:"";pointer-events:none;position:absolute}.design-title{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:0 0 10px;display:flex}.design-title h3{margin:0;font-size:20px}.design-title button,.design-remove{color:#ef2929;cursor:pointer;background:#fff5f5;border:1px solid #fecaca;border-radius:14px;min-height:42px;padding:10px 18px;font-weight:600}.design-upload{box-sizing:border-box;background:#fff;border:1px solid #dfe4ec;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;min-height:122px;margin:12px 0;padding:16px;display:grid}.design-upload-info{gap:7px;min-width:0;display:grid}.design-upload-info b{color:#111827;font-size:16px}.design-upload small{color:#64748b;font-size:14px;display:block}.design-upload strong{color:#64748b;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:999px;justify-self:start;padding:4px 10px;font-size:14px}.design-upload strong.uploaded{color:#078848;background:#effdf4;border-color:#86efac}.design-upload-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.design-upload-actions>label{text-transform:none;cursor:pointer;justify-content:center;align-items:center;gap:8px;min-height:42px;margin:0;padding:10px 16px;display:inline-flex;box-shadow:0 10px 25px #2015b833}.design-upload-actions svg,.design-save svg{width:18px;height:18px}.design-save{justify-content:center;min-width:188px}@media (width<=1024px){.notification-panel{left:auto;right:0}.catalogue-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=800px){.bell-wrap{justify-content:center;display:flex}.notification-panel{width:auto;max-height:70vh;position:fixed;top:78px;left:12px;right:12px}.catalogue-categories{padding:12px}.design-title{flex-direction:column;align-items:stretch;padding-bottom:12px}.design-upload{grid-template-columns:1fr}.design-upload-actions{justify-content:stretch}.design-upload-actions>label,.design-upload-actions>button{flex:1}.modal footer{z-index:6;background:#fff;position:sticky;bottom:0}}@media (width<=600px){.catalogue-category-grid{grid-template-columns:1fr}.catalogue-check{padding:10px 14px;gap:12px!important}}@media (width<=480px){.catalogue-search>span{text-align:center;justify-self:stretch}}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scrollbar-gutter:stable}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh}button,input,select{touch-action:manipulation}img{max-width:100%}.app,.login,.page-loading{min-height:100dvh}.product-table,.table-wrap{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}@media (width<=900px){.app,.app.sidebar-expanded,.app.sidebar-collapsed{grid-template-columns:none;display:block}.sidebar{z-index:1001;width:min(340px,88vw);max-height:100dvh;position:fixed;inset:0 auto 0 0;box-shadow:18px 0 45px #0f172a2e}.sidebar.closed{transform:translate(-100%)}.sidebar-backdrop{z-index:1000;-webkit-backdrop-filter:blur(2px);background:#0f172a66;border:0;width:100%;height:100%;padding:0;display:block;position:fixed;inset:0}aside{overscroll-behavior:contain;max-height:340px;position:static}.content{width:100%;padding:16px}.sidebar-open{width:48px;height:58px;font-size:40px;top:18px}.sidebar-close{width:45px;height:45px;font-size:35px}.brand{padding-right:62px}.side-link:not(.active){display:flex}.topbar nav>button:not(.notice){flex:160px;min-width:min(180px,100%)}.content{padding-inline:clamp(10px,3vw,20px)}}@media (width<=700px){.login form{padding-inline:clamp(18px,6vw,34px)}.topbar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar nav>button:not(.notice){width:100%;min-width:0}.panel{padding:12px}.product-table{border:0;overflow:visible}.product-row.head{display:none}.product-row:not(.head){border:1px solid #e7eaf1;border-radius:16px;grid-template-columns:72px minmax(0,1fr);gap:10px 14px;min-width:0;margin-bottom:12px;padding:14px;box-shadow:0 8px 22px #0f172a0f}.product-row:not(.head)>*{overflow-wrap:anywhere;min-width:0}.product-row:not(.head)>:first-child,.product-row:not(.head)>:nth-child(4){grid-column:1}.product-row:not(.head)>:nth-child(2),.product-row:not(.head)>:nth-child(3),.product-row:not(.head)>:nth-child(5),.product-row:not(.head)>:nth-child(6),.product-row:not(.head)>:nth-child(7){grid-column:2}.product-row:not(.head)>:nth-child(4){grid-row:2/span 5;align-self:start;width:72px;height:72px}.product-row:not(.head)>:nth-child(8){grid-column:1/-1}.product-row .actions{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.product-row .actions button{justify-content:center;min-height:44px}.pagination{padding-inline:0}.modal,.modal.wide{max-height:calc(100dvh - 12px)}}@media (width>=701px){.admin-scroll-table .data-table{width:max-content;min-width:100%}.admin-scroll-table .order-table .data-head,.admin-scroll-table .order-table .data-row{width:100%;min-width:1080px;box-shadow:none;border:0;border-bottom:1px solid #edf0f5;border-radius:0;grid-template-columns:60px 120px minmax(220px,1fr) 110px 70px 115px 150px 112px;align-items:center;gap:40px;margin:0;padding:16px 12px;font-size:14px;display:grid}.admin-scroll-table .customer-table .data-head,.admin-scroll-table .customer-table .data-row{width:100%;min-width:1160px;box-shadow:none;border:0;border-bottom:1px solid #edf0f5;border-radius:0;grid-template-columns:60px 160px minmax(250px,1fr) 140px 150px 170px 164px;align-items:center;gap:40px;margin:0;padding:16px 12px;font-size:14px;display:grid}.admin-scroll-table .data-head{color:#667085;min-height:58px;font-size:12px;font-weight:800}.admin-scroll-table .data-row{background:#fff;min-height:138px}.admin-scroll-table .data-row:last-child{border-bottom:1px solid #edf0f5}.admin-scroll-table .row-actions{flex-wrap:nowrap;justify-content:center;gap:8px;width:100%;min-width:0}.admin-scroll-table .row-actions button{white-space:nowrap;justify-content:center;width:46px;min-width:46px;padding:0}}.order-export-dialog{width:min(680px,100vw - 32px)}:is(html:has(.backdrop),body:has(.backdrop)){overscroll-behavior:none;overflow:hidden!important}.export-filter-options label{cursor:pointer;background:#fff;border:1px solid #dbe3ef;border-radius:12px;align-items:center;gap:10px;min-height:50px;padding:0 16px;display:flex}.export-filter-options label.active{color:#174fd6;background:#eef4ff;border-color:#174fd6;font-weight:700}.export-filter-fields label{color:#33415c;gap:8px;font-weight:700;display:grid}.export-filter-fields input,.export-filter-fields select{box-sizing:border-box;color:#172136;width:100%;height:48px;font:inherit;background:#fff;border:1px solid #d5deeb;border-radius:10px;padding:0 14px}.export-date-range{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (width<=560px){.export-filter-options,.export-date-range{grid-template-columns:1fr}}.order-export-dialog{border-radius:28px;width:min(680px,100vw - 32px);max-height:calc(100dvh - 32px);overflow:hidden}.order-export-dialog>header{grid-template-columns:minmax(0,1fr) 52px;align-items:start;gap:20px;padding:28px 30px 16px;display:grid}.order-export-dialog>header>div{min-width:0}.order-export-dialog>header h2{margin:0;line-height:1.2}.order-export-dialog>header p{margin:6px 0 0}.order-export-dialog>header .modal-x{color:#111827;cursor:pointer;background:#fff;border:1px solid #e2e7ee;border-radius:16px;justify-self:end;place-items:center;width:52px;min-width:52px;max-width:52px;height:52px;min-height:52px;margin:0;padding:0;display:grid;position:static}.order-export-dialog>header .modal-x svg{width:23px;height:23px;margin:0;display:block}.order-export-dialog>header .modal-x:hover{color:#dc2626;background:#fff5f5;border-color:#fecaca}.export-filter-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:28px 30px 12px;display:grid}.export-filter-options label{box-sizing:border-box;color:#526078;cursor:pointer;background:#fff;border:1px solid #d9e2ef;border-radius:14px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:14px;width:100%;min-width:0;min-height:62px;margin:0;padding:10px 18px;display:grid}.export-filter-options label.active{color:#075ce5;background:#eef4ff;border-color:#075ce5}.export-filter-options input[type=radio]{accent-color:#075ce5;cursor:pointer;justify-self:center;width:16px;height:16px;margin:0}.export-filter-options label span{text-align:left;white-space:normal;min-width:0;font-size:15px;font-weight:700;line-height:1.2;display:block}.export-filter-fields{min-height:135px;padding:20px 30px 30px}.export-filter-fields label{gap:10px;min-width:0;margin:0;display:grid}.export-filter-fields label>span{color:#34425b;text-transform:uppercase;font-size:14px;font-weight:700}.export-filter-fields input,.export-filter-fields select{box-sizing:border-box;color:#182238;width:100%;min-width:0;height:60px;font:inherit;background:#fff;border:1px solid #d6e0ed;border-radius:13px;outline:none;margin:0;padding:0 18px}.export-filter-fields input:focus,.export-filter-fields select:focus{border-color:#075ce5;box-shadow:0 0 0 3px #075ce51a}.export-filter-fields .export-picker{width:100%;min-width:0;position:relative}.export-filter-fields .export-picker-display{color:#1f2937;text-transform:none;pointer-events:none;background:#fff;width:100%;padding-right:52px;font-weight:700}.export-picker-icon{z-index:1;color:#111827;pointer-events:none;width:18px;height:18px;position:absolute;top:50%;right:20px;transform:translateY(-50%)}.export-filter-fields .export-picker-native{z-index:2;opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.export-picker:focus-within .export-picker-display{border-color:#1111af;box-shadow:0 0 0 3px #1111af1a}.export-date-range{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%;min-width:0;display:grid}.export-date-range label,.export-date-range input[type=date]{min-width:0;max-width:100%}.order-export-dialog>footer{justify-content:flex-end;align-items:center;gap:14px;padding:22px 30px;display:flex}.order-export-dialog>footer button{border-radius:14px;width:auto;min-width:118px;height:56px;margin:0;padding:0 24px}.order-export-dialog>footer .primary{min-width:186px}@media (width<=560px){.order-export-dialog{border-radius:20px;width:calc(100vw - 20px)}.order-export-dialog>header{grid-template-columns:minmax(0,1fr) 44px;gap:12px;padding:20px 18px 14px}.order-export-dialog>header h2{font-size:20px}.order-export-dialog>header .modal-x{border-radius:12px;width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px}.export-filter-options{grid-template-columns:1fr;gap:10px;padding:20px 18px 10px}.export-filter-options label{min-height:54px}.export-filter-fields{min-height:115px;padding:16px 18px 22px}.export-date-range{grid-template-columns:1fr}.order-export-dialog>footer{padding:16px 18px 20px}.order-export-dialog>footer button,.order-export-dialog>footer .primary{flex:1;min-width:0;height:50px;padding:0 12px}}@media (width<=480px){.content{padding:12px}.sidebar{width:min(340px,92vw)}.sidebar-open{width:56px;height:66px}.topbar nav{grid-template-columns:1fr}.topbar h2{font-size:20px}.roles button,.primary,.green,.topbar button{min-height:46px}.product-row .actions{grid-template-columns:1fr 1fr}.product-row .actions .delete{grid-column:1/-1}.modal footer{padding-bottom:max(14px, env(safe-area-inset-bottom));flex-wrap:wrap}.modal footer button{flex:140px}}@media (prefers-reduced-motion:reduce){.app,.sidebar,.sidebar-open,.sidebar-close{transition:none}}.product-row{border-bottom:1px solid #edf0f5;grid-template-columns:70px 150px 180px 110px minmax(250px,1fr) 100px 180px 230px;align-items:center;gap:18px;width:100%;min-width:1360px;padding:16px 12px;font-size:14px;display:grid}.product-price{white-space:nowrap;text-align:center;font-variant-numeric:tabular-nums;text-overflow:ellipsis;justify-content:center;align-items:center;width:100%;min-width:0;padding:0 10px;display:flex;overflow:hidden}.actions{min-width:0;padding-left:8px}.product-row>*{text-align:center;min-width:0}.product-row.head>span,.product-row:not(.head)>b,.product-row:not(.head)>span:not(.actions){text-align:center;justify-content:center;align-items:center;display:flex}.product-row .product-image{justify-self:center}.product-row .actions{justify-content:center;align-items:center;gap:10px;width:100%;display:flex}.actions button.status-toggle{cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;width:58px;min-width:58px;height:28px;min-height:28px;padding:0;display:inline-flex;position:relative}.actions button.status-toggle:hover{background:0 0;border:0}.status-toggle .toggle-track{background:#e5e7eb;border-radius:999px;flex:0 0 58px;width:58px;height:28px;transition:background-color .25s;display:block;position:relative;box-shadow:inset 0 1px 3px #0000001f,0 1px 3px #00000024}.status-toggle .toggle-knob{background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .25s;display:block;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #00000038}.status-toggle.on .toggle-track{background:#05c962}.status-toggle.on .toggle-knob{transform:translate(30px)}.status-toggle.off .toggle-track{background:#e5e7eb}.status-toggle.off .toggle-knob{transform:translate(0)}.status-toggle .toggle-label{z-index:2;pointer-events:none;min-width:0;margin:0;font-size:9px;font-weight:800;line-height:1;position:absolute}.status-toggle.on .toggle-label{color:#007c3c;left:8px;right:auto}.status-toggle.off .toggle-label{color:#9ca3af;left:auto;right:7px}.product-table{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;width:100%;padding-bottom:7px;overflow-x:auto}.product-table .product-row{box-sizing:border-box;width:1550px;min-width:100%}.product-table::-webkit-scrollbar{height:10px}.product-table::-webkit-scrollbar-thumb{background:#cbd2df;border-radius:999px}.product-table::-webkit-scrollbar-track{background:#f1f3f7;border-radius:999px}@media (width<=700px){.actions button.status-toggle{width:58px;min-width:58px;height:28px;min-height:28px}}
