@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";:root{--bg-dark:#0f172a;--bg-card:#1e293bb3;--primary:#3b82f6;--primary-hover:#2563eb;--primary-glow:#3b82f680;--text-main:#f8fafc;--text-muted:#94a3b8;--user-msg:linear-gradient(135deg, #3b82f6, #8b5cf6);--bot-msg:#1e293bcc;--border-light:#ffffff1a;--glass-blur:blur(12px)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-dark);color:var(--text-main);background-image:radial-gradient(at 0 0,#100f15 0,#0000 50%),radial-gradient(at 50% 0,#2f3e6a 0,#0000 50%),radial-gradient(at 100% 0,#722741 0,#0000 50%);background-attachment:fixed;justify-content:center;align-items:center;min-height:100vh;font-family:Outfit,sans-serif;display:flex}#root{width:100%;height:100vh}.app-container{flex-direction:column;max-width:1200px;height:100vh;margin:0 auto;display:flex}.app-header{text-align:center;border-bottom:1px solid var(--border-light);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);z-index:10;background:#0f172a66;padding:1.5rem 2rem}.app-header h1{background:linear-gradient(90deg,#60a5fa,#c084fc);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.25rem;font-size:2rem;font-weight:700}.app-header p{color:var(--text-muted);font-size:.9rem;font-weight:300}.chat-container{scrollbar-width:thin;scrollbar-color:var(--primary) transparent;flex-direction:column;flex:1;padding:2rem;display:flex;overflow-y:auto}.chat-container::-webkit-scrollbar{width:6px}.chat-container::-webkit-scrollbar-thumb{background:var(--primary);border-radius:10px}.messages-list{flex-direction:column;gap:1.5rem;padding-bottom:1rem;display:flex}.message-wrapper{width:100%;display:flex}.message-wrapper.user{justify-content:flex-end}.message-wrapper.assistant{justify-content:flex-start}.message-bubble{border-radius:1.5rem;max-width:85%;padding:1.2rem;line-height:1.5;animation:.3s forwards slideIn;box-shadow:0 4px 20px #0000001a}.user .message-bubble{background:var(--user-msg);color:#fff;border-bottom-right-radius:.5rem}.assistant .message-bubble{background:var(--bot-msg);border:1px solid var(--border-light);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-bottom-left-radius:.5rem}.message-text{white-space:pre-wrap}.products-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin-top:1.5rem;display:grid}.product-card{text-align:left;background:#ffffff08;border:1px solid #ffffff14;border-radius:1rem;flex-direction:column;transition:all .3s cubic-bezier(.25,.8,.25,1);display:flex;overflow:hidden}.product-card:hover{box-shadow:0 10px 30px #0000004d, 0 0 15px var(--primary-glow);background:#ffffff0f;border-color:#ffffff26;transform:translateY(-5px)}.product-image-placeholder{color:#ffffff1a;background:linear-gradient(135deg,#3b82f633,#8b5cf633);border-bottom:1px solid #ffffff0d;justify-content:center;align-items:center;height:140px;font-size:3rem;font-weight:700;display:flex}.product-details{flex-direction:column;flex:1;padding:1.25rem;display:flex}.product-details h3{color:#fff;margin-bottom:.25rem;font-size:1.1rem;font-weight:600}.product-company{color:var(--primary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.75rem;font-size:.85rem;font-weight:500}.product-price-row{align-items:baseline;gap:.75rem;margin-bottom:1rem;display:flex}.price{color:#fff;font-size:1.4rem;font-weight:700}.discount{color:#4ade80;background:#22c55e33;border-radius:.25rem;padding:.2rem .5rem;font-size:.75rem;font-weight:600}.product-desc{color:var(--text-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;margin-bottom:1.25rem;font-size:.9rem;display:-webkit-box;overflow:hidden}.product-tags{flex-wrap:wrap;gap:.5rem;display:flex}.tag{color:#cbd5e1;background:#ffffff1a;border-radius:1rem;padding:.3rem .6rem;font-size:.75rem}.chat-input-area{-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-top:1px solid var(--border-light);background:#0f172a99;padding:1.5rem 2rem}.chat-input-area form{gap:1rem;max-width:1000px;margin:0 auto;display:flex}.chat-input-area input{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:2rem;flex:1;padding:1rem 1.5rem;font-family:inherit;font-size:1rem;transition:all .3s}.chat-input-area input:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-glow);background:#ffffff14;outline:none}.chat-input-area button{background:var(--user-msg);color:#fff;cursor:pointer;border:none;border-radius:2rem;padding:0 2rem;font-family:inherit;font-size:1rem;font-weight:600;transition:all .3s}.chat-input-area button:hover:not(:disabled){box-shadow:0 4px 15px var(--primary-glow);transform:translateY(-2px)}.chat-input-area button:disabled{opacity:.5;cursor:not-allowed}.loading-bubble{align-items:center;gap:.5rem;display:flex;padding:1.5rem!important}.dot{background:var(--text-muted);border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite both bounce}.dot:first-child{animation-delay:-.32s}.dot:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media screen and (width<=768px){.app-header{padding:1rem}.app-header h1{font-size:1.5rem}.chat-container{padding:1rem}.message-bubble{max-width:95%;padding:1rem}.products-grid{grid-template-columns:1fr;gap:.75rem}.chat-input-area{padding:1rem}.chat-input-area form{gap:.5rem}.chat-input-area input{padding:.75rem 1rem;font-size:.95rem}.chat-input-area button{padding:0 1.25rem;font-size:.95rem}}
