.workspace.ai{position:relative}.ai-side{display:grid;align-content:start;gap:var(--space-5)}.ai-side [hidden],.ai-stage [hidden],.chat-stage [hidden]{display:none!important}.ai-actions .btn{flex:1 1 auto}.ai-caveat{font-size:var(--text-xs);color:var(--ink-3)}.ai-field{display:grid;gap:var(--space-2);margin:0;padding:0;border:0;min-width:0}.ai-field legend{padding:0;margin-bottom:var(--space-2)}.ai-text{font-size:var(--text-base);line-height:1.6;overflow-wrap:anywhere}.ai-text>*+*{margin-top:var(--space-3)}.ai-text ul,.ai-text ol{padding-left:1.4em;display:grid;gap:var(--space-1)}.ai-text h3,.ai-text h4{font-size:var(--text-base);font-weight:600}.ai-text code{font-family:var(--font-mono);font-size:.9em;padding:.1em .3em;border-radius:4px;background:color-mix(in oklab,var(--ink) 7%,transparent)}.ai-text pre{padding:var(--space-3);border-radius:var(--radius-md);background:color-mix(in oklab,var(--ink) 6%,transparent);overflow-x:auto}.ai-text pre code{padding:0;background:none}.chat-stage{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:var(--space-4);min-width:0;height:min(72vh,46rem);min-height:28rem}.chat-log{display:flex;flex-direction:column;gap:var(--space-4);min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:var(--space-1)}.chat-empty{display:grid;gap:var(--space-4);margin:auto 0;justify-items:start}.chat-empty-title{font-family:var(--font-display);font-size:var(--text-xl);color:var(--ink-2)}.chat-msg{display:flex}.chat-body{max-width:min(42rem,92%);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font-size:var(--text-base);line-height:1.6;overflow-wrap:anywhere}.chat-user{justify-content:flex-end}.chat-user .chat-body{white-space:pre-wrap;background:var(--accent);color:var(--accent-ink);border-bottom-right-radius:var(--radius-sm)}.chat-assistant .chat-body{border:1px solid var(--line);background:var(--paper);border-bottom-left-radius:var(--radius-sm)}.chat-assistant .chat-body>*+*{margin-top:var(--space-3)}.chat-assistant .chat-body ul,.chat-assistant .chat-body ol{padding-left:1.4em;display:grid;gap:var(--space-1)}.chat-assistant .chat-body h3,.chat-assistant .chat-body h4{font-size:var(--text-base);font-weight:600}.chat-assistant .chat-body code{font-family:var(--font-mono);font-size:.9em;padding:.1em .3em;border-radius:4px;background:color-mix(in oklab,var(--ink) 7%,transparent)}.chat-assistant .chat-body pre{padding:var(--space-3);border-radius:var(--radius-md);background:color-mix(in oklab,var(--ink) 6%,transparent);overflow-x:auto}.chat-assistant .chat-body pre code{padding:0;background:none}.chat-wait,.ai-wait{color:var(--ink-3)}.chat-msg.is-writing .chat-body>:last-child:after{content:"";display:inline-block;width:.5em;height:1em;margin-left:2px;vertical-align:-.15em;background:var(--accent);opacity:.7}.chat-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:var(--space-2)}.chat-input{min-height:3.25rem;max-height:15rem;resize:none;font-size:var(--text-base);line-height:1.5}.chat-send{width:3.25rem;height:3.25rem}.chat-stop{height:3.25rem}.ai-stage{display:grid;gap:var(--space-3);min-width:0}.ai-input{min-height:16rem;resize:vertical;font-size:var(--text-base);line-height:1.6}.ai-under{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-3)}.ai-under-start{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ai-count{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-3)}.ai-out{display:grid;gap:var(--space-3);padding:var(--space-4) var(--space-5);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper)}.ai-out-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2)}.ai-out-head h2{font-family:var(--font-text);font-size:var(--text-sm);font-weight:500;letter-spacing:0}.ai-out-tools{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ai-out .ai-text{min-height:3lh}.ai-out.is-writing .ai-text>:last-child:after{content:"";display:inline-block;width:.5em;height:1em;margin-left:2px;vertical-align:-.15em;background:var(--accent);opacity:.7}.ai-drop{outline:2px dashed transparent;outline-offset:4px;border-radius:var(--radius-md);transition:outline-color var(--dur-2) var(--ease-move)}.ai-drop.is-over{outline-color:var(--accent)}.rw-diff{white-space:pre-wrap}.rw-diff del{color:var(--danger);text-decoration:line-through;text-decoration-thickness:1px;background:color-mix(in oklab,var(--danger) 10%,transparent)}.rw-diff ins{text-decoration:none;background:var(--accent-soft)}.rw-plain{white-space:pre-wrap}
