:root{--bg: #0f1117;--surface: #1a1d27;--border: #2e3250;--accent: #5b8dee;--amber: #f0a04b;--red: #e05c6a;--text: #e2e6f0;--muted: #7a8099}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}.app{display:flex;flex-direction:column;height:100vh;width:100%;max-width:min(1100px,92vw);margin:0 auto}.app__header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border);font-weight:700}.app__header-actions{display:flex;align-items:center;gap:10px}.app__header-actions button:not(.app__settings-button){background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--muted);font-size:12px;font-weight:500;cursor:pointer;padding:4px 9px}.app__header-actions button:not(.app__settings-button):hover:not(:disabled){color:var(--text);border-color:var(--muted)}.app__header-actions button:disabled{opacity:.4;cursor:default}.app__settings-button{background:transparent;border:none;color:var(--muted);font-size:16px;cursor:pointer;padding:0;line-height:1}.app__settings-button:hover{color:var(--text)}.app__messages{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:12px}.app__typing{color:var(--muted);font-size:13px}.app__tool-steps{display:flex;flex-direction:column;gap:2px}.app__tool-step{color:var(--muted);font-size:12px;font-family:monospace}.app__composer{display:flex;align-items:flex-end;gap:8px;padding:16px 20px;border-top:1px solid var(--border)}.app__composer textarea{flex:1;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:10px 12px;font-size:14px;font-family:inherit;line-height:1.4;resize:none;max-height:200px;overflow-y:auto}.app__composer button{background:var(--accent);border:none;border-radius:8px;color:#fff;padding:10px 16px;font-size:14px;cursor:pointer}.app__composer button:disabled{opacity:.5;cursor:not-allowed}.bubble{position:relative;max-width:80%;padding:10px 14px;border-radius:10px;background:var(--surface);border:1px solid var(--border)}.bubble__copy{position:absolute;top:6px;right:8px;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:11px;padding:2px 8px;border-radius:999px;cursor:pointer;opacity:0;transition:opacity .1s ease}.bubble:hover .bubble__copy,.bubble__copy:focus-visible{opacity:1}.bubble__copy:hover{color:var(--text);border-color:var(--accent)}.bubble--user .bubble__copy{background:transparent;border-color:#fff6;color:#fffc}.bubble--user .bubble__copy:hover{color:#fff;border-color:#fff}.bubble--user{align-self:flex-end;background:var(--accent);border-color:var(--accent);color:#fff}.bubble--error{border-color:var(--red)}.bubble__role{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;opacity:.7;margin-bottom:4px;display:flex;align-items:center;gap:6px}.risk-badge{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.03em;padding:1px 6px;border-radius:999px;opacity:1}.risk-badge--medium{background:#f0a04b2e;color:var(--amber)}.risk-badge--high{background:#e05c6a2e;color:var(--red)}.bubble__content{white-space:pre-wrap}.bubble__content--markdown{white-space:normal}.bubble__content--markdown>:first-child{margin-top:0}.bubble__content--markdown>:last-child{margin-bottom:0}.bubble__content--markdown h1,.bubble__content--markdown h2,.bubble__content--markdown h3{margin:14px 0 6px;line-height:1.3}.bubble__content--markdown h1{font-size:1.3em}.bubble__content--markdown h2{font-size:1.15em}.bubble__content--markdown h3{font-size:1.05em}.bubble__content--markdown p{margin:8px 0;line-height:1.5}.bubble__content--markdown ul,.bubble__content--markdown ol{margin:8px 0;padding-left:22px;line-height:1.5}.bubble__content--markdown li+li{margin-top:2px}.bubble__content--markdown a{color:var(--accent)}.bubble__content--markdown blockquote{margin:8px 0;padding:2px 12px;border-left:3px solid var(--border);color:var(--muted)}.bubble__content--markdown hr{border:none;border-top:1px solid var(--border);margin:12px 0}.bubble__content--markdown code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em;background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:1px 5px}.bubble__content--markdown pre{margin:8px 0;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:8px;overflow-x:auto}.bubble__content--markdown pre code{background:none;border:none;padding:0}.bubble__table-scroll{margin:8px 0;overflow-x:auto}.bubble__content--markdown table{border-collapse:collapse;font-size:.92em}.bubble__content--markdown th,.bubble__content--markdown td{border:1px solid var(--border);padding:5px 10px;text-align:left}.bubble__content--markdown th{background:var(--bg);font-weight:700}.bubble__retry{margin-top:8px;border:1px solid var(--red);background:transparent;color:var(--red);border-radius:6px;padding:4px 12px;font-size:13px;cursor:pointer}.bubble__why{margin-top:6px}.bubble__why-toggle{border:none;background:transparent;color:var(--muted);font-size:12px;padding:0;cursor:pointer;text-decoration:underline}.bubble__why-toggle:hover{color:var(--text)}.bubble__why-detail{margin-top:6px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:#ffffff08;font-size:12.5px}.bubble__why-confidence{font-weight:600;margin-bottom:6px;color:var(--text)}.bubble__why-steps{margin:0 0 0 18px;color:var(--muted)}.bubble__why-steps li{margin-bottom:2px}.bubble__why-steps code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#ffffff0f;border-radius:3px;padding:1px 4px;font-size:11.5px;color:var(--text)}.bubble__source-external{color:var(--amber);font-size:11px}.bubble__why-chain{display:flex;flex-wrap:wrap;align-items:baseline;color:var(--muted)}.bubble__why-chain-arrow{color:var(--muted);opacity:.6}.bubble__why-chain-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#ffffff0f;border-radius:3px;padding:1px 4px;font-size:11.5px;font-weight:600;color:var(--text)}.bubble__why-chain-reason{font-size:12px}.bubble__batch-summary{color:var(--muted);font-size:12px;margin-top:4px}.bubble__batch-item--not_found{color:var(--red)}.bubble__batch-item--truncated_while_productive{color:var(--amber)}.bubble__layer-grid{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.bubble__layer-cell{position:relative;width:30px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:4px;font-size:10.5px;font-weight:600;letter-spacing:.02em;cursor:default}.bubble__layer-cell--disabled{background:#ffffff08;color:var(--muted);border:1px solid var(--border)}.bubble__layer-cell--fired{background:#5b8dee2e;color:var(--accent);border:1px solid var(--accent)}.bubble__layer-tooltip{display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);width:max-content;max-width:220px;padding:6px 8px;background:var(--surface);border:1px solid var(--border);border-radius:6px;font-size:11px;font-weight:400;line-height:1.4;letter-spacing:normal;color:var(--text);text-align:left;z-index:10;box-shadow:0 4px 12px #00000059}.bubble__layer-cell:hover .bubble__layer-tooltip,.bubble__layer-cell:focus-visible .bubble__layer-tooltip{display:block}.bubble__layer-cell:nth-child(-n+3) .bubble__layer-tooltip{left:0;transform:none}.bubble__plan-checklist-item--active{color:var(--text);font-weight:600}.app__plan-strip{padding:8px 20px;border-top:1px solid var(--border);color:var(--muted);font-size:12.5px}.app__demo{display:flex;flex-direction:column;gap:10px;padding-bottom:12px;margin-bottom:4px;border-bottom:1px dashed var(--border);opacity:.92}.app__demo-note{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.approval-card,.escalation-banner{border:1px solid var(--amber);border-radius:10px;padding:12px 14px;background:#f0a04b14}.escalation-banner{border-color:var(--red);background:#e05c6a14}.approval-card__header,.escalation-banner__title{font-weight:700;margin-bottom:6px}.approval-card__pending{margin:0 0 8px;padding:6px 10px;border-left:2px solid var(--amber);color:var(--text);font-style:italic;font-size:13.5px;white-space:pre-wrap}.approval-card__actions{display:flex;gap:8px;margin-top:10px}.approval-card__actions button{border:none;border-radius:6px;padding:6px 14px;font-size:13px;cursor:pointer;background:var(--amber);color:#1a1200}.approval-card__deny{background:transparent!important;border:1px solid var(--border)!important;color:var(--text)!important}.approval-card__resolution{font-size:13px;color:var(--muted);margin-top:6px}.settings{display:flex;flex-direction:column;height:100vh;width:100%;max-width:min(1100px,92vw);margin:0 auto}.settings__header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--border)}.settings__back{background:transparent;border:none;color:var(--text);font-size:14px;cursor:pointer;padding:0}.settings__title{font-weight:700}.settings__body{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:20px}.settings__section h2{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0 0 10px}.settings__field{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.settings__field-label{font-size:13px}.settings__pinned{color:var(--muted);font-size:11.5px;font-style:italic}.settings__diagnostics-block{font-family:ui-monospace,monospace;font-size:12px;line-height:1.6;white-space:pre-wrap;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:8px 10px;margin:0 0 14px}.settings__field input[type=text],.settings__field input[type=password],.settings__field input:not([type]),.settings__field input[type=number],.settings__field select{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:8px 10px;font-size:14px}.settings__field input:disabled,.settings__field select:disabled{opacity:.5}.settings__workspace-row{display:flex;align-items:center;gap:8px}.settings__workspace-path{flex:1;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;color:var(--muted);overflow-wrap:anywhere}.settings__error{border:1px solid var(--red);background:#e05c6a14;border-radius:8px;padding:10px 12px;font-size:13px;color:var(--red)}.settings__warning{border:1px solid var(--red);background:#e05c6a14;border-radius:8px;padding:10px 12px;font-size:12.5px;color:var(--red);margin:-4px 0 12px}.settings__footer{display:flex;gap:8px;padding:16px 20px;border-top:1px solid var(--border)}.settings__save{background:var(--accent);border:none;border-radius:8px;color:#fff;padding:10px 16px;font-size:14px;cursor:pointer}.settings__footer button:disabled{opacity:.5;cursor:not-allowed}.search-panel{display:flex;flex-direction:column;height:100vh;width:100%;max-width:min(1100px,92vw);margin:0 auto}.search-panel__header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--border)}.search-panel__back{background:transparent;border:none;color:var(--text);font-size:14px;cursor:pointer;padding:0}.search-panel__title{font-weight:700}.search-panel__body{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:12px}.search-panel__form{display:flex;gap:8px}.search-panel__input{flex:1;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:8px 10px;font-size:14px}.search-panel__form button{background:var(--accent);border:none;border-radius:8px;color:#fff;padding:8px 14px;font-size:14px;cursor:pointer}.search-panel__form button:disabled{opacity:.5;cursor:not-allowed}.search-panel__empty{color:var(--muted);font-size:13px}.search-panel__results{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.search-panel__result-row{width:100%;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:8px 10px;cursor:pointer;display:flex;flex-direction:column;gap:4px}.search-panel__result-row:hover{border-color:var(--muted)}.search-panel__result-meta{display:flex;gap:8px;font-size:11.5px;color:var(--muted);font-family:ui-monospace,monospace}.search-panel__result-snippet{font-size:13px;overflow-wrap:anywhere}.search-panel__result-detail{font-size:13px;line-height:1.6;white-space:pre-wrap;background:var(--surface);border:1px solid var(--border);border-top:none;border-radius:0 0 8px 8px;padding:8px 10px;margin-top:-6px;overflow-wrap:anywhere}.search-panel__result-snippet mark,.search-panel__result-detail mark{background:#5b8dee59;color:inherit;border-radius:3px;padding:0 1px}
