@font-face{font-family:Archivo Black;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/archivo-black-400-BTVu2TQR.woff2) format("woff2")}@font-face{font-family:Archivo;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/archivo-400-C81ewxNO.woff2) format("woff2")}@font-face{font-family:Archivo;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/archivo-600-3BBy0ZsW.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/jetbrains-mono-400-V6pRDFza.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/jetbrains-mono-600-C8RAYTDA.woff2) format("woff2")}:root{--color-dev: #2563EB;--color-qc: #D97706;--color-org: #16A34A;--color-you: #6B7280;--color-assistant: #0d9488;--accent: #ff4a00;--accent-strong: #d63e00;--accent-contrast: #111110;--accent-soft: rgba(255, 74, 0, .13);--success: #2ea043;--danger: #f85149;--warning: #e3b341;--radius: 2px;--radius-tight: 2px;--font-sans: "Archivo", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-display: "Archivo Black", "Archivo", -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", SFMono-Regular, "Cascadia Code", "Roboto Mono", Menlo, Consolas, monospace;--glass-bg: rgba(18, 18, 17, .8);--glass-border: rgba(255, 255, 255, .09);--glass-blur: 10px;--bg: #121211;--bg-deep: #0c0c0b;--surface: #1a1a19;--surface-2: #161615;--surface-3: #232322;--border: #2a2a28;--border-strong: #3f3f3c;--text: #f2f2ee;--text-bright: #d9d9d3;--text-muted: #a3a39d;--text-dim: #78786f}:root[data-base=light]{--bg: #fbfbf8;--bg-deep: #f0f0eb;--surface: #ffffff;--surface-2: #f4f4f0;--surface-3: #e9e9e3;--border: #dcdcd6;--border-strong: #bcbcb4;--text: #111110;--text-bright: #2a2a28;--text-muted: #55565a;--text-dim: #8b8b83;--glass-bg: rgba(255, 255, 255, .9);--glass-border: rgba(17, 17, 16, .1);color-scheme:light}:root[data-theme=midnight]{--accent: #2563eb;--accent-strong: #1d4ed8;--accent-soft: rgba(37,99,235,.14);--accent-contrast: #ffffff}:root[data-theme=ocean]{--accent: #0891b2;--accent-strong: #0e7490;--accent-soft: rgba(8,145,178,.16);--accent-contrast: #0f172a}:root[data-theme=forest]{--accent: #16a34a;--accent-strong: #15803d;--accent-soft: rgba(22,163,74,.16);--accent-contrast: #0f172a}:root[data-theme=violet]{--accent: #7c3aed;--accent-strong: #6d28d9;--accent-soft: rgba(124,58,237,.16);--accent-contrast: #ffffff}:root[data-theme=amber]{--accent: #d97706;--accent-strong: #b45309;--accent-soft: rgba(217,119,6,.16);--accent-contrast: #0f172a}:root[data-theme=rose]{--accent: #e11d48;--accent-strong: #be123c;--accent-soft: rgba(225,29,72,.16);--accent-contrast: #ffffff}:root[data-theme=slate]{--accent: #64748b;--accent-strong: #475569;--accent-soft: rgba(100,116,139,.16);--accent-contrast: #ffffff}:root{--bld-accent: var(--accent)}.msg.dev{border-left:4px solid var(--color-dev);background:#2563eb14}.msg.qc{border-left:4px solid var(--color-qc);background:#d9770614}.msg.org{border-left:4px solid var(--color-org);background:#16a34a14}.msg.assistant{border-left:4px solid var(--color-assistant);background:#0d948814}.msg.human{border-left:4px solid var(--color-you)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-sans);background:var(--bg);color:var(--text)}button{background:var(--accent);color:var(--accent-contrast);border:0;padding:6px 12px;border-radius:var(--radius-tight);cursor:pointer;font-size:13px}button:hover{background:var(--accent-strong)}button.secondary{background:var(--surface-3);color:var(--text);border:1px solid var(--border-strong)}button.secondary:hover{background:var(--border-strong)}button.danger{background:#b91c1c;color:#fff}button.danger:hover{background:#991b1b}button.ghost{background:transparent;color:var(--text-muted);padding:2px 6px;font-size:12px;border:0}button.ghost:hover{background:var(--border);color:var(--text)}button:disabled{background:var(--surface-3);color:var(--text-dim);cursor:not-allowed;opacity:.7}button.ghost:disabled{background:transparent}input,textarea,select{background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-tight);padding:7px 9px;font-family:inherit;font-size:13px;width:100%}textarea{resize:vertical;min-height:60px}input::placeholder,textarea::placeholder{color:var(--text-dim)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}input[readonly]{opacity:.7}.app{display:grid;grid-template-rows:48px auto 1fr;height:100vh}.app-banner-slot{min-height:0}.wordmark{font-family:var(--font-display);font-weight:400;display:inline-flex;align-items:center;letter-spacing:-.01em;color:var(--text);-webkit-user-select:none;user-select:none;line-height:1}.wordmark-block{background:var(--accent);flex:none}.wordmark-sm{font-size:15px;gap:7px}.wordmark-sm .wordmark-block{width:11px;height:11px}.wordmark-lg{font-size:clamp(30px,5vw,44px);gap:13px}.wordmark-lg .wordmark-block{width:.6em;height:.6em}.topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 16px;background:var(--surface-2);border-bottom:1px solid var(--border);font-size:14px}.topbar .title{font-weight:600;justify-self:start}.topbar-center{justify-self:center;display:flex;align-items:center;gap:12px}.context-gauge{display:inline-flex;flex-direction:column;align-items:center;gap:0;line-height:1.1;padding:2px 9px;border-radius:var(--radius);border:1px solid transparent;-webkit-user-select:none;user-select:none;white-space:nowrap;cursor:help}.context-gauge-label{font-size:7px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;opacity:.7}.context-gauge-value{font-size:11px;font-weight:700;letter-spacing:.02em;font-variant-numeric:tabular-nums}.context-gauge-loading,.context-gauge-error{background:var(--border);color:var(--text-dim);border-color:var(--border-strong)}.context-gauge-cool{background:var(--border);color:var(--text-muted);border-color:var(--border-strong)}.context-gauge-warm{background:#1e3a8a;color:#bfdbfe;border-color:var(--accent)}.context-gauge-warning{background:#78350f;color:#fcd34d;border-color:#d97706}.context-gauge-critical{background:#7f1d1d;color:#fca5a5;border-color:#b91c1c;animation:ctx-pulse 2s ease-in-out infinite}@keyframes ctx-pulse{0%,to{box-shadow:0 0 #dc262600}50%{box-shadow:0 0 0 3px #dc262640}}.role-refresh{display:flex;flex-direction:column;gap:6px}.role-refresh-blurb{margin-bottom:4px}.role-refresh-btn{background:var(--border);color:var(--text-bright);border:1px solid var(--border-strong);border-radius:var(--radius);padding:6px 10px;font-size:12px;font-weight:600;letter-spacing:.02em;cursor:pointer;text-align:left;transition:background .12s ease,border-color .12s ease}.role-refresh-btn:hover:not(:disabled){background:var(--border-strong);border-color:#475569;color:#f3f4f6}.role-refresh-btn:disabled{opacity:.5;cursor:progress}.role-refresh-all{margin-top:6px;background:var(--accent-soft);color:var(--text);border-color:var(--accent)}.role-refresh-all:hover:not(:disabled){background:var(--accent);border-color:var(--accent-strong);color:var(--accent-contrast)}.role-refresh-row{display:flex;flex-direction:column;gap:2px}.role-ctx-bar{height:3px;background:var(--border-strong);border-radius:2px;overflow:hidden;margin:0 3px 2px}.role-ctx-fill{height:100%;border-radius:2px;transition:width .4s ease}.role-ctx-fill-green{background:#22c55e}.role-ctx-fill-amber{background:#f59e0b}.role-ctx-fill-red{background:#ef4444}.compactor-pill{display:inline-flex;align-items:center;gap:6px;background:#6ee7b71a;color:#6ee7b7;border:1px solid #047857;border-radius:var(--radius);padding:3px 12px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:background .12s ease,border-color .12s ease}.compactor-pill:hover{background:#6ee7b733;border-color:#10b981;color:#d1fae5}.compactor-pill-icon{font-size:10px}.topbar .user{display:flex;align-items:center;gap:10px;justify-self:end}.topbar .user img{width:28px;height:28px;border-radius:50%}.topbar-build{padding:6px 22px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius);border:1px solid transparent;cursor:pointer;transition:background .14s ease,color .14s ease,border-color .14s ease,box-shadow .14s ease}.topbar-build.blocked{background:var(--border);color:var(--text-dim);border-color:var(--border-strong);cursor:not-allowed}.topbar-build.ready{background:#047857;color:#d1fae5;border-color:#10b981}.topbar-build.ready:hover:not(:disabled){background:#059669;color:#ecfdf5;box-shadow:0 0 0 3px #10b9812e}.topbar-build.building{background:#1e40af;color:#dbeafe;border-color:var(--accent);cursor:progress}.handoff-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 16px;border-radius:var(--radius);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:#047857;color:#d1fae5;border:1px solid #10b981;cursor:pointer;transition:background .14s ease,box-shadow .14s ease;animation:handoff-pulse 3s ease-in-out infinite}.handoff-pill:hover:not(:disabled):not(.is-signaled){background:#059669;color:#ecfdf5;box-shadow:0 0 0 3px #10b98138}.handoff-pill:disabled{opacity:.6;cursor:progress}.handoff-pill.is-signaled{background:var(--border);color:#6ee7b7;border-color:#047857;animation:none;cursor:default}.handoff-pill.is-signaled:hover{background:var(--border);box-shadow:none}.handoff-pill-arrow{font-size:14px;line-height:1}@keyframes handoff-pulse{0%,to{box-shadow:0 0 #10b98100}50%{box-shadow:0 0 0 4px #10b9812e}}.settings-callout{background:#d9770614;border:1px solid #78350f;border-left:4px solid #d97706;border-radius:var(--radius);padding:10px 14px;margin-bottom:14px;font-size:12px;color:#fcd34d;line-height:1.55}.settings-callout strong{color:#fef3c7}.build-history{position:relative}.build-history-toggle{display:inline-flex;align-items:center;gap:4px;background:var(--border);color:var(--text-muted);border:1px solid var(--border-strong);border-radius:var(--radius);padding:6px 10px;font-size:11px;font-weight:700;letter-spacing:.04em;cursor:pointer}.build-history-toggle:hover{background:var(--border-strong);color:var(--text);border-color:#475569}.build-history-count{font-variant-numeric:tabular-nums}.build-history-panel{position:absolute;top:calc(100% + 6px);right:0;min-width:320px;max-width:460px;max-height:400px;overflow-y:auto;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 24px #0006;z-index:50}.build-history-head{padding:10px 14px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border)}.build-history-empty{padding:16px 14px;font-size:12px;color:var(--text-dim);font-style:italic;text-align:center}.build-history-list{list-style:none;margin:0;padding:4px 0}.build-history-row-btn{width:100%;background:transparent;border:0;color:inherit;text-align:left;padding:8px 14px;cursor:pointer;display:block;border-radius:0}.build-history-row-btn:hover{background:var(--surface)}.build-history-row-top{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:2px}.build-history-when{font-size:12px;color:var(--text);font-weight:500}.build-history-scope{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#6ee7b7;background:#6ee7b71f;padding:1px 8px;border-radius:var(--radius)}.build-history-path{font-size:11px;color:var(--text-dim);font-family:var(--font-mono);word-break:break-all}.build-history-row{display:flex;align-items:stretch}.build-history-row .build-history-row-btn{flex:1;min-width:0}.build-history-restore{flex:0 0 auto;align-self:center;margin-right:10px;background:transparent;border:1px solid var(--surface-3);color:var(--text-muted);font-size:11px;padding:3px 9px;border-radius:var(--radius);cursor:pointer}.build-history-restore:hover:not(:disabled){color:var(--text);border-color:#3a4450}.build-history-restore:disabled{opacity:.6;cursor:default}.flow-view{display:flex;flex-direction:column;gap:8px;padding:6px 12px 10px;background:var(--bg-deep);flex:1;min-height:0;height:100%;overflow:hidden}.flow-stat{display:inline-flex;align-items:baseline;gap:6px;font-size:12px;color:var(--text-muted)}.flow-stat-label{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.flow-stat-value{font-size:14px;color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}.flow-stat-msg{font-style:italic;color:#fbbf24}.flow-progress{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);padding:4px 10px;flex-shrink:0}.flow-progress-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;min-height:24px}.flow-progress-head-left{display:flex;align-items:center;gap:10px;min-width:0}.flow-progress-head-center{display:flex;justify-content:center}.flow-progress-head-right{display:flex;justify-content:flex-end;align-items:center;gap:10px}.flow-progress-collapse{background:transparent;border:0;color:var(--text-muted);cursor:pointer;padding:2px;display:flex;align-items:center;border-radius:var(--radius);flex-shrink:0}.flow-progress-collapse:hover{background:var(--border);color:var(--text)}.flow-progress-title{font-size:13px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.flow-progress-phase{font-size:10px;font-weight:600;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;margin-left:4px}.flow-progress-bar{flex:0 1 120px;background:var(--border);height:3px;border-radius:var(--radius);overflow:hidden;min-width:60px;max-width:160px}.flow-progress-bar-fill{background:linear-gradient(90deg,#047857,#10b981);height:100%;transition:width .24s ease}.flow-progress-pct-num{font-size:12px;font-weight:700;color:#10b981;font-variant-numeric:tabular-nums;flex-shrink:0;min-width:30px;text-align:right}.flow-progress-stats-inline{display:flex;gap:6px;margin:0;flex-wrap:nowrap}.flow-progress-stat-mini{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:600;color:var(--text-bright);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:2px 7px;font-variant-numeric:tabular-nums;white-space:nowrap}.flow-progress-stat-mini.is-empty{opacity:.4}.flow-progress-stat-mini.is-attention{color:#fbbf24;border-color:#fbbf2466}.flow-progress-stat-icon{display:inline-flex;align-items:center;color:var(--text-dim)}.flow-progress-stat-mini.is-attention .flow-progress-stat-icon{color:#fbbf24}.flow-progress-stats{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;margin-top:4px}.flow-progress-stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:2px 8px;display:inline-flex;align-items:center;gap:4px;cursor:pointer;transition:background .12s ease,border-color .12s ease;font:inherit;text-align:left}.flow-progress-stat:hover:not(:disabled):not(.is-empty){background:var(--border);border-color:var(--border-strong)}.flow-progress-stat.is-expanded{background:var(--surface-3);border-color:#475569}.flow-progress-stat.is-empty{opacity:.45;cursor:default}.flow-progress-stat-value{font-size:11px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;min-width:12px}.flow-progress-stat-value.is-attention{color:#fbbf24;animation:progress-stat-pulse 2.5s ease-in-out infinite}@keyframes progress-stat-pulse{0%,to{opacity:1}50%{opacity:.6}}.flow-progress-stat-label{font-size:9px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.flow-progress .flow-progress-stat .flow-progress-stat-icon{color:var(--text-dim)}.flow-progress-stat:hover:not(:disabled):not(.is-empty) .flow-progress-stat-icon{color:var(--text-bright)}.flow-progress-build-pill{font-size:10px;font-weight:700;padding:3px 9px;border-radius:var(--radius);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;flex-shrink:0}.flow-progress-build-pill.is-handoff{background:#10b98126;color:#6ee7b7;border:1px solid #047857}.flow-progress-build-pill.is-ready{background:#2563eb26;color:#93c5fd;border:1px solid #1e40af}.flow-progress-build-pill.is-idle{background:var(--border);color:var(--text-muted);border:1px solid var(--border-strong)}.flow-progress-build-pill.is-blocked{background:#d9770626;color:#fbbf24;border:1px solid #78350f}.flow-progress-drawer{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);margin:0 0 16px;overflow:hidden}.flow-progress-list{list-style:none;margin:0;padding:8px 0;max-height:240px;overflow-y:auto}.flow-progress-list-row{display:flex;gap:10px;padding:6px 14px;font-size:12px;line-height:1.45;color:var(--text-bright);align-items:baseline}.flow-progress-list-row+.flow-progress-list-row{border-top:1px solid var(--surface)}.flow-progress-list-tag{display:inline-block;min-width:42px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);background:var(--border);padding:1px 6px;border-radius:var(--radius);text-align:center;flex-shrink:0}.flow-progress-list-tag-org{background:#10b9812e;color:#6ee7b7}.flow-progress-list-text{flex:1;color:var(--text)}.flow-progress-list-more{padding:8px 14px;font-size:11px;font-style:italic;color:var(--text-dim);text-align:center}.flow-progress-drawer-foot{display:flex;justify-content:flex-end;padding:6px 10px;border-top:1px solid var(--border);background:var(--surface-2)}.flow-progress-drawer-open{background:transparent;color:#93c5fd;border:0;font-size:11px;font-weight:600;cursor:pointer;padding:4px 8px}.flow-progress-drawer-open:hover{color:#dbeafe}.flow-progress.is-collapsed .flow-progress-drawer{display:none}.flow-actions{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:4px}.flow-action{display:inline-flex;align-items:center;gap:6px;background:var(--surface);color:var(--text-bright);border:1px solid var(--border);border-radius:var(--radius);padding:4px 10px;font-size:11px;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.flow-action:hover:not(:disabled){background:var(--border);border-color:var(--border-strong);color:#f3f4f6}.flow-action-icon{display:inline-flex;align-items:center;justify-content:center;line-height:1}.flow-action-refresh{background:#1e3a8a;color:#dbeafe;border-color:var(--accent)}.flow-action-refresh:hover:not(:disabled){background:var(--accent)}.flow-action:disabled{opacity:.4;cursor:not-allowed}.flow-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-auto-rows:minmax(360px,1fr);gap:12px;flex:1;min-height:0;overflow-y:auto}.flow-tile{position:relative;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);padding:12px 12px 10px;display:flex;flex-direction:column;gap:10px;transition:background .2s ease,border-color .2s ease;min-height:0;height:100%}.flow-tile-header{display:flex;align-items:center;gap:10px;flex-shrink:0}.flow-tile-id{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;position:relative}.flow-tile-body{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.flow-chat-mode-toggle{display:inline-flex;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:1px;gap:1px}.flow-chat-mode-btn{background:transparent;border:0;color:var(--text-dim);font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 9px;border-radius:var(--radius);cursor:pointer;transition:background .12s ease,color .12s ease}.flow-chat-mode-btn:hover:not(.is-active){color:var(--text-bright)}.flow-chat-mode-btn.is-active{background:var(--border);color:var(--text)}.flow-tile-thread{display:flex;flex-direction:column;gap:6px}.flow-tile-bubble{display:flex;flex-direction:column;gap:2px;padding:6px 8px;border-radius:var(--radius);font-size:12px;line-height:1.45;border:1px solid transparent}.flow-tile-bubble-author{font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.flow-tile-bubble-text{color:var(--text);white-space:pre-wrap;word-break:break-word}.flow-tile-bubble-human{background:var(--bg);border-color:var(--border);align-self:flex-end;max-width:92%}.flow-tile-bubble-human .flow-tile-bubble-author{color:var(--text-dim)}.flow-tile-bubble-dev{background:#2563eb1a;border-color:#2563eb59}.flow-tile-bubble-qc{background:#d977061a;border-color:#d9770659}.flow-tile-bubble-org{background:#16a34a1a;border-color:#16a34a59}.flow-tile-bubble-assistant{background:#0d94881a;border-color:#0d948859}.flow-tile-bubble-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:6px}.flow-tile-bubble-quick,.flow-tile-bubble-ack{border-radius:var(--radius);padding:3px 12px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease,box-shadow .12s ease;border:1px solid transparent}.flow-tile-bubble-quick:disabled,.flow-tile-bubble-ack:disabled{opacity:.4;cursor:not-allowed}.flow-tile-bubble-yes{background:#16a34a2e;color:#6ee7b7;border-color:#16a34a80}.flow-tile-bubble-yes:hover:not(:disabled){background:#16a34a52;color:#d1fae5;box-shadow:0 0 0 2px #16a34a2e}.flow-tile-bubble-no{background:#dc262624;color:#fca5a5;border-color:#dc26266b}.flow-tile-bubble-no:hover:not(:disabled){background:#dc262642;color:#fecaca;box-shadow:0 0 0 2px #dc26262e}.flow-tile-bubble-ack{background:transparent;color:var(--text-muted);border-color:var(--border-strong)}.flow-tile-bubble-ack:hover:not(:disabled){background:var(--border);color:var(--text);border-color:var(--border-strong)}.flow-tile-footer{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.flow-tile-footer textarea{width:100%;background:var(--bg);border:1px solid var(--border-strong);color:var(--text);border-radius:var(--radius);padding:8px 10px;font:inherit;font-size:12px;line-height:1.5;resize:none;min-width:0;min-height:110px;box-sizing:border-box}.flow-tile-footer textarea:focus{outline:none;border-color:var(--text-dim)}.flow-tile-footer textarea:disabled{opacity:.5}.flow-tile-footer button{align-self:flex-end;background:var(--surface-3);color:var(--text-bright);border:1px solid var(--border-strong);border-radius:var(--radius);padding:5px 14px;font-size:11px;font-weight:600;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.flow-tile-footer button:not(:disabled){background:var(--accent);border-color:var(--accent-strong);color:#fff}.flow-tile-footer button:not(:disabled):hover{background:var(--accent-strong);border-color:#1e40af}.flow-tile-footer button:hover:not(:disabled){background:var(--border-strong);color:#f3f4f6}.flow-tile-footer button:disabled{opacity:.4;cursor:not-allowed}.flow-tile.idle{opacity:.65}.flow-tile.excluded{opacity:.35;border-style:dashed;border-color:var(--border-strong);background:var(--bg-deep)}.flow-tile.excluded .flow-tile-status-summary,.flow-tile.excluded .flow-tile-status-full{color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-style:normal}.flow-tile.active{opacity:1;border-color:#10b981;background:#122019;box-shadow:0 0 0 1px #10b98140}.flow-tile-toggle{display:inline-flex;align-items:center;gap:3px;font-size:8px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;background:#0b1015a6;padding:1px 5px;border-radius:var(--radius);flex-shrink:0;align-self:flex-start;margin-top:-2px}.flow-tile-toggle input[type=checkbox]{width:11px;height:11px;cursor:pointer;accent-color:#10b981;margin:0}.flow-tile-toggle input[type=checkbox]:disabled{cursor:not-allowed}.flow-tile.paused{border-color:#d97706;background:#1f1a0d;box-shadow:0 0 0 1px #d9770640}.flow-tile.paused .flow-tile-status-summary,.flow-tile.paused .flow-tile-status-full{color:#fbbf24;font-style:normal;font-weight:600}.flow-tile-preview{font-size:10px;color:var(--text-dim);font-style:italic;text-align:center;width:100%;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}.flow-tile-msg{display:flex;flex-direction:column;gap:6px;width:100%;margin-top:10px}.flow-tile-msg textarea{width:100%;background:var(--bg);border:1px solid var(--border-strong);color:var(--text);border-radius:var(--radius);padding:8px 10px;font:inherit;font-size:13px;line-height:1.5;resize:vertical;min-height:64px;min-width:0}.flow-tile-msg textarea:focus{outline:none;border-color:var(--text-dim)}.flow-tile-msg textarea:disabled{opacity:.5}.flow-tile-msg-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.flow-tile-msg-dest{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}.flow-tile-msg button{background:var(--surface-3);color:var(--text-bright);border:1px solid var(--border-strong);border-radius:var(--radius);padding:6px 14px;font-size:12px;font-weight:600;cursor:pointer}.flow-tile-msg button:hover:not(:disabled){background:var(--border-strong);color:#f3f4f6}.flow-tile-msg button:disabled{opacity:.4;cursor:not-allowed}.flow-tile-decisions{width:100%;margin-top:12px;padding-top:10px;border-top:1px dashed var(--border);display:flex;flex-direction:column;gap:8px}.flow-tile-decisions-label{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fbbf24}.flow-tile-decision-card{background:var(--surface);border:1px solid var(--border);border-left:3px solid #fbbf24;border-radius:var(--radius);padding:8px 10px;display:flex;flex-direction:column;gap:6px}.flow-tile-decision-q{font-size:12px;color:var(--text);line-height:1.4}.flow-tile-decision-actions{display:flex;flex-wrap:wrap;gap:4px}.flow-tile-decision-opt,.flow-tile-decision-agree,.flow-tile-decision-no,.flow-tile-decision-submit,.flow-tile-decision-cancel{font-size:11px;font-weight:600;padding:4px 10px;border-radius:var(--radius);cursor:pointer;border:1px solid transparent}.flow-tile-decision-opt{background:var(--surface-3);color:var(--text);border-color:var(--border-strong);text-align:left;flex:1 1 auto;min-width:100px}.flow-tile-decision-opt:hover:not(:disabled){background:var(--border-strong)}.flow-tile-decision-agree{background:#064e3b;color:#6ee7b7;border-color:#047857}.flow-tile-decision-agree:hover:not(:disabled){background:#047857}.flow-tile-decision-no{background:transparent;color:#fca5a5;border-color:#4b1d1d}.flow-tile-decision-no:hover:not(:disabled){background:#4b1d1d;color:#fecaca}.flow-tile-decision-pushback{display:flex;flex-direction:column;gap:4px}.flow-tile-decision-pushback textarea{width:100%;background:var(--bg);border:1px solid var(--border-strong);color:var(--text);border-radius:var(--radius);padding:6px 8px;font:inherit;font-size:12px;line-height:1.4}.flow-tile-decision-pushback-actions{display:flex;justify-content:flex-end;gap:4px}.flow-tile-decision-cancel{background:transparent;color:var(--text-muted);border-color:var(--border-strong)}.flow-tile-decision-submit{background:#1e40af;color:#dbeafe;border-color:var(--accent)}.flow-tile-decision-submit:hover:not(:disabled){background:var(--accent)}.flow-tile-decision-opt:disabled,.flow-tile-decision-agree:disabled,.flow-tile-decision-no:disabled,.flow-tile-decision-submit:disabled,.flow-tile-decision-cancel:disabled{opacity:.5;cursor:not-allowed}.flow-tile-avatar{position:relative;width:44px;height:44px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.flow-tile-pulse{position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:50%;border:2px solid #10b981;animation:flow-pulse 1.6s ease-out infinite;pointer-events:none}@keyframes flow-pulse{0%{transform:scale(.85);opacity:.6}to{transform:scale(1.25);opacity:0}}@keyframes work-ripple{0%{box-shadow:0 0 5px 1px currentColor,0 0 color-mix(in srgb,currentColor 60%,transparent)}70%{box-shadow:0 0 9px 2px currentColor,0 0 0 10px color-mix(in srgb,currentColor 0%,transparent)}to{box-shadow:0 0 5px 1px currentColor,0 0 0 0 transparent}}.work-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:currentColor;flex:none;animation:work-ripple 1.3s ease-out infinite}.flow-tile-name{font-size:13px;font-weight:700;letter-spacing:.04em;color:var(--text);text-align:left}.flow-tile-status-summary{font-size:11px;color:var(--text-muted);font-style:italic;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}.flow-tile-status-full{position:absolute;top:100%;left:0;right:0;margin-top:0;padding:0 8px;background:#11161cf7;border:1px solid var(--border);border-radius:var(--radius);white-space:normal;word-break:break-word;line-height:1.4;font-size:11px;color:var(--text-muted);font-style:italic;z-index:20;max-height:0;opacity:0;overflow:hidden;transition:max-height .18s ease,opacity .18s ease,padding .18s ease,margin-top .18s ease,box-shadow .18s ease}.flow-tile-avatar:hover+.flow-tile-id .flow-tile-status-full,.flow-tile-status-full:hover{max-height:80em;opacity:1;padding:6px 8px;margin-top:4px;box-shadow:0 6px 18px #00000080}.flow-play-inline{display:flex;flex-direction:column;align-items:center;gap:1px}.flow-play-row{display:flex;align-items:center;gap:8px}.flow-play-elapsed{font-size:9px;font-weight:600;letter-spacing:.02em;color:var(--text-muted);font-variant-numeric:tabular-nums;line-height:1.1;white-space:nowrap}.flow-play-elapsed-sep{color:var(--border-strong)}.flow-play-elapsed-round{color:var(--text-dim)}.flow-play{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:3px 10px;border-radius:var(--radius);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border:1px solid transparent;cursor:pointer;transition:background .15s ease,box-shadow .15s ease}.flow-play.is-paused{background:#047857;color:#d1fae5;border-color:#10b981}.flow-play.is-paused:hover:not(:disabled){background:#059669;box-shadow:0 0 0 2px #10b98138}.flow-play.is-running{background:#78350f;color:#fcd34d;border-color:#d97706}.flow-play.is-running:hover:not(:disabled){background:#92400e;box-shadow:0 0 0 2px #d9770638}.flow-play:disabled{opacity:.5;cursor:progress}.flow-play-label{font-size:10px}.flow-play-timer{width:180px;accent-color:#10b981;height:3px}.flow-play-meta{font-size:10px;color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.flow-status-line{font-size:11px;color:#fbbf24;font-style:italic;text-align:center;flex-shrink:0}.main{display:grid;grid-template-columns:260px 1fr;height:100%;overflow:hidden}.main.main-fullwidth{grid-template-columns:1fr}.workarea{position:relative;height:100%;display:grid;grid-template-columns:1fr 44px;overflow:hidden}.workarea.workarea-with-leftrail{grid-template-columns:240px 1fr 44px}.workarea.workarea-with-leftrail.leftrail-collapsed{grid-template-columns:44px 1fr 44px}.leftrail.leftrail-thin{background:var(--bg-deep);border-right:1px solid var(--border);border-left:none;padding:6px 0;align-items:stretch}.leftrail.leftrail-thin .rail-tip{right:auto;left:100%;margin-right:0;margin-left:8px}.leftrail.leftrail-thin .rail-btn{border-left:0;border-right:3px solid transparent}.leftrail.leftrail-thin .rail-btn.active{border-right-color:var(--accent);border-left-color:transparent}.leftrail-expand,.leftrail-collapse{background:transparent;color:var(--text-dim);border:1px solid var(--border);border-radius:var(--radius);width:22px;height:22px;font-size:12px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.leftrail-expand:hover,.leftrail-collapse:hover{color:var(--text);border-color:var(--border-strong);background:var(--surface)}.leftrail-collapse{position:absolute;top:6px;right:6px;z-index:2}.sidebar,.chat{height:100%;overflow:hidden;display:flex;flex-direction:column}.sidebar{background:var(--bg-deep);border-right:1px solid var(--border)}.sidebar .head{padding:12px;border-bottom:1px solid var(--border);display:flex;gap:6px}.sidebar .list{flex:1;overflow-y:auto;padding:8px}.sidebar .item{padding:8px 10px;border-radius:var(--radius);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:8px}.sidebar .item:hover{background:var(--border)}.sidebar .item.active{background:#1e3a8a}.sidebar .item .name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar .item .actions{display:none;gap:4px}.sidebar .item:hover .actions{display:flex}.sidebar .item .actions button{padding:2px 6px;font-size:11px}.chat{background:var(--bg)}.chat .messages-area{position:relative;flex:1;display:flex;flex-direction:column;min-height:0}.chat .messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.messages-empty{opacity:.55;font-size:13px}.msg.archived{opacity:.42}.msg.archived:hover{opacity:.85;transition:opacity .15s}.msg-archived-tag{font-size:10px;color:#f59e0b;text-transform:uppercase;letter-spacing:.06em;font-weight:600}.msg-archive-divider{display:flex;align-items:center;justify-content:center;margin:18px 0 6px;color:var(--text-dim);font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:600}.msg-archive-divider span{position:relative;padding:0 14px}.msg-archive-divider:before,.msg-archive-divider:after{content:"";flex:1;height:1px;background:var(--border)}.compactor-body{padding:18px 24px 32px}.compactor-intro{margin:0 0 16px;color:var(--text-muted);font-size:12.5px;line-height:1.55;max-width:720px}.compactor-count{font-size:11px;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;margin-right:8px}.compactor-add{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px;margin-bottom:14px}.compactor-add textarea,.compactor-editing textarea{font-family:inherit;font-size:13px;line-height:1.5}.compactor-edit-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.compactor-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.compactor-note{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px}.compactor-note-head{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text-dim);margin-bottom:6px}.compactor-source{font-size:10px;font-weight:800;letter-spacing:.06em;padding:2px 8px;border-radius:var(--radius);background:var(--border);color:var(--text)}.compactor-source.role-dev{background:#1e3a8a;color:#93c5fd}.compactor-source.role-qc{background:#78350f;color:#fcd34d}.compactor-source.role-org{background:#064e3b;color:#6ee7b7}.compactor-note-meta{font-size:11px}.compactor-note-body{margin:0 0 8px;font-size:13px;line-height:1.55;color:var(--text)}.compactor-note-actions{display:flex;gap:4px;font-size:11px}.compactor-note-actions .ghost{background:transparent;color:var(--text-dim);padding:2px 8px;border-radius:var(--radius)}.compactor-note-actions .ghost:hover:not(:disabled){background:var(--border);color:var(--text)}.compactor-note-actions .danger-text{color:#f87171}.compactor-note-actions .danger-text:hover:not(:disabled){background:#7f1d1d;color:#fff}.compactor-editing{display:flex;flex-direction:column;gap:4px}.compactor-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px 16px;color:var(--text-dim);gap:8px}.compactor-empty svg{color:var(--border-strong)}.compactor-empty p{margin:0;font-size:13px}.compactor-empty-hint{max-width:460px;color:var(--text-dim);line-height:1.55;font-size:12px}.jump-to-bottom{position:absolute;bottom:16px;right:20px;display:inline-flex;align-items:center;gap:6px;padding:6px 12px 6px 10px;background:var(--accent);color:#fff;border:0;border-radius:var(--radius);box-shadow:0 4px 12px #00000073;cursor:pointer;font-size:12px;font-weight:600;z-index:10}.jump-to-bottom:hover{background:var(--accent-strong)}.jump-to-bottom:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.jump-badge{background:#fff;color:#1e3a8a;border-radius:var(--radius);padding:1px 6px;font-size:10px;font-weight:700;min-width:18px;text-align:center;line-height:1.3}.msg{padding:10px 12px;border-radius:var(--radius);max-width:80%}.msg .who{font-size:11px;opacity:.8;margin-bottom:4px}.msg .body{line-height:1.5;font-size:13px}.msg .body.md>*{margin-block-start:0;margin-block-end:0}.msg .body.md>*+*{margin-top:8px}.msg .body.md h1,.msg .body.md h2,.msg .body.md h3,.msg .body.md h4,.msg .body.md h5,.msg .body.md h6{font-weight:700;line-height:1.25;margin-top:12px;margin-bottom:4px}.msg .body.md h1{font-size:1.25em}.msg .body.md h2{font-size:1.15em}.msg .body.md h3{font-size:1.05em}.msg .body.md ul,.msg .body.md ol{padding-left:22px}.msg .body.md li{margin:2px 0}.msg .body.md a{color:#93c5fd;text-decoration:underline}.msg .body.md a:hover{color:#bfdbfe}.msg .body.md code{background:#00000059;padding:1px 5px;border-radius:var(--radius);font-family:var(--font-mono);font-size:12px}.msg .body.md pre{background:#00000073;padding:10px 12px;border-radius:var(--radius);overflow-x:auto;margin-top:8px;margin-bottom:8px}.msg .body.md pre code{background:transparent;padding:0;font-size:12px;white-space:pre;line-height:1.45;display:block}.msg .body.md blockquote{border-left:3px solid rgba(255,255,255,.25);padding-left:10px;margin:8px 0;opacity:.85}.msg .body.md table{border-collapse:collapse;font-size:12px;margin:8px 0}.msg .body.md th,.msg .body.md td{border:1px solid rgba(255,255,255,.18);padding:4px 8px;text-align:left}.msg .body.md th{background:#ffffff14}.msg .body.md hr{border:none;border-top:1px solid rgba(255,255,255,.18);margin:10px 0}.cursor-blink{display:inline-block;margin-left:2px;animation:blink 1s steps(2,end) infinite;font-weight:700}@keyframes blink{0%,50%{opacity:.9}50.01%,to{opacity:0}}.msg.human{background:var(--border-strong);align-self:flex-end}.msg.dev{background:#1e40af}.msg.qc{background:#b45309}.msg.org{background:#15803d}.composer{border-top:1px solid var(--border);padding:12px 12px 14px;display:flex;flex-direction:column;gap:8px;background:var(--bg-deep)}.composer-role-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:space-between}.composer-role-pills{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.composer-ping-all{display:inline-flex;align-items:center;gap:6px;background:var(--border);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius);padding:4px 12px;font-size:12px;font-weight:600;flex-shrink:0}.composer-ping-all:hover:not(:disabled){background:var(--border-strong);border-color:var(--border-strong)}.composer-ping-all:disabled{opacity:.5;cursor:not-allowed}.composer-boost{display:inline-flex;align-items:center;gap:6px;background:var(--border);color:var(--text-muted);border:1px solid var(--border-strong);border-radius:var(--radius);padding:4px 12px;font-size:12px;font-weight:600;flex-shrink:0;cursor:pointer}.composer-boost:hover{background:var(--border-strong);color:var(--text)}.composer-boost.active{background:color-mix(in srgb,var(--accent) 22%,transparent);border-color:var(--accent);color:var(--accent)}.credits-gauge{display:flex;flex-direction:column;gap:6px}.credits-gauge-head{display:flex;align-items:baseline;justify-content:space-between}.credits-gauge-label{font-size:12px;font-weight:600;color:var(--text-muted)}.credits-gauge-num{font-size:14px;font-weight:700;color:var(--text)}.credits-gauge-num.low{color:var(--accent)}.credits-gauge-den{font-size:11px;font-weight:500;color:var(--text-muted)}.credits-gauge-bar{height:6px;border-radius:var(--radius);background:var(--border);overflow:hidden}.credits-gauge-fill{height:100%;border-radius:var(--radius);background:var(--accent);transition:width .3s ease}.credits-gauge-fill.low{background:#e06c5a}.credits-gauge-sub{font-size:11px;color:var(--text-muted)}.msg-economy-tag{display:inline-flex;align-items:center;vertical-align:middle;color:#3fae6b}.role-pill{background:transparent;border:1px solid var(--border-strong);color:var(--text-muted);padding:4px 12px;border-radius:var(--radius);font-size:11px;font-weight:600;letter-spacing:.06em;cursor:pointer}.role-pill:hover{background:var(--border);color:var(--text)}.role-pill.active{color:#fff}.role-pill.role-human.active{background:var(--border-strong);border-color:var(--border-strong)}.role-pill.role-dev.active{background:#1e40af;border-color:#3b82f6}.role-pill.role-qc.active{background:#b45309;border-color:#f59e0b}.role-pill.role-org.active{background:#15803d;border-color:#22c55e}.role-pill.role-assistant.active{background:#0f766e;border-color:#14b8a6}.role-pill:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.role-pill:disabled{opacity:.5;cursor:not-allowed}.textarea-wrap{position:relative}.composer-input{resize:none;min-height:64px;line-height:22px;overflow-y:auto}.mention-popover{list-style:none;margin:0 0 6px;padding:4px;position:absolute;bottom:100%;left:0;background:var(--border);border:1px solid var(--border-strong);border-radius:var(--radius);min-width:220px;z-index:60;box-shadow:0 6px 20px #0006}.mention-option{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:var(--radius);cursor:pointer;font-size:13px}.mention-option .mention-key{font-family:var(--font-mono);font-weight:700;font-size:12px;min-width:52px}.mention-option .mention-desc{opacity:.7;font-size:12px}.mention-option.role-dev .mention-key{color:#93c5fd}.mention-option.role-qc .mention-key{color:#fbbf24}.mention-option.role-org .mention-key{color:#86efac}.mention-option.active,.mention-option:hover{background:var(--border-strong)}.composer-actions{display:flex;justify-content:space-between;align-items:center;gap:12px}.composer-send-row{display:flex;align-items:center;gap:8px}.composer-hint{font-size:11px;opacity:.55}.composer-autoroute{font-size:10px;letter-spacing:.05em;opacity:.7;font-style:italic;align-self:center;margin-left:4px}.composer-listening{font-size:10px;letter-spacing:.05em;opacity:.9;font-weight:600;color:#fca5a5;align-self:center;margin-left:4px}.composer-mic-error{background:#b91c1c2e;border:1px solid #7f1d1d;color:#fecaca;padding:6px 10px;border-radius:var(--radius);font-size:12px;display:flex;align-items:center;justify-content:space-between}.mic-btn{position:relative;background:var(--border);border:1px solid var(--border-strong);color:var(--text);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.mic-btn:hover:not(:disabled){background:var(--border-strong)}.mic-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mic-btn:disabled{background:transparent;border-color:var(--border);color:var(--border-strong);cursor:not-allowed}.mic-btn.active{background:#b91c1c;border-color:#ef4444;color:#fff}.mic-btn.has-error{background:#7f1d1d;border-color:#ef4444;color:#fecaca}.mic-pulse{position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:50%;border:2px solid #ef4444;animation:mic-pulse 1.2s ease-out infinite;pointer-events:none}@keyframes mic-pulse{0%{opacity:.9;transform:scale(.9)}to{opacity:0;transform:scale(1.4)}}.ping-dials{display:flex;align-items:center;gap:14px;margin-top:8px;padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-deep);flex-wrap:wrap}.ping-dials-label{font-size:10px;letter-spacing:.08em;text-transform:uppercase;opacity:.6}.ping-dial{display:flex;align-items:center;gap:6px;font-size:11px}.ping-dial .role-name{text-transform:uppercase;letter-spacing:.06em;font-weight:700;font-size:10px}.ping-dial.role-dev .role-name{color:#93c5fd}.ping-dial.role-qc .role-name{color:#fbbf24}.ping-dial.role-org .role-name{color:#86efac}.ping-dial.paused{opacity:.5}.ping-dial select{width:50px;background:var(--border);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius);padding:2px 4px;font-size:11px;font-family:var(--font-mono)}.ping-dial select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ping-dial .budget{font-family:var(--font-mono);font-size:10px;opacity:.7;min-width:28px;text-align:right}.ping-all-btn{display:inline-flex;align-items:center;gap:6px;margin-left:auto;padding:4px 10px;background:var(--border);border:1px solid var(--border-strong);color:var(--text);border-radius:var(--radius);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}.ping-all-btn:hover:not(:disabled){background:var(--accent);border-color:#3b82f6;color:#fff}.ping-all-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ping-all-btn:disabled{background:transparent;color:var(--text-dim);border-color:var(--border);cursor:not-allowed;opacity:.7}.ping-all-btn svg{display:block}.send{padding:8px 18px;font-weight:600;letter-spacing:.02em;font-size:13px}.send.role-human{background:var(--border-strong)}.send.role-human:hover:not(:disabled){background:var(--border-strong)}.send.role-dev{background:#1e40af}.send.role-dev:hover:not(:disabled){background:var(--accent)}.send.role-qc{background:#b45309}.send.role-qc:hover:not(:disabled){background:#d97706}.send.role-org{background:#15803d}.send.role-org:hover:not(:disabled){background:#16a34a}.send.role-assistant{background:#0f766e}.send.role-assistant:hover:not(:disabled){background:#0d9488}.send:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rail{background:var(--bg-deep);border-left:1px solid var(--border);display:flex;flex-direction:column;gap:2px;padding:6px 0}.rail-btn{position:relative;background:transparent;border:0;color:var(--text-muted);cursor:pointer;padding:12px 0;width:44px;display:flex;justify-content:center;align-items:center;border-radius:0;border-left:3px solid transparent;transition:background .1s,color .1s}.rail-btn:hover{background:var(--border);color:var(--text)}.rail-btn.active{color:var(--text);border-left-color:var(--accent);background:var(--surface-2)}.rail-btn:focus-visible{outline:none;color:var(--text);background:var(--border)}.rail-btn:focus-visible:before{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;border:2px solid #60a5fa;border-radius:var(--radius);pointer-events:none}.rail-tip{position:absolute;right:100%;top:50%;transform:translateY(-50%);margin-right:8px;background:var(--border);border:1px solid var(--border-strong);color:var(--text);font-size:12px;padding:4px 8px;border-radius:var(--radius);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .12s;z-index:50}.rail-btn:hover .rail-tip,.rail-btn:focus-visible .rail-tip{opacity:1}.overlay{position:absolute;top:0;left:0;right:44px;bottom:0;background:var(--bg-deep);border-left:1px solid var(--border);z-index:10;display:flex;flex-direction:column}.panel{display:flex;flex-direction:column;height:100%}.overlay-head{border-bottom:1px solid var(--border);padding:8px 12px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;background:var(--surface-2)}.overlay-head-spacer{min-width:0}.overlay-tabs{display:flex;gap:2px;justify-self:center;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:3px}.overlay-tabs .tab{background:transparent;color:#aeb9c7;border:0;border-radius:var(--radius);padding:6px 16px;font-weight:600;transition:background .15s,color .15s,box-shadow .15s}.overlay-tabs .tab:hover{background:var(--surface-3);color:var(--text)}.overlay-tabs .tab.active{background:var(--accent);color:#fff;box-shadow:0 1px 6px #2563eb73}.overlay-actions{display:flex;gap:6px;align-items:center;justify-self:end}.export-scope{display:inline-flex;align-items:center;gap:6px;font-size:12px;background:var(--border);border:1px solid var(--border-strong);border-radius:var(--radius);padding:2px 6px 2px 10px}.export-scope-label{opacity:.7;font-size:11px;letter-spacing:.04em;text-transform:uppercase}.export-scope select{background:transparent;color:var(--text);border:0;font-size:12px;padding:4px 4px 4px 0;cursor:pointer}.export-scope select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.panel-body{flex:1;overflow-y:auto;padding:16px 24px}.spec-body{display:flex;flex-direction:column;gap:16px;max-width:900px;margin:0 auto;width:100%}.field label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.05em;opacity:.7;margin-bottom:4px}.field.wide{grid-column:1 / -1}.checkbox{display:flex;align-items:center;gap:8px;font-size:13px;opacity:.85}.checkbox input{width:auto}.roadmap-body{padding:12px 16px}.roadmap-table{width:100%;border-collapse:collapse;font-size:13px}.roadmap-table th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.05em;opacity:.7;padding:8px 10px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg-deep);z-index:1}.roadmap-table td{padding:8px 10px;border-bottom:1px solid var(--border);vertical-align:top}.roadmap-row{cursor:pointer}.roadmap-row:hover,.roadmap-row.expanded{background:var(--surface-2)}.roadmap-row.meta{opacity:.6;font-style:italic}.roadmap-row .milestone{font-weight:500}.roadmap-row .status{font-family:var(--font-mono);font-size:12px}.reorder{display:flex;flex-direction:column;gap:2px;padding-top:6px}.meta-tag{display:inline-block;background:var(--border-strong);color:var(--text);font-size:10px;font-weight:600;padding:1px 6px;border-radius:var(--radius);margin-right:8px;letter-spacing:.05em}.wave-chip{display:inline-block;background:#1e3a8a;color:#bfdbfe;font-size:10px;font-weight:600;font-family:var(--font-mono);padding:1px 6px;border-radius:var(--radius);margin-right:8px;letter-spacing:.04em}.empty-row{text-align:center;opacity:.5;padding:24px}.phase-header{cursor:pointer;-webkit-user-select:none;user-select:none}.phase-header td{background:var(--surface-2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:8px 10px;font-size:12px;letter-spacing:.04em;color:var(--text)}.phase-header:hover td{background:var(--surface-3)}.phase-toggle{background:transparent;border:0;color:var(--text-muted);cursor:pointer;font-size:12px;width:20px;padding:0;text-align:center}.phase-toggle:hover{color:var(--text)}.phase-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.phase-name{font-weight:700;margin-left:4px;margin-right:10px;color:var(--text)}.phase-chip{display:inline-block;padding:1px 8px;border-radius:var(--radius);background:var(--border);border:1px solid var(--border-strong);color:var(--text-bright);font-family:var(--font-mono);font-size:11px;font-weight:600}.phase-chip-done{background:#14532d;border-color:#16a34a;color:#bbf7d0}.phase-chip-context{background:transparent;border-style:dashed;color:var(--text-muted);font-style:italic;font-family:inherit;font-weight:500}.status-cell{padding-left:4px;padding-right:0}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;vertical-align:middle}.dot-empty{background:var(--border-strong)}.dot-progress{background:#3b82f6;box-shadow:0 0 6px #3b82f680}.dot-done{background:#16a34a}.dot-blocked{background:#dc2626;box-shadow:0 0 6px #dc262680}.roadmap-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 16px;color:var(--text-muted)}.roadmap-empty svg{margin-bottom:14px;opacity:.6}.roadmap-empty-headline{font-size:15px;margin:0 0 6px;color:var(--text)}.roadmap-empty-hint{font-size:13px;opacity:.75;margin:0;max-width:360px}.roadmap-empty-hint strong{color:#86efac}.roadmap-empty-hint em{font-style:normal;color:#93c5fd}.roadmap-edit{padding:12px;border:1px solid #1e3a8a;border-radius:var(--radius);margin-bottom:12px;background:var(--bg)}.roadmap-edit-title{font-size:12px;opacity:.75;margin-bottom:8px;text-transform:uppercase;letter-spacing:.05em}.roadmap-edit-row td{background:var(--bg)}.roadmap-edit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.roadmap-edit-grid .field.wide{grid-column:1 / -1}.roadmap-edit-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.empty{flex:1;display:flex;align-items:center;justify-content:center;opacity:.6;font-size:14px}.login{min-height:100vh;display:flex;flex-direction:column;border-top:6px solid var(--accent);padding:26px clamp(20px,6vw,64px) 30px}.login-head{margin-bottom:clamp(48px,16vh,150px)}.login-hero h1{font-family:var(--font-display);font-weight:400;font-size:clamp(38px,7vw,76px);line-height:1.02;letter-spacing:-.01em;text-transform:uppercase;margin:0 0 22px;max-width:14ch}.login-hero h1 em{font-style:normal;color:var(--accent)}.login-hero p{font-size:16px;line-height:1.6;color:var(--text-muted);max-width:46ch;margin:0 0 30px}.login-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.login-cta{background:var(--accent);color:var(--accent-contrast);padding:12px 24px;border-radius:var(--radius);text-decoration:none;font-size:15px;font-weight:600}.login-cta:hover{background:var(--accent-strong)}.login-foot{margin-top:auto;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-dim)}.toast{position:fixed;bottom:16px;right:16px;display:flex;align-items:flex-start;gap:10px;background:var(--border);border:1px solid var(--border-strong);padding:10px 12px 10px 14px;border-radius:var(--radius);font-size:13px;z-index:100;max-width:360px;box-shadow:0 6px 24px #00000059}.toast-text{flex:1;min-width:0;line-height:1.4}.toast-close{flex:none;background:none;border:none;color:inherit;opacity:.6;font-size:18px;line-height:1;cursor:pointer;padding:0 2px}.toast-close:hover{opacity:1}.toast-error{background:#3a1717;border-color:#5b2626;color:#ffb4ad;max-width:420px}@media (max-width: 820px){.toast{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));max-width:none}.toast-error{max-width:none}}.leftrail{background:var(--bg-deep);border-right:1px solid var(--border);display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative}.leftrail-scroll{flex:1;overflow-y:auto;padding:8px}.leftrail-section{border-bottom:1px solid var(--border);padding:6px 4px}.leftrail-section:last-of-type{border-bottom:0}.leftrail-section-head{display:flex;align-items:center;gap:6px;width:100%;background:transparent;color:var(--text);text-align:left;padding:6px 8px;border-radius:var(--radius);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.leftrail-section-head:hover{background:var(--border)}.leftrail-chevron{display:inline-block;width:12px;font-size:10px;opacity:.6}.leftrail-section-body{padding:6px 8px 10px;font-size:12px;color:var(--text-bright)}.leftrail-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 0}.leftrail-row-label{color:var(--text-muted)}.leftrail-row-value{font-family:var(--font-mono);font-size:11px;background:var(--border);padding:2px 6px;border-radius:var(--radius);max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leftrail-placeholder,.leftrail-hint{margin:6px 0 0;font-size:11px;color:var(--text-dim);line-height:1.4}.theme-mode-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.theme-mode-label{font-size:12px;color:var(--text-bright)}.theme-switch{flex:none;width:40px;height:22px;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--surface-2);position:relative;cursor:pointer;padding:0;transition:background .14s ease,border-color .14s ease}.theme-switch.light{background:var(--accent);border-color:var(--accent)}.theme-switch-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--text-muted);transition:transform .14s ease,background .14s ease}.theme-switch.light .theme-switch-knob{transform:translate(18px);background:#fff}.theme-swatches{display:flex;flex-wrap:wrap;gap:9px}.theme-swatch{flex:none;width:20px;height:20px;padding:0;border-radius:50%;background:var(--sw);border:2px solid transparent;box-shadow:0 0 0 1px #00000040;cursor:pointer;transition:transform .1s ease}.theme-swatch:hover{transform:scale(1.12)}.theme-swatch.active{border-color:var(--surface);box-shadow:0 0 0 2px var(--sw)}.leftrail-chip{font-size:10px;font-weight:600;padding:2px 8px;border-radius:var(--radius);letter-spacing:.02em}.leftrail-chip-soon{background:var(--border);color:var(--text-muted)}.leftrail-chip-on{background:#064e3b;color:#6ee7b7;border:1px solid #047857}.leftrail-chip-off{background:#1e3a8a;color:#bfdbfe;border:1px solid var(--accent)}.leftrail-footer{display:flex;flex-direction:column;align-items:flex-start;gap:2px;background:var(--bg);color:var(--text);border:0;border-top:1px solid var(--border);padding:10px 12px;text-align:left;cursor:pointer;font-size:12px}.leftrail-footer:hover{background:var(--border)}.leftrail-footer-label{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim)}.leftrail-footer-name{font-size:13px;font-weight:600;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leftrail-section-body .ping-dials{flex-direction:column;align-items:stretch;gap:6px;padding:0;background:transparent}.leftrail-section-body .ping-dials-label{display:none}.leftrail-section-body .ping-dial{display:flex;align-items:center;justify-content:space-between;gap:8px}.leftrail-section-body .ping-all-btn{width:100%;justify-content:center;margin-top:4px}.projects-page{height:100%;overflow-y:auto;padding:32px 40px 48px;background:var(--bg)}.projects-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.projects-header h1{margin:0 0 4px;font-size:22px;font-weight:700}.projects-sub{margin:0;color:var(--text-muted);font-size:13px}.projects-actions{display:flex;gap:8px;flex-shrink:0}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.project-card{background:var(--surface);border:1px solid var(--border);color:var(--text);text-align:left;padding:16px;border-radius:var(--radius);cursor:pointer;display:flex;flex-direction:column;gap:8px;min-height:110px;transition:border-color .12s,transform .12s}.project-card:hover{border-color:var(--accent);transform:translateY(-1px)}.project-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.project-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.project-card-name{font-weight:600;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-chip{font-size:10px;font-weight:700;padding:2px 8px;border-radius:var(--radius);letter-spacing:.02em;flex-shrink:0}.card-chip-new{background:var(--border);color:var(--text-muted)}.card-chip-active{background:color-mix(in srgb,var(--success) 20%,transparent);color:var(--success)}.project-card-meta{font-size:12px;color:var(--text-muted)}.project-card-actions{display:flex;gap:6px;margin-top:auto;font-size:11px}.project-card-actions .ghost{background:transparent;color:var(--text-dim);padding:2px 6px;border-radius:var(--radius);cursor:pointer}.project-card-actions .ghost:hover{background:var(--border);color:var(--text)}.project-card-actions .danger-text{color:#f87171}.project-card-actions .danger-text:hover{background:#7f1d1d;color:#fff}.projects-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;height:100%;color:var(--text-muted);gap:12px}.projects-empty svg{color:var(--border-strong)}.projects-empty h2{margin:0;color:var(--text);font-size:18px}.projects-empty p{max-width:360px;margin:0;line-height:1.5}.project-card-rich{text-align:left;cursor:pointer}.project-card-rich:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.project-card-top-right{display:flex;align-items:center;gap:6px}.project-card-gear{background:transparent;border:0;color:var(--text-dim);padding:4px;border-radius:var(--radius);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.project-card-gear:hover{background:var(--border);color:var(--text)}.project-card-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.card-pill{font-family:var(--font-mono);font-size:9.5px;font-weight:700;padding:2px 8px;border-radius:var(--radius-tight);letter-spacing:.07em;text-transform:uppercase;font-variant-numeric:tabular-nums;background:var(--surface-3);color:var(--text-bright);border:1px solid var(--border-strong)}.card-pill-phase{background:var(--accent-soft);color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,transparent);text-transform:none;font-family:inherit}.card-pill-stage{display:inline-flex;align-items:center;gap:5px;border-color:color-mix(in srgb,currentColor 32%,transparent)}.card-pill-stage .stage-dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}.card-pill-stage.stage-plan{background:var(--accent-soft);color:var(--accent)}.card-pill-stage.stage-build{background:color-mix(in srgb,var(--warning) 18%,transparent);color:var(--warning)}.card-pill-stage.stage-test{background:color-mix(in srgb,#a371f7 18%,transparent);color:#a371f7}.card-pill-stage.stage-push{background:color-mix(in srgb,var(--success) 18%,transparent);color:var(--success)}.card-pill-stage.stage-test .stage-dot{animation:stage-pulse 1.6s ease-in-out infinite}@keyframes stage-pulse{0%,to{opacity:1}50%{opacity:.35}}.card-pill-progress{background:var(--border);color:var(--warning)}.card-pill-progress.complete{background:color-mix(in srgb,var(--success) 20%,transparent);color:var(--success)}.card-pill-members{background:var(--border);color:var(--text-bright)}.project-card-dates{display:flex;justify-content:space-between;gap:12px;margin-top:12px;font-size:11px;color:var(--text-dim)}.project-config-field{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}.project-config-field label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:600}.project-config-hint{margin:4px 0 0;font-size:11px;color:var(--text-dim)}.project-config-toggle{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--text);cursor:pointer;margin-bottom:0}.project-config-toggle input[type=checkbox]{width:16px;height:16px;cursor:pointer}.project-config-actions{display:flex;justify-content:flex-end;gap:8px}.project-config-members{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.project-config-member{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.project-config-member-text{flex:1;min-width:0}.project-config-member-name{font-weight:600;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-config-member-email{font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-config-role{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:3px 10px;border-radius:var(--radius);background:var(--border);color:var(--text-bright)}.project-config-role.role-owner{background:#064e3b;color:#6ee7b7}.project-config-role.role-collaborator{background:#1e3a8a;color:#dbeafe}.project-config-role.role-viewer{background:var(--border);color:var(--text-muted)}button.topbar-back{background:var(--surface-3);color:var(--text);border:1px solid var(--border-strong);padding:6px 12px;margin-right:12px;border-radius:var(--radius);font-size:12.5px;font-weight:600}button.topbar-back:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.topbar .title{display:flex;align-items:center}.error-bubble{margin-top:6px;padding:14px 16px;border:1px solid #7f1d1d;border-left:4px solid #b91c1c;background:linear-gradient(180deg,#1c0f10,#15090a);border-radius:var(--radius);color:#fee2e2;font-size:13px;line-height:1.5;max-width:720px}.error-bubble.role-dev{border-left-color:var(--accent)}.error-bubble.role-qc{border-left-color:#d97706}.error-bubble.role-org{border-left-color:#16a34a}.error-bubble.role-assistant{border-left-color:#0d9488}.error-bubble.error-kind-rate_limit,.error-bubble.error-kind-billing{border-top-color:#d97706}.error-bubble.error-kind-server,.error-bubble.error-kind-connection{border-top-color:#6366f1}.error-bubble-head{display:flex;align-items:center;gap:8px;margin-bottom:6px}.error-bubble-icon{display:inline-flex;color:#fca5a5}.error-bubble-title{font-weight:700;font-size:14px;color:#fecaca}.error-bubble-summary{margin:0 0 10px;color:#fee2e2}.error-bubble-fix-line{margin:0 0 12px;color:#fde68a;font-size:12.5px;line-height:1.55}.error-bubble-actions{display:flex;gap:8px;align-items:center}.error-bubble-actions button{font-size:12px;padding:5px 14px;background:#b91c1c}.error-bubble-actions button:hover{background:#991b1b}.api-settings-page{height:100%;overflow-y:auto;padding:28px 40px 48px;background:var(--bg)}.api-settings-header{display:flex;align-items:center;gap:16px;margin-bottom:24px}.api-settings-header h1{margin:0;font-size:22px;font-weight:700}.api-settings-header .ghost{background:transparent;color:var(--text-muted);padding:4px 10px;font-size:13px}.api-settings-header .ghost:hover{background:var(--border);color:var(--text)}.api-settings-section{margin-bottom:28px;max-width:720px}.api-settings-section-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.api-settings-section h2{margin:0;font-size:14px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.api-settings-badge{font-size:10px;font-weight:700;padding:2px 8px;border-radius:var(--radius);background:var(--border);color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase}.api-settings-badge.ok{background:#064e3b;color:#6ee7b7}.api-settings-disclosure{margin:10px 0 0;padding:10px 12px;background:#d9770614;border-left:3px solid #d97706;border-radius:var(--radius);font-size:12px;line-height:1.55;color:#fde68a}.api-settings-disclosure code{background:#00000059;padding:1px 6px;border-radius:var(--radius);font-family:var(--font-mono);font-size:11px}.api-settings-disclosure a{color:#fbbf24;text-decoration:underline}.api-settings-disclosure a:hover{color:#fef3c7}.api-settings-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;margin-bottom:8px}.api-settings-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.api-settings-label{color:var(--text-muted);font-size:13px}.api-settings-value{font-family:var(--font-mono);font-size:12px;background:var(--border);padding:4px 10px;border-radius:var(--radius);color:var(--text)}.api-settings-role{font-weight:600;font-size:14px}.api-settings-sub{font-size:11px;color:var(--text-dim);margin-top:2px}.api-settings-hint{color:var(--text-muted);font-size:12.5px;line-height:1.55;max-width:620px;margin:8px 0 12px}.api-settings-card .secondary{background:var(--border-strong);font-size:12px;padding:5px 14px}.api-settings-card .secondary:disabled{background:var(--border);color:var(--text-dim);cursor:not-allowed;opacity:.7}.api-settings-sub{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-muted);margin-top:4px}.api-settings-sub-hint{font-size:11px;color:var(--text-dim);margin-top:4px;max-width:380px}.api-settings-sub .status-dot{width:7px;height:7px;border-radius:50%;display:inline-block}.status-dot.status-active{background:#22c55e}.status-dot.status-default{background:var(--text-dim)}.status-dot.status-empty{background:var(--border-strong)}.api-key-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.api-key-actions select{background:var(--border);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius);padding:6px 8px;font-size:12px;width:auto;min-width:220px;font-family:var(--font-mono)}.api-key-actions select:disabled{opacity:.6;cursor:not-allowed}.api-key-edit{display:grid;grid-template-columns:1fr auto auto auto;gap:8px;margin-top:10px;align-items:center}.api-key-edit input{font-family:var(--font-mono);font-size:12px}.api-key-edit button{font-size:12px;padding:6px 12px}.settings-page{height:100%;overflow-y:auto;padding:28px 40px 64px;background:var(--bg)}.settings-header{display:flex;align-items:center;gap:16px;margin-bottom:24px}.settings-header h1{margin:0;font-size:22px;font-weight:700}.settings-header .ghost{background:transparent;color:var(--text-muted);padding:4px 10px;font-size:13px}.settings-header .ghost:hover{background:var(--border);color:var(--text)}.settings-section{max-width:720px;margin-bottom:28px}.settings-section-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.settings-section h2{margin:0;font-size:14px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.settings-badge{font-size:10px;font-weight:700;padding:2px 8px;border-radius:var(--radius);background:var(--border);color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase}.settings-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;margin-bottom:8px}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.settings-row-label{font-weight:600;font-size:14px}.settings-row-sub{font-size:11px;color:var(--text-muted);margin-top:4px;max-width:420px;line-height:1.5}.settings-row-value{font-family:var(--font-mono);font-size:22px;font-weight:700;color:var(--text)}.settings-row select{background:var(--border);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius);padding:6px 8px;font-size:12px;width:auto;min-width:220px}.settings-toggle{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--text-muted);cursor:pointer}.settings-toggle input{width:auto}.settings-profile{display:flex;align-items:center;gap:16px}.settings-avatar{width:56px;height:56px;border-radius:50%;border:1px solid var(--border)}.settings-profile-name{font-size:16px;font-weight:700}.settings-profile-email{font-size:12px;color:var(--text-muted);margin-top:2px}.settings-profile-hint{font-size:11px;color:var(--text-dim);margin-top:6px}.settings-danger .settings-section-head h2{color:#f87171}.settings-card-danger{border-color:#7f1d1d}.settings-danger-confirm{margin-top:12px;padding-top:12px;border-top:1px solid #7f1d1d}.settings-danger-confirm p{margin:0 0 8px;font-size:12.5px;color:#fee2e2}.settings-danger-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center}.settings-danger-row input{font-family:var(--font-mono);letter-spacing:.1em;border-color:#7f1d1d}.topbar-icon{background:transparent;color:var(--text-muted);padding:4px;border-radius:var(--radius);display:inline-flex;align-items:center;justify-content:center}.topbar-icon:hover{background:var(--border);color:var(--text)}.api-settings-disclosure{margin:0 0 18px;padding:10px 14px;border:1px solid var(--text-bright);border-left:3px solid #0d9488;border-radius:var(--radius);background:#f0fdfa;color:var(--border-strong);font-size:.85rem;line-height:1.5}.api-settings-disclosure code{background:#e2e8f0;padding:1px 5px;border-radius:var(--radius);font-size:.85em}.flow-section{margin-top:32px;padding-top:22px;border-top:1px solid var(--border)}.flow-section-head h2{margin:0 0 4px;font-size:18px}.flow-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:10px}.flow-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.flow-card-head h3{margin:0;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flow-badge{flex:none;font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);border:1px solid var(--border-strong);border-radius:var(--radius);padding:2px 8px}.flow-card-goals{margin:0;color:var(--text-muted);font-size:12.5px;line-height:1.5;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.flow-card-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:11.5px;color:var(--text-dim)}.flow-chip{color:var(--success);border:1px solid var(--border-strong);border-radius:var(--radius);padding:1px 7px}.flow-acct{color:var(--text-dim)}.flow-sample{text-decoration:none;color:inherit;cursor:pointer;transition:border-color .15s,transform .05s}.flow-sample:hover{border-color:var(--accent);transform:translateY(-1px)}.flow-sample-cta{font-size:12.5px;font-weight:600;color:var(--accent)}.flow-get-link{display:inline-block;margin-top:16px;font-size:13px;font-weight:600;color:var(--accent);text-decoration:none}.flow-get-link:hover{text-decoration:underline}.flow-close-x{width:24px;height:24px;border-radius:50%;border:1px solid #d0d0d0;background:transparent;color:var(--text-muted);font-size:.8rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.flow-close-x:hover{background:#fef2f2;border-color:#f0c0c0;color:#b91c1c}.plan-preview-pill{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:var(--radius);cursor:pointer;font-size:12px;font-weight:600;white-space:nowrap;background:var(--surface-3);color:var(--text-bright);border:1px solid #34405a}.plan-preview-pill:hover{border-color:#4b6bdc;color:#fff}.plan-preview-row{display:flex;justify-content:center;margin:18px 0 4px}.plan-preview-row .plan-preview-pill{font-size:13px;padding:9px 16px}.topbar-home{background:none;border:none;color:inherit;font:inherit;cursor:pointer;padding:0;border-radius:var(--radius)}.topbar-home:hover{text-decoration:underline;opacity:.85}.spec-start{border:1px solid var(--border);background:var(--surface-2);border-radius:var(--radius);padding:18px;margin-bottom:18px}.spec-start-lead{margin:0 0 14px;color:var(--text-bright);font-size:14px}.spec-start-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.spec-start-card{text-align:left;display:flex;flex-direction:column;gap:6px;cursor:pointer;background:var(--surface);border:1px solid var(--surface-3);border-radius:var(--radius);padding:16px;color:var(--text);transition:border-color .15s,transform .1s}.spec-start-card:hover{border-color:#4b6bdc;transform:translateY(-1px)}.spec-start-primary{background:linear-gradient(180deg,#1b2740,#141d2f);border-color:#34508c}.spec-start-title{font-size:15px;font-weight:600}.spec-start-desc{font-size:12.5px;color:var(--text-muted);line-height:1.5}.spec-start-desc code{background:var(--bg);padding:1px 5px;border-radius:var(--radius)}.spec-start-or{margin:12px 0 0;text-align:center;color:var(--text-dim);font-size:12px}@media (max-width: 640px){.spec-start-cards{grid-template-columns:1fr}}.brainstorm-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#05080d80;z-index:5500;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.brainstorm-modal{position:fixed;z-index:5600;top:50%;left:50%;transform:translate(-50%,-50%);width:min(640px,94vw);height:min(720px,90vh);display:flex;flex-direction:column;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius);overflow:hidden;backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));box-shadow:0 24px 70px #0000008c}.brainstorm-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid var(--border)}.brainstorm-head h2{margin:0 0 4px;font-size:18px}.brainstorm-sub{margin:0;color:var(--text-muted);font-size:12.5px;line-height:1.5}.brainstorm-close{background:none;border:none;color:var(--text-muted);font-size:16px;cursor:pointer;padding:4px 8px}.brainstorm-close:hover{color:#fff}.brainstorm-messages{flex:1;overflow-y:auto;padding:18px 20px;display:flex;flex-direction:column;gap:12px}.brainstorm-msg{display:flex}.brainstorm-user{justify-content:flex-end}.brainstorm-bubble{max-width:82%;padding:10px 14px;border-radius:var(--radius);font-size:13.5px;line-height:1.55;white-space:pre-wrap}.brainstorm-assistant .brainstorm-bubble{background:var(--surface-3);color:var(--text);border-top-left-radius:4px}.brainstorm-user .brainstorm-bubble{background:#2f5fd0;color:#fff;border-top-right-radius:4px}.brainstorm-typing{opacity:.7;font-style:italic}.brainstorm-composer{border-top:1px solid var(--border);padding:12px 16px;display:flex;flex-direction:column;gap:10px}.brainstorm-composer textarea{width:100%;resize:none;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;font:inherit;font-size:13.5px}.brainstorm-actions{display:flex;justify-content:flex-end;gap:8px}.spec-body-actions{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:16px}.spec-body-actions .spec-action{min-width:132px;justify-content:center;text-align:center;font-weight:600}.spec-body-actions .spec-load{background:#4f46e5;color:#fff}.spec-body-actions .spec-load:hover{background:#4338ca}.spec-body-actions .spec-save{background:var(--accent);color:#fff;opacity:1}.spec-body-actions .spec-save:hover:not(:disabled){background:var(--accent-strong)}.spec-body-actions .spec-save:disabled{background:#15803d;color:#eafff1;opacity:1;cursor:default}button.leftrail-row.leftrail-row-link{width:100%;background:transparent;border:1px solid transparent;border-radius:var(--radius);padding:6px 8px;cursor:pointer;font:inherit;text-align:left}button.leftrail-row.leftrail-row-link:hover{background:var(--surface-3);border-color:var(--surface-3)}button.leftrail-row.leftrail-row-link:hover .leftrail-row-label{color:var(--text)}.integration-logo{flex:none;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius);background:#fff;box-shadow:0 1px 3px #0000004d}.integration-logo img{width:28px;height:28px;display:block;object-fit:contain}.integration-logo-sm{width:28px;height:28px;border-radius:var(--radius)}.integration-logo-sm img{width:19px;height:19px}.api-settings-section-head,.integration-head{display:flex;align-items:center;gap:10px}.api-settings-section-head h2,.integration-head h2{margin:0}.leftrail-row-left{display:inline-flex;align-items:center;gap:8px;min-width:0}@keyframes integrationFlash{0%{box-shadow:0 0 #2563eb00}25%{box-shadow:0 0 0 2px #2563ebd9}to{box-shadow:0 0 #2563eb00}}.integration-flash{border-radius:var(--radius);animation:integrationFlash 1.6s ease-out}.sound-mixer{margin-top:10px;display:flex;flex-direction:column;gap:7px}.sound-row{display:flex;align-items:center;gap:8px}.sound-name{width:70px;flex:none;font-size:12px;color:var(--text-bright)}.sound-slider{flex:1;min-width:0;accent-color:var(--accent);cursor:pointer}.sound-slider:disabled{opacity:.4;cursor:not-allowed}.sound-test{flex:none;padding:2px 8px;font-size:11px;line-height:1;color:var(--text-muted);border-radius:var(--radius)}.sound-test:hover:not(:disabled){background:var(--border);color:var(--text)}.flow-tile-actions{display:flex;align-items:center;justify-content:center;gap:10px}.flow-tile-actions button{height:34px;box-sizing:border-box;align-self:center}.flow-tile-actions>button:not(.flow-mic){display:inline-flex;align-items:center;justify-content:center}.flow-tile-actions button.flow-mic,.composer-send-row button.flow-mic{width:34px;height:34px;border-radius:50%;flex:none;padding:0;display:inline-flex;align-items:center;justify-content:center;background:#dc2626;color:#fff;border:1px solid transparent;cursor:pointer;box-shadow:0 2px 6px #dc262673;transition:background .15s,transform .1s,box-shadow .15s}.flow-tile-actions button.flow-mic svg,.composer-send-row button.flow-mic svg{width:16px;height:16px}.flow-tile-actions button.flow-mic:hover:not(:disabled),.composer-send-row button.flow-mic:hover:not(:disabled){background:#ef4444;border-color:transparent;color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #ef444480}.flow-tile-actions button.flow-mic:active:not(:disabled),.composer-send-row button.flow-mic:active:not(:disabled){transform:translateY(0)}.flow-tile-actions button.flow-mic:disabled,.composer-send-row button.flow-mic:disabled{background:#3a4250;box-shadow:none;opacity:.6;cursor:not-allowed}.flow-tile-actions button.flow-mic.listening,.composer-send-row button.flow-mic.listening{background:#16a34a;box-shadow:0 2px 6px #16a34a80;animation:micPulseGreen 1.25s ease-in-out infinite}.flow-tile-actions button.flow-mic.listening:hover:not(:disabled),.composer-send-row button.flow-mic.listening:hover:not(:disabled){background:#22c55e}@keyframes micPulseGreen{0%,to{box-shadow:0 0 #22c55e00,0 2px 6px #16a34a80}50%{box-shadow:0 0 0 7px #22c55e4d,0 2px 6px #16a34a80}}.composer-send-row button{height:38px;box-sizing:border-box}.composer-send-row .send{display:inline-flex;align-items:center;justify-content:center}.composer-send-row .flow-mic{width:38px;height:38px}.composer-send-row button.flow-mic svg{width:17px;height:17px}.mic-settings{margin-top:12px;padding-top:10px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:8px}.mic-settings-head{font-size:12px;font-weight:600;color:var(--text-bright)}.mic-test-btn{align-self:flex-start;padding:5px 12px;border-radius:var(--radius);background:var(--border);color:var(--text);border:1px solid var(--border-strong);cursor:pointer;font-size:12px}.mic-test-btn:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:#fff}.mic-test-btn:disabled{opacity:.5;cursor:not-allowed}.mic-test-btn.listening{background:#dc2626;border-color:#dc2626;color:#fff}.mic-test-out{font-size:12px;color:var(--text-muted);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:6px 8px}.leftrail-model-select{width:100%;margin:4px 0 8px;padding:7px 9px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);font-size:12.5px;cursor:pointer}.leftrail-model-select:focus{outline:none;border-color:var(--accent)}.leftrail-model-actions{display:flex;gap:8px;align-items:center;margin-bottom:4px}.leftrail-model-save{padding:5px 14px;border-radius:var(--radius);font-size:12px;font-weight:600;background:var(--accent);color:#fff;border:none;cursor:pointer}.leftrail-model-save:hover:not(:disabled){background:var(--accent-strong)}.leftrail-model-save:disabled{background:#15803d;opacity:1;cursor:default}.leftrail-model-reset{padding:5px 10px;border-radius:var(--radius);font-size:12px;background:transparent;color:var(--text-muted);border:1px solid var(--border-strong);cursor:pointer}.leftrail-model-reset:hover:not(:disabled){background:var(--border);color:var(--text)}.api-advanced{margin-top:14px;border-top:1px solid var(--border);padding-top:12px}.api-advanced>summary{cursor:pointer;list-style:none;font-size:13px;font-weight:600;color:var(--text-muted);padding:6px 0;-webkit-user-select:none;user-select:none}.api-advanced>summary::-webkit-details-marker{display:none}.api-advanced>summary:before{content:"▸ ";color:var(--text-dim)}.api-advanced[open]>summary:before{content:"▾ "}.api-advanced>summary:hover{color:var(--text)}.api-model-roles{margin-top:12px}.api-model-roles-head{font-size:13px;font-weight:600;color:var(--text-muted);margin:6px 2px 8px}.apikey-nudge{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;background:color-mix(in srgb,var(--success) 14%,var(--surface));border-bottom:1px solid color-mix(in srgb,var(--success) 35%,var(--border));color:var(--text);font-size:13.5px}.apikey-nudge-text a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px}.apikey-nudge-actions{display:flex;align-items:center;gap:8px;flex:none}.apikey-nudge-cta{padding:6px 14px;border-radius:var(--radius);border:none;cursor:pointer;background:var(--success);color:#fff;font-weight:600;font-size:12.5px}.apikey-nudge-cta:hover{background:color-mix(in srgb,var(--success) 85%,#000)}.apikey-nudge-x{background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:14px;padding:4px 8px;border-radius:var(--radius)}.apikey-nudge-x:hover{background:var(--border);color:var(--text)}.login-dev{padding:11px 22px;border-radius:var(--radius);cursor:pointer;background:transparent;color:var(--text);border:1px solid var(--text);font-size:14px}.login-dev:hover:not(:disabled){background:var(--surface-3);color:var(--text)}.login-dev:disabled{background:transparent;border-color:var(--border-strong)}.login-guest-err{color:var(--danger);font-size:12.5px;margin-top:10px}.mapp{display:flex;flex-direction:column;height:100vh;height:100dvh;background:var(--bg-deep);color:var(--text)}.mapp-header{display:flex;align-items:center;gap:8px;padding:calc(10px + env(safe-area-inset-top)) calc(14px + env(safe-area-inset-right)) 10px calc(14px + env(safe-area-inset-left));background:var(--surface-2);border-bottom:1px solid var(--border);flex:none}.mapp-header-left{min-width:72px}.mapp-brand{flex:1;text-align:center;font-weight:700;font-size:16px;letter-spacing:.2px}.mapp-header-right{min-width:72px;display:flex;align-items:center;justify-content:flex-end;gap:8px}.mapp-who{display:none}.mapp-signout{background:transparent;border:1px solid var(--border-strong);color:var(--text-muted);border-radius:var(--radius);padding:6px 10px;font-size:12px}.mapp-back{background:transparent;border:none;color:var(--accent);font-size:15px;padding:10px 6px}.mapp-chat{flex:1;min-height:0;display:flex}.mapp-chat>*{flex:1;min-width:0}.mapp-home{flex:1;overflow-y:auto;padding:18px 16px 32px}.mapp-home h1{font-size:18px;margin:4px 0 14px}.mapp-hint{color:var(--text-muted);font-size:14px;line-height:1.5}.mapp-projects{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-direction:column;gap:8px}.mapp-project{width:100%;display:flex;align-items:center;justify-content:space-between;padding:13px 14px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:15px;text-align:left}.mapp-project-go{color:var(--text-dim);font-size:20px}.mapp-new{width:100%;padding:14px;border-radius:var(--radius);border:1px dashed var(--border-strong);background:transparent;color:var(--accent);font-size:15px;font-weight:600}.mflow{display:flex;flex-direction:column;height:100vh;height:100dvh;background:var(--bg-deep);color:var(--text)}.mflow-top{display:flex;align-items:center;gap:6px;padding:calc(8px + env(safe-area-inset-top)) calc(8px + env(safe-area-inset-right)) 8px calc(8px + env(safe-area-inset-left));background:var(--surface-2);border-bottom:1px solid var(--border);flex:none}.mflow-icon{flex:none;width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:22px;line-height:1;background:transparent;border:none;color:var(--text-muted);border-radius:var(--radius)}.mflow-icon:active{background:var(--border)}.mflow-tabs{flex:1;display:flex;align-items:center;gap:6px;overflow-x:auto;scrollbar-width:none;mask-image:linear-gradient(to right,#000 calc(100% - 22px),transparent);-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 22px),transparent)}.mflow-tabs::-webkit-scrollbar{display:none}.mflow-tab{flex:none;padding:6px 12px;border-radius:var(--radius);font-size:12.5px;font-weight:600;background:var(--bg);color:var(--text-muted);border:1px solid var(--border)}.mflow-tab.active{background:var(--surface-2)}.mflow-planning-group{flex:none;display:flex;align-items:center;gap:6px;position:relative;padding:0 6px;border-radius:var(--radius) var(--radius) 0 0;background:#94a3b80d;box-shadow:inset 0 1px #2a3a4f}.mflow-planning-label{flex:none;font-size:8px;line-height:1;letter-spacing:.1em;font-weight:700;color:#5b6b7d;text-transform:uppercase}.mflow-cards{flex:1;min-height:0;display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.mflow-cards::-webkit-scrollbar{display:none}.mrc{flex:0 0 100%;min-width:100%;width:100%;height:100%;scroll-snap-align:start;display:flex;flex-direction:column}.mrc-thread{flex:1;min-height:0;overflow-y:auto;padding:14px 14px 8px;display:flex;flex-direction:column;gap:10px}.mrc-empty{color:var(--text-dim);font-size:14px;text-align:center;margin:auto}.mrc-bubble{max-width:86%;display:flex}.mrc-human{align-self:flex-end}.mrc-ai{align-self:flex-start}.mrc-bubble-body{padding:10px 13px;border-radius:var(--radius);font-size:15px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.mrc-human .mrc-bubble-body{background:var(--accent-strong);color:#fff;border-bottom-right-radius:4px}.mrc-ai .mrc-bubble-body{background:var(--surface);color:var(--text);border:1px solid var(--border);border-bottom-left-radius:4px;white-space:normal}.mrc-status{align-self:flex-start;color:var(--text-muted);font-size:12.5px;font-style:italic;padding:0 4px}.mrc-composer{flex:none;display:flex;align-items:flex-end;gap:8px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:var(--surface-2);border-top:1px solid var(--border)}.mrc-input{flex:1;resize:none;max-height:120px;padding:10px 12px;font-size:16px;line-height:1.4;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius)}.mrc-input:focus{outline:none;border-color:var(--accent)}.mrc-mic{flex:none;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bg);color:var(--text-bright);border:1px solid var(--border)}.mrc-mic:disabled{opacity:.4}.mrc-mic.listening{background:#16a34a;border-color:#16a34a;color:#fff;animation:mrc-pulse 1.3s ease-in-out infinite}@keyframes mrc-pulse{0%,to{box-shadow:0 0 #16a34a80}50%{box-shadow:0 0 0 7px #16a34a00}}.mrc-send{flex:none;height:44px;padding:0 16px;border-radius:var(--radius);font-size:14px;font-weight:600;background:var(--accent);color:#fff;border:none}.mrc-send:disabled{background:var(--border);color:var(--text-dim)}.mrc-boost{flex:none;height:44px;padding:0 12px;border-radius:var(--radius);font-size:12px;font-weight:600;background:var(--bg);color:var(--text-muted);border:1px solid var(--border)}.mrc-boost.active{background:color-mix(in srgb,var(--accent) 22%,transparent);border-color:var(--accent);color:var(--accent)}.mrc-economy{display:flex;align-items:center;color:#3fae6b;margin:-2px 0 6px 10px}.builder-locked{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;height:100%;padding:40px 24px;color:var(--text-muted)}.builder-locked h3{margin:0;color:var(--text);font-size:18px}.builder-locked p{margin:0;max-width:380px;line-height:1.5}.builder-locked .primary{margin-top:8px}.testing-resend-link{margin-top:16px;background:transparent;border:1px solid var(--border-strong);color:var(--text-muted);border-radius:var(--radius);padding:6px 14px;font-size:12px;font-weight:600;cursor:pointer}.testing-resend-link:hover:not(:disabled){color:var(--text);border-color:var(--accent)}.testing-resend-link:disabled{opacity:.5;cursor:default}.testing-recovery-note{text-align:center;margin-top:6px}.testing-resend-inline{background:none;border:none;padding:2px 4px;color:var(--text-dim);font-size:11px;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.testing-resend-inline:hover:not(:disabled){color:var(--accent)}.testing-resend-inline:disabled{opacity:.5;cursor:default}.testing-sent{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:32px 24px}.testing-sent-check{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:color-mix(in srgb,#14b8a6 22%,transparent);color:#14b8a6;font-size:22px;font-weight:700}.testing-sent h3{margin:4px 0 0;color:var(--text)}.testing-sent p{margin:0;color:var(--text-muted)}.testing-sent-working{display:inline-flex;align-items:center;gap:8px;margin-top:6px;font-size:13px;font-weight:600;color:#14b8a6}.testing-sent-actions{display:flex;align-items:center;gap:14px;margin-top:12px}.mapp-credits{font-size:12px;font-weight:700;color:var(--text-muted);padding:2px 8px;border-radius:var(--radius);background:var(--surface-2)}.mapp-credits.low{color:var(--accent)}.mflow-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000006b;z-index:40;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.mflow-sheet{position:fixed;left:0;right:0;bottom:0;z-index:41;background:var(--glass-bg);border-top:1px solid var(--glass-border);border-radius:var(--radius) var(--radius) 0 0;backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));padding:8px calc(16px + env(safe-area-inset-right)) calc(18px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left))}.mflow-sheet-grab{width:40px;height:4px;border-radius:2px;background:var(--border-strong);margin:4px auto 12px}.mflow-sheet-title{font-weight:700;font-size:15px;margin:0 0 10px}.mflow-sheet-row{width:100%;text-align:left;padding:14px 4px;background:transparent;border:none;border-top:1px solid var(--border);color:var(--text);font-size:15px}.mflow-sheet-pill{padding:12px 0 4px}.cfp-compact .flow-header-user{display:none}.cfp-compact .flow-main{padding:14px 14px 28px}.cfp-compact .flow-intro{margin-bottom:12px}.cfp-compact .flow-title{font-size:22px}.cfp-compact .flow-subtitle{font-size:13px;line-height:1.45}.flow-cards-compact{display:flex;flex-direction:column;gap:10px}.flow-card-compact{padding:0;overflow:hidden}.flow-card-toggle{width:100%;display:flex;align-items:center;gap:10px;padding:14px;background:transparent;border:none;text-align:left;color:var(--text);cursor:pointer}.flow-card-toggle .flow-card-role{font-weight:700;font-size:15px}.flow-card-toggle .flow-card-tagline{flex:1;font-size:12.5px;color:var(--text-muted)}.flow-card-chevron{color:var(--text-dim);font-size:13px}.flow-card-detail{padding:0 14px 14px}.flow-card-compact .flow-card-desc{margin:0 0 12px}.mflow-tool{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:var(--bg-deep);display:flex;flex-direction:column;height:100vh;height:100dvh}.mflow-tool .panel{flex:1;min-height:0;height:100%}.mflow-sheet-row{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.mflow-sheet-row-label{font-size:15px;font-weight:600}.mflow-sheet-row-hint{font-size:12px;color:var(--text-muted)}.mflow-tool-bar{flex:none;display:flex;align-items:center;gap:4px;padding:6px 8px;background:var(--surface-2);border-bottom:1px solid var(--border)}.mflow-tool-bar-title{font-weight:700;font-size:15px}.mflow-tool .builder-panel{flex:1;min-height:0;height:100%}.mflow-tab{position:relative}.mflow-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;margin-left:5px;border-radius:var(--radius);background:#ef4444;color:#fff;font-size:10px;font-weight:700;line-height:1;vertical-align:middle}.mrc-parked{flex:none;display:flex;flex-direction:column;gap:8px;max-height:42%;overflow-y:auto;padding:10px 12px;background:#14110a;border-top:1px solid #3a3017}.mrc-parked-label{font-size:12px;font-weight:700;color:#fbbf24}.mrc-parked-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:10px}.mrc-parked-q{font-size:14px;line-height:1.4;color:var(--text);margin-bottom:8px}.mrc-parked-actions{display:flex;flex-wrap:wrap;gap:6px}.mrc-parked-opt{min-height:44px;padding:10px 16px;border-radius:var(--radius);background:var(--accent-strong);color:#fff;border:none;font-size:13.5px;font-weight:600}.mrc-parked-opt:active{background:#1e40af}.mrc-builder{padding:0}.mrc-builder .builder-panel{flex:1;min-height:0;height:100%}.mflow-build-banner{flex:none;width:100%;padding:11px 14px;border:none;border-bottom:1px solid #1f5b2e;background:#0f2a16;color:#6ee7a0;font-size:13.5px;font-weight:700;text-align:center}.mflow-build-banner:disabled{opacity:.7}.mapp-create{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.mapp-create-input{width:100%;padding:12px;font-size:16px;color:var(--text);background:var(--bg);border:1px solid var(--accent);border-radius:var(--radius)}.mapp-create-input:focus{outline:none}.mapp-create-actions{display:flex;gap:8px;justify-content:flex-end}.mapp-create-cancel{padding:9px 16px;border-radius:var(--radius);background:transparent;color:var(--text-muted);border:1px solid var(--border-strong);font-size:14px}.mapp-create-go{padding:9px 18px;border-radius:var(--radius);background:var(--accent);color:#fff;border:none;font-size:14px;font-weight:600}.mapp-create-go:disabled{background:var(--border);color:var(--text-dim)}.mapp-project-row{display:flex;align-items:stretch;gap:8px}.mapp-project-row .mapp-project{flex:1}.mapp-project-del{flex:none;width:46px;display:flex;align-items:center;justify-content:center;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted)}.mapp-project-del:active{background:#2a1416;color:#f8a3a3;border-color:#5b2626}.mapp-project-confirm{flex:1;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;background:#1a1113;border:1px solid #5b2626;border-radius:var(--radius)}.mapp-confirm-q{font-size:14px;color:#f0d0d0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mapp-confirm-actions{display:flex;gap:6px;flex:none}.mapp-confirm-cancel{padding:7px 12px;border-radius:var(--radius);background:transparent;color:var(--text-muted);border:1px solid var(--border-strong);font-size:13px}.mapp-confirm-del{padding:7px 14px;border-radius:var(--radius);background:#b91c1c;color:#fff;border:none;font-size:13px;font-weight:600}.mapp-project-cog{flex:none;width:46px;display:flex;align-items:center;justify-content:center;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted)}.mapp-project-cog:active{background:var(--border);color:var(--text)}.mapp-settings{height:100vh;height:100dvh;overflow-y:auto;background:var(--bg-deep)}@keyframes mflow-pulse{0%,to{opacity:1}50%{opacity:.3}}.mflow-activity{flex:none;display:flex;align-items:center;gap:9px;width:100%;padding:10px 14px;border:none;border-bottom:1px solid var(--border);font-size:13px;text-align:left}.mflow-activity.is-working{background:#0d1b2a;color:#cfe3ff}.mflow-activity.is-wait{background:#2a1f0c;color:#f3cd7a;justify-content:center;font-weight:600}.mflow-activity.is-done{background:#0f2a16;color:#6ee7a0;justify-content:center;font-weight:600}.mflow-activity-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mflow-activity-text b{font-weight:700}.mflow-activity-dot{flex:none;width:9px;height:9px;border-radius:50%;background:#60a5fa;color:#60a5fa;animation:work-ripple 1.3s ease-out infinite}.mflow-tab-pulse{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px;vertical-align:middle;animation:work-ripple 1.3s ease-out infinite}.mrc-working{flex:none;display:flex;align-items:center;gap:10px;padding:8px 14px;background:#0d1b2a;color:#cfe3ff;font-size:13px;border-bottom:1px solid var(--border)}.mrc-working-dot{flex:none;width:9px;height:9px;border-radius:50%;animation:work-ripple 1.3s ease-out infinite}.md-code{margin:8px 0;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);overflow:hidden}.md-code>summary{cursor:pointer;padding:8px 12px;font-size:12.5px;color:var(--text-muted);list-style:none;font-family:var(--font-mono)}.md-code>summary::-webkit-details-marker{display:none}.md-code[open]>summary{border-bottom:1px solid var(--border);color:var(--text-bright)}.md-code pre{margin:0;max-height:50vh;overflow:auto}.mflow-resume{flex:none;display:flex;flex-direction:column;gap:10px;padding:12px 14px;background:var(--surface-2);border-bottom:1px solid var(--border)}.mflow-resume-title{font-size:13px;font-weight:700;color:var(--text)}.mflow-resume-action{font-size:12.5px;color:var(--text-muted);line-height:1.4;margin-top:2px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.mflow-resume-actions{display:flex;gap:8px}.mflow-resume-go{flex:1;padding:9px;border-radius:var(--radius);background:var(--accent);color:#fff;border:none;font-size:13.5px;font-weight:600}.mflow-resume-change{flex:1;padding:9px;border-radius:var(--radius);background:var(--border);color:var(--text);border:1px solid var(--border-strong);font-size:13.5px}.mflow-resume-done{flex:none;padding:9px 14px;border-radius:var(--radius);background:transparent;color:var(--text-muted);border:1px solid var(--border-strong);font-size:13.5px}.mflow-buildready{flex:none;width:100%;padding:12px 14px;border:none;border-bottom:1px solid #1f5b2e;background:#0f2a16;color:#6ee7a0;font-size:14px;font-weight:700;text-align:center;animation:mflow-buildready-flash .8s ease-in-out 3}@keyframes mflow-buildready-flash{0%,to{background:#0f2a16}50%{background:#16432a}}.mapp-project-act{flex:none;width:42px;display:flex;align-items:center;justify-content:center;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted)}.mapp-project-act:active{background:var(--border);color:var(--text)}.mapp-project-row{gap:6px}.mapp-project-cog,.mapp-project-del,.mapp-project-act{width:42px}.mapp-project-act.app-live{color:#22c55e;border-color:#1f5b2e}.project-card-gear.app-live{color:#22c55e}.card-pill-platform{background:var(--border);color:var(--text-bright);text-transform:none}.card-pill-platform.multi{background:linear-gradient(90deg,var(--accent-soft),color-mix(in srgb,var(--success) 18%,transparent));color:var(--text);border:1px solid color-mix(in srgb,var(--accent) 40%,var(--border))}.artifact-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50}.artifact-menu{position:absolute;top:calc(100% + 4px);right:0;z-index:51;display:flex;flex-direction:column;min-width:190px;background:var(--glass-bg);border:1px solid var(--glass-border);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-radius:var(--radius);padding:4px;box-shadow:0 8px 22px #00000073}.artifact-menu-item{background:transparent;border:none;color:var(--text);text-align:left;font-size:13px;padding:9px 10px;border-radius:var(--radius);cursor:pointer;white-space:nowrap}.artifact-menu-item:hover{background:var(--accent-soft);color:var(--text)}.mapp-project-confirm{flex-direction:column;align-items:stretch;gap:8px}.mapp-confirm-chk{display:flex;align-items:center;gap:8px;font-size:12.5px;color:#d7c0c0}.mapp-confirm-chk input[type=checkbox]{width:18px;height:18px;min-width:18px;flex:none;margin:0;accent-color:#b91c1c}.settings-danger-chk{display:flex;align-items:center;gap:8px;margin:8px 0;font-size:13px}.settings-danger-chk input[type=checkbox]{width:16px;height:16px;min-width:16px;flex:none;margin:0}.project-files{margin-top:14px}.project-files-head{font-size:13px;font-weight:600;color:var(--text-muted);margin-bottom:8px}.project-files-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.project-files-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2)}.project-files-list a{color:#60a5fa;text-decoration:none;word-break:break-all;font-size:13px}.project-files-list a:hover{text-decoration:underline}.project-files-size{color:var(--text-dim);font-size:11.5px;flex:none}.project-link-row{display:flex;gap:8px;align-items:stretch}.project-link-row input{flex:1}.project-link-row button{flex:none}.project-links-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.project-links-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 11px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2)}.project-link-path{font-family:var(--font-mono);font-size:12.5px;color:var(--text-bright);word-break:break-all}.project-link-remove{flex:none;background:transparent;border:1px solid var(--border-strong);color:var(--text-muted);border-radius:var(--radius);padding:4px 10px;font-size:12px}.project-workdir-current{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;border:1px solid #1f5b2e;border-radius:var(--radius);background:#0f2a16}@keyframes aic-build-sweep{0%{left:-35%}to{left:100%}}.aic-build-bar{position:relative;height:6px;width:220px;max-width:72%;border-radius:var(--radius);background:color-mix(in srgb,var(--accent, #2563eb) 16%,transparent);overflow:hidden}.aic-build-bar:after{content:"";position:absolute;top:0;bottom:0;width:35%;border-radius:var(--radius);background:var(--accent, #2563eb);animation:aic-build-sweep 1.15s cubic-bezier(.4,0,.2,1) infinite}@keyframes aic-build-bob{0%,to{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-7px) rotate(4deg)}}.aic-build-emoji{font-size:40px;line-height:1;display:inline-block;animation:aic-build-bob 1s ease-in-out infinite}.aic-build-msg{transition:opacity .3s}@media (prefers-reduced-motion: reduce){.aic-build-bar:after{animation:none;left:0;width:100%;opacity:.6}.aic-build-emoji{animation:none}}.avatar{display:inline-block;vertical-align:middle;border-radius:50%;object-fit:cover;flex-shrink:0}.avatar-user{border:1px solid var(--border);background:var(--border)}.avatar-role{background:var(--bg-deep)}.avatar-monogram{background:var(--border-strong);color:var(--text);text-align:center;font-weight:700;border-radius:50%;-webkit-user-select:none;user-select:none}.avatar-empty{background:transparent;display:inline-block;border-radius:50%}.msg .who .avatar{margin-right:4px}.typing-indicator{display:inline-flex;gap:4px;align-items:center;padding:6px 0 2px}.typing-indicator>span{width:6px;height:6px;border-radius:50%;background:var(--text-dim);animation:typing-pulse 1.2s ease-in-out infinite}.typing-indicator>span:nth-child(2){animation-delay:.15s}.typing-indicator>span:nth-child(3){animation-delay:.3s}.typing-indicator.role-dev>span{background:#60a5fa}.typing-indicator.role-qc>span{background:#fbbf24}.typing-indicator.role-org>span{background:#34d399}.typing-indicator.role-assistant>span{background:var(--color-assistant)}.typing-indicator.typing-indicator-status{align-items:center;padding:8px 2px 4px;font-size:13px;font-style:italic;color:var(--text-muted)}.typing-indicator.typing-indicator-with-holder{align-items:center;gap:10px;flex-wrap:wrap}.typing-indicator-holder{display:inline-flex;align-items:center;gap:6px;background:#ffffff0a;border:1px solid var(--border);border-radius:var(--radius);padding:3px 10px 3px 4px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.typing-indicator-holder-name{color:var(--text);font-style:normal}.typing-indicator-holder:has(.avatar.role-dev),.typing-indicator-with-holder .typing-indicator-holder.role-dev{border-color:#60a5fa99}.typing-indicator-with-holder .typing-indicator-status-text{font-size:13px}.typing-indicator-status-text{display:inline-block;background:linear-gradient(90deg,var(--text-dim) 0%,var(--text-bright) 35%,var(--text-dim) 70%);background-size:200% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:typing-status-shimmer 2.4s linear infinite}@keyframes typing-status-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes typing-pulse{0%,to{opacity:.25;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}.leftrail-toggle{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none}.leftrail-toggle input{width:auto}.onboarding-page{background:var(--bg);color:var(--text);overflow-y:auto}.onboarding-full{height:100vh;padding:48px 56px}.onboarding-overlay{padding:32px 40px}.onboarding-header h1{margin:0 0 6px;font-size:24px;font-weight:700}.onboarding-header p{margin:0 0 24px;color:var(--text-muted);font-size:13px;max-width:680px;line-height:1.55}.onboarding-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:18px}.onboarding-tab-btn{background:transparent;color:var(--text-muted);border:0;padding:10px 14px;font-size:13px;font-weight:600;cursor:pointer;border-bottom:2px solid transparent}.onboarding-tab-btn:hover{color:var(--text)}.onboarding-tab-btn.active{color:var(--text);border-bottom-color:var(--accent)}.onboarding-panel{outline:none;max-width:760px;padding:8px 0 24px}.onboarding-tab h2{margin:18px 0 8px;font-size:14px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.onboarding-tab ul,.onboarding-tip-list{padding-left:22px;margin:0 0 18px;font-size:13px;line-height:1.6}.onboarding-tab li,.onboarding-tip-list li{margin-bottom:6px}.onboarding-shortcuts{display:grid;grid-template-columns:max-content 1fr;gap:6px 14px;font-size:13px;line-height:1.5}.onboarding-shortcuts dt{color:var(--text)}.onboarding-shortcuts dd{margin:0;color:var(--text-bright)}.onboarding-shortcuts kbd{background:var(--border);border:1px solid var(--border-strong);border-radius:var(--radius);padding:2px 8px;font-family:var(--font-mono);font-size:11px;font-weight:600}.onboarding-footer{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--border);padding-top:18px}.onboarding-overlay .onboarding-footer{position:sticky;bottom:0;background:var(--bg)}.invite-overlay{background:#00000080;display:flex;align-items:center;justify-content:center;padding:24px}.invite-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px 24px;width:min(560px,100%);max-height:86vh;overflow-y:auto}.invite-modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.invite-modal h2{margin:0;font-size:18px}.invite-modal h3{margin:22px 0 8px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.invite-modal-hint{margin:0 0 16px;color:var(--text-muted);font-size:12.5px;line-height:1.55}.invite-field{display:flex;flex-direction:column;gap:4px;margin-bottom:14px;font-size:12px}.invite-field span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.invite-field-checkbox{flex-direction:row;align-items:flex-start;gap:8px}.invite-field-checkbox input{margin-top:2px;flex-shrink:0}.invite-field-checkbox span{text-transform:none;letter-spacing:normal;font-size:12px;line-height:1.5}.invite-result{margin-top:12px;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);font-size:12px}.invite-result span{color:var(--text-muted);margin-right:6px}.invite-result code{font-family:var(--font-mono);word-break:break-all;color:var(--text)}.invite-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.invite-list li{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);font-size:12px}.invite-list li.consumed{opacity:.55}.invite-list strong{text-transform:capitalize;margin-right:8px}.invite-list-meta{color:var(--text-muted);font-size:11px}.invite-page{max-width:520px;margin:80px auto;padding:32px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:center}.invite-page h1{margin:0 0 8px;font-size:22px}.invite-page p{color:var(--text-bright);line-height:1.55}.invite-meta{list-style:none;padding:0;margin:18px 0;display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;text-align:left}.invite-meta li{display:contents;font-size:13px}.invite-meta li span{color:var(--text-muted);text-transform:uppercase;font-size:11px;letter-spacing:.04em;padding-top:2px}.invite-warn{background:#78350f;color:#fef3c7;padding:8px 12px;border-radius:var(--radius);margin:12px 0;font-size:12px}.invite-page .button-like,.invite-page button{display:inline-block;background:var(--accent);color:#fff;padding:8px 16px;border-radius:var(--radius);text-decoration:none;border:0;font-size:14px;font-weight:600;margin-top:12px;cursor:pointer}.invite-page .button-like:hover,.invite-page button:hover{background:var(--accent-strong)}.checklist-body{padding:18px 24px 32px}.checklist-intro{margin:0 0 14px;color:var(--text-muted);font-size:12.5px;line-height:1.55;max-width:760px}.checklist-intro code{background:var(--border);padding:1px 6px;border-radius:var(--radius);font-family:var(--font-mono);font-size:11px}.checklist-gate-badge{font-size:11px;font-weight:700;padding:3px 10px;border-radius:var(--radius);background:var(--border);color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase}.checklist-gate-badge.blocking{background:#d977062e;color:#fbbf24}.checklist-gate-badge.clear{background:#064e3b;color:#6ee7b7}.checklist-table{width:100%;border-collapse:collapse;font-size:12.5px}.checklist-table th{text-align:left;font-weight:600;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);padding:6px 10px;border-bottom:1px solid var(--border)}.checklist-table td{padding:10px;border-bottom:1px solid var(--border);vertical-align:top;color:var(--text-bright)}.checklist-row.editing td{padding:16px;background:var(--bg)}.checklist-feature{font-weight:600;color:var(--text);font-size:13px}.checklist-desc{font-size:12px;color:var(--text-muted);margin-top:4px;line-height:1.5}.checklist-rationale{font-size:11px;color:#f59e0b;margin-top:4px;font-style:italic}.checklist-status{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;border-radius:var(--radius)}.checklist-status-pending{background:#d9770633;color:#fbbf24}.checklist-status-approved{background:#064e3b;color:#6ee7b7}.checklist-status-deferred{background:var(--surface-3);color:#93c5fd}.checklist-status-deprecated{background:#4b1d1d;color:#fca5a5;text-decoration:line-through}.checklist-status-picker{display:flex;gap:4px;flex-wrap:wrap}.checklist-status-btn{font-size:10px;padding:3px 8px;background:transparent;border:1px solid var(--border-strong);color:var(--text-muted);border-radius:var(--radius);cursor:pointer;letter-spacing:.04em;text-transform:uppercase;font-weight:600}.checklist-status-btn:hover{background:var(--border);color:var(--text)}.checklist-status-btn.active.checklist-status-pending{background:#d97706;color:#1c1410;border-color:#d97706}.checklist-status-btn.active.checklist-status-approved{background:#16a34a;color:#052e16;border-color:#16a34a}.checklist-status-btn.active.checklist-status-deferred{background:#3b82f6;color:#0c1c3a;border-color:#3b82f6}.checklist-status-btn.active.checklist-status-deprecated{background:#dc2626;color:#1c0606;border-color:#dc2626}.checklist-actions{width:220px}.checklist-edit-grid{display:flex;flex-direction:column;gap:10px}.checklist-edit-grid label{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--text-muted)}.checklist-edit-grid label span{text-transform:uppercase;letter-spacing:.06em;font-weight:600}.checklist-edit-actions{display:flex;justify-content:flex-end;gap:8px}.checklist-add{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px;margin-bottom:14px}.checklist-empty{text-align:center;padding:40px 16px;color:var(--text-dim)}.checklist-empty p{margin:0;font-size:13px}.checklist-empty-hint{max-width:460px;margin:6px auto 0;color:var(--text-dim);line-height:1.5;font-size:12px}.decision-sidebar{position:relative;display:inline-block;z-index:25}.decision-toggle{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:4px 10px;display:flex;align-items:center;gap:6px;cursor:pointer;font-size:12px;font-weight:600}.decision-toggle:hover{background:var(--border)}.decision-toggle-label{font-size:11px;letter-spacing:.04em}.decision-roles{display:flex;align-items:center;gap:4px}.decision-role-chip{position:relative;display:inline-block;line-height:0}.decision-counter{position:absolute;top:-4px;right:-6px;min-width:16px;height:16px;padding:0 4px;background:#dc2626;color:#fff;font-size:10px;font-weight:700;border-radius:var(--radius);line-height:16px;text-align:center;border:1px solid var(--surface)}.decision-drawer{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);width:min(420px,calc(100vw - 96px));max-height:70vh;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 12px 32px #00000080}.decision-drawer-head{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid var(--border)}.decision-filters{display:flex;gap:4px;flex-wrap:wrap}.decision-filters button{background:transparent;color:var(--text-muted);border:1px solid var(--border-strong);border-radius:var(--radius);padding:3px 10px;font-size:11px;font-weight:600;cursor:pointer;letter-spacing:.04em}.decision-filters button:hover:not(:disabled){background:var(--border);color:var(--text)}.decision-filters button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.decision-filters button:disabled{opacity:.4;cursor:not-allowed}.decision-list{overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:10px}.decision-empty{margin:0;text-align:center;font-size:12px;color:var(--text-dim);padding:24px 10px}.decision-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.decision-card-head{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text-dim);margin-bottom:6px}.decision-asker{font-weight:700;color:var(--text-bright)}.decision-question{margin:0 0 8px;font-size:13px;line-height:1.45;color:var(--text)}.decision-options{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.decision-option{background:#1e3a8a;color:#dbeafe;border:0;border-radius:var(--radius);padding:4px 10px;font-size:12px;cursor:pointer;text-align:left}.decision-option:hover:not(:disabled){background:var(--accent-strong);color:#fff}.decision-custom{display:grid;grid-template-columns:1fr auto;gap:6px}.decision-custom input{font-size:12px}.decision-card-actions{display:flex;justify-content:space-between;margin-top:8px;font-size:11px}@keyframes msg-highlight-pulse{0%{box-shadow:0 0 #fbbf248c}to{box-shadow:0 0 0 8px #fbbf2400}}.msg-highlight{animation:msg-highlight-pulse 1.8s ease-out;border-radius:var(--radius)}.error-bubble-additional{margin:0 0 10px;padding-left:18px;font-size:12px;color:#fecaca;list-style:disc}.error-bubble-additional li{margin-bottom:4px;line-height:1.45}.simple-mode{background:var(--bg-deep)}.simple-mode .messages{padding:24px 40px 32px;gap:22px}.simple-mode .chat-view-tabs{background:#0f172a99}.simple-mode .simple-bubble{display:grid;grid-template-columns:56px 1fr;gap:14px;align-items:start;max-width:760px;margin:0}.simple-mode .simple-bubble-human{margin-left:auto;direction:rtl}.simple-mode .simple-bubble-human .simple-bubble-body{direction:ltr}.simple-mode .simple-bubble-avatar{display:flex;align-items:center;justify-content:center}.simple-mode .simple-bubble-body{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 18px;color:var(--text);font-size:15px;line-height:1.6}.simple-mode .simple-bubble-human .simple-bubble-body{background:var(--surface-3);border-color:var(--border-strong)}.simple-mode .simple-bubble-who{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:6px}.simple-mode .simple-bubble-name{font-weight:700;font-size:14px;letter-spacing:.02em}.simple-mode .simple-bubble-time{font-size:11px;color:var(--text-dim)}.simple-mode .simple-bubble-dev .simple-bubble-body{border-left:4px solid var(--color-dev)}.simple-mode .simple-bubble-qc .simple-bubble-body{border-left:4px solid var(--color-qc)}.simple-mode .simple-bubble-org .simple-bubble-body{border-left:4px solid var(--color-org)}.simple-mode .simple-bubble-assistant .simple-bubble-body{border-left:4px solid var(--color-assistant);background:linear-gradient(180deg,var(--surface) 0%,#11201f 100%)}.simple-mode .simple-bubble-body .body{font-size:15px;line-height:1.6}.simple-mode .simple-bubble-body .body p{margin:6px 0}.simple-mode .simple-bubble-body .body code{background:var(--bg);padding:1px 6px;border-radius:var(--radius)}.simple-mode .simple-mode-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:56px 24px;color:var(--text-bright);gap:12px;max-width:540px;margin:24px auto}.simple-mode .simple-mode-empty svg{color:var(--border-strong)}.simple-mode .simple-mode-empty-avatar{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;color:#fff}.simple-mode .simple-mode-empty h3{margin:0;font-size:18px;color:var(--text)}.simple-mode .simple-mode-empty p{margin:0;line-height:1.55;font-size:14px;color:var(--text-muted)}.simple-mode .project-status-card{display:flex;gap:24px;flex-wrap:wrap;margin:12px 16px 4px;padding:12px 16px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius)}.simple-mode .project-status-field{display:flex;flex-direction:column;gap:2px}.simple-mode .project-status-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim)}.simple-mode .project-status-value{font-size:14px;color:var(--text)}.simple-mode .simple-decisions{max-width:760px;margin:12px auto 16px}.simple-mode .simple-decisions-head{display:flex;align-items:center;justify-content:space-between;padding:0 4px 8px}.simple-mode .simple-decisions-count{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}.simple-mode .simple-decisions-count.has-open{color:#6ee7b7}.simple-mode .simple-decisions-count.no-open{color:var(--text-dim)}.simple-mode .simple-decisions-card{background:var(--surface);border:1px solid var(--border);border-left:3px solid #10b981;border-radius:var(--radius);padding:14px 16px}.simple-mode .simple-decisions-tag{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.simple-mode .simple-decisions-question{margin:0 0 14px;color:var(--text);font-size:15px;line-height:1.5}.simple-mode .simple-decisions-actions{display:flex;flex-wrap:wrap;gap:8px}.simple-mode .simple-decisions-option{flex:1 1 auto;min-width:180px;background:var(--surface-3);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius);padding:10px 14px;font-size:13px;font-weight:500;text-align:left;line-height:1.4;cursor:pointer;transition:background .12s ease,border-color .12s ease}.simple-mode .simple-decisions-option:hover:not(:disabled){background:var(--border-strong);border-color:#475569}.simple-mode .simple-decisions-option:disabled{opacity:.5;cursor:not-allowed}.simple-mode .simple-decisions-agree,.simple-mode .simple-decisions-no,.simple-mode .simple-decisions-submit,.simple-mode .simple-decisions-cancel{font-size:13px;font-weight:600;padding:8px 18px;border-radius:var(--radius);cursor:pointer;border:1px solid transparent;transition:background .12s ease,border-color .12s ease}.simple-mode .simple-decisions-agree{background:#064e3b;color:#6ee7b7;border-color:#047857}.simple-mode .simple-decisions-agree:hover:not(:disabled){background:#047857;color:#d1fae5}.simple-mode .simple-decisions-no{background:var(--border);color:#fca5a5;border-color:var(--border-strong)}.simple-mode .simple-decisions-no:hover:not(:disabled){background:#4b1d1d;border-color:#7f1d1d}.simple-mode .simple-decisions-agree:disabled,.simple-mode .simple-decisions-no:disabled,.simple-mode .simple-decisions-submit:disabled,.simple-mode .simple-decisions-cancel:disabled{opacity:.5;cursor:not-allowed}.simple-mode .simple-decisions-pushback{display:flex;flex-direction:column;gap:8px}.simple-mode .simple-decisions-pushback textarea{width:100%;background:var(--bg);border:1px solid var(--border-strong);color:var(--text);border-radius:var(--radius);padding:10px 12px;font:inherit;font-size:14px;line-height:1.5;resize:vertical;min-height:70px}.simple-mode .simple-decisions-pushback textarea:focus{outline:none;border-color:var(--text-dim)}.simple-mode .simple-decisions-pushback-actions{display:flex;justify-content:flex-end;gap:8px}.simple-mode .simple-decisions-cancel{background:transparent;color:var(--text-muted);border-color:var(--border-strong)}.simple-mode .simple-decisions-cancel:hover:not(:disabled){color:var(--text);border-color:var(--border-strong)}.simple-mode .simple-decisions-submit{background:#1e40af;color:#dbeafe;border-color:var(--accent)}.simple-mode .simple-decisions-submit:hover:not(:disabled){background:var(--accent)}.simple-mode .simple-decisions-answered-pill{background:var(--border);color:var(--text-muted);border:1px solid var(--border-strong);border-radius:var(--radius);padding:4px 10px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.simple-mode .simple-decisions-answered-pill:hover{background:var(--border-strong);color:var(--text);border-color:#475569}.simple-mode .simple-decisions-empty{background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius);padding:14px 16px;color:var(--text-dim);font-size:13px;font-style:italic;text-align:center}.simple-mode .simple-decisions-answered-list{margin-top:12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:10px;display:flex;flex-direction:column;gap:8px}.simple-mode .simple-decisions-answered-row{background:var(--surface);border-left:3px solid #047857;border-radius:var(--radius);padding:10px 12px;display:flex;flex-direction:column;gap:4px}.simple-mode .simple-decisions-answered-q{font-size:13px;color:var(--text-bright);display:flex;gap:8px;align-items:baseline;line-height:1.4}.simple-mode .simple-decisions-answered-check{color:#6ee7b7;font-weight:700}.simple-mode .simple-decisions-answered-a{font-size:12px;color:var(--text-muted);padding-left:18px}.simple-mode .simple-decisions-answered-a em{color:var(--text);font-style:normal;font-weight:500}.simple-mode .simple-decisions-reanswer{align-self:flex-start;margin-left:18px;margin-top:4px;background:transparent;color:#93c5fd;border:1px solid #1e3a8a;border-radius:var(--radius);padding:3px 10px;font-size:11px;cursor:pointer}.simple-mode .simple-decisions-reanswer:hover:not(:disabled){background:#1e3a8a;color:#dbeafe}.simple-mode .simple-decisions-reanswer:disabled{opacity:.5;cursor:not-allowed}.simple-mode .simple-decisions-archive{align-self:flex-end;background:transparent;color:var(--text-muted);border:1px solid var(--border-strong);border-radius:var(--radius);padding:5px 12px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;margin-top:4px}.simple-mode .simple-decisions-archive:hover:not(:disabled){background:#4b1d1d;color:#fca5a5;border-color:#7f1d1d}.simple-mode .simple-decisions-archive:disabled{opacity:.5;cursor:not-allowed}.simple-mode .simple-checklist{max-width:760px;margin:12px auto 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:10px 14px}.simple-mode .simple-checklist.collapsed{padding-bottom:10px}.simple-mode .simple-checklist-head{display:flex;align-items:center;gap:12px}.simple-mode .simple-checklist-toggle{background:transparent;color:var(--text);border:0;font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:4px 0;flex:1;text-align:left}.simple-mode .simple-checklist-title{letter-spacing:.02em}.simple-mode .simple-checklist-gate{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:var(--radius)}.simple-mode .simple-checklist-gate.blocking{background:#d977062e;color:#fbbf24}.simple-mode .simple-checklist-gate.clear{background:#064e3b;color:#6ee7b7}.simple-mode .simple-checklist-edit{font-size:11px;padding:2px 8px}.simple-mode .simple-checklist-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.simple-mode .simple-checklist-item{display:grid;grid-template-columns:1fr auto;gap:8px;padding:8px 10px;background:var(--bg);border-radius:var(--radius);border-left:3px solid var(--border-strong)}.simple-mode .simple-checklist-item.status-pending{border-left-color:#d97706}.simple-mode .simple-checklist-item.status-approved{border-left-color:#16a34a}.simple-mode .simple-checklist-item.status-deferred{border-left-color:#3b82f6}.simple-mode .simple-checklist-item.status-deprecated{border-left-color:#dc2626;opacity:.72}.simple-mode .simple-checklist-name{font-size:13px;color:var(--text);font-weight:500}.simple-mode .simple-checklist-status{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;border-radius:var(--radius);align-self:center;white-space:nowrap}.simple-mode .simple-checklist-status.status-pending{background:#d977062e;color:#fbbf24}.simple-mode .simple-checklist-status.status-approved{background:#064e3b;color:#6ee7b7}.simple-mode .simple-checklist-status.status-deferred{background:var(--surface-3);color:#93c5fd}.simple-mode .simple-checklist-status.status-deprecated{background:#4b1d1d;color:#fca5a5}.simple-mode .simple-checklist-rationale{grid-column:1 / -1;font-size:11.5px;color:var(--text-muted);margin-top:4px;font-style:italic}.chat-view-tabs{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:8px 14px 0;border-bottom:1px solid var(--border);position:relative}.chat-view-tabs-left{display:flex;align-items:center;gap:4px;justify-self:start}.chat-view-tabs-center{display:flex;align-items:center;justify-self:center;padding-bottom:4px}.chat-view-tabs-right{justify-self:end;padding-right:4px;padding-bottom:4px}.chat-view-tab{background:transparent;color:var(--text-muted);border:0;padding:6px 14px;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.chat-view-tab:hover{color:var(--text)}.chat-view-tab.active{color:var(--text);border-bottom-color:var(--accent)}.planning-tab-group{display:inline-flex;align-items:center;gap:4px;position:relative;padding:0 8px 0 2px;border-radius:var(--radius) var(--radius) 0 0;background:#94a3b80d;box-shadow:inset 0 1px 0 var(--border-strong)}.planning-tab-group:before{content:"PLANNING";position:absolute;left:8px;top:-1px;transform:translateY(-100%);font-size:8px;line-height:8px;letter-spacing:.14em;font-weight:700;color:#64748b;pointer-events:none}.tts-toggle{background:transparent;border:1px solid var(--border, #d0d0d0);border-radius:var(--radius);padding:2px 8px;font-size:.95rem;line-height:1.4;cursor:pointer;opacity:.7}.tts-toggle:hover{opacity:1}.tts-toggle.on{opacity:1;border-color:#0d9488;background:#0d94881f}:root{--bld-bg-top: var(--bg-deep);--bld-bg-bottom: var(--bg);--bld-surface: var(--surface);--bld-surface-2: var(--surface-3);--bld-border: var(--border);--bld-border-soft: var(--border);--bld-text: var(--text);--bld-text-muted: var(--text-muted);--bld-text-dim: var(--text-dim);--bld-accent: var(--accent, #2f81f7)}.builder-panel{display:flex;flex-direction:column;height:100%;min-height:0;flex:1;background:linear-gradient(180deg,var(--bld-bg-top) 0%,var(--bld-bg-bottom) 100%);color:var(--bld-text)}.chat-view-tab.builder-working{color:#3fb950}.chat-view-tab.builder-working:hover{color:#56d364}.chat-view-tab.builder-working.active{color:#3fb950;border-bottom-color:#2ea043}.chat-view-tab.builder-awaiting{color:#ff7b72}.chat-view-tab.builder-awaiting:hover{color:#ff9a93}.chat-view-tab.builder-awaiting.active{color:#ff7b72;border-bottom-color:#f85149}.builder-tab-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:7px;vertical-align:middle}.builder-tab-dot.working{background:#3fb950;color:#3fb950;animation:work-ripple 1.3s ease-out infinite}.builder-tab-dot.awaiting{background:#ff7b72}.chat-view-tab.flow-glow{color:var(--text-bright);animation:flow-tab-glow 2s ease-in-out infinite}@keyframes flow-tab-glow{0%,to{text-shadow:0 0 0 transparent}50%{text-shadow:0 0 10px color-mix(in srgb,var(--accent) 85%,transparent)}}@media (prefers-reduced-motion: reduce){.chat-view-tab.flow-glow{animation:none;text-shadow:0 0 8px color-mix(in srgb,var(--accent) 60%,transparent)}.card-pill-stage .stage-dot{animation:none!important}}.builder-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border-bottom:1px solid var(--bld-border);flex-wrap:wrap}.builder-header-left,.builder-header-right{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.builder-tool-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:30px;height:28px;padding:0;border:1px solid var(--bld-border);border-radius:var(--radius);background:var(--bld-surface-2);color:var(--bld-text);font-size:14px;line-height:1;cursor:pointer}.builder-tool-btn:hover:not(:disabled){border-color:var(--bld-accent);background:#1c2c47}.builder-tool-btn.is-on{border-color:var(--bld-accent);background:#388bff2e}.builder-tool-btn:disabled{opacity:.4;cursor:not-allowed}@media (pointer: coarse){.builder-tool-btn{width:40px;height:40px;font-size:16px}}.builder-tool-icon{display:inline-block}.builder-tool-badge{position:absolute;top:-5px;right:-5px;min-width:15px;height:15px;padding:0 3px;border-radius:var(--radius);background:var(--bld-accent);color:#fff;font-size:9px;font-weight:700;line-height:15px;text-align:center}.builder-commit-status{padding:6px 12px;font-size:.8rem;color:var(--bld-text-dim);border-top:1px solid var(--bld-border-soft);background:var(--bld-surface-2)}.builder-title{font-weight:600;font-size:.95rem;color:var(--bld-text)}.builder-header.is-collapsed{padding-top:5px;padding-bottom:5px}.builder-header-toggle{display:inline-flex;align-items:center;gap:5px;background:transparent;border:1px solid var(--bld-border);color:var(--bld-text-muted);border-radius:var(--radius);padding:4px 10px;font-size:.78rem;font-weight:600;cursor:pointer}.builder-header-toggle:hover{color:var(--bld-text);background:transparent}.builder-expand-all{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;color:var(--bld-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none}.builder-expand-all input{accent-color:var(--bld-accent)}.builder-model-select,.builder-warm-toggle{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;color:var(--bld-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none}.builder-model-label{color:var(--bld-text-dim)}.builder-model-select select{background:var(--bld-surface-2);color:var(--bld-text);border:1px solid var(--bld-border);border-radius:var(--radius);padding:3px 6px;font-size:.8rem;cursor:pointer}.builder-model-select select:disabled{opacity:.5;cursor:not-allowed}.builder-warm-toggle input{accent-color:var(--bld-accent)}.builder-warm-toggle.is-locked{opacity:.4;cursor:not-allowed;pointer-events:none}.builder-stop-btn,.builder-restart-btn,.builder-send-btn,.builder-load-spec-btn{border:1px solid var(--bld-border);border-radius:var(--radius);padding:6px 14px;font-size:.85rem;cursor:pointer;background:var(--bld-surface-2);color:var(--bld-text)}.builder-stop-btn{color:#f8a3a3;border-color:#5b2626;background:#2a1416}.builder-restart-btn{color:#9cc4ff;border-color:#244065;background:#12243d}.builder-load-spec-btn{color:#b3c5d8;border-color:#2e4060}.builder-load-spec-btn:hover:not(:disabled){background:#1c2c47}.builder-send-btn{background:var(--bld-accent);color:#fff;border-color:var(--bld-accent)}.builder-send-btn:hover:not(:disabled){background:#3d8bff}.builder-send-btn:disabled,.builder-stop-btn:disabled,.builder-restart-btn:disabled,.builder-load-spec-btn:disabled{opacity:.45;cursor:not-allowed}.builder-gauge{display:inline-flex;align-items:center;gap:8px;font-size:.75rem;color:var(--bld-text-muted)}.builder-gauge-track{width:90px;height:6px;border-radius:var(--radius);background:var(--surface-3);overflow:hidden}.builder-gauge-fill{height:100%;transition:width .3s ease}.builder-gauge-green .builder-gauge-fill{background:#2ea043}.builder-gauge-yellow .builder-gauge-fill{background:#d29922}.builder-gauge-red .builder-gauge-fill{background:#f85149}.builder-gauge-yellow .builder-gauge-label{color:#e3b341}.builder-gauge-red .builder-gauge-label{color:#ff7b72;font-weight:600}.builder-gauge-working .builder-gauge-fill{animation:builder-gauge-pulse 1.2s ease-in-out infinite}.builder-gauge-working .builder-gauge-label{color:#3fb950;font-style:italic}@keyframes builder-gauge-pulse{0%,to{opacity:1}50%{opacity:.45}}.builder-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;font-size:.85rem;background:#3a2d0f;color:#f0c674;border-bottom:1px solid #5a4715}.builder-banner-text{min-width:0}.builder-banner-restart{flex:none;padding:4px 14px;font-size:.8rem;font-weight:600;color:#9cc4ff;background:#12243d;border:1px solid #244065;border-radius:var(--radius);cursor:pointer}.builder-banner-restart:hover:not(:disabled){background:#1a3050}.builder-banner-restart:disabled{opacity:.6;cursor:default}.builder-banner.is-error{background:#3a1717;color:#ff9a93;border-bottom-color:#5b2626}.builder-transcript{flex:1;min-height:0;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:8px}.builder-empty{color:var(--bld-text-muted);font-size:.9rem;line-height:1.5;max-width:540px;margin:24px auto;text-align:center}.builder-empty code{background:var(--surface-3);color:#d6dee8;padding:1px 5px;border-radius:var(--radius);font-size:.85em}.builder-empty-ready{font-size:1.05rem;font-weight:600;color:var(--bld-text);margin-bottom:8px}.builder-msg{font-size:.9rem;line-height:1.5}.builder-text{padding:8px 12px;border-radius:var(--radius);background:var(--bld-surface);border:1px solid var(--bld-border-soft);color:var(--bld-text)}.builder-tool-use{border:1px solid var(--bld-border);border-radius:var(--radius);background:#12171f;overflow:hidden}.builder-tool-head{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:7px 12px;background:transparent;border:none;cursor:pointer;font-size:.85rem;color:var(--bld-text)}.builder-tool-head:hover{background:#1b2330}.builder-tool-caret{color:var(--bld-text-dim);width:12px;display:inline-block}.builder-tool-name{font-family:var(--font-mono);font-weight:600;color:#9cc4ff}.builder-tool-meta{color:var(--bld-text-dim);font-size:.8rem}.builder-tool-body{padding:4px 12px 10px 32px;border-top:1px solid var(--bld-border-soft)}.builder-tool-empty{color:var(--bld-text-dim);font-style:italic;font-size:.8rem}.builder-tool-result{border-left:3px solid #3a4350;margin-left:16px;background:var(--bld-surface);border-radius:0 var(--radius) var(--radius) 0;color:var(--bld-text);overflow:hidden}.builder-tool-result.is-error{border-left-color:#f85149;background:#2a1618}.builder-tool-result.is-error .builder-tool-name{color:#ff9a93}.builder-tool-result.is-orphan{border-left-style:dashed}.builder-tool-result-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;color:var(--bld-text-muted);margin-bottom:3px}.builder-orphan-tag{color:#e3b341;text-transform:none;letter-spacing:0}.builder-system{padding:6px 12px;font-size:.82rem;color:var(--bld-text-muted);background:var(--bld-surface-2);border-radius:var(--radius);text-align:center}.builder-system.is-error{background:#2a1618;color:#ff9a93}.builder-msg pre,.builder-tool-body pre{background:var(--bg);border:1px solid var(--bld-border);border-radius:var(--radius);padding:8px 10px;overflow-x:auto}.builder-msg code,.builder-tool-body code{color:#d6dee8}.builder-msg :not(pre)>code{background:var(--surface-3);padding:1px 5px;border-radius:var(--radius)}.builder-msg a{color:#6cb6ff}.builder-composer{display:flex;gap:8px;padding:10px 12px;border-top:1px solid var(--bld-border);align-items:flex-end}.builder-input{flex:1;resize:vertical;min-height:44px;max-height:160px;padding:8px 10px;border:1px solid var(--bld-border);border-radius:var(--radius);font-family:inherit;font-size:.9rem;background:var(--bg);color:var(--bld-text)}.builder-input::placeholder{color:var(--bld-text-dim)}.builder-input:focus{outline:none;border-color:var(--bld-accent);box-shadow:0 0 0 2px #2f81f740}.builder-composer .builder-send-btn{align-self:stretch;min-width:72px}.builder-changes{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 12px;border-top:1px solid var(--bld-border-soft);background:var(--bld-surface-2);font-size:.82rem}.builder-changes-head{display:inline-flex;align-items:center;gap:6px;background:transparent;border:none;cursor:pointer;color:var(--bld-text);font-size:.82rem;padding:2px 4px}.builder-changes-caret{color:var(--bld-text-dim);width:10px}.builder-changes-actions{margin-left:auto;display:inline-flex;align-items:center;gap:10px}.builder-changes-note{color:var(--bld-text-dim);font-size:.78rem}.builder-commit-btn{border:1px solid #2ea043;color:#3fb950;background:transparent;border-radius:var(--radius);padding:4px 12px;font-size:.8rem;cursor:pointer}.builder-commit-btn:disabled{opacity:.5;cursor:not-allowed}.builder-changes-list{margin:0;padding:8px 12px;list-style:none;border-top:1px solid var(--bld-border-soft);background:var(--bld-surface-2);max-height:30vh;overflow-y:auto}.builder-changes-list li{display:flex;gap:8px;align-items:baseline;padding:1px 0}.builder-changes-list code{color:#9cc4ff;font-family:var(--font-mono);font-size:.78rem}.builder-changes-count{color:var(--bld-text-dim);font-size:.72rem}.builder-build-output{flex-basis:100%;margin:4px 0 2px}.builder-build-output>summary{cursor:pointer;color:var(--bld-text-dim);font-size:.78rem;-webkit-user-select:none;user-select:none}.builder-build-output>pre{margin:6px 0 0;max-height:220px;overflow:auto;background:#00000040;border:1px solid var(--bld-border, #30363d);border-radius:var(--radius);padding:8px 10px;font-family:var(--font-mono);font-size:.74rem;line-height:1.45;white-space:pre-wrap;word-break:break-word;color:var(--bld-text-dim)}.builder-mic-btn{flex:none;width:40px;align-self:stretch;display:inline-flex;align-items:center;justify-content:center;background:var(--bld-surface, var(--bg));color:var(--bld-text-muted, var(--text-bright));border:1px solid var(--bld-border, var(--border));border-radius:var(--radius);cursor:pointer}.builder-mic-btn:hover:not(:disabled){color:var(--bld-text, #fff);background:var(--bld-surface, var(--bg))}.builder-mic-btn:disabled{opacity:.4}.builder-mic-btn.listening{background:#16a34a;border-color:#16a34a;color:#fff}.builder-write-inline{display:flex;align-items:center;gap:10px;margin:0 12px 8px;padding:9px 12px;border-radius:var(--radius);font-size:.82rem;line-height:1.35;cursor:pointer;-webkit-user-select:none;user-select:none;background:#2a1f0c;border:1px solid #5a4715;color:#f0c674}.builder-write-inline.is-on{background:#0f2a16;border-color:#1f5b2e;color:#6ee7a0}.builder-write-inline input[type=checkbox]{width:20px;height:20px;min-width:20px;flex:none;margin:0;padding:0;accent-color:var(--bld-accent)}.builder-write-inline span{flex:1;min-width:0;white-space:normal}.builder-header-actions{display:inline-flex;align-items:center;gap:8px}.builder-viewtoggle{display:inline-flex;border:1px solid var(--bld-border);border-radius:var(--radius);overflow:hidden}.builder-viewtoggle button{background:transparent;color:var(--bld-text-muted);border:none;padding:4px 12px;font-size:.78rem;font-weight:600;cursor:pointer}.builder-viewtoggle button.active{background:var(--bld-accent);color:#fff}.builder-preview-wrap{flex:1;min-height:0;display:flex;flex-direction:column}.builder-preview-bar{flex:none;display:flex;align-items:center;justify-content:space-between;padding:6px 12px;border-bottom:1px solid var(--bld-border);background:var(--bld-surface)}.builder-preview-label{font-size:.78rem;color:var(--bld-text-muted)}.builder-preview-refresh{background:var(--bld-surface-2);color:var(--bld-text);border:1px solid var(--bld-border);border-radius:var(--radius);padding:3px 10px;font-size:.78rem;cursor:pointer}.builder-preview-frame{flex:1;min-height:0;width:100%;border:0;background:#fff}.builder-tool-name,.builder-tool-result,.builder-msg pre,.builder-msg code{font-variant-numeric:tabular-nums}.upgrade-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:9999}.upgrade-modal{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);padding:2.5rem 2rem;max-width:420px;width:90%;text-align:center;box-shadow:0 24px 48px #0009}.upgrade-modal h2{margin:0 0 .75rem;font-size:1.25rem;color:var(--text)}.upgrade-body{color:var(--text-bright);font-size:14px;line-height:1.6;margin:0 0 .5rem}.upgrade-hint{color:var(--text-dim);font-size:12px;margin:0 0 1.5rem}.upgrade-actions{display:flex;justify-content:center;gap:.75rem}.free-landing,.claude-flow-page{min-height:100vh;background:var(--bg);color:var(--text);display:flex;flex-direction:column}.free-landing-header{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;border-bottom:1px solid var(--border);background:var(--surface-2)}.free-landing-brand{font-size:15px;font-weight:700;color:var(--text);letter-spacing:-.01em}.free-landing-user{display:flex;align-items:center;gap:10px}.free-landing-email{font-size:13px;color:var(--text-dim)}.free-landing-main{flex:1;display:flex;flex-direction:column;align-items:center;padding:3rem 1rem 2rem}.free-landing-title{font-size:1.75rem;font-weight:700;margin:0 0 .5rem;text-align:center}.free-landing-subtitle{font-size:15px;color:var(--text-muted);margin:0 0 2.5rem;text-align:center}.plan-cards{display:flex;gap:1.5rem;flex-wrap:wrap;justify-content:center;width:100%;max-width:760px}.plan-card{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);padding:1.75rem 1.5rem;flex:1 1 300px;max-width:340px;display:flex;flex-direction:column;gap:.75rem;position:relative}.plan-card-developer{border-color:var(--accent);box-shadow:0 0 0 1px #2563eb40}.plan-card-badge{display:inline-block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);background:var(--border);border-radius:var(--radius);padding:2px 7px;align-self:flex-start}.plan-card-badge-dev{color:#93c5fd;background:#2563eb26}.plan-card h2{margin:0;font-size:1.2rem;color:var(--text)}.plan-card-pitch{font-size:13px;color:var(--text-muted);line-height:1.5;margin:0}.plan-card-features{list-style:none;padding:0;margin:.25rem 0 0;display:flex;flex-direction:column;gap:.4rem;flex:1}.plan-card-features li{font-size:13px;color:var(--text-bright);padding-left:1.25em;position:relative}.plan-card-features li:before{content:"✓";position:absolute;left:0;color:var(--border-strong)}.plan-card-developer .plan-card-features li:before{color:var(--accent)}.plan-card-cta{margin-top:.5rem;padding:8px 16px;font-size:14px;border-radius:var(--radius);cursor:pointer;background:var(--border-strong);color:var(--text);border:0;width:100%}.plan-card-cta:hover{background:var(--border-strong)}.plan-card-cta-dev{background:var(--accent);color:#fff}.plan-card-cta-dev:hover{background:var(--accent-strong)}.free-landing-footer-note{margin-top:2rem;font-size:12px;color:var(--border-strong);text-align:center}.flow-header{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;border-bottom:1px solid var(--border);background:var(--surface-2);flex-shrink:0}.flow-header-left{display:flex;align-items:center;gap:12px}.flow-header-brand{font-size:14px;font-weight:600;color:var(--text)}.flow-header-right{display:flex;align-items:center;gap:10px}.flow-header-user{font-size:13px;color:var(--text-dim)}.flow-main{flex:1;display:flex;flex-direction:column;align-items:center;padding:2.5rem 1rem 2rem;max-width:900px;width:100%;align-self:center}.flow-intro{text-align:center;margin-bottom:2rem}.flow-title{font-size:1.5rem;font-weight:700;margin:0 0 .5rem}.flow-subtitle{font-size:14px;color:var(--text-muted);max-width:560px;line-height:1.55;margin:0 auto}.flow-provider-picker{display:flex;gap:6px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);padding:4px;margin-bottom:2rem}.flow-provider-btn{background:transparent;border:0;color:var(--text-muted);font-size:13px;font-weight:500;padding:6px 14px;border-radius:var(--radius);cursor:pointer;display:flex;align-items:center;gap:6px;transition:background .1s}.flow-provider-btn:hover{background:var(--border);color:var(--text)}.flow-provider-btn.active{background:var(--accent);color:#fff}.flow-provider-soon{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;background:var(--border-strong);color:var(--text-muted);border-radius:var(--radius);padding:1px 4px}.flow-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;width:100%}@media (max-width: 600px){.flow-cards{grid-template-columns:1fr}}.flow-card{border-width:1px;border-style:solid;border-radius:var(--radius);padding:1.25rem;display:flex;flex-direction:column;gap:.6rem}.flow-card-header{display:flex;align-items:baseline;gap:8px}.flow-card-role{font-size:15px;font-weight:700}.flow-card-tagline{font-size:12px;color:var(--text-dim)}.flow-card-desc{font-size:13px;color:var(--text-muted);line-height:1.5;margin:0;flex:1}.flow-card-btn{border:0;color:#fff;font-size:13px;font-weight:600;padding:7px 14px;border-radius:var(--radius);cursor:pointer;margin-top:.25rem;transition:filter .1s}.flow-card-btn:hover{filter:brightness(1.12)}.flow-card-btn:disabled{opacity:.6;cursor:not-allowed;filter:none}.flow-coming-soon{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);padding:2rem 2.5rem;text-align:center;max-width:520px;width:100%}.flow-coming-soon-title{font-size:1.1rem;font-weight:700;margin:0 0 .75rem;color:var(--text)}.flow-coming-soon-body{font-size:14px;color:var(--text-muted);line-height:1.55;margin:0 0 1rem}.flow-coming-soon-link{display:inline-block;font-size:13px;color:var(--accent);text-decoration:none;margin-bottom:.75rem}.flow-coming-soon-link:hover{text-decoration:underline}.flow-coming-soon-tip{font-size:12px;color:var(--border-strong);margin:0}.testing-panel{display:flex;flex-direction:column;height:100%;min-height:0;overflow-y:auto;padding:14px 16px 0;gap:12px}.testing-panel.compact{padding:12px 12px 0}.testing-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none}.testing-title{font-size:15px;font-weight:700;color:var(--text);display:flex;align-items:center;gap:10px}.testing-progress{font-size:11px;font-weight:600;color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);padding:2px 8px}.testing-source{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:var(--radius);padding:2px 8px}.testing-source.builder{color:#56d364;background:#2ea04324}.testing-source.generated{color:var(--text-muted);background:#94a3b81a}.testing-regen{flex:none;background:var(--surface-2);color:var(--text-bright);border:1px solid var(--border);border-radius:var(--radius);padding:6px 12px;font-size:12.5px;font-weight:600;cursor:pointer}.testing-regen:hover:not(:disabled){border-color:var(--accent);color:var(--text)}.testing-regen:disabled{opacity:.6;cursor:default}.testing-delivery{flex:none;background:linear-gradient(180deg,#2563eb1a,#2563eb05);border:1px solid #1f3350;border-radius:var(--radius);padding:12px 14px}.testing-delivery.collapsed{padding:6px 14px}.testing-delivery-head{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;background:transparent;border:0;padding:0;cursor:pointer;font-size:13.5px;font-weight:700;color:#cfe3ff;text-align:left}.testing-delivery-chevron{font-size:11px;color:#7f93ab}.testing-delivery-sub{font-size:12.5px;color:var(--text-muted);line-height:1.45;margin:6px 0 0;text-align:center}.testing-delivery-body{display:flex;flex-direction:column;gap:12px;align-items:center;text-align:center;margin-top:10px}.testing-qr{flex:none;width:124px;height:124px;background:#fff;border-radius:var(--radius);padding:6px;image-rendering:pixelated}.testing-delivery-actions{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0}.testing-open-btn{display:inline-block;background:var(--accent);color:#fff;text-decoration:none;border-radius:var(--radius);padding:8px 14px;font-size:13px;font-weight:600;text-align:center}.testing-open-btn:hover{background:var(--accent-strong)}.testing-copy-btn{background:var(--border);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius);padding:7px 12px;font-size:12.5px;cursor:pointer}.testing-copy-btn:hover{border-color:var(--border-strong)}.testing-delivery-built{font-size:11.5px;color:var(--text-muted)}.testing-build-btn{background:var(--border);color:var(--text);border:1px solid #3b4a5e;border-radius:var(--radius);padding:7px 12px;font-size:12.5px;font-weight:600;cursor:pointer}.testing-build-btn:hover:not(:disabled){border-color:var(--accent)}.testing-build-btn:disabled{opacity:.6;cursor:default}.testing-delivery-empty .testing-build-btn{margin-top:8px}.testing-delivery-hint{font-size:11px;color:var(--text-dim);line-height:1.4}.testing-delivery-hint code{background:var(--bg);padding:0 4px;border-radius:var(--radius)}.testing-delivery-empty{margin-top:10px;font-size:12.5px;color:var(--text-muted);background:var(--bg);border:1px dashed var(--border);border-radius:var(--radius);padding:10px 12px}.testing-empty{color:var(--text-muted);text-align:center;margin:28px auto;max-width:320px}.testing-empty p{margin:4px 0}.testing-empty-sub{font-size:12.5px;color:var(--text-dim)}.testing-items{display:flex;flex-direction:column;gap:10px}.testing-item{background:var(--surface-2);border:1px solid var(--border);border-left:3px solid var(--border);border-radius:var(--radius);padding:11px 13px}.testing-item.is-pass{border-left-color:#2ea043}.testing-item.is-fail{border-left-color:#f85149}.testing-item.is-skip{border-left-color:#9e6a03}.testing-item-area{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);background:var(--surface-3);border-radius:var(--radius);padding:1px 6px;margin-bottom:5px}.testing-item-titlerow{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.testing-item-title{font-size:14px;font-weight:600;color:var(--text)}.testing-item-speak{flex:none;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:2px 8px;font-size:14px;line-height:1.3;cursor:pointer}.testing-item-speak:hover{border-color:var(--accent)}.testing-item-speak:active{background:var(--border)}.testing-item-how{font-size:13px;color:#b6c2cf;line-height:1.45;margin-top:4px}.testing-item-expected{font-size:12.5px;color:var(--text-muted);line-height:1.4;margin-top:4px}.testing-item-expected span{color:#6ee7b7;font-weight:600}.testing-item-verdict{display:flex;gap:6px;margin-top:10px}.testing-verdict-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--bg);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius);padding:7px 10px;font-size:12.5px;font-weight:600;cursor:pointer}.testing-verdict-glyph{font-weight:800}.testing-verdict-btn.v-pass.active{background:#2ea04329;border-color:#2ea043;color:#56d364}.testing-verdict-btn.v-fail.active{background:#f8514929;border-color:#f85149;color:#ff7b72}.testing-verdict-btn.v-skip.active{background:#9e6a0329;border-color:#9e6a03;color:#e3b341}.testing-verdict-btn:hover:not(.active){border-color:var(--border-strong);color:var(--text-bright)}.testing-item-note{width:100%;margin-top:8px;resize:vertical;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:7px 10px;font-size:13px;line-height:1.4;font-family:inherit}.testing-item-note:focus{outline:none;border-color:var(--accent)}.testing-submit-bar{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0 calc(10px + env(safe-area-inset-bottom));margin-top:4px;background:linear-gradient(180deg,rgba(13,17,23,0),var(--bg) 40%)}.testing-submit-summary{display:flex;gap:6px}.testing-pill{font-size:11px;font-weight:700;border-radius:var(--radius);padding:3px 9px}.testing-pill.fail{background:#f8514929;color:#ff7b72}.testing-pill.skip{background:#9e6a0329;color:#e3b341}.testing-pill.pass{background:#2ea04329;color:#56d364}.testing-submit-btn{flex:none;background:var(--accent);color:#fff;border:none;border-radius:var(--radius);padding:10px 18px;font-size:13.5px;font-weight:700;cursor:pointer}.testing-submit-btn:hover:not(:disabled){background:var(--accent-strong)}.testing-submit-btn:disabled{opacity:.5;cursor:default}.testing-panel.compact .testing-qr{width:108px;height:108px}.testing-panel.compact .testing-delivery-body{flex-direction:column}.np-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#02060ca8;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.np-modal{width:560px;max-width:100%;max-height:90vh;overflow-y:auto;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);padding:20px 22px}.np-title{margin:0 0 14px;font-size:18px;color:var(--text)}.np-label{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin:14px 0 7px}.np-name{width:100%;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;font-size:15px}.np-name:focus{outline:none;border-color:var(--accent)}.np-types{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.np-type{display:grid;grid-template-columns:32px 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;text-align:left;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:11px 12px;cursor:pointer}.np-type:hover{border-color:var(--border-strong)}.np-type.active{border-color:var(--accent);background:#2563eb1a}.np-type-glyph{grid-row:1 / 3;font-size:24px;line-height:1}.np-type-label{font-size:14px;font-weight:700;color:var(--text)}.np-type-blurb{font-size:11.5px;color:var(--text-muted);line-height:1.35}.np-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.np-cancel{background:transparent;color:var(--text-muted);border:1px solid var(--border-strong);border-radius:var(--radius);padding:9px 16px;font-size:13.5px;cursor:pointer}.np-create{background:var(--accent);color:#fff;border:none;border-radius:var(--radius);padding:9px 18px;font-size:13.5px;font-weight:700;cursor:pointer}.np-create:disabled{opacity:.5;cursor:default}.mapp-types{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:10px 0}.mapp-type{display:flex;flex-direction:column;align-items:flex-start;gap:2px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:9px 11px;cursor:pointer;text-align:left}.mapp-type.active{border-color:var(--accent);background:#2563eb1a}.mapp-type-glyph{font-size:20px}.mapp-type-label{font-size:13px;font-weight:700;color:var(--text)}.download-panel{display:flex;flex-direction:column;height:100%;min-height:0;overflow-y:auto;padding:18px 18px 24px;gap:16px}.download-header h2{margin:0;font-size:17px;font-weight:800;color:var(--text-bright)}.download-header p{margin:4px 0 0;font-size:13px;color:var(--text-muted)}.dl-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;max-width:560px}.dl-step{display:grid;grid-template-columns:30px 1fr;column-gap:12px;align-items:start;background:var(--surface-2);border:1px solid var(--border);border-left:3px solid var(--border);border-radius:var(--radius);padding:13px 15px;transition:border-color .15s,background .15s,opacity .15s}.dl-step.is-current{border-color:var(--accent);border-left-color:var(--accent);background:#2563eb14;box-shadow:0 0 0 1px var(--accent) inset}.dl-step.is-done{border-left-color:#2ea043}.dl-step.is-locked{opacity:.5}.dl-step-marker{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;background:var(--bg);border:1px solid var(--border-strong);color:var(--text-muted)}.dl-step.is-current .dl-step-marker{border-color:var(--accent);color:var(--text-bright)}.dl-step.is-done .dl-step-marker{background:#2ea043;border-color:#2ea043;color:#fff}.dl-step-body{min-width:0}.dl-step-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--text)}.dl-step-now{font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#fff;background:var(--accent);border-radius:var(--radius);padding:2px 7px}.dl-step-desc{font-size:12.5px;color:var(--text-muted);line-height:1.45;margin-top:3px}.dl-step-control{margin-top:10px}.dl-step-btn{display:inline-flex;align-items:center;gap:6px;background:var(--border);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius);padding:9px 16px;font-size:13px;font-weight:700;cursor:pointer;text-decoration:none}.dl-step-btn:hover:not(:disabled){border-color:var(--accent)}.dl-step-btn:disabled{opacity:.55;cursor:default}.dl-step-btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.dl-step-btn.primary:hover:not(:disabled){background:var(--accent-strong)}.dl-step-link{background:none;border:none;color:var(--accent);font-size:12.5px;font-weight:600;cursor:pointer;padding:4px 0}.dl-step-link:hover{text-decoration:underline}.dl-download{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap}.dl-qr{width:132px;height:132px;border-radius:var(--radius);background:#fff;padding:6px}.dl-download-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.dl-hint{font-size:11px;color:var(--text-dim);line-height:1.4;max-width:260px}.dl-hint code{background:var(--bg);padding:0 4px;border-radius:var(--radius)}.build-ready-cta{display:flex;align-items:center;gap:10px;width:100%;flex:none;border:none;border-top:1px solid var(--accent);border-bottom:1px solid var(--accent);background:linear-gradient(180deg,#2563eb29,#2563eb14);color:var(--text-bright);padding:10px 16px;font-size:13.5px;font-weight:700;cursor:pointer;text-align:left}.build-ready-cta:hover{background:#2563eb38}.build-ready-check{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#2ea043;color:#fff;font-size:12px;font-weight:800;flex:none}.build-ready-label{flex:1 1 auto}.build-ready-go{color:var(--accent);font-weight:800;flex:none}.mrc-download{padding:0}.mrc-download .download-panel{flex:1;min-height:0;height:100%}.chat-view-tab.needs-attention:after{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-left:6px;vertical-align:middle}.testing-header-actions{display:flex;gap:8px;align-items:center;flex:none}.testing-run-btn{flex:none;background:var(--accent-soft);color:var(--accent);border:1px solid transparent;border-radius:var(--radius);padding:6px 12px;font-size:12.5px;font-weight:700;cursor:pointer}.testing-run-btn:hover{border-color:var(--accent)}.testing-run-btn.active{background:var(--surface-2);color:var(--text-bright);border-color:var(--border)}.testing-runner{display:flex;flex-direction:column;gap:14px;flex:1;min-height:0}.testing-runner-top{display:flex;align-items:center;gap:12px}.testing-runner-exit{background:transparent;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);padding:5px 10px;font-size:12px;cursor:pointer}.testing-runner-exit:hover{color:var(--text-bright);border-color:var(--accent)}.testing-runner-progress{display:flex;align-items:center;gap:8px;flex:1;font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums}.testing-runner-bar{flex:1;height:6px;border-radius:var(--radius);background:var(--surface-2);overflow:hidden}.testing-runner-bar-fill{height:100%;border-radius:var(--radius);background:var(--accent);transition:width .25s ease}.testing-runner-speak{display:inline-flex;align-items:center;gap:6px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);padding:5px 12px;font-size:12px;font-weight:600;cursor:pointer}.testing-runner-speak.on{color:var(--accent);border-color:var(--accent)}.testing-runner-card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius);padding:20px 22px;display:flex;flex-direction:column;gap:12px;max-width:560px;width:100%;margin:0 auto}.testing-runner-card.is-pass{border-color:#3fb95080}.testing-runner-card.is-fail{border-color:#f851498c}.testing-runner-card.is-skip{border-color:#94a3b866}.testing-runner-count{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.testing-runner-title{margin:0;font-size:18px;color:var(--text-bright);line-height:1.35}.testing-runner-how{margin:0;font-size:14px;line-height:1.55;color:var(--text)}.testing-runner-expected{margin:0;font-size:13px;color:var(--text-muted)}.testing-runner-expected span{color:#56d364;font-weight:700;margin-right:4px}.testing-runner-verdicts{display:flex;gap:10px}.testing-runner-verdict{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);color:var(--text-bright);font-size:15px;font-weight:700;cursor:pointer}.testing-runner-verdict.v-pass:hover,.testing-runner-verdict.v-pass.active{background:#2ea0432e;border-color:#3fb950;color:#56d364}.testing-runner-verdict.v-fail:hover,.testing-runner-verdict.v-fail.active{background:#f8514929;border-color:#f85149;color:#ff7b72}.testing-runner-verdict.v-skip:hover,.testing-runner-verdict.v-skip.active{background:#94a3b824;border-color:#94a3b8;color:#cbd5e1}.testing-runner-nav{display:flex;align-items:center;justify-content:space-between;gap:10px}.testing-runner-nav>button{background:transparent;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);padding:6px 12px;font-size:12.5px;cursor:pointer}.testing-runner-nav>button:hover:not(:disabled){color:var(--text-bright);border-color:var(--accent)}.testing-runner-nav>button:disabled{opacity:.4;cursor:default}.testing-runner-hint{font-size:11px;color:var(--text-muted);letter-spacing:.02em}.testing-runner-done{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px 16px;text-align:center}.testing-runner-done h3{margin:0;color:var(--text-bright)}.testing-runner-done p{margin:0;color:var(--text-muted);font-size:13.5px}@media (max-width: 640px){.testing-runner-card{padding:16px}.testing-runner-verdict{min-height:56px}.testing-runner-hint{display:none}}.testing-media{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.testing-media-thumb{position:relative;display:inline-flex}.testing-media-thumb img{height:54px;width:auto;max-width:96px;object-fit:cover;border-radius:var(--radius);border:1px solid var(--border);display:block}.testing-media-thumb img:hover{border-color:var(--accent)}.testing-media-thumb>button{position:absolute;top:-6px;right:-6px;width:18px;height:18px;border-radius:50%;border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);font-size:11px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.testing-media-thumb>button:hover{color:#ff7b72;border-color:#f85149}.testing-media-add{background:transparent;border:1px dashed var(--border);border-radius:var(--radius);color:var(--text-muted);padding:6px 10px;font-size:12px;font-weight:600;cursor:pointer}.testing-media-add:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.testing-media-add:disabled{opacity:.5;cursor:default}.testing-phone{flex:none;border:1px solid var(--border);border-radius:var(--radius);padding:6px 14px;background:var(--surface-1)}.testing-phone.open{padding-bottom:12px}.testing-phone-head{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;background:transparent;border:0;padding:6px 0;cursor:pointer;font-size:13.5px;font-weight:700;color:var(--text-bright);text-align:left}.testing-phone-body{display:flex;align-items:center;gap:14px;padding-top:6px}.testing-phone-body p{margin:0;font-size:12.5px;color:var(--text-muted);line-height:1.5;max-width:340px}.autopilot-card{flex:none;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column;gap:10px}.autopilot-card.active{border-color:var(--accent)}.autopilot-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.autopilot-title{font-size:13px;font-weight:700;color:var(--text-bright);text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:8px}.autopilot-live-dot{width:8px;height:8px;background:var(--accent);animation:autopilot-pulse 1.4s ease-in-out infinite}@keyframes autopilot-pulse{50%{opacity:.35}}.autopilot-sub{font-size:12px;color:var(--text-muted);margin-top:4px;max-width:60ch}.autopilot-btn{flex:none;background:var(--accent);color:var(--accent-contrast);border:1px solid var(--accent);border-radius:var(--radius);padding:7px 14px;font-size:12.5px;font-weight:700;cursor:pointer}.autopilot-btn:disabled{opacity:.6;cursor:default}.autopilot-btn.stop{background:var(--surface);color:var(--text-bright);border-color:var(--border)}.autopilot-btn.stop:hover:not(:disabled){border-color:var(--accent)}.autopilot-state{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.autopilot-state-pill{font-family:var(--font-mono);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:3px 8px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);color:var(--text-bright)}.autopilot-state-pill.testing,.autopilot-state-pill.starting{border-color:var(--accent);color:var(--accent)}.autopilot-state-pill.fixing,.autopilot-state-pill.rebuilding{color:#1e40af;border-color:#1e40af}.autopilot-state-pill.done{color:#047857;border-color:#047857}.autopilot-state-pill.error{color:#b91c1c;border-color:#b91c1c}.autopilot-warn{font-size:11px;color:var(--text-muted);font-family:var(--font-mono)}.autopilot-summary{font-size:12px;color:var(--text-muted)}.autopilot-error{font-size:12px;color:#b91c1c}.autopilot-feed{max-height:180px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:8px 10px;display:flex;flex-direction:column;gap:3px}.autopilot-feed-line{display:flex;gap:8px;font-family:var(--font-mono);font-size:11.5px;line-height:1.5;color:var(--text)}.autopilot-feed-kind{flex:none;width:52px;text-transform:uppercase;font-weight:600;color:var(--text-muted)}.autopilot-feed-line.pass .autopilot-feed-kind{color:#047857}.autopilot-feed-line.fail .autopilot-feed-kind,.autopilot-feed-line.error .autopilot-feed-kind,.autopilot-feed-line.giveup .autopilot-feed-kind{color:#b91c1c}.autopilot-feed-line.fix .autopilot-feed-kind,.autopilot-feed-line.build .autopilot-feed-kind{color:#1e40af}.autopilot-feed-line.done .autopilot-feed-kind{color:var(--accent)}.autopilot-relay-link{align-self:flex-start;background:none;border:none;padding:0;font-size:11px;color:var(--text-muted);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.autopilot-relay-link:hover{color:var(--text)}
