*{box-sizing:border-box}html,body,#root{color:#e8eaed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#1a1b1d;height:100%;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}body{font-size:14px;line-height:1.5}button{font-family:inherit}input,select,textarea{color:inherit;background:0 0;font-family:inherit}a{color:#cc785c;text-decoration:none}a:hover{text-decoration:underline}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#3a3c40;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#5e6166}.app-shell{color:#e8eaed;background:#1a1b1d;grid-template-columns:17rem 1fr;height:100%;display:grid}@media (width<=760px){.app-shell{grid-template-columns:1fr}}.app-shell.sidebar-closed{grid-template-columns:0 1fr}@media (width<=760px){.app-shell.sidebar-closed{grid-template-columns:1fr}}.app-main{flex-direction:column;min-width:0;display:flex;overflow:hidden}.topbar{background:#1a1b1d;border-bottom:1px solid #2e3034;align-items:center;gap:.75rem;min-height:3rem;padding:.75rem 1.5rem;display:flex}.topbar .topbar-toggle{color:#8a8d92;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem .5rem}.topbar .topbar-toggle:hover{color:#e8eaed;background:#232527}.topbar .topbar-title{color:#e8eaed;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.95rem;font-weight:500;overflow:hidden}.controls{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.controls label{color:#8a8d92;align-items:center;gap:.25rem;font-size:.8rem;display:flex}.controls select{color:#e8eaed;background:#232527;border:1px solid #2e3034;border-radius:4px;padding:.25rem .5rem;font-size:.85rem}.controls select:focus{border-color:#cc785c;outline:none}.spinner-center{justify-content:center;align-items:center;width:100%;padding:.75rem;display:flex}.spinner{border:2px solid #2e3034;border-top-color:#cc785c;border-radius:50%;animation:.75s linear infinite spinner-rotate;display:inline-block}.spinner--sm{border-width:2px;width:.9rem;height:.9rem}.spinner--md{border-width:2px;width:1.5rem;height:1.5rem}@keyframes spinner-rotate{to{transform:rotate(360deg)}}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.auth-status{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;height:100%;padding:2rem;display:flex}.auth-status h1{margin:0;font-size:1.5rem;font-weight:600}.auth-status p{color:#8a8d92;margin:0}.auth-status button{color:#fff;cursor:pointer;background:#cc785c;border:none;border-radius:8px;padding:.5rem 1.5rem;font-size:.95rem}.auth-status button:hover{background:#d68872}.auth-status--error p{color:#e25b5b}.sidebar{background:#0f1011;border-right:1px solid #2e3034;flex-direction:column;min-width:0;display:flex;overflow:hidden}.sidebar-backdrop{display:none}.sidebar-header{border-bottom:1px solid #26282b;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.sidebar-header h2{color:#e8eaed;margin:0;font-size:.95rem;font-weight:600}.sidebar-section{border-bottom:1px solid #26282b;padding:.75rem 0}.sidebar-section:last-child{border-bottom:none}.sidebar-section-header{justify-content:space-between;align-items:center;padding:0 1rem .25rem;display:flex}.sidebar-section-header h3{text-transform:uppercase;letter-spacing:.05em;color:#5e6166;margin:0;font-size:.7rem;font-weight:600}.sidebar-section-header button{color:#8a8d92;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem .5rem;font-size:.75rem}.sidebar-section-header button:hover{color:#cc785c;background:#232527}.sidebar-button{color:#e8eaed;cursor:pointer;text-align:left;background:0 0;border:1px solid #2e3034;border-radius:8px;align-items:center;gap:.5rem;width:calc(100% - 1.5rem);margin:0 .75rem;padding:.5rem .75rem;font-size:.85rem;display:flex}.sidebar-button:hover{background:#232527}.sidebar-button--primary{color:#e8eaed;background:#3a2b25;border-color:#0000}.sidebar-button--primary:hover{color:#fff;background:#cc785c}.conversation-list{flex:1;margin:0;padding:0;list-style:none;overflow-y:auto}.conversation-list li{border-left:2px solid #0000;align-items:stretch;margin:0;display:flex}.conversation-list li:hover .conversation-list-delete{opacity:1}.conversation-list .conversation-list-select{text-align:left;color:#e8eaed;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;gap:2px;min-width:0;padding:.5rem .75rem .5rem 1rem;font-size:.85rem;display:flex}.conversation-list .conversation-list-select:hover{background:#232527}.conversation-list .conversation-list-delete{color:#5e6166;cursor:pointer;opacity:0;background:0 0;border:none;flex:none;width:1.75rem;font-size:1.1rem;line-height:1;transition:opacity .12s ease-out,color .12s ease-out}.conversation-list .conversation-list-delete:hover{color:#e25b5b}.conversation-list .conversation-list-item--active{border-left-color:#cc785c}.conversation-list .conversation-list-item--active .conversation-list-select{background:#232527}.conversation-list .conversation-list-item--active .conversation-list-delete{opacity:1}.conversation-list .conversation-title{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.conversation-list .conversation-meta{color:#5e6166;font-size:.7rem}.conversation-list .conversation-empty{color:#5e6166;padding:.75rem 1rem;font-size:.8rem;font-style:italic}.conversation-list .conversation-loading{align-items:baseline;display:inline-flex}.sidebar-scroll{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.sidebar-section--scroller{flex-direction:column;flex:1 1 0;min-height:0;display:flex}.sidebar-section-toggle{cursor:pointer;width:100%;color:inherit;background:0 0;border:none;padding:.25rem 1rem}.sidebar-section-toggle:hover{background:#232527}.sidebar-section-chevron{color:#5e6166;font-size:.75rem}.sidebar-section--collapsed{padding-bottom:0}.sidebar-section-count{color:#5e6166;font-size:.75em;font-weight:400}.helper-hints{margin:.5rem .75rem 0}.helper-hints-toggles{align-items:stretch;gap:.25rem;display:flex}.helper-hints-toggle{color:#8a8d92;cursor:pointer;text-align:left;background:0 0;border:1px dashed #26282b;border-radius:4px;flex:1;justify-content:space-between;align-items:center;gap:.5rem;min-width:0;padding:.25rem .5rem;font-size:.78rem;display:flex}.helper-hints-toggle:hover{color:#e8eaed;border-color:#2e3034}.helper-hints-tools-icon{color:#8a8d92;cursor:pointer;background:0 0;border:1px dashed #26282b;border-radius:4px;flex:none;justify-content:center;align-items:center;width:1.75rem;padding:0 .25rem;display:inline-flex}.helper-hints-tools-icon:hover{color:#e8eaed;border-color:#2e3034}.helper-hints-tools-icon.is-active{color:#cc785c;border-style:solid;border-color:#2e3034}.helper-hints-error{color:#e25b5b;margin:.25rem 0;font-size:.78rem}.helper-hints-body{color:#8a8d92;max-height:18rem;padding:.5rem .25rem .25rem;font-size:.78rem;overflow-y:auto}.helper-hints-body h4{text-transform:uppercase;letter-spacing:.05em;color:#5e6166;margin:.5rem 0 .25rem;font-size:.7rem;font-weight:600}.helper-hints-body ul{margin:0 0 .5rem;padding-left:1.1rem}.helper-hints-body li{margin:.15rem 0;line-height:1.4}.memory-reset{color:#8a8d92;cursor:pointer;background:0 0;border:1px solid #2e3034;border-radius:4px;padding:.2rem .5rem;font-size:.75rem}.memory-reset:hover:not(:disabled){color:#e8eaed;background:#232527}.memory-reset:disabled{opacity:.4;cursor:not-allowed}.sidebar-footer{border-top:1px solid #26282b;flex-direction:column;gap:.25rem;padding:.75rem 1rem;display:flex}.sidebar-footer .sidebar-user{color:#e8eaed;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.sidebar-footer .sidebar-meta{color:#5e6166;font-size:.7rem}.sidebar-footer button{color:#8a8d92;cursor:pointer;background:0 0;border:1px solid #2e3034;border-radius:4px;margin-top:.25rem;padding:.25rem .5rem;font-size:.75rem}.sidebar-footer button:hover{color:#e8eaed;background:#232527}.memory-editor{padding:0 .75rem}.memory-editor textarea{color:#e8eaed;resize:vertical;background:#232527;border:1px solid #2e3034;border-radius:4px;width:100%;min-height:6rem;padding:.5rem;font-size:.8rem}.memory-editor textarea:focus{border-color:#cc785c;outline:none}.memory-editor .memory-actions{justify-content:space-between;align-items:center;gap:.5rem;margin-top:.5rem;display:flex}.memory-editor .memory-status{color:#5e6166;font-size:.7rem}.memory-editor button{color:#e8eaed;cursor:pointer;background:#3a2b25;border:none;border-radius:4px;padding:.25rem .75rem;font-size:.75rem}.memory-editor button:hover{color:#fff;background:#cc785c}.memory-editor button:disabled{opacity:.5;cursor:not-allowed}@media (width<=760px){.sidebar{z-index:30;border-right:1px solid #2e3034;width:17rem;transition:transform .18s ease-out;position:fixed;inset:0 auto 0 0;transform:translate(-100%);box-shadow:4px 0 16px #0000004d}.sidebar.sidebar-open{transform:translate(0)}.sidebar-backdrop{z-index:25;cursor:pointer;background:#00000080;border:none;padding:0;display:block;position:fixed;inset:0}}.chat-pane{background:#1a1b1d;flex-direction:column;flex:1;display:flex;overflow:hidden}.messages{flex-direction:column;flex:1;align-items:center;padding:1.5rem 0;display:flex;overflow-y:auto}.message{flex-direction:column;gap:.5rem;width:100%;max-width:48rem;margin-bottom:.75rem;padding:.75rem 1.5rem;display:flex}.message .message-role{text-transform:uppercase;letter-spacing:.05em;color:#5e6166;font-size:.7rem;font-weight:600}.message .message-content{color:#e8eaed;white-space:pre-wrap;word-wrap:break-word;font-size:.95rem;line-height:1.6}.message .message-content.markdown{white-space:normal}.message .message-content.markdown h1,.message .message-content.markdown h2,.message .message-content.markdown h3,.message .message-content.markdown h4{margin:.75rem 0 .5rem;line-height:1.3}.message .message-content.markdown h1{font-size:1.4rem}.message .message-content.markdown h2{font-size:1.2rem}.message .message-content.markdown h3{font-size:1.05rem}.message .message-content.markdown h4{font-size:.95rem;font-weight:600}.message .message-content.markdown p{margin:.5rem 0}.message .message-content.markdown ul,.message .message-content.markdown ol{margin:.5rem 0;padding-left:1.5rem}.message .message-content.markdown li{margin:.15rem 0}.message .message-content.markdown code{background:#232527;border-radius:4px;padding:.1rem .3rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em}.message .message-content.markdown pre{background:#232527;border-radius:4px;margin:.5rem 0;padding:.75rem;overflow-x:auto}.message .message-content.markdown pre code{background:0 0;padding:0;font-size:.85em}.message .message-content.markdown blockquote{color:#8a8d92;border-left:3px solid #2e3034;margin:.5rem 0;padding-left:.75rem}.message .message-content.markdown table{border-collapse:collapse;margin:.5rem 0;font-size:.9rem}.message .message-content.markdown table th,.message .message-content.markdown table td{text-align:left;border:1px solid #2e3034;padding:.3rem .6rem}.message .message-content.markdown table th{background:#232527;font-weight:600}.message .message-content.markdown hr{border:none;border-top:1px solid #26282b;margin:.75rem 0}.message .message-content.markdown a{color:#cc785c}.message .message-thinking{color:#8a8d92;align-items:baseline;font-size:.95rem;font-style:italic;display:inline-flex}.message .thinking-dots:after{content:"...";white-space:nowrap;vertical-align:bottom;width:0;animation:1.4s steps(4,end) infinite thinking-dots;display:inline-block;overflow:hidden}@keyframes thinking-dots{0%{width:0}to{width:1.2em}}.message.user .message-content{background:#232527;border-radius:8px;padding:.75rem 1rem}.message.assistant .message-content{padding:0}.message-stats-toggle{color:#5e6166;cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:.75rem}.message-stats-toggle:hover{color:#8a8d92}.message-stats{color:#8a8d92;background:#1f2123;border:1px solid #26282b;border-radius:4px;align-self:flex-start;gap:.75rem;padding:.25rem .75rem;font-family:ui-monospace,SF Mono,Menlo,Monaco,Consolas,monospace;font-size:.7rem;display:flex}.composer{background:#1a1b1d;border-top:1px solid #2e3034;flex-direction:column;align-items:center;padding:.75rem 1.5rem;display:flex}.composer .composer-inner{flex-direction:column;gap:.5rem;width:100%;max-width:48rem;display:flex}.composer textarea{resize:vertical;color:#e8eaed;background:#232527;border:1px solid #2e3034;border-radius:8px;width:100%;min-height:4rem;max-height:14rem;padding:.75rem;font-size:.95rem;line-height:1.5}.composer textarea:focus{border-color:#cc785c;outline:none}.composer textarea:disabled{opacity:.6;cursor:not-allowed}.composer .composer-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.composer .composer-send{color:#fff;cursor:pointer;background:#cc785c;border:none;border-radius:8px;padding:.5rem 1.5rem;font-size:.9rem;font-weight:500}.composer .composer-send:hover:not(:disabled){background:#d68872}.composer .composer-send:disabled{opacity:.4;cursor:not-allowed}.context-indicator{color:#8a8d92;align-items:center;gap:.5rem;font-family:ui-monospace,SF Mono,Menlo,Monaco,Consolas,monospace;font-size:.75rem;display:flex}.context-indicator .context-bar{background:#26282b;border-radius:3px;width:8rem;height:6px;overflow:hidden}.context-indicator .context-bar-fill{background:#4caf72;height:100%;transition:width .2s ease-out,background .2s ease-out}.context-indicator .context-bar-fill.high{background:#d4a72c}.context-indicator .context-bar-fill.critical{background:#e25b5b}.context-indicator .context-compact{color:#8a8d92;cursor:pointer;background:0 0;border:1px solid #2e3034;border-radius:4px;padding:.25rem .5rem;font-size:.7rem}.context-indicator .context-compact:hover{color:#cc785c;border-color:#cc785c}.empty-state{color:#8a8d92;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.75rem;padding:2rem;display:flex}.empty-state h2{color:#e8eaed;margin:0;font-size:1.5rem;font-weight:500}.empty-state p{max-width:28rem;margin:0}.artifact{background:#232527;border:1px solid #2e3034;border-radius:8px;margin:.5rem 0;padding:.75rem}.artifact-actions{gap:.5rem;margin-top:.5rem;display:flex}.artifact-actions button{color:#e8eaed;cursor:pointer;background:#2a2c2f;border:1px solid #2e3034;border-radius:4px;padding:.25rem .75rem;font-size:.75rem}.artifact-actions button:hover{color:#cc785c;border-color:#cc785c}table.artifact-table{border-collapse:collapse;color:#e8eaed;width:100%;font-size:.85rem}table.artifact-table th,table.artifact-table td{text-align:left;border:1px solid #2e3034;padding:.25rem .75rem}table.artifact-table th{color:#8a8d92;background:#2a2c2f;font-weight:500}table.artifact-table tbody tr:hover{background:#1f2123}@media print{.no-print,.composer,.topbar,.sidebar,.sidebar-backdrop,.app-footer,.message-stats-toggle{display:none!important}body,#root,.app-shell,.app-main,.chat-pane,.messages{color:#000!important;background:#fff!important;height:auto!important;display:block!important;overflow:visible!important}.message,.message-content,.artifact{page-break-inside:avoid;color:#000!important;background:#fff!important;border:none!important}svg{max-width:100%;height:auto}}
