@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";
:root{--background:#09090b;--foreground:#fafafa;--primary:#8b5cf6;--primary-hover:#7c3aed;--primary-glow:#8b5cf659;--secondary:#18181b;--accent:#2dd4bf;--accent-glow:#2dd4bf40;--danger:#f43f5e;--warning:#f59e0b;--success:#10b981;--card-bg:#18181bd9;--border:#27272a;--border-subtle:#ffffff0f;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--glass-bg:#ffffff0a;--glass-border:#ffffff17;--gradient-glow:radial-gradient(ellipse at 30% 0%, #8b5cf62e 0%, transparent 55%), radial-gradient(ellipse at 80% 80%, #2dd4bf1a 0%, transparent 50%);--score-high:#10b981;--score-mid:#f59e0b;--score-low:#6b7280;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px}html,body{background-color:var(--background);height:100%;color:var(--foreground);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;overflow:hidden}body:before{content:"";background:var(--gradient-glow);z-index:-1;pointer-events:none;position:fixed;inset:0}*{box-sizing:border-box}.layout-container{gap:1rem;height:100vh;padding:1rem;display:flex}.glass-panel{background:var(--card-bg);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 8px 40px #0006,inset 0 1px #ffffff0f}.chat-section{flex-direction:column;flex:2;min-width:0;display:flex}.product-section{flex-direction:column;flex:1;min-width:0;display:flex}.header{border-bottom:1px solid var(--border-subtle);background:#00000026;align-items:center;gap:.75rem;padding:1rem 1.5rem;display:flex}.header h1{letter-spacing:-.02em;background:linear-gradient(135deg,#a78bfa 0%,#2dd4bf 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.25rem;font-weight:700}.live-badge{letter-spacing:.06em;color:var(--accent);text-transform:uppercase;align-items:center;gap:.4rem;margin-left:auto;font-size:.7rem;font-weight:600;display:flex}.live-dot{background:var(--accent);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite livePulse}@keyframes livePulse{0%,to{opacity:1;box-shadow:0 0 0 0 var(--accent-glow);transform:scale(1)}50%{opacity:.7;transform:scale(1.2);box-shadow:0 0 0 4px #0000}}.cart-header-btn{border-radius:var(--radius-sm);color:var(--foreground);cursor:pointer;font-size:.8rem;font-weight:500;font-family:var(--font-sans);background:#8b5cf61f;border:1px solid #8b5cf64d;align-items:center;gap:.4rem;padding:.4rem .75rem;transition:all .2s;display:flex;position:relative}.cart-header-btn:hover{border-color:var(--primary);color:#fff;background:#8b5cf633}.cart-count-badge{background:var(--primary);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.65rem;font-weight:700;animation:.3s cubic-bezier(.34,1.56,.64,1) cartPop;display:flex}@keyframes cartPop{0%{transform:scale(.5)}to{transform:scale(1)}}.chat-messages{scroll-behavior:smooth;flex-direction:column;flex:1;gap:.875rem;padding:1.25rem 1.5rem;display:flex;overflow-y:auto}.message-wrapper{flex-direction:column;gap:.25rem;animation:.3s ease-out both fadeInUp;display:flex}.message-wrapper.user{align-items:flex-end}.message-wrapper.assistant{align-items:flex-start}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.message{border-radius:var(--radius-md);max-width:78%;padding:.875rem 1.1rem;font-size:.9rem;line-height:1.6}.message.user{background:linear-gradient(135deg, var(--primary) 0%, #6d28d9 100%);color:#fff;box-shadow:0 4px 15px -3px var(--primary-glow);border-bottom-right-radius:4px}.message.assistant{border:1px solid var(--border-subtle);color:var(--foreground);background:#ffffff0d;border-bottom-left-radius:4px}.message-image-thumb{border-radius:var(--radius-sm);object-fit:cover;border:2px solid #ffffff26;max-width:160px;max-height:120px;margin-bottom:.5rem;display:block}.message.assistant p{margin:0 0 .5rem}.message.assistant p:last-child{margin-bottom:0}.message.assistant strong{color:#c4b5fd;font-weight:600}.message.assistant em{color:var(--accent);font-style:italic}.message.assistant ul,.message.assistant ol{margin:.4rem 0 .4rem 1.2rem;padding:0}.message.assistant li{margin-bottom:.2rem}.message.assistant code{background:#8b5cf626;border:1px solid #8b5cf633;border-radius:4px;padding:.1em .4em;font-family:JetBrains Mono,Fira Code,monospace;font-size:.85em}.model-label{color:#52525b;letter-spacing:.03em;padding-left:.25rem;font-size:.65rem}.typing-indicator{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:#ffffff0d;border-bottom-left-radius:4px;align-items:center;gap:.3rem;width:fit-content;padding:.875rem 1.1rem;display:flex}.typing-dot{background:#6b7280;border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite typingBounce}.typing-dot:first-child{animation-delay:0s}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{background:#52525b;transform:translateY(0)}30%{background:var(--primary);transform:translateY(-5px)}}.input-area{border-top:1px solid var(--border-subtle);background:#00000040;flex-direction:column;gap:.5rem;padding:1rem;display:flex}.input-row{gap:.5rem;width:100%;display:flex}.input-field{border:1px solid var(--border);color:#fff;border-radius:var(--radius-sm);font-size:.9rem;font-family:var(--font-sans);background:#ffffff0a;outline:none;flex:1;padding:.75rem 1rem;transition:border-color .2s,background .2s,box-shadow .2s}.input-field:focus{border-color:var(--primary);background:#8b5cf60f;box-shadow:0 0 0 3px #8b5cf61f}.input-field::placeholder{color:#52525b}.icon-btn{border:1px solid var(--border);color:#71717a;border-radius:var(--radius-sm);cursor:pointer;background:#ffffff0a;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;transition:all .2s;display:flex}.icon-btn:hover{border-color:var(--primary);color:var(--primary);background:#8b5cf61f}.icon-btn.send-btn{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 0 12px var(--primary-glow)}.icon-btn.send-btn:hover{background:var(--primary-hover);box-shadow:0 0 20px var(--primary-glow);transform:scale(1.05)}.icon-btn.send-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.image-preview-wrap{width:fit-content;display:inline-block;position:relative}.image-preview-thumb{border-radius:var(--radius-sm);border:1px solid var(--border);object-fit:cover;width:52px;height:52px}.image-remove-btn{background:var(--danger);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:700;line-height:1;display:flex;position:absolute;top:-6px;right:-6px;box-shadow:0 2px 6px #0006}.product-grid{flex-direction:column;flex:1;gap:.75rem;padding:1rem;display:flex;overflow-y:auto}.product-card{border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;background:#ffffff08;gap:.875rem;padding:.875rem;transition:transform .2s,box-shadow .2s,border-color .2s,background .2s;animation:.4s cubic-bezier(.34,1.1,.64,1) both cardSlideIn;display:flex;position:relative;overflow:hidden}@keyframes cardSlideIn{0%{opacity:0;transform:translate(24px)scale(.97)}to{opacity:1;transform:translate(0)scale(1)}}.product-card:before{content:"";background:var(--score-color,var(--score-low));border-radius:3px 0 0 3px;width:3px;transition:background .3s;position:absolute;top:0;bottom:0;left:0}.product-card:hover{background:#ffffff0f;border-color:#8b5cf640;transform:translateY(-2px)translate(-1px);box-shadow:0 10px 30px -8px #8b5cf64d}.product-img{border-radius:var(--radius-sm);object-fit:cover;border:1px solid var(--border);background:#27272a;flex-shrink:0;width:68px;height:68px}.product-body{flex-direction:column;flex:1;gap:.3rem;min-width:0;display:flex}.product-top-row{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.product-name{color:var(--foreground);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.875rem;font-weight:600;line-height:1.3;overflow:hidden}.product-price{color:var(--accent);flex-shrink:0;font-size:.95rem;font-weight:700}.product-meta-row{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.category-tag{color:#a78bfa;text-transform:uppercase;letter-spacing:.05em;background:#8b5cf61f;border:1px solid #8b5cf633;border-radius:999px;padding:.1rem .45rem;font-size:.65rem;font-weight:600}.stock-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:.1rem .45rem;font-size:.65rem;font-weight:600}.stock-badge.in-stock{color:#10b981;background:#10b9811f;border:1px solid #10b98140}.stock-badge.low-stock{color:#f59e0b;background:#f59e0b1f;border:1px solid #f59e0b4d}.stock-badge.out-of-stock{color:#f43f5e;background:#f43f5e1a;border:1px solid #f43f5e33}.score-row{align-items:center;gap:.5rem;margin-top:.1rem;display:flex}.score-label{color:#52525b;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;font-size:.6rem;font-weight:500}.score-bar-track{background:#ffffff0f;border-radius:999px;flex:1;height:4px;overflow:hidden}.score-bar-fill{background:var(--score-color,var(--score-low));border-radius:999px;height:100%;transition:width .6s cubic-bezier(.34,1.1,.64,1)}.score-value{color:var(--score-color,var(--score-low));text-align:right;flex-shrink:0;min-width:2.5rem;font-size:.6rem;font-weight:600}.add-to-cart-btn{color:#a78bfa;border-radius:var(--radius-sm);cursor:pointer;font-size:.72rem;font-weight:600;font-family:var(--font-sans);letter-spacing:.02em;background:0 0;border:1px solid #8b5cf64d;align-self:flex-start;align-items:center;gap:.35rem;margin-top:.4rem;padding:.3rem .6rem;transition:all .18s;display:flex}.add-to-cart-btn:hover{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 4px 12px var(--primary-glow);transform:scale(1.03)}.add-to-cart-btn.added{color:#10b981;background:#10b98126;border-color:#10b98166}.empty-state{color:#3f3f46;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.75rem;padding:2rem;display:flex}.empty-state-icon{opacity:.4;font-size:2.5rem}.empty-state-title{color:#52525b;font-size:.875rem;font-weight:600}.empty-state-sub{color:#3f3f46;font-size:.75rem;line-height:1.5}.sidebar-header{border-bottom:1px solid var(--border-subtle);background:#00000026;align-items:center;gap:.75rem;padding:1rem 1.25rem;display:flex}.sidebar-header h2{color:var(--foreground);margin:0;font-size:.95rem;font-weight:600}.result-count{color:var(--accent);text-transform:uppercase;letter-spacing:.06em;background:#2dd4bf1f;border:1px solid #2dd4bf33;border-radius:999px;margin-left:auto;padding:.15rem .5rem;font-size:.65rem;font-weight:700}.flash-sale-badge{background:var(--danger);color:#fff;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:.15rem .45rem;font-size:.6rem;font-weight:700;animation:1.5s ease-in-out infinite alternate flashPulse}@keyframes flashPulse{0%{opacity:1;box-shadow:0 0 #f43f5e80}to{opacity:.85;box-shadow:0 0 0 4px #f43f5e00}}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#8b5cf666}
