:root{--bg: #0f1115;--panel: #161922;--panel-2: #1c2029;--border: #272c38;--text: #e6e8ee;--muted: #949aab;--accent: #6c8cff;--danger: #ff6b6b;--ok: #4ade80;--warn: #fbbf24;--radius: 8px;--chat-measure: 42rem;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font:14px/1.55 system-ui,-apple-system,Segoe UI,sans-serif}button{font:inherit;cursor:pointer;border:1px solid transparent;border-radius:6px;padding:.45rem .9rem;background:var(--accent);color:#fff}button:disabled{opacity:.45;cursor:not-allowed}button.secondary{background:var(--panel-2);color:var(--text);border-color:var(--border)}input,textarea,select{font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:.45rem .6rem}input:focus,textarea:focus,select:focus{outline:2px solid var(--accent);outline-offset:-1px}.app{display:grid;grid-template-columns:240px 1fr;height:100%}.sidebar{background:var(--panel);border-right:1px solid var(--border);display:flex;flex-direction:column;min-height:0}.brand{font-weight:650;letter-spacing:.02em;padding:1rem 1rem .75rem}.new-project{display:flex;gap:.4rem;padding:0 .75rem .75rem}.new-project input{min-width:0;flex:1}.new-project button{padding:.45rem .6rem}.project-list{list-style:none;margin:0;padding:0 .5rem;overflow-y:auto;flex:1}.project-list button{display:flex;align-items:center;gap:.5rem;width:100%;background:none;color:var(--text);text-align:left;padding:.5rem .6rem;border-radius:6px}.project-list button:hover{background:var(--panel-2)}.project-list button.selected{background:var(--panel-2);border-color:var(--border)}.project-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hint{color:var(--muted);padding:.5rem .6rem}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--muted);flex:none}.status-dot.running{background:var(--ok)}.status-dot.creating{background:var(--warn)}.status-dot.failed{background:var(--danger)}.busy-pip{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.3}50%{opacity:1}}.workspace{display:flex;flex-direction:column;min-width:0;min-height:0}.workspace-header{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid var(--border)}.workspace-header h1{font-size:.95rem;font-weight:600;margin:0}.status-badge{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:.1rem .55rem}.status-badge.running{color:var(--ok)}.status-badge.failed{color:var(--danger)}.banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.6rem 1rem;border-bottom:1px solid var(--border)}.banner.error{background:#ff6b6b1f;color:var(--danger)}.banner.warn{background:#fbbf241f;color:var(--warn)}.banner button{background:none;color:inherit;padding:0 .4rem;font-size:1.1rem}.panes{display:grid;flex:1;min-height:0;--rail-width: 2.25rem;--resizer-width: 6px;grid-template-columns:1fr 0px var(--rail-width);transition:grid-template-columns .18s cubic-bezier(.22,.8,.3,1)}.panes>.chat{grid-column:1}.panes>.pane-resizer{grid-column:2}.panes>.drawer,.panes>.drawer-rail{grid-column:3}.panes[data-drawer=open]{grid-template-columns:1fr var(--resizer-width) var(--drawer-width, 30rem)}.panes[data-resizing=yes]{transition:none}.chat{display:flex;flex-direction:column;min-width:0;min-height:0;border-right:1px solid var(--border)}.chat-scroll{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.85rem}.chat-scroll,.chat>.composer{max-width:var(--chat-measure)}.empty{color:var(--muted);margin:auto;max-width:28rem;text-align:center}.empty h2{font-size:1rem;color:var(--text);margin-bottom:.4rem}.message{display:flex;flex-direction:column;gap:.55rem}.message.user{align-items:flex-end}.bubble{background:var(--panel-2);color:var(--text);border:1px solid var(--border);padding:.5rem .8rem;border-radius:14px 14px 4px;max-width:85%;white-space:pre-wrap;overflow-wrap:anywhere}.prose{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.message.assistant .prose{max-width:62ch}.message.security{border:1px solid color-mix(in srgb,var(--warn) 40%,var(--border));border-left-width:3px;border-radius:10px;padding:.6rem .75rem;background:color-mix(in srgb,var(--warn) 4%,var(--panel));gap:.35rem}.message.security .prose{max-width:62ch}.security-from{display:flex;align-items:center;gap:.45rem;margin:0;font-size:.78rem;font-weight:600;letter-spacing:.01em;color:var(--warn)}.security-dot{width:6px;height:6px;border-radius:50%;background:var(--warn);flex:none}.activity{border:1px solid var(--border);border-radius:10px;background:var(--panel)}.activity-failed{border-color:color-mix(in srgb,var(--danger) 45%,var(--border))}.activity-lead .working-orb{margin:0 -1px}.activity-lead{display:flex;align-items:center;gap:.55rem;width:100%;background:none;border:none;border-radius:10px;color:var(--text);padding:.45rem .6rem;text-align:left;font-size:.86rem}.activity-lead:hover{background:var(--panel-2)}.activity-lead:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.activity-open .activity-lead{border-radius:10px 10px 0 0}.activity-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-count{flex:none;color:var(--muted);font-size:.76rem}.activity-chevron{flex:none;width:.45rem;height:.45rem;margin-right:.1rem;border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);transform:rotate(45deg);transition:transform .15s ease}.activity-open .activity-chevron{transform:rotate(-135deg)}.activity-steps{list-style:none;margin:0;padding:.35rem;display:flex;flex-direction:column;gap:.3rem;border-top:1px solid var(--border)}.working{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;font-size:.86rem}.working-orb{display:inline-flex;align-items:center;gap:3px;flex:none}.working-orb span{width:5px;height:5px;border-radius:50%;background:var(--accent);animation:working-bounce 1.2s ease-in-out infinite}.working-orb span:nth-child(2){animation-delay:.15s}.working-orb span:nth-child(3){animation-delay:.3s}@keyframes working-bounce{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.working-label{color:var(--text)}@supports ((background-clip: text) or (-webkit-background-clip: text)){.working-label{background:linear-gradient(90deg,var(--muted) 30%,var(--text) 50%,var(--muted) 70%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:working-sweep 2.2s linear infinite}}@keyframes working-sweep{0%{background-position:100% 0}to{background-position:-100% 0}}.working-elapsed{color:var(--muted);font-size:.78rem;font-variant-numeric:tabular-nums}.thinking{color:var(--muted);font-size:.8rem}.thinking summary{cursor:pointer}.thinking summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.thinking pre{white-space:pre-wrap;margin:.4rem 0 0;font-size:.78rem}.tool{border-radius:6px}.tool>summary,div.tool{display:flex;align-items:center;gap:.5rem;padding:.25rem .4rem;list-style:none;cursor:pointer}div.tool{cursor:default}.tool>summary::-webkit-details-marker{display:none}.tool>summary:hover{background:var(--panel-2);border-radius:6px}.tool>summary:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:6px}.tool code{font-family:var(--mono);font-size:.8rem;color:var(--accent);flex:none}.tool-error code{color:var(--danger)}.tool-summary{color:var(--muted);font-family:var(--mono);font-size:.76rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.tool-dot{width:7px;height:7px;border-radius:50%;background:var(--muted);flex:none}.tool-dot.running{background:var(--accent);animation:pulse 1s ease-in-out infinite}.tool pre{font-family:var(--mono);font-size:.76rem;background:var(--bg);border-radius:6px;padding:.5rem;margin:.35rem .4rem .4rem;max-height:18rem;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}.tool-output{color:var(--muted)}.message.assistant>.thinking{align-self:flex-start}.composer{margin:0 .85rem .85rem;padding:.5rem .6rem .55rem;border:1px solid var(--border);border-radius:14px;background:var(--panel);display:flex;flex-direction:column;gap:.5rem;transition:border-color .15s ease}.composer:focus-within{border-color:color-mix(in srgb,var(--accent) 60%,var(--border))}.composer textarea{width:100%;background:transparent;border:none;resize:none;padding:.3rem .2rem;min-height:2.6rem;max-height:12.5rem}.composer textarea:focus{outline:none}.composer-actions{display:flex;justify-content:flex-end;align-items:center}.drawer{display:flex;min-width:0;min-height:0}.drawer>.preview{flex:1;min-width:0}.drawer.collapsed{display:none}.drawer-hide{margin-left:auto;padding:.25rem .6rem;font-size:.78rem;flex:none}.drawer-rail{display:flex;flex-direction:column;align-items:center;gap:.5rem;width:2.25rem;padding:.85rem 0;border:0;border-radius:0;background:var(--panel);color:var(--muted)}.drawer-rail:hover{color:var(--text)}.drawer-rail-label{writing-mode:vertical-rl;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.drawer-rail .tab-pip{margin:0}.tab-pip{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-left:.35rem;flex:none}.pane-resizer{width:6px;cursor:col-resize;touch-action:none;display:flex;align-items:center;justify-content:center;background:var(--bg)}.pane-resizer-grip{width:2px;height:2rem;border-radius:999px;background:var(--border)}.pane-resizer:hover .pane-resizer-grip{background:var(--accent)}.pane-resizer:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.pane-resizer:focus-visible .pane-resizer-grip{background:var(--accent)}.preview{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--panel)}.preview-bar{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.55rem .75rem;border-bottom:1px solid var(--border);min-height:3rem}.preview-url{font-family:var(--mono);font-size:.78rem;color:var(--accent);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent) 40%,transparent);text-underline-offset:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:6rem}.preview-url:hover{text-decoration-color:var(--accent)}.backends{display:flex;gap:.4rem}.backends a{font-size:.74rem;color:var(--muted);text-decoration:none;border:1px solid var(--border);border-radius:999px;padding:.1rem .55rem}.backends a:hover{color:var(--accent);border-color:var(--accent)}.preview-body{flex:1;min-height:0;background:#fff}.preview-body iframe{width:100%;height:100%;border:0;display:block}.pane-panel{flex:1;min-height:0;display:flex;flex-direction:column}.browser-view{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--bg)}.browser-stage{flex:1;min-height:8rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;padding:.6rem;background:#0b0d12;overflow:hidden}.browser-stage>.browser-shot{min-height:0}.browser-shot{max-width:100%;max-height:100%;object-fit:contain;border-radius:4px;display:block}.browser-stale{flex:none;margin:.4rem 0 0;max-width:40rem;color:var(--muted);font-size:.76rem;line-height:1.45;text-align:center}.browser-nopicture{color:var(--muted);margin:0;padding:1rem;text-align:center;max-width:24rem}.browser-caption{display:flex;flex-direction:column;gap:.25rem;padding:.6rem .75rem;border-bottom:1px solid var(--border)}.browser-what{display:flex;align-items:baseline;gap:.45rem;margin:0;overflow-wrap:anywhere}.browser-failed{flex:none;color:var(--danger);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--danger);border-radius:999px;padding:0 .4rem}.browser-why{margin:0;color:var(--muted);font-size:.82rem;overflow-wrap:anywhere}.browser-where{display:flex;align-items:baseline;gap:.5rem;margin:0;color:var(--muted);font-size:.74rem;min-width:0}.browser-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto}.browser-url{font-family:var(--mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1 auto;min-width:0}.browser-elapsed{margin-left:auto;flex:none;font-variant-numeric:tabular-nums}.browser-follow{display:flex;align-items:center;gap:.6rem;padding:.45rem .75rem;border-bottom:1px solid var(--border)}.browser-follow-state{margin:0;color:var(--muted);font-size:.78rem;display:flex;align-items:center;gap:.4rem}.browser-follow button{margin-left:auto;flex:none;padding:.25rem .6rem;font-size:.78rem}.browser-live-pip{width:6px;height:6px;border-radius:50%;background:var(--ok);animation:pulse 1.2s ease-in-out infinite}.browser-steps{list-style:none;margin:0;padding:.4rem;min-height:0;overflow-y:auto;flex:0 1 auto;max-height:45%}.browser-step{display:flex;align-items:baseline;gap:.45rem;width:100%;text-align:left;background:none;color:var(--text);border:1px solid transparent;border-radius:6px;padding:.3rem .45rem;font-size:.82rem}.browser-step:hover{background:var(--panel-2)}.browser-step.chosen{background:var(--panel-2);border-color:var(--border)}.browser-step-mark{flex:none;width:.9rem;color:var(--danger)}.browser-step-what{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.browser-step-failed{flex:none;color:var(--danger);font-size:.66rem;text-transform:uppercase;letter-spacing:.06em}.browser-step.failed{border-left:2px solid var(--danger);border-radius:0 6px 6px 0}.browser-step-elapsed{flex:none;color:var(--muted);font-size:.72rem;font-variant-numeric:tabular-nums}.placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;color:var(--muted);background:var(--bg);padding:2rem;text-align:center}.placeholder.error{color:var(--danger)}.placeholder p{margin:0;max-width:32rem}.splash{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem}.splash .brand{padding:0;font-size:1.1rem}.splash-pip{width:7px;height:7px;border-radius:50%;background:var(--accent);animation:pulse 1.2s ease-in-out infinite}.auth{height:100%;display:flex;align-items:center;justify-content:center;padding:1.5rem}.auth-card{width:100%;max-width:22rem;display:flex;flex-direction:column;gap:.85rem;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem}.auth-head{display:flex;flex-direction:column;gap:.15rem;margin-bottom:.15rem}.auth-head .brand{padding:0;font-size:1.15rem}.auth-tagline{color:var(--muted);margin:0}.auth-error{background:#ff6b6b1f;color:var(--danger);border-radius:6px;padding:.5rem .7rem}.form-row{display:flex;flex-direction:column;gap:.3rem}.form-row label{color:var(--muted);font-size:.8rem}.form-row input{width:100%}.form-row input[aria-invalid=true]{border-color:var(--danger)}.field-error{color:var(--danger);font-size:.78rem}.auth-submit{margin-top:.25rem;padding:.55rem .9rem}.auth-switch{color:var(--muted);font-size:.85rem;margin:0;text-align:center}.auth-divider{display:flex;align-items:center;gap:.6rem;color:var(--muted);font-size:.78rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.auth-sso{display:block;text-align:center;text-decoration:none;padding:.55rem .9rem;border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.9rem}.auth-sso:hover{border-color:var(--accent);color:var(--accent)}button.link{background:none;border-color:transparent;color:var(--accent);padding:0;font:inherit}button.link:hover:not(:disabled){text-decoration:underline}.account{display:flex;flex-direction:column;gap:.5rem;border-top:1px solid var(--border);padding:.65rem .75rem}.account-who{display:flex;flex-direction:column;flex:1;min-width:0;line-height:1.3;gap:.2rem}.account-email,.account-org{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-email{font-size:.8rem}.account-org{color:var(--muted);font-size:.72rem}.account-actions{display:flex;gap:.4rem}.account-btn{flex:1;padding:.25rem .5rem;font-size:.75rem}.org-switch{width:100%;font-size:.75rem;padding:.2rem .35rem;color:var(--muted)}.deploy-panel{flex:1;min-height:0;overflow-y:auto;background:var(--bg);display:flex;flex-direction:column;gap:.75rem;padding:1rem}.deploy-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.deploy-head h2{font-size:.95rem;font-weight:600;margin:0}.deploy-head button{flex:none}.deploy-panel .hint{padding:0;margin:0;max-width:40rem}.deploy-head .hint{margin-top:.2rem}.deploy-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.deployment{display:flex;flex-direction:column;gap:.5rem;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:.6rem .7rem}.deployment.live{border-color:#4ade8059}.deployment.rejected{border-color:#ff6b6b66}.deployment-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.deployment-version{font-family:var(--mono);font-size:.82rem;flex:none}.deployment-when{color:var(--muted);font-size:.75rem;margin-left:auto}.deployment-message{color:var(--muted);font-size:.85rem;margin:0}.deployment-urls{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;min-width:0}.deployment-url{font-family:var(--mono);font-size:.78rem;color:var(--accent);text-decoration:none;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deployment-url:hover{text-decoration:underline}.deploy-badge{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;flex:none;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:.1rem .55rem}.deploy-badge.pending,.deploy-badge.scanning,.deploy-badge.deploying{color:var(--accent);border-color:#6c8cff73}.deploy-badge.live{color:var(--ok);border-color:#4ade8073}.deploy-badge.rejected,.deploy-badge.failed{color:var(--danger);border-color:#ff6b6b73}.deploy-stages{list-style:none;margin:0;padding:0;display:flex;align-items:center;flex-wrap:wrap;gap:.4rem}.stage{display:flex;align-items:center;gap:.35rem;color:var(--muted);font-size:.76rem}.stage:after{content:"";width:1.1rem;height:1px;background:var(--border)}.stage:last-child:after{display:none}.stage-pip{width:8px;height:8px;border-radius:50%;flex:none;background:var(--panel-2);border:1px solid var(--border)}.stage.done{color:var(--text)}.stage.done .stage-pip{background:var(--accent);border-color:var(--accent)}.stage.current{color:var(--accent);font-weight:600}.stage.current .stage-pip{background:var(--accent);border-color:var(--accent);animation:pulse 1.2s ease-in-out infinite}.verdict{display:flex;flex-direction:column;gap:.6rem;background:#ff6b6b12;border:1px solid rgba(255,107,107,.3);border-radius:var(--radius);padding:.7rem .8rem}.verdict-lede{margin:0}.verdict-lede strong{color:var(--danger)}.verdict-summary{margin:0;color:var(--muted)}.verdict-passed{color:var(--ok);font-size:.82rem;margin:0}.verdict-more>summary{cursor:pointer;color:var(--muted);font-size:.82rem}.verdict-advisory{display:flex;flex-direction:column;gap:.6rem;margin-top:.5rem}.finding-group{display:flex;flex-direction:column;gap:.4rem}.finding-group-head{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;margin:0;font-size:.8rem}.sev-badge{font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;flex:none;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:.05rem .45rem}.sev-badge.sev-critical{background:var(--danger);border-color:var(--danger);color:var(--bg)}.sev-badge.sev-high{background:#ff6b6b26;border-color:#ff6b6b80;color:var(--danger)}.sev-badge.sev-medium{background:#fbbf241f;border-color:#fbbf2473;color:var(--warn)}.finding{display:flex;flex-direction:column;gap:.3rem;background:var(--panel);border:1px solid var(--border);border-left:3px solid var(--border);border-radius:6px;padding:.5rem .65rem}.finding.sev-critical{border-left-color:var(--danger)}.finding.sev-high{border-left-color:#ff6b6b99}.finding.sev-medium{border-left-color:var(--warn)}.finding-head{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap}.finding-head h5{margin:0;font-size:.88rem;font-weight:600}.finding-file{font-family:var(--mono);font-size:.74rem;color:var(--muted)}.finding-detail{margin:0;color:var(--muted);font-size:.85rem;overflow-wrap:anywhere}.finding-fix{margin:0;font-size:.85rem;overflow-wrap:anywhere}.finding-fix-label{color:var(--ok);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;margin-right:.4rem}.settings{display:flex;flex-direction:column;flex:1;min-height:0}.settings-tabs,.pane-tabs{display:flex;gap:.3rem}.settings-tabs .tab,.pane-tabs .tab{background:none;color:var(--muted);border:1px solid transparent;border-radius:999px;padding:.25rem .65rem;font-size:.82rem}.settings-tabs .tab:hover,.pane-tabs .tab:hover{color:var(--text)}.settings-tabs .tab.selected,.pane-tabs .tab.selected{background:var(--panel-2);border-color:var(--border);color:var(--text)}.settings-close{margin-left:auto;padding:.25rem .6rem;font-size:.78rem}.settings-body{flex:1;min-height:0;overflow-y:auto;padding:1rem}.settings-panel{display:flex;flex-direction:column;gap:.8rem;max-width:44rem}.settings-panel .hint,.auth-card .hint{padding:0;margin:0}.settings-panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.settings-panel-head h2{font-size:.95rem;font-weight:600;margin:0}.settings-subhead{font-size:.72rem;font-weight:600;color:var(--muted);margin:.4rem 0 0;text-transform:uppercase;letter-spacing:.06em}.count-note{color:var(--muted);font-size:.78rem}.member-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.member-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem .7rem}.member-who{display:flex;flex-direction:column;flex:1;min-width:0;line-height:1.3}.member-email{display:flex;align-items:center;gap:.4rem;min-width:0}.member-meta{color:var(--muted);font-size:.75rem}.member-row select{font-size:.8rem;padding:.25rem .4rem}.row-btn{flex:none;padding:.25rem .55rem;font-size:.75rem}.tag{color:var(--muted);font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--border);border-radius:999px;padding:0 .35rem;flex:none}.role-pill{color:var(--muted);font-size:.72rem;white-space:nowrap;border:1px solid var(--border);border-radius:999px;padding:.1rem .55rem}.invite-form{display:flex;gap:.4rem;flex-wrap:wrap}.invite-form input{flex:1;min-width:12rem}.invite-link{display:flex;flex-direction:column;gap:.35rem;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:.6rem .7rem}.invite-link-row{display:flex;gap:.4rem}.invite-link-row input{flex:1;min-width:0;font-family:var(--mono);font-size:.75rem}.invite-facts{display:flex;flex-direction:column;gap:.45rem;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);padding:.7rem .8rem}.invite-facts>div{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.limits{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.5rem;margin:0}.limit{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:.6rem .7rem}.limit dt{color:var(--muted);font-size:.75rem}.limit dd{margin:.15rem 0 0;font-size:1.05rem}.usage{display:flex;flex-direction:column;gap:.4rem}.usage-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.meter{height:8px;border-radius:999px;background:var(--panel-2);border:1px solid var(--border);overflow:hidden}.meter-fill{height:100%;background:var(--accent);transition:width .3s ease}.meter-fill.warn{background:var(--warn)}.meter-fill.full{background:var(--danger)}.usage-exhausted{color:var(--warn);margin:0}.upgrade{align-self:flex-start}.composer-note{margin:0;color:var(--muted);font-size:.82rem}a.text-link{color:var(--accent);text-decoration:none}a.text-link:hover{text-decoration:underline}.deploy-actions{display:flex;align-items:center;gap:.5rem}.deploy-target select{font:inherit;padding:.35rem .5rem}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.settings-panel-head>button{flex:none;white-space:nowrap}.target-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.target-list li{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:.5rem .7rem}.target-list li>div{display:flex;flex-direction:column;flex:1;min-width:0;line-height:1.35;gap:.1rem}.fingerprint{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem;word-break:break-all}.target-form{display:flex;flex-direction:column;gap:.65rem;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:.85rem}.target-form textarea{width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;resize:vertical;min-height:6rem}.form-actions{display:flex;gap:.5rem}.notice{background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);padding:.6rem .75rem;margin:0;color:var(--muted);font-size:.85rem}.auth-form{display:flex;flex-direction:column;gap:.85rem}.auth-providers{display:flex;flex-direction:column;gap:.5rem}.auth-lede-block{display:flex;flex-direction:column;gap:.35rem}.auth-lede{margin:0;color:var(--muted)}.auth-lede strong{color:var(--text);font-weight:600;overflow-wrap:anywhere}.auth-status{margin:0;color:var(--muted);font-size:.82rem}.field-hint{color:var(--muted);font-size:.78rem}.code-input{width:100%;font-family:var(--mono);font-size:1.3rem;letter-spacing:.4em;text-indent:.4em;text-align:center;padding:.5rem .4rem}.auth-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem 1.1rem;font-size:.85rem}.auth-card a:focus-visible,.auth-card button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:380px){.auth{padding:.75rem}.auth-card{padding:1.1rem}}.composer{position:relative}.composer.dragging{outline:2px dashed var(--accent);outline-offset:-4px}.drop-target{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);background:#0f1115e6;color:var(--accent);font-size:.9rem;pointer-events:none}.attach-tray{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem;max-height:8.5rem;overflow-y:auto}.attach-tile{position:relative;flex:none;width:4rem;height:4rem;border:1px solid var(--border);border-radius:6px;overflow:hidden;background:var(--panel-2)}.attach-tile img{display:block;width:100%;height:100%;object-fit:cover}.attach-tile.uploading img{opacity:.5}.attach-tile.failed{border-color:var(--danger)}.attach-tile.failed img{opacity:.35}.attach-retry{display:block;width:100%;height:100%;padding:0;border:0;border-radius:0;background:none}.attach-badge{position:absolute;left:0;right:0;bottom:0;background:var(--danger);color:#fff;font-size:.66rem;text-align:center;padding:.05rem 0}.attach-remove{position:absolute;top:2px;right:2px;display:flex;align-items:center;justify-content:center;width:1.2rem;height:1.2rem;padding:0;line-height:1;border:1px solid var(--border);border-radius:50%;background:#0f1115c7;color:var(--text);font-size:.85rem}.attach-remove:hover{background:var(--danger);border-color:var(--danger);color:#fff}.attach-tile button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.attach-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:#0f1115bf}.attach-progress-fill{display:block;height:100%;background:var(--accent);transition:width .15s linear}.attach-refusal{display:flex;flex-direction:column;gap:.25rem;background:#ff6b6b1f;color:var(--danger);border-radius:6px;padding:.4rem .6rem;font-size:.82rem}.attach-refusal p{margin:0}.attach-hint{margin:0;color:var(--muted);font-size:.73rem;line-height:1.4}.attach-control{position:relative;margin-right:auto}.attach-input{position:absolute;width:1px;height:1px;opacity:0}.attach-label{display:inline-block;cursor:pointer;font-size:.8rem;padding:.35rem .7rem;border:1px solid var(--border);border-radius:6px;background:var(--panel-2);color:var(--text)}.attach-label:hover{border-color:var(--accent);color:var(--accent)}.attach-input:focus-visible+.attach-label{outline:2px solid var(--accent);outline-offset:2px}.attach-input:disabled+.attach-label{opacity:.45;cursor:not-allowed}.message-images{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem;max-width:85%}.message-images li{min-width:0;max-width:100%}.message-images a{display:block}.message-images a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.message-images img{display:block;width:auto;height:auto;max-width:100%;max-height:11rem;border:1px solid var(--border);border-radius:8px}@media(max-width:380px){.attach-tile{width:3.25rem;height:3.25rem}.attach-tray{max-height:7rem}.message-images img{max-height:8rem}}.md-p{margin:0 0 .6rem}.md-p:last-child{margin-bottom:0}.md-heading{font-size:.92rem;font-weight:600;margin:.8rem 0 .35rem;color:var(--text)}.md-heading:first-child{margin-top:0}.md-list{margin:0 0 .6rem;padding-left:1.15rem;display:flex;flex-direction:column;gap:.15rem}.md-list:last-child{margin-bottom:0}.md-quote{margin:0 0 .6rem;padding:.1rem 0 .1rem .7rem;border-left:2px solid var(--border);color:var(--muted)}.md-rule{border:0;border-top:1px solid var(--border);margin:.8rem 0}.md-inline-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em;background:var(--panel-2);border:1px solid var(--border);border-radius:4px;padding:.05rem .28rem;word-break:break-word}.md-code{position:relative;margin:0 0 .6rem;padding:.6rem .7rem;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}.md-code:last-child{margin-bottom:0}.md-code code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;white-space:pre;display:block}.md-code-lang{position:absolute;top:.3rem;right:.5rem;font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.md-p a,.md-list a,.md-quote a{color:var(--accent)}.project-row{display:flex;flex-direction:column}.project-row-line{display:flex;align-items:stretch;gap:.25rem}.project-row-line>button:first-child{flex:1;min-width:0}.project-list .project-more{flex:none;width:auto;align-self:center;opacity:0;background:none;border:1px solid transparent;color:var(--muted);font-size:.9rem;line-height:1;padding:.2rem .4rem;border-radius:5px}.project-list .project-row:hover .project-more,.project-list .project-more:focus-visible,.project-list .project-row-open .project-more{opacity:1}.project-list .project-more:hover{color:var(--text);border-color:var(--border)}.project-list .project-more:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media(hover:none){.project-list .project-more{opacity:1}}.project-menu{list-style:none;margin:.1rem 0 .4rem .6rem;padding:0 0 0 .5rem;border-left:1px solid var(--border)}.project-list .project-menu-item{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.35rem .45rem;background:none}.project-list .project-menu-item:hover:not(:disabled){background:var(--panel-2)}.project-list .project-menu-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.project-list .project-menu-item:disabled{opacity:.55}.project-menu-label{font-size:.8rem}.project-list .project-menu-item.danger .project-menu-label{color:var(--danger)}.project-menu-detail{font-size:.7rem;color:var(--muted);white-space:normal;line-height:1.35}.project-menu-blocked{font-size:.7rem;color:var(--warn);margin:0 0 .35rem;padding:0 .45rem;line-height:1.35}.project-rename{display:flex;flex-direction:column;gap:.35rem;padding:.15rem 0 .4rem}.project-rename input{width:100%;font-size:.85rem}.project-rename-actions{display:flex;gap:.35rem}.project-list .project-rename-actions button{flex:1;width:auto;justify-content:center;text-align:center;font-size:.78rem;padding:.3rem .4rem}.project-list .project-rename-actions button[type=submit]{background:var(--accent);color:#fff}.project-list .project-rename-actions button.secondary{background:var(--panel-2);border-color:var(--border)}.project-rename .field-error{margin:0;line-height:1.35}.panes.single{grid-template-columns:1fr;grid-template-rows:1fr}.panes.single .empty p{margin:0;line-height:1.5}.mobile-bar,.nav-scrim,.pane-switch{display:none}@media(max-width:900px){.app{grid-template-columns:1fr;grid-template-rows:auto 1fr}.mobile-bar{display:flex;align-items:center;gap:.6rem;padding:.5rem .75rem;border-bottom:1px solid var(--border);background:var(--panel)}.mobile-bar .brand{font-size:.9rem}.nav-toggle{background:none;border:1px solid var(--border);color:var(--text);border-radius:6px;padding:.2rem .5rem;font-size:1rem;line-height:1}.sidebar{position:fixed;inset:0 auto 0 0;z-index:30;width:min(20rem,86vw);transform:translate(-100%);transition:transform .16s ease;border-right:1px solid var(--border);background:var(--panel);visibility:hidden}.nav-open .sidebar{transform:none;visibility:visible}.nav-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#00000080}.pane-switch{display:flex;gap:.3rem;padding:.45rem .75rem 0}.panes,.panes[data-drawer=open]{grid-template-columns:1fr;grid-template-rows:1fr}.panes[data-mobile-pane=chat]>.drawer,.panes[data-mobile-pane=preview]>.chat{display:none}.drawer.collapsed{display:flex}.pane-resizer,.drawer-rail,.drawer-hide{display:none}.chat-scroll,.chat>.composer{max-width:none}}@media(prefers-reduced-motion:reduce){.sidebar{transition:none}.working-orb span{animation:none;opacity:1}.working-label{animation:none;background:none;-webkit-text-fill-color:currentColor;color:var(--text)}.tool-dot.running{animation:none}.browser-live-pip{animation:none;opacity:1}.activity-chevron,.composer,.panes{transition:none}}.project-list .status-dot.stopped{background:var(--muted)}.project-list .status-dot.stopping,.project-list .status-dot.restoring{background:var(--warn)}.status-badge.stopping,.status-badge.restoring{color:var(--warn)}.usage-panel .usage-figures dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.usage-breakdown,.usage-chart-block{display:flex;flex-direction:column;gap:.4rem}.usage-table{width:100%;border-collapse:collapse;table-layout:fixed}.usage-table th,.usage-table td{text-align:left;vertical-align:top;padding:.45rem .4rem;border-bottom:1px solid var(--border)}.usage-table th:first-child,.usage-table td:first-child{padding-left:0}.usage-table th:last-child,.usage-table td:last-child{padding-right:0}.usage-table thead th{color:var(--muted);font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em}.usage-table tbody th{font-weight:500}.usage-table tbody tr:last-child th,.usage-table tbody tr:last-child td{border-bottom:0}.usage-table .num{text-align:right;font-variant-numeric:tabular-nums}.usage-table .col-credits{width:4.75rem}.usage-table .col-share{width:4.5rem}.usage-table .col-tokens{width:6rem}.usage-name{display:block;overflow-wrap:anywhere}.usage-table tbody th .member-meta{display:block;font-weight:400}.usage-share{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.usage-share-track{width:100%;height:5px}.usage-footnote{font-size:.78rem}.usage-chart{display:flex;align-items:flex-end;gap:2px;height:5.5rem;border-bottom:1px solid var(--border)}.usage-chart-col{flex:1 1 0;min-width:1px;height:100%;display:flex;align-items:flex-end}.usage-bar{width:100%;background:var(--accent);border-radius:2px 2px 0 0;min-height:3px}.usage-chart-axis{display:flex;justify-content:space-between}.usage-chart-note{margin:0}.usage-details summary{color:var(--muted);font-size:.78rem;cursor:pointer;border-radius:6px;padding:.1rem .2rem;width:fit-content}.usage-details summary:hover{color:var(--text)}.usage-details summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.usage-details[open] summary{margin-bottom:.5rem}@media(max-width:380px){.usage-table .col-credits{width:3.9rem}.usage-table .col-share{width:3.6rem}.usage-table .col-tokens{width:4.6rem}.usage-table th,.usage-table td{padding:.4rem .25rem;font-size:.85rem}.usage-chart{gap:1px}}.deploy-progress{display:flex;flex-direction:column}.deploy-now{margin:0;color:var(--muted);font-size:.78rem}.deploy-now:not(:empty){margin-top:.3rem}.deploy-steps,.env-disclosure{border:1px solid var(--border);border-radius:10px;background:var(--panel-2)}.deploy-steps-lead{display:flex;align-items:center;gap:.5rem;width:100%;background:none;color:var(--text);text-align:left;border:0;border-radius:10px;padding:.4rem .6rem;font-size:.8rem}.deploy-steps-lead:hover{background:var(--panel)}.deploy-steps-lead:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.deploy-steps.open .deploy-steps-lead,.env-disclosure.open .deploy-steps-lead{border-radius:10px 10px 0 0}.deploy-steps-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deploy-steps-count{flex:none;color:var(--muted);font-size:.76rem}.deploy-step-list{list-style:none;margin:0;padding:.35rem .6rem .5rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.25rem}.deploy-step{display:flex;align-items:baseline;gap:.5rem;font-size:.78rem}.deploy-step-stage{flex:none;width:9.5rem;color:var(--muted)}.deploy-step-message{flex:1;min-width:0;overflow-wrap:anywhere}.deploy-step-when{flex:none;color:var(--muted);font-size:.72rem;font-variant-numeric:tabular-nums}.deploy-step.failed .deploy-step-stage{color:var(--danger);font-weight:600}.deploy-step.failed .deploy-step-message{color:var(--text)}.env-disclosure>div{border-top:1px solid var(--border)}.env-panel{display:flex;flex-direction:column;gap:.6rem;padding:.6rem}.env-panel .hint{padding:0;margin:0}.env-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem}.env-list li{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:.35rem .55rem}.env-name{flex:1;min-width:8rem;font-family:var(--mono);font-size:.78rem;overflow-wrap:anywhere}.env-set{flex:none;color:var(--muted);font-size:.74rem}.env-form{display:flex;flex-direction:column;gap:.5rem;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:.6rem}.env-form input:disabled{opacity:.7}.target-entry{display:flex;flex-direction:column;align-items:stretch;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:.55rem .7rem}.target-entry>form{margin-top:.55rem}.target-summary{display:flex;align-items:flex-start;gap:.6rem;flex-wrap:wrap}.target-facts{display:flex;flex-direction:column;flex:1;min-width:0;line-height:1.35;gap:.1rem}.target-row-actions{display:flex;gap:.35rem;flex-wrap:wrap;flex:none}.edge-state{display:flex;align-items:center;gap:.35rem}.edge-pip{width:7px;height:7px;border-radius:50%;flex:none;background:var(--panel-2);border:1px solid var(--border)}.edge-pip.on{background:var(--accent);border-color:var(--accent)}.edge-field{display:flex;flex-direction:column;gap:.4rem;margin:0;border:1px solid var(--border);border-radius:var(--radius);padding:.6rem .7rem}.edge-field legend{color:var(--muted);font-size:.75rem;padding:0 .3rem}.edge-field .hint{padding:0;margin:0}.checkbox-row{display:flex;align-items:flex-start;gap:.5rem;cursor:pointer}.checkbox-row input{width:auto;margin-top:.15rem;flex:none}.target-check:not(:empty){margin-top:.45rem}.check-ok,.check-bad>p{margin:0;font-size:.82rem}.check-ok{color:var(--ok)}.check-mark{margin-right:.35rem}.check-bad{display:flex;flex-direction:column;gap:.3rem}.check-bad>p:first-child{color:var(--danger)}.check-detail{color:var(--text);overflow-wrap:anywhere}.check-identity{background:#ff6b6b12;border:1px solid rgba(255,107,107,.3);border-radius:var(--radius);padding:.55rem .65rem}.check-identity .hint{padding:0;margin:0}.workspace-share{border-top:1px solid var(--border);padding:.7rem .85rem;display:flex;flex-direction:column;gap:.45rem}.workspace-share p{margin:0;color:var(--muted);font-size:.74rem;line-height:1.45}.workspace-share button{align-self:flex-start;font-size:.75rem;padding:.25rem .5rem}.sidebar:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:1rem}.modal-catch{position:absolute;top:0;right:0;bottom:0;left:0;background:#0009}.modal{position:relative;width:min(34rem,100%);max-height:min(90vh,44rem);overflow-y:auto;display:flex;flex-direction:column;gap:.7rem;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.2rem;box-shadow:0 18px 50px #00000080}.modal h2{font-size:1rem;margin:0;overflow-wrap:anywhere}.modal:focus{outline:none}.modal p{margin:0}.modal-losses{margin:0;padding-left:1.15rem;display:flex;flex-direction:column;gap:.15rem}.modal-keeps{color:var(--muted)}.modal form{display:flex;flex-direction:column;gap:.35rem}.modal-confirm{font-weight:600}.modal input{width:100%}.modal .hint{padding:0;margin:0;overflow-wrap:anywhere}.modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.45rem}.modal button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button.danger{background:var(--danger);color:#240909;font-weight:600}button.danger:hover:not(:disabled){background:#ff8585}
