:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:16px/145% var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80}}*{box-sizing:border-box}body{margin:0}h1,h2{color:var(--text-h);font-weight:500}.auth-page{background:var(--bg);place-items:center;min-height:100svh;padding:32px 20px;display:grid}.auth-card{background:var(--code-bg);border:1px solid var(--border);text-align:center;border-radius:16px;width:min(100%,400px);padding:40px;animation:.28s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.auth-card h2{letter-spacing:-.03em;color:var(--text-h);margin:16px 0 8px;font-size:22px}.auth-icon{background:linear-gradient(135deg, var(--accent), #2563eb);color:#fff;border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;font-size:22px;font-weight:900;line-height:1;display:inline-flex}.auth-check{background:color-mix(in srgb, var(--accent) 15%, transparent);width:48px;height:48px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;font-size:22px;line-height:1;display:inline-flex}.auth-message{color:var(--text);margin:0 0 24px;font-size:14px}.auth-button{background:var(--accent);color:#fff;width:100%;font-size:15px;font-family:var(--sans);cursor:pointer;border:none;border-radius:10px;padding:12px 20px;font-weight:600;transition:opacity .2s}.auth-button:disabled{opacity:.5;cursor:not-allowed}.auth-button:not(:disabled):hover{opacity:.9}.app-layout{width:100%;height:100svh;display:flex;position:relative}.sidebar{background:var(--bg);border-right:1px solid var(--border);flex-shrink:0;width:300px;overflow-y:auto}.sidebar-right{border-right:none;border-left:1px solid var(--border);width:340px}.debug-toggle{z-index:10;border:1px solid var(--border);background:var(--code-bg);width:24px;height:48px;color:var(--text);cursor:pointer;border-right:none;border-radius:6px 0 0 6px;justify-content:center;align-items:center;font-size:12px;transition:background .2s;display:flex;position:absolute;top:50%;right:0;transform:translateY(-50%)}.debug-toggle:hover{background:var(--border)}.chat-app{flex-direction:column;flex:1;min-width:0;height:100svh;display:flex}.chat-header{border-bottom:1px solid var(--border);padding:20px 24px 16px}.chat-header-top{justify-content:space-between;align-items:center;gap:16px;display:flex}.chat-header h1{margin:0;font-size:24px}.chat-header .subtitle{color:var(--text);margin:4px 0 0;font-size:14px}.user-info{flex-shrink:0;align-items:center;gap:12px;display:flex}.tenant-name{color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent);border-radius:12px;padding:3px 10px;font-size:12px;font-weight:600}.user-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:13px;overflow:hidden}.logout-button{border:1px solid var(--border);color:var(--text);font-size:13px;font-family:var(--sans);cursor:pointer;background:0 0;border-radius:6px;padding:6px 14px;transition:background .2s,color .2s}.logout-button:hover{background:var(--code-bg);color:var(--text-h)}.messages{flex-direction:column;flex:1;gap:16px;padding:24px;display:flex;overflow-y:auto}.empty-state{color:var(--text);margin:auto;font-size:15px}.welcome-state{text-align:center;max-width:420px;margin:auto;padding:40px 24px;animation:.4s fadeIn}.welcome-icon{color:var(--accent);margin-bottom:16px;font-size:40px}.welcome-state h2{color:var(--text-h);letter-spacing:-.02em;margin:0 0 6px;font-size:22px;font-weight:700}.welcome-fund{color:var(--accent);margin:0 0 20px;font-size:14px;font-weight:600}.welcome-desc{color:var(--text);margin:0 0 28px;font-size:15px;line-height:1.6}.welcome-start{background:var(--accent);color:#fff;font-size:15px;font-family:var(--sans);cursor:pointer;border:none;border-radius:10px;padding:12px 32px;font-weight:600;transition:opacity .2s,transform .15s}.welcome-start:hover{opacity:.9;transform:translateY(-1px)}.welcome-start:active{transform:translateY(0)}.message{white-space:pre-wrap;word-wrap:break-word;border-radius:12px;max-width:85%;padding:12px 16px;line-height:1.5}.message.user{background:var(--accent);color:#fff;align-self:flex-end}.message.assistant{background:var(--code-bg);color:var(--text-h);align-self:flex-start}.message-label{text-transform:uppercase;letter-spacing:.5px;opacity:.7;margin-bottom:4px;font-size:11px;font-weight:600}.message-content{font-size:15px}.message.assistant .message-content{white-space:normal}.markdown-content p{margin:0 0 .75em}.markdown-content p:last-child{margin-bottom:0}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4{margin:1em 0 .5em;line-height:1.3}.markdown-content h1:first-child,.markdown-content h2:first-child,.markdown-content h3:first-child{margin-top:0}.markdown-content ul,.markdown-content ol{margin:.5em 0;padding-left:1.5em}.markdown-content li{margin:.25em 0}.markdown-content code{font-family:var(--mono);background:#00000014;border-radius:4px;padding:.15em .4em;font-size:.9em}.markdown-content pre{background:#0000000f;border-radius:8px;margin:.75em 0;padding:12px 14px;overflow-x:auto}.markdown-content pre code{background:0 0;padding:0;font-size:13px}.markdown-content table{border-collapse:collapse;width:100%;margin:.75em 0;font-size:14px}.markdown-content th,.markdown-content td{border:1px solid var(--border);text-align:left;padding:6px 10px}.markdown-content th{background:#0000000a;font-weight:600}.markdown-content blockquote{border-left:3px solid var(--accent);color:var(--text);margin:.75em 0;padding:.5em 1em}.markdown-content hr{border:none;border-top:1px solid var(--border);margin:1em 0}.markdown-content strong{font-weight:600}.inline-select{margin:10px 0}.inline-select-dropdown{border:2px solid var(--accent);background:var(--bg);width:100%;max-width:340px;color:var(--text-h);font-size:14px;font-family:var(--sans);cursor:pointer;border-radius:8px;outline:none;padding:10px 12px;transition:box-shadow .2s}.inline-select-dropdown:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 20%, transparent)}.inline-select-dropdown:hover{box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 15%, transparent)}.traces{border-top:1px solid var(--border);flex-direction:column;gap:6px;margin-top:10px;padding-top:10px;display:flex}.traces-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text);margin-bottom:2px;font-size:10px;font-weight:600}.trace{border:1px solid var(--border);background:var(--bg);border-radius:6px;padding:8px 10px;font-size:13px}.trace-rationale{color:var(--text);font-style:italic}.trace-tool-call .tool-name{font-family:var(--mono);color:var(--accent);font-weight:600}.trace pre{font-family:var(--mono);white-space:pre-wrap;word-break:break-word;color:var(--text-h);margin:4px 0 0;font-size:12px}.trace-tool-result{color:#16a34a}.cursor{background:var(--accent);vertical-align:text-bottom;width:2px;height:1em;margin-left:2px;animation:.8s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.input-area{border-top:1px solid var(--border);gap:8px;padding:16px 24px;display:flex}.message-chips{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.chip{border:1px solid var(--border);background:var(--bg);color:var(--text-h);font-size:13px;font-family:var(--sans);cursor:pointer;border-radius:16px;padding:6px 14px;transition:background .15s,border-color .15s}.chip:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, transparent)}.chip-default{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 6%, transparent)}.message-dropdown{margin-top:10px}.message-dropdown-select{border:2px solid var(--accent);background:var(--bg);width:100%;max-width:320px;color:var(--text-h);font-size:14px;font-family:var(--sans);cursor:pointer;border-radius:8px;padding:10px 12px;transition:border-color .2s,box-shadow .2s}.message-dropdown-select:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 20%, transparent);outline:none}.message-dropdown-select:hover{border-color:var(--accent)}.input-area input{border:1px solid var(--border);background:var(--bg);color:var(--text-h);font-size:15px;font-family:var(--sans);border-radius:8px;outline:none;flex:1;padding:10px 14px;transition:border-color .2s}.input-area input:focus{border-color:var(--accent)}.input-area input:disabled{opacity:.6}.input-area button{background:var(--accent);color:#fff;font-size:15px;font-family:var(--sans);cursor:pointer;border:none;border-radius:8px;padding:10px 20px;font-weight:500;transition:opacity .2s}.input-area button:disabled{opacity:.5;cursor:not-allowed}.input-area button:not(:disabled):hover{opacity:.9}.progress-panel{flex-direction:column;height:100%;padding:20px 16px;display:flex}.progress-panel-header h3{text-transform:uppercase;letter-spacing:.5px;color:var(--text);margin:0 0 20px;font-size:14px;font-weight:700}.progress-empty{color:var(--text);text-align:center;margin-top:24px;font-size:13px;line-height:1.5}.progress-empty-icon{margin-bottom:8px;font-size:28px}.progress-empty-time{color:var(--text);opacity:.6;margin-top:4px;font-size:11px}.progress-overview{border-bottom:1px solid var(--border);align-items:center;gap:14px;margin-bottom:24px;padding-bottom:20px;display:flex}.progress-ring-text{fill:var(--text-h);font-size:14px;font-weight:700}.progress-overview-phase{color:var(--text-h);font-size:14px;font-weight:600}.progress-overview-detail{color:var(--text);margin-top:2px;font-size:12px}.phase-list{flex-direction:column;flex:1;gap:4px;display:flex}.phase-section{border-radius:10px;padding:12px;transition:background .2s}.phase-section.active{background:var(--code-bg)}.phase-header{align-items:center;gap:10px;display:flex}.phase-number{border:2px solid var(--border);width:26px;height:26px;color:var(--text);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.phase-number.active{border-color:var(--accent);color:var(--accent)}.phase-check{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:700;display:flex}.phase-label{color:var(--text-h);font-size:13px;font-weight:600}.phase-stats{color:var(--text);margin-top:1px;font-size:11px}.phase-details{flex-direction:column;gap:12px;margin-top:12px;margin-left:36px;display:flex}.gate{flex-direction:column;gap:4px;display:flex}.gate-header{justify-content:space-between;align-items:center;display:flex}.gate-label{color:var(--text);text-transform:uppercase;letter-spacing:.3px;font-size:11px;font-weight:600}.gate-count{color:var(--text);font-variant-numeric:tabular-nums;font-size:11px;font-weight:600}.gate-bar{background:var(--border);border-radius:3px;height:6px;overflow:hidden}.gate-fill{border-radius:3px;height:100%;transition:width .5s}.gate-fill.mandatory{background:var(--accent)}.gate-fill.optional{background:color-mix(in srgb, var(--accent) 50%, transparent)}.gate-complete{color:var(--accent);font-size:11px;font-weight:500}.category-list{flex-direction:column;gap:6px;margin-top:4px;display:flex}.category-item{align-items:center;gap:8px;display:flex}.category-dot{flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.dot-pending{border:2px solid var(--border);border-radius:50%;width:8px;height:8px}.dot-check{color:var(--accent);font-size:11px;font-weight:700}.category-info{flex:1;justify-content:space-between;align-items:center;min-width:0;display:flex}.category-name{color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.category-item.done .category-name{color:var(--text)}.category-count{color:var(--text);font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:8px;font-size:11px}.progress-complete-banner{background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--accent);text-align:center;border-radius:10px;margin-top:auto;padding:16px 12px;font-size:14px;font-weight:600;animation:.4s fadeIn}.progress-complete-banner:before{content:"\\2713  "}.debug-panel{padding:20px 16px;font-size:12px}.debug-panel-header{align-items:center;gap:8px;margin-bottom:16px;display:flex}.debug-panel-header h3{text-transform:uppercase;letter-spacing:.5px;color:var(--text);margin:0;font-size:14px;font-weight:700}.debug-live-dot{background:#22c55e;border-radius:50%;width:8px;height:8px;animation:1.5s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.debug-state{border-bottom:1px solid var(--border);margin-bottom:16px;padding-bottom:16px}.debug-section-header{text-transform:uppercase;letter-spacing:.5px;color:var(--text);align-items:center;gap:6px;margin-bottom:8px;font-size:10px;font-weight:700;display:flex}.debug-trace-count{background:var(--code-bg);color:var(--text);border-radius:8px;padding:1px 6px;font-size:10px;font-weight:600}.debug-state-grid{grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:10px;display:grid}.debug-stat{background:var(--code-bg);border-radius:6px;flex-direction:column;align-items:center;padding:6px 4px;display:flex}.debug-stat-value{color:var(--text-h);font-variant-numeric:tabular-nums;font-size:16px;font-weight:700}.debug-stat-label{text-transform:uppercase;letter-spacing:.3px;color:var(--text);margin-top:2px;font-size:9px;font-weight:600}.debug-subsection-header{color:var(--text);margin-bottom:4px;font-size:10px;font-weight:600}.debug-captured-row{border-bottom:1px solid color-mix(in srgb, var(--border) 50%, transparent);justify-content:space-between;gap:8px;padding:3px 0;display:flex}.debug-captured-field{color:var(--text);font-family:var(--mono);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.debug-captured-value{color:var(--accent);white-space:nowrap;text-overflow:ellipsis;text-align:right;max-width:140px;font-size:11px;font-weight:500;overflow:hidden}.debug-trace-list{flex-direction:column;gap:6px;display:flex}.debug-empty{color:var(--text);font-size:12px;line-height:1.5}.debug-entry{border:1px solid var(--border);border-radius:6px;overflow:hidden}.debug-entry-header{background:var(--code-bg);-webkit-user-select:none;user-select:none;align-items:center;gap:6px;padding:5px 8px;display:flex}.debug-entry-header.clickable{cursor:pointer}.debug-entry-header.clickable:hover{background:var(--border)}.debug-chevron{color:var(--text);text-align:center;width:10px;font-size:8px;transition:transform .15s}.debug-chevron.open{transform:rotate(90deg)}.debug-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:3px;padding:1px 5px;font-size:9px;font-weight:700}.debug-badge.call{background:color-mix(in srgb, var(--accent) 15%, transparent);color:var(--accent)}.debug-badge.result{color:#16a34a;background:#22c55e26}.debug-tool-name{font-family:var(--mono);color:var(--text-h);font-size:11px;font-weight:600}.debug-result-size{color:var(--text);margin-left:auto;font-size:10px}.debug-json{font-family:var(--mono);color:var(--text);white-space:pre-wrap;word-break:break-word;margin:0;padding:6px 8px;font-size:10px;line-height:1.4}@media (width<=768px){.sidebar{display:none}}
