.chat-container{background:var(--bg-primary);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;height:600px;width:100%;min-width:320px;min-height:400px;box-shadow:var(--shadow-lg);position:relative;border:1px solid var(--gray-200)}.chat-resize-handle{position:absolute;bottom:8px;right:8px;width:24px;height:24px;cursor:nwse-resize;color:var(--gray-300);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all .2s ease;z-index:10;-webkit-user-select:none;user-select:none;pointer-events:auto}.chat-resize-handle:hover{color:var(--primary-600);background:#6366f11a}.chat-messages{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;background:var(--bg-secondary);scroll-behavior:smooth}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:var(--radius-full)}.chat-messages::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}.message{display:flex;gap:.75rem;animation:messageSlideIn .3s cubic-bezier(.4,0,.2,1);max-width:85%}.message.user{flex-direction:row-reverse;align-self:flex-end}.message.bot{align-self:flex-start}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-avatar{width:36px;height:36px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;box-shadow:var(--shadow-sm)}.message.bot .message-avatar{background:linear-gradient(135deg,var(--primary-600) 0%,var(--accent-600) 100%)}.message.user .message-avatar{background:linear-gradient(135deg,#ec4899,#8b5cf6)}.message-bubble{padding:.875rem 1.125rem;border-radius:var(--radius-lg);font-size:.9375rem;line-height:1.5;animation:messageSlideIn .3s ease;word-wrap:break-word;word-break:break-word;box-shadow:var(--shadow-sm)}.message.bot .message-bubble{background:#fff;color:var(--text-primary);border-bottom-left-radius:.25rem}.message.user .message-bubble{background:var(--primary-600);color:#fff;border-bottom-right-radius:.25rem}.message-bubble p{margin:0}.message-products{margin-top:.875rem;display:flex;flex-direction:column;gap:.625rem}.products-title{font-size:.875rem;font-weight:600;margin-bottom:.5rem;color:var(--text-secondary)}.message-product-item{display:flex;gap:.75rem;align-items:center;padding:.75rem;background:#00000008;border-radius:var(--radius-md);font-size:.875rem;transition:background .2s}.message.user .message-product-item{background:#ffffff26}.message-product-item:hover{background:#0000000d}.message.user .message-product-item:hover{background:#ffffff40}.message-product-item .emoji{font-size:1.5rem}.message-product-item .name{flex:1;font-weight:500}.message-product-item .price{font-weight:700;white-space:nowrap}.typing-indicator{display:flex;gap:.375rem;padding:.5rem}.typing-indicator span{width:8px;height:8px;background:var(--gray-400);border-radius:var(--radius-full);animation:typingPulse 1.4s infinite ease-in-out}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typingPulse{0%,60%,to{transform:translateY(0);opacity:.7}30%{transform:translateY(-8px);opacity:1}}.chat-input-form{padding:1rem;background:#fff;border-top:1px solid var(--gray-200);display:flex;gap:.75rem;flex-shrink:0}.chat-input{flex:1;padding:.75rem 1rem;border:1.5px solid var(--gray-300);border-radius:var(--radius-md);font-size:.9375rem;outline:none;transition:all .2s ease;background:var(--bg-secondary);color:var(--text-primary);font-family:inherit}.chat-input::placeholder{color:var(--text-tertiary)}.chat-input:focus{border-color:var(--primary-600);background:#fff;box-shadow:0 0 0 3px #6366f11a}.chat-input:disabled{opacity:.5;cursor:not-allowed;background:var(--gray-100)}.send-btn{padding:.75rem 1.25rem;border:none;border-radius:var(--radius-md);background:var(--primary-600);color:#fff;font-weight:600;font-size:.9375rem;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm);white-space:nowrap}.send-btn:hover:not(:disabled){background:var(--primary-700);transform:translateY(-2px);box-shadow:var(--shadow-md)}.send-btn:active:not(:disabled){transform:translateY(0)}.send-btn:disabled{opacity:.5;cursor:not-allowed;background:var(--gray-300)}.questions-section{margin-top:1rem;padding:1rem;background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--gray-200)}.question-group{margin-bottom:1.25rem}.question-group:last-child{margin-bottom:.75rem}.question-label{display:block;margin-bottom:.75rem;font-weight:600;color:var(--text-primary);font-size:.9375rem}.question-options{display:flex;flex-wrap:wrap;gap:.5rem}.question-option{padding:.625rem 1rem;border:1.5px solid var(--gray-300);border-radius:var(--radius-md);background:#fff;cursor:pointer;transition:all .2s ease;font-size:.875rem;position:relative;font-weight:500}.question-option:hover{border-color:var(--primary-500);background:#6366f10d}.question-option.selected{border-color:var(--primary-600);background:#6366f11a;color:var(--primary-700)}.question-option.multiple.selected{padding-right:2.5rem}.checkmark{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);font-weight:700;color:var(--primary-600)}.submit-answers-btn{padding:.75rem 1.5rem;background:var(--primary-600);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:600;font-size:.9375rem;transition:all .2s ease;box-shadow:var(--shadow-sm)}.submit-answers-btn:hover:not(:disabled){background:var(--primary-700);transform:translateY(-2px);box-shadow:var(--shadow-md)}.submit-answers-btn:disabled{background:var(--gray-300);cursor:not-allowed;opacity:.6}.recommendations-section{margin-top:1rem}.recommendations-title{margin-bottom:1rem;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;margin-top:.75rem}@media (max-width: 768px){.chat-container{height:500px;min-height:350px;border-radius:var(--radius-md)}.chat-messages{padding:1rem;gap:.875rem}.message{max-width:90%}.message-bubble{padding:.75rem 1rem;font-size:.875rem}.message-avatar{width:32px;height:32px;font-size:16px}.chat-input-form{padding:.875rem;gap:.625rem}.chat-input{padding:.625rem .875rem;font-size:.875rem}.send-btn{padding:.625rem 1rem;font-size:.875rem}.products{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}@media (max-width: 480px){.chat-container{height:450px;min-height:300px}.chat-messages{padding:.875rem;gap:.75rem}.message{max-width:95%}.message-bubble{padding:.625rem .875rem;font-size:.8125rem}.message-avatar{width:28px;height:28px;font-size:14px}.chat-input-form{padding:.75rem;gap:.5rem}.chat-input{padding:.5rem .75rem;font-size:.8125rem}.send-btn{padding:.5rem .875rem;font-size:.8125rem}.chat-resize-handle{bottom:4px;right:4px}.products{grid-template-columns:1fr;gap:.75rem}.question-options{gap:.375rem}.question-option{padding:.5rem .875rem;font-size:.8125rem}}:root{--primary-hue: 245;--accent-hue: 270;--primary-500: #6366f1;--primary-600: #4f46e5;--primary-700: #4338ca;--accent-500: #a855f7;--accent-600: #9333ea;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--text-primary: #111827;--text-secondary: #6b7280;--text-tertiary: #9ca3af;--bg-primary: #ffffff;--bg-secondary: #f9fafb;--bg-tertiary: #f3f4f6;--success: #10b981;--warning: #f59e0b;--danger: #ef4444;--info: #3b82f6;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:var(--bg-secondary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shopping-app{display:flex;flex-direction:column;min-height:100vh;background:var(--bg-secondary)}.app-header{background:var(--bg-primary);padding:1rem 1.5rem;box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:50;border-bottom:1px solid var(--gray-200)}.header-container{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.platform-selector-container{max-width:1400px;margin:.75rem auto 0;padding:0}.app-title{font-size:1.5rem;font-weight:700;display:flex;align-items:center;gap:.5rem;color:var(--text-primary);text-decoration:none;transition:color .2s}.app-title:hover{color:var(--primary-600)}.no-underline{text-decoration:none}.app-nav{display:flex;gap:.5rem}.nav-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:var(--bg-secondary);border:none;border-radius:var(--radius-full);color:var(--text-secondary);font-weight:600;font-size:.875rem;text-decoration:none;transition:all .2s ease;position:relative}.nav-btn:hover{background:var(--gray-200);color:var(--text-primary)}.nav-btn.active{background:var(--primary-600);color:#fff;box-shadow:var(--shadow-md)}.nav-badge{background-color:var(--danger);color:#fff;border-radius:var(--radius-full);min-width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;padding:0 6px}.app-content{flex:1;padding:2rem 1.5rem;max-width:1400px;margin:0 auto;width:100%}.order-confirmation{display:flex;align-items:center;justify-content:center;padding:2rem;min-height:60vh}.confirmation-content{background:var(--bg-primary);border-radius:var(--radius-xl);padding:3rem 2rem;text-align:center;box-shadow:var(--shadow-xl);max-width:500px;width:100%}.confirmation-icon{font-size:4rem;color:var(--success);margin-bottom:1rem;width:80px;height:80px;background:#10b9811a;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}.confirmation-content h2{font-size:1.875rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.confirmation-content>p{color:var(--text-secondary);margin-bottom:2rem;font-size:.9375rem}.confirmation-details{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:2rem;text-align:left}.detail-row{display:flex;justify-content:space-between;padding:.875rem 0;border-bottom:1px solid var(--gray-200);font-size:.9375rem}.detail-row:last-child{border-bottom:none}.detail-row span:first-child{color:var(--text-secondary)}.detail-value{font-weight:600;color:var(--text-primary)}.confirmation-message{color:var(--text-secondary);font-size:.875rem;margin-bottom:2rem}.continue-shopping-btn{padding:.875rem 2rem;background:var(--primary-600);color:#fff;border:none;border-radius:var(--radius-md);font-weight:600;font-size:.9375rem;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-md);text-decoration:none;display:inline-block}.continue-shopping-btn:hover{background:var(--primary-700);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.add-to-cart-feedback{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background-color:var(--gray-900);color:#fff;padding:.875rem 1.5rem;border-radius:var(--radius-full);box-shadow:var(--shadow-lg);z-index:100;animation:slideUpFade 2s ease-in-out;font-size:.9375rem;font-weight:500}@media (max-width: 968px){.app-content{padding:1.5rem 1rem}}@media (max-width: 768px){.app-header{padding:.875rem 1rem}.header-container{flex-direction:column;align-items:flex-start;gap:.75rem}.app-title{font-size:1.25rem}.app-nav{width:100%;justify-content:space-between;gap:.375rem}.nav-btn{padding:.5rem .75rem;font-size:.8125rem;flex:1;justify-content:center}.app-content{padding:1.25rem 1rem}.confirmation-content{padding:2rem 1.5rem}.confirmation-icon{width:64px;height:64px;font-size:3rem}.confirmation-content h2{font-size:1.5rem}}@media (max-width: 480px){.app-header{padding:.75rem .875rem}.app-title{font-size:1.125rem}.nav-btn{padding:.5rem .625rem;font-size:.75rem;gap:.25rem}.nav-btn span{display:none}.app-content{padding:1rem .875rem}}@tailwind base;@tailwind components;@tailwind utilities;*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:#f9fafb;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;height:100%}button,input,select{font-family:inherit}@layer components{.btn-primary{@apply px-4 py-2 bg-primary-600 text-white font-semibold rounded-lg hover:bg-primary-700 hover:shadow-md transform hover:-translate-y-0.5 transition-all duration-200 disabled:opacity-50 disabled:cursor-not-allowed disabled:transform-none;}.btn-secondary{@apply px-4 py-2 bg-gray-200 text-gray-800 font-semibold rounded-lg hover:bg-gray-300 transition-all duration-200;}.card{@apply bg-white rounded-2xl shadow-sm hover:shadow-md transition-shadow duration-200 border border-gray-200;}.input-field{@apply w-full px-4 py-2 border-2 border-gray-300 rounded-lg focus:ring-2 focus:ring-primary-500 focus:border-primary-500 outline-none transition-all duration-200 bg-gray-50 focus:bg-white;}}@layer utilities{.text-gradient{@apply bg-gradient-to-r from-primary-600 to-accent-600 bg-clip-text text-transparent;}.bg-gradient-primary{@apply bg-gradient-to-r from-primary-600 to-accent-600;}.shadow-primary{box-shadow:0 4px 6px -1px #6366f11a}}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUpFade{0%{opacity:0;transform:translate(-50%,20px)}10%{opacity:1;transform:translate(-50%)}90%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-10px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.loading-spinner{text-align:center;padding:60px 20px;color:#6b7280;font-size:18px}.add-to-cart-feedback{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background-color:#111827;color:#fff;padding:.875rem 1.5rem;border-radius:9999px;box-shadow:0 10px 15px -3px #0000001a;z-index:100;animation:slideUpFade 2s ease-in-out;font-size:.9375rem;font-weight:500}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#9ca3af}
