@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600&family=Playfair+Display:wght@400;500;600;700;800;900&display=swap";.App{min-height:100vh;background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%)}.login-container{min-height:100vh;background:linear-gradient(135deg,#0f172a 0%,#1e293b 50%,#334155 100%);display:flex;align-items:center;justify-content:center;padding:var(--spacing-md)}.login-card{background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-xl);padding:var(--spacing-2xl);box-shadow:0 25px 50px -12px #00000040;width:100%;max-width:400px}.login-header{text-align:center;margin-bottom:var(--spacing-2xl)}.login-title{font-family:var(--font-heading);font-size:2rem;font-weight:700;color:var(--color-text-primary);margin-bottom:var(--spacing-sm)}.login-subtitle{color:var(--color-text-secondary);font-size:.875rem}.dashboard-nav{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:var(--spacing-md) 0;box-shadow:var(--shadow-sm)}.nav-container{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.nav-brand{display:flex;align-items:center;gap:var(--spacing-sm)}.nav-title{font-family:var(--font-heading);font-size:1.5rem;font-weight:600;color:var(--color-text-primary)}.nav-subtitle{color:var(--color-text-muted);font-size:.875rem}.nav-tabs{display:flex;gap:var(--spacing-sm)}.nav-tab{padding:.75rem var(--spacing-lg);border-radius:var(--radius-md);text-decoration:none;color:var(--color-text-secondary);font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:var(--spacing-sm)}.nav-tab:hover{background-color:var(--color-surface-elevated);color:var(--color-primary)}.header-cart-button{position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#6366f1 0%,#8b5cf6 100%);color:#fff;border:none;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #6366f14d}.header-cart-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6366f166}.header-cart-badge{position:absolute;top:-8px;right:-8px;background:#ef4444;color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;border:2px solid white}.cart-sidebar-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:1000;display:flex;justify-content:flex-end}.cart-sidebar{width:100%;max-width:480px;height:100vh;background:white;box-shadow:-4px 0 20px #0000001a;display:flex;flex-direction:column;animation:slideInRight .3s ease-out}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.cart-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.cart-sidebar-title{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:600;color:#1e293b}.cart-count-badge{background:#6366f1;color:#fff;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:600}.cart-sidebar-close{background:none;border:none;color:#64748b;cursor:pointer;padding:8px;border-radius:8px;transition:all .2s ease}.cart-sidebar-close:hover{background:#f1f5f9;color:#475569}.cart-sidebar-content{flex:1;overflow-y:auto;padding:20px 24px}.cart-empty{text-align:center;padding:40px 20px}.cart-items-simple{space-y:3}.cart-item-simple{display:flex;align-items:center;gap:12px;padding:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:8px}.cart-item-simple-image{width:40px;height:40px;border-radius:6px;overflow:hidden;flex-shrink:0}.cart-item-simple-img{width:100%;height:100%;object-fit:cover}.cart-item-simple-placeholder{width:100%;height:100%;background:#e2e8f0;display:flex;align-items:center;justify-content:center;color:#64748b;font-weight:600}.cart-item-simple-info{flex:1}.cart-item-simple-code{font-size:14px;font-weight:600;color:#1e293b}.cart-item-simple-remove{background:none;border:none;color:#ef4444;cursor:pointer;padding:6px;border-radius:6px;transition:all .2s ease;flex-shrink:0}.cart-item-simple-remove:hover{background:#fef2f2}.cart-sidebar-footer{padding:20px 24px;border-top:1px solid #e2e8f0;background:#f8fafc}.cart-sidebar-summary{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 0}.cart-summary-text{font-size:14px;color:#475569}.cart-sidebar-actions{display:flex;gap:12px}.product-card-selected{border:2px solid #6366f1;box-shadow:0 0 0 4px #6366f11a}.product-selection-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(99,102,241,.8);display:flex;align-items:center;justify-content:center;border-radius:12px;z-index:10}.product-selection-status{display:flex;align-items:center;gap:8px;padding:8px 12px;background:rgba(99,102,241,.1);border-radius:8px;margin-top:8px}.customization-cart-page{max-width:1200px;margin:0 auto;padding:0 20px}.product-modal-selection-status{display:flex;align-items:center;gap:8px;padding:12px 16px;background:rgba(99,102,241,.1);border:1px solid rgba(99,102,241,.2);border-radius:8px;margin-bottom:16px}@media (max-width: 768px){.nav-container{flex-direction:column;gap:var(--spacing-md)}.nav-tabs{flex-wrap:wrap;justify-content:center}.dashboard-content{padding:var(--spacing-md) 0}.page-title{font-size:1.5rem}.table-container{overflow-x:auto}.login-card{margin:var(--spacing-md);padding:var(--spacing-lg)}.login-title{font-size:1.5rem}.cart-sidebar{width:100%;max-width:none}.cart-sidebar-actions{flex-direction:column}.header-cart-button{width:36px;height:36px}.header-cart-badge{width:18px;height:18px;font-size:11px}}.fade-in{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.slide-up{animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.form-input-sm{padding:.375rem .5rem;font-size:.875rem;border-radius:.375rem;border:1px solid #d1d5db;background-color:#fff;transition:border-color .2s,box-shadow .2s}.form-input-sm:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.form-input-sm::placeholder{color:#9ca3af}.btn-xs{padding:.25rem .5rem;font-size:.75rem;border-radius:.375rem}.btn-red{background-color:#ef4444;color:#fff;border:1px solid #ef4444;padding:.25rem .5rem;border-radius:.375rem;font-size:.75rem;cursor:pointer;transition:all .2s}.btn-red:hover{background-color:#dc2626;border-color:#dc2626}.btn-red:focus{outline:none;box-shadow:0 0 0 3px #ef44441a}.archive-toggle{display:flex;flex-direction:column;gap:1rem;padding:1rem;background:#f8fafc;border-radius:.5rem;border:1px solid #e2e8f0}.archive-toggle h3{margin:0;color:#1e293b}.archive-toggle .flex{display:flex;gap:.75rem}.archive-toggle .btn{padding:.5rem 1rem;border-radius:.375rem;font-weight:500;transition:all .2s;cursor:pointer}.archive-toggle .btn-primary{background:#3b82f6;color:#fff;border:1px solid #3b82f6}.archive-toggle .btn-primary:hover{background:#2563eb;border-color:#2563eb}.archive-toggle .btn-secondary{background:#64748b;color:#fff;border:1px solid #64748b}.archive-toggle .btn-secondary:hover{background:#475569;border-color:#475569}.customization-cart-page .w-20.h-20{width:80px!important;height:80px!important;min-width:80px;min-height:80px;max-width:80px;max-height:80px;overflow:hidden;border-radius:.5rem;border:1px solid #e2e8f0;background-color:#f1f5f9}.customization-cart-page .w-20.h-20 img{width:80px!important;height:80px!important;object-fit:cover;object-position:center;display:block}.form-label.text-xs{font-size:.75rem;font-weight:500;color:#374151;margin-bottom:.25rem}:root{--color-primary: #6366f1;--color-primary-dark: #4f46e5;--color-primary-light: #818cf8;--color-secondary: #f59e0b;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-info: #3b82f6;--color-bg-primary: #ffffff;--color-bg-secondary: #f8fafc;--color-bg-tertiary: #f1f5f9;--color-bg-sidebar: #1e293b;--color-bg-sidebar-hover: #334155;--color-bg-sidebar-active: #3b82f6;--color-text-primary: #0f172a;--color-text-secondary: #475569;--color-text-muted: #64748b;--color-text-sidebar: #e2e8f0;--color-text-sidebar-active: #ffffff;--color-border: #e2e8f0;--color-border-light: #f1f5f9;--color-border-dark: #cbd5e1;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--font-display: "Playfair Display", serif;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-2xl: 6rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--sidebar-width: 220px;--header-height: 70px;--popup-max-width: 600px;--popup-max-height: 90vh;--image-ratio-square: 1;--image-ratio-portrait: 3/4;--image-ratio-landscape: 4/3;--image-ratio-wide: 16/9}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-sans);background-color:var(--color-bg-secondary);color:var(--color-text-primary);line-height:1.6;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;color:var(--color-text-primary)}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}.dashboard-layout{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);background:linear-gradient(180deg,#1e293b 0%,#0f172a 100%);position:fixed;left:0;top:0;bottom:0;z-index:50;overflow-y:auto;transition:all .3s ease;border-right:1px solid rgba(255,255,255,.1);box-shadow:4px 0 20px #0000001a;display:flex;flex-direction:column}.sidebar-header{padding:1.5rem 1rem;border-bottom:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);flex-shrink:0}.sidebar-logo{display:flex;align-items:center;gap:.75rem;color:#fff;font-size:1.125rem;font-weight:700;font-family:var(--font-display)}.sidebar-logo .icon{width:2rem;height:2rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:.5rem;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.25rem}.sidebar-nav{padding:1.5rem 0;flex:1;display:flex;flex-direction:column;justify-content:flex-start;gap:.5rem}.nav-item{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;color:#e2e8f0;text-decoration:none;transition:all .2s ease;font-weight:600;font-size:1rem;position:relative;overflow:hidden;background:transparent;border:none;margin:0 .75rem;border-radius:.75rem;border-bottom:1px solid rgba(255,255,255,.05);text-align:left;line-height:1.4;min-height:3rem}.nav-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:linear-gradient(90deg,#6366f1,#8b5cf6);transition:width .3s ease;z-index:-1;border-radius:.75rem}.nav-item:hover{background:rgba(255,255,255,.1);color:#fff;transform:translate(4px);border-bottom:1px solid rgba(255,255,255,.1)}.nav-item:hover:before{width:4px}.nav-item.active{background:rgba(255,255,255,.1);color:#fff;border-bottom:1px solid rgba(255,255,255,.15)}.nav-item.active:before{width:4px}.nav-item .icon{width:1.25rem;height:1.25rem;flex-shrink:0;color:inherit;margin-top:.125rem}.nav-item span{flex:1;text-align:left}.sidebar-logout-section{margin-top:auto;padding:1rem 0;border-top:1px solid rgba(255,255,255,.1);flex-shrink:0}.nav-item.logout{margin:0 .75rem;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2);color:#fca5a5;border-radius:.75rem;border-bottom:1px solid rgba(239,68,68,.3);font-weight:600;font-size:1rem;min-height:3rem}.nav-item.logout:hover{background:rgba(239,68,68,.2);color:#fecaca;border-color:#ef444466;border-bottom:1px solid rgba(239,68,68,.5)}.notification-dropdown{position:absolute;top:100%;right:0;margin-top:.5rem;background:white;border:1px solid var(--color-border-light);border-radius:.75rem;box-shadow:0 10px 25px #0000001a;min-width:300px;z-index:1000;overflow:hidden}.notification-dropdown-header{padding:1rem;border-bottom:1px solid var(--color-border-light);background:var(--color-bg-secondary)}.notification-dropdown-title{font-weight:600;color:var(--color-text-primary);font-size:.875rem}.notification-dropdown-body{max-height:400px;overflow-y:auto}.notification-item{padding:1rem;border-bottom:1px solid var(--color-border-light);transition:background-color .2s ease}.notification-item:hover{background:var(--color-bg-secondary)}.notification-item:last-child{border-bottom:none}.notification-item.unread{background:rgba(99,102,241,.05);border-left:3px solid var(--color-primary)}.notification-content{font-size:.875rem;color:var(--color-text-primary);margin-bottom:.25rem}.notification-time{font-size:.75rem;color:var(--color-text-muted)}.notification-empty{padding:2rem;text-align:center;color:var(--color-text-muted)}.notification-empty-icon{width:3rem;height:3rem;margin:0 auto 1rem;color:var(--color-border)}.notification-empty-title{font-weight:600;margin-bottom:.5rem}.notification-empty-text{font-size:.875rem}.main-content{flex:1;margin-left:var(--sidebar-width);min-height:100vh;background:var(--color-bg-secondary)}.header{height:var(--header-height);background:var(--color-bg-primary);border-bottom:1px solid var(--color-border);display:flex;align-items:center;padding:0 var(--space-6);position:sticky;top:0;z-index:40;box-shadow:0 2px 10px #0000000d}.content-area{padding:var(--space-6)}.header-title{font-size:1.5rem;font-weight:700;color:var(--color-text-primary);display:flex;align-items:center;gap:.5rem}.header-title:before{content:"";width:4px;height:1.5rem;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));border-radius:2px}.header-actions{margin-left:auto;display:flex;align-items:center;gap:1rem}.header-user{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background:var(--color-bg-secondary);border-radius:.75rem;border:1px solid var(--color-border-light)}.header-user-avatar{width:2.5rem;height:2.5rem;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:1rem}.header-user-info{display:flex;flex-direction:column;gap:.125rem}.header-user-name{font-weight:600;color:var(--color-text-primary);font-size:.875rem}.header-user-role{color:var(--color-text-muted);font-size:.75rem;text-transform:capitalize}.page-header{margin-bottom:2rem}.page-title{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin-bottom:.5rem;font-family:var(--font-display)}.page-subtitle{color:var(--color-text-muted);font-size:1.125rem;font-weight:500}.card{background:var(--color-bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light);transition:all .2s ease;overflow:hidden}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-header{padding:var(--space-6);border-bottom:1px solid var(--color-border-light)}.card-body{padding:var(--space-6)}.card-footer{padding:var(--space-6);border-top:1px solid var(--color-border-light);background:var(--color-bg-tertiary)}.product-card{background:var(--color-bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light);overflow:hidden;transition:all .3s ease;height:100%;position:relative;display:flex;flex-direction:column;width:100%;max-width:100%}.product-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px);border-color:var(--color-primary)}.product-image-container{aspect-ratio:3/4;overflow:hidden;background:var(--color-bg-tertiary);position:relative;width:100%}.product-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.product-card:hover .product-image{transform:scale(1.05)}.product-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,0);transition:all .3s ease;display:flex;align-items:center;justify-content:center;opacity:0}.product-card:hover .product-overlay{background:rgba(0,0,0,.2);opacity:1}.product-overlay-button{background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:none;border-radius:50%;padding:12px;cursor:pointer;transition:all .2s ease;transform:scale(.8);box-shadow:0 4px 12px #00000026}.product-card:hover .product-overlay-button{transform:scale(1)}.product-overlay-button:hover{background:white;transform:scale(1.1);box-shadow:0 6px 16px #0003}.product-info{padding:var(--space-4);flex:1;display:flex;flex-direction:column}.product-title{font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-2);font-size:1.125rem;line-height:1.3}.product-code{font-family:var(--font-mono);color:var(--color-text-muted);font-size:.875rem;margin-bottom:var(--space-3);background:var(--color-bg-tertiary);padding:.25rem .5rem;border-radius:.375rem;display:inline-block;width:fit-content}.product-colors{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.color-tag{padding:var(--space-1) var(--space-2);background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff;border-radius:var(--radius-md);font-size:.75rem;font-weight:500;box-shadow:0 2px 4px #6366f133}.product-description{color:var(--color-text-secondary);font-size:.875rem;line-height:1.5;margin-top:auto;flex:1}.order-card{background:var(--color-bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light);padding:var(--space-6);transition:all .2s ease;height:100%}.order-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.order-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4)}.order-id{font-family:var(--font-mono);font-weight:600;color:var(--color-text-primary);font-size:1.125rem}.order-date{color:var(--color-text-muted);font-size:.875rem}.order-progress{margin:var(--space-4) 0}.progress-bar{width:100%;height:8px;background:var(--color-bg-tertiary);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--space-2)}.progress-fill{height:100%;background:linear-gradient(90deg,var(--color-success),var(--color-primary));border-radius:var(--radius-sm);transition:width .3s ease}.progress-text{text-align:center;font-size:.875rem;color:var(--color-text-secondary);font-weight:500}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:none;border-radius:var(--radius-md);font-weight:500;font-family:var(--font-sans);text-decoration:none;cursor:pointer;transition:all .2s ease;font-size:.875rem;position:relative;overflow:hidden;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff;box-shadow:var(--shadow-md)}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-dark),#4338ca);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.btn-secondary{background:var(--color-bg-primary);color:var(--color-text-secondary);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.btn-secondary:hover:not(:disabled){background:var(--color-bg-secondary);border-color:var(--color-primary);color:var(--color-primary);box-shadow:var(--shadow-md)}.btn-danger{background:var(--color-error);color:#fff;box-shadow:var(--shadow-md)}.btn-danger:hover:not(:disabled){background:#dc2626;box-shadow:var(--shadow-lg);transform:translateY(-1px)}.btn-sm{padding:var(--space-2) var(--space-3);font-size:.75rem}.btn-lg{padding:var(--space-4) var(--space-6);font-size:1rem}.form-group{margin-bottom:var(--space-4)}.form-label{display:block;margin-bottom:var(--space-2);font-weight:500;color:var(--color-text-primary);font-family:var(--font-sans)}.form-input{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.875rem;font-family:var(--font-sans);background-color:var(--color-bg-primary);transition:all .2s ease}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a;background-color:var(--color-bg-primary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(15,23,42,.7);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4)}.modal-content{background:var(--color-bg-primary);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);border:1px solid var(--color-border-light);max-width:var(--popup-max-width);max-height:90vh;width:100%;overflow:hidden;display:flex;flex-direction:column}.modal-header{padding:var(--space-6);border-bottom:1px solid var(--color-border-light);display:flex;justify-content:space-between;align-items:center;background:var(--color-bg-secondary)}.modal-title{font-size:1.25rem;font-weight:600;color:var(--color-text-primary)}.modal-close{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:var(--space-2);border-radius:var(--radius-md);transition:all .2s ease}.modal-close:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.modal-body{padding:var(--space-6);overflow-y:auto;flex:1;max-height:60vh;scrollbar-width:thin;scrollbar-color:var(--color-border) var(--color-bg-secondary)}.modal-body::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-track{background:var(--color-bg-secondary);border-radius:3px}.modal-body::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.modal-body::-webkit-scrollbar-thumb:hover{background:var(--color-border-dark)}.modal-footer{padding:var(--space-6);border-top:1px solid var(--color-border-light);background:var(--color-bg-secondary);display:flex;gap:var(--space-3);justify-content:flex-end}.grid{display:grid;gap:var(--space-6)}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.text-center{text-align:center}.text-sm{font-size:.875rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-muted{color:var(--color-text-muted)}.text-secondary{color:var(--color-text-secondary)}.text-primary{color:var(--color-primary)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.rounded{border-radius:var(--radius-sm)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.shadow{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}@media (max-width: 1024px){:root{--sidebar-width: 200px}.grid-cols-4{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){:root{--sidebar-width: 0px}.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-content{margin-left:0}.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,1fr)}}.search-form{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:1rem;width:100%}.search-form .w-40{flex:0 0 40%}.search-form .w-35{flex:0 0 35%}.search-form .w-25{flex:0 0 25%;display:flex;justify-content:center;align-items:center}.search-form .form-input,.search-form select{width:100%}.search-form .btn{align-self:center}.search-form .btn{padding:.75rem 1.5rem;font-size:1rem;height:48px;display:flex;align-items:center;justify-content:center;gap:.5rem;border-radius:8px}@media (max-width: 768px){.search-form{flex-direction:column;gap:1rem}.search-form .w-40,.search-form .w-35,.search-form .w-25{flex:0 0 100%}}@media (max-width: 640px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(1,1fr)}.content-area,.modal-body{padding:var(--space-4)}}.loading-spinner{display:inline-block;width:20px;height:20px;border:2px solid var(--color-border);border-radius:50%;border-top-color:var(--color-primary);animation:spin 1s ease-in-out infinite}.badge{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-1) var(--space-2);font-size:.75rem;font-weight:500;border-radius:var(--radius-md);line-height:1}.badge-primary{background:var(--color-primary);color:#fff}.badge-secondary{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.badge-success{background:var(--color-success);color:#fff}.badge-warning{background:var(--color-warning);color:#fff}.badge-error{background:var(--color-error);color:#fff}.message-thread{max-height:400px;overflow-y:auto;padding:var(--space-4);background:var(--color-bg-secondary);border-radius:var(--radius-lg);margin-bottom:var(--space-4)}.message{margin-bottom:var(--space-3);padding:var(--space-3);border-radius:var(--radius-lg);max-width:80%}.message-customer{background:var(--color-primary);color:#fff;margin-left:auto}.message-admin{background:var(--color-bg-primary);color:var(--color-text-primary);border:1px solid var(--color-border)}.message-sender{font-size:.75rem;font-weight:500;margin-bottom:var(--space-1);opacity:.8}.message-content{word-wrap:break-word;line-height:1.4}.message-time{font-size:.75rem;opacity:.7;margin-top:var(--space-1);text-align:right}.message-images{display:flex;gap:var(--space-2);margin-top:var(--space-2)}.image-upload-area{border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--space-8);text-align:center;transition:all .2s ease;background:var(--color-bg-secondary)}.image-upload-area:hover{border-color:var(--color-primary);background:var(--color-bg-tertiary)}.image-upload-area.dragover{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.image-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--space-3);margin-top:var(--space-4)}.image-preview{aspect-ratio:var(--image-ratio-portrait);border-radius:var(--radius-lg);overflow:hidden;position:relative;background:var(--color-bg-tertiary)}.image-preview img{width:100%;height:100%;object-fit:cover}.image-preview-remove{position:absolute;top:var(--space-2);right:var(--space-2);background:var(--color-error);color:#fff;border:none;border-radius:50%;width:24px;height:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:all .2s ease}.image-preview-remove:hover{background:#dc2626;transform:scale(1.1)}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.form-select{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.875rem;font-family:var(--font-sans);background-color:var(--color-bg-primary);transition:all .2s ease;cursor:pointer}.form-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}textarea.form-input{resize:vertical;min-height:100px}.login-page{min-height:100vh;background:linear-gradient(135deg,#f8fafc 0%,#e2e8f0 50%,#cbd5e1 100%);display:flex;align-items:center;justify-content:center;padding:1rem;position:relative;overflow:hidden}.login-background{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.login-background:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(99,102,241,.1) 0%,transparent 70%);animation:float 20s ease-in-out infinite}.login-background:after{content:"";position:absolute;bottom:-50%;left:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(147,51,234,.1) 0%,transparent 70%);animation:float 25s ease-in-out infinite reverse}@keyframes float{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(30px,-30px) rotate(120deg)}66%{transform:translate(-20px,20px) rotate(240deg)}}.login-container{position:relative;z-index:10;width:100%;max-width:50rem;border-radius:2rem;padding-left:2rem;padding-right:2rem}.login-logo{text-align:center;margin-bottom:3rem;margin-right:2rem;padding:2rem;background:linear-gradient(135deg,rgba(99,102,241,.1),rgba(139,92,246,.1));border-radius:2rem;border:1px solid rgba(99,102,241,.2)}.login-logo-icon{display:inline-flex;align-items:center;justify-content:center;width:7rem;height:5rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:1.5rem;box-shadow:0 25px 50px -12px #6366f140;margin-bottom:1.5rem}.login-logo-icon p{font-size:3rem;font-weight:900;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.1)}.login-logo-inner{width:4rem;height:3rem;background:white;border-radius:.75rem;display:flex;align-items:center;justify-content:center}.login-logo-core{width:2.5rem;height:2rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:.5rem}.login-company-name{font-family:var(--font-display);font-size:2.5rem;font-weight:900;color:#fff;margin-bottom:.5rem;line-height:1.1;text-shadow:0 2px 4px rgba(0,0,0,.1)}.login-subtitle{color:#64748b;font-size:1.125rem;font-weight:500}.login-card{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:1.5rem;box-shadow:0 25px 50px -12px #00000040;border:1px solid rgba(255,255,255,.2);padding:2rem}.login-form-header{text-align:center;margin-bottom:2rem}.login-form-title{font-size:1.5rem;font-weight:700;color:#1e293b;margin-bottom:.5rem}.login-form-subtitle{color:#64748b}.login-form{display:flex;flex-direction:column;gap:1.5rem}.login-field{display:flex;flex-direction:column;gap:.5rem}.login-field-label{font-size:.875rem;font-weight:600;color:#374151;display:flex;align-items:center;gap:.5rem}.login-field-label-icon{width:1rem;height:1rem;color:#6366f1}.login-input-container{position:relative}.login-input{width:100%;padding:.75rem 1rem .75rem 3rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.75rem;color:#1f2937;font-size:.875rem;transition:all .2s ease}.login-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;background:white}.login-input::placeholder{color:#9ca3af}.login-input-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);width:1.25rem;height:1.25rem;color:#9ca3af;pointer-events:none}.login-password-toggle{position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:#9ca3af;background:none;border:none;cursor:pointer;padding:.25rem;border-radius:.25rem;transition:color .2s ease}.login-password-toggle:hover{color:#6b7280}.login-error{background:#fef2f2;border:1px solid #fecaca;border-radius:.75rem;padding:1rem}.login-error-text{color:#dc2626;font-size:.875rem;font-weight:500}.login-submit{width:100%;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-weight:600;padding:.75rem 1.5rem;border:none;border-radius:.75rem;box-shadow:0 10px 15px -3px #6366f14d;cursor:pointer;transition:all .2s ease;transform:translateY(0)}.login-submit:hover:not(:disabled){background:linear-gradient(135deg,#5855eb,#7c3aed);box-shadow:0 20px 25px -5px #6366f166;transform:translateY(-2px)}.login-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.login-loading{display:flex;align-items:center;justify-content:center;gap:.5rem}.login-spinner{width:1.25rem;height:1.25rem;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.login-footer{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e2e8f0;text-align:center}.login-footer-text{color:#6b7280;font-size:.875rem}.login-decoration{text-align:center;margin-top:2rem}.login-dots{display:inline-flex;align-items:center;gap:.5rem}.login-dot{width:.5rem;height:.5rem;background:#d1d5db;border-radius:50%}@media (max-width: 640px){.login-company-name{font-size:2rem}.login-card{padding:1.5rem}.login-logo-icon{width:6rem;height:4rem}.login-logo-inner{width:3.5rem;height:2.5rem}.login-logo-core{width:2rem;height:1.5rem}}.mobile-sidebar-toggle{@apply lg:hidden fixed top-4 left-4 z-50 p-2 bg-white rounded-lg shadow-lg border border-slate-200;transition:all .2s ease}.mobile-sidebar-toggle:hover{transform:scale(1.05);box-shadow:0 10px 25px #00000026}@media (max-width: 768px){.sidebar{transform:translate(-100%);transition:transform .3s ease}.sidebar.open{transform:translate(0)}.main-content{margin-left:0}}.products-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:1.5rem;width:100%}@media (min-width: 640px){.products-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.products-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1280px){.products-grid{grid-template-columns:repeat(4,1fr)}}.product-modal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;width:100%}.product-modal-grid-item{aspect-ratio:3/4;background:var(--color-bg-tertiary);border-radius:var(--radius-xl);overflow:hidden;position:relative;border:2px solid var(--color-border-light);transition:all .3s ease}.product-modal-grid-item:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.product-modal-primary{border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.product-modal-grid-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.product-modal-grid-item:hover .product-modal-grid-image{transform:scale(1.05)}.product-modal-placeholder{aspect-ratio:3/4;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--color-bg-tertiary);color:var(--color-text-muted);border-radius:var(--radius-xl);border:2px dashed var(--color-border)}.product-modal-info{background:var(--color-bg-primary);border-radius:var(--radius-xl);padding:var(--space-6);border:1px solid var(--color-border-light);box-shadow:var(--shadow-sm)}.product-modal-title{font-size:1.75rem;font-weight:700;color:var(--color-text-primary);margin-bottom:var(--space-3);font-family:var(--font-display);line-height:1.2}.product-modal-code{font-family:var(--font-mono);color:var(--color-primary);font-size:1rem;margin-bottom:var(--space-4);background:var(--color-bg-tertiary);padding:.5rem 1rem;border-radius:var(--radius-md);display:inline-block;border:1px solid var(--color-border-light);font-weight:600}.product-modal-description{color:var(--color-text-secondary);font-size:1rem;line-height:1.6;margin-top:var(--space-4)}.product-modal-colors{background:var(--color-bg-primary);border-radius:var(--radius-xl);padding:var(--space-6);border:1px solid var(--color-border-light);box-shadow:var(--shadow-sm)}.product-modal-colors-title{font-size:1rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-4);display:flex;align-items:center;gap:.5rem}.product-modal-colors-grid{display:flex;flex-wrap:wrap;gap:.75rem}.product-modal-color-tag{padding:.5rem 1rem;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;box-shadow:0 2px 4px #6366f133;transition:all .2s ease}.product-modal-color-tag:hover{transform:translateY(-1px);box-shadow:0 4px 8px #6366f14d}.product-modal-actions{background:var(--color-bg-primary);border-radius:var(--radius-xl);padding:var(--space-6);border:1px solid var(--color-border-light);box-shadow:var(--shadow-sm);text-align:center}.product-modal-action-text{color:var(--color-text-muted);font-size:.875rem;margin-top:var(--space-3);line-height:1.5}.modal-content.max-w-6xl{max-width:72rem;width:95vw;max-height:90vh}.modal-content.max-w-7xl{max-width:80rem;width:95vw;max-height:90vh}.modal-content.max-w-2xl{max-width:42rem;width:90vw;max-height:90vh}.modal-content.max-w-md{max-width:28rem;width:90vw;max-height:90vh}@media (max-width: 1024px){.product-modal-grid{grid-template-columns:repeat(2,1fr)}.modal-content.max-w-6xl{max-width:95vw;margin:1rem}}@media (max-width: 768px){.product-modal-grid{grid-template-columns:repeat(1,1fr)}.product-modal-title{font-size:1.5rem}.product-modal-info,.product-modal-colors,.product-modal-actions{padding:var(--space-4)}}.customer-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:50}.customer-modal-content{background:white;border-radius:.5rem;max-width:42rem;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040}.customer-modal-header{padding:1.5rem;border-bottom:1px solid #e5e7eb;display:flex;justify-content:between;align-items:center}.customer-modal-title{font-size:1.125rem;font-weight:600;color:#1f2937}.customer-modal-close{color:#9ca3af;cursor:pointer;padding:.25rem;border-radius:.375rem;transition:all .2s}.customer-modal-close:hover{color:#6b7280;background-color:#f3f4f6}.customer-modal-body{padding:1.5rem}.customer-modal-footer{padding:1.5rem;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:.75rem}.customization-modal-card{background:var(--color-bg-primary);border-radius:var(--radius-xl);padding:var(--space-6);border:1px solid var(--color-border-light);box-shadow:var(--shadow-sm)}.customization-modal-card-title{font-size:1.125rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-4);display:flex;align-items:center;gap:.5rem}.customization-modal-customer-info{background:var(--color-bg-tertiary);border-radius:var(--radius-lg);padding:var(--space-4);border:1px solid var(--color-border-light)}.customization-modal-customer-details{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.customization-modal-customer-item{display:flex;flex-direction:column;gap:.25rem}.customization-modal-product-info{display:flex;gap:var(--space-4);align-items:flex-start}.customization-modal-product-image{width:120px;height:160px;background:var(--color-bg-tertiary);border-radius:var(--radius-lg);overflow:hidden;flex-shrink:0;border:1px solid var(--color-border-light)}.customization-modal-product-img{width:100%;height:100%;object-fit:cover}.customization-modal-product-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--color-bg-tertiary)}.customization-modal-product-details{flex:1;display:flex;flex-direction:column;gap:var(--space-3)}.customization-modal-product-title{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);line-height:1.2}.customization-modal-product-code{font-family:var(--font-mono);color:var(--color-primary);font-size:.875rem;background:var(--color-bg-tertiary);padding:.25rem .75rem;border-radius:var(--radius-md);display:inline-block;width:fit-content;border:1px solid var(--color-border-light);font-weight:500}.customization-modal-colors{display:flex;flex-direction:column;gap:.5rem}.customization-modal-colors-label{font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.customization-modal-colors-grid{display:flex;flex-wrap:wrap;gap:.5rem}.customization-modal-color-tag{padding:.25rem .75rem;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff;border-radius:var(--radius-md);font-size:.75rem;font-weight:500;box-shadow:0 1px 3px #6366f133}.customization-modal-request-info{display:flex;flex-direction:column;gap:var(--space-4)}.customization-modal-request-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.customization-modal-request-item{display:flex;flex-direction:column;gap:.25rem}.customization-modal-label{font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.customization-modal-value{font-size:.875rem;color:var(--color-text-primary);font-weight:500}.customization-modal-status{display:flex;flex-direction:column;gap:.5rem}.customization-modal-status-badge{padding:.25rem .75rem;border-radius:var(--radius-md);font-size:.75rem;font-weight:500;display:inline-block;width:fit-content}.customization-modal-status-badge.status-pending{background:#fef3c7;color:#92400e}.customization-modal-status-badge.status-progress{background:#dbeafe;color:#1e40af}.customization-modal-status-select{padding:.375rem .75rem;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.875rem;background:var(--color-bg-primary);color:var(--color-text-primary);width:100%}.customization-modal-description{display:flex;flex-direction:column;gap:.5rem}.customization-modal-description-text{background:var(--color-bg-tertiary);padding:var(--space-3);border-radius:var(--radius-lg);font-size:.875rem;color:var(--color-text-secondary);line-height:1.5;border:1px solid var(--color-border-light)}.customization-modal-images-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3)}.customization-modal-image-item{aspect-ratio:3/4;background:var(--color-bg-tertiary);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border-light);transition:all .3s ease}.customization-modal-image-item:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.customization-modal-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.customization-modal-image-item:hover .customization-modal-image{transform:scale(1.05)}.customization-modal-messages{max-height:400px;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-2);background:var(--color-bg-tertiary);border-radius:var(--radius-lg);border:1px solid var(--color-border-light)}.customization-modal-message{background:var(--color-bg-primary);border-radius:var(--radius-lg);padding:var(--space-3);border:1px solid var(--color-border-light);box-shadow:var(--shadow-sm)}.customization-modal-message.message-customer{border-left:3px solid var(--color-primary)}.customization-modal-message.message-admin{border-left:3px solid var(--color-success)}.customization-modal-message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.customization-modal-message-sender{font-size:.875rem;font-weight:600;color:var(--color-text-primary)}.customization-modal-message-time{font-size:.75rem;color:var(--color-text-muted)}.customization-modal-message-content{font-size:.875rem;color:var(--color-text-secondary);line-height:1.5;margin-bottom:var(--space-2)}.customization-modal-message-images{display:flex;gap:var(--space-2);flex-wrap:wrap}.customization-modal-message-image{width:60px;height:60px;object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--color-border-light);transition:transform .2s ease}.customization-modal-message-image:hover{transform:scale(1.1)}.customization-modal-no-messages{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8);text-align:center}.customization-modal-reply-form{display:flex;flex-direction:column;gap:var(--space-4)}.customization-modal-reply-input{width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);font-size:.875rem;background:var(--color-bg-primary);color:var(--color-text-primary);resize:vertical;min-height:100px;font-family:inherit}.customization-modal-reply-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.customization-modal-message-input{display:flex;gap:var(--space-2);align-items:flex-end}.customization-modal-message-input .customization-modal-reply-input{min-height:auto;resize:none}.customization-modal-send-button{padding:var(--space-3) var(--space-4);background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff;border:none;border-radius:var(--radius-lg);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;white-space:nowrap;flex-shrink:0}.customization-modal-send-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.customization-modal-send-button:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (max-width: 1024px){.customization-modal-request-grid,.customization-modal-customer-details{grid-template-columns:1fr}.customization-modal-product-info{flex-direction:column}.customization-modal-product-image{width:100%;height:200px}.customization-modal-images-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.customization-modal-card{padding:var(--space-4)}.customization-modal-card-title{font-size:1rem}.customization-modal-messages{max-height:300px}.customization-modal-images-grid{grid-template-columns:1fr}.customization-modal-message-input{flex-direction:column;align-items:stretch}.customization-modal-send-button{width:100%;justify-content:center}}.customization-modal-input-container{position:relative;display:flex;align-items:flex-end;gap:var(--space-2);width:100%}.customization-modal-input-container .customization-modal-reply-input{flex:1;min-height:auto;resize:none;padding-right:3rem}.customization-modal-input-actions{position:absolute;right:var(--space-2);bottom:var(--space-2);display:flex;align-items:center;gap:var(--space-1)}.customization-modal-upload-icon{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:var(--color-bg-tertiary);color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;flex-shrink:0}.customization-modal-upload-icon:hover{background:var(--color-bg-secondary);color:var(--color-primary);border-color:var(--color-primary);transform:scale(1.05)}.customization-modal-upload-icon:active{transform:scale(.95)}.customization-modal-message-input{display:flex;flex-direction:column;gap:var(--space-3);width:100%}.customization-modal-message-input .customization-modal-reply-input{min-height:2.5rem;resize:none;font-family:inherit}.customization-modal-image-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:var(--space-2);margin-top:var(--space-2)}.customization-modal-preview-item{position:relative;aspect-ratio:1;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border-light);background:var(--color-bg-tertiary)}.customization-modal-preview-item img{width:100%;height:100%;object-fit:cover}.customization-modal-preview-remove{position:absolute;top:2px;right:2px;width:16px;height:16px;background:rgba(0,0,0,.7);color:#fff;border:none;border-radius:50%;font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.customization-modal-preview-remove:hover{background:rgba(0,0,0,.9);transform:scale(1.1)}@media (max-width: 768px){.customization-modal-input-container{flex-direction:column;align-items:stretch}.customization-modal-input-container .customization-modal-reply-input{padding-right:var(--space-3)}.customization-modal-input-actions{position:static;justify-content:flex-end;margin-top:var(--space-2)}.customization-modal-upload-icon{width:2.5rem;height:2.5rem}}.order-modal-card{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:0 1px 3px #0000001a}.order-modal-card-title{display:flex;align-items:center;gap:var(--space-2);font-size:1.125rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-4)}.order-modal-product-info{display:flex;align-items:center;gap:var(--space-4)}.order-modal-product-icon{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-shrink:0}.order-modal-product-details{flex:1}.order-modal-product-code{display:flex;align-items:center;gap:var(--space-1);font-size:1.125rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-1)}.order-modal-product-subtitle{font-size:.875rem;color:var(--color-text-muted)}.order-modal-summary{display:flex;flex-direction:column;gap:var(--space-3)}.order-modal-summary-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) 0;border-bottom:1px solid var(--color-border)}.order-modal-summary-item:last-child{border-bottom:none}.order-modal-summary-label{font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.order-modal-summary-value{font-size:.875rem;font-weight:600;color:var(--color-text-primary);font-family:Courier New,monospace}.order-modal-summary-badge{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.order-modal-form{display:flex;flex-direction:column;gap:var(--space-6)}.order-modal-form-group{display:flex;flex-direction:column;gap:var(--space-2)}.order-modal-form-label{font-size:.875rem;font-weight:600;color:var(--color-text-primary)}.order-modal-form-input,.order-modal-form-textarea{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-primary);color:var(--color-text-primary);font-size:.875rem;transition:all .2s ease}.order-modal-form-input:focus,.order-modal-form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.order-modal-form-textarea{resize:vertical;min-height:6rem}.order-modal-form-help{font-size:.75rem;color:var(--color-text-muted);line-height:1.4}.order-modal-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:var(--space-3);border-radius:var(--radius-md);font-size:.875rem;font-weight:500}.order-modal-actions{display:flex;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.order-modal-btn-secondary,.order-modal-btn-primary{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-size:.875rem;font-weight:600;transition:all .2s ease;cursor:pointer;border:none;flex:1}.order-modal-btn-secondary{background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border)}.order-modal-btn-secondary:hover{background:var(--color-bg-secondary);border-color:var(--color-text-muted)}.order-modal-btn-primary{background:linear-gradient(135deg,var(--color-primary),#6366f1);color:#fff;box-shadow:0 4px 6px #6366f140}.order-modal-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 12px #6366f14d}.order-modal-btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.order-modal-spinner{width:1rem;height:1rem;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 1024px){.order-modal-card{padding:var(--space-4)}.order-modal-actions{flex-direction:column}}@media (max-width: 768px){.order-modal-product-info{flex-direction:column;text-align:center;gap:var(--space-3)}.order-modal-summary-item{flex-direction:column;align-items:flex-start;gap:var(--space-1)}}.btn-success{background:linear-gradient(135deg,var(--color-success),#059669);color:#fff;box-shadow:var(--shadow-md)}.btn-success:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.color-spec{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;padding:.25rem .5rem;border-radius:.375rem;font-weight:500;display:inline-block;border:1px solid #f59e0b}.color-field{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;padding:.25rem .5rem;border-radius:.375rem;font-weight:500;display:inline-block;border:1px solid #f59e0b;margin-top:.5rem}.form-label{display:block;font-size:.875rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-2);font-family:var(--font-sans)}.form-input{width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-primary);color:var(--color-text-primary);font-size:.875rem;transition:all .2s ease;font-family:var(--font-sans)}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.form-input::placeholder{color:var(--color-text-muted)}.form-textarea{width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-primary);color:var(--color-text-primary);font-size:.875rem;transition:all .2s ease;resize:vertical;min-height:6rem;font-family:var(--font-sans)}.form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.form-textarea::placeholder{color:var(--color-text-muted)}.customer-checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:1.25rem;height:1.25rem;border:2px solid var(--color-border);border-radius:.375rem;background:var(--color-bg-primary);cursor:pointer;position:relative;transition:all .2s ease}.customer-checkbox:checked{background:var(--color-primary);border-color:var(--color-primary)}.customer-checkbox:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:.75rem;font-weight:700}.customer-checkbox:focus{outline:none;box-shadow:0 0 0 3px #6366f11a;border-color:var(--color-primary)}.customer-checkbox:disabled{opacity:.5;cursor:not-allowed}.customer-selection-group{background:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);padding:var(--space-4);margin-top:var(--space-3)}.customer-btn-view{@apply flex-1 bg-blue-50 hover:bg-blue-100 text-blue-700 border border-blue-200 rounded-lg px-3 py-2 text-sm font-medium transition-all duration-200 flex items-center justify-center gap-2 hover:shadow-md hover:border-blue-300 hover:bg-blue-100;}.customer-btn-edit{@apply flex-1 bg-orange-50 hover:bg-orange-100 text-orange-700 border border-orange-200 rounded-lg px-3 py-2 text-sm font-medium transition-all duration-200 flex items-center justify-center gap-2 hover:shadow-md hover:border-orange-300 hover:bg-orange-100;}.customer-btn-credentials{@apply flex-1 bg-gray-50 hover:bg-gray-100 text-gray-700 border border-gray-200 rounded-lg px-3 py-2 text-sm font-medium transition-all duration-200 flex items-center justify-center gap-2 hover:shadow-md hover:border-gray-300 hover:bg-gray-100;}.customer-btn-delete{@apply bg-red-50 hover:bg-red-100 text-red-700 border border-red-200 rounded-lg px-3 py-2 text-sm font-medium transition-all duration-200 hover:shadow-md hover:border-red-300 hover:bg-red-100;}.customer-card{background:var(--color-bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);border:1px solid var(--color-border-light);overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);height:fit-content;min-height:0}.customer-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-2px)}.customer-card-header{background:linear-gradient(135deg,var(--color-bg-secondary) 0%,var(--color-bg-tertiary) 100%);padding:var(--space-6);border-bottom:1px solid var(--color-border-light)}.customer-card-title{font-size:1.25rem;font-weight:700;color:var(--color-text-primary);margin-bottom:var(--space-1);font-family:var(--font-sans)}.customer-card-subtitle{font-size:.875rem;color:var(--color-text-secondary);font-weight:500}.customer-role-badge{padding:var(--space-2) var(--space-3);font-size:.75rem;font-weight:600;border-radius:var(--radius-full);border:1px solid;font-family:var(--font-sans)}.customer-role-admin{background:linear-gradient(135deg,#f3e8ff,#e9d5ff);color:#7c3aed;border-color:#c4b5fd}.customer-role-customer{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1d4ed8;border-color:#93c5fd}.customer-card-body{padding:var(--space-4)}.customer-info-grid{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-4)}.customer-info-item{display:flex;align-items:center;gap:var(--space-3)}.customer-info-icon{width:2.5rem;height:2.5rem;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;flex-shrink:0}.customer-info-icon-person{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1d4ed8}.customer-info-icon-email{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#15803d}.customer-info-icon-phone{background:linear-gradient(135deg,#fed7aa,#fdba74);color:#c2410c}.customer-info-icon-address{background:linear-gradient(135deg,#f3e8ff,#e9d5ff);color:#7c3aed}.customer-info-content{display:flex;flex-direction:column;gap:var(--space-1)}.customer-info-label{font-weight:600;color:var(--color-text-primary);font-size:.875rem}.customer-info-secondary{color:var(--color-text-secondary);font-size:.75rem}.customer-info-text{color:var(--color-text-secondary);font-size:.875rem;font-weight:500}.customer-actions{display:flex;gap:var(--space-2);align-items:center;margin-top:var(--space-3)}.view-customer-section{background:var(--color-bg-secondary);border-radius:var(--radius-lg);padding:var(--space-6);border:1px solid var(--color-border-light)}.view-customer-section-title{display:flex;align-items:center;gap:var(--space-2);font-size:1.125rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-4);font-family:var(--font-sans)}.view-customer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4)}.view-customer-item{display:flex;flex-direction:column;gap:var(--space-1)}.view-customer-item-full{grid-column:1 / -1}.view-customer-label{font-size:.875rem;font-weight:500;color:var(--color-text-secondary);font-family:var(--font-sans)}.view-customer-value{font-size:.875rem;color:var(--color-text-primary);font-weight:500;font-family:var(--font-sans)}.view-customer-role{display:inline-block;padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-size:.75rem;font-weight:600;text-transform:capitalize}.view-customer-role-admin{background:linear-gradient(135deg,#f3e8ff,#e9d5ff);color:#7c3aed;border:1px solid #c4b5fd}.view-customer-role-customer{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1d4ed8;border:1px solid #93c5fd}@media (max-width: 1024px){.customer-card-header,.customer-card-body{padding:var(--space-4)}.customer-info-grid{gap:var(--space-3);margin-bottom:var(--space-4)}.customer-actions{flex-wrap:wrap}.customer-actions .btn{flex:1;min-width:120px}}.customer-card{align-self:start;max-height:none}.customers-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media (max-width: 1024px){.customers-grid{grid-template-columns:1fr}}@media (max-width: 768px){.customer-card{margin:0 var(--space-2)}.view-customer-grid{grid-template-columns:1fr}.customer-actions{flex-direction:column}.customer-actions .btn{width:100%}}.order-detail-modal{max-width:1400px!important;width:90vw!important;max-height:95vh!important;min-width:1200px!important}.order-detail-modal-body{max-height:calc(95vh - 120px)!important;overflow-y:auto}.order-product-card{background:var(--color-bg-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm);transition:all .2s ease}.order-product-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border)}.order-product-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);margin-bottom:var(--space-3)}.order-product-left-section{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0}.order-product-image{width:64px;height:64px;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border-light);background:var(--color-bg-tertiary);flex-shrink:0}.order-product-image img{width:100%;height:100%;object-fit:cover;object-position:center}.order-product-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--color-bg-tertiary);color:var(--color-text-muted);font-weight:600}.order-product-info{flex:1;min-width:0}.order-product-code{font-size:1rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-2);font-family:var(--font-mono)}.order-product-quantity{display:flex;align-items:center;gap:.5rem}.order-product-quantity-label{font-size:.75rem;color:var(--color-text-muted);font-weight:500}.order-product-quantity-value{font-size:.875rem;font-weight:600;color:var(--color-text-primary)}.order-product-right-section{display:flex;align-items:center;gap:var(--space-6);flex-shrink:0}.order-product-completion,.order-product-status{display:flex;flex-direction:column;gap:.5rem;align-items:center;min-width:120px}.order-product-completion-edit{display:flex;align-items:center;gap:.5rem}.order-completion-input{width:120px!important;text-align:center;font-weight:600}.order-product-progress{display:flex;flex-direction:column;gap:.5rem;align-items:center;min-width:120px}.order-product-progress-bar{width:100%;height:6px;background:var(--color-bg-tertiary);border-radius:var(--radius-sm);overflow:hidden}.order-product-progress-fill{height:100%;background:linear-gradient(90deg,var(--color-success),var(--color-primary));border-radius:var(--radius-sm);transition:width .3s ease}.order-product-progress-text{font-size:.75rem;color:var(--color-text-secondary);font-weight:500}.order-product-details{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border-light);display:flex;flex-direction:column;gap:var(--space-3)}.order-product-description{display:flex;flex-direction:column;gap:.5rem}.order-product-detail-label{font-size:.75rem;color:var(--color-text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.025em}.order-product-detail-text{font-size:.875rem;color:var(--color-text-primary);line-height:1.5;background:var(--color-bg-tertiary);padding:.5rem .75rem;border-radius:var(--radius-md);border:1px solid var(--color-border-light)}.order-product-files{display:flex;flex-direction:column;gap:.5rem}.order-product-files-grid{display:flex;flex-wrap:wrap;gap:.5rem}.order-product-file-btn{padding:.375rem .75rem;font-size:.75rem;background:#dcfce7;color:#166534;border:1px solid #bbf7d0;border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;font-weight:500}.order-product-file-btn:hover{background:#bbf7d0;border-color:#86efac;transform:translateY(-1px)}.order-product-status-editable,.order-product-completion-editable{display:flex;flex-direction:column;gap:.5rem;align-items:center}.order-product-status-header,.order-product-completion-header{display:flex;align-items:center;gap:.5rem;width:100%;justify-content:space-between}.order-product-status-edit,.order-product-completion-edit{display:flex;align-items:center;gap:.5rem;width:100%}.order-product-completion-separator{color:var(--color-text-muted);font-weight:500}.order-product-completion-total{font-size:.75rem;color:var(--color-text-muted);font-weight:500}.order-product-completion-display{display:flex;flex-direction:column;align-items:center;gap:.25rem}.order-product-completion-value{font-size:1.25rem;font-weight:700;color:var(--color-text-primary)}.order-product-header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:var(--space-6)!important;margin-bottom:var(--space-3);flex-direction:row!important}.order-product-left-section{display:flex!important;align-items:center!important;gap:var(--space-3);flex:1;min-width:0;flex-direction:row!important}.order-product-right-section{display:flex!important;align-items:center!important;gap:var(--space-6);flex-shrink:0;flex-direction:row!important}.order-product-completion,.order-product-status{display:flex!important;flex-direction:column!important;gap:.5rem;align-items:center;min-width:120px}.order-detail-new-layout{display:flex;flex-direction:column;gap:var(--space-6);width:100%}.order-detail-section{width:100%}.order-customer-section,.order-summary-section{max-width:100%}.order-products-section{width:100%}.order-products-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4);width:100%}.order-products-grid .order-product-card{height:fit-content;min-height:200px}.order-products-grid .order-product-header{gap:var(--space-4)}.order-products-grid .order-product-right-section{gap:var(--space-4);min-width:180px}.order-conversation-section{width:100%;max-width:100%}@media (max-width: 1400px){.order-products-grid{grid-template-columns:1fr}}.order-status-select{min-width:140px;text-align:center;font-weight:500}.order-status-badge{display:inline-flex;align-items:center;padding:.375rem .75rem;font-size:.75rem;font-weight:600;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.025em}.order-status-badge.bg-yellow-100.text-yellow-800{background-color:#fef3c7;color:#92400e}.order-status-badge.bg-blue-100.text-blue-800{background-color:#dbeafe;color:#1e40af}.order-status-badge.bg-green-100.text-green-800{background-color:#dcfce7;color:#166534}.order-status-badge.bg-red-100.text-red-800{background-color:#fee2e2;color:#991b1b}.order-status-badge.bg-gray-100.text-gray-800{background-color:#f3f4f6;color:#1f2937}
