/* Scoped desktop editing workspace. Other modules keep their existing skin. */
body.ai-chat-mode { overflow:hidden; }
body.ai-chat-mode main { min-width:0 !important; overflow:hidden !important; padding-bottom:12px !important; }
body.ai-chat-mode .footer { display:none !important; }
body.ai-chat-mode #panel-ai-chat { width:100% !important; max-width:none !important; min-width:0 !important; margin:0 !important; }
#panel-ai-chat .page-studio-head { display:none !important; }
body.ai-chat-mode #panel-ai-chat .ai-chat {
  height:calc(100dvh - var(--ai-workspace-top, 100px) - 12px) !important;
  min-height:0 !important; max-height:none !important; width:100% !important;
  display:flex !important; flex-direction:column !important; border-radius:14px !important;
  background:#f7faff !important; box-shadow:none !important; transform:none !important;
}
body.ai-chat-mode #panel-ai-chat .ai-chat-head {
  flex:0 0 auto !important; flex-direction:column !important; align-items:stretch !important;
  gap:10px !important; padding:14px 18px !important; min-height:0 !important;
  background:#f7faff !important; backdrop-filter:none !important;
}
#panel-ai-chat .ai-chat-heading p { color:#7185a3 !important; font-size:12px !important; line-height:1.5; }
body.ai-chat-mode #panel-ai-chat .ai-chat-meta { justify-content:flex-start !important; gap:7px !important; }
#panel-ai-chat .ai-agent-label { display:inline-flex; align-items:center; gap:6px; white-space:nowrap; color:#7185a3; }
#panel-ai-chat .cc-inline-status { color:#7185a3 !important; white-space:normal; overflow-wrap:anywhere; }
#panel-ai-chat .cc-inline-login { font-size:12px !important; min-height:32px !important; }
#panel-ai-chat .ai-chat-tools { display:inline-flex; margin-left:auto; min-width:0; }
#aiChatUtilitySlot #studioUtilityDock {
  position:static !important; inset:auto !important; display:flex !important;
  transform:none !important; margin:0 !important; padding:0 !important; gap:6px !important;
  width:auto !important; min-width:0 !important; background:none !important;
  border:0 !important; border-radius:0 !important; box-shadow:none !important; z-index:auto !important;
}
#aiChatUtilitySlot #studioUtilityDock button {
  position:static !important; inset:auto !important; display:inline-flex !important;
  width:auto !important; height:32px !important; min-height:32px !important;
  padding:0 9px !important; gap:5px !important; border-radius:8px !important;
  border:1px solid #d6e2f317 !important; background:#ffffff04 !important;
  box-shadow:none !important; transform:none !important; color:#7768df !important;
}
#aiChatUtilitySlot #studioUtilityDock small,
#aiChatUtilitySlot #studioUtilityDock .studio-dock-arrow,
#aiChatUtilitySlot #studioUtilityDock .studio-dock-divider { display:none !important; }
#aiChatUtilitySlot #studioUtilityDock .studio-dock-icon { width:16px !important; height:16px !important; padding:0 !important; background:none !important; border:0 !important; }
#aiChatUtilitySlot #studioUtilityDock strong { font-size:12px !important; font-weight:500 !important; white-space:nowrap; }
body.ai-chat-mode #panel-ai-chat .ai-chat-body {
  flex:1 1 0 !important; min-height:100px !important; overflow-y:auto !important;
  overflow-x:hidden !important; padding:18px !important; gap:14px !important;
  background:none !important; scrollbar-gutter:stable;
}
body.ai-chat-mode #panel-ai-chat .ai-msg {
  display:block !important; flex:0 0 auto !important; width:fit-content !important;
  max-width:min(92%, 900px) !important; min-width:0 !important;
}
body.ai-chat-mode #panel-ai-chat .ai-msg .ai-bubble {
  display:block !important; width:auto !important; max-width:100% !important;
  min-width:0 !important; font-size:14px !important; line-height:1.75 !important;
  padding:11px 14px !important; white-space:pre-wrap; overflow-wrap:anywhere;
  word-break:normal !important; box-shadow:none !important; border-radius:11px !important;
}
body.ai-chat-mode #panel-ai-chat .ai-msg-user { margin-left:auto !important; }
body.ai-chat-mode #panel-ai-chat .ai-msg-user .ai-bubble { background:#eeeaff !important; color:#252014 !important; }
body.ai-chat-mode #panel-ai-chat .ai-msg-run { width:100% !important; max-width:100% !important; }
body.ai-chat-mode #panel-ai-chat .ai-msg .ai-run { width:100% !important; white-space:normal; }
body.ai-chat-mode #panel-ai-chat .ai-run-steps { max-height:none !important; overflow:visible !important; gap:8px !important; }
#panel-ai-chat .ai-run-title { font-size:14px !important; line-height:1.65; }
#panel-ai-chat .ai-run-line { font-size:13px !important; line-height:1.75 !important; white-space:pre-wrap; color:#7185a3; }
#panel-ai-chat .ai-run-line.ok, #panel-ai-chat .ai-run-verification .ok { color:#7185a3; }
#panel-ai-chat .ai-run-line.err { color:#7768df; }
#panel-ai-chat .ai-run-detail { flex:1 0 100%; min-width:0; color:#7185a3; }
#panel-ai-chat .ai-run-detail summary { cursor:pointer; font-size:12px; padding:3px 0; }
#panel-ai-chat .ai-run-detail pre { margin:6px 0; padding:10px; white-space:pre-wrap; overflow-wrap:anywhere; font-size:12px; line-height:1.6; background:#f7faff; border-radius:6px; font-family:Consolas, 'Microsoft YaHei', monospace; }
#panel-ai-chat .ai-run-plan { padding-left:22px; margin:4px 0 10px; color:#7768df; font-size:13px; }
#panel-ai-chat .ai-run-plan li { padding:3px 0; }
#panel-ai-chat .ai-run-verification { margin-top:8px; padding:12px; border:1px solid #d6e2f310; border-radius:8px; background:#f7faff; font-size:12px; line-height:1.8; color:#7768df; }
#panel-ai-chat .ai-message-status { font-size:12px; color:#7768df; margin-bottom:8px; }
body.ai-chat-mode #panel-ai-chat .ai-chat-suggestions { flex:0 0 auto !important; flex-wrap:nowrap !important; overflow-x:auto; padding:9px 18px 0; gap:6px; }
#panel-ai-chat .ai-chat-suggestions button { flex:0 0 auto; font-size:11px !important; min-height:29px; }
body.ai-chat-mode #panel-ai-chat .ai-chat-attach {
  flex:0 0 auto !important; max-height:none !important; overflow:visible !important;
  min-height:0 !important; padding:9px 18px 0 !important; gap:8px !important;
}
#panel-ai-chat .ai-attach-toolbar { flex-wrap:wrap !important; gap:6px !important; }
#panel-ai-chat #aiChatUploadBtn { min-height:32px !important; font-size:12px !important; }
#panel-ai-chat .ai-chat-chip { font-size:11px; max-width:100% !important; }
#panel-ai-chat .ai-chat-chip-clear { font-size:12px; }
#panel-ai-chat .ai-chat-attachment-shelf { overflow-y:auto; max-height:min(25dvh, 240px); min-height:0; padding-right:5px; scrollbar-gutter:stable; }
#panel-ai-chat .ai-chat-attachment-shelf[hidden] { display:none !important; }
body.ai-chat-mode #panel-ai-chat .ai-chat-attachment-list,
#panel-ai-chat #aiKnowledgeItems { max-height:none !important; overflow:visible !important; }
body.ai-chat-mode #panel-ai-chat .ai-chat-attachment-list { grid-template-columns:1fr !important; }
#panel-ai-chat .ai-knowledge-help { font-size:11px; line-height:1.6; margin-bottom:8px; }
#panel-ai-chat .ai-attach-copy b { white-space:normal !important; line-height:1.5; color:#29496f; }
#panel-ai-chat .ai-attach-copy small { color:#7185a3 !important; }
body.ai-chat-mode #panel-ai-chat .ai-chat-input { flex:0 0 auto !important; align-items:flex-start !important; padding:12px 18px !important; gap:10px !important; }
#panel-ai-chat .ai-chat-input textarea { width:100%; display:block; font-size:14px !important; }
#panel-ai-chat .ai-chat-input-hint { font-size:11px !important; color:#7185a3 !important; line-height:1.6; }
#panel-ai-chat .ai-chat-input-hint[data-tone='error'] { color:#7768df !important; }
#panel-ai-chat .ai-chat-input button { min-width:64px !important; font-size:13px !important; }
body.ai-chat-mode #chatcutDrawer { min-width:0 !important; width:var(--cc-w); max-width:calc(100vw - 24px); }
@media (min-width:1360px) {
  body.ai-chat-mode.cc-open main { margin-right:var(--cc-w) !important; transition:none !important; }
}
@media (max-width:1359px) {
  body.ai-chat-mode.cc-open main { margin-right:0 !important; }
  body.ai-chat-mode #chatcutDrawer { box-shadow:-24px 0 60px #d6e2f3aa; }
}
@media (max-width:1100px) {
  #panel-ai-chat .ai-agent-label { display:none; }
  #panel-ai-chat .ai-chat-tools { margin-left:0; }
}
@media (max-height:780px) {
  body.ai-chat-mode #panel-ai-chat .ai-chat-head { padding:10px 14px !important; gap:7px !important; }
  #panel-ai-chat .ai-chat-heading p { display:none !important; }
  #panel-ai-chat .ai-chat-attachment-shelf { max-height:22dvh; }
  body.ai-chat-mode #panel-ai-chat .ai-chat-body { padding:12px 14px !important; }
  body.ai-chat-mode #panel-ai-chat .ai-chat-input { padding:9px 14px !important; }
}
.ai-knowledge-dialog[open] { display:flex; flex-direction:column; gap:10px; overflow:hidden; padding:20px; width:min(900px, calc(100vw - 32px)); }
.ai-knowledge-dialog header { flex:0 0 auto; }
.ai-knowledge-dialog p { flex:0 0 auto; margin:0; font-size:12px; line-height:1.65; }
.ai-knowledge-dialog .ai-knowledge-preview-notice { color:#7185a3; }
.ai-knowledge-dialog .ai-knowledge-filebar { display:flex; gap:8px; min-width:0; flex:0 0 auto; }
.ai-knowledge-dialog select { flex:1; min-width:0; max-width:100%; color:#29496f; border:1px solid #d6e2f325; padding:8px; border-radius:7px; background:#f7faff; }
.ai-knowledge-dialog select option { background:#f7faff; }
.ai-knowledge-dialog pre { flex:1 1 auto; min-height:100px; max-height:45dvh; margin:0; background:#f7faff; }
.ai-knowledge-dialog .ai-knowledge-pagebar { display:flex; align-items:center; gap:12px; justify-content:space-between; flex:0 0 auto; font-size:12px; color:#7185a3; }
.ai-knowledge-dialog [hidden] { display:none !important; }
.ai-knowledge-dialog button:disabled { opacity:.55; cursor:wait; }
@media (prefers-reduced-motion:reduce) {
  body.ai-chat-mode #panel-ai-chat *, #aiChatUtilitySlot #studioUtilityDock { animation:none !important; transition:none !important; }
}

.ai-composition-control{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:12px 20px;border-top:1px solid #d6e2f312;color:#7768df;font-size:13px}.ai-composition-control select{background:#f7faff;color:#7768df;border:1px solid #c8cdf6;border-radius:9px;padding:9px;max-width:100%}.ai-composition-control span{color:#7185a3}
