.chat-message{display:flex;gap:12px;animation:slideIn .3s ease-out;align-items:flex-start}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;background:linear-gradient(135deg,#f0f4f8,#fdf9f9);font-weight:600}.chat-message.user .message-avatar{background:linear-gradient(135deg,#2563eb,#1e40af);color:#fff}.chat-message.ai .message-avatar{background-color:#f0f4f8;color:#2563eb}.chat-message.error .message-avatar{background-color:#fef2f2;color:#ef4444}.message-content{flex:1;display:flex;flex-direction:column;gap:4px;max-width:100%}.message-text{background:linear-gradient(90deg,#f8fafc,#fffbfb);padding:12px 16px;border-radius:8px;border:1px solid #f0e8e8;line-height:1.6;color:#0f172a;font-size:14px;word-wrap:break-word;white-space:pre-wrap;overflow-x:auto}.chat-message.user .message-text{background:linear-gradient(135deg,#2563eb,#1e40af);color:#fff;border:none}.chat-message.error .message-text{background-color:#fef2f2;color:#7f1d1d;border-left:3px solid #ef4444}.message-timestamp{font-size:12px;color:#94a3b8;padding-left:4px;font-weight:500}@media (max-width: 768px){.message-avatar{width:32px;height:32px;font-size:16px}.message-text{padding:10px 12px;font-size:13px}.message-timestamp{font-size:11px}}.chat-input{width:100%;padding:0}.input-container{display:flex;gap:12px;align-items:flex-end;background:linear-gradient(90deg,#f8fafc,#fffbfb);border:1px solid #f0e8e8;border-radius:8px;padding:12px;transition:all .2s ease}.input-container:focus-within{border-color:#2563eb;background:linear-gradient(90deg,#fff,#fffbfb);box-shadow:0 0 0 3px #2563eb1a}.chat-input textarea{flex:1;border:none;outline:none;resize:none;font-size:14px;font-family:inherit;line-height:1.5;background-color:transparent;color:#0f172a;min-height:24px;max-height:120px;font-weight:400}.chat-input textarea::placeholder{color:#94a3b8}.chat-input textarea:disabled{opacity:.5;cursor:not-allowed}.send-button{width:36px;height:36px;border:none;border-radius:6px;background:linear-gradient(135deg,#2563eb,#1e40af);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0;padding:0}.send-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #2563eb4d}.send-button:active:not(:disabled){transform:translateY(0)}.send-button:disabled{opacity:.4;cursor:not-allowed}.send-button svg{width:18px;height:18px;stroke-width:2}@media (max-width: 768px){.input-container{padding:10px}.chat-input textarea{font-size:13px}.send-button{width:32px;height:32px}.send-button svg{width:16px;height:16px}}.chat-interface{display:flex;flex-direction:column;height:100vh;background-color:#fff}.navbar{background:linear-gradient(90deg,#fff,#fffbfb);border-bottom:1px solid #f0e8e8;position:sticky;top:0;z-index:100;box-shadow:0 1px 3px #00000005}.navbar-container{max-width:1400px;margin:0 auto;padding:16px 32px;display:flex;justify-content:space-between;align-items:center;gap:48px}.navbar-logo{display:flex;align-items:center;gap:12px;flex-shrink:0;text-decoration:none}.logo-icon{width:32px;height:32px;border-radius:6px;object-fit:cover}.logo-text{font-size:18px;font-weight:700;color:#0f172a;letter-spacing:-.5px}.navbar-links{display:flex;gap:32px;flex:1}.nav-link{font-size:15px;color:#64748b;text-decoration:none;font-weight:500;transition:all .2s ease;border:1px solid #cbd5e1;background:none;cursor:pointer;padding:8px 16px;border-radius:20px}.nav-link:hover{color:#0f172a;background-color:#f5f8fc}.nav-link b{color:#2563eb;font-weight:700}.navbar-cta{flex-shrink:0}.cta-button{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,#2563eb,#1e40af);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;letter-spacing:-.3px}.cta-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #2563eb33}.cta-button:active{transform:translateY(0)}.chat-messages{flex:1;overflow-y:auto;display:flex;flex-direction:column}.empty-state{flex:1;display:flex;align-items:center;justify-content:center;padding:40px;background:linear-gradient(135deg,#fff,#fffbfb)}.empty-container{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:640px}.empty-icon{width:80px;height:80px;border-radius:50%;background-color:#f0f4f8;display:flex;align-items:center;justify-content:center;margin-bottom:24px;color:#2563eb}.empty-icon svg{color:#2563eb}.empty-state h2{font-size:28px;font-weight:700;color:#0f172a;margin-bottom:8px;letter-spacing:-.5px}.empty-subtitle{font-size:16px;color:#64748b;margin-bottom:12px;line-height:1.6}.hipaa-notice{font-size:12px;color:#94a3b8;margin-bottom:40px;font-style:italic;letter-spacing:.1px}.example-queries{width:100%;background:linear-gradient(135deg,#f8fafc,#fdf9f9);padding:32px;border-radius:12px;border:1px solid #f0e8e8}.examples-title{font-size:14px;font-weight:600;color:#64748b;margin-bottom:16px;text-align:left;text-transform:uppercase;letter-spacing:.5px}.example-grid{display:grid;grid-template-columns:1fr;gap:12px}.example-item{background:linear-gradient(90deg,#fff,#fffbfb);padding:16px;border-radius:8px;font-size:14px;color:#0f172a;text-align:left;border:1px solid #f0e8e8;border-left:3px solid #2563eb;transition:all .2s ease;cursor:default;line-height:1.5}.example-item:hover{background:linear-gradient(90deg,#f5f8fc,#fef5f5);border-color:#f0e8e8;transform:translate(4px)}.messages-container{flex:1;display:flex;flex-direction:column;padding:24px 32px;gap:16px;overflow-y:auto;background:linear-gradient(135deg,#fff,#fffbfb)}.loading-message{display:flex;align-items:center;justify-content:flex-start;margin-bottom:8px}.loading-dots{display:flex;gap:6px;padding:12px 16px;background-color:#f0f4f8;border-radius:8px}.loading-dots span{width:8px;height:8px;border-radius:50%;background-color:#2563eb;animation:bounce 1.4s infinite ease-in-out}.loading-dots span:nth-child(1){animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.chat-footer{background:linear-gradient(90deg,#fff,#fffbfb);border-top:1px solid #f0e8e8;padding:16px 32px 24px}.footer-status{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;min-height:32px}.status-badge{display:flex;align-items:center;gap:8px;padding:6px 12px;background:linear-gradient(90deg,#f0f4f8,#fdf9f9);border-radius:20px;font-size:13px;font-weight:500;color:#64748b}.status-dot{width:8px;height:8px;border-radius:50%;animation:pulse 2s ease-in-out infinite}.status-badge.connected .status-dot{background-color:#10b981}.status-badge.error .status-dot{background-color:#ef4444}.status-badge.checking .status-dot{background-color:#f59e0b}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.footer-action{background:none;border:none;color:#64748b;font-size:13px;font-weight:500;cursor:pointer;padding:6px 12px;border-radius:6px;transition:all .2s ease}.footer-action:hover{background:linear-gradient(90deg,#f0f4f8,#fdf9f9);color:#0f172a}@media (max-width: 1024px){.navbar-container{padding:16px 24px;gap:24px}.navbar-links{gap:24px}.messages-container,.chat-footer{padding:16px 24px}}@media (max-width: 768px){.navbar-container{flex-wrap:wrap;padding:12px 16px;gap:12px}.navbar-logo{gap:8px}.logo-icon{width:28px;height:28px}.logo-text{font-size:16px}.navbar-links{gap:16px;order:3;width:100%;justify-content:center;font-size:14px}.nav-link{font-size:13px}.example-grid{grid-template-columns:1fr}.example-item{font-size:13px;padding:12px}.messages-container{padding:12px 16px}.chat-footer{padding:12px 16px 16px}.footer-status{flex-direction:column;gap:8px;align-items:flex-start}.empty-state{padding:20px}.empty-state h2{font-size:22px}.empty-subtitle{font-size:14px}.empty-icon{width:64px;height:64px}}.app{width:100%;height:100vh;display:flex;flex-direction:column;background-color:#fff}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8fafc;min-height:100vh}#root{min-height:100vh;display:flex;justify-content:center;align-items:center;padding:0}
