@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap");:root,:root[data-theme=dark]{--bg-main:#0c0e14;--bg-card:rgba(22,26,37,.65);--bg-card-hover:rgba(30,35,48,.8);--border-glass:hsla(0,0%,100%,.08);--border-focus:rgba(243,198,35,.5);--primary:#f3c623;--primary-glow:rgba(243,198,35,.25);--primary-hover:#ffd74a;--accent:#f97316;--accent-glow:rgba(249,115,22,.15);--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#64748b;--bubble-user:#f3c623;--bubble-user-text:#0c0e14;--bubble-bot:rgba(22,26,37,.7);--bubble-bot-text:#cbd5e1;--bubble-system:rgba(99,102,241,.12);--bubble-system-text:#a5b4fc;--bubble-system-border:rgba(99,102,241,.25);--bg-gradient:radial-gradient(at 0% 0%,rgba(243,198,35,.04) 0px,transparent 50%),radial-gradient(at 100% 100%,rgba(249,115,22,.04) 0px,transparent 50%);--font-family:"Plus Jakarta Sans",system-ui,sans-serif;--font-heading:"Outfit",system-ui,sans-serif;--transition-smooth:all 0.3s cubic-bezier(0.4,0,0.2,1);--transition-spring:all 0.4s cubic-bezier(0.175,0.885,0.32,1.275)}:root[data-theme=light]{--bg-main:#f8fafc;--bg-card:hsla(0,0%,100%,.85);--bg-card-hover:rgba(241,245,249,.9);--border-glass:rgba(148,163,184,.25);--border-focus:rgba(217,119,6,.5);--primary:#d97706;--primary-glow:rgba(217,119,6,.15);--primary-hover:#b45309;--accent:#ea580c;--accent-glow:rgba(234,88,12,.1);--text-primary:#0f172a;--text-secondary:#334155;--text-muted:#64748b;--bubble-user:#f3c623;--bubble-user-text:#0c0e14;--bubble-bot:#fff;--bubble-bot-text:#1e293b;--bubble-system:rgba(79,70,229,.06);--bubble-system-text:#4f46e5;--bubble-system-border:rgba(79,70,229,.18);--bg-gradient:radial-gradient(at 0% 0%,rgba(243,198,35,.06) 0px,transparent 55%),radial-gradient(at 100% 100%,rgba(249,115,22,.05) 0px,transparent 55%)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-main);background-image:var(--bg-gradient);color:var(--text-primary);font-family:var(--font-family);min-height:100vh;overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .3s ease,color .3s ease}.glass-panel{background:var(--bg-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glass);box-shadow:0 8px 32px 0 rgba(0,0,0,.37);transition:var(--transition-smooth)}.glass-panel:hover{border-color:rgba(76,81,103,.35);box-shadow:0 12px 40px 0 rgba(0,0,0,.45)}.app-container{display:flex;height:100vh;width:100vw}.sidebar{width:320px;display:flex;flex-direction:column;border-right:1px solid var(--border-glass);padding:1.5rem}.main-chat{flex:1 1;display:flex;flex-direction:column;height:100%;position:relative;min-width:0}.chat-header{height:70px;padding:0 2rem;justify-content:space-between;border-bottom:1px solid var(--border-glass)}.bot-info,.chat-header{display:flex;align-items:center}.bot-info{gap:.75rem}.bot-avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--accent));display:flex;align-items:center;justify-content:center;box-shadow:0 0 15px var(--primary-glow)}.bot-name{font-family:var(--font-heading);font-size:1.1rem;font-weight:600}.bot-status{display:flex;align-items:center;gap:.35rem;font-size:.8rem;color:var(--text-secondary)}.status-dot{width:8px;height:8px;border-radius:50%;background-color:#10b981;animation:pulse-dot 2s infinite}.messages-wrapper{flex:1 1;overflow-y:auto;overflow-x:hidden;padding:2rem;display:flex;flex-direction:column;gap:1.5rem}.messages-wrapper::-webkit-scrollbar{width:6px}.messages-wrapper::-webkit-scrollbar-track{background:transparent}.messages-wrapper::-webkit-scrollbar-thumb{background:rgba(54,58,73,.4);border-radius:3px}.messages-wrapper::-webkit-scrollbar-thumb:hover{background:rgba(76,81,103,.6)}.message-row{display:flex;width:100%;gap:.75rem;align-items:flex-start}.message-row.user{justify-content:flex-end}.message-row.assistant,.message-row.bot{justify-content:flex-start}.message-row.system{justify-content:center;margin:.5rem 0}.message-icon-wrapper{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;flex-shrink:0}.message-icon-wrapper.bot-icon{background:linear-gradient(135deg,var(--primary),var(--accent));color:#0c0e14;box-shadow:0 0 10px var(--primary-glow);align-self:flex-start;margin-top:2px}.message-bubble{max-width:70%;padding:1rem 1.25rem;border-radius:18px;font-size:.95rem;line-height:1.5;white-space:pre-wrap;animation:slide-up .3s cubic-bezier(.16,1,.3,1) forwards;position:relative}.message-row.user .message-bubble{background:var(--bubble-user);color:var(--bubble-user-text);border-bottom-right-radius:4px;box-shadow:0 4px 15px var(--primary-glow)}.message-row.assistant .message-bubble,.message-row.bot .message-bubble{background:var(--bubble-bot);border:1px solid var(--border-glass);color:var(--bubble-bot-text);border-bottom-left-radius:4px}.message-link{color:var(--primary);text-decoration:underline;font-weight:600;transition:var(--transition-smooth)}.message-link:hover{color:var(--primary-hover)}.message-row.user .message-link{color:var(--bubble-user-text);opacity:.9}.message-row.user .message-link:hover{opacity:1;color:var(--bubble-user-text)}.message-row.system .message-bubble{background:var(--bubble-system);border:1px solid var(--bubble-system-border);color:var(--bubble-system-text);border-radius:12px;max-width:85%;font-size:.85rem;padding:.6rem 1rem;text-align:center;box-shadow:none}.input-panel{padding:1.5rem 2rem;border-top:1px solid var(--border-glass)}.input-container{display:flex;gap:.75rem;align-items:center;padding:.5rem .75rem;border-radius:14px;border:1px solid var(--border-glass);transition:var(--transition-smooth)}.input-container:focus-within{border-color:var(--primary);box-shadow:0 0 15px var(--primary-glow)}.chat-input{flex:1 1;color:var(--text-primary);font-family:var(--font-family);font-size:.95rem;outline:none;resize:none;max-height:100px}.chat-input,.icon-btn{background:transparent;border:none;padding:.5rem}.icon-btn{color:var(--text-secondary);cursor:pointer;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:var(--transition-smooth)}.icon-btn:hover{background:hsla(0,0%,100%,.05);color:var(--text-primary)}.send-btn{background:var(--primary);color:#fff;border:none;cursor:pointer;padding:.65rem;border-radius:10px;display:flex;align-items:center;justify-content:center;transition:var(--transition-spring)}.send-btn:hover{background:var(--primary-hover);transform:scale(1.05)}.send-btn:disabled{background:rgba(43,46,59,.4);color:var(--text-muted);cursor:not-allowed;transform:none}.sources-container{margin-top:.75rem;border-top:1px dashed var(--border-glass);padding-top:.5rem;display:flex;flex-direction:column;gap:.35rem}.source-tag{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;color:var(--accent);background:var(--accent-glow);padding:.2rem .5rem;border-radius:4px;border:1px solid rgba(13,204,242,.15);align-self:flex-start}.lead-form-card{margin-top:1rem;padding:1.25rem;border-radius:12px;border:1px solid var(--border-glass);background:rgba(16,18,24,.8);display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:400px}.lead-form-title{font-family:var(--font-heading);font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.form-group{display:flex;flex-direction:column;gap:.35rem}.form-group label{font-size:.75rem;color:var(--text-secondary);font-weight:500}.form-input{background:rgba(33,35,44,.5);border:1px solid var(--border-glass);border-radius:8px;color:var(--text-primary);font-family:var(--font-family);font-size:.85rem;padding:.5rem .75rem;outline:none;transition:var(--transition-smooth)}.form-input:focus{border-color:var(--primary);background:rgba(43,46,59,.8)}.form-submit-btn{background:linear-gradient(135deg,var(--primary),var(--primary-hover));color:#fff;border:none;font-family:var(--font-heading);font-weight:600;padding:.6rem;border-radius:8px;cursor:pointer;transition:var(--transition-smooth);margin-top:.5rem}.form-submit-btn:hover{filter:brightness(1.1)}.form-submit-btn:disabled{background:rgba(43,46,59,.4);color:var(--text-muted);cursor:not-allowed}.escalation-badge{display:flex;align-items:center;gap:.5rem;font-size:.8rem;background:rgba(242,158,13,.15);border:1px solid rgba(242,158,13,.25);color:#f4a825;padding:.4rem .8rem;border-radius:8px;margin-top:.75rem;align-self:flex-start}.typing-indicator{display:flex;gap:4px;padding:4px 8px;align-items:center}.typing-dot{width:6px;height:6px;background-color:var(--text-muted);border-radius:50%;animation:typing-bounce 1.4s ease-in-out infinite both}.typing-dot:first-child{animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}.welcome-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:2rem;text-align:center;max-width:600px;margin:0 auto;gap:1.5rem}.welcome-title{font-family:var(--font-heading);font-size:2.2rem;font-weight:700;background:linear-gradient(135deg,var(--text-primary) 30%,var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.welcome-subtitle{color:var(--text-secondary);font-size:1.05rem;line-height:1.6}.frequent-questions-row{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:.75rem;gap:.75rem;margin-top:1.5rem;width:100%}.question-pill{background:var(--bg-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glass);color:var(--text-secondary);padding:.8rem 1.25rem;border-radius:12px;font-size:.85rem;font-weight:500;cursor:pointer;transition:var(--transition-smooth);display:flex;align-items:center;justify-content:flex-start;text-align:left;gap:.6rem;font-family:var(--font-family);box-shadow:0 4px 12px rgba(0,0,0,.15);width:100%}.question-pill:hover{background:var(--bg-card-hover);border-color:var(--primary);color:var(--primary);transform:translateY(-2px);box-shadow:0 6px 16px var(--primary-glow)}@keyframes pulse-dot{0%{transform:scale(.95);box-shadow:0 0 0 0 rgba(16,185,129,.7)}70%{transform:scale(1);box-shadow:0 0 0 6px rgba(16,185,129,0)}to{transform:scale(.95);box-shadow:0 0 0 0 rgba(16,185,129,0)}}@keyframes typing-bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.history-title{font-size:.75rem;text-transform:uppercase;color:var(--text-muted);letter-spacing:.05em;margin-bottom:.75rem;margin-top:1.5rem}.new-chat-btn{background:var(--bg-card);border:1px solid var(--border-glass);color:var(--text-primary);font-family:var(--font-heading);font-size:.95rem;font-weight:600;padding:.75rem 1rem;border-radius:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;transition:var(--transition-smooth)}.new-chat-btn:hover{background:var(--primary);border-color:var(--primary);box-shadow:0 0 15px var(--primary-glow)}@media (max-width:768px){.app-container{width:100%;max-width:100vw;overflow:hidden}.sidebar{display:none}.main-chat{width:100%;min-width:0}.messages-wrapper{padding:1rem}.message-bubble{max-width:85%}.chat-header{padding:0 1rem}.input-panel{padding:1rem}.frequent-questions-row{grid-template-columns:1fr;gap:.5rem!important}.welcome-container{padding:1.5rem 1rem!important;gap:1rem!important}.welcome-title{font-size:1.75rem!important}.welcome-subtitle{font-size:.95rem!important}}.brand-logo{display:flex;align-items:center;gap:.4rem;font-family:var(--font-heading);font-weight:800;font-style:italic;font-size:1.2rem;letter-spacing:-.02em;-webkit-user-select:none;-moz-user-select:none;user-select:none}.brand-logo.large{font-size:2rem;gap:.6rem;margin-bottom:.5rem}.brand-run{color:var(--text-primary)}.brand-runner-icon{width:22px;height:22px;border-radius:50%;background-color:#f3c623;color:#0c0e14;display:flex;align-items:center;justify-content:center;padding:3px;box-shadow:0 0 10px rgba(243,198,35,.4)}.brand-runner-icon img{width:100%;height:100%;object-fit:contain;border-radius:50%}.brand-logo.large .brand-runner-icon{width:32px;height:32px;padding:4px}.brand-day{color:#f3c623}.chat-expired-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:1.25rem;background:rgba(239,68,68,.08);border:1px dashed rgba(239,68,68,.3);border-radius:12px;text-align:center;width:100%;animation:slide-up .3s ease}.chat-expired-text{font-size:.9rem;font-weight:500;color:#ef4444}.new-chat-btn-expired{background:var(--primary);color:var(--bubble-user-text);border:none;font-family:var(--font-heading);font-weight:700;padding:.6rem 1.25rem;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:var(--transition-spring);box-shadow:0 4px 12px var(--primary-glow)}.new-chat-btn-expired:hover{background:var(--primary-hover);transform:scale(1.03)}.skeleton{background:linear-gradient(90deg,hsla(0,0%,100%,.04) 25%,hsla(0,0%,100%,.09) 37%,hsla(0,0%,100%,.04) 63%);background-size:400% 100%;animation:skeleton-loading 1.4s ease infinite;border-radius:4px;display:inline-block}[data-theme=light] .skeleton{background:linear-gradient(90deg,rgba(0,0,0,.04) 25%,rgba(0,0,0,.08) 37%,rgba(0,0,0,.04) 63%);background-size:400% 100%}@keyframes skeleton-loading{0%{background-position:100% 50%}to{background-position:0 50%}}.skeleton-text{height:14px;margin-bottom:8px;border-radius:4px;width:100%}.skeleton-text:last-child{margin-bottom:0}.skeleton-message{padding:1.25rem;border-radius:18px;width:280px;max-width:70%;border:1px solid var(--border-glass);display:flex;flex-direction:column;gap:.5rem}.skeleton-message.user{background:rgba(243,198,35,.08);border-bottom-right-radius:4px;align-self:flex-end}[data-theme=light] .skeleton-message.user{background:rgba(217,119,6,.08)}.skeleton-message.bot{background:var(--bg-card);border-bottom-left-radius:4px;align-self:flex-start}.skeleton-session-id{height:12px;width:100%;border-radius:4px}