@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Noto+Serif+SC:wght@500;600;700&family=Onest:wght@400;500;600&display=swap";:root{color:#1c1e1c;font-synthesis:none;--ink:#1c1e1c;--paper:#f7f8f5;--white:#fff;--line:#ccd1ca;--muted:#697169;--red:#e44b35;--green:#087b58;--acid:#dff45b;background:#f0f1ed;font-family:Onest,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;overflow:hidden}button,input,textarea{font:inherit;letter-spacing:0}button,a{-webkit-tap-highlight-color:transparent}button{border:0}.auth-loading{width:100vw;height:100dvh;color:var(--muted);background:#f5f6f2;justify-content:center;align-items:center;gap:9px;font-size:11px;display:flex}.auth-shell{background:#f7f8f5;grid-template-columns:minmax(390px,44%) minmax(0,1fr);width:100vw;height:100dvh;display:grid}.auth-panel{place-self:center;width:min(100%,520px);padding:48px clamp(34px,6vw,76px)}.auth-brand{align-items:baseline;gap:8px;margin-bottom:clamp(52px,9vh,90px);display:flex}.auth-brand strong{font:600 16px/1 Noto Serif SC,serif}.auth-copy small{color:var(--red);font:500 8px/1 IBM Plex Mono,monospace}.auth-copy h1{margin:8px 0 10px;font:600 30px/1.25 Noto Serif SC,serif}.auth-copy p{color:var(--muted);margin:0;font-size:11px;line-height:1.7}.auth-tabs{background:#e9ece6;border-radius:5px;grid-template-columns:1fr 1fr;gap:3px;margin:28px 0 22px;padding:3px;display:grid}.auth-tabs button{min-height:36px;color:var(--muted);cursor:pointer;background:0 0;border-radius:4px;font-size:10px}.auth-tabs button.active{color:var(--ink);background:#fff;font-weight:600;box-shadow:0 2px 7px #14161414}.auth-form{flex-direction:column;gap:15px;display:flex}.auth-form label{flex-direction:column;gap:7px;display:flex}.auth-form label span{color:#555c55;font-size:10px;font-weight:600}.auth-form input{width:100%;height:45px;color:var(--ink);background:#fff;border:1px solid #bcc2b9;border-radius:5px;outline:0;padding:0 12px;font-size:12px}.auth-form input:focus{border-color:var(--ink);box-shadow:0 0 0 3px #1c1e1c12}.auth-error{color:#963626;background:#fff0eb;border:1px solid #e3b3a9;border-radius:4px;align-items:center;gap:7px;min-height:36px;padding:7px 9px;font-size:9px;display:flex}.auth-submit{color:#fff;background:var(--ink);cursor:pointer;border-radius:5px;justify-content:center;align-items:center;gap:7px;height:44px;margin-top:2px;font-size:11px;font-weight:600;display:flex}.auth-submit:hover{background:#303330}.auth-submit:disabled{opacity:.55;cursor:wait}.auth-visual{background:#e4e7e1;border-radius:7px;min-width:0;margin:18px 18px 18px 0;position:relative;overflow:hidden}.auth-visual img{object-fit:cover;width:100%;height:100%;display:block}.auth-visual:after{content:"";background:linear-gradient(#0000,#121412b3);position:absolute;inset:45% 0 0}.auth-visual>div{z-index:1;color:#fff;flex-direction:column;gap:7px;display:flex;position:absolute;bottom:34px;left:34px}.auth-visual small{font:500 8px/1 IBM Plex Mono,monospace}.auth-visual strong{font:600 25px/1.2 Noto Serif SC,serif}.app-shell{background:#f5f6f2;grid-template-columns:232px minmax(0,1fr);height:100dvh;display:grid}.status-dot{background:#767c76;border-radius:50%;width:7px;height:7px;display:inline-block}.status-dot.online{background:#4bd49a;box-shadow:0 0 0 3px #4bd49a21}.status-dot.offline{background:var(--red)}.studio-shell{flex:auto;grid-template-rows:minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.app-sidebar{background:#eceee9;border-right:1px solid #d6dad3;flex-direction:column;min-width:0;min-height:0;padding:18px 12px 14px;display:flex}.sidebar-brand{align-items:baseline;gap:7px;padding:5px 9px 22px;display:flex}.sidebar-brand strong{font:600 14px/1 Noto Serif SC,serif}.sidebar-nav{flex-direction:column;gap:4px;display:flex}.sidebar-nav button{text-align:left;color:#343834;cursor:pointer;background:0 0;border-radius:5px;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-height:40px;padding:0 10px;font-size:11px;display:grid}.sidebar-nav button:hover{background:#dfe3dc}.sidebar-nav button:disabled{opacity:.45;cursor:not-allowed}.sidebar-nav .sidebar-primary{color:#fff;background:var(--ink)}.sidebar-nav .sidebar-primary:hover{background:#303330}.sidebar-nav small{color:#858c84;font:500 8px/1 IBM Plex Mono,monospace}.sidebar-primary small{color:inherit}.sidebar-history-heading{color:#858c84;justify-content:space-between;align-items:center;margin:24px 9px 7px;font-size:9px;display:flex}.sidebar-history-list{flex:auto;min-height:0;overflow-y:auto}.sidebar-history-item{text-align:left;color:#3a3e3a;cursor:pointer;background:0 0;border-radius:5px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-height:48px;padding:7px 9px;display:grid}.sidebar-history-item:hover{background:#dfe3dc}.sidebar-history-item.selected{box-shadow:inset 2px 0 0 var(--red);background:#fff}.sidebar-history-item:disabled{cursor:not-allowed}.sidebar-history-item strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:500;overflow:hidden}.sidebar-history-item span{color:#929891;font:500 8px/1 IBM Plex Mono,monospace}.sidebar-empty{color:#929891;padding:14px 9px;font-size:9px}.sidebar-footer{color:#747b74;border-top:1px solid #d5d9d2;grid-template-columns:auto minmax(0,1fr) 28px;align-items:center;gap:8px;min-height:42px;padding:0 5px 0 9px;font-size:9px;display:grid}.sidebar-footer .status-dot{flex:none}.sidebar-footer>span:nth-child(2){color:#454a45;text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.sidebar-footer button{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border-radius:4px;place-items:center;display:grid}.sidebar-footer button:hover{color:var(--red);background:#dfe3dc}.sidebar-footer button:disabled{opacity:.4;cursor:not-allowed}.history-scrim{z-index:20;cursor:default;background:#14161457;padding:0;position:fixed;inset:0}.history-drawer{z-index:21;background:#f7f8f5;border-left:1px solid #9fa59d;flex-direction:column;width:min(390px,92vw);padding:22px 18px 18px;animation:.22s cubic-bezier(.2,.8,.2,1) both drawer-in;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-14px 0 34px #1416142b}.history-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:17px;display:flex}.history-heading small{color:var(--red);font:500 8px/1 IBM Plex Mono,monospace}.history-heading h2{margin:5px 0 0;font:600 20px/1.2 Noto Serif SC,serif}.new-conversation-button{color:#fff;background:var(--ink);cursor:pointer;border-radius:4px;flex:none;justify-content:center;align-items:center;gap:7px;min-height:42px;margin:14px 0 10px;font-size:11px;font-weight:600;display:flex}.new-conversation-button:disabled{opacity:.45;cursor:not-allowed}.history-list{min-height:0;overflow-y:auto}.history-item{text-align:left;width:100%;min-height:70px;color:var(--ink);cursor:pointer;background:0 0;border-bottom:1px solid #dde0da;flex-direction:column;justify-content:center;gap:9px;padding:11px 10px;display:flex}.history-item:hover{background:#ecefe9}.history-item.selected{box-shadow:inset 3px 0 0 var(--red);background:#eef2dd}.history-item strong{text-overflow:ellipsis;white-space:nowrap;font:600 12px/1.3 Noto Serif SC,serif;overflow:hidden}.history-item>span{color:var(--muted);justify-content:space-between;font:500 8px/1 IBM Plex Mono,monospace;display:flex}.history-item small{font:inherit}.history-state{min-height:120px;color:var(--muted);justify-content:center;align-items:center;gap:8px;font-size:11px;display:flex}.cover-fallback{width:100%;height:100%;color:var(--red);background:#e1e4dd;place-items:center;display:grid}.template-picker-scrim{z-index:30;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);cursor:default;background:#181a186b;padding:0;position:fixed;inset:0}.template-picker{z-index:31;background:#f8f9f6;border:1px solid #aeb4ac;border-radius:8px;flex-direction:column;width:min(1040px,100vw - 64px);max-height:min(820px,100dvh - 64px);animation:.22s cubic-bezier(.2,.8,.2,1) both picker-in;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 28px 80px #12141247}.template-picker-heading{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 24px 18px;display:flex}.template-picker-heading small{color:var(--red);font:500 8px/1 IBM Plex Mono,monospace}.template-picker-heading h2{margin:6px 0 4px;font:600 23px/1.2 Noto Serif SC,serif}.template-picker-heading p{color:var(--muted);margin:0;font-size:10px}.template-picker-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:max-content;align-content:start;gap:14px;min-height:0;padding:20px 24px 24px;display:grid;overflow-y:auto}.template-option{text-align:left;min-width:0;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #c9cec6;border-radius:6px;padding:0;transition:border-color .15s,box-shadow .15s,transform .15s;overflow:hidden;box-shadow:0 3px 10px #191c190f}.template-option:hover{border-color:#8f968d;transform:translateY(-2px);box-shadow:0 8px 20px #191c191f}.template-option.selected{border-color:var(--red);box-shadow:0 0 0 2px #e44b3521,0 8px 20px #191c191a}.template-option-image{aspect-ratio:4/3;background:#e4e7e1;display:block;position:relative;overflow:hidden}.template-option-image img{object-fit:contain;background:#f0f1ed;width:100%;height:100%;transition:transform .26s;display:block}.template-option:hover img{transform:scale(1.025)}.template-option-check{color:#fff;background:var(--red);opacity:0;border:2px solid #fff;border-radius:50%;place-items:center;width:27px;height:27px;transition:opacity .15s,transform .15s;display:grid;position:absolute;top:9px;right:9px;transform:scale(.75)}.template-option.selected .template-option-check{opacity:1;transform:scale(1)}.template-option-copy{flex-direction:column;gap:4px;padding:11px 12px 12px;display:flex}.template-option-copy strong{text-overflow:ellipsis;white-space:nowrap;font:600 12px/1.3 Noto Serif SC,serif;overflow:hidden}.template-option-copy small{color:var(--muted);font-size:8px}.template-option.selected .template-option-copy small{color:#b23b2a}.template-picker-footer{border-top:1px solid var(--line);background:#eceee9;flex:none;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:9px 24px;display:flex}.template-picker-footer span{color:var(--muted);font-size:10px}.template-picker-footer button{color:#fff;background:var(--ink);cursor:pointer;border-radius:4px;min-width:88px;min-height:36px;font-size:10px;font-weight:600}.studio-workspace{background:#fbfcf9;grid-template-columns:minmax(0,1fr);justify-self:center;width:100%;min-height:0;display:grid;overflow:hidden}.studio-workspace.has-artifact{grid-template-columns:minmax(0,1fr) clamp(300px,25vw,390px)}.conversation-panel{background:#fbfcf9;flex-direction:column;min-width:0;min-height:0;display:flex}.conversation-panel.is-empty{grid-template-rows:54px minmax(180px,.85fr) auto minmax(80px,1.15fr);display:grid}.conversation-panel.is-empty .chat-thread{min-height:0;padding-bottom:22px;overflow:hidden}.conversation-panel.is-empty .chat-empty{justify-content:flex-end;transform:none}.conversation-panel.is-empty .chat-composer{grid-row:3}.context-panel{border-left:1px solid var(--line);background:#eef0eb;flex-direction:column;min-width:0;min-height:0;padding:22px 20px 16px;animation:.24s cubic-bezier(.2,.8,.2,1) both panel-in;display:flex;overflow:hidden}.context-heading{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:flex-end;padding:1px 2px 14px;display:flex}.context-heading small{color:var(--red);font:500 8px/1 IBM Plex Mono,monospace}.context-heading h2{margin:5px 0 0;font:600 17px/1.15 Noto Serif SC,serif}.context-heading>span{color:var(--muted);font:500 10px/1 IBM Plex Mono,monospace}.context-scroll{flex:auto;min-height:0;padding:2px 2px 16px;overflow-y:auto}.context-section{border-bottom:1px solid #d5d9d2;padding:16px 0}.context-section:last-child{border-bottom:0}.context-section-title{color:#555c55;justify-content:space-between;align-items:center;min-height:24px;margin-bottom:9px;font-size:10px;display:flex}.context-section-title>span{align-items:center;gap:6px;font-weight:600;display:inline-flex}.context-section-title small{color:#858c84;font:500 8px/1 IBM Plex Mono,monospace}.current-artifact{background:#fff;border:1px solid #c5cac2;border-radius:5px;margin:0;overflow:hidden;box-shadow:0 5px 14px #1d211d14}.current-artifact>img{object-fit:contain;background:#e3e6df;width:100%;max-height:min(58vh,620px);display:block}.current-artifact figcaption,.message-artifacts figcaption{color:#4b514b;justify-content:space-between;align-items:center;min-height:38px;padding:4px 6px 4px 10px;font-size:9px;display:flex}.current-artifact figcaption a,.message-artifacts figcaption a{width:28px;height:28px;color:var(--ink);border:1px solid var(--line);border-radius:3px;place-items:center;display:grid}.artifact-strip{grid-template-columns:repeat(4,1fr);gap:5px;margin-top:7px;display:grid}.artifact-strip a{aspect-ratio:1;border:1px solid var(--line);background:#dfe3dc;border-radius:3px;overflow:hidden}.artifact-strip img{object-fit:cover;width:100%;height:100%;display:block}.context-inputs{grid-template-columns:repeat(4,1fr);gap:5px;display:grid}.context-inputs img{aspect-ratio:1;object-fit:cover;border:1px solid #c9cec6;border-radius:3px;width:100%;display:block}.run-status-bar{background:#f7f8f5f5;border-bottom:1px solid #dfe2dc;flex:none;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-height:54px;padding:7px clamp(18px,3vw,42px);display:grid}.run-status-title{grid-template-columns:8px auto;align-items:center;gap:5px 8px;display:grid}.run-status-title strong{font-size:11px}.run-status-title small{max-width:180px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;grid-column:2;font:400 8px/1 IBM Plex Mono,monospace;overflow:hidden}.run-status-steps{justify-content:flex-end;gap:6px;min-width:0;display:flex;overflow-x:auto}.run-status-steps>span{min-height:25px;color:var(--muted);border:1px solid #c7cbc3;border-radius:3px;flex:none;align-items:center;gap:5px;padding:0 7px;font:500 8px/1 IBM Plex Mono,monospace;display:inline-flex}.run-status-steps>span small{color:#858c84;text-overflow:ellipsis;white-space:nowrap;max-width:160px;font:inherit;overflow:hidden}.run-status-steps>span.active{color:#91402f;background:#fff5f1;border-color:#d5a093}.run-status-steps>span.done{color:#176a4e;background:#edf8f2;border-color:#99c3b1}.run-status-steps>span.error{color:#9c3424;background:#fff0ec;border-color:#dc9b8d}.run-status-steps>span.idle{border-color:#0000}.icon-button{width:34px;height:34px;color:inherit;border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover,.icon-button.active{color:var(--red);border-color:#c88d83}.icon-button:disabled{opacity:.4;cursor:not-allowed}.run-status-actions{align-items:center;gap:7px;display:flex}.sidebar-duplicate{display:none}.stop-button{color:var(--red);border-color:#d89a8f}.chat-thread{overscroll-behavior:contain;scroll-behavior:smooth;flex:auto;min-height:0;padding:34px max(24px,50% - 480px) 42px;position:relative;overflow-y:auto}.connection-banner{z-index:3;color:#755223;background:#fff8dc;border:1px solid #dec879;border-radius:5px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;width:min(100%,600px);min-height:48px;margin:0 auto 20px;padding:8px 12px;display:grid;position:sticky;top:-10px;box-shadow:0 4px 14px #3d321114}.connection-banner>span{flex-direction:column;gap:3px;min-width:0;display:flex}.connection-banner strong{font-size:11px}.connection-banner small{color:#857144;font-size:9px}.chat-empty{min-height:100%;color:var(--red);flex-direction:column;justify-content:center;align-items:center;gap:9px;display:flex;transform:translateY(-4%)}.chat-empty>span{color:#fff;background:var(--ink);border-radius:50%;place-items:center;width:48px;height:48px;display:grid}.chat-empty strong{color:var(--ink);font:600 20px/1.2 Noto Serif SC,serif}.chat-empty small{color:var(--muted);font-size:11px}.chat-turn{content-visibility:auto;contain-intrinsic-size:auto 240px;flex-direction:column;gap:20px;margin-bottom:40px;display:flex}.chat-message{grid-template-columns:30px minmax(0,1fr);align-items:start;gap:12px;max-width:min(94%,900px);display:grid}.message-avatar{width:30px;height:30px;color:var(--muted);border:1px solid var(--line);background:#edf0ea;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.message-body{min-width:0}.message-body>p{white-space:pre-wrap;margin:4px 0 0;font-size:13px;line-height:1.7}.user-message{grid-template-columns:minmax(0,1fr) 30px;align-self:flex-end}.user-message .message-avatar{color:#fff;background:var(--ink);border-color:var(--ink);grid-area:1/2}.user-message .message-body{color:#fff;background:var(--ink);border-radius:6px 2px 6px 6px;grid-area:1/1;padding:11px 13px}.user-message .message-body>p{margin:0}.agent-message{align-self:flex-start}.agent-message.error .message-body{color:inherit}.agent-thinking{color:var(--muted);align-items:center;gap:7px;display:flex}.turn-failure{color:#8f3425;background:#fff3ef;border:1px solid #e1b1a7;border-radius:5px;justify-content:space-between;align-items:center;gap:12px;width:min(100%,620px);margin-top:13px;padding:10px 11px;display:flex}.turn-failure>div{align-items:flex-start;gap:8px;min-width:0;display:flex}.turn-failure>div>svg{flex:none;margin-top:2px}.turn-failure>div>span{flex-direction:column;gap:3px;min-width:0;display:flex}.turn-failure strong{color:#843222;font-size:10px}.turn-failure small{color:#9c5b50;overflow-wrap:anywhere;font-size:9px;line-height:1.45}.turn-failure>button{color:#813122;cursor:pointer;background:#fff;border:1px solid #d9a398;border-radius:4px;flex:none;align-items:center;gap:5px;min-height:30px;padding:0 9px;font-size:9px;font-weight:600;display:inline-flex}.turn-failure>button:disabled{opacity:.45;cursor:not-allowed}.turn-failure.compact{margin-top:0}.tool-activity{margin:0 0 13px}.tool-activity>button{color:#626961;cursor:pointer;background:#f0f2ed;border:1px solid #d7dbd4;border-radius:4px;align-items:center;gap:7px;min-height:30px;padding:0 7px 0 0;font-size:10px;display:flex}.tool-status{width:23px;height:23px;color:var(--green);background:#e5f0e9;border-radius:4px;place-items:center;display:grid}.tool-status.is-running svg{animation:1.6s linear infinite tool-spin}.tool-status.has-error{color:#a13d2d;background:#f8e6e1}.tool-activity>button>span:nth-child(2){text-align:left;flex:1}.tool-event-list{flex-direction:column;gap:10px;padding:11px 8px 3px 30px;display:flex}.tool-event{color:#626761;min-width:0;font-size:10px}.tool-event>div:first-child{align-items:center;gap:8px;display:flex}.tool-event code{color:#343834;font:500 10px/1.4 IBM Plex Mono,monospace}.event-state{color:var(--muted)}.event-state.success{color:var(--green)}.event-state.error{color:#a13d2d}.tool-payload{margin-top:7px}.tool-payload small{color:#858b84;margin-bottom:4px;font:500 8px/1 IBM Plex Mono,monospace;display:block}.tool-payload pre{color:#353935;white-space:pre-wrap;overflow-wrap:anywhere;background:#eff1ec;border:1px solid #d7dad3;border-radius:4px;max-width:100%;max-height:180px;margin:0;padding:9px 10px;font:400 9px/1.55 IBM Plex Mono,monospace;overflow:auto}.typing-dots{justify-content:center;align-items:center;gap:3px;width:30px;height:20px;display:inline-flex}.typing-dots i{background:var(--red);border-radius:50%;width:4px;height:4px;animation:1.2s ease-in-out infinite typing-dot}.typing-dots i:nth-child(2){animation-delay:.14s}.typing-dots i:nth-child(3){animation-delay:.28s}.markdown-body{color:#292c29;overflow-wrap:anywhere;min-width:0;font-size:14px;line-height:1.78}.markdown-body>:first-child{margin-top:3px}.markdown-body>:last-child{margin-bottom:0}.markdown-body p,.markdown-body ul,.markdown-body ol,.markdown-body blockquote,.markdown-body pre,.markdown-body table{margin:0 0 11px}.markdown-body ul,.markdown-body ol{padding-left:21px}.markdown-body li+li{margin-top:4px}.markdown-body h1,.markdown-body h2,.markdown-body h3{margin:19px 0 8px;font-family:Noto Serif SC,serif;line-height:1.35}.markdown-body h1{font-size:18px}.markdown-body h2{font-size:16px}.markdown-body h3{font-size:14px}.markdown-body a{color:#a83827;text-underline-offset:3px}.markdown-body blockquote{color:var(--muted);border-left:3px solid #bbc1b8;padding:3px 0 3px 12px}.markdown-body code{background:#ecefe9;border-radius:3px;padding:2px 5px;font:500 11px/1.5 IBM Plex Mono,monospace}.markdown-body pre{color:#ecf0e9;background:#242724;border-radius:5px;max-width:100%;padding:12px 14px;overflow-x:auto}.markdown-body pre code{color:inherit;background:0 0;padding:0}.markdown-body table{border-collapse:collapse;width:100%;display:block;overflow-x:auto}.markdown-body th,.markdown-body td{border:1px solid var(--line);text-align:left;padding:7px 9px}.markdown-body th{background:#ecefe9}.markdown-body.is-streaming:after{vertical-align:-2px;background:var(--red);content:"";width:2px;height:1em;margin-left:3px;animation:.85s step-end infinite stream-caret;display:inline-block}.scroll-latest-button{z-index:4;color:#f5f7f2;cursor:pointer;background:#1c1e1ceb;border:1px solid #515650;border-radius:4px;align-items:center;gap:6px;min-height:34px;margin:-34px auto 0;padding:0 11px;font-size:10px;display:flex;position:sticky;bottom:4px;left:50%;transform:translate(-50%);box-shadow:0 5px 16px #14161433}.chat-error-banner{color:#913322;border:1px solid #e3b3a9;border-left:3px solid var(--red);background:#fff0eb;border-radius:4px;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;width:min(100%,720px);min-height:38px;margin:0 auto 18px;padding:7px 9px;font-size:10px;display:grid}.chat-error-banner button{color:inherit;cursor:pointer;background:0 0;place-items:center;display:grid}.image-generation-progress{width:min(100%,420px);min-height:96px;color:var(--ink);border:1px solid var(--line);border-left:3px solid var(--red);background:#f0f2ed;border-radius:4px;flex-direction:column;justify-content:space-between;margin-top:12px;padding:17px 18px 16px;display:flex}.image-generation-progress>div{grid-template-columns:18px auto 1fr;align-items:center;gap:8px;display:grid}.image-generation-progress strong{font-size:12px}.image-generation-progress>div>span{color:var(--muted);justify-self:end;font:500 8px/1 IBM Plex Mono,monospace}.progress-track{background:#d5d9d2;height:4px;display:block;overflow:hidden}.progress-track>span{background:var(--red);width:34%;height:100%;animation:1.35s cubic-bezier(.55,0,.45,1) infinite image-progress;display:block}.image-generation-error{color:#9c3424;border-left:3px solid var(--red);background:#fff0ec;align-items:center;gap:8px;width:min(100%,420px);min-height:48px;margin-top:12px;padding:0 13px;font-size:11px;display:flex}.message-attachments{grid-template-columns:repeat(3,minmax(0,126px));gap:7px;margin-top:9px;display:grid}.message-attachments img{aspect-ratio:1;object-fit:cover;border:1px solid #4a504a;border-radius:3px;width:100%;display:block}.message-attachments span{border:1px solid #555b55;border-radius:3px;align-items:center;gap:6px;min-height:58px;padding:8px;font-size:9px;display:flex;overflow:hidden}.message-artifacts{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.message-artifacts figure{border:1px solid var(--line);background:#f4f6f1;border-radius:4px;width:176px;min-width:0;margin:0;overflow:hidden}.message-artifacts img{object-fit:cover;background:#e3e6e0;width:100%;height:120px;display:block}.chat-composer{background:#fff;border:1px solid #9fa59d;border-radius:8px;flex:none;align-self:center;width:min(100% - 48px,960px);margin:0 auto 22px;box-shadow:0 10px 30px #1719171a}.chat-composer:focus-within{border-color:var(--ink);box-shadow:0 7px 22px #1719171f, inset 3px 0 0 var(--red)}.composer-heading{align-items:center;gap:10px;padding:14px 17px 0;display:flex}.composer-heading strong{font-size:10px}.composer-heading span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.chat-composer textarea{resize:none;width:100%;min-height:112px;max-height:260px;color:var(--ink);background:0 0;border:0;outline:0;padding:12px 17px 9px;font:400 14px/1.6 Onest,sans-serif}.composer-toolbar{grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:7px;min-height:47px;padding:5px 9px 9px;display:grid}.composer-toolbar>span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font:400 8px/1 IBM Plex Mono,monospace;overflow:hidden}.attach-button{border:0}.attach-button input{display:none}.template-trigger{color:#343834;cursor:pointer;background:#eff1ec;border:1px solid #d3d7d0;border-radius:5px;align-items:center;gap:7px;min-width:0;max-width:230px;height:34px;padding:0 9px;font-size:10px;display:inline-flex}.template-trigger:hover{background:#e7eae4;border-color:#adb3aa}.template-trigger span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.template-trigger svg:last-child{color:var(--muted);flex:none}.send-button{color:#fff;background:var(--red);cursor:pointer;border-radius:5px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.send-button:disabled{color:#929891;cursor:not-allowed;background:#dde0da}.composer-attachments{gap:8px;padding:10px 11px 2px;display:flex;overflow-x:auto}.composer-attachments figure{flex:0 0 82px;width:82px;height:82px;margin:0;position:relative}.composer-attachments img,.composer-attachments .file-tile{object-fit:cover;width:100%;height:100%;color:var(--muted);background:#e6e9e3;border-radius:4px;place-items:center;display:grid}.composer-attachments button{color:#fff;cursor:pointer;background:#171917db;border-radius:3px;justify-content:center;align-items:center;width:21px;height:21px;display:inline-flex;position:absolute;top:4px;right:4px}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes tool-spin{to{transform:rotate(360deg)}}@keyframes typing-dot{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@keyframes stream-caret{0%,45%{opacity:1}46%,to{opacity:0}}@keyframes image-progress{0%{transform:translate(-105%)}to{transform:translate(295%)}}@keyframes drawer-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes panel-in{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes picker-in{0%{opacity:0;transform:translate(-50%,calc(14px - 50%))scale(.985)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@media (width<=900px){.app-shell{flex-direction:column;display:flex}.app-sidebar{display:none}.sidebar-duplicate{display:inline-flex}}@media (width<=760px){body{overflow:hidden}.auth-shell{display:block;overflow-y:auto}.auth-panel{flex-direction:column;justify-content:center;width:100%;min-height:100dvh;padding:32px 24px;display:flex}.auth-brand{margin-bottom:48px}.auth-copy h1{font-size:25px}.auth-visual{display:none}.history-drawer{width:min(350px,94vw);padding:17px 14px 14px}.template-picker-scrim{-webkit-backdrop-filter:none;backdrop-filter:none}.template-picker{border-width:1px 0 0;border-radius:8px 8px 0 0;width:100%;max-height:86dvh;animation-name:picker-mobile-in;inset:auto 0 0;transform:none}.template-picker-heading{padding:17px 16px 14px}.template-picker-heading h2{font-size:19px}.template-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px 14px 18px}.template-option-copy{padding:9px 9px 10px}.template-option-copy strong{font-size:10px}.template-picker-footer{padding-inline:14px}.studio-workspace{border-inline:0;width:100%;display:block}.conversation-panel{width:100%;height:100%}.conversation-panel.is-empty{grid-template-rows:54px minmax(130px,.8fr) auto minmax(28px,1.2fr)}.conversation-panel.is-empty .chat-thread{padding-bottom:16px}.context-panel{display:none}.run-status-bar{grid-template-columns:minmax(90px,auto) minmax(0,1fr) auto;gap:8px;padding:7px 11px}.run-status-steps{justify-content:flex-start}.run-status-steps>span{display:none}.run-status-steps>span:last-child{display:inline-flex}.run-status-actions{gap:5px}.run-status-actions .icon-button{width:32px;height:32px}.chat-thread{padding:20px 13px 28px}.chat-empty{transform:translateY(-2%)}.chat-empty>span{width:42px;height:42px}.chat-empty strong{font-size:17px}.chat-empty small{text-align:center;max-width:250px;line-height:1.5}.chat-message{gap:9px;max-width:96%}.turn-failure{flex-direction:column;align-items:stretch}.turn-failure>button{align-self:flex-start}.image-generation-progress{width:100%;min-width:min(270px,78vw)}.image-generation-progress>div{grid-template-columns:18px 1fr}.image-generation-progress>div>span{grid-column:2;justify-self:start}.message-artifacts figure{width:min(176px,72vw)}.chat-composer{width:calc(100% - 20px);margin:0 10px 10px}.chat-composer textarea{min-height:92px;max-height:190px}.template-trigger{max-width:158px}.composer-attachments figure{flex-basis:68px;width:68px;height:68px}}@media (height<=760px) and (width>=761px){.chat-composer textarea{min-height:82px}}@media (width>=761px) and (width<=1080px){.template-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.studio-workspace.has-artifact{grid-template-columns:minmax(0,1fr) 280px}.context-panel{padding-inline:12px}}@keyframes picker-mobile-in{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
