:root{--bg:#f6f7f9;--surface:#fff;--surface-2:#f0f2f5;--border:#d9dde3;--text:#1b1f24;--muted:#5b6470;--primary:#2f5bea;--primary-text:#fff;--danger:#c4314b;--success:#1e7a46;--warning:#8a5a00;--info:#1f5fae;--focus:#2f5bea;--radius:10px;--shadow:0 1px 2px #1018280f, 0 1px 3px #10182814;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.5}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1216;--surface:#171b21;--surface-2:#1f242c;--border:#2d343e;--text:#e7eaee;--muted:#9aa4b1;--primary:#6d8ef5;--primary-text:#0b0e12;--danger:#f0768b;--success:#5cc78a;--warning:#e7b85a;--info:#79aef0;--focus:#8fa9ff;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0f1216;--surface:#171b21;--surface-2:#1f242c;--border:#2d343e;--text:#e7eaee;--muted:#9aa4b1;--primary:#6d8ef5;--primary-text:#0b0e12;--danger:#f0768b;--success:#5cc78a;--warning:#e7b85a;--info:#79aef0;--focus:#8fa9ff;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}h1{margin:0 0 .25rem;font-size:1.6rem}h2{margin:0 0 .5rem;font-size:1.1rem}a{color:var(--primary)}code{font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:.9em}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{position:absolute;left:-9999px}.skip-link:focus{z-index:100;background:var(--surface);padding:.5rem 1rem;top:1rem;left:1rem}.muted{color:var(--muted)}.small{font-size:.85rem}.stack>*+*{margin-top:.9rem}.row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.space-between{justify-content:space-between}.app-shell{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;gap:1rem;padding:1rem;display:flex}.sidebar nav ul{margin:0;padding:0;list-style:none}.sidebar nav a{color:var(--text);border-radius:8px;padding:.5rem .75rem;text-decoration:none;display:block}.sidebar nav a:hover{background:var(--surface-2)}.sidebar nav a.active{background:var(--surface-2);color:var(--primary);font-weight:600}.sidebar-footer{flex-direction:column;gap:.5rem;margin-top:auto;display:flex}.brand{align-items:center;gap:.5rem;font-weight:700;display:flex}.brand-mark{background:var(--primary);width:28px;height:28px;color:var(--primary-text);border-radius:7px;place-items:center;display:inline-grid}.menu-toggle{margin-left:auto;display:none}.content{width:100%;max-width:1200px;padding:1.5rem 2rem}.content:focus{outline:none}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.page-actions{gap:.5rem;display:flex}@media (width<=800px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border)}.sidebar nav,.sidebar-footer{display:none}.sidebar.open nav,.sidebar.open .sidebar-footer{flex-direction:column;display:flex}.menu-toggle{border:1px solid var(--border);color:var(--text);background:0 0;border-radius:8px;padding:.25rem .6rem;display:inline-block}.content{padding:1rem}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem}.card+.card,.card+section,section+.card{margin-top:1rem}.muted-card{background:var(--surface-2);box-shadow:none}.grid-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem;margin-top:1rem;display:grid}.grid-3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;display:grid}.stat{color:var(--text);flex-direction:column;text-decoration:none;display:flex}.stat:hover{border-color:var(--primary)}.stat-value{font-size:1.8rem;font-weight:700}.stat-label{color:var(--muted);font-size:.9rem}.list{margin:0;padding:0;list-style:none}.list li{border-bottom:1px solid var(--border);padding:.45rem 0}.list li:last-child{border-bottom:0}.details{grid-template-columns:max-content 1fr;gap:.4rem 1rem;margin:0;display:grid}.details dt{color:var(--muted)}.details dd{margin:0}.field{flex-direction:column;gap:.3rem;display:flex}.field.compact{gap:.1rem}.field label{font-size:.9rem;font-weight:600}.field-hint{color:var(--muted);margin:0;font-size:.82rem}.field-error{color:var(--danger);margin:0;font-size:.85rem}input,select,textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px;width:100%;padding:.5rem .65rem}input[type=checkbox]{width:auto}fieldset{border:1px solid var(--border);border-radius:8px;margin:0;padding:.75rem}legend{padding:0 .3rem;font-weight:600}.check{align-items:center;gap:.35rem;margin-right:1rem;display:inline-flex}.grant-row{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.grant-row select{width:auto;min-width:200px}.filters{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-items:end;gap:.75rem;margin-bottom:1rem;display:grid}.btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:.4rem;padding:.5rem .9rem;font-weight:600;display:inline-flex}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--primary);color:var(--primary-text)}.btn-secondary{background:var(--surface-2);color:var(--text);border-color:var(--border)}.btn-danger{background:var(--danger);color:#fff}.btn-ghost{color:var(--text);border-color:var(--border);background:0 0}.state{text-align:center;flex-direction:column;align-items:center;gap:.6rem;padding:2.5rem 1rem;display:flex}.state-loading{flex-direction:row;justify-content:center}.state-title{margin:0;font-weight:600}.inline-error{border:1px solid var(--danger);color:var(--danger);border-radius:8px;padding:.6rem .8rem}.spinner{border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}.spinner-sm{width:14px;height:14px}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:3s}}.badge{border:1px solid;border-radius:999px;margin-right:.25rem;padding:.1rem .5rem;font-size:.78rem;font-weight:600;display:inline-block}.badge-neutral{color:var(--muted)}.badge-success{color:var(--success)}.badge-warning{color:var(--warning)}.badge-danger{color:var(--danger)}.badge-info{color:var(--info)}.table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.6rem .8rem}th{color:var(--muted);background:var(--surface-2);font-size:.82rem;font-weight:600}tr:last-child td{border-bottom:0}.pagination{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;margin-top:.75rem;display:flex}.tabs{border-bottom:1px solid var(--border);gap:.25rem;margin-bottom:1rem;display:flex;overflow-x:auto}.tabs button{font:inherit;color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:.55rem .9rem}.tabs button.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.dialog-overlay{background:#0a0c108c;position:fixed;inset:0}.dialog-content{background:var(--surface);width:min(560px,100vw - 2rem);max-height:calc(100vh - 2rem);color:var(--text);border-radius:var(--radius);border:1px solid var(--border);flex-direction:column;gap:.9rem;padding:1.25rem;display:flex;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.dialog-title{margin:0;font-size:1.2rem}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.auth-page{place-items:center;min-height:100vh;padding:1rem;display:grid}.auth-card{width:min(440px,100%)}.ide{flex-direction:column;gap:.75rem;display:flex}.ide-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.ide-header h1{font-size:1.3rem}.ide-body{grid-template-columns:260px 1fr;gap:1rem;min-height:70vh;display:grid}.ide-sidebar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);max-height:75vh;padding:.75rem;overflow:auto}.ide-main{flex-direction:column;gap:.5rem;min-width:0;display:flex}.ide-toolbar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.4rem .6rem}.code-editor{border:1px solid var(--border);border-radius:var(--radius);height:65vh;min-height:320px;overflow:hidden}.code-editor.diff{height:55vh}.file-tree ul{margin:0;padding-left:.8rem;list-style:none}.file-tree>ul{padding-left:0}.file-tree summary{cursor:pointer;padding:.15rem 0;font-weight:600}.file-tree .file{color:var(--text);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;width:100%;padding:.15rem .35rem}.file-tree .file:hover{background:var(--surface-2)}.file-tree .file.active{background:var(--surface-2);color:var(--primary);font-weight:600}.new-file{margin:.5rem 0}.check.block{align-items:flex-start;margin:.35rem 0;display:flex}@media (width<=800px){.ide-body{grid-template-columns:1fr}.ide-sidebar{max-height:30vh}}.exec-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.9rem}.small-heading{margin:0;font-size:1rem}.exec-layout{grid-template-columns:240px 1fr;gap:.75rem;display:grid}.exec-list{max-height:360px;margin:0;padding:0;list-style:none;overflow:auto}.exec-list button{text-align:left;width:100%;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.4rem .5rem;display:flex}.exec-list button:hover{background:var(--surface-2)}.exec-list button.active{border-color:var(--primary);background:var(--surface-2)}.exec-detail{min-width:0}.exec-log{color:#e6edf3;white-space:pre-wrap;word-break:break-word;background:#0d1117;border-radius:8px;height:320px;margin:0;padding:.75rem;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:.82rem;overflow:auto}.exec-log .log-stderr{color:#ffa198}.exec-log .log-system{color:#79c0ff}@media (width<=800px){.exec-layout{grid-template-columns:1fr}.exec-list{max-height:160px}}@media (width>=1280px){.ide-body{grid-template-columns:240px minmax(0,1fr) 380px}}.assistant{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;min-width:0;max-height:80vh;padding:.75rem;display:flex}.chat{flex-direction:column;flex:1;gap:.5rem;min-height:200px;padding-right:.25rem;display:flex;overflow-y:auto}.bubble{border-radius:10px;max-width:100%;padding:.5rem .65rem}.bubble.user{background:var(--primary);color:var(--primary-text);align-self:flex-end;max-width:90%}.bubble.assistant{background:var(--surface-2)}.bubble.system{background:0 0;padding:0}.bubble.live{border:1px dashed var(--border)}.chat-text{white-space:pre-wrap;word-break:break-word;margin:0}.tool-chip{color:var(--muted);padding:.1rem 0;font-size:.8rem}.tool-chip.error{color:var(--danger)}.thinking summary{color:var(--muted);cursor:pointer;font-size:.8rem}.thinking p{color:var(--muted);white-space:pre-wrap;font-size:.82rem}.verify-steps{flex-wrap:wrap;gap:.75rem;margin:0;padding:0;font-size:.85rem;list-style:none;display:flex}.meter{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;height:10px;overflow:hidden}.meter span{background:var(--primary);height:100%;display:block}.memory-item{border-top:1px solid var(--border);padding-top:.6rem}.memory-item:first-of-type{border-top:0;padding-top:0}.chat-divider{text-align:center;color:var(--muted);border-top:1px dashed var(--border);margin:.25rem 0;padding-top:.35rem;font-size:.78rem}.context-note{color:inherit;opacity:.8;margin:0 0 .25rem;font-size:.78rem;font-style:italic}.sidebar-tabs{margin-bottom:.5rem}.tabs-compact{margin-bottom:.25rem}.tabs-compact button{padding:.35rem .5rem;font-size:.85rem}.inline-warning{border:1px solid var(--warning,#b7791f);border-radius:8px;padding:.5rem .7rem}.inline-warning ul{margin:.25rem 0 0;padding-left:1.1rem}.link-button{font:inherit;color:inherit;cursor:pointer;text-align:left;overflow-wrap:anywhere;background:0 0;border:0;min-width:0;padding:0}.link-button:hover code{text-decoration:underline}.change-list,.commit-list{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.commit-list li{border-bottom:1px solid var(--border);padding-bottom:.35rem}.git-panel textarea{width:100%}.dialog-content.dialog-wide{width:min(860px,100vw - 2rem)}.grid-2{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;display:grid}.grow{flex:auto;min-width:0}.wrap{flex-wrap:wrap}.kanban{grid-template-columns:repeat(5,minmax(200px,1fr));gap:.75rem;padding-bottom:.5rem;display:grid;overflow-x:auto}.kanban-col{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-height:8rem;padding:.6rem}.kanban-col ul{gap:.5rem;margin:.5rem 0 0;padding:0;list-style:none;display:grid}.task-card{border:1px solid var(--border);background:var(--bg);cursor:grab;border-radius:8px;gap:.3rem;padding:.55rem .6rem;display:grid}.task-card.blocked{border-color:var(--danger)}.task-card .link-button{font-weight:600}@media (width<=800px){.kanban{grid-template-columns:repeat(5,minmax(230px,80vw))}}.criteria{border-collapse:collapse;width:100%}.criteria th,.criteria td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.35rem .4rem}.dependency-list{gap:.25rem;max-height:10rem;display:grid;overflow-y:auto}.message-list,.discussion-list,.activity-list,.notification-list{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.message{border-bottom:1px solid var(--border);padding-bottom:.5rem}.message-body,.notification-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:.3rem 0}.message-actions .btn{padding:.15rem .4rem;font-size:.85rem}.chip{border:1px solid var(--border);border-radius:999px;align-items:center;gap:.25rem;padding:.1rem .5rem;font-size:.85rem;display:inline-flex}.chip button{cursor:pointer;color:inherit;font:inherit;background:0 0;border:0;padding:0 .1rem}.activity-list li{border-left:2px solid var(--border);padding-left:.6rem}.bell{margin-left:auto;position:relative}.bell-button{border:1px solid var(--border);cursor:pointer;color:inherit;background:0 0;border-radius:8px;padding:.25rem .45rem;font-size:1rem;position:relative}.bell-count{background:var(--danger);color:#fff;text-align:center;border-radius:999px;min-width:1.2rem;padding:0 .35rem;font-size:.7rem;line-height:1.2rem;position:absolute;top:-.45rem;right:-.45rem}.bell-panel{z-index:40;background:var(--surface);width:min(380px,100vw - 2rem);max-height:70vh;color:var(--text);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);gap:.6rem;padding:.75rem;display:grid;position:absolute;top:2.4rem;left:0;overflow-y:auto}.notification-list li{border-bottom:1px solid var(--border);padding-bottom:.4rem}.notification-list li.unread{border-left:3px solid var(--primary);padding-left:.5rem}.capability-list{gap:.2rem;margin:0;padding:0;list-style:none;display:grid}.terminal-host{background:#0b0d10;border-radius:8px;height:360px;padding:.4rem;overflow:hidden}.terminal-host[hidden]{display:none}
