@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(./ibm-plex-sans-cyrillic-ext-wght-normal-d45eAU9y.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(./ibm-plex-sans-cyrillic-wght-normal-BAAhND-U.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(./ibm-plex-sans-greek-wght-normal-CmyJS8uq.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(./ibm-plex-sans-vietnamese-wght-normal-Dg1JeJN0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(./ibm-plex-sans-latin-ext-wght-normal-CIII54If.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(./ibm-plex-sans-latin-wght-normal-IvpUvPa2.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(./jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-display:"Bricolage Grotesque Variable", "Segoe UI", system-ui, sans-serif;--font-ui:"IBM Plex Sans Variable", "Segoe UI", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono Variable", ui-monospace, "Cascadia Code", Menlo, Consolas, monospace;--text-xs:12px;--text-sm:13px;--text-md:14px;--text-lg:16px;--text-xl:18px;--text-2xl:20px;--text-3xl:24px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--radius-sm:8px;--radius:12px;--ease-out:cubic-bezier(.22, 1, .36, 1);--dur-fast:.16s;--dur:.22s;--bg:#f2f5f7;--surface:#fbfcfd;--surface-2:#eaeff3;--surface-3:#dde4ea;--border:#d3dbe2;--border-strong:#b9c4ce;--text:#16212a;--text-2:#44525d;--text-3:#5c6a75;--accent:#1585b5;--accent-strong:#0f6f99;--accent-hover:#0c5f84;--accent-soft:#dcebf3;--on-accent:#f7fbfd;--ember:#94490a;--ember-soft:#fbe7d3;--success:#1f7a3f;--success-soft:#dcf1e3;--danger:#c2332b;--danger-soft:#fbe3e0;--warn:#8a5a00;--warn-soft:#fbefd2;--user-bubble:#e1eef5;--selection:#cfe4f0;--active-line:#f0f4f7;--diff-add:#dcf1e3;--diff-add-strong:#cdebd7;--diff-del:#fbe3e0;--diff-del-strong:#f6d4cf;--scrim:#16212a6b;--shadow-float:0 12px 32px -8px #1230443d, 0 2px 6px -2px #1230441f;--brand:#1585b5;--brand-ink:#f7fbfd;--brand-caret:#e8862a;--canvas:#fff;--hl-comment:#56626b;--hl-keyword:#a8325a;--hl-string:#246139;--hl-number:#834700;--hl-title:#0b5a7d;--hl-type:#095c5e;--hl-attr:#44525d;--hl-builtin:#7c5400}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#171c21;--surface:#1e252b;--surface-2:#262e35;--surface-3:#303941;--border:#343d46;--border-strong:#4a5560;--text:#e4eaef;--text-2:#aab6c0;--text-3:#8e9ca9;--accent:#3aa6d6;--accent-strong:#3aa6d6;--accent-hover:#5cb8e0;--accent-soft:#173346;--on-accent:#06151d;--ember:#f0a05a;--ember-soft:#3a2716;--success:#52c27a;--success-soft:#16301f;--danger:#ff7d72;--danger-soft:#3b1f1e;--warn:#e0a83a;--warn-soft:#3b2e12;--user-bubble:#1b3040;--selection:#28465c;--active-line:#232b32;--diff-add:#16301f;--diff-add-strong:#1c3f29;--diff-del:#3b1f1e;--diff-del-strong:#4d2624;--scrim:#04080c99;--shadow-float:0 16px 40px -8px #0000008c, 0 2px 8px -2px #0006;--hl-comment:#abb7c1;--hl-keyword:#ff8fae;--hl-string:#8fd4a4;--hl-number:#f2b56b;--hl-title:#6cc2ea;--hl-type:#5fd0c8;--hl-attr:#c3ccd4;--hl-builtin:#e8b36f}@media (prefers-color-scheme:dark){:root:not([data-theme]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#171c21}}*,:before,:after{box-sizing:border-box}html,body{height:100%;margin:0}body{font-family:var(--font-ui);font-size:var(--text-md);color:var(--text);background:var(--bg);overscroll-behavior:none;-webkit-font-smoothing:antialiased;line-height:1.5}#app{height:100%}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--accent-strong);text-underline-offset:2px}::selection{background:var(--selection)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.spacer{flex:1}.app{grid-template-rows:auto 1fr;height:100%;display:grid;overflow:hidden}.body{min-height:0;display:flex;position:relative}.main{--split:.42;grid-template-columns:minmax(300px, calc(var(--split) * 100%)) 6px minmax(360px, 1fr);background:var(--bg);flex:1;grid-template-rows:minmax(0,1fr);min-width:0;min-height:0;display:grid}.divider{cursor:col-resize;touch-action:none;position:relative}.divider:after{content:"";background:var(--border);position:absolute;inset:0 2px}.divider:hover:after,.divider:active:after{background:var(--accent)}.loading-screen{color:var(--text-3);grid-column:1/-1;place-items:center;display:grid}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:34px;padding:0 var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);white-space:nowrap;cursor:pointer;font-weight:500;display:inline-flex}.button:hover:not(:disabled){background:var(--surface-2);border-color:var(--border-strong)}.button:active:not(:disabled){background:var(--surface-3)}.button:disabled{opacity:.5;cursor:not-allowed}.button.small{min-height:30px;padding:0 var(--space-3);font-size:var(--text-sm);gap:6px}.button.primary{background:var(--accent-strong);border-color:var(--accent-strong);color:var(--on-accent)}.button.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.button.primary:active:not(:disabled){background:var(--accent-strong)}.button.ghost{color:var(--text-2);background:0 0;border-color:#0000}.button.ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text);border-color:#0000}.button.ghost[aria-pressed=true]{background:var(--surface-2);color:var(--text)}.button.danger{color:var(--danger)}.button.danger:hover:not(:disabled){background:var(--danger-soft);border-color:var(--danger-soft)}.button.has-error{color:var(--danger)}.icon-button{border-radius:var(--radius-sm);width:34px;height:34px;color:var(--text-2);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.icon-button:active:not(:disabled){background:var(--surface-3)}.icon-button:disabled{opacity:.45;cursor:not-allowed}.icon-button.danger{color:var(--danger)}.icon-button.subtle{color:var(--text-3)}.icon-button.send{background:var(--accent-strong);width:36px;height:36px;color:var(--on-accent);border-radius:50%}.icon-button.send:hover:not(:disabled){background:var(--accent-hover);color:var(--on-accent)}.icon-button.send:disabled{background:var(--surface-2);color:var(--text-3);opacity:1}.icon-button.send.stop{background:var(--danger);color:var(--on-accent)}.segmented{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);gap:2px;padding:2px;display:inline-flex}.segmented button{min-height:28px;padding:0 var(--space-3);color:var(--text-2);font-size:var(--text-sm);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:6px;font-weight:500;display:inline-flex}.segmented button:hover{color:var(--text)}.segmented button.active{background:var(--surface);color:var(--text);font-weight:600}.chip{padding:2px var(--space-2);border:1px solid var(--border);color:var(--text-2);font-size:var(--text-xs);border-radius:999px;align-items:center;gap:5px;display:inline-flex}.chip-button{min-height:30px;padding:0 var(--space-3);border:1px solid var(--border);background:var(--surface);color:var(--text-2);font-size:var(--text-sm);text-align:left;cursor:pointer;border-radius:999px;align-items:center;display:inline-flex}.chip-button:hover{border-color:var(--border-strong);background:var(--surface-2);color:var(--text)}.status-chip{padding:1px var(--space-2);font-size:var(--text-xs);white-space:nowrap;background:var(--surface-2);color:var(--text-2);border-radius:999px;align-items:center;font-weight:600;display:inline-flex}.status-chip.is-pending{background:var(--ember-soft);color:var(--ember)}.status-chip.is-accepted{background:var(--success-soft);color:var(--success)}.dot{background:var(--text-3);border-radius:50%;width:7px;height:7px;display:inline-block}.dot-error{background:var(--danger)}.dot-ember{background:var(--ember)}input:not([type]),input[type=text],input[type=search],input[type=password],select,textarea{width:100%;min-height:34px;padding:6px var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text)}input::placeholder,textarea::placeholder{color:var(--text-3)}input:hover,select:hover,textarea:hover{border-color:var(--border-strong)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:-1px;border-color:#0000}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline-offset:2px}textarea{resize:vertical;font-family:inherit;line-height:1.5}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.topbar{align-items:center;gap:var(--space-2);min-height:52px;padding:0 var(--space-3);border-bottom:1px solid var(--border);background:var(--surface);display:flex}.brand{align-items:center;gap:var(--space-2);padding-right:var(--space-2);color:var(--text);font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.01em;font-weight:700;text-decoration:none;display:inline-flex}.topbar .card-title-input{min-width:120px;min-height:32px;padding:0 var(--space-2);border-radius:var(--radius-sm);text-overflow:ellipsis;background:0 0;border:1px solid #0000;flex:0 380px;font-weight:600}.topbar .card-title-input:hover{border-color:var(--border)}.model-badge{max-width:280px;padding:3px var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;line-height:1.25;display:inline-flex}.model-badge:hover{border-color:var(--border-strong);background:var(--surface-2)}.model-badge .provider{color:var(--text-3);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;font-weight:600}.model-badge .model{max-width:100%;font-family:var(--font-mono);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.model-badge.warn .model{color:var(--warn);font-family:var(--font-ui);font-weight:600}.sidebar{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;flex-shrink:0;width:280px;display:flex}.app[data-sidebar=closed] .sidebar,.sidebar-backdrop{display:none}.sidebar-header{padding:var(--space-4) var(--space-3) var(--space-2) var(--space-4);justify-content:space-between;align-items:center;display:flex}.sidebar-header h2{color:var(--text-3);font-size:var(--text-xs);letter-spacing:.05em;text-transform:uppercase;margin:0;font-weight:600}.search{align-items:center;gap:var(--space-2);margin:var(--space-1) var(--space-3) var(--space-2);padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-3);display:flex}.search:focus-within{outline:2px solid var(--accent);outline-offset:-1px;border-color:#0000}.search input{background:0 0;border:none;min-height:32px;padding:0}.search input:focus-visible{outline:none}.card-list{padding:var(--space-1) var(--space-2) var(--space-3);flex:1;margin:0;list-style:none;overflow-y:auto}.card-list-empty{padding:var(--space-4);color:var(--text-3)}.card-item{border-radius:var(--radius-sm);align-items:center;display:flex}.card-item+.card-item{margin-top:2px}.card-item:hover{background:var(--surface-2)}.card-item.active{background:var(--accent-soft)}.card-item-main{min-width:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;gap:2px;display:flex}.card-item-title{text-overflow:ellipsis;white-space:nowrap;font-weight:500;display:block;overflow:hidden}.card-item.active .card-item-title{font-weight:600}.card-item-meta{gap:var(--space-2);color:var(--text-3);font-size:var(--text-xs);display:flex}.card-item.active .card-item-meta{color:var(--accent-strong)}.card-item .delete{opacity:0}.card-item:hover .delete,.card-item:focus-within .delete{opacity:1}@media (hover:none){.card-item .delete,.codeblock-tools{opacity:1}}.confirm-delete{display:inline-flex}.conversation{background:var(--bg);flex-direction:column;min-width:0;min-height:0;display:flex}.message-list{gap:var(--space-4);min-height:0;padding:var(--space-5) var(--space-5) var(--space-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.message{max-width:100%;line-height:1.6}.message.user{max-width:88%;padding:var(--space-3) var(--space-4) var(--space-2);border-radius:var(--radius);background:var(--user-bubble);align-self:flex-end}.message.user .message-text{word-break:break-word}.message.user .message-text p{white-space:pre-wrap}.message.user .chip{border-color:var(--border-strong)}.message-foot{min-height:26px;margin-top:var(--space-1);justify-content:flex-end;align-items:center;gap:6px;display:flex}.message-foot .icon-button{width:28px;height:28px}.message.user.editing{width:88%}.edit-actions{gap:var(--space-2);margin-top:var(--space-2);display:flex}.message.assistant{align-self:stretch;gap:var(--space-2);flex-direction:column;display:flex}.message-error{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--danger-soft);color:var(--danger);flex-wrap:wrap;display:flex}.message-error .button{margin-left:auto}.thinking,.tool-progress{color:var(--text-2);font-size:var(--text-sm);font-variant-numeric:tabular-nums;align-items:center;gap:6px;margin:0;display:inline-flex}.proposal{padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.proposal-head{align-items:center;gap:var(--space-2);color:var(--text-2);flex-wrap:wrap;display:flex}.proposal-title{color:var(--text);font-weight:600}.proposal-status{margin-left:auto}.proposal-summary{margin:var(--space-2) 0 0;color:var(--text-2)}.proposal-actions{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:none}.suggestions{align-items:center;gap:var(--space-2);padding:0 var(--space-5) var(--space-2);flex-wrap:wrap;display:flex}.suggestions-label{white-space:nowrap;color:var(--text-3);font-size:var(--text-xs);letter-spacing:.05em;text-transform:uppercase;flex-shrink:0;font-weight:600}.chip-skeleton{background:var(--surface-2);border-radius:999px;width:9rem;height:30px;display:inline-block}.chip-skeleton:nth-child(3){width:11rem}.chip-skeleton:nth-child(4){width:7rem}.composer{gap:var(--space-1);margin:var(--space-2) var(--space-5) var(--space-4);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);flex-direction:column;display:flex}.composer-row{align-items:center;gap:var(--space-2);display:flex}.attachments{gap:var(--space-1);flex-wrap:wrap;flex:1;min-width:0;display:flex}.attach-chip{min-height:26px;padding:0 var(--space-2);border:1px dashed var(--border-strong);color:var(--text-3);font-size:var(--text-xs);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:5px;display:inline-flex}.attach-chip[aria-pressed=true]{border-style:solid;border-color:var(--border);background:var(--surface-2);color:var(--text-2)}.attach-chip:hover{color:var(--text)}.attach-detail{color:var(--text-3)}.composer:focus-within{outline:2px solid var(--accent);outline-offset:-1px;border-color:#0000}.composer textarea{resize:none;background:0 0;border:none;flex:none;width:100%;min-height:36px;max-height:200px;padding:7px 0}.composer textarea:focus-visible{outline:none}.empty-state{width:100%;max-width:36rem;padding:var(--space-6) 0;color:var(--text-2);margin:auto}.empty-title{margin:0 0 var(--space-2);color:var(--text);font-family:var(--font-display);font-size:var(--text-3xl);letter-spacing:-.015em;text-wrap:balance;font-weight:650;line-height:1.2}.empty-state>p{max-width:60ch;margin:0}.empty-actions{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.empty-state>.empty-label{margin:var(--space-6) 0 var(--space-2);color:var(--text-3);font-size:var(--text-xs);letter-spacing:.05em;text-transform:uppercase;font-weight:600}.examples{gap:var(--space-2);flex-direction:column;display:flex}.examples .chip-button{min-height:40px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-md)}.markdown{word-break:break-word}.markdown>:first-child{margin-top:0}.markdown>:last-child{margin-bottom:0}.markdown p,.markdown ul,.markdown ol{margin:.55em 0}.markdown li+li{margin-top:.2em}.markdown h1,.markdown h2,.markdown h3,.markdown h4{margin:1.1em 0 .4em;font-weight:600;line-height:1.3}.markdown h1{font-size:var(--text-xl)}.markdown h2{font-size:var(--text-lg)}.markdown h3,.markdown h4{font-size:var(--text-md)}.markdown code{background:var(--surface-2);font-family:var(--font-mono);border-radius:4px;padding:1px 5px;font-size:.88em}.markdown pre.codeblock{padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);margin:.7em 0;position:relative;overflow-x:auto}.markdown pre.codeblock code{background:0 0;padding:0;font-size:12.5px;line-height:1.6}.codeblock-tools{gap:var(--space-1);opacity:0;transition:opacity var(--dur-fast) var(--ease-out);display:inline-flex;position:absolute;top:6px;right:6px}.markdown pre.codeblock:hover .codeblock-tools,.markdown pre.codeblock:focus-within .codeblock-tools{opacity:1}.codeblock-btn{padding:2px var(--space-2);border:1px solid var(--border);background:var(--surface);color:var(--text-2);font-size:var(--text-xs);cursor:pointer;border-radius:6px}.codeblock-btn:hover{border-color:var(--border-strong);color:var(--text)}.markdown table{border-collapse:collapse;margin:.7em 0;display:block;overflow-x:auto}.markdown th,.markdown td{padding:var(--space-1) var(--space-2);border:1px solid var(--border)}.markdown th{background:var(--surface-2);font-weight:600}.markdown blockquote{padding-left:var(--space-3);border-left:2px solid var(--border-strong);color:var(--text-2);margin:.7em 0}.hljs-comment,.hljs-quote{color:var(--hl-comment);font-style:italic}.hljs-keyword,.hljs-selector-tag,.hljs-doctag,.hljs-name{color:var(--hl-keyword)}.hljs-string,.hljs-regexp,.hljs-template-tag,.hljs-addition{color:var(--hl-string)}.hljs-number,.hljs-literal,.hljs-symbol{color:var(--hl-number)}.hljs-title,.hljs-section,.hljs-selector-id{color:var(--hl-title)}.hljs-type,.hljs-class,.hljs-selector-class{color:var(--hl-type)}.hljs-attr,.hljs-attribute,.hljs-property,.hljs-variable,.hljs-params{color:var(--hl-attr)}.hljs-built_in,.hljs-meta,.hljs-template-variable{color:var(--hl-builtin)}.hljs-deletion{color:var(--danger)}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.workspace{background:var(--surface);flex-direction:column;min-width:0;min-height:0;display:flex;container-type:inline-size}@container (width<=779px){.toolbar .output-toggle .label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@container (width<=699px){.toolbar .label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.toolbar{align-items:center;gap:var(--space-1);min-height:48px;padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.language-select{width:auto;min-height:30px;padding:0 var(--space-2);font-size:var(--text-sm)}.toolbar-sep{width:1px;height:20px;margin:0 var(--space-1);background:var(--border)}.review-bar{align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);background:var(--ember-soft);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.review-bar strong{color:var(--ember)}.review-bar.is-streaming{background:var(--accent-soft)}.review-bar.is-streaming strong{color:var(--accent-strong)}.review-text{flex:280px}.review-actions{gap:var(--space-2);flex-wrap:wrap;margin-left:auto;display:inline-flex}.inline-edit{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);background:var(--surface-2);color:var(--accent-strong);display:flex}.inline-edit input{flex:1}.editor-host{flex:1;min-height:max(100px,40%);overflow:hidden}.editor-host .cm-editor{height:100%}.output-panel{border-top:1px solid var(--border);background:var(--surface);flex-direction:column;flex:0 auto;min-height:100px;max-height:80%;display:flex;position:relative}.output-panel.is-empty{flex:none;min-height:0}.output-panel.is-empty .output-resize{display:none}.output-resize{cursor:row-resize;touch-action:none;height:8px;position:absolute;top:-4px;left:0;right:0}.output-header{align-items:center;gap:var(--space-2);min-height:42px;padding:var(--space-1) var(--space-2) var(--space-1) var(--space-4);border-bottom:1px solid var(--border);font-size:var(--text-sm);display:flex}.output-status{color:var(--text-3)}.output-status.busy{color:var(--accent-strong)}.output-body{flex-direction:column;flex:1;min-height:0;display:flex}.output-body.with-preview{flex-direction:row}.preview-frame{background:var(--canvas);border:none;flex:1;min-width:0;min-height:0}.output-body.with-preview.quiet .console{display:none}.undocked-note{align-items:flex-start;gap:var(--space-3);min-width:0;padding:var(--space-4);color:var(--text-2);flex-direction:column;flex:1;display:flex}.undocked-note p{max-width:44ch;margin:0}@media (max-width:799px){.pop-out{display:none}}.hidden-frame{opacity:0;pointer-events:none;border:0;width:0;height:0;position:absolute}.output-body.with-preview .console{border-left:1px solid var(--border);flex:0 0 34%}.console{padding:var(--space-3) var(--space-4);font-family:var(--font-mono);flex:1;font-size:12.5px;line-height:1.6;overflow:auto}.console-line{font:inherit;white-space:pre-wrap;word-break:break-word;margin:0}.console-line.stderr,.console-line.error{color:var(--danger)}.console-line.warn{color:var(--warn)}.console-line.info{color:var(--text-3)}.console-line.result{color:var(--accent-strong)}.console-line.result:before{content:"=> ";color:var(--text-3)}.console-figure{max-width:100%;margin:var(--space-2) 0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--canvas);display:block}.output-run{display:none}.panel-error{gap:var(--space-3);min-width:0;padding:var(--space-6) var(--space-5);background:var(--surface);flex-direction:column;display:flex}.panel-error h2{font-family:var(--font-display);font-size:var(--text-2xl);margin:0;font-weight:650}.panel-error p{color:var(--text-2);margin:0}.panel-error pre{padding:var(--space-3);border-radius:var(--radius-sm);background:var(--danger-soft);color:var(--danger);font-family:var(--font-mono);font-size:var(--text-sm);white-space:pre-wrap;margin:0}.dialog{width:min(640px,100vw - 32px);max-height:calc(100vh - 32px);border-radius:var(--radius);background:var(--surface);max-height:calc(100dvh - 32px);color:var(--text);box-shadow:var(--shadow-float);border:none;padding:0;overflow:hidden}.dialog::backdrop{background:var(--scrim)}.dialog-body{gap:var(--space-5);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);padding:var(--space-5) var(--space-5) var(--space-5);flex-direction:column;margin:0;display:flex;overflow-y:auto}.dialog-header{justify-content:space-between;align-items:center;display:flex}.dialog-header h2{font-family:var(--font-display);font-size:var(--text-2xl);letter-spacing:-.01em;margin:0;font-weight:650}.dialog section h3{margin:0 0 var(--space-3);color:var(--text-3);font-size:var(--text-xs);letter-spacing:.05em;text-transform:uppercase;font-weight:600}.dialog-footer{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.field{margin-top:var(--space-4);flex-direction:column;gap:6px;display:flex}.field>label{font-size:var(--text-sm);font-weight:600}.field>.segmented{align-self:flex-start}.help{color:var(--text-2);font-size:var(--text-sm);margin:0}.key-row{align-items:center;gap:6px;display:flex}.radio-row{gap:var(--space-4);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.radio-row label{align-items:center;gap:6px;display:inline-flex}.radio-row input{accent-color:var(--accent-strong)}.provider-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(132px,1fr));display:grid}.provider-card{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;gap:2px;display:flex}.provider-card:hover{border-color:var(--border-strong);background:var(--surface-2)}.provider-card span{color:var(--text-3);font-size:var(--text-xs)}.provider-card.active{border-color:var(--accent);background:var(--accent-soft);outline:1px solid var(--accent);outline-offset:-2px}.provider-card.active span{color:var(--accent-strong)}.provider-card.active:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.button-row{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.spec-area{min-height:260px;font-family:var(--font-mono);font-size:var(--text-sm)}.toast{bottom:var(--space-5);z-index:50;max-width:calc(100vw - 32px);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--text);color:var(--bg);box-shadow:var(--shadow-float);animation:toast-in var(--dur) var(--ease-out);position:fixed;left:50%;transform:translate(-50%)}.toast.error{background:var(--danger);color:var(--on-accent)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}}.mobile-tabs{display:none}@media (max-width:1099px){.sidebar{z-index:20;box-shadow:var(--shadow-float);animation:sidebar-in var(--dur) var(--ease-out);border-right:none;position:absolute;inset:0 auto 0 0}.app[data-sidebar=open] .sidebar-backdrop{z-index:15;background:var(--scrim);display:block;position:absolute;inset:0}}@keyframes sidebar-in{0%{opacity:0;transform:translate(-24px)}}@media (max-width:799px){.app{grid-template-rows:auto 1fr auto}.topbar{padding:0 var(--space-2)}.topbar .segmented .label,.topbar .model-badge,.brand span{display:none}.topbar .card-title-input{flex:1}.main{grid-template-columns:1fr}.divider,.conversation,.workspace{display:none}.app[data-mobile-tab=prompt] .conversation,.app[data-mobile-tab=code] .workspace,.app[data-mobile-tab=output] .workspace{display:flex}.app[data-mobile-tab=output] .editor-host,.app[data-mobile-tab=output] .toolbar,.app[data-mobile-tab=output] .review-bar,.app[data-mobile-tab=output] .inline-edit,.app[data-mobile-tab=code] .output-panel{display:none}.app[data-mobile-tab=output] .output-panel{border-top:none;flex:1;max-height:none;height:auto!important}.toolbar .label{display:none}.output-run{display:inline-flex}.proposal-actions{display:flex}.message-list{padding:var(--space-4) var(--space-4) var(--space-2)}.suggestions{padding:0 var(--space-4) var(--space-2);flex-wrap:nowrap;overflow-x:auto}.suggestions .chip-button{flex-shrink:0}.composer{margin:var(--space-2) var(--space-4) var(--space-3)}.mobile-tabs{padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--border);background:var(--surface);grid-template-columns:repeat(3,1fr);display:grid}.mobile-tab{min-height:52px;padding:var(--space-2) var(--space-1);color:var(--text-3);font-size:var(--text-xs);cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:2px;font-weight:500;display:flex;position:relative}.mobile-tab.active{color:var(--accent-strong)}.mobile-tab .dot{position:absolute;top:8px;right:calc(50% - 16px)}.toast{bottom:calc(52px + env(safe-area-inset-bottom) + var(--space-3))}.dialog{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}.dialog-body{padding:var(--space-4)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.reasoning{color:var(--text-2);font-size:var(--text-sm)}.reasoning summary{color:var(--text-3);font-variant-numeric:tabular-nums;cursor:pointer;align-items:center;gap:6px;list-style:none;display:inline-flex}.reasoning summary::-webkit-details-marker{display:none}.reasoning summary:before{content:"";width:0;height:0;transition:transform var(--dur-fast) var(--ease-out);border-top:4px solid #0000;border-bottom:4px solid #0000;border-left:5px solid}.reasoning[open] summary:before{transform:rotate(90deg)}.reasoning summary:hover{color:var(--text-2)}.reasoning-text{margin-top:var(--space-2);padding-left:var(--space-3);border-left:2px solid var(--border)}.usage{color:var(--text-3);font-size:var(--text-xs);font-variant-numeric:tabular-nums;margin:0}.empty-state>.empty-note{margin-top:var(--space-2);font-size:var(--text-sm)}.tabs{border-radius:var(--radius-sm);background:var(--surface-2);gap:2px;padding:2px;display:inline-flex}.tab{min-height:28px;padding:0 var(--space-3);color:var(--text-2);font-size:var(--text-sm);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:6px;font-weight:500;display:inline-flex;position:relative}.tab:hover{color:var(--text)}.tab[aria-selected=true]{background:var(--surface);color:var(--text);font-weight:600}.tab .dot{margin-left:2px}.dot-muted{background:var(--text-3)}.spec-status{align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);color:var(--text-2);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.spec-state{align-items:center;gap:var(--space-2);flex:240px;display:inline-flex}.spec-dot{background:var(--text-3);border-radius:50%;flex-shrink:0;width:8px;height:8px}.spec-status.is-in-step .spec-dot{background:var(--success)}.spec-status.is-code-changed .spec-dot,.spec-status.is-spec-changed .spec-dot,.spec-status.is-unchecked .spec-dot{background:var(--warn)}.spec-actions{gap:var(--space-2);flex-wrap:wrap;display:inline-flex}.spec-host .cm-scroller{font-family:var(--font-ui);font-size:var(--text-md);line-height:1.65}.spec-host .cm-content{max-width:72ch;padding:var(--space-4) var(--space-5)}.spec-host .cm-placeholder{color:var(--text-3)}.touch-only{display:none}.free-tag{background:var(--success-soft);color:var(--success);font-size:var(--text-xs);letter-spacing:.02em;border-radius:4px;margin-left:6px;padding:0 5px}.check-row{align-items:flex-start;gap:var(--space-2);cursor:pointer;display:flex}.check-row input{accent-color:var(--accent-strong);margin-top:4px}.check-row .help{margin-top:2px;display:block}.field-label{font-size:var(--text-sm);font-weight:600}.about{color:var(--text-3);font-size:var(--text-sm)}@media (max-width:799px){.touch-only{display:inline-flex}.spec-host .cm-content{padding:var(--space-3) var(--space-4)}}
