:root{--background:#fff;--foreground:#1f2937;--card:#fff;--card-foreground:#1f2937;--popover:#fff;--popover-foreground:#1f2937;--primary:#0065ff;--primary-foreground:#fff;--secondary:#f8fafc;--secondary-foreground:#374151;--muted:#f1f5f9;--muted-foreground:#64748b;--accent:#f1f5f9;--accent-foreground:#374151;--destructive:#ef4444;--destructive-foreground:#fff;--border:#e2e8f0;--input:#f1f5f9;--ring:#0065ff;--sidebar-background:#fff;--sidebar-foreground:#374151;--sidebar-primary:#0065ff;--sidebar-primary-foreground:#fff;--sidebar-accent:#f1f5f9;--sidebar-accent-foreground:#374151;--sidebar-border:#e2e8f0;--sidebar-ring:#0065ff;--keyboard-height:0px}@supports (-webkit-touch-callout:none){input,select,textarea{font-size:16px}}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-1{flex:1}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.w-full{width:100%}.h-full{height:100%}.h-screen{height:100vh}.min-w-full{min-width:100%}.max-w-4xl{max-width:56rem}.max-w-2xl{max-width:42rem}.m-0{margin:0}.m-1{margin:.25rem}.m-2{margin:.5rem}.m-3{margin:.75rem}.m-4{margin:1rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mt-2{margin-top:.5rem}.ml-4{margin-left:1rem}.mr-8{margin-right:2rem}.mx-auto{margin-left:auto;margin-right:auto}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.pl-4{padding-left:1rem}.gap-2{gap:.5rem}.gap-6{gap:1.5rem}.space-y-1>*+*{margin-top:.25rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-mono{font-family:Inter,sans-serif}.italic{font-style:italic}.leading-relaxed{line-height:1.625}.text-gray-600{color:#4b5563}.text-gray-700{color:#374151}.text-gray-800{color:#1f2937}.text-blue-600{color:#2563eb}.bg-gray-100{background-color:#f3f4f6}.bg-gray-900{background-color:#111827}.bg-blue-50{background-color:#eff6ff}.bg-green-400{background-color:#4ade80}.border{border:1px solid #e5e7eb}.border-4{border-width:4px}.border-l-4{border-left-width:4px}.border-blue-500{border-color:#3b82f6}.border-gray-300{border-color:#d1d5db}.border-collapse{border-collapse:collapse}.rounded{border-radius:.25rem}.rounded-lg{border-radius:.5rem}.block{display:block}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-x-auto{overflow-x:auto}.text-left{text-align:left}.list-disc{list-style-type:disc}.list-decimal{list-style-type:decimal}.list-outside{list-style-position:outside}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.hover\:text-blue-800:hover{color:#1e40af}.underline{text-decoration-line:underline}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes pulse{50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:absolute{position:absolute}.md\:w-auto{width:auto}}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.rounded-full{border-radius:50%}.h-12{height:3rem}.w-12{width:3rem}.h-9{height:2.25rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.w-10{width:2.5rem}.p-6{padding:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.pt-0{padding-top:0}.space-y-1\.5>*+*{margin-top:.375rem}.rounded-md{border-radius:.375rem}.shadow-sm{box-shadow:0 1px 2px #0000000d}.focus-visible\:outline-none:focus-visible{outline-offset:2px;outline:2px solid #0000}.focus-visible\:ring-2:focus-visible{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow,0 0 #0000);--tw-ring-shadow:0 0 0 2px var(--ring)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:var(--ring)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.ring-offset-background{--tw-ring-offset-color:var(--background)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.inline-flex{display:inline-flex}.gap-0\.5{gap:.125rem}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.bg-background{background-color:var(--background)}.bg-card{background-color:var(--card)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-accent{background-color:var(--accent)}.bg-destructive{background-color:var(--destructive)}.bg-input{background-color:var(--input)}.text-foreground{color:var(--foreground)}.text-card-foreground{color:var(--card-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-accent-foreground{color:var(--accent-foreground)}.text-destructive-foreground{color:var(--destructive-foreground)}.text-muted-foreground{color:var(--muted-foreground)}.border-input{border-color:var(--input)}.hover\:bg-primary\/90:hover{background-color:#4585f4e6}.hover\:bg-secondary\/80:hover{background-color:#f8fafccc}.hover\:bg-destructive\/90:hover{background-color:#ef4444e6}.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:underline:hover{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.tracking-tight{letter-spacing:-.025em}.leading-none{line-height:1}.file\:border-0::file-selector-button{border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}@media (min-width:768px){.md\:text-sm{font-size:.875rem;line-height:1.25rem}}.app-container{width:100%;max-width:100vw;height:100dvh;display:flex;overflow:hidden}@supports not (height:100dvh){.app-container{height:calc(var(--vh,1vh)*100)}}.elegant-sidebar{background:var(--sidebar-background);border-right:1px solid var(--sidebar-border);z-index:40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);flex-direction:column;width:300px;height:100vh;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;left:0;transform:translate(-100%)}.elegant-sidebar-open{transform:translate(0)}.elegant-sidebar-closed{transform:translate(-100%)}.elegant-sidebar-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:35;opacity:0;background:#0006;width:100%;height:100%;animation:.3s ease-out forwards backdrop-fade-in;position:fixed;top:0;left:0}@keyframes backdrop-fade-in{0%{opacity:0}to{opacity:1}}.elegant-sidebar-header{background:linear-gradient(180deg,var(--sidebar-background)0%,#f8fafc80 100%);border-bottom:1px solid #e2e8f04d;position:relative}.sidebar-header-main{justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.25rem 1rem;display:flex}.sidebar-header-actions{align-items:center;gap:.375rem;display:flex}.new-session-btn{width:2.25rem;height:2.25rem;color:var(--primary);cursor:pointer;border:none;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s ease-out;display:flex;box-shadow:0 1px 3px #0000001a}.new-session-btn:hover:not(:disabled){opacity:.9;background:#fff;transform:scale(1.02);box-shadow:0 2px 6px #00000026}.new-session-btn:active:not(:disabled){transform:scale(.98)}.new-session-btn:disabled{opacity:.7;cursor:not-allowed}.new-session-btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.loading-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:1rem;height:1rem;animation:1s linear infinite spin}.sidebar-brand{flex:1;align-items:center;gap:.3rem;min-width:0;display:flex}.sidebar-brand-icon{color:#fff;background:#6366f1;border-radius:50%;flex-shrink:0;width:1.7rem;height:1.7rem;padding:6px}.sidebar-brand-text{flex:1;min-width:0}.elegant-sidebar-title{color:var(--sidebar-foreground);letter-spacing:-.025em;margin:0;font-size:1.125rem;font-weight:600;line-height:1.3}.sidebar-subheader{padding:0 1.25rem 1rem}.elegant-sidebar-subtitle{color:var(--muted-foreground);margin:0 0 .75rem;font-size:.75rem;font-weight:400;line-height:1.5}.new-chat-btn{border:1.5px solid var(--primary);width:100%;color:var(--primary);cursor:pointer;letter-spacing:.01em;background:0 0;border-radius:.5rem;justify-content:center;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:600;transition:all .2s ease-out;display:flex}.new-chat-btn:hover:not(:disabled){background:var(--primary);color:#fff;transform:translateY(-1px);box-shadow:0 3px 8px #0065ff40}.new-chat-btn:active:not(:disabled){box-shadow:none;transform:translateY(0)}.new-chat-btn:disabled{opacity:.6;cursor:not-allowed}.new-chat-btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.new-chat-btn .loading-spinner{border:2px solid #0065ff40;border-top-color:var(--primary)}.sidebar-header-text{flex:1;min-width:0}.elegant-close-btn{width:2.25rem;height:2.25rem;color:var(--muted-foreground);cursor:pointer;background:0 0;border:none;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s ease-out;display:flex}.elegant-close-btn:hover{background:var(--sidebar-accent);color:var(--sidebar-accent-foreground);transform:scale(1.02)}.elegant-close-btn:active{transform:scale(.98)}.elegant-close-btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.elegant-sidebar-content{scrollbar-width:thin;scrollbar-color:var(--muted-foreground)transparent;flex:1;padding:0;overflow:hidden auto}.elegant-sidebar-content::-webkit-scrollbar{width:6px}.elegant-sidebar-content::-webkit-scrollbar-track{background:0 0}.elegant-sidebar-content::-webkit-scrollbar-thumb{background:var(--muted-foreground);opacity:.5;border-radius:3px}.elegant-sidebar-content::-webkit-scrollbar-thumb:hover{opacity:.8}.elegant-sidebar-toggle{z-index:30;background:var(--background);border:1px solid var(--border);cursor:pointer;width:3rem;height:3rem;color:var(--foreground);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:.75rem;justify-content:center;align-items:center;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:1.25rem;left:1.25rem;overflow:hidden;box-shadow:0 4px 12px #0000001a}.elegant-toggle-visible{opacity:1;pointer-events:all;transform:translate(0)scale(1)}.elegant-toggle-hidden{opacity:0;pointer-events:none;transform:translate(-20px)scale(.9)}.elegant-sidebar-toggle:hover{background:var(--accent);border-color:var(--primary);transform:translate(0)scale(1.05);box-shadow:0 8px 25px #00000026}.elegant-sidebar-toggle:active{transform:translate(0)scale(.95)}.toggle-tooltip{background:var(--popover);color:var(--popover-foreground);white-space:nowrap;opacity:0;pointer-events:none;border:1px solid var(--border);border-radius:.5rem;margin-left:.75rem;padding:.5rem .75rem;font-size:.875rem;font-weight:500;transition:all .2s ease-out;position:absolute;top:50%;left:100%;transform:translateY(-50%);box-shadow:0 4px 12px #00000026}.elegant-sidebar-toggle:hover .toggle-tooltip{opacity:1;transform:translateY(-50%)translate(4px)}@media (min-width:768px){.elegant-sidebar-toggle{top:1.5rem;left:1.5rem}.elegant-sidebar-backdrop{display:none}}@media (max-width:767px){.elegant-sidebar{width:min(320px,100vw - 2rem)}.toggle-tooltip{display:none}.elegant-close-btn{visibility:visible}.sidebar-header-main{padding:1rem 1rem .75rem}.sidebar-subheader{padding:0 1rem 1rem}}.main-content-with-sidebar{transition:margin-left .3s cubic-bezier(.4,0,.2,1)}.elegant-sidebar-toggle:focus-visible,.elegant-close-btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.elegant-sidebar.animate-in{animation:.3s cubic-bezier(.4,0,.2,1) forwards sidebar-slide-in}.elegant-sidebar.animate-out{animation:.3s cubic-bezier(.4,0,.2,1) forwards sidebar-slide-out}@keyframes sidebar-slide-in{0%{transform:translate(-100%);box-shadow:0 0 #0000}to{transform:translate(0);box-shadow:2px 0 20px #0000001a}}@keyframes sidebar-slide-out{0%{transform:translate(0);box-shadow:2px 0 20px #0000001a}to{transform:translate(-100%);box-shadow:0 0 #0000}}.elegant-sidebar-toggle.loading{pointer-events:none}.elegant-sidebar-toggle.loading svg{animation:1s linear infinite spin}@media (prefers-color-scheme:dark){.elegant-sidebar{border-right-color:#ffffff1a}.elegant-sidebar-backdrop{background:#0009}}@media (prefers-reduced-motion:reduce){.elegant-sidebar,.elegant-close-btn,.elegant-sidebar-backdrop{transition:none;animation:none}}.main-content{flex-direction:column;flex:1;transition:margin-left .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}@media (min-width:768px){.main-content-sidebar-open{margin-left:300px}}.header{border-bottom:1px solid var(--border);background-color:var(--background);flex-shrink:0;justify-content:left;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.header-title{color:var(--foreground);margin:0;font-size:1rem;font-weight:600}.header-status{align-items:center;gap:1rem;display:flex}.header-light{background:#fff;border-bottom:1px solid #e5e7eb;flex-shrink:0;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;display:flex}.header-left{align-items:center;gap:.75rem;display:flex}@media (max-width:768px){.header-left{gap:0}}.header-menu-btn{color:#374151;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s;display:flex}.header-menu-btn:hover{background:#f3f4f6}.header-logo{align-items:center;gap:.5rem;display:flex}.header-logo-icon{color:#fff;background:#5f64f2;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.header-logo-text{letter-spacing:-.01em;font-size:1.125rem;font-weight:600}.header-logo-pbp{color:#6366f1}.header-logo-name{color:#1f2937}.header-center{justify-content:center;padding:0 .5rem;display:flex}.header-journey-map,.header-journey-map .journey-map-container{width:fit-content}.header-journey-map ol{background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);border:1px solid #e2e8f0;width:fit-content;box-shadow:0 2px 8px #0000000a;gap:.25rem!important;padding:.4rem .6rem!important}.header-journey-map li{flex-shrink:0;font-size:.7rem!important}.header-journey-map li span.font-medium{font-size:.7rem!important}.header-journey-map li span:first-child{width:16px!important;height:16px!important;margin-right:.35rem!important;font-size:.6rem!important}.header-journey-map li span:first-child svg{width:9px!important;height:9px!important}.header-journey-map li>div{margin-left:.35rem!important;margin-right:0!important}.header-journey-map li>div>div{width:12px!important}.header-journey-map .ml-3{display:none}.header-right{align-items:center;gap:.75rem;display:flex}.header-language-selector{position:relative}.header-language-btn{color:#6366f1;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #6366f1;border-radius:100px;align-items:center;gap:.5rem;padding:.5rem .75rem;font-family:Inter,sans-serif;font-size:.725rem;font-weight:400;transition:all .2s;display:flex}.header-language-btn:hover{background:#fafafa;border-color:#d8b4fe}.header-language-globe{color:#3b82f6;flex-shrink:0;width:16px;height:16px}.header-language-text{color:#1f2937;font-size:.75rem;font-weight:400}.header-language-chevron{color:#6b7280;flex-shrink:0;margin-left:.25rem;transition:transform .2s}.header-language-chevron.open{transform:rotate(180deg)}.header-language-dropdown{z-index:100;background:#fff;border:1px solid #e5e7eb;border-radius:10px;min-width:160px;max-height:300px;padding:.25rem;position:absolute;top:calc(100% + 4px);right:0;overflow-y:auto;box-shadow:0 10px 40px #0000001a}.header-language-option{text-align:left;color:#374151;cursor:pointer;background:0 0;border:none;border-radius:6px;width:100%;padding:.5rem .75rem;font-size:.75rem;transition:all .15s;display:block}.header-language-option:hover{background:#f3f4f6}.header-language-option.active{color:#4f46e5;background:#eef2ff;font-weight:500}@media (max-width:768px){.header-language-text,.header-language-chevron{display:none}.header-language-btn{gap:0;padding:.5rem}}.header-learn-btn{color:#fff;cursor:pointer;background:#0065ff;border:none;border-radius:100px;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;transition:all .2s;display:flex;box-shadow:0 2px 8px #0857ce40}.header-learn-btn:hover{background:#0648b3;transform:translateY(-1px);box-shadow:0 4px 12px #0857ce59}.header-learn-btn.active{background:#053d96}.playbook-container{flex-direction:column;height:100%;display:flex}.playbook-back-header{background:#fff;border-bottom:1px solid #e5e7eb;flex-shrink:0;align-items:center;padding:.75rem 1.25rem;display:flex}.playbook-back-btn{color:#374151;cursor:pointer;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.playbook-back-btn:hover{color:#1f2937;background:#e5e7eb}.playbook-back-btn svg{flex-shrink:0}@media (max-width:640px){.header-light{padding:.625rem 1rem}.header-menu-btn{width:36px;height:36px}.header-logo-icon{width:32px;height:32px}.header-logo-text{font-size:1rem}.header-center{display:none}.header-learn-btn{white-space:nowrap;gap:.25rem;padding:.5rem .75rem;font-size:.75rem}.header-learn-btn span:not(:first-child){display:none}.header-learn-btn span:first-child{font-size:14px!important}.playbook-back-header{padding:.625rem 1rem}.playbook-back-btn{padding:.5rem .75rem;font-size:.8125rem}}@media (max-width:400px){.header-learn-btn{min-width:auto;padding:.4rem .6rem}.header-learn-btn span:first-child{font-size:12px!important}}@media (max-width:900px){.header-center{display:none}}.sidebar-header-toggle{border:1px solid var(--border);background:var(--background);width:2.5rem;height:2.5rem;color:var(--foreground);cursor:pointer;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s ease-out;display:flex}.sidebar-header-toggle:hover{background:var(--accent);color:var(--accent-foreground);border-color:var(--primary);transform:scale(1.05)}.sidebar-header-toggle:active{transform:scale(.95)}.sidebar-header-toggle:focus-visible{outline:2px solid var(--ring);outline-offset:2px}@media (min-width:768px){.header{padding:1rem 1.5rem}.header-title{font-size:1.125rem}}.content-area{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.scrollable-content{scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;flex:1;position:relative;overflow:auto}.scrollable-content::-webkit-scrollbar{display:none}.welcome-screen{flex-direction:column;gap:1rem;width:100%;height:100%;padding:1rem;display:flex}.welcome-header{text-align:center;margin-bottom:1rem}@media (min-width:768px){.welcome-header{margin-bottom:1.5rem}}.welcome-title{margin-bottom:.25rem;font-size:1.125rem;font-weight:700}@media (min-width:768px){.welcome-title{font-size:1.25rem}}@media (min-width:1024px){.welcome-title{font-size:1.5rem}}.welcome-description{color:var(--muted-foreground);max-width:42rem;margin-left:auto;margin-right:auto;font-size:.8rem}@media (min-width:768px){.welcome-description{font-size:.875rem}}.knowledge-cards{flex-direction:row;grid-template-columns:1fr 1fr;justify-content:center;justify-items:center;gap:.75rem;width:100%;max-width:1200px;margin-bottom:1rem;margin-left:auto;margin-right:auto;display:flex}@media (min-width:768px){.knowledge-cards{grid-template-columns:1fr 1fr 1fr 1fr;gap:1rem;margin-bottom:1.25rem}}@media (min-width:1024px){.knowledge-cards{grid-template-columns:1fr 1fr 1fr 1fr}}@media (min-width:1280px){.knowledge-cards{grid-template-columns:1fr 1fr 1fr 1fr}}.knowledge-card{cursor:pointer;height:100%;transition:box-shadow .2s}.knowledge-card:hover{box-shadow:0 2px 4px -1px #0000001a,0 1px 2px -1px #0000000f}.knowledge-card.blue{background-color:#ebf5ff;border-color:#bfdbfe}.knowledge-card.green{background-color:#ecfdf5;border-color:#a7f3d0}.knowledge-card.purple{background-color:#f5f3ff;border-color:#ddd6fe}.knowledge-card.orange{background-color:#fff7ed;border-color:#fed7aa}.card-header{padding:.75rem .75rem .25rem}.card-header-content{align-items:center;gap:.5rem;display:flex}.card-icon-container{background-color:#ffffff80;border-radius:.375rem;flex-shrink:0;padding:.375rem}.card-icon{width:1rem;height:1rem}.card-title{font-size:.8rem;font-weight:600;line-height:1.2}@media (min-width:768px){.card-title{font-size:.875rem}}.card-content{padding:0 .75rem .75rem}.card-description{color:var(--muted-foreground);font-size:.75rem;line-height:1.3}@media (min-width:768px){.card-description{font-size:.8rem}}.welcome-message-container{margin:1.5rem 0;padding:0 .5rem}@media (min-width:768px){.welcome-message-container{margin:2rem 0;padding:0}}.welcome-message{background:linear-gradient(135deg,#f8faff 0%,#e8f2ff 100%);border:1px solid #e0e7ff;border-radius:1rem;align-items:flex-start;gap:.875rem;padding:1.25rem;transition:all .2s ease-in-out;display:flex;box-shadow:0 2px 8px #3b82f614}.welcome-message:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f61f}.welcome-message-icon{background:linear-gradient(135deg,#4f46e5 0%,#3b82f6 100%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:flex;box-shadow:0 2px 6px #4f46e54d}.welcome-message-content{flex:1;min-width:0}.welcome-message-text{color:#374151;margin:0;font-size:.875rem;font-weight:500;line-height:1.6}.welcome-message-markdown{color:#374151;font-size:.875rem;line-height:1.6}.welcome-message-markdown p{margin:0;font-weight:500}.welcome-message-markdown p:not(:last-child){margin-bottom:.5rem}@media (min-width:768px){.welcome-message{gap:1rem;padding:1.5rem}.welcome-message-text,.welcome-message-markdown{font-size:.9rem}}.customer-discovery-form{width:100%;margin-bottom:1.5rem}@media (min-width:768px){.customer-discovery-form{margin-bottom:2rem}}.welcome-actions{flex-direction:column;justify-content:center;gap:.75rem;display:flex}@media (min-width:640px){.welcome-actions{flex-direction:row;gap:1rem}}.action-button{align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.chat-container{width:100%;max-width:1400px;height:100%;margin-left:auto;margin-right:auto;padding:1rem;overflow-x:hidden}@media (max-width:768px){.chat-container{padding:1rem .75rem}}.message-list{flex-direction:column;gap:1rem;display:flex}.message-wrapper{width:100%}@media (max-width:768px){.message-wrapper>div{margin-left:0!important}}.user-message{justify-content:flex-end;margin-bottom:1rem;display:flex}.agent-message{justify-content:flex-start;margin-bottom:1rem;display:flex}.message-bubble-container{max-width:80%}@media (min-width:768px){.message-bubble-container{max-width:70%}}.message-bubble{border-radius:1.125rem;padding:.75rem 1rem;font-size:.875rem;line-height:1.5;transition:background-color .2s ease-in-out,border-color .2s ease-in-out}.user-message-bubble{color:#fff;background-color:#0065ff}.agent-message-bubble{color:#374151;background-color:#f8fafc;border:1px solid #e2e8f0}.form-submission-bubble{color:#1e40af;background-color:#eff6ff;border:1px solid #93c5fd}.message-text{white-space:pre-wrap;visibility:visible;opacity:1;margin:0;display:block}.typing-cursor{color:currentColor;margin-left:2px;font-weight:400;animation:1s infinite blink;display:inline-block}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.streaming-text{position:relative;overflow:hidden}.streaming-text-content{display:inline;position:relative}.pdf-preview{max-width:100%}.enhanced-typing-cursor{vertical-align:text-bottom;background:#0065ff;border-radius:2px;width:2px;height:1.2em;margin-left:3px;animation:1.2s ease-in-out infinite cursorBlink;display:inline-block;position:relative;box-shadow:0 0 4px #4585f466}.typing-text{display:inline;position:relative}@keyframes cursorBlink{0%,45%{opacity:1;background-color:#0065ff;transform:scaleY(1)}50%,95%{opacity:.3;background-color:#0065ff;transform:scaleY(.8)}to{opacity:1;background-color:#0065ff;transform:scaleY(1)}}.typewriter-text{white-space:nowrap;animation:20ms step-end forwards typing;overflow:hidden}@keyframes typing{0%{width:0}to{width:100%}}.word-reveal{opacity:0;animation:.3s ease-out forwards wordAppear;display:inline-block;transform:translateY(2px)}@keyframes wordAppear{0%{opacity:0;transform:translateY(3px)scale(.98)}50%{opacity:.8;transform:translateY(1px)scale(1.01)}to{opacity:1;transform:translateY(0)scale(1)}}.char-reveal{opacity:0;animation:.15s ease-out forwards charAppear;display:inline-block;transform:translateY(4px)}@keyframes charAppear{0%{opacity:0;transform:translateY(4px)scale(.9)}70%{opacity:.9;transform:translateY(-1px)scale(1.05)}to{opacity:1;transform:translateY(0)scale(1)}}.token-fade-in{animation:.4s ease-out forwards tokenFadeIn}@keyframes tokenFadeIn{0%{opacity:0;transform:translate(-3px)scale(.95)}60%{opacity:.8;transform:translate(1px)scale(1.02)}to{opacity:1;transform:translate(0)scale(1)}}.text-wave{animation:.6s ease-in-out forwards wave;display:inline-block}@keyframes wave{0%{opacity:0;transform:translateY(10px)rotateX(90deg)}50%{opacity:.8;transform:translateY(-2px)rotateX(-5deg)}to{opacity:1;transform:translateY(0)rotateX(0)}}.streaming-bubble{transition:all .3s;animation:3s ease-in-out infinite breathe}@keyframes breathe{0%,to{box-shadow:0 2px 8px #4585f41a}50%{box-shadow:0 4px 16px #4585f433}}.progressive-reveal{opacity:0;animation:.8s ease-out forwards progressiveShow}@keyframes progressiveShow{0%{opacity:0;filter:blur(1px);transform:translateY(20px)scale(.9)}50%{opacity:.7;filter:blur(.5px);transform:translateY(-3px)scale(1.02)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}.enhanced-streaming-indicator{color:#0065ff;align-items:center;gap:4px;font-size:.75rem;font-weight:500;animation:2s ease-in-out infinite pulse;display:inline-flex}.typing-dots{gap:2px;display:inline-flex}.typing-dot{background:#0065ff;border-radius:50%;width:4px;height:4px;animation:1.4s ease-in-out infinite dotBounce}.typing-dot:first-child{animation-delay:0s}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes dotBounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-8px)}}.content-transition{transition:all .3s cubic-bezier(.4,0,.2,1)}.message-content-enter{opacity:0;animation:.5s ease-out forwards messageEnter;transform:translateY(10px)}@keyframes messageEnter{to{opacity:1;transform:translateY(0)}}.streaming-indicator{color:#0065ff;font-size:.75rem;font-weight:500;animation:2s ease-in-out infinite pulse}.message-markdown{margin:0;animation:.3s ease-in-out fadeInMarkdown}@keyframes fadeInMarkdown{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.message-markdown h1,.message-markdown h2,.message-markdown h3,.message-markdown h4,.message-markdown h5,.message-markdown h6{margin-top:.5rem;margin-bottom:.5rem}@media (max-width:768px){.message-markdown h1,.message-markdown h2,.message-markdown h3,.message-markdown h4,.message-markdown h5,.message-markdown h6{font-size:.85rem}}.message-markdown h1:first-child,.message-markdown h2:first-child,.message-markdown h3:first-child,.message-markdown h4:first-child,.message-markdown h5:first-child,.message-markdown h6:first-child{margin-top:0}.message-markdown p{margin-bottom:.5rem!important}@media (max-width:768px){.message-markdown p{margin-bottom:.25rem!important}}.message-markdown p:last-child{margin-bottom:0}.message-markdown ul,.message-markdown ol{margin-bottom:.75rem;padding-left:1.25rem}.message-markdown ul:last-child,.message-markdown ol:last-child{margin-bottom:0}.message-markdown li{margin-bottom:.25rem}.message-markdown blockquote{margin:.75rem 0}.message-markdown blockquote:last-child{margin-bottom:0}.message-markdown pre,.message-markdown code{margin-bottom:.75rem}.message-markdown pre:last-child,.message-markdown code:last-child{margin-bottom:0}.message-markdown table{margin-bottom:.75rem}.message-markdown table:last-child{margin-bottom:0}.message-timestamp{color:#9ca3af;text-align:right;margin-top:.25rem;font-size:.75rem}.agent-message .message-timestamp{text-align:left}.message-badge{color:#fff;background-color:#0065ff;border-radius:.5rem;margin-bottom:.25rem;padding:.25rem .5rem;font-size:.75rem;display:inline-block}.form-container{border:1px solid var(--border);border-radius:.5rem;width:100%;margin-bottom:1rem;box-shadow:0 1px 2px #0000000d}.form-header{border-bottom:1px solid var(--border);background-color:#f8fafc;border-top-left-radius:.5rem;border-top-right-radius:.5rem;padding:.75rem}.form-title{align-items:center;gap:.5rem;font-size:1rem;font-weight:600;display:flex}.form-description{color:#4b5563;margin-top:.25rem;margin-bottom:.5rem;font-size:14px;line-height:1.4}.form-body{padding:.75rem}.form-fields{flex-direction:column;gap:1rem;width:100%;display:flex}.form-field{width:100%}.field-mobile{flex-direction:column;gap:.375rem;display:flex}.field-label{color:#374151;align-items:center;padding-top:0;font-size:.65rem;font-weight:400;line-height:1;display:flex}.field-desktop{display:none}@media (min-width:768px){.field-mobile{display:none}.field-desktop{grid-template-columns:repeat(12,minmax(0,1fr));align-items:flex-start;gap:1rem;width:100%;display:grid}}.field-label-desktop{grid-column:span 4/span 4}.field-label-text{color:#374151;font-size:.8rem;font-weight:500;line-height:1.3}.field-input-container{grid-column:span 8/span 8}.field-input{width:100%}.field-textarea{resize:none;width:100%}.field-select{background-color:var(--background);border:1px solid var(--border);color:var(--foreground);border-radius:.375rem;padding:.5rem .75rem;font-size:.875rem}.form-footer{border-top:1px solid var(--border);background-color:#f8fafc;border-bottom-right-radius:.5rem;border-bottom-left-radius:.5rem;padding:.75rem}.form-actions{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex;justify-content:flex-end!important}.input-container .input-actions{align-items:center;gap:2rem;justify-content:center!important}.input-area{background-color:var(--background);flex-shrink:0;padding:1rem;transition:all .3s}.input-area-dark{background-color:#fff;flex-shrink:0;padding:1rem 1.5rem;transition:all .3s;box-shadow:0 -4px 20px #0000000f}.input-area-dark.shadow{box-shadow:0 -4px 20px #0000001a}.voice-error-banner{background:linear-gradient(135deg,#fef2f2 0%,#fee2e2 100%);border:1px solid #fecaca;border-radius:.75rem;justify-content:space-between;align-items:center;gap:.75rem;max-width:56rem;margin-bottom:.75rem;margin-left:auto;margin-right:auto;padding:.75rem 1rem;animation:.3s ease-out slideDown;display:flex}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.voice-error-text{color:#dc2626;flex:1;font-size:.875rem;font-weight:500}.voice-error-dismiss{color:#dc2626;cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;transition:background .2s;display:flex}.voice-error-dismiss:hover{background:#dc26261a}.input-container-dark{flex-direction:column;gap:.75rem;max-width:56rem;margin-left:auto;margin-right:auto;display:flex}.input-actions-dark{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.input-button-dark{color:#374151;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;align-items:center;gap:.5rem;height:2.25rem;font-size:.875rem;transition:all .2s ease-in-out;display:inline-flex}.input-button-dark:hover{background-color:#f1f5f9;transform:translateY(-1px);box-shadow:0 2px 4px #0000000d}.input-row-dark{align-items:center;gap:.875rem;display:flex}.attachment-button-dark{cursor:pointer;color:#64748b;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:100px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;transition:all .2s;display:flex}.attachment-button-dark:hover:not(:disabled){color:#374151;background-color:#f1f5f9;border-color:#cbd5e1;transform:scale(1.02)}.attachment-button-dark:disabled{opacity:.5;cursor:not-allowed}.attachment-button-dark svg{transform:rotate(-45deg)}.input-field-wrapper-dark{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:100px;flex:1;align-items:center;gap:.625rem;min-height:48px;padding:.5rem .75rem .5rem 1.5rem;transition:all .2s;display:flex}.input-field-wrapper-dark:focus-within{border-color:#0065ff;box-shadow:0 0 0 3px #4585f41a}.input-field-wrapper-dark.recording-mode{background-color:#f1f5f9;border-color:#cbd5e1;gap:.75rem;padding:.5rem .75rem}.recording-pause-btn{color:#374151;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s;display:flex;box-shadow:0 1px 3px #0000001a}.recording-pause-btn:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}.recording-pause-btn:disabled{opacity:.5;cursor:not-allowed}.recording-waveform{flex:1;justify-content:space-evenly;align-items:center;min-width:0;height:40px;display:flex;overflow:hidden}.recording-status-text{color:#6b7280;font-size:.875rem;font-weight:700}.waveform-bar{background:linear-gradient(#94a3b8 0%,#64748b 100%);border-radius:2px;flex:1;min-width:2px;max-width:4px;transition:height 50ms ease-out;animation:.8s ease-in-out infinite alternate waveform-pulse}@keyframes waveform-pulse{0%{opacity:.6}to{opacity:1}}.recording-cancel-btn{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s;display:flex}.recording-cancel-btn:hover{color:#374151;background:#0000000d}.input-left-icons-dark{flex-shrink:0;align-items:center;gap:1rem;display:flex}.input-icon-btn-dark{cursor:pointer;color:#94a3b8;background:0 0;border:none;justify-content:center;align-items:center;padding:.25rem;transition:color .2s;display:flex}.input-icon-btn-dark:hover:not(:disabled){color:#0065ff}.input-icon-btn-dark:disabled{opacity:.5;cursor:not-allowed}.input-field-dark{color:#1f2937;flex:1;font-size:.875rem;box-shadow:none!important;background:0 0!important;border:none!important;outline:none!important;padding:0!important}.input-field-dark::placeholder{color:#94a3b8;font-style:normal}.input-textarea{scrollbar-width:thin;scrollbar-color:#94a3b8 transparent;align-self:center;min-height:24px;max-height:72px;line-height:24px;overflow-y:hidden}.input-textarea::-webkit-scrollbar{width:4px}.input-textarea::-webkit-scrollbar-track{background:0 0}.input-textarea::-webkit-scrollbar-thumb{background:#94a3b8;border-radius:2px}.input-field-dark:focus{box-shadow:none!important;border:none!important;outline:none!important}.send-button-dark{cursor:pointer;color:#fff;background:#0065ff;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:.625rem;transition:all .2s;display:flex}.send-button-dark:hover{background:#3367d6;transform:scale(1.05);box-shadow:0 2px 8px #4585f44d}.send-button-dark svg{width:18px;height:18px}@media (max-width:768px){.input-area-dark{padding:.75rem 1rem}.input-row-dark{gap:.5rem}.attachment-button-dark{width:38px;height:38px}.input-field-wrapper-dark{min-height:42px;padding:.3rem .5rem .3rem 1rem}.input-field-dark{font-size:12px!important}.input-left-icons-dark{gap:.5rem}}.bottom-section{background-color:var(--background);padding-bottom:env(safe-area-inset-bottom,0px);flex-shrink:0}.knowledge-cards-container{background-color:var(--background);padding:16px}.welcome-knowledge-section{background:var(--background);flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;min-height:400px;padding:2rem 1rem;display:flex}.welcome-ring-container{justify-content:center;align-items:center;width:160px;height:160px;display:flex;position:relative}.welcome-ring{background:conic-gradient(#8a63ff,#2b7fff,#60f5ff,#ad46ff,#8a63ff);border-radius:50%;width:120px;height:120px;padding:8px;animation:2s linear infinite welcome-ring-rotate}.welcome-ring-inner{background:var(--background);border-radius:50%;width:100%;height:100%}@keyframes welcome-ring-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.welcome-text-container{text-align:center;max-width:500px;margin-bottom:1rem}.welcome-heading{color:#1f2937;padding-bottom:.3rem;font-size:1.25rem;font-weight:600}.welcome-subheading{color:#6b7280;margin:0;font-size:1rem;font-weight:500}.welcome-cards-container{flex-wrap:wrap;justify-content:center;gap:1rem;max-width:900px;padding:0 1rem;display:flex}.welcome-card{cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;flex:1;gap:.75rem;min-width:220px;max-width:280px;padding:1.25rem;transition:all .2s;display:flex}.welcome-card:hover{border-color:#c7d2fe;transform:translateY(-2px);box-shadow:0 4px 12px #6366f11a}.welcome-card-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.welcome-card-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.welcome-card-title{color:#1f2937;margin:0;font-size:.9375rem;font-weight:500;line-height:1.4}.welcome-card-description{color:#6b7280;margin:0;font-size:.8125rem;line-height:1.5}@media (max-width:768px){.welcome-knowledge-section{gap:1.25rem;min-height:350px;padding:1.5rem 1rem}.welcome-ring-container{width:120px;height:120px}.welcome-ring{width:90px;height:90px}.welcome-ring-glow{width:110px;height:110px}.welcome-heading{font-size:1.25rem}.welcome-subheading{font-size:1rem}.welcome-cards-container{flex-direction:column;align-items:stretch;gap:.75rem;width:100%}.welcome-card{min-width:unset;max-width:unset;flex-direction:row;align-items:center;padding:1rem}.welcome-card-icon{width:36px;height:36px}.welcome-card-title{font-size:.875rem}}.input-area.shadow{box-shadow:0 -4px 6px -1px #0000001a,0 -2px 4px -1px #0000000f}.input-container{max-width:56rem;margin-left:auto;margin-right:auto}.input-actions{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.input-button{align-items:center;gap:.5rem;height:2.25rem;font-size:.875rem;transition:all .2s ease-in-out;display:inline-flex;position:relative}.input-button:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.input-actions button[data-state=selected],.input-actions .bg-primary{color:#fff!important;background-color:#0065ff!important;border-color:#0065ff!important;box-shadow:0 2px 8px #4585f44d!important}.input-actions button[data-state=selected]:hover,.input-actions .bg-primary:hover{transform:translateY(-1px);background-color:#3367d6!important;box-shadow:0 4px 12px #4585f466!important}.input-field-container{position:relative}.input-field{border-color:#d1d5db;border-radius:9999px;padding-top:.75rem;padding-bottom:.75rem;padding-right:3rem;font-size:.875rem}.input-field::placeholder{color:gray;font-style:italic}.send-button{border-radius:9999px;width:2rem;height:2rem;position:absolute;top:50%;right:.25rem;transform:translateY(-50%)}.voice-button{cursor:pointer;color:#6b7280;background-color:#0000;border:none;border-radius:9999px;justify-content:center;align-items:center;width:2rem;height:2rem;transition:background-color .2s;display:flex;position:absolute;top:50%;right:2.75rem;transform:translateY(-50%)}.voice-button:hover{color:#374151;background-color:#f3f4f6}.voice-button:active{background-color:#e5e7eb}.form-mode-indicator{color:var(--muted-foreground);text-align:center;margin-top:.5rem;font-size:.75rem}.loading-container{justify-content:center;align-items:center;width:100%;height:100vh;display:flex}.loading-content{text-align:center}.loading-spinner{border-bottom:2px solid var(--primary);border-radius:9999px;width:2rem;height:2rem;margin:0 auto 1rem;animation:1s linear infinite spin}.loading-text{color:var(--muted-foreground)}.initial-loader{color:#111827;text-align:center;background:radial-gradient(circle at top,#fefefe 0%,#f4f7fb 45%,#ecf1f8 100%);flex-direction:column;justify-content:center;align-items:center;gap:2.5rem;width:100%;min-height:100vh;padding:2rem;display:flex}.initial-loader__content{aspect-ratio:1;justify-content:center;align-items:center;width:min(260px,70vw);display:flex;position:relative}.initial-loader__ring{box-sizing:border-box;background:conic-gradient(#8a63ff,#2b7fff,#60f5ff,#ad46ff,#8a63ff);border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;padding:14px;animation:3s linear infinite loader-spin;display:flex}.initial-loader__ring-inner{background:radial-gradient(circle,#fff 60%,#f4f6fb 100%);border-radius:50%;width:100%;height:100%}.initial-loader__text{flex-direction:column;gap:.35rem;display:flex}.initial-loader__eyebrow{color:#0065ff;font-size:1rem;font-weight:500}span.text-color{color:#5f64f2}.initial-loader__title{color:#0065ff;font-family:Inter,sans-serif;font-size:clamp(1.75rem,4vw,1.5rem);font-weight:600;line-height:1.1}@keyframes loader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@supports (height:100dvh){.mobile-viewport{height:100dvh}}@supports not (height:100dvh){.mobile-viewport{height:calc(var(--vh,1vh)*100)}}@media (max-width:768px){input[type=text],input[type=email],input[type=password],input[type=search],textarea,select{-webkit-appearance:none;border-radius:8px;transform:translateZ(0);font-size:12px!important}.mobile-input-area{background:var(--background);border-top:1px solid var(--border);padding:1rem}}@supports (height:100vh) and (height:100dvh){.keyboard-adaptive{height:100dvh}}.input-container{transition:transform .3s ease-in-out}@media (max-width:768px){input:focus,textarea:focus{outline:2px solid var(--ring);outline-offset:2px;border-color:var(--ring)}}@supports (padding-bottom:env(safe-area-inset-bottom)){.mobile-safe-bottom{padding-bottom:max(1rem,env(safe-area-inset-bottom))}}.button-group{flex-wrap:wrap;gap:.375rem;margin-top:.375rem;display:flex}.option-button{cursor:pointer;text-align:left;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;align-items:center;gap:.5rem;height:44px;padding:.75rem;transition:all .2s;display:flex}.option-button:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.option-button.selected{background:#eef2ff;border-color:#6366f1}@media (min-width:768px){.button-group{margin-top:0}}*{--primary:#0065ff!important;--primary-foreground:#fff!important}.sidebar-trigger,.sidebar button{color:#0065ff!important}button[data-variant=default],.bg-primary,.user-message-bubble,.message-badge{color:#fff!important;background-color:#0065ff!important}.customer-discovery-chat{width:100%;margin-bottom:1rem}.chat-intro-message{margin-bottom:1rem}.intro-bubble{color:#374151;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:.875rem;align-items:center;gap:.375rem;margin-bottom:.375rem;padding:.5rem .75rem;font-size:.8rem;font-weight:500;display:inline-flex}.intro-icon{color:#0065ff;width:.875rem;height:.875rem}.intro-description{color:#64748b;margin:0;padding-left:.375rem;font-size:.75rem;line-height:1.3}.chat-questions{flex-direction:column;gap:.875rem;margin-bottom:1rem;display:flex}@media (min-width:768px){.chat-questions{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;display:grid}}@media (min-width:1024px){.chat-questions{gap:1.25rem}}.chat-question{flex-direction:column;gap:.375rem;display:flex}.question-text{color:#374151;margin:0;font-size:.75rem;font-weight:500;line-height:1.2}.question-options{flex-wrap:wrap;gap:.25rem;display:flex}.chat-option-button{white-space:nowrap;border-radius:.625rem;padding:.1875rem .5rem;font-size:.6875rem;font-weight:500;line-height:1.1;transition:all .2s ease-in-out}.chat-option-button:hover{transform:translateY(-1px);box-shadow:0 1px 3px #0000001a}.chat-actions{flex-wrap:wrap;justify-content:center;gap:.375rem;display:flex}@media (min-width:768px){.customer-discovery-chat{margin-bottom:1.5rem}.intro-bubble{padding:.625rem .875rem;font-size:.875rem}.intro-description,.question-text{font-size:.8rem}.chat-option-button{padding:.25rem .625rem;font-size:.75rem}.intro-icon{width:1rem;height:1rem}}.customer-discovery-chat{max-width:100%;margin:0 auto;padding:1rem}.sample-customer-notice{text-align:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:1rem;padding:.75rem}.sample-text{color:#6c757d;margin:0;font-size:.875rem}.progressive-intro{text-align:center;padding:1rem 0}.intro-main-prompt{color:var(--foreground);margin:1rem 0;font-size:1.1rem;line-height:1.6}.first-question{margin:2rem 0}.progressive-step{padding:1rem 0}.progress-encouragement{text-align:center;background:linear-gradient(135deg,#f8faff 0%,#f0f7ff 100%);border:1px solid #e3f2fd;border-radius:12px;margin-bottom:2rem;padding:1.5rem;position:relative;overflow:hidden}.progress-encouragement:before{content:"";background:linear-gradient(90deg,#0065ff 0%,#5a9cf8 50%,#0065ff 100%) 0 0/200% 100%;height:3px;animation:2s ease-in-out infinite shimmer;position:absolute;top:0;left:0;right:0}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.success-message{color:#0065ff;justify-content:center;align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:1rem;font-weight:600;display:flex}.success-message:before{content:"✨";font-size:1.1rem}.next-prompt{color:#5f6368;opacity:.9;margin:0;font-size:.9rem;font-weight:500}.skip-option{text-align:center;border-top:1px solid #e3f2fd;margin-top:2rem;padding-top:1.5rem;position:relative}.skip-option:before{content:"";background:linear-gradient(90deg,#0000 0%,#0065ff 50%,#0000 100%);width:60px;height:1px;position:absolute;top:0;left:50%;transform:translate(-50%)}.continue-actions{text-align:center;flex-direction:column;align-items:center;gap:.75rem;margin-top:2rem;display:flex}@media (min-width:640px){.continue-actions{flex-direction:row;justify-content:center;gap:1rem}}.all-questions-view{padding:1rem 0}.completion-message{text-align:center;background:linear-gradient(135deg,#d4edda 0%,#c3e6cb 100%);border-left:4px solid #28a745;border-radius:8px;margin-bottom:2rem;padding:1rem}.chat-intro-message{text-align:center;margin-bottom:2rem}.customer-summary{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.customer-summary p{margin:.5rem 0;font-size:.875rem;line-height:1.4}.customer-summary p:first-child{margin-top:0}.customer-summary p:last-child{margin-bottom:0}.customer-summary strong{color:#0065ff;font-weight:600}.streaming-message{width:100%;margin-bottom:1rem}.streaming-message.user{justify-content:flex-end;display:flex}.streaming-message.assistant{justify-content:flex-start;display:flex}.streaming-message-container{align-items:flex-start;gap:.5rem;max-width:80%;display:flex}.streaming-message.user .streaming-message-container{flex-direction:row-reverse}.streaming-message-avatar{background-color:hsl(var(--primary)/.1);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;display:flex}.streaming-message.user .streaming-message-avatar{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.streaming-message.assistant .streaming-message-avatar{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.streaming-message-content{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.streaming-message-bubble{overflow-wrap:break-word;border-radius:var(--radius);white-space:normal;border-radius:.5rem;padding:.5rem .75rem}.streaming-message-bubble.user-bubble{border-bottom-right-radius:calc(var(--radius) - 4px);--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.streaming-message-bubble.assistant-bubble{border-bottom-left-radius:calc(var(--radius) - 4px);--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1));background-color:#f3f4f6;border:1px solid #e5e7eb}.streaming-message-text{white-space:pre-wrap}.streaming-cursor{background-color:currentColor;width:.125rem;height:1rem;margin-left:.125rem;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse;display:inline-block}.tab-button .streaming-cursor{animation:2s infinite pulse-glow}.streaming-typing-indicator{color:var(--muted-foreground);align-items:center;margin-top:.25rem;display:flex}.streaming-message-meta{color:var(--muted-foreground);justify-content:space-between;align-items:center;font-size:.75rem;line-height:1rem;display:flex}.streaming-message.user .streaming-message-meta{flex-direction:row-reverse}.streaming-message-status.complete{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity,1))}.streaming-message-status.streaming{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1));animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.tab-button .streaming-message-status.streaming{animation:2s infinite pulse-glow}.streaming-chat-messages{flex:1;overflow:hidden}.streaming-messages-container>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.streaming-messages-container{padding:1rem}.streaming-chat-empty{flex:1;justify-content:center;align-items:center;padding:2rem;display:flex}.streaming-empty-state{text-align:center;max-width:28rem;margin-left:auto;margin-right:auto}.streaming-empty-icon{margin-bottom:1rem;font-size:3.75rem;line-height:1}.streaming-empty-title{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1));margin-bottom:.5rem;font-size:1.25rem;font-weight:600;line-height:1.75rem}.streaming-empty-description{--tw-text-opacity:1;color:#4b5563}.streaming-error-message{justify-content:center;width:100%;margin-bottom:1rem;display:flex}.streaming-error-content{border-radius:var(--radius);--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1));--tw-text-opacity:1;max-width:28rem;color:rgb(185 28 28/var(--tw-text-opacity,1));border:1px solid #e5e7eb;border-radius:.5rem;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.streaming-error-text{flex:1;font-size:.875rem;line-height:1.25rem}.streaming-retry-button{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1));border-radius:.25rem;padding:.25rem .75rem;font-size:.875rem;line-height:1.25rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.streaming-retry-button:hover{--tw-bg-opacity:1;background-color:rgb(254 202 202/var(--tw-bg-opacity,1))}.streaming-messages-end{height:0}.streaming-chat-input{background-color:hsl(var(--background)/.95);--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur)var(--tw-backdrop-brightness)var(--tw-backdrop-contrast)var(--tw-backdrop-grayscale)var(--tw-backdrop-hue-rotate)var(--tw-backdrop-invert)var(--tw-backdrop-opacity)var(--tw-backdrop-saturate)var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur)var(--tw-backdrop-brightness)var(--tw-backdrop-contrast)var(--tw-backdrop-grayscale)var(--tw-backdrop-hue-rotate)var(--tw-backdrop-invert)var(--tw-backdrop-opacity)var(--tw-backdrop-saturate)var(--tw-backdrop-sepia);border-top-width:1px}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.streaming-chat-input{background-color:hsl(var(--background)/.6)}}.streaming-chat-input{padding:1rem;padding-bottom:max(1rem,env(safe-area-inset-bottom))}.streaming-input-container>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.streaming-input-container{max-width:56rem;margin-left:auto;margin-right:auto}.streaming-char-count{text-align:right;color:var(--muted-foreground);font-size:.75rem;line-height:1rem}.streaming-input-wrapper{align-items:center;gap:.5rem;display:flex}.streaming-input-field{resize:none;flex:1;min-height:40px;padding-right:3rem}.streaming-input-actions{align-items:center;gap:.25rem;display:flex}.streaming-send-button{border-radius:50%;width:2.5rem;height:2.5rem}.streaming-send-button:disabled{cursor:not-allowed;opacity:.5}.streaming-stop-button{border-radius:50%;width:2.5rem;height:2.5rem}.streaming-status-indicator{justify-content:center;align-items:center;display:flex}.streaming-status-text{color:var(--muted-foreground);align-items:center;font-size:.75rem;line-height:1rem;display:flex}.streaming-pulse{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1));border-radius:50%;width:.5rem;height:.5rem;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.tab-button .streaming-pulse{animation:2s infinite pulse-glow}.streaming-chat{background-color:hsl(var(--background));background-color:var(--background);flex-direction:column;height:100%;display:flex}.streaming-chat-header{background-color:hsl(var(--background)/.95);--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur)var(--tw-backdrop-brightness)var(--tw-backdrop-contrast)var(--tw-backdrop-grayscale)var(--tw-backdrop-hue-rotate)var(--tw-backdrop-invert)var(--tw-backdrop-opacity)var(--tw-backdrop-saturate)var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur)var(--tw-backdrop-brightness)var(--tw-backdrop-contrast)var(--tw-backdrop-grayscale)var(--tw-backdrop-hue-rotate)var(--tw-backdrop-invert)var(--tw-backdrop-opacity)var(--tw-backdrop-saturate)var(--tw-backdrop-sepia);border-bottom-width:1px;justify-content:space-between;align-items:center;padding:1rem;display:flex}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.streaming-chat-header{background-color:hsl(var(--background)/.6)}}.streaming-chat-title{align-items:center;gap:.5rem;display:flex}.streaming-chat-title h2{font-size:1.125rem;font-weight:600;line-height:1.75rem}.streaming-message-count{color:var(--muted-foreground);font-size:.875rem;line-height:1.25rem}.streaming-chat-actions{align-items:center;gap:.5rem;display:flex}.streaming-action-button{gap:.5rem}.streaming-chat-content{flex:1;overflow:hidden}.safe-area-bottom{padding-bottom:max(1rem,env(safe-area-inset-bottom))}@media (max-width:768px){.streaming-chat-input{padding:.75rem}.streaming-input-field{font-size:1rem;line-height:1.5rem}.streaming-chat-header{padding:.75rem}.streaming-chat-title h2{font-size:1rem;line-height:1.5rem}.streaming-action-button{padding-left:.5rem;padding-right:.5rem}.streaming-action-button span{display:none}}.scroll-to-bottom{z-index:50;color:#fff;cursor:pointer;background-color:#0065ff;border:none;border-radius:9999px;align-items:center;gap:.5rem;padding:.75rem;transition:all .2s ease-in-out;animation:.3s ease-out slideIn;display:flex;position:fixed;bottom:5rem;right:1rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.scroll-to-bottom:hover{background-color:#3367d6;transform:translateY(-2px);box-shadow:0 6px 12px -1px #00000026,0 4px 6px -1px #0000001a}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.streaming-text-container{min-height:auto;display:inline;position:relative}.streaming-text-content{line-height:1.5;display:inline;position:relative}.message-bubble.streaming-bubble{color:#000;background:#f8fafc;border:1px solid #e2e8f0;animation:2s ease-in-out infinite streamingPulse;box-shadow:0 2px 8px #4585f41a}@keyframes streamingPulse{0%,to{border-color:#e2e8f0;box-shadow:0 2px 8px #4585f41a}50%{border-color:#cbd5e1;box-shadow:0 4px 16px #4585f433}}.streaming-text,.streaming-text-content,.word-reveal,.char-reveal,.token-fade-in,.text-wave{will-change:transform,opacity;backface-visibility:hidden;transform:translateZ(0)}.streaming-text-container::selection,.streaming-text-content::selection{background:#4585f433}@media (max-width:768px){.enhanced-typing-cursor{width:1.5px;height:.9em}.word-reveal,.char-reveal{animation-duration:.2s}.typing-dot{width:3px;height:3px}.streaming-text-container{min-height:1em}}@media (prefers-color-scheme:dark){.enhanced-typing-cursor{background:linear-gradient(#60a5fa 0%,#3b82f6 100%);box-shadow:0 0 8px #60a5fa4d}.typing-dot{background:#60a5fa}.streaming-progress{background-color:#60a5fa!important}}.simple-streaming-text{display:inline;position:relative}.loading-text-content{align-items:center;padding:.5rem 0;display:flex}.shining-text{-webkit-text-fill-color:transparent;letter-spacing:.025em;background:linear-gradient(90deg,#0065ff 0%,#6fa8f5 25%,#fff 50%,#6fa8f5 75%,#0065ff 100%) 0 0/200% 100%;-webkit-background-clip:text;background-clip:text;font-size:.875rem;font-weight:500;animation:2s ease-in-out infinite shine}@keyframes shine{0%{background-position:-200% 0}to{background-position:200% 0}}.loading-bubble{background:linear-gradient(135deg,#4585f405 0%,#4585f40d 50%,#4585f405 100%);border:1px solid #4585f41a;animation:2s ease-in-out infinite gentle-pulse}@keyframes gentle-pulse{0%,to{background:linear-gradient(135deg,#4585f405 0%,#4585f40d 50%,#4585f405 100%);border-color:#4585f41a}50%{background:linear-gradient(135deg,#4585f40d 0%,#4585f414 50%,#4585f40d 100%);border-color:#4585f433}}.loading-indicator{color:#0065ff;font-weight:500;animation:1.5s ease-in-out infinite loading-text-pulse}@keyframes loading-text-pulse{0%,to{opacity:.7}50%{opacity:1}}@media (prefers-color-scheme:dark){.shining-text{-webkit-text-fill-color:transparent;background:linear-gradient(90deg,#60a5fa 0%,#93c5fd 25%,#fff 50%,#93c5fd 75%,#60a5fa 100%) 0 0/200% 100%;-webkit-background-clip:text;background-clip:text}.loading-bubble{background:linear-gradient(135deg,#60a5fa08 0%,#60a5fa0f 50%,#60a5fa08 100%);border-color:#60a5fa26}@keyframes gentle-pulse{0%,to{background:linear-gradient(135deg,#60a5fa08 0%,#60a5fa0f 50%,#60a5fa08 100%);border-color:#60a5fa26}50%{background:linear-gradient(135deg,#60a5fa0f 0%,#60a5fa1a 50%,#60a5fa0f 100%);border-color:#60a5fa40}}.loading-indicator{color:#60a5fa}}@media (prefers-reduced-motion:reduce){.shining-text{-webkit-text-fill-color:transparent;background:#0065ff;-webkit-background-clip:text;background-clip:text;animation:none}.loading-bubble,.loading-indicator{animation:none}}.form-message-container{justify-content:center;align-items:flex-start;width:100%;max-width:800px;margin:1rem auto;display:flex}.form-chat-message{width:100%;max-width:100%}.policy-recommendations-container{width:100%;max-width:100%;margin-bottom:1rem}.policy-recommendations-header{background:linear-gradient(135deg,#f8fafc 0%,#e2e8f0 100%);border:1px solid #e2e8f0;border-radius:.75rem;margin-bottom:1.5rem;padding:1rem}.policy-cards-list{flex-direction:column;gap:1.5rem;margin-bottom:1rem;display:flex}.policy-card{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;transition:all .2s;overflow:hidden}.policy-card:hover{border-color:#d1d5db;box-shadow:0 4px 12px #0000001a}.policy-header{background:linear-gradient(135deg,#f9fafb 0%,#f3f4f6 100%);border-bottom:1px solid #e5e7eb;padding:1.25rem}.policy-header-content,.policy-title-section{width:100%}.policy-name{color:#1f2937;margin:0;font-size:1.25rem;font-weight:700;line-height:1.3}.policy-chips{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.category-chip{color:#1e40af;background-color:#dbeafe;border:none;font-weight:500}.issuer-chip{color:#6b7280;background-color:#fff;border-color:#d1d5db;font-weight:500}.insurer-logo{object-fit:contain;background:#fff;border:1px solid #e5e7eb;border-radius:.375rem;width:2.5rem;height:2.5rem;padding:.25rem}.policy-content{padding:1.25rem}.policy-section{margin-bottom:1.5rem}.policy-section:last-child{margin-bottom:0}.section-header{align-items:center;gap:.5rem;margin-bottom:.75rem;padding-bottom:.5rem;display:flex}.section-title{color:#374151;margin:0 0 .8rem;font-size:.875rem;font-weight:600}.section-content{flex-direction:column;gap:.75rem;display:flex}.info-item{flex-direction:column;gap:.25rem;display:flex}@media (min-width:768px){.info-item{flex-direction:row;align-items:flex-start;gap:.75rem}}.info-label{color:#6b7280;flex-shrink:0;min-width:120px;font-size:.875rem;font-weight:600}.info-value{color:#374151;flex:1;font-size:.875rem;line-height:1.5}.policy-actions{background-color:#f9fafb;border-top:1px solid #e5e7eb;flex-wrap:wrap;gap:.75rem;padding:1rem 1.25rem;display:flex}.action-button{align-items:center;gap:.5rem;height:2.25rem;font-size:.875rem;display:inline-flex}.recommendations-footer{background-color:#f8fafc;border-radius:.5rem;justify-content:space-between;align-items:center;margin-top:1rem;padding:1rem;display:flex}.message-timestamp{color:#9ca3af;font-size:.75rem}.reply-button{height:2rem;font-size:.875rem}@media (max-width:768px){.policy-recommendations-container{margin-left:-.5rem;margin-right:-.5rem}.policy-header,.policy-content,.policy-actions{padding:1rem}.policy-name{font-size:1.125rem}.insurer-logo{width:2rem;height:2rem}.policy-actions{flex-direction:column}.action-button{justify-content:center;width:100%}.recommendations-footer{flex-direction:column;align-items:stretch;gap:.75rem}.reply-button{justify-content:center;width:100%}}.policy-card.loading{opacity:.6;pointer-events:none}.policy-card.error{background-color:#fef2f2;border-color:#fca5a5}.policy-card:focus-within,.action-button:focus{outline-offset:2px;outline:2px solid #3b82f6}.policy-card{animation:.3s ease-out slideIn}.historical-messages-section{border-top:2px solid var(--border);background:linear-gradient(to bottom,var(--background),var(--accent)/5);border-radius:.875rem;margin-top:2rem;padding:1.5rem}.historical-messages-section .message-bubble-container{opacity:.95}.historical-messages-section .agent-message-bubble{background:var(--accent);border-left:3px solid var(--primary)}.historical-messages-section .user-message-bubble{background:var(--muted);border-right:3px solid var(--primary)}.h-4{height:1rem}.w-4{width:1rem}.h-5{height:1.25rem}.w-5{width:1.25rem}.h-6{height:1.5rem}.w-6{width:1.5rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.shrink-0{flex-shrink:0}.pointer-events-none{pointer-events:none}.sidebar{z-index:40;background-color:#fff;border-right:1px solid #e2e8f0;flex-direction:column;width:300px;height:100vh;transition:transform .3s ease-in-out;display:flex;position:fixed;top:0;left:0;transform:translate(-100%);box-shadow:0 4px 6px -1px #0000001a}.sidebar-open{transform:translate(0)}.sidebar-closed{transform:translate(-100%)}.sidebar-overlay{z-index:35;background-color:#00000080;width:100%;height:100%;position:fixed;top:0;left:0}.sidebar-header{background-color:#f8fafc;border-bottom:1px solid #e2e8f0;padding:1rem}.sidebar-header-content{justify-content:space-between;align-items:center;display:flex}.sidebar-title{color:#1f2937;margin:0;font-size:1.125rem;font-weight:600}.sidebar-close-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:.375rem;padding:.5rem;transition:background-color .2s,color .2s}.sidebar-close-btn:hover{color:#374151;background-color:#e2e8f0}.sidebar-content{flex:1;padding:.5rem 0;overflow-y:auto}.sidebar-toggle-btn{z-index:30;cursor:pointer;color:#374151;background-color:#fff;border:1px solid #e2e8f0;border-radius:.5rem;padding:.75rem;transition:background-color .2s,color .2s,box-shadow .2s;position:fixed;top:1rem;left:1rem;box-shadow:0 4px 6px -1px #0000001a}.sidebar-toggle-btn:hover{background-color:#f8fafc;box-shadow:0 10px 15px -3px #0000001a}.session-list{width:100%}.session-list-header{border-bottom:1px solid #f1f5f9;padding:.5rem 0}.session-list-content{flex-direction:column;gap:.25rem;margin-top:.3rem;display:flex}.session-item:hover{background-color:#f8fafc;border-color:#0000}.session-item-active{background-color:#eff6ff;border-color:#3b82f6}.session-item-active:hover{background-color:#dbeafe}.session-item-title{color:#1f2937;word-break:break-all;font-size:.875rem;font-weight:500}.session-item-meta{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.session-item-date{color:#64748b;font-size:.65rem}.session-item-status{border-radius:.25rem;padding:.125rem .375rem;font-size:.75rem;font-weight:500}.session-active{color:#166534;background-color:#dcfce7}.session-ended{color:#92400e;background-color:#fef3c7}.session-item-summary{color:#64748b;font-size:.75rem;line-height:1.4}.session-list-loading,.session-list-error,.session-list-empty{padding:1rem}.session-item.disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.session-item.switching{background-color:#fef3c7;border-color:#f59e0b;position:relative}.session-item.switching:after{content:"";border:2px solid #f59e0b;border-top-color:#0000;border-radius:50%;width:1rem;height:1rem;animation:1s linear infinite spin;position:absolute;top:50%;right:1rem;transform:translateY(-50%)}@media (min-width:768px){.sidebar-toggle-btn{top:1.5rem;left:1.5rem}.sidebar{width:300px}}.app-with-sidebar{transition:margin-left .3s ease-in-out}.app-with-sidebar.sidebar-open{margin-left:300px}@media (min-width:768px){.app-with-sidebar.sidebar-open{margin-left:300px}}@media (max-width:767px){.app-with-sidebar.sidebar-open{margin-left:0}}.text-xs{font-size:.75rem;line-height:1rem}.animate-spin{animation:1s linear infinite spin}.border-blue-600{border-color:#2563eb}.border-t-transparent{border-top-color:#0000}.text-red-600{color:#dc2626}.text-gray-500{color:#6b7280}.ml-2{margin-left:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.text-center{text-align:center}.session-list{padding:.75rem 0}.session-item{cursor:pointer;border:1px solid #0000;border-radius:.5rem;margin:0 .75rem;padding:.5rem .75rem}.session-item-chat-summary{color:#64748b;font-size:.75rem;line-height:1.4}.session-item:hover{background:var(--accent);transform:translateY(-1px)}.session-item-content{flex-direction:column;gap:.2rem;display:flex}.session-item-header{align-items:center;gap:.5rem;width:100%;display:flex}.session-item-icon{flex-shrink:0;justify-content:center;align-items:center;display:flex}.session-item-title{color:var(--foreground);flex:1;min-width:0;font-size:.75rem;font-weight:500;line-height:1.2}.session-item-active .session-item-title{color:var(--primary-foreground)}.session-item-meta{flex-direction:column;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-top:.125rem;display:flex}.session-item-date{color:var(--muted-foreground);flex:1;align-items:center;min-width:0;font-size:.65rem;display:flex}.session-list-loading,.session-list-error,.session-list-empty{margin:1rem .75rem}.start-conversation-button{z-index:100;color:#fff;cursor:pointer;letter-spacing:.025em;text-transform:none;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:2rem;justify-content:center;align-items:center;gap:.5rem;min-width:200px;max-width:300px;margin-top:50px;padding:1rem 2rem;font-family:Inter,sans-serif;font-size:1.1rem;font-weight:600;line-height:1;text-decoration:none;transition:all .3s;display:flex;position:relative;bottom:2rem;left:50%;transform:translate(-50%);box-shadow:0 8px 25px #667eea4d}.start-conversation-button:before{content:"▶";margin-right:.25rem;font-size:.9em;transition:transform .3s}.start-conversation-button:hover:not(:disabled){background:linear-gradient(135deg,#5a6fd8 0%,#6a4190 100%);transform:translate(-50%)translateY(-2px);box-shadow:0 12px 35px #667eea66}.start-conversation-button:hover:not(:disabled):before{transform:translate(2px)}.start-conversation-button:active:not(:disabled){transform:translate(-50%)translateY(0);box-shadow:0 4px 15px #667eea4d}.start-conversation-button:disabled{opacity:.7;cursor:not-allowed;background:linear-gradient(135deg,#9ca3af 0%,#6b7280 100%)}.start-conversation-button:focus{outline:none;box-shadow:0 8px 25px #667eea4d,0 0 0 3px #667eea33}@media (max-width:768px){.start-conversation-button{width:calc(100% - 2rem);min-width:auto;padding:.875rem 1.5rem;font-size:1rem;bottom:1.5rem;left:1rem;right:1rem;transform:none}.start-conversation-button:hover:not(:disabled){transform:translateY(-2px)}.start-conversation-button:active:not(:disabled){transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;transform:translate(-50%)translateY(20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.start-conversation-button{animation:.4s ease-out slideInUp}@media (max-width:768px){@keyframes slideInUpMobile{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.start-conversation-button{animation:.4s ease-out slideInUpMobile}}.start-conversation-button:after{content:"";opacity:.3;z-index:-1;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:2rem;animation:2s ease-out infinite pulse-ring;position:absolute;inset:0}@keyframes pulse-ring{0%{opacity:.3;transform:scale(1)}50%{opacity:.1;transform:scale(1.05)}to{opacity:0;transform:scale(1.1)}}.session-list-content{flex-direction:column;gap:.25rem;display:flex}.session-item-date{color:var(--muted-foreground);flex:1;min-width:0;font-size:.65rem}.session-item-active .session-item-date{color:#fffc}.session-item-status{text-transform:capitalize;border-radius:.375rem;flex-shrink:0;padding:.125rem .375rem;font-size:.75rem;font-weight:500}.status-active{color:#2563eb;background:#dbeafe;border:1px solid #bfdbfe}.status-ended{color:#6b7280;background:#f3f4f6;border:1px solid #e5e7eb}.session-item-active .session-item-status{color:#ffffffe6;background:#fff3;border-color:#ffffff4d}.recommendation-message-content{width:100%}.recommendation-badge{--tw-border-opacity:1;border-color:rgb(191 219 254/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1));border:1px solid #e5e7eb;border-radius:50%;margin-bottom:.75rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600;line-height:1rem;display:inline-block}.recommendation-badge.standard{--tw-border-opacity:1;border-color:rgb(191 219 254/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity,1))}.recommendation-badge.enhanced{--tw-border-opacity:1;border-color:rgb(187 247 208/var(--tw-border-opacity,1));--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.journey-map-compact{background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;max-width:600px;height:40px;margin:8px 0;padding:8px 12px;display:flex}.journey-steps-container{align-items:center;gap:30px;width:100%;display:flex}.journey-step{text-align:center;flex-direction:column;align-items:center;gap:4px;min-width:60px;display:flex}.journey-icon{background:#fff;border-radius:50%;justify-content:center;align-items:center;display:flex;box-shadow:0 1px 3px #0000001a}.journey-title{white-space:nowrap;font-size:.7rem;font-weight:500;line-height:1;overflow:hidden}.journey-step-completed .journey-title{color:#059669;font-weight:600}.journey-step-active .journey-title{color:#2563eb;font-weight:600}.journey-step-pending .journey-title{color:#64748b}.journey-connector{background-color:#e2e8f0;border-radius:1px;flex:1;height:2px;margin:0 4px}.journey-connector-completed{background:linear-gradient(90deg,#10b981,#3b82f6)}.journey-percentage{color:#475569;text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:4px;min-width:40px;margin-left:8px;padding:4px 8px;font-size:.75rem;font-weight:600}@media (max-width:768px){.journey-map-compact{max-width:100%;height:36px;padding:6px 10px}.journey-title{max-width:50px;font-size:.65rem}.journey-step{min-width:45px}.journey-percentage{min-width:35px;padding:3px 6px;font-size:.7rem}}@media (max-width:480px){.journey-title{max-width:40px;font-size:.6rem}.journey-step{gap:2px;min-width:35px}.journey-steps-container{gap:4px}}.main-tabs-container{background:linear-gradient(135deg,#f8fafc 0%,#e2e8f0 100%);border:1px solid #e2e8f0;border-radius:12px;padding:4px;position:relative;box-shadow:0 2px 8px #0000001a}.main-tabs-container:before{content:"";z-index:0;background:linear-gradient(135deg,#fffc 0%,#fff6 100%);border-radius:12px;position:absolute;inset:0}.tab-button{letter-spacing:.025em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1;border:1px solid #0000;border-radius:8px;font-weight:500;position:relative;overflow:hidden}.tab-button:before{content:"";z-index:-1;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);width:100%;height:100%;transition:left .6s;position:absolute;top:0;left:-100%}.tab-button:hover:before{left:100%}.tab-button.active{border:1px solid #ffffff4d;box-shadow:0 4px 12px #00000026,0 2px 4px #0000001a,inset 0 1px #fff3}.tab-button:not(.active):hover{border:1px solid #0000001a;transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}@media (max-width:640px){.main-tabs-container{padding:3px}.tab-button{gap:8px!important;padding:8px 12px!important}.tab-button span{font-size:.75rem}.tab-button div{width:6px!important;height:6px!important}}@keyframes pulse-glow{0%,to{opacity:1;box-shadow:0 0}50%{opacity:.8;box-shadow:0 0 0 4px #0000}}.tab-button .animate-pulse{animation:2s infinite pulse-glow}.message-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.875rem;font-weight:600;display:flex}.agent-avatar{color:#fff;background:linear-gradient(135deg,#6366f1 0%,#8b5cf6 100%)}.user-avatar{color:#fff;letter-spacing:.5px;background:linear-gradient(135deg,#f97316 0%,#fb923c 100%);font-size:.8125rem}.user-message-v2{flex-direction:column;align-items:flex-end;width:100%;margin-bottom:1rem;display:flex}.message-content-wrapper-v2{align-items:flex-end;gap:.625rem;max-width:85%;display:flex}.message-bubble-v2{word-wrap:break-word;overflow-wrap:break-word;border-radius:12px;padding:.875rem 1.125rem;font-size:.875rem;line-height:1.5;box-shadow:0 1px 2px #0000000d}.user-message-bubble-v2{color:#fff;background:linear-gradient(107.39deg,#4d57f4 10.32%,#5f64f2 95.53%);border-bottom-right-radius:4px}.agent-message-v2{flex-direction:column;align-items:flex-start;width:100%;margin-bottom:1.5rem;display:flex}@media (max-width:768px){.agent-message-v2{margin-bottom:.3rem}}.agent-message-bubble-v2{color:#1f2937;background:#f3f4f6;border:1px solid #e5e7eb;border-bottom-left-radius:4px;position:relative;color:#1f2937!important;background:#f3f4f6!important;border:1px solid #e5e7eb!important}.form-submission-bubble-v2{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-bottom-right-radius:4px}.message-badge-v2{color:#fff;background-color:#3b82f6;border-radius:12px;margin-bottom:.5rem;padding:.25rem .625rem;font-size:.75rem;font-weight:500;display:inline-block}.message-timestamp-v2{color:#9ca3af;margin-top:.375rem;padding:0 .5rem;font-size:.6875rem;font-weight:400}.user-timestamp-v2{text-align:right;margin-right:46px}.agent-timestamp-v2{text-align:left;margin-left:46px}.message-wrapper-with-feedback{width:100%;position:relative}.feedback-icons-inline{align-items:center;gap:6px;margin-left:12px;display:inline-flex}.feedback-icons-container{align-items:center;gap:.25rem;margin-top:.375rem;margin-left:46px;display:flex}.feedback-icon-btn{cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 1px 2px #0000000d;color:#6b7280!important;background:#fff!important;border:1px solid #d1d5db!important}.feedback-icon-btn:hover{transform:scale(1.05);box-shadow:0 2px 4px #0000001a;color:#374151!important;background:#f9fafb!important;border-color:#6b7280!important}.feedback-icon-btn:active{transform:scale(.95)}.feedback-active-up{animation:.2s ease-out feedbackActivate;color:#16a34a!important;background:#dcfce7!important;border-color:#22c55e!important;transform:scale(1.1)!important;box-shadow:0 2px 8px #22c55e4d!important}.feedback-active-down{animation:.2s ease-out feedbackActivate;color:#dc2626!important;background:#fee2e2!important;border-color:#ef4444!important;transform:scale(1.1)!important;box-shadow:0 2px 8px #ef44444d!important}.message-bubble-v2.loading{justify-content:center;align-items:center;min-height:60px;display:flex}.message-bubble-v2 .typing-cursor{color:currentColor;margin-left:2px;font-weight:400;animation:1s infinite blink;display:inline-block}@media (max-width:768px){.message-content-wrapper-v2{max-width:85%}.message-avatar{width:32px;height:32px;font-size:.8125rem}.message-bubble-v2{padding:.75rem;font-size:.75rem}.user-timestamp-v2{margin-right:40px}.agent-timestamp-v2,.feedback-icons-container{margin-left:40px}.feedback-icon-btn{width:26px;height:26px}}@media (max-width:480px){.message-content-wrapper-v2{max-width:90%}.message-bubble-v2{padding:.65rem;font-size:.65rem}}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.user-message-v2,.agent-message-v2{backface-visibility:hidden;animation:.3s ease-out forwards messageSlideIn}@media (max-width:768px){@keyframes messageSlideInMobile{0%{transform:translateY(6px)}to{transform:translateY(0)}}.user-message-v2,.agent-message-v2{animation:.2s ease-out forwards messageSlideInMobile}}.message-bubble-v2 p{white-space:pre-wrap;word-break:break-word;margin:0}.message-bubble-v2 .message-text{white-space:pre-wrap;word-break:break-word}.loading-message-container{flex-direction:column;justify-content:center;align-items:center;width:100%;padding:.5rem 0;display:flex}.loading-text-container{text-align:center;max-width:28rem;margin-bottom:.75rem}.loading-text-content{color:#1f2937;text-align:center;font-family:Inter,sans-serif;font-size:.875rem;font-weight:500;line-height:1.5;transition:all .3s ease-in-out}@media (max-width:768px){.loading-text-content{font-size:.75rem}}.loading-text-fade-out{opacity:0;transform:scale(.95)}.loading-text-fade-in{opacity:1;transform:scale(1)}.loading-dots-container{gap:.5rem;display:flex}.loading-dot{background:#6366f1;border-radius:50%;width:.75rem;height:.75rem;animation:1.4s ease-in-out infinite loadingBounce}@keyframes loadingBounce{0%,80%,to{opacity:.5;transform:scale(0)}40%{opacity:1;transform:scale(1)}}.message-bubble-v2 .message-text{color:inherit}.user-message-bubble-v2 .message-text{color:#fff}.agent-message-bubble-v2 .message-text{color:#1f2937}.agent-message-bubble-v2 *{color:inherit}.agent-message-bubble-v2 .message-markdown{color:#1f2937}.agent-message-bubble-v2 .message-markdown h1,.agent-message-bubble-v2 .message-markdown h2,.agent-message-bubble-v2 .message-markdown h3,.agent-message-bubble-v2 .message-markdown h4,.agent-message-bubble-v2 .message-markdown h5,.agent-message-bubble-v2 .message-markdown h6{color:#111827}.agent-message-bubble-v2 .message-markdown p{color:#374151}.agent-message-bubble-v2 .message-markdown strong{color:#111827}.agent-message-bubble-v2 .message-markdown code{color:#1f2937;background:#f9fafb;border:1px solid #e5e7eb}.agent-message-bubble-v2 .message-markdown pre{background:#f9fafb;border:1px solid #e5e7eb}.agent-message-bubble-v2 .message-markdown pre code{background:0 0;border:none}.feedback-active-up:hover{transform:scale(1.05);color:#15803d!important;background:#bbf7d0!important;border-color:#16a34a!important;box-shadow:0 4px 8px #22c55e4d!important}.feedback-active-down:hover{transform:scale(1.05);color:#b91c1c!important;background:#fecaca!important;border-color:#dc2626!important;box-shadow:0 4px 8px #ef44444d!important}.feedback-icon-btn,.feedback-icon-btn:hover,.feedback-active-up,.feedback-active-up:hover,.feedback-active-down,.feedback-active-down:hover{filter:none!important}@media (prefers-color-scheme:dark){.feedback-icon-btn{color:#6b7280!important;background:#fff!important;border-color:#d1d5db!important}.feedback-icon-btn:hover{color:#374151!important;background:#f9fafb!important;border-color:#6b7280!important}}@keyframes feedbackActivate{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1.1)}}.feedback-icon-btn.feedback-active-up:hover{color:#15803d!important;background:#bbf7d0!important;border-color:#16a34a!important;transform:scale(1.15)!important;box-shadow:0 4px 12px #22c55e66!important}.feedback-icon-btn.feedback-active-down:hover{color:#b91c1c!important;background:#fecaca!important;border-color:#dc2626!important;transform:scale(1.15)!important;box-shadow:0 4px 12px #ef444466!important}.feedback-active-up,.feedback-active-down{animation:.2s ease-out feedbackActivate,2s ease-in-out infinite feedbackPulse}@keyframes feedbackPulse{0%,to{box-shadow:0 2px 8px #22c55e4d}50%{box-shadow:0 2px 12px #22c55e66}}.feedback-active-down{animation:.2s ease-out feedbackActivate,2s ease-in-out infinite feedbackPulseRed}@keyframes feedbackPulseRed{0%,to{box-shadow:0 2px 8px #ef44444d}50%{box-shadow:0 2px 12px #ef444466}}.feedback-icon-btn:before{content:"";pointer-events:none;background:#0000001a;border-radius:50%;width:0;height:0;transition:width .3s,height .3s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.feedback-icon-btn:active:before{width:40px;height:40px}.feedback-active-up:before,.feedback-active-down:before{background:#ffffff4d}.feedback-active-up{box-shadow:0 2px 8px #22c55e4d,0 0 0 2px #22c55e1a!important}.feedback-active-down{box-shadow:0 2px 8px #ef44444d,0 0 0 2px #ef44441a!important}
