.chat{border-radius:var(--r-xl);background:var(--panel);border:1px solid var(--line);flex-direction:column;min-height:calc(100dvh - 24px);display:flex}.chat-top{z-index:10;border-radius:var(--r-xl) var(--r-xl) 0 0;background:var(--panel);border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:14px 20px;display:flex;position:sticky;top:12px}.chat-top>div{gap:2px;margin-right:auto;line-height:1.2;display:grid}.chat-top .label{letter-spacing:.1em;align-items:center;gap:8px;display:inline-flex}.chat-top .label:before{content:"";background:var(--green);width:10px;height:6px}.chat-top h1{letter-spacing:-.035em;font-size:19px;font-weight:500}.chat-log{flex-direction:column;flex:1;gap:26px;width:100%;max-width:820px;margin:0 auto;padding:32px 20px 24px;display:flex}.chat-empty{text-align:center;justify-items:center;gap:22px;margin:auto 0;display:grid}.chat-empty-mark{width:64px;height:74px}.chat-empty h2{letter-spacing:-.045em;text-wrap:balance;max-width:560px;font-size:clamp(24px,3.4vw,36px);font-weight:500;line-height:1.12}.chat-empty ul{counter-reset:starter;grid-template-columns:1fr 1fr;gap:8px;width:100%;margin-top:6px;display:grid}.chat-empty li{counter-increment:starter}.chat-empty button{text-align:left;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--bg-2);grid-template-columns:auto 1fr;gap:8px 12px;width:100%;height:100%;padding:16px;font-size:14.5px;line-height:1.45;transition:border-color .2s,background .2s;display:grid;position:relative}.chat-empty button:hover{background:var(--hatch-green), var(--bg-2);border-color:var(--green-line)}.chat-empty button svg{box-sizing:border-box;border-radius:var(--r-sm);border:1px solid var(--green-line);background:var(--green-tint);width:26px;height:26px;color:var(--green);padding:5px}.chat-empty button em{font-style:normal;font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--dim);grid-column:2;font-size:10.5px}.chat-empty button em:before{content:"0" counter(starter) " / ";color:var(--green-deep)}.msg-user{border-radius:var(--r-lg) var(--r-lg) var(--r-sm) var(--r-lg);border:1px solid var(--green-line);background:var(--green-tint);max-width:80%;color:var(--text);white-space:pre-wrap;align-self:flex-end;gap:6px;padding:12px 16px;display:grid}.msg-mode{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--green);font-size:10.5px}.msg-ai{align-items:flex-start;gap:12px;display:flex}.msg-avatar{border-radius:var(--r-sm);background:var(--bg-2);border:1px solid var(--line-2);flex:none;place-items:center;width:32px;height:32px;display:grid}.msg-avatar svg{width:18px;height:20px}.msg-body{flex:1;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0;display:grid}.msg-model{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding-top:7px;font-size:11px;font-weight:500}.msg-working{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);align-items:center;gap:12px;font-size:11.5px;display:inline-flex}.msg-working .dots{margin-top:0}.msg-actions{gap:4px;margin-left:-8px;display:flex}.msg-actions:empty{display:none}.msg-action{border-radius:var(--r-sm);height:28px;font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:0 0;border:1px solid #0000;align-items:center;gap:6px;padding:0 8px;font-size:11px;transition:background .2s,color .2s,border-color .2s;display:inline-flex}.msg-action:hover{border-color:var(--line);background:var(--panel-2);color:var(--text)}.msg-action svg{width:13px;height:13px}.live-text{animation:1.2s ease-in-out infinite pulse}.dots{background:linear-gradient(90deg, var(--green) 6px, transparent 6px) 0 0 / 12px 6px repeat-x;width:30px;height:6px;margin-top:8px;animation:1s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.35}}.run{gap:12px;display:grid}.run-plan{border-left:2px solid var(--green-line);color:var(--muted);gap:4px;padding-left:12px;font-size:14.5px;line-height:1.55;display:grid}.run-plan ol,.run-plan ul{padding-left:1.3em;list-style:decimal}.run-box{border-radius:var(--r-lg);border:1px solid var(--line);background:var(--bg-2);padding:4px}.run-head{border-bottom:1px dashed var(--line-2);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);align-items:center;gap:8px;margin-bottom:4px;padding:8px 10px 9px;font-size:11px;display:flex}.run-head svg{width:13px;height:13px;color:var(--green)}.run-head em{color:var(--text);margin-left:auto;font-style:normal}.run-steps{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent;gap:6px;max-height:174px;display:grid;overflow-y:auto}.run-step{position:relative}.run-step:not(:last-child):after{content:"";background:var(--line-2);width:1px;height:8px;position:absolute;bottom:-7px;left:25px}.run-row{border-radius:var(--r);border:1px solid var(--line);background:var(--panel);align-items:center;gap:12px;height:54px;padding:0 10px 0 8px;transition:border-color .25s;display:flex}.run-step.is-running .run-row{border-color:var(--green-line)}.run-icon{border-radius:var(--r-sm);background:var(--bg-2);border:1px solid var(--line);width:36px;height:36px;color:var(--green);flex:none;place-items:center;display:grid}.run-step.is-running .run-icon{background:var(--green);border-color:var(--green);color:var(--on-accent)}.run-icon svg{width:16px;height:16px}.run-text{flex:1;gap:1px;min-width:0;display:grid}.run-label{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.run-preview{font-family:var(--mono);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.run-source,.run-state{border:1px solid #0000;border-radius:3px;flex:none;place-items:center;width:24px;height:24px;display:grid}.run-source{color:var(--muted);transition:background .2s,color .2s}.run-source:hover{background:var(--panel-2);color:var(--text)}.run-source svg,.run-state svg{width:13px;height:13px}.run-step.is-running .run-state{color:var(--green)}.run-step.is-done .run-state{border-color:var(--green-line);background:var(--green-tint);color:var(--green)}.run-step.is-failed .run-state{border-color:var(--red-line);background:var(--red-tint);color:var(--red)}.run-step.is-failed .run-preview{color:var(--red)}.spin{animation:.9s linear infinite spin}@keyframes spin{to{rotate:360deg}}@media (prefers-reduced-motion:reduce){.spin{animation:1s ease-in-out infinite pulse}}.receipt{border-radius:var(--r);border:1px solid var(--line-2);background:var(--bg-2);font-family:var(--mono)}.receipt summary{cursor:pointer;align-items:center;gap:10px;padding:11px 14px;font-size:12px;list-style:none;display:flex}.receipt summary::-webkit-details-marker{display:none}.receipt summary>svg{width:15px;height:15px;color:var(--green);flex:none}.receipt-title{letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;font-size:11.5px;font-weight:500}.receipt summary code{white-space:nowrap}@media (max-width:480px){.receipt summary{flex-wrap:wrap;gap:8px;padding:11px 12px}.receipt summary code,.receipt summary>svg:first-child{display:none}.receipt-title{letter-spacing:.06em}.receipt-meta{letter-spacing:.04em;padding:2px 6px}.receipt-body{margin:0 12px}}.receipt summary code,.receipt-body code{font-family:var(--mono);color:var(--muted);font-size:11.5px}.receipt-meta{border:1px solid var(--green-line);background:var(--green-tint);color:var(--green);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;border-radius:3px;margin-left:auto;padding:3px 8px;font-size:10.5px}.receipt summary .receipt-chev{width:14px;height:14px;color:var(--muted);transition:transform .2s}.receipt[open] .receipt-chev{transform:rotate(180deg)}.receipt-body{border-top:1px dashed var(--line-2);gap:0;margin:0 14px;padding-bottom:14px;font-size:12px;display:grid}.receipt-body dl{grid-template-columns:auto minmax(0,1fr);margin:0;display:grid}.receipt-body dt,.receipt-body dd{border-bottom:1px dashed var(--line);margin:0;padding:8px 0;line-height:18px}.receipt-body dt{letter-spacing:.1em;text-transform:uppercase;color:var(--dim);padding-right:18px;font-size:10.5px}.receipt-body dd{text-align:right;color:var(--text)}.receipt-body dd code{word-break:break-all;color:var(--text)}.receipt-chain{border-radius:var(--r-sm);border:1px solid var(--line);background:var(--hatch), var(--bg);counter-reset:none;gap:4px;margin:12px 0 0;padding:10px 12px;display:grid}.receipt-chain li{color:var(--text);justify-content:space-between;gap:12px;display:flex}.receipt-note{border-top:1px dashed var(--line-2);font-family:var(--sans);color:var(--muted);margin-top:12px;padding-top:12px;font-size:12.5px;line-height:1.5}.receipt-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.receipt-ok,.receipt-bad{letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:500}.receipt-ok{color:var(--green)}.receipt-bad{color:var(--red)}.md{color:var(--text);font-size:16px;line-height:1.65}.md>*+*{margin-top:.8em}.md h1,.md h2,.md h3{letter-spacing:-.03em;font-size:18px;font-weight:500}.md>h1:not(:first-child),.md>h2:not(:first-child),.md>h3:not(:first-child){margin-top:1.3em}.md ul,.md ol{padding-left:1.3em}.md ul{list-style:square}.md ul li::marker{color:var(--green)}.md ol{list-style:decimal}.md ol li::marker{font-family:var(--mono);color:var(--green);font-size:.85em}.md li+li{margin-top:.3em}.md strong{font-weight:600}.md code{font-family:var(--mono);border-radius:var(--r-sm);border:1px solid var(--line);background:var(--panel-2);padding:2px 6px;font-size:.86em}.md pre{border-radius:var(--r);border:1px solid var(--line);background:var(--bg);color:var(--text);padding:14px 16px;overflow-x:auto}.md pre code{background:0 0;border:0;padding:0}.md a{color:var(--green);text-underline-offset:3px;text-decoration:underline}.md table{border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:var(--r);width:fit-content;max-width:100%;font-size:14px;display:block;overflow-x:auto}.md th,.md td{text-align:left;border-bottom:1px dashed var(--line-2);padding:9px 14px}.md th{background:var(--bg-2);border-bottom:1px solid var(--line);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:500}.md tr:last-child td{border-bottom:0}.msg-note{border-radius:var(--r-sm);border:1px solid var(--amber-line);background:var(--amber-tint);color:var(--amber);padding:10px 12px;font-size:13.5px}.chat-dock{border-radius:var(--r-xl) var(--r-xl) 0 0;background:var(--panel);width:100%;max-width:820px;margin:0 auto;padding:10px 20px 0;position:sticky;bottom:12px}.chat-dock .composer-card{border-radius:var(--r-xl);border:1px solid var(--line-2);background:var(--bg-2);box-shadow:none;padding:14px 14px 12px}.chat-dock .composer-card:focus-within{border-color:var(--green-line)}.chat-dock .composer-avatar{border-radius:var(--r-sm);border-color:var(--line-2);background:var(--panel)}.chat-dock .composer textarea{color:var(--text);font-size:17px}.chat-dock .composer textarea::placeholder{color:var(--dim)}.chat-dock .composer-bottom{border-top:1px dashed var(--line-2);margin-top:14px;padding-top:12px}.chat-dock .composer-pill{border-radius:var(--r-sm);border:1px solid var(--line-2);background:var(--panel);height:34px;font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text);padding:0 10px 0 12px;font-size:11.5px;font-weight:500}.chat-dock .composer-pill:hover{border-color:var(--green-line);background:var(--panel-2)}.chat-dock .composer-chev{color:var(--dim)}.chat-dock .composer-model-name{font-family:var(--mono);letter-spacing:.06em;color:var(--muted);font-size:11px}.chat-dock .composer-send{border-radius:var(--r-sm);background:var(--green);width:42px;height:38px;color:var(--on-accent);clip-path:var(--cut)}.chat-dock .composer-send:hover:not(:disabled){background:var(--green-hover);transform:none}.chat-dock .composer-send:disabled{background:var(--panel-3);color:var(--dim)}.chat-dock .composer-models{border-radius:var(--r-lg);border:1px solid var(--line-2);background:var(--panel)}.chat-dock .composer-model{border-radius:var(--r-sm);border:1px solid #0000}.chat-dock .composer-model:hover{background:var(--panel-2)}.chat-dock .composer-model[aria-selected=true]{border-color:var(--green-line);background:var(--green-tint);box-shadow:none}.chat-dock .composer-model.is-soon:hover{background:0 0}.chat-dock .composer-soon{background:var(--amber);color:var(--on-accent);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;border-radius:2px;font-size:8px}.chat-fine{text-align:center;font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--dim);padding:10px 0 14px;font-size:10.5px}.ck .btn,.chat .btn{border-radius:var(--r-sm);clip-path:var(--cut);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;font-size:12.5px;font-weight:500}.ck .btn-sm,.chat .btn-sm{height:34px;padding:0 14px;font-size:11.5px}.ck .btn-ink,.chat .btn-ink{background:var(--green);color:var(--on-accent)}.ck .btn-ink:hover,.chat .btn-ink:hover{background:var(--green-hover)}.ck .btn-soft,.chat .btn-soft{background:var(--panel-2);border-color:var(--line-2);color:var(--text)}.ck .btn-soft:hover,.chat .btn-soft:hover{background:var(--panel-3)}@media (max-width:1024px){.chat{min-height:calc(100dvh - 172px)}.chat-top{top:76px}.frame-chat{padding-bottom:12px}.frame-chat .chat{min-height:calc(100dvh - 88px)}.chat-dock{bottom:0}.chat-dock:after{content:"";background:var(--bg);width:100vw;height:24px;position:absolute;top:100%;left:50%;translate:-50%}.page-menu{position:relative}.page-menu-panel{z-index:60;border-radius:var(--r-lg);border:1px solid var(--line-2);background:var(--panel);gap:2px;width:220px;padding:4px;animation:.2s ease-out drop;display:grid;position:absolute;top:calc(100% + 8px);right:0}.page-menu-panel a{border-radius:var(--r-sm);height:40px;color:var(--muted);align-items:center;gap:10px;padding:0 12px;font-size:14.5px;transition:background .2s,color .2s;display:flex}.page-menu-panel a:hover{background:var(--panel-2);color:var(--text)}.page-menu-panel a[aria-current=page]{background:var(--green-tint);color:var(--green)}.page-menu-panel svg{width:16px;height:16px}}@media (max-width:640px){.chat-top{padding:12px 14px}.chat-log{padding:22px 14px 18px}.chat-dock{padding:0 10px}.chat-empty ul{grid-template-columns:1fr}.msg-user{max-width:90%}}
