@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");:root{--color-primary:#6366f1;--color-primary-hover:#4f46e5;--color-primary-light:#818cf8;--color-primary-dark:#3730a3;--color-background:#f8fafc;--color-card-bg:#ffffff;--color-input-bg:#f1f5f9;--color-user-bg:#6366f1;--color-user-text:#ffffff;--color-assistant-bg:#f1f5f9;--color-assistant-text:#1e293b;--color-text-dark:#1e293b;--color-text-light:#ffffff;--color-text-muted:#64748b;--color-border:#e2e8f0;--color-border-light:#f1f5f9;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444}.chat-container{font-family:Montserrat,sans-serif;background-color:var(--color-background);padding:0;display:flex;justify-content:center;align-items:center}.chat-wrapper{width:100%;max-width:56rem}.chat-card{height:100vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);border-radius:1rem;overflow:hidden;background-color:var(--color-card-bg);border:1px solid var(--color-border)}@media (min-width:768px){.chat-card{height:100vh}}.chat-header{font-family:Poppins,sans-serif;border-bottom:1px solid var(--color-border);background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);position:sticky;top:0;z-index:10;padding:1rem 1.5rem}.chat-header-content{display:flex;align-items:center;justify-content:space-between}.chat-title{font-size:1.125rem;line-height:1.75rem;font-weight:600;color:var(--color-text-light);display:flex;align-items:center;gap:.5rem}@media (min-width:768px){.chat-title{font-size:1.25rem}}.new-conversation-button{display:flex;align-items:center;justify-content:center;color:var(--color-text-light);padding:0;width:auto;height:auto;border-radius:50%;transition:all .2s ease}.new-conversation-button:hover{background-color:rgba(255,255,255,.2);transform:scale(1.05)}.new-conversation-icon{width:64px;height:64px}.chat-content{flex:1 1 0%;display:flex;flex-direction:column;overflow:hidden;background-color:var(--color-text-light);padding:0}.scroll-area{flex:1 1 0%;padding:1rem}.message-container{display:flex;margin-bottom:1rem;gap:.75rem;max-width:85%}.message-container.user{margin-left:auto;flex-direction:row-reverse}.message-container.assistant{margin-right:auto;flex-direction:row}@media (min-width:768px){.message-container{max-width:80%}}.message-bubble{padding:.75rem 1rem;box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06);word-break:break-word}.message-bubble.user{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);color:var(--color-user-text);border-bottom-left-radius:1.25rem;box-shadow:0 4px 12px rgba(99,102,241,.3)}.message-bubble.assistant,.message-bubble.user{border-top-left-radius:1.25rem;border-top-right-radius:1.25rem}.message-bubble.assistant{background-color:var(--color-assistant-bg);color:var(--color-assistant-text);border-bottom-right-radius:1.25rem;border:1px solid var(--color-border-light);box-shadow:0 2px 8px rgba(0,0,0,.05)}.message-text{font-size:.875rem;line-height:1.5;white-space:pre-wrap}.input-area{padding:.75rem}@media (min-width:768px){.input-area{padding:1rem}}.input-wrapper{display:flex;gap:.5rem;align-items:center}.chat-input{background-color:var(--color-input-bg);border-radius:9999px;padding:.75rem 1.25rem;flex:1 1 0%;border:2px solid var(--color-border);transition:all .2s ease;font-size:.875rem;color:var(--color-text-dark)}.chat-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(99,102,241,.1)}.send-button{border-radius:9999px;background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);color:var(--color-text-light);flex-shrink:0;border:0;height:2.75rem;width:2.75rem;transition:all .2s ease;box-shadow:0 4px 12px rgba(99,102,241,.3)}.send-button:hover{background:linear-gradient(135deg,var(--color-primary-hover) 0,var(--color-primary-dark) 100%);transform:scale(1.05);box-shadow:0 6px 16px rgba(99,102,241,.4)}.send-button:disabled{opacity:.5}.send-icon{height:1.25rem;width:1.25rem}.modal-overlay{position:fixed;inset:0;background-color:rgba(0,0,0,.6);display:flex;justify-content:center;align-items:center;z-index:50;font-family:Poppins,sans-serif}.modal-content{background-color:var(--color-text-light);padding:2rem;border-radius:1rem;box-shadow:0 10px 15px -3px rgba(0,0,0,.1);width:90%;max-width:400px;text-align:center;border:1px solid #e5e7eb}.modal-icon-container{margin:0 auto 1rem;width:3.5rem;height:3.5rem;border-radius:9999px;background-color:#fffbeb;display:flex;align-items:center;justify-content:center}.modal-icon{width:2rem;height:2rem;color:#f59e0b}.modal-title{font-size:1.25rem;color:var(--color-text-dark);margin-bottom:.5rem}.modal-subtitle{font-size:.875rem;color:#6b7280;margin-bottom:1.5rem}.modal-actions{display:flex;gap:.75rem;justify-content:space-between}.modal-button{flex:1;padding:.75rem 1rem;border-radius:.5rem;font-weight:500;border:none;cursor:pointer;transition:background-color .2s}.modal-button.cancel{background-color:#e5e7eb;color:var(--color-text-dark)}.modal-button.cancel:hover{background-color:#d1d5db}.modal-button.confirm{background-color:var(--color-primary);color:var(--color-text-dark)}.modal-button.confirm:hover{background-color:var(--color-primary-hover)}.warning-banner{background-color:var(--color-assistant-bg);padding:1rem 2.5rem 1rem 1rem;margin:1rem;border-radius:.75rem;display:flex;align-items:center;flex-wrap:wrap;position:relative;gap:.75rem}.warning-text{font-family:Montserrat,sans-serif;font-size:.875rem;color:var(--color-text-dark);line-height:1.4;flex-basis:100%;margin:0}.warning-actions{display:flex;align-items:center;gap:.75rem;flex-basis:100%;justify-content:space-evenly}.warning-button{font-family:Poppins,sans-serif;border:none;cursor:pointer;font-weight:500;font-size:.875rem;white-space:nowrap}.warning-button.no-show{background:none;color:#4b5563;padding:.5rem}.warning-button.no-show:hover{text-decoration:underline}.warning-button.accept{background-color:var(--color-primary);color:var(--color-text-dark);border-radius:.5rem;padding:.5rem 1.5rem;transition:background-color .2s}.warning-button.accept:hover{background-color:var(--color-primary-hover)}.warning-close-button{position:absolute;top:.75rem;right:.75rem;background:none;border:none;cursor:pointer;color:#4b5563;padding:0;line-height:1}.warning-close-button:hover{color:var(--color-text-dark)}.loading-dots{display:flex;align-items:center;gap:.3rem}.loading-dots span{width:8px;height:8px;background-color:var(--color-text-dark);border-radius:50%;animation:bounce 1.4s infinite both}.loading-dots span:nth-of-type(2){animation-delay:-.8s}.loading-dots span:nth-of-type(3){animation-delay:-.4s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.products-section{display:flex;justify-content:flex-start;gap:12px;overflow:hidden}.product-card{background-color:var(--color-card-bg);border:1px solid var(--color-border);border-radius:12px;display:flex;flex-direction:column;justify-content:space-between;transition:all .3s ease;height:18em;width:9.5em;overflow:hidden;font-family:Montserrat,sans-serif;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.product-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);border-color:var(--color-primary-light)}.product-image-container{background-color:#ffffff;width:100%;height:140px;display:flex;justify-content:center;align-items:center;position:relative;padding:.5rem}.product-details{background-color:var(--color-assistant-bg);width:100%;padding:.75rem;display:flex;flex-direction:column;justify-content:space-between;flex-grow:1;border-top:1px solid var(--color-border-light)}.product-name{font-size:14px;font-weight:500;color:var(--color-text-dark);margin:2px 0 0;height:3.5em;overflow:hidden;line-height:1.3}.product-sku{font-size:11px;color:#6b7280;margin:0}.product-price{font-size:16px;font-weight:700;color:var(--color-primary);margin:4px 0 0;text-shadow:0 1px 2px rgba(99,102,241,.1)}.product-button{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);color:var(--color-text-light);border:none;border-radius:8px;padding:.6rem;font-size:13px;font-weight:600;cursor:pointer;width:100%;margin-top:.5rem;transition:all .2s ease;box-shadow:0 2px 4px rgba(99,102,241,.2)}.product-button:hover{background:linear-gradient(135deg,var(--color-primary-hover) 0,var(--color-primary-dark) 100%);transform:translateY(-1px);box-shadow:0 4px 8px rgba(99,102,241,.3)}.product-detail-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.product-detail-modal{background:white;border-radius:12px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 0;border-bottom:1px solid #e5e7eb;margin-bottom:24px}.modal-title{font-size:1.5rem;font-weight:600;color:#111827;margin:0}.modal-close-button{background:none;border:none;cursor:pointer;padding:8px;border-radius:6px;color:#6b7280;transition:all .2s}.modal-close-button:hover{background-color:#f3f4f6;color:#374151}.product-detail-content{display:grid;grid-template-columns:1fr 2fr;gap:32px;padding:0 24px 24px}.product-detail-image-section{display:flex;flex-direction:column;align-items:center}.product-detail-image{width:300px;height:300px;-o-object-fit:cover;object-fit:cover;border-radius:8px;border:1px solid #e5e7eb}.product-detail-image-placeholder{width:300px;height:300px;background-color:#f3f4f6;border:2px dashed #d1d5db;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#6b7280;font-size:.875rem}.product-detail-info{display:flex;flex-direction:column;gap:20px}.product-detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.product-detail-name{font-size:1.75rem;font-weight:700;color:#111827;margin:0;line-height:1.2}.product-detail-rating{display:flex;align-items:center;gap:4px;color:#6b7280;font-size:.875rem}.star-icon{color:#fbbf24}.product-detail-price{display:flex;align-items:center;gap:12px}.price-amount{font-size:2rem;font-weight:700;color:#6366f1}.price-original{font-size:1.25rem;color:#6b7280;text-decoration:line-through}.product-detail-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;padding:16px;background-color:#f9fafb;border-radius:8px}.meta-item{display:flex;justify-content:space-between;align-items:center}.meta-label{font-weight:500;color:#374151;font-size:.875rem}.meta-value{font-weight:600;color:#111827;font-size:.875rem}.meta-value.in-stock{color:#10b981}.meta-value.out-of-stock{color:#dc2626}.product-detail-description,.product-detail-specifications,.product-detail-tags{margin-top:16px}.product-detail-description h4,.product-detail-specifications h4,.product-detail-tags h4{font-size:1.125rem;font-weight:600;color:#111827;margin:0 0 12px}.product-detail-description p{color:#4b5563;line-height:1.6;margin:0}.specifications-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}.spec-item{display:flex;justify-content:space-between;padding:8px 12px;background-color:#f9fafb;border-radius:6px}.spec-label{font-weight:500;color:#374151;font-size:.875rem}.spec-value{font-weight:600;color:#111827;font-size:.875rem}.tags-container{display:flex;flex-wrap:wrap;gap:8px}.tag{background-color:#e5e7eb;color:#374151;padding:4px 12px;border-radius:16px;font-size:.75rem;font-weight:500}.product-detail-actions{display:flex;gap:12px;margin-top:24px}.action-button{display:flex;align-items:center;gap:8px;padding:12px 24px;border-radius:8px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s;border:none}.action-button.primary{background:linear-gradient(135deg,#6366f1,#4f46e5);color:white;box-shadow:0 4px 12px rgba(99,102,241,.3)}.action-button.primary:hover{background:linear-gradient(135deg,#4f46e5,#3730a3);transform:translateY(-1px);box-shadow:0 6px 16px rgba(99,102,241,.4)}.action-button.secondary{background-color:#f3f4f6;color:#374151;border:1px solid #d1d5db}.action-button.secondary:hover{background-color:#e5e7eb}@media (max-width:768px){.product-detail-content{grid-template-columns:1fr;gap:24px}.product-detail-image,.product-detail-image-placeholder{width:100%;max-width:300px}.product-detail-header{flex-direction:column;align-items:flex-start}.product-detail-meta,.specifications-grid{grid-template-columns:1fr}.product-detail-actions{flex-direction:column}.action-button{justify-content:center}}