.app{display:flex;height:100vh;background-color:#1a1a1a}.entry-gate{display:flex;align-items:center;justify-content:center;height:100vh;background-color:#1a1a1a}.entry-card{display:flex;flex-direction:column;align-items:center;gap:16px;padding:40px;min-width:300px;background-color:#1f1f1f;border:1px solid #333;border-radius:12px;color:#e0e0e0}.entry-logo{height:40px}.entry-card h2{margin:0;font-size:18px;font-weight:500}.entry-input{width:100%;padding:12px 14px;background-color:#2a2a2a;border:1px solid #333;border-radius:8px;color:#e0e0e0;font-size:15px;box-sizing:border-box}.entry-input:focus{outline:none;border-color:#666}.entry-button{width:100%;padding:12px 14px;background-color:#3b82f6;border:none;border-radius:8px;color:#fff;font-size:15px;cursor:pointer}.entry-button:disabled{opacity:.5;cursor:not-allowed}.entry-error{color:#f87171;font-size:14px}.side-menu{width:240px;background-color:#1f1f1f;display:flex;flex-direction:column;position:relative;transition:width .3s ease}.side-menu.collapsed{width:50px}.side-menu.collapsed .logo-container{display:none}.logo-container{padding:20px;display:flex;justify-content:flex-start;align-items:center;gap:8px;border-bottom:1px solid rgba(255,255,255,.1)}.logo{max-width:60px;height:auto;color:#fff;flex-shrink:0}.logo-text{color:#fff;font-size:18px;font-weight:600;letter-spacing:.5px}.collapse-button{position:absolute;top:20px;right:10px;background-color:transparent;border:none;color:#fff;font-size:18px;cursor:pointer;padding:5px 10px;border-radius:4px;transition:background-color .2s;z-index:10}.collapse-button:hover{background-color:#ffffff1a}.menu-items{margin-top:20px;display:flex;flex-direction:column;gap:8px;padding:0 12px}.menu-section-heading{color:#ffffff80;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:8px 16px;margin-bottom:4px}.menu-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background-color:transparent;border:none;border-radius:8px;color:#ecf0f1;font-size:15px;cursor:pointer;transition:background-color .2s;text-align:left;width:100%}.menu-item:hover{background-color:#ffffff1a}.menu-item.active{background-color:#0003;font-weight:500}.menu-icon{font-size:20px;width:24px;display:flex;justify-content:center}.menu-label{flex:1}.main-content{flex:1;display:flex;overflow:hidden}.content-panel{flex:1;display:flex;flex-direction:column;background-color:#2d2d2d}.chat-panel{display:flex;flex-direction:column}.panel-header{padding:20px;border-bottom:1px solid #404040;background-color:#1f1f1f}.panel-header h2{font-size:18px;font-weight:600;color:#e0e0e0}.plan-editor{flex:1;padding:20px;border:none;outline:none;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.6;resize:none;color:#e0e0e0;background-color:#2d2d2d}.chat-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:12px;background-color:#2d2d2d}.empty-state{text-align:center;color:#666;padding:40px 20px;font-size:14px}.message{display:flex;max-width:80%;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message.user{align-self:flex-end}.message.assistant{align-self:flex-start}.message-content{padding:12px 16px;border-radius:12px;font-size:14px;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.message.user .message-content{background-color:#007bff;color:#fff}.message.assistant .message-content{background-color:#3a3a3a;color:#e0e0e0}.chat-input-container{padding:20px;border-top:1px solid #404040;background-color:#1f1f1f;display:flex;gap:12px}.chat-input{flex:1;padding:12px;border:1px solid #404040;border-radius:8px;font-family:inherit;font-size:14px;resize:none;outline:none;transition:border-color .2s;background-color:#2d2d2d;color:#e0e0e0}.chat-input:focus{border-color:#007bff}.chat-input:disabled{background-color:#1a1a1a;cursor:not-allowed}.send-button{padding:12px 24px;background-color:#007bff;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.send-button:hover:not(:disabled){background-color:#0056b3}.send-button:disabled{background-color:#555;cursor:not-allowed}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:#1a1a1a}.chat-messages::-webkit-scrollbar-thumb{background:#555;border-radius:4px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#666}.insights-output::-webkit-scrollbar{width:12px}.insights-output::-webkit-scrollbar-track{background:#1e1e1e}.insights-output::-webkit-scrollbar-thumb{background:#404040;border-radius:6px;border:3px solid #1e1e1e}.insights-output::-webkit-scrollbar-thumb:hover{background:#505050}.agent-panel{flex-direction:row}.agent-prompt-panel,.agent-chat-panel{flex:1;display:flex;flex-direction:column}.agent-prompt-panel{border-right:1px solid #404040}.agent-textarea{flex:1;padding:20px;border:none;outline:none;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.6;resize:none;color:#e0e0e0;background-color:#2d2d2d}.agent-chat-panel .chat-messages{flex:1}.agent-chat-panel .chat-input-container{border-top:1px solid #404040}.insights-panel{flex-direction:row}.insights-input-panel,.insights-output-panel{flex:1;display:flex;flex-direction:column}.insights-output-panel{background-color:#1e1e1e}.insights-input-panel{border-right:1px solid #404040}.insights-textarea{flex:1;padding:20px;border:none;outline:none;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.6;resize:none;color:#e0e0e0;background-color:#2d2d2d}.insights-textarea:disabled{background-color:#1a1a1a;cursor:not-allowed}.insights-actions{padding:20px;border-top:1px solid #404040;background-color:#1f1f1f;display:flex;justify-content:flex-end}.model-selector{padding:10px 32px 10px 14px;background-color:#2d2d2d;color:#e0e0e0;border:1px solid #404040;border-radius:8px;font-size:14px;cursor:pointer;outline:none;transition:border-color .2s;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23e0e0e0' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.model-selector:hover:not(:disabled){border-color:#007bff}.model-selector:focus{border-color:#007bff}.model-selector:disabled{background-color:#1a1a1a;cursor:not-allowed;opacity:.6}.chat-actions{display:flex;flex-direction:column;gap:8px}.run-button{padding:12px 24px;background-color:#007bff;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.run-button:hover:not(:disabled){background-color:#0056b3}.run-button:disabled{background-color:#555;cursor:not-allowed}.insights-output{flex:1;padding:40px 48px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;font-size:16px;line-height:1.8;color:#d4d4d4;overflow-y:auto;background-color:#1e1e1e;max-width:900px;margin:0 auto}.insights-output>*:first-child{margin-top:0!important}.insights-output h1,.insights-output h2,.insights-output h3,.insights-output h4,.insights-output h5,.insights-output h6{color:#fff;margin-top:32px;margin-bottom:16px;font-weight:600;line-height:1.3}.insights-output h1{font-size:36px;border-bottom:2px solid #404040;padding-bottom:14px;margin-top:0;margin-bottom:28px;font-weight:700;letter-spacing:-.5px}.insights-output h2{font-size:28px;border-bottom:1px solid #404040;padding-bottom:12px;margin-top:48px;margin-bottom:20px;font-weight:600;letter-spacing:-.3px}.insights-output h3{font-size:24px;margin-top:36px;margin-bottom:16px;font-weight:600}.insights-output h4{font-size:18px;margin-top:24px}.insights-output h5{font-size:16px;margin-top:20px}.insights-output h6{font-size:15px;margin-top:20px;color:#b0b0b0}.insights-output p{margin-bottom:20px;line-height:1.8;color:#d4d4d4}.insights-output ul,.insights-output ol{margin-left:28px;margin-bottom:20px;padding-left:12px}.insights-output ul{list-style-type:disc}.insights-output ol{list-style-type:decimal}.insights-output li{margin-bottom:10px;line-height:1.7;padding-left:4px}.insights-output li::marker{color:#58a6ff;font-weight:600}.insights-output li>p{margin-bottom:10px}.insights-output ul ul,.insights-output ol ul{list-style-type:circle;margin-top:10px;margin-bottom:10px}.insights-output ul ol,.insights-output ol ol{margin-top:10px;margin-bottom:10px}.insights-output code{background-color:#6e768126;padding:4px 8px;border-radius:5px;font-family:SF Mono,Monaco,Menlo,Consolas,Ubuntu Mono,monospace;font-size:14px;color:#ff7b72;border:1px solid rgba(110,118,129,.2);font-weight:500}.insights-output pre{background-color:#1e1e1e!important;padding:0!important;border-radius:8px;overflow:hidden;margin:24px 0;border:1px solid #3e3e3e;box-shadow:0 2px 8px #0000004d}.insights-output pre>div{padding:20px!important;margin:0!important;background-color:#1e1e1e!important;overflow-x:auto!important;font-size:14px!important;line-height:1.6!important}.insights-output pre code{background-color:transparent;padding:0;color:#e0e0e0;border:none;font-size:14px}.insights-output blockquote{border-left:4px solid #58a6ff;padding:16px 24px;margin:24px 0;background-color:#58a6ff14;border-radius:0 6px 6px 0;font-style:italic}.insights-output blockquote p{margin:0;color:#d0d0d0;font-size:15px}.insights-output a{color:#58a6ff;text-decoration:none;border-bottom:1px solid rgba(88,166,255,.3);transition:all .2s ease;font-weight:500}.insights-output a:hover{border-bottom-color:#58a6ff;color:#79b8ff}.insights-output hr{border:none;height:2px;background:linear-gradient(to right,transparent,#404040,transparent);margin:40px 0}.insights-output table{border-collapse:collapse;width:100%;margin:28px 0;border:1px solid #3e3e3e;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0003}.insights-output th,.insights-output td{border:1px solid #3e3e3e;padding:14px 18px;text-align:left}.insights-output th{background-color:#252525;font-weight:600;color:#fff;font-size:15px}.insights-output tbody tr:hover{background-color:#ffffff08}.insights-output tr:nth-child(2n){background-color:#ffffff04}.insights-output img{max-width:100%;height:auto;border-radius:6px;margin:20px 0}.insights-output strong{font-weight:600;color:#fff}.insights-output em{font-style:italic;color:#e0e0e0}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100vh;overflow:hidden}#root{height:100%}
