/* 导图优化：简版 AI 分析面板 */
.mo-launcher[hidden], .mo-panel[hidden], .mo-panel [hidden] { display: none !important; }
/* 和链仓 AI 面板一样排在 #main 里：画布变窄，详情栏在它左边，互不遮挡 */
#main > .mo-panel { flex: 0 0 340px; width: 340px; min-width: 0; min-height: 0; align-self: stretch; overflow-y: auto; box-sizing: border-box; position: relative; z-index: 16;
  background: var(--surface); color: var(--text); border-left: 1px solid var(--line); box-shadow: -5px 0 16px -15px rgba(15,30,40,.3); padding: 16px 16px 20px; display: grid; gap: 10px; align-content: start; }
.mo-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.mo-head h2 { margin: 0; font-size: 16px; }
.mo-close { border: 0; background: none; font-size: 22px; line-height: 1; color: var(--text2); cursor: pointer; padding: 2px 6px; }
.mo-drop { border: 2px dashed var(--line); border-radius: 12px; padding: 14px; display: grid; gap: 6px; background: var(--surface2); }
.mo-drop strong { font-size: 14px; color: var(--accent); } .mo-drop span { font-size: 12px; line-height: 1.6; color: var(--text2); }
.mo-drop.mo-ready { border-color: var(--accent); background: var(--accent-soft); }
.mo-message { margin: 0; font-size: 13px; line-height: 1.6; color: var(--text2); min-height: 1em; }
.mo-message.mo-ok { color: var(--s3); } .mo-message.mo-error { color: var(--s2); }
.mo-muted { margin: 0; font-size: 12px; line-height: 1.6; color: var(--text2); }
.mo-panel h3 { margin: 6px 0 0; font-size: 13px; }
.mo-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.mo-list li { border: 1px solid var(--line2); border-radius: 12px; padding: 10px; display: grid; gap: 6px; }
.mo-name { border: 0; background: none; padding: 0; text-align: left; font: inherit; font-size: 13px; color: var(--text); cursor: pointer; line-height: 1.5; }
.mo-name:hover { color: var(--accent); }
.mo-state { justify-self: start; font-size: 11px; border-radius: 99px; padding: 1px 8px; background: var(--s0b); color: var(--s0); }
.mo-state.mo-running { background: var(--s1b); color: var(--s1); } .mo-state.mo-pending { background: var(--s2b); color: var(--s2); }
.mo-state.mo-adopted { background: var(--s3b); color: var(--s3); } .mo-state.mo-failed { background: var(--s2b); color: var(--s2); }
.mo-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.mo-primary { border: 1px solid var(--accent); background: var(--accent); color: var(--on-accent); border-radius: 8px; padding: 6px 12px; font-size: 12px; cursor: pointer; }
.mo-primary:disabled { opacity: .5; cursor: not-allowed; }
.mo-link { color: var(--accent); font-size: 12px; }
.mo-list small { color: var(--text2); font-size: 11px; }
#dDemo.primary-lite { border-color: var(--accent); color: var(--accent); }
@media (max-width: 760px) { #main > .mo-panel { position: fixed; top: auto; left: 8px; right: 8px; bottom: 8px; z-index: 40; width: auto; max-height: 70vh; border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow); } }
