body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.sophia-chat-container{height:100vh;display:flex;background-color:#f9fafb;contain:layout style;transform:translateZ(0)}.message-content{word-wrap:break-word;overflow-wrap:break-word}.message-content pre{overflow-x:auto;border-radius:4px;margin:8px 0}.message-content code{background-color:#ecf0f6;padding:2px 4px;border-radius:4px;font-family:Courier New,monospace;color:#202939}.message-content pre code{background-color:transparent;padding:0}.message-content a{color:#1976d2;text-decoration:none}.message-content a:hover{text-decoration:underline}.message-content ul,.message-content ol{margin:8px 0;padding-left:24px}.message-content li{margin:4px 0}.message-content blockquote{border-left:4px solid #ECF0F6;margin:8px 0;padding-left:16px;color:#637387}.message-content table{border-collapse:collapse;margin:8px 0;width:100%}.message-content th,.message-content td{border:1px solid #ECF0F6;padding:8px;text-align:left;color:#202939}.message-content th{background-color:#f5f7fa;font-weight:700;color:#637387}.conversation-item{cursor:pointer;transition:background-color .2s}.conversation-item:hover{background-color:#0000000a}.conversation-item.selected{background-color:#0a4b781f}.message-input{resize:none;font-family:inherit}.message-input::-webkit-scrollbar{width:8px}.message-input::-webkit-scrollbar-track{background:#f9fafb}.message-input::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.message-input::-webkit-scrollbar-thumb:hover{background:#555}.file-drop-zone{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0a4b781a;border:2px dashed #0A4B78;display:flex;align-items:center;justify-content:center;z-index:1000;pointer-events:none;will-change:opacity;contain:layout style paint}.file-drop-zone.active{background-color:#0a4b7833}.typing-indicator{display:flex;align-items:center;gap:4px;padding:8px 12px}.typing-indicator span{height:8px;width:8px;background-color:#637387;border-radius:50%;display:inline-block;animation:typing 1.4s infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.7}30%{transform:translateY(-10px);opacity:1}}@media(max-width:900px){.sophia-chat-container{flex-direction:column}.conversation-list{height:120px;border-right:none!important;border-bottom:1px solid #ECF0F6}.message-content{font-size:14px}}@keyframes slideIn{0%{opacity:0;transform:translate3d(0,20px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes slideUp{0%{opacity:0;transform:translate3d(0,20px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.katex-display{margin:1.5em 0!important;padding:1em;background:#1976d20d;border-left:4px solid #1976d2;border-radius:4px;text-align:center}.katex{font-size:1.1em!important}.financial-section{margin-bottom:2em}.financial-section h1,.financial-section h2,.financial-section h3,.financial-section h4{color:#1976d2;font-weight:600;margin-top:1.5em;margin-bottom:.75em}.financial-calculation{background:linear-gradient(135deg,#1976d20d,#1976d21a);border:1px solid rgba(25,118,210,.2);border-radius:8px;padding:1rem;margin:1rem 0}.assumptions-list{background:#4caf500d;border-left:4px solid #4caf50;padding:1rem;margin:1rem 0}.conclusions-box{background:#ff98000d;border:1px solid rgba(255,152,0,.3);border-radius:8px;padding:1rem;margin:1rem 0}.message-enter{animation:slideIn .3s ease-out}.messages-container{will-change:scroll-position;-webkit-overflow-scrolling:touch}.messages-container::-webkit-scrollbar{width:8px}.messages-container::-webkit-scrollbar-track{background:transparent}.messages-container::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.messages-container::-webkit-scrollbar-thumb:hover{background:#555}
