:root{color-scheme:light dark;--bg: #ffffff;--fg: #1a1a1a;--muted: #6b7280;--line: #e5e7eb;--ok: #16a34a;--bad: #dc2626}@media(prefers-color-scheme:dark){:root{--bg: #0d0f12;--fg: #e8eaed;--muted: #9aa0a6;--line: #23262b;--ok: #4ade80;--bad: #f87171}}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.5 ui-sans-serif,system-ui,-apple-system,sans-serif}main{max-width:720px;margin:0 auto;padding:3rem 1.25rem}h2{font-size:.8125rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:2.5rem 0 .75rem}.actions{display:flex;flex-direction:column;gap:.5rem}.row{display:flex;gap:.5rem}input,select{flex:1;min-width:0;padding:.5rem .7rem;font:inherit;color:var(--fg);background:transparent;border:1px solid var(--line);border-radius:8px}select{flex:0 0 auto}button{flex:0 0 auto;padding:.5rem .9rem;font:inherit;font-weight:500;color:var(--fg);background:transparent;border:1px solid var(--line);border-radius:8px;cursor:pointer}button:hover:not(:disabled){border-color:var(--muted)}button:disabled{opacity:.45;cursor:not-allowed}button.link{border:none;color:var(--muted);text-decoration:underline;padding:.25rem .4rem}.result{margin:1rem 0 0;padding:.7rem .9rem;border-radius:8px;border:1px solid var(--line);font-size:.875rem}.result.ok{color:var(--ok)}.result.bad{color:var(--bad)}.repos,.projects{list-style:none;margin:.5rem 0 0;padding:0;border:1px solid var(--line);border-radius:10px;overflow:hidden}.repos li,.projects li{display:flex;align-items:center;gap:.75rem;padding:.7rem 1rem;border-bottom:1px solid var(--line)}.repos li:last-child,.projects li:last-child{border-bottom:none}.hint{margin:.15rem 0 0;font-size:.8125rem;color:var(--muted)}.src-ready{color:var(--ok)}.src-failed{color:var(--bad)}.src-provisioning,.src-pending{color:var(--muted)}.chat-header{display:flex;align-items:flex-start;gap:1rem}.chat-header h1{font-size:1.25rem}.notice{margin:1.25rem 0 0;padding:.6rem .85rem;font-size:.8125rem;color:var(--muted);border:1px dashed var(--line);border-radius:8px}.transcript{display:flex;flex-direction:column;gap:.75rem;margin:1.25rem 0;min-height:240px}.bubble{border:1px solid var(--line);border-radius:10px;padding:.7rem .9rem}.bubble p{margin:.3rem 0 0;white-space:pre-wrap}.bubble .role{font-size:.6875rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.bubble.user{border-color:var(--muted)}.bubble.pending{opacity:.6}.session{margin:.2rem 0 0;font-size:.6875rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted)}.bubble.summary{border-style:dashed}.composer{display:flex;gap:.5rem;align-items:flex-end}textarea{flex:1;padding:.6rem .8rem;font:inherit;color:var(--fg);background:transparent;border:1px solid var(--line);border-radius:8px;resize:vertical}h1{margin:0;font-size:1.5rem;letter-spacing:-.02em}.subtitle{margin:.25rem 0 2rem;color:var(--muted)}.services{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:10px;overflow:hidden}.services li{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;border-bottom:1px solid var(--line)}.services li:last-child{border-bottom:none}.dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--bad)}li.healthy .dot{background:var(--ok)}.info{display:flex;flex-direction:column;min-width:0;flex:1}.meta{color:var(--muted);font-size:.8125rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}li.healthy .status{color:var(--ok)}.error,.error-text{color:var(--bad)}.empty{color:var(--muted)}.chat-header .model-select{margin-left:auto;flex:0 0 auto}.usage{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem;padding:.6rem .9rem;font-size:.8125rem;color:var(--muted);border:1px solid var(--line);border-radius:8px}.usage strong{color:var(--fg);font-weight:600}.usage .ok{color:var(--ok)}.usage .warn{color:var(--bad)}.caret{display:inline-block;width:.5em;height:1em;margin-left:1px;vertical-align:text-bottom;background:var(--muted);animation:blink 1s step-end infinite}@keyframes blink{50%{opacity:0}}.usage-panel{margin-top:.75rem;padding:.9rem 1rem;border:1px solid var(--line);border-radius:8px;overflow-x:auto}.usage-panel h3{margin:1.1rem 0 .4rem;font-size:.8125rem;font-weight:700}.usage-panel h3:first-child{margin-top:0}.usage-panel pre{margin:0;font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre}.usage-panel .dim{color:var(--muted)}.meter{display:flex;align-items:center;gap:.6rem;margin:.3rem 0 .4rem}.meter-track{flex:1;max-width:420px;height:14px;border-radius:3px;background:color-mix(in srgb,var(--muted) 35%,transparent);overflow:hidden}.meter-fill{height:100%;background:#a78bfa}.meter span{font:12px ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted)}main.chat-mode{display:flex;flex-direction:column;height:100dvh;padding-top:1.5rem;padding-bottom:1rem;gap:0;max-width:1700px}.workbench{display:grid;grid-template-columns:1fr;gap:1.25rem;flex:1 1 auto;min-height:0}.workbench.has-preview{grid-template-columns:1fr 1fr}.chat-pane,.preview-pane{display:flex;flex-direction:column;min-height:0;min-width:0}.chat-pane>*:not(.transcript){flex:0 0 auto}@media(max-width:1100px){.workbench.has-preview{grid-template-columns:1fr;grid-template-rows:1fr 1fr}}main.chat-mode .transcript{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:.4rem;margin:1rem 0}main.chat-mode .subtitle{margin-bottom:0}main.chat-mode .usage-panel{max-height:40vh;overflow-y:auto}main.chat-mode .composer{padding-top:.75rem;border-top:1px solid var(--line)}.markdown{margin-top:.3rem}.markdown>*:first-child{margin-top:0}.markdown>*:last-child{margin-bottom:0}.markdown p,.markdown ul,.markdown ol,.markdown blockquote,.markdown pre{margin:.6rem 0}.markdown h1,.markdown h2,.markdown h3,.markdown h4{margin:1rem 0 .4rem;line-height:1.3;text-transform:none;letter-spacing:normal;color:var(--fg)}.markdown h1{font-size:1.15rem}.markdown h2{font-size:1.05rem}.markdown h3,.markdown h4{font-size:.95rem}.markdown ul,.markdown ol{padding-left:1.3rem}.markdown li{margin:.2rem 0}.markdown li::marker{color:var(--muted)}.markdown code{font:.875em ui-monospace,SFMono-Regular,Menlo,monospace;background:color-mix(in srgb,var(--muted) 18%,transparent);padding:.1em .35em;border-radius:4px}.markdown pre{overflow-x:auto;padding:.7rem .85rem;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--muted) 10%,transparent)}.markdown pre code{background:none;padding:0;font-size:.8125rem;line-height:1.5}.markdown blockquote{padding-left:.8rem;border-left:2px solid var(--line);color:var(--muted)}.markdown a{color:inherit;text-decoration:underline;text-underline-offset:2px}.markdown hr{border:none;border-top:1px solid var(--line);margin:1rem 0}.table-scroll{overflow-x:auto;margin:.6rem 0}.markdown table{border-collapse:collapse;font-size:.875rem}.markdown th,.markdown td{border:1px solid var(--line);padding:.35rem .6rem;text-align:left}.markdown th{font-weight:600;background:color-mix(in srgb,var(--muted) 12%,transparent)}.markdown img{max-width:100%;height:auto}.preview{margin-top:.75rem;border:1px solid var(--line);border-radius:8px;overflow:hidden}.preview-bar{display:flex;align-items:center;gap:.6rem;padding:.5rem .8rem;font-size:.8125rem}.preview-bar .spacer{flex:1}.preview-bar .dot{background:var(--muted)}.preview-bar .dot.up{background:var(--ok)}.preview-frame{display:block;width:100%;height:40vh;border:none;border-top:1px solid var(--line);background:#fff}.preview-pane .preview{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;margin-top:0}.preview-pane .preview-frame{flex:1 1 auto;height:auto;min-height:0}.preview-placeholder{flex:1 1 auto;display:flex;align-items:center;justify-content:center;padding:1.5rem;text-align:center;border-top:1px solid var(--line)}.activity{list-style:none;margin:.5rem 0 0;padding:0;font:12px/1.7 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted)}.activity li{display:flex;gap:.5rem;min-width:0}.activity .tool-name{flex:0 0 auto;color:var(--fg);opacity:.75}.activity .tool-arg{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
