*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#000;--surface:#000;--border:#333;--text:#fff;--text-muted:#777;--accent:#fff;--danger:#ff3b30;--success:#fff;--warning:#777;--font:"SF Mono", "Fira Code", "Cascadia Code", "JetBrains Mono", Menlo, Consolas, monospace}html,body,#root{height:100%}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-size:13px}::selection{color:#000;background:#fff}.app{height:100%;display:flex}.loading{height:100%;color:var(--text-muted);letter-spacing:.05em;justify-content:center;align-items:center;display:flex}.login{justify-content:center;align-items:center;height:100%;display:flex}.login-card{border:1px solid var(--border);width:100%;max-width:360px;padding:2.5rem}.login-card h1{letter-spacing:.15em;text-transform:uppercase;margin-bottom:.25rem;font-size:14px;font-weight:400}.login-card p{color:var(--text-muted);margin-bottom:2rem;font-size:12px}.login-card form{flex-direction:column;gap:.75rem;display:flex}.login-error{color:var(--danger);font-size:11px}.login-alt{color:var(--text-muted);text-align:center;background:0 0;border:none;padding:4px 0;font-size:11px}.login-alt:hover{color:var(--text);background:0 0;border:none}.sidebar{border-right:1px solid var(--border);flex-direction:column;width:240px;min-width:240px;height:100%;display:flex}.sidebar-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.sidebar-header h1{letter-spacing:.15em;text-transform:uppercase;font-size:12px;font-weight:400}.sidebar-nav{border-bottom:1px solid var(--border);display:flex}.sidebar-nav button{color:var(--text-muted);cursor:pointer;font-family:var(--font);letter-spacing:.08em;text-transform:uppercase;background:0 0;border:none;border-bottom:1px solid #0000;flex:1;margin-bottom:-1px;padding:8px 0;font-size:11px;transition:color .1s}.sidebar-nav button:hover{color:var(--text);background:0 0}.sidebar-nav button.active{color:var(--text);border-bottom-color:var(--text)}.run-list{flex:1;padding:4px 0;overflow-y:auto}.run-item{width:100%;color:var(--text-muted);cursor:pointer;text-align:left;font-family:var(--font);background:0 0;border:none;border-radius:0;justify-content:space-between;align-items:center;gap:8px;padding:6px 14px;font-size:12px;transition:color .1s;display:flex}.run-item:hover,.run-item.active{color:var(--text);background:0 0}.run-item.active:before{content:">";flex-shrink:0;margin-right:4px}.run-task{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.run-status{text-transform:uppercase;letter-spacing:.06em;flex-shrink:0;font-size:10px;font-weight:400}.run-status.queued{color:var(--text-muted)}.run-status.running{color:var(--text)}.run-status.complete{color:var(--text-muted)}.run-status.failed{color:var(--danger)}.main{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:10px 20px;display:flex}.topbar-title{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:400}.chat-view{flex-direction:column;flex:1;min-height:0;display:flex}.messages{flex-direction:column;flex:1;gap:2px;padding:20px;display:flex;overflow-y:auto}.empty-state{text-align:center;margin:auto}.empty-state h2{color:var(--text);margin-bottom:4px;font-size:13px;font-weight:400}.empty-state p{color:var(--text-muted);font-size:12px}.event{border-radius:0;max-width:760px;padding:6px 0;font-size:13px;line-height:1.6}.event-system{color:var(--text-muted);border-bottom:1px solid var(--border);margin-bottom:4px;padding:4px 0;font-size:11px}.event-assistant{white-space:pre-wrap;color:var(--text)}.event-complete{white-space:pre-wrap;color:var(--text);border-top:1px solid var(--border);margin-top:4px;padding-top:8px}.event-tool,.event-tool-result{color:var(--text-muted);padding:3px 0;font-size:12px}.event-tool .tool-name,.event-tool-result .tool-name{color:var(--text);margin-right:6px;font-size:11px;font-weight:400;display:inline-block}.event-tool .tool-name:before,.event-tool-result .tool-name:before{content:"$";color:var(--text-muted);margin-right:2px}.event pre{font-family:var(--font);white-space:pre-wrap;color:var(--text-muted);margin-top:2px;font-size:11px;overflow-x:auto}.event-error{color:var(--danger)}.chat-input{border-top:1px solid var(--border);gap:0;display:flex}.chat-input input{background:var(--bg);border:none;border-radius:0;flex:1;padding:14px 20px;font-size:13px}.chat-input input:focus{border:none;outline:none}.chat-input input::placeholder{color:var(--text-muted)}.chat-input button{border:none;border-left:1px solid var(--border);background:var(--bg);color:var(--text);letter-spacing:.08em;text-transform:uppercase;border-radius:0;padding:14px 24px;font-size:12px}.chat-input button:hover{background:#111}.chat-input button:disabled{color:var(--text-muted)}.page{flex:1;padding:20px;overflow-y:auto}.page h2{letter-spacing:.15em;text-transform:uppercase;margin-bottom:4px;font-size:12px;font-weight:400}.subtitle{color:var(--text-muted);margin-bottom:20px;font-size:12px}.skill-form{border-bottom:1px solid var(--border);flex-direction:column;gap:8px;max-width:560px;margin-bottom:24px;padding-bottom:24px;display:flex}.form-actions{gap:8px;display:flex}.skill-list,.memory-list{flex-direction:column;gap:0;max-width:640px;display:flex}.skill-card,.memory-card{border-bottom:1px solid var(--border);padding:12px 0}.skill-card:last-child,.memory-card:last-child{border-bottom:none}.skill-header,.memory-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.skill-header strong{font-size:13px;font-weight:400}.skill-actions{gap:4px;display:flex}.skill-card pre{font-family:var(--font);color:var(--text-muted);white-space:pre-wrap;font-size:12px}.badge{border:1px solid var(--border);color:var(--text);font-family:var(--font);text-transform:uppercase;letter-spacing:.05em;background:0 0;border-radius:0;padding:1px 6px;font-size:10px;font-weight:400}.date{color:var(--text-muted);font-size:11px}.memory-card p{color:var(--text);font-size:12px;line-height:1.5}.empty{color:var(--text-muted);font-size:12px}input,textarea{background:var(--bg);border:1px solid var(--border);color:var(--text);font-family:var(--font);border-radius:0;outline:none;padding:8px 10px;font-size:13px;transition:border-color .1s}input:focus,textarea:focus{border-color:var(--text)}input::placeholder,textarea::placeholder{color:var(--text-muted)}button{background:var(--bg);color:var(--text);border:1px solid var(--border);font-family:var(--font);cursor:pointer;letter-spacing:.04em;border-radius:0;padding:7px 14px;font-size:12px;font-weight:400;transition:border-color .1s}button:hover{border-color:var(--text);background:var(--bg)}button:disabled{opacity:.3;cursor:default}button.danger{color:var(--text-muted);background:0 0;border-color:#0000;padding:4px 8px;font-size:11px}button.danger:hover{color:var(--danger);background:0 0;border-color:#0000}.btn-new{padding:4px 10px;font-size:11px}.btn-signout{color:var(--text-muted);background:0 0;border:none;padding:4px 8px;font-size:11px}.btn-signout:hover{color:var(--text);background:0 0;border:none}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border)}::-webkit-scrollbar-thumb:hover{background:#555}.btn-menu{color:var(--text);font-family:var(--font);cursor:pointer;letter-spacing:0;background:0 0;border:none;padding:2px 6px;font-size:16px;line-height:1;display:none}.btn-menu:hover{background:0 0;border:none}.sidebar-overlay{display:none}@media (width<=768px){.btn-menu{display:block}.sidebar{z-index:20;background:var(--bg);border-right:1px solid var(--border);width:280px;min-width:0;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-overlay{z-index:15;background:#0009;display:block;position:fixed;inset:0}.messages{padding:14px}.chat-input input{padding:12px 14px}.chat-input button{padding:12px 16px}.page{padding:14px}.skill-form,.skill-list,.memory-list{max-width:100%}.login-card{margin:0 16px}}
