/* 智能体 · 广场 / 我的 */
.page[data-page="agents"].active {
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
  background: #fff;
}
body:not(.theme-light) .page[data-page="agents"].active {
  background: #0a0e14;
}

.agents-square-root,
.agents-chat-root {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
  width: 100%;
}
.page[data-page="agents"].active .agents-square-root:not(.agents-in-editor) {
  justify-content: flex-start;
}

.agents-sq-hub-shell {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  width: 100%;
}
.agents-square-root.agents-in-editor .agents-sq-hub-shell {
  display: none;
}
.agents-square-root.agents-in-editor .agents-sq-topbar--editor {
  display: flex !important;
}
.agents-square-root.agents-in-editor .agents-hub-spacer {
  flex: 0 0 auto;
  max-height: 72px;
}
.agents-square-root.agents-in-editor .agents-sq-scroll {
  flex: 1 1 auto;
  min-height: 0;
  max-height: none;
  display: block;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding: 12px 14px 12px;
  background: linear-gradient(180deg, #f8fafc 0%, #fff 120px);
}
body:not(.theme-light) .agents-square-root.agents-in-editor .agents-sq-scroll {
  background: linear-gradient(180deg, #0d1219 0%, #0a0e14 140px);
}
.agents-square-root:not(.agents-in-editor) .agents-sq-scroll {
  flex: 0 1 auto !important;
  height: auto;
}

/* —— 广场/我的 Hub 头带（与对话页同样用物理 spacer） —— */
.agents-hub-head-band {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-self: stretch;
}
.agents-hub-spacer {
  flex: 0 0 auto;
  width: 100%;
  height: 0;
  pointer-events: none;
}
html.native-app-boot body .agents-hub-spacer,
body.native-app .agents-hub-spacer {
  height: 48px;
}
.page[data-page="agents"].active.agents-in-chat .agents-hub-spacer {
  height: 0 !important;
}

/* —— 顶栏（Hub/编辑；安全区由 spacer 承担） —— */
.agents-sq-topbar {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 4px;
  min-height: 40px;
  padding: 2px 12px 6px;
  padding-top: 2px;
  background: transparent;
}
.agents-sq-topbar--editor {
  display: none;
}
.agents-sq-topbar--editor .agents-sq-topbar-title {
  flex: 1;
  text-align: center;
  font-size: 17px;
  font-weight: 600;
  color: #0f172a;
  padding: 0 8px;
}
body:not(.theme-light) .agents-sq-topbar--editor .agents-sq-topbar-title { color: #f1f5f9; }
.agents-sq-ed-save {
  flex: 0 0 auto;
  border: none;
  background: rgba(46, 230, 201, 0.14);
  color: #0d9488;
  font-size: 13px;
  font-weight: 600;
  padding: 7px 14px;
  border-radius: 999px;
  font-family: inherit;
  cursor: pointer;
}
.agents-sq-ed-save:active { opacity: 0.85; }
body:not(.theme-light) .agents-sq-ed-save {
  background: rgba(46, 230, 201, 0.12);
  color: #2ee6c9;
}

.agents-sq-tabs-wrap {
  flex: 0 0 auto;
  position: relative;
  z-index: 3;
  background: #fff;
  border-bottom: 1px solid #eef2f7;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.04);
}
body:not(.theme-light) .agents-sq-tabs-wrap {
  background: #0f1419;
  border-bottom-color: rgba(255, 255, 255, 0.06);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
}

.agents-sq-back {
  width: 44px;
  height: 44px;
  min-width: 44px;
  border: none;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #111;
  flex-shrink: 0;
  border-radius: 12px;
}
.agents-sq-back:active { background: rgba(15, 23, 42, 0.06); }
body:not(.theme-light) .agents-sq-back { color: #e8ecf2; }
body:not(.theme-light) .agents-sq-back:active { background: rgba(255,255,255,0.06); }

.agents-sq-tabs {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: 4px;
  min-height: 40px;
}
.agents-sq-tab {
  border: none;
  background: transparent;
  font-size: 16px;
  font-weight: 500;
  color: #94a3b8;
  padding: 0 18px;
  min-height: 40px;
  min-width: 68px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.agents-sq-tab.is-active {
  color: #111;
  font-weight: 600;
}
body:not(.theme-light) .agents-sq-tab.is-active { color: #f1f5f9; }
.agents-sq-tab.is-active::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 28px;
  height: 3px;
  margin-left: -14px;
  background: #3b82f6;
  border-radius: 3px 3px 0 0;
}

.agents-sq-topbar-spacer { width: 44px; flex-shrink: 0; }

/* —— 滚动区 —— */
.agents-sq-scroll {
  flex: 0 1 auto;
  width: 100%;
  max-width: 100%;
  min-height: 0;
  max-height: calc(100dvh - 52px - 112px - 44px - 64px - env(safe-area-inset-top, 0px));
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding: 10px 14px 6px;
  box-sizing: border-box;
  background: #fff;
}
body:not(.theme-light) .agents-sq-scroll {
  background: #0f1419;
}

/* —— Hero：背景图 + 渐变兜底 —— */
.agents-sq-hero {
  position: relative;
  flex: 0 0 auto;
  width: 100%;
  height: 152px;
  overflow: hidden;
  background: url('../people/agents-hub-hero.png') center top / cover no-repeat,
              linear-gradient(135deg, #cfe0ff 0%, #dce9ff 42%, #edf3fc 100%);
}
.agents-sq-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
    rgba(0,0,0,0.10) 0%,
    rgba(0,0,0,0.02) 40%,
    rgba(0,0,0,0.32) 100%);
  pointer-events: none;
}
.agents-sq-hero-text {
  position: absolute;
  z-index: 1;
  bottom: 14px;
  left: 16px;
  right: 16px;
}
.agents-sq-hero-ego {
  margin: 0 0 5px;
}
.hero-ego-badge {
  display: inline-block;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.95);
  background: rgba(255,255,255,0.18);
  border: 1px solid rgba(255,255,255,0.35);
  border-radius: 4px;
  padding: 2px 7px 1px;
  backdrop-filter: blur(4px);
}
.agents-sq-hero-title {
  position: relative;
  margin: 0;
  font-size: 30px;
  font-weight: 900;
  line-height: 1.1;
  color: #fff;
  letter-spacing: -0.03em;
  text-shadow: 0 2px 18px rgba(0,0,0,0.65), 0 1px 0 rgba(0,0,0,0.3);
}
.hero-title-glow {
  position: absolute;
  inset: 0;
  color: transparent;
  background: linear-gradient(100deg, #c8e6ff 0%, #ffffff 40%, #b8ccff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  opacity: 0.5;
  pointer-events: none;
  user-select: none;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
}
body:not(.theme-light) .agents-sq-hero-title { color: #fff; }
.agents-sq-hero-sub {
  margin: 6px 0 0;
  font-size: 11.5px;
  line-height: 1.4;
  color: rgba(255,255,255,0.78);
  text-shadow: 0 1px 4px rgba(0,0,0,0.4);
}
body:not(.theme-light) .agents-sq-hero-sub { color: rgba(255,255,255,0.72); }
body:not(.theme-light) .agents-sq-hero {
  background: url('../people/agents-hub-hero.png') center top / cover no-repeat,
              linear-gradient(135deg, #1a2744 0%, #152030 48%, #0f1419 100%);
}
body:not(.theme-light) .agents-sq-hero::after {
  background: linear-gradient(180deg,
    rgba(0,0,0,0.15) 0%,
    rgba(0,0,0,0.05) 40%,
    rgba(0,0,0,0.42) 100%);
}
body:not(.theme-light) .agents-sq-hero-ego { color: rgba(255,255,255,0.65); }

/* —— 广场卡片：左图右文 —— */
.agents-sq-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  width: 100%;
  margin: 0;
  padding: 0;
}
.agents-sq-card {
  position: relative;
  border: none;
  border-radius: 12px;
  min-height: 112px;
  padding: 10px 8px 10px 10px;
  text-align: left;
  overflow: hidden;
  background: var(--agent-card-bg, #f0f4ff);
  box-shadow: 0 2px 10px rgba(15, 23, 42, 0.05);
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 10px;
  width: 100%;
}
.agents-sq-card:active {
  transform: scale(0.98);
  transition: transform 0.1s ease;
}

/* 浅色：卡片统一蓝灰底 + 品牌色标签（忽略 JS 按角色分的 cardBg/accent） */
body.theme-light .agents-sq-card {
  --agent-card-bg: #f4f7fc;
  --agent-accent: #4b6bfb;
  background: #f4f7fc !important;
  border: 1px solid #e6ecf8;
  box-shadow: 0 2px 8px rgba(59, 107, 251, 0.06);
}
body.theme-light .agents-sq-card-tag {
  color: #4b6bfb !important;
}
body.theme-light .agents-sq-card-badge {
  color: #3b82f6 !important;
}
body.theme-light .agents-sq-card-media {
  background: #fff;
  box-shadow: 0 2px 8px rgba(59, 107, 251, 0.1);
}
body.theme-light .agents-sq-card-go {
  background: #fff;
  color: #64748b;
  border: 1px solid #e6ecf8;
}

/* 深色：卡片统一深蓝灰底 + 品牌色标签（忽略 JS 按角色分的 cardBg/accent） */
body:not(.theme-light) .agents-sq-card {
  --agent-card-bg: #1a2332;
  --agent-accent: #7aa2ff;
  background: #1a2332 !important;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.35);
}
body:not(.theme-light) .agents-sq-card-tag {
  color: #7aa2ff !important;
}
body:not(.theme-light) .agents-sq-card-badge {
  color: #6b9bff !important;
}
body:not(.theme-light) .agents-sq-card-media {
  background: rgba(36, 48, 68, 0.95) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.35);
}
body:not(.theme-light) .agents-sq-card-go {
  background: #243044 !important;
  color: #94a3b8 !important;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: none;
}

.agents-sq-card-avatar-col {
  flex: 0 0 48px;
  width: 48px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}
.agents-sq-card-badge {
  flex: 0 0 auto;
  font-size: 9px;
  font-weight: 600;
  padding: 1px 6px;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.92);
  line-height: 1.25;
  white-space: nowrap;
  text-align: center;
  max-width: 100%;
}
body:not(.theme-light) .agents-sq-card-badge {
  background: rgba(21, 27, 36, 0.88);
}
.agents-sq-card-media {
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.85);
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
}
.agents-sq-card-cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
  display: block;
  pointer-events: none;
}
.agents-sq-card-emoji {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-size: 28px;
  line-height: 1;
  pointer-events: none;
}
.agents-sq-card-body {
  flex: 1;
  min-width: 0;
  padding-right: 28px;
  padding-top: 2px;
}
.agents-sq-card-title,
.agents-sq-card-title-line {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  font-size: 14px;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.25;
  white-space: normal;
  word-break: keep-all;
  margin-bottom: 2px;
}
body:not(.theme-light) .agents-sq-card-title,
body:not(.theme-light) .agents-sq-card-title-line { color: #f1f5f9; }
.agents-sq-card-tag {
  margin-top: 3px;
  font-size: 11px;
  line-height: 1.35;
  color: var(--agent-accent, #3b82f6);
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}
.agents-sq-card-desc {
  margin-top: 4px;
  font-size: 10px;
  line-height: 1.4;
  color: #64748b;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
body:not(.theme-light) .agents-sq-card-desc { color: #94a3b8; }
.agents-sq-card-go {
  position: absolute;
  right: 8px;
  bottom: 12px;
  z-index: 2;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.95);
  color: #64748b;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08);
}

.agents-sq-disclaimer {
  margin: 10px 2px 0;
  padding: 8px 10px;
  border-radius: 10px;
  background: #f8fafc;
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 11px;
  line-height: 1.5;
  color: #94a3b8;
  text-align: left;
}
.agents-sq-disclaimer p { margin: 0; flex: 1; }
.agents-sq-disclaimer-ic {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  margin-top: 1px;
  color: #94a3b8;
}
body:not(.theme-light) .agents-sq-disclaimer {
  background: #151b24;
}

/* —— 列表行（最近 / 搜索） —— */
.agents-sq-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.agents-sq-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px;
  border: none;
  background: #fff;
  width: 100%;
  text-align: left;
  border-radius: 14px;
  box-shadow: 0 2px 12px rgba(15, 23, 42, 0.06);
}
body:not(.theme-light) .agents-sq-row {
  background: #151b24;
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.25);
}
.agents-sq-row-chevron {
  flex-shrink: 0;
  color: #cbd5e1;
}

.agents-sq-avatar {
  flex: 0 0 auto;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  background: linear-gradient(145deg, #e8f0ff, #f0f4ff);
  overflow: hidden;
}
.agents-sq-avatar--lg {
  width: 64px;
  height: 64px;
  border-radius: 14px;
}
.agents-sq-avatar .agents-sq-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
}
.agents-sq-emoji { line-height: 1; }

.agents-sq-body { flex: 1; min-width: 0; }
.agents-sq-title-row {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.agents-sq-title {
  font-size: 16px;
  font-weight: 600;
  color: #111;
}
body:not(.theme-light) .agents-sq-title { color: #f1f5f9; }
.agents-sq-row-tag {
  font-size: 11px;
  font-weight: 500;
  color: #64748b;
  margin-top: 2px;
}
.agents-sq-badge-official {
  font-size: 10px;
  padding: 1px 5px;
  border-radius: 4px;
  background: #3b82f6;
  color: #fff;
  font-weight: 500;
}
.agents-sq-desc {
  margin-top: 4px;
  font-size: 13px;
  line-height: 1.45;
  color: #64748b;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* —— 我的 —— */
.agents-sq-mine-toolbar { padding: 8px 0 12px; display: flex; flex-direction: column; gap: 10px; }
.agents-sq-mine-toolbar-head {
  display: flex; align-items: flex-start; justify-content: space-between; gap: 10px;
}
.agents-sq-mine-title { font-size: 16px; font-weight: 700; color: var(--text, #0f172a); }
.agents-sq-mine-sub { font-size: 11px; color: var(--muted, #64748b); margin-top: 2px; }
.agents-sq-sync-badge {
  font-size: 10px; padding: 4px 10px; border-radius: 999px; white-space: nowrap;
  border: 1px solid rgba(148,163,184,.35); color: #64748b; background: rgba(148,163,184,.08);
}
.agents-sq-sync-badge.ok { color: #0d9488; border-color: rgba(13,148,136,.35); background: rgba(13,148,136,.08); }
.agents-sq-sync-badge.pending { color: #b45309; border-color: rgba(180,83,9,.35); background: rgba(180,83,9,.08); }
.agents-sq-sync-badge.err { color: #dc2626; border-color: rgba(220,38,38,.35); background: rgba(220,38,38,.08); }
.agents-sq-sync-btn {
  width: 100%; border: 1px solid rgba(59,130,246,.25); background: rgba(59,130,246,.06);
  color: #2563eb; border-radius: 12px; padding: 10px; font-size: 13px; font-weight: 600;
}
body:not(.theme-light) .agents-sq-sync-btn { color: #93c5fd; border-color: rgba(147,197,253,.25); background: rgba(59,130,246,.1); }
.agents-sq-create-btn {
  width: 100%;
  border: 1px dashed #cbd5e1;
  background: #fff;
  color: #334155;
  border-radius: 14px;
  padding: 14px;
  font-size: 14px;
  font-weight: 500;
}
body:not(.theme-light) .agents-sq-create-btn {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.15);
  color: #e2e8f0;
}

.agents-sq-mine-row-wrap { position: relative; }
.agents-sq-mine-row {
  display: flex;
  gap: 12px;
  padding: 14px;
  border: none;
  background: #fff;
  width: 100%;
  text-align: left;
  border-radius: 14px;
  margin-bottom: 10px;
  box-shadow: 0 2px 12px rgba(15, 23, 42, 0.06);
}
body:not(.theme-light) .agents-sq-mine-row {
  background: #151b24;
}
.agents-sq-draft {
  font-size: 11px;
  padding: 2px 6px;
  border-radius: 4px;
  background: #f1f5f9;
  color: #64748b;
  margin-left: 6px;
}
.agents-sq-vis {
  font-size: 10px;
  border-radius: 6px;
  padding: 1px 6px;
  margin-left: 6px;
}
.agents-sq-vis--private {
  color: #64748b;
  background: rgba(100,116,139,.12);
}
.agents-sq-vis--square {
  color: #4f46e5;
  background: rgba(99,102,241,.12);
}
.agents-mine-visibility {
  display: flex;
  gap: 10px;
  margin-top: 8px;
}
.agents-mine-vis-btn {
  flex: 1;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(15,23,42,.12);
  background: rgba(255,255,255,.8);
  font-size: 14px;
  color: #334155;
  cursor: pointer;
}
.agents-mine-vis-btn.is-active {
  border-color: #6366f1;
  background: rgba(99,102,241,.1);
  color: #4338ca;
  font-weight: 600;
}
body:not(.theme-light) .agents-mine-vis-btn {
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.12);
  color: #e2e8f0;
}
body:not(.theme-light) .agents-mine-vis-btn.is-active {
  border-color: #818cf8;
  background: rgba(99,102,241,.18);
  color: #c7d2fe;
}
.agents-sq-shared-head {
  margin: 18px 4px 10px;
}
.agents-sq-shared-title {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
  color: #0f172a;
}
body:not(.theme-light) .agents-sq-shared-title { color: #f1f5f9; }
.agents-sq-shared-sub {
  margin: 4px 0 0;
  font-size: 12px;
  color: #64748b;
}
.agents-sq-shared-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 20px 4px 16px;
  min-height: 48px;
}
.agents-sq-loading-spinner {
  width: 22px;
  height: 22px;
  border: 2.5px solid rgba(148, 163, 184, 0.25);
  border-top-color: #0d9488;
  border-radius: 50%;
  animation: agents-sq-spin 0.75s linear infinite;
  flex-shrink: 0;
}
@keyframes agents-sq-spin {
  to { transform: rotate(360deg); }
}
body:not(.theme-light) .agents-sq-loading-spinner {
  border-color: rgba(255, 255, 255, 0.12);
  border-top-color: #2ee6c9;
}
.agents-sq-grid--shared {
  margin-bottom: 8px;
}
.agents-sq-more {
  position: absolute;
  right: 8px;
  top: 14px;
  width: 36px;
  height: 36px;
  border: none;
  background: transparent;
  color: #94a3b8;
}

/* —— 我的 · 编辑页 —— */
.agents-mine-editor {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  overflow-x: hidden;
  gap: 16px;
  padding: 4px 0 8px;
}
.agents-ed-music-select-hidden { display: none !important; }
.agents-ed-music-preview {
  width: 100%;
  max-width: 100%;
  margin-top: 12px;
  box-sizing: border-box;
  border-radius: 12px;
}

/* ── 氛围音乐选择器（自定义 sheet，避免原生 select 弹窗） ── */
.agents-music-picker-trigger {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  margin-top: 8px;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(46, 230, 201, 0.28);
  background: linear-gradient(135deg, rgba(46, 230, 201, 0.08) 0%, rgba(91, 140, 255, 0.06) 100%);
  color: inherit;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.15s, transform 0.12s;
}
.agents-music-picker-trigger:active { transform: scale(0.99); }
.agents-music-picker-trigger:disabled { opacity: 0.45; cursor: not-allowed; }
body:not(.theme-light) .agents-music-picker-trigger {
  background: linear-gradient(135deg, rgba(46, 230, 201, 0.12) 0%, rgba(91, 140, 255, 0.08) 100%);
  border-color: rgba(46, 230, 201, 0.22);
}
.agents-music-picker-lead {
  width: 40px; height: 40px; border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  background: rgba(46, 230, 201, 0.16);
  color: #0d9488; flex-shrink: 0;
}
body:not(.theme-light) .agents-music-picker-lead { color: #5eead4; }
.agents-music-picker-text { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.agents-music-picker-label {
  font-size: 15px; font-weight: 600; color: #0f172a;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
body:not(.theme-light) .agents-music-picker-label { color: #f1f5f9; }
.agents-music-picker-hint { font-size: 12px; color: #94a3b8; }
.agents-music-picker-chev { color: #94a3b8; flex-shrink: 0; }

body.agents-music-sheet-open { overflow: hidden; }
.agents-music-sheet {
  position: fixed; inset: 0; z-index: 12050;
  display: flex; align-items: flex-end; justify-content: center;
}
.agents-music-sheet[hidden] { display: none !important; }
.agents-music-sheet-backdrop {
  position: absolute; inset: 0;
  background: rgba(15, 23, 42, 0.45);
  backdrop-filter: blur(4px);
}
.agents-music-sheet-panel {
  position: relative; z-index: 1;
  width: min(100%, 480px);
  max-height: min(72vh, 520px);
  margin: 0 0 env(safe-area-inset-bottom, 0);
  padding: 16px 16px calc(16px + env(safe-area-inset-bottom, 0));
  border-radius: 20px 20px 0 0;
  background: #fff;
  box-shadow: 0 -12px 40px rgba(15, 23, 42, 0.18);
  display: flex; flex-direction: column;
  animation: agents-music-sheet-in 0.28s cubic-bezier(0.22, 1, 0.36, 1);
}
body:not(.theme-light) .agents-music-sheet-panel {
  background: #121820;
  box-shadow: 0 -12px 48px rgba(0, 0, 0, 0.55);
}
@keyframes agents-music-sheet-in {
  from { transform: translateY(100%); opacity: 0.6; }
  to { transform: translateY(0); opacity: 1; }
}
.agents-music-sheet-hd {
  display: flex; align-items: center; justify-content: space-between;
  gap: 12px; margin-bottom: 4px;
}
.agents-music-sheet-title {
  margin: 0; font-size: 17px; font-weight: 700; color: #0f172a;
}
body:not(.theme-light) .agents-music-sheet-title { color: #f8fafc; }
.agents-music-sheet-close {
  width: 36px; height: 36px; border-radius: 10px; border: none;
  background: #f1f5f9; color: #64748b; display: flex; align-items: center; justify-content: center;
}
body:not(.theme-light) .agents-music-sheet-close { background: rgba(255,255,255,0.08); color: #cbd5e1; }
.agents-music-sheet-sub {
  margin: 0 0 12px; font-size: 12px; color: #94a3b8; line-height: 1.45;
}
.agents-music-sheet-list {
  overflow-y: auto; flex: 1; display: flex; flex-direction: column; gap: 8px;
  -webkit-overflow-scrolling: touch;
}
.agents-music-sheet-item {
  display: flex; align-items: center; gap: 12px;
  width: 100%; padding: 12px 14px; border-radius: 14px;
  border: 1px solid #e2e8f0; background: #f8fafc;
  text-align: left; cursor: pointer; color: inherit;
  transition: border-color 0.12s, background 0.12s;
}
body:not(.theme-light) .agents-music-sheet-item {
  background: rgba(255,255,255,0.04); border-color: rgba(255,255,255,0.08);
}
.agents-music-sheet-item.is-selected {
  border-color: rgba(46, 230, 201, 0.55);
  background: linear-gradient(135deg, rgba(46, 230, 201, 0.14) 0%, rgba(91, 140, 255, 0.08) 100%);
}
.agents-music-sheet-item-ic {
  width: 36px; height: 36px; border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  background: rgba(99, 102, 241, 0.12); color: #6366f1; flex-shrink: 0;
}
.agents-music-sheet-item-main { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.agents-music-sheet-item-title {
  font-size: 14px; font-weight: 600; color: #0f172a;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
body:not(.theme-light) .agents-music-sheet-item-title { color: #f1f5f9; }
.agents-music-sheet-item-sub { font-size: 11px; color: #94a3b8; }
.agents-music-sheet-item-check {
  width: 22px; height: 22px; border-radius: 999px;
  display: flex; align-items: center; justify-content: center;
  background: transparent; color: transparent; flex-shrink: 0;
}
.agents-music-sheet-item.is-selected .agents-music-sheet-item-check {
  background: #0d9488; color: #fff;
}
body:not(.theme-light) .agents-music-sheet-item.is-selected .agents-music-sheet-item-check {
  background: #14b8a6;
}


.agents-mine-editor > section,
.agents-mine-editor > footer {
  flex-shrink: 0;
}

/* 身份 Hero */
.agents-ed-hero {
  position: relative;
  padding: 18px 16px 14px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid rgba(46, 230, 201, 0.22);
  box-shadow: 0 8px 28px rgba(15, 23, 42, 0.06);
  overflow: hidden;
}
body:not(.theme-light) .agents-ed-hero {
  background: #121820;
  border-color: rgba(46, 230, 201, 0.18);
  box-shadow: 0 10px 32px rgba(0, 0, 0, 0.28);
}
.agents-ed-hero-glow {
  position: absolute;
  inset: -40% -20% auto;
  height: 120px;
  background: radial-gradient(ellipse at 30% 0%, rgba(46, 230, 201, 0.22), transparent 68%),
    radial-gradient(ellipse at 80% 10%, rgba(91, 140, 255, 0.14), transparent 60%);
  pointer-events: none;
}
.agents-ed-hero-main {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 14px;
}
.agents-ed-avatar-wrap {
  flex: 0 0 auto;
}
.agents-ed-avatar-btn {
  width: 72px !important;
  height: 72px !important;
  border-radius: 20px !important;
  font-size: 34px !important;
  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.08);
}
.agents-ed-avatar-btn .agents-mine-avatar-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 18px;
}
.agents-ed-identity {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding-top: 4px;
}
.agents-ed-name-input,
.agents-ed-desc-input {
  width: 100%;
  border: none;
  background: transparent;
  font-family: inherit;
  padding: 0;
  outline: none;
}
.agents-ed-name-input {
  font-size: 20px;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.25;
}
.agents-ed-desc-input {
  font-size: 14px;
  color: #64748b;
  line-height: 1.45;
}
body:not(.theme-light) .agents-ed-name-input { color: #f1f5f9; }
body:not(.theme-light) .agents-ed-desc-input { color: #94a3b8; }
.agents-ed-name-input::placeholder { color: #94a3b8; font-weight: 600; }
.agents-ed-desc-input::placeholder { color: #cbd5e1; }
body:not(.theme-light) .agents-ed-desc-input::placeholder { color: #64748b; }
.agents-ed-hero-media {
  position: relative;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid rgba(15, 23, 42, 0.06);
}
body:not(.theme-light) .agents-ed-hero-media {
  border-top-color: rgba(255, 255, 255, 0.06);
}
.agents-ed-chip-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border: 1px solid #e2e8f0;
  background: #f8fafc;
  color: #475569;
  font-size: 12px;
  font-weight: 600;
  padding: 7px 12px;
  border-radius: 999px;
  font-family: inherit;
  cursor: pointer;
}
.agents-ed-chip-btn:active { background: #f1f5f9; }
body:not(.theme-light) .agents-ed-chip-btn {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.1);
  color: #cbd5e1;
}
.agents-ed-hero-media-sep {
  width: 1px;
  height: 22px;
  background: #e2e8f0;
  margin: 0 2px;
}
body:not(.theme-light) .agents-ed-hero-media-sep { background: rgba(255,255,255,0.1); }
.agents-ed-bg-pick { gap: 8px !important; }
.agents-ed-bg-thumb {
  width: 36px !important;
  height: 36px !important;
  border-radius: 10px !important;
}
.agents-ed-bg-hint {
  margin: 8px 0 0 !important;
  font-size: 11px !important;
}

/* 对话预览 */
.agents-ed-preview {
  border-radius: 16px;
  background: #fff;
  border: 1px solid #e8edf3;
  overflow: hidden;
  box-shadow: 0 4px 18px rgba(15, 23, 42, 0.04);
}
body:not(.theme-light) .agents-ed-preview {
  background: #141b24;
  border-color: rgba(255, 255, 255, 0.08);
}
.agents-ed-preview-hd {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
  padding: 10px 14px;
  background: linear-gradient(90deg, rgba(46, 230, 201, 0.08), rgba(91, 140, 255, 0.06));
  border-bottom: 1px solid rgba(15, 23, 42, 0.05);
}
.agents-ed-preview-hint {
  font-size: 11px;
  color: #94a3b8;
  flex: 1 1 100%;
  line-height: 1.4;
}
body:not(.theme-light) .agents-ed-preview-hd {
  border-bottom-color: rgba(255, 255, 255, 0.06);
}
.agents-ed-preview-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  font-weight: 600;
  color: #0d9488;
}
body:not(.theme-light) .agents-ed-preview-badge { color: #2ee6c9; }
.agents-ed-preview-stage {
  padding: 14px;
}
.agents-ed-preview-top {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
}
.agents-ed-preview-av {
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  background: #f1f5f9;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  overflow: hidden;
}
.agents-ed-preview-av .agents-mine-avatar-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
body:not(.theme-light) .agents-ed-preview-av { background: rgba(255,255,255,0.07); }
.agents-ed-preview-meta {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.agents-ed-preview-name {
  font-size: 15px;
  font-weight: 700;
  color: #0f172a;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.agents-ed-preview-desc {
  font-size: 12px;
  color: #64748b;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
body:not(.theme-light) .agents-ed-preview-name { color: #f1f5f9; }
.agents-ed-preview-bubble {
  display: inline-block;
  max-width: 92%;
  padding: 10px 12px;
  border-radius: 14px 14px 14px 4px;
  background: #f1f5f9;
  color: #334155;
  font-size: 13px;
  line-height: 1.55;
  white-space: pre-wrap;
  word-break: break-word;
}
body:not(.theme-light) .agents-ed-preview-bubble {
  background: rgba(255, 255, 255, 0.08);
  color: #e2e8f0;
}
.agents-ed-preview-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}
.agents-ed-preview-chip {
  font-size: 12px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(46, 230, 201, 0.12);
  color: #0f766e;
  border: 1px solid rgba(46, 230, 201, 0.22);
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.agents-ed-preview-chip--ghost {
  background: transparent;
  border-style: dashed;
  color: #94a3b8;
  border-color: #cbd5e1;
}
body:not(.theme-light) .agents-ed-preview-chip {
  background: rgba(46, 230, 201, 0.1);
  color: #5eead4;
  border-color: rgba(46, 230, 201, 0.2);
}

/* 分组卡片 */
.agents-ed-card {
  border-radius: 16px;
  background: #fff;
  border: 1px solid #e8edf3;
  box-shadow: 0 4px 18px rgba(15, 23, 42, 0.04);
  overflow: visible;
}
body:not(.theme-light) .agents-ed-card {
  background: #141b24;
  border-color: rgba(255, 255, 255, 0.08);
}
.agents-ed-card-hd {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 14px 0;
}
.agents-ed-card-icon {
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  border-radius: 11px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, rgba(46, 230, 201, 0.18), rgba(91, 140, 255, 0.14));
  color: #0d9488;
}
body:not(.theme-light) .agents-ed-card-icon { color: #2ee6c9; }
.agents-ed-card-title {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.3;
}
body:not(.theme-light) .agents-ed-card-title { color: #f1f5f9; }
.agents-ed-card-sub {
  margin: 3px 0 0;
  font-size: 12px;
  color: #94a3b8;
  line-height: 1.45;
}
.agents-ed-card-body {
  padding: 4px 14px 16px;
}
.agents-ed-card-body .agents-mine-field:last-child {
  margin-bottom: 0;
}
.agents-ed-subblock + .agents-ed-subblock {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid #f1f5f9;
}
body:not(.theme-light) .agents-ed-subblock + .agents-ed-subblock {
  border-top-color: rgba(255, 255, 255, 0.06);
}
.agents-ed-subblock-title {
  margin: 0 0 8px;
  font-size: 13px;
  font-weight: 600;
  color: #334155;
}
body:not(.theme-light) .agents-ed-subblock-title { color: #e2e8f0; }
.agents-ed-subblock-hint {
  margin: -4px 0 10px;
  font-size: 12px;
  color: #94a3b8;
}
.agents-ed-sug-list .agents-mine-sug-input:last-child { margin-bottom: 0; }

/* 能力行 */
.agents-ed-cap-row {
  padding: 10px 0 !important;
}
.agents-ed-cap-lead {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  flex: 1;
  min-width: 0;
}
.agents-ed-cap-icon {
  flex: 0 0 auto;
  width: 32px;
  height: 32px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f8fafc;
  color: #64748b;
}
body:not(.theme-light) .agents-ed-cap-icon {
  background: rgba(255, 255, 255, 0.06);
  color: #94a3b8;
}

/* 知识库选择 */
.agents-ed-kb-pick {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid #e2e8f0;
  background: #f8fafc;
  font-family: inherit;
  cursor: pointer;
  text-align: left;
}
.agents-ed-kb-pick:active { background: #f1f5f9; }
body:not(.theme-light) .agents-ed-kb-pick {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.1);
}
.agents-ed-kb-pick-icon {
  width: 32px;
  height: 32px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(46, 230, 201, 0.14);
  color: #0d9488;
}
body:not(.theme-light) .agents-ed-kb-pick-icon { color: #2ee6c9; }
.agents-ed-kb-pick-text {
  flex: 1;
  font-size: 14px;
  font-weight: 600;
  color: #334155;
}
body:not(.theme-light) .agents-ed-kb-pick-text { color: #e2e8f0; }
.agents-ed-kb-pick-count {
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  border-radius: 999px;
  background: rgba(91, 140, 255, 0.14);
  color: #4338ca;
  font-size: 12px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
body:not(.theme-light) .agents-ed-kb-pick-count {
  background: rgba(91, 140, 255, 0.2);
  color: #a5b4fc;
}
.agents-ed-kb-pick-chevron { opacity: 0.45; }

/* 发布可见性 */
.agents-ed-visibility {
  gap: 10px !important;
  margin-top: 0 !important;
}
.agents-ed-vis-card {
  display: flex !important;
  flex-direction: column;
  align-items: flex-start !important;
  gap: 4px !important;
  padding: 12px 14px !important;
  text-align: left;
}
.agents-ed-vis-card .ic-sm { opacity: 0.7; }
.agents-ed-vis-label {
  font-size: 14px;
  font-weight: 600;
}
.agents-ed-vis-desc {
  font-size: 11px;
  opacity: 0.75;
  font-weight: 400;
}
.agents-mine-vis-btn.is-active {
  border-color: #0d9488;
  background: rgba(46, 230, 201, 0.1);
  color: #0f766e;
}
body:not(.theme-light) .agents-mine-vis-btn.is-active {
  border-color: #2ee6c9;
  background: rgba(46, 230, 201, 0.12);
  color: #5eead4;
}

/* 底部操作 */
.agents-ed-footer {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 8px;
  padding: 4px 0 8px;
}
.agents-mine-field--flush { margin-bottom: 0 !important; }

.agents-mine-editor-hd {
  margin-bottom: 16px;
}
.agents-mine-editor-hd p {
  margin: 0;
  font-size: 13px;
  color: #64748b;
  line-height: 1.5;
}
.agents-mine-field {
  margin-bottom: 16px;
}
.agents-mine-field label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: #334155;
  margin-bottom: 8px;
}
body:not(.theme-light) .agents-mine-field label { color: #cbd5e1; }
.agents-mine-field-hint {
  font-size: 11px;
  font-weight: 400;
  color: #94a3b8;
  margin-left: 6px;
}
.agents-mine-input,
.agents-mine-textarea {
  width: 100%;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 12px 14px;
  font-size: 15px;
  background: #fff;
  color: #0f172a;
  font-family: inherit;
  text-align: left;
  text-indent: 0;
}
.agents-mine-textarea {
  min-height: 120px;
  resize: vertical;
  line-height: 1.55;
}
body:not(.theme-light) .agents-mine-input,
body:not(.theme-light) .agents-mine-textarea {
  background: #151b24;
  border-color: rgba(255,255,255,0.1);
  color: #f1f5f9;
}
.agents-mine-section {
  margin-bottom: 20px;
  padding: 14px;
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 2px 12px rgba(15, 23, 42, 0.05);
}
body:not(.theme-light) .agents-mine-section {
  background: #151b24;
  box-shadow: 0 2px 16px rgba(0,0,0,0.2);
}
.agents-mine-section-title {
  font-size: 14px;
  font-weight: 600;
  color: #0f172a;
  margin: 0 0 4px;
}
body:not(.theme-light) .agents-mine-section-title { color: #f1f5f9; }
.agents-mine-section-sub {
  font-size: 12px;
  color: #94a3b8;
  margin: 0 0 12px;
}
.agents-mine-toggle-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid #f1f5f9;
}
body:not(.theme-light) .agents-mine-toggle-row {
  border-bottom-color: rgba(255,255,255,0.06);
}
.agents-mine-toggle-row:last-child { border-bottom: none; padding-bottom: 0; }
.agents-mine-toggle-row:first-of-type { padding-top: 0; }
.agents-mine-toggle-info { flex: 1; min-width: 0; }
.agents-mine-toggle-label {
  font-size: 14px;
  font-weight: 500;
  color: #0f172a;
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
body:not(.theme-light) .agents-mine-toggle-label { color: #f1f5f9; }
.agents-mine-toggle-desc {
  font-size: 12px;
  color: #94a3b8;
  margin-top: 2px;
}
.agents-mine-soon {
  font-size: 10px;
  padding: 1px 6px;
  border-radius: 4px;
  background: #f1f5f9;
  color: #64748b;
  font-weight: 500;
}
body:not(.theme-light) .agents-mine-soon {
  background: rgba(255,255,255,0.08);
  color: #94a3b8;
}
.agents-mine-switch {
  flex-shrink: 0;
  width: 48px;
  height: 28px;
  border-radius: 999px;
  border: none;
  background: #cbd5e1;
  position: relative;
  transition: background 0.2s;
}
.agents-mine-switch.is-on { background: linear-gradient(90deg, #2ee6c9, #5b8cff); }
.agents-mine-switch:disabled { opacity: 0.45; }
.agents-mine-switch::after {
  content: '';
  position: absolute;
  top: 3px;
  left: 3px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(0,0,0,0.15);
  transition: transform 0.2s;
}
.agents-mine-switch.is-on::after { transform: translateX(20px); }

.agents-mine-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: auto;
  padding-top: 16px;
  padding-bottom: calc(8px + env(safe-area-inset-bottom, 0px));
}
.agents-mine-btn {
  width: 100%;
  border: none;
  border-radius: 12px;
  padding: 14px;
  font-size: 15px;
  font-weight: 600;
  font-family: inherit;
}
.agents-mine-btn-primary {
  background: linear-gradient(90deg, #2ee6c9, #5b8cff);
  color: #0a0e18;
}
.agents-mine-btn-secondary {
  background: #fff;
  color: #334155;
  border: 1px solid #e2e8f0;
}
body:not(.theme-light) .agents-mine-btn-secondary {
  background: #151b24;
  border-color: rgba(255,255,255,0.12);
  color: #e2e8f0;
}
.agents-mine-btn-danger {
  background: transparent;
  color: #ef4444;
  font-size: 14px;
  font-weight: 500;
  padding: 10px;
}

.agents-sq-mine-card {
  display: flex;
  align-items: stretch;
  gap: 0;
  padding: 0;
  background: #fff;
  width: 100%;
  border-radius: 14px;
  margin-bottom: 10px;
  box-shadow: 0 2px 12px rgba(15, 23, 42, 0.06);
  overflow: hidden;
  box-sizing: border-box;
}
body:not(.theme-light) .agents-sq-mine-card {
  background: #151b24;
}
.agents-sq-mine-card-main {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 10px 14px 14px;
  border: none;
  background: transparent;
  text-align: left;
  color: inherit;
  cursor: pointer;
}
.agents-sq-mine-chevron {
  flex-shrink: 0;
  margin-left: auto;
  opacity: 0.45;
}
.agents-sq-mine-edit-btn {
  flex: 0 0 auto;
  align-self: center;
  margin-right: 10px;
  border: none;
  background: rgba(59, 130, 246, 0.1);
  color: #2563eb;
  font-size: 12px;
  font-weight: 600;
  padding: 8px 14px;
  border-radius: 8px;
  line-height: 1.2;
  cursor: pointer;
}
body:not(.theme-light) .agents-sq-mine-edit-btn {
  background: rgba(91, 140, 255, 0.14);
  color: #5b8cff;
}
.agents-sq-mine-chat-btn {
  border: none;
  background: rgba(46, 230, 201, 0.15);
  color: #0d9488;
  font-size: 12px;
  font-weight: 600;
  padding: 6px 10px;
  border-radius: 8px;
}
body:not(.theme-light) .agents-sq-mine-chat-btn {
  background: rgba(46, 230, 201, 0.12);
  color: #2ee6c9;
}

.agents-sq-empty {
  text-align: center;
  padding: 48px 16px;
  color: #94a3b8;
  font-size: 14px;
}

/* —— 对话头带（结构对齐首页 .home-head-band + 物理 spacer 顶开状态栏） —— */
#agentsHeadBand {
  display: none;
}
.page[data-page="agents"].active.agents-in-chat > #agentsHeadBand {
  display: flex !important;
  flex: 0 0 auto;
  flex-direction: column;
  align-self: stretch;
  min-height: 0;
  position: relative;
  z-index: 16;
  background: #fff;
}
body:not(.theme-light) .page[data-page="agents"].active.agents-in-chat > #agentsHeadBand {
  background: #0f1419;
}
.agents-safe-spacer {
  flex: 0 0 auto;
  width: 100%;
  height: 0;
  pointer-events: none;
}
html.native-app-boot body .page[data-page="agents"].active.agents-in-chat .agents-safe-spacer,
body.native-app .page[data-page="agents"].active.agents-in-chat .agents-safe-spacer {
  height: 48px;
}
.page[data-page="agents"].active.agents-in-chat > #agentsHeadBand > #agentsChatTopbar {
  display: flex !important;
  flex: 0 0 auto;
  position: relative;
  top: auto;
  z-index: 1;
  height: auto;
  min-height: 48px;
  padding: 0 6px;
  padding-top: 0 !important;
  align-items: center;
  background: transparent;
  border-bottom: 1px solid #f1f5f9;
  box-sizing: border-box;
}
body:not(.theme-light) .page[data-page="agents"].active.agents-in-chat > #agentsHeadBand > #agentsChatTopbar {
  border-bottom-color: rgba(255, 255, 255, 0.06);
}
/* 进入对话默认不展示输入区，点击消息区后再出现（不自动聚焦、不弹键盘） */
body.page-agents.agents-chat-focus.agents-composer-dormant .bottom-rail > #composer,
body.page-agents.agents-chat-focus.agents-composer-dormant .bottom-rail > #composerAttachBar {
  display: none !important;
}

/* 键盘弹起：头带 fixed 贴 visualViewport 顶（对齐首页 home-head-band） */
body.native-app.keyboard-open.page-agents.agents-chat-focus .page[data-page="agents"].active.agents-in-chat > #agentsHeadBand {
  position: fixed;
  top: var(--vv-offset-top, 0px);
  left: var(--vv-offset-left, 0px);
  width: var(--vv-layout-width, 100%);
  max-width: 100%;
  z-index: 22;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.06);
}
body.native-app.keyboard-open.page-agents.agents-chat-focus.theme-light .page[data-page="agents"].active.agents-in-chat > #agentsHeadBand {
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.05);
}
body.native-app.keyboard-open.page-agents.agents-chat-focus .page[data-page="agents"].active.agents-in-chat .agents-chat-root .chat-thread {
  padding-top: var(--agents-chat-head-offset, 96px);
}
/* rail 模式：头带 sticky，不加 top padding；底部留白随键盘抬升 */
body.native-app.keyboard-rail-only.keyboard-open.page-agents.agents-chat-focus .page[data-page="agents"].active.agents-in-chat .agents-chat-root .chat-thread,
body.native-app.keyboard-rail-only.keyboard-rail-active.page-agents.agents-chat-focus .page[data-page="agents"].active.agents-in-chat .agents-chat-root .chat-thread {
  padding-top: 10px !important;
  padding-bottom: calc(var(--kb-vv-inset, 0px) + var(--bottom-rail-height, 96px) + 12px) !important;
}
.agents-chat-topbar .agents-sq-back {
  width: 40px;
  height: 40px;
  min-width: 40px;
}
.agents-chat-topbar .agents-sq-drawer-btn {
  width: 40px;
  height: 40px;
  min-width: 40px;
  flex-shrink: 0;
  margin-right: 2px;
}
.agents-chat-topbar .agents-sq-topbar-spacer {
  width: 40px;
}
.agents-chat-topbar .agents-chat-head-main {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.agents-chat-avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
  object-position: top center;
  flex-shrink: 0;
  border: 1.5px solid rgba(15, 23, 42, 0.06);
}
.agents-chat-topbar .agents-sq-title {
  font-size: 16px;
  font-weight: 600;
}

.page[data-page="agents"].active.agents-in-chat .agents-square-root {
  display: none !important;
}
.page[data-page="agents"].active.agents-in-chat .agents-chat-root {
  display: flex !important;
  position: relative;
  min-height: 0;
  overflow: hidden;
}
.agents-chat-root.has-chat-bg {
  background: transparent;
}
.agents-chat-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
}
.agents-chat-bg[hidden] {
  display: none !important;
}
.agents-chat-bg-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
  opacity: 0.88;
}
.agents-chat-bg-veil {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
    rgba(255, 255, 255, 0.38) 0%,
    rgba(255, 255, 255, 0.58) 38%,
    rgba(255, 255, 255, 0.82) 100%);
}
body:not(.theme-light) .agents-chat-bg-veil {
  background: linear-gradient(180deg,
    rgba(15, 20, 25, 0.42) 0%,
    rgba(15, 20, 25, 0.62) 38%,
    rgba(15, 20, 25, 0.84) 100%);
}
.agents-chat-root.has-chat-bg .chat-thread {
  position: relative;
  z-index: 1;
  background: transparent !important;
}
.page[data-page="agents"].active:not(.agents-in-chat) .agents-chat-root {
  display: none !important;
}

.page[data-page="agents"].active.agents-in-chat {
  overflow: hidden;
  background: #fff;
  padding-top: 0;
}
body:not(.theme-light) .page[data-page="agents"].active.agents-in-chat {
  background: #0f1419;
}
.page[data-page="agents"].active.agents-in-chat .agents-chat-root .chat-thread {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding: 10px var(--t-page-x, 20px) 16px var(--t-page-x-right, 20px);
}
/* #agentChatThread 由 app.css 强制 block 滚动，勿再用 flex 列压扁内容高度 */
.page[data-page="agents"].active.agents-in-chat #agentChatThread.chat-thread {
  display: block !important;
  flex-direction: unset !important;
}
.agent-chat-tools-dock {
  flex: 0 0 auto;
  order: 2;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.agent-chat-opening {
  flex: 0 0 auto;
  order: 3;
}
.agent-chat-msgs {
  flex: 1 1 auto;
  order: 4;
  min-height: 0;
  width: 100%;
  box-sizing: border-box;
}
.agent-chat-opening--mine {
  padding: 4px 0 16px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.agent-chat-opening-card {
  padding: 16px 18px;
  border-radius: 14px;
  background: rgba(255, 249, 240, 0.98);
  border: 1px solid rgba(180, 140, 80, 0.14);
  color: #3d3428;
  font-size: 0.92em;
  line-height: 1.58;
  white-space: pre-wrap;
  word-break: break-word;
  width: 100%;
  box-sizing: border-box;
}
.agent-chat-suggestions--mine {
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
  gap: 10px;
}
.agent-chat-intro-card {
  margin: 6px 0 10px;
  padding: 16px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid rgba(15, 23, 42, 0.08);
  box-shadow: 0 2px 14px rgba(15, 23, 42, 0.06);
  flex: 0 0 auto;
  order: 1;
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.agent-chat-intro-cover {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: cover;
  flex: 0 0 auto;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.12);
}
.agents-mine-avatar-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  display: block;
}
.agents-mine-avatar-upload-btn {
  margin-left: 8px;
}
body:not(.theme-light) .agent-chat-intro-card {
  background: rgba(22, 28, 38, 0.88);
  border-color: rgba(255, 255, 255, 0.1);
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.25);
}
.agent-chat-hd-name--lg {
  font-size: 1.08em;
  letter-spacing: 0.02em;
}
body:not(.theme-light) .agent-chat-opening-card {
  background: rgba(36, 32, 28, 0.82);
  border-color: rgba(255, 220, 160, 0.12);
  color: #e8e0d4;
}
body.theme-light .agent-chat-suggestions--mine .agent-chat-sug-btn {
  background: rgba(255, 255, 255, 0.96);
  border-color: rgba(15, 23, 42, 0.1);
  color: #1e293b;
}
/* 智能体对话：底部输入框避免 flex 压窄导致逐字换行；光标贴左缘 */
body.agents-chat-focus .bottom-rail {
  padding-left: max(8px, env(safe-area-inset-left, 0px)) !important;
  padding-right: max(8px, env(safe-area-inset-right, 0px)) !important;
}
body.agents-chat-focus .bottom-rail .composer {
  padding: 4px 6px 4px 0 !important;
}
body.agents-chat-focus .bottom-rail .composer .composer-input {
  padding-left: 0 !important;
  padding-right: 4px !important;
  text-indent: 0 !important;
  text-align: left !important;
}
body.agents-chat-focus.native-app .bottom-rail .composer {
  padding-left: 0 !important;
  padding-right: 4px !important;
  gap: 4px !important;
}
body.agents-chat-focus.native-app .bottom-rail .composer .composer-input {
  flex: 1 1 auto !important;
  min-width: 56px !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
  padding-right: 4px !important;
  text-indent: 0 !important;
  word-break: normal;
  overflow-wrap: break-word;
}
body.agents-chat-focus.native-app .bottom-rail .composer-attach-wrap {
  margin-left: 0 !important;
  padding-left: 0 !important;
}
.page[data-page="agents"].active.agents-in-chat .chat-row.streaming .chat-bubble.create-waiting {
  display: flex;
  align-items: center;
  gap: 10px;
  color: rgba(232, 236, 242, 0.82);
  font-size: 13px;
  min-height: 1.4em;
}
body.theme-light .page[data-page="agents"].active.agents-in-chat .chat-row.streaming .chat-bubble.create-waiting {
  color: rgba(15, 23, 42, 0.72);
}
.agent-chat-tools-dock .agent-chat-suggestions {
  padding-bottom: 8px;
}
.agent-chat-tools-dock .agent-chat-qactions {
  padding-bottom: 12px;
}
/* 智能体对话气泡：保留水晶玻璃（backdrop-filter），仅按背景微调透明度与字色 */
.page[data-page="agents"].active.agents-in-chat .chat-row.assistant .chat-bubble {
  white-space: pre-wrap;
  word-break: break-word;
  backdrop-filter: blur(14px) saturate(160%) !important;
  -webkit-backdrop-filter: blur(14px) saturate(160%) !important;
}
/* 用户气泡：对齐首页 home-layout-v2，禁止 flex 压窄 + text-wrap:pretty 导致 CJK 逐字竖排 */
.page[data-page="agents"].active.agents-in-chat .agent-chat-msgs {
  width: 100%;
  box-sizing: border-box;
}
.page[data-page="agents"].active.agents-in-chat .chat-row.user,
.page[data-page="agents"].active.agents-in-chat .agent-chat-msgs .chat-row.user {
  display: flex !important;
  justify-content: flex-end !important;
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  flex-shrink: 0 !important;
}
.page[data-page="agents"].active.agents-in-chat .chat-row.user .chat-bubble-stack,
.page[data-page="agents"].active.agents-in-chat .agent-chat-msgs .chat-row.user .chat-bubble-stack {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  width: max-content !important;
  max-width: min(92%, 100%) !important;
  min-width: 0 !important;
  flex: 0 0 auto !important;
  flex-shrink: 0 !important;
}
.page[data-page="agents"].active.agents-in-chat .chat-row.user .chat-bubble,
.page[data-page="agents"].active.agents-in-chat .agent-chat-msgs .chat-row.user .chat-bubble {
  display: block !important;
  width: fit-content !important;
  max-width: 100% !important;
  min-width: 3em !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  line-break: auto !important;
  hyphens: none !important;
  text-wrap: wrap !important;
  white-space: pre-wrap !important;
  text-align: left !important;
  box-sizing: border-box !important;
  flex-shrink: 0 !important;
}
.page[data-page="agents"].active.agents-in-chat .chat-row.user .chat-bubble-stack,
.page[data-page="agents"].active.agents-in-chat .chat-row.user .chat-bubble {
  text-wrap: wrap !important;
}
.page[data-page="agents"].active.agents-in-chat .chat-row.user .chat-bubble {
  background: rgba(80, 130, 255, 0.18) !important;
  border: 1px solid rgba(120, 160, 255, 0.28) !important;
  color: rgba(240, 248, 255, 0.92) !important;
  box-shadow: 0 2px 12px rgba(40, 80, 180, 0.12) !important;
  backdrop-filter: blur(14px) saturate(160%) !important;
  -webkit-backdrop-filter: blur(14px) saturate(160%) !important;
}
.page[data-page="agents"].active.agents-in-chat .chat-row.assistant .chat-bubble {
  background: rgba(12, 20, 38, 0.32) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  color: rgba(236, 242, 255, 0.92) !important;
  box-shadow: 0 2px 14px rgba(0, 0, 0, 0.14) !important;
}
body.theme-light .page[data-page="agents"].active.agents-in-chat .chat-row.user .chat-bubble {
  background: rgba(37, 99, 235, 0.1) !important;
  border: 1px solid rgba(37, 99, 235, 0.18) !important;
  color: #0c2347 !important;
  box-shadow: 0 2px 10px rgba(37, 99, 235, 0.08) !important;
}
body.theme-light .page[data-page="agents"].active.agents-in-chat .chat-row.assistant .chat-bubble {
  background: rgba(255, 255, 255, 0.42) !important;
  border: 1px solid rgba(15, 23, 42, 0.1) !important;
  color: #0f172a !important;
  box-shadow: 0 2px 12px rgba(15, 23, 42, 0.06) !important;
}
/* 带 chatBg 的智能体（律师等）：略加强玻璃衬底，字色与底图分离 */
.agents-chat-root.has-chat-bg .chat-row.user .chat-bubble {
  background: rgba(72, 118, 255, 0.24) !important;
  color: #f8fbff !important;
}
.agents-chat-root.has-chat-bg .chat-row.assistant .chat-bubble {
  background: rgba(16, 24, 42, 0.38) !important;
  border-color: rgba(255, 255, 255, 0.14) !important;
  color: #f2f6ff !important;
}
body.theme-light .agents-chat-root.has-chat-bg .chat-row.user .chat-bubble {
  background: rgba(37, 99, 235, 0.14) !important;
  color: #08264a !important;
}
body.theme-light .agents-chat-root.has-chat-bg .chat-row.assistant .chat-bubble {
  background: rgba(255, 255, 255, 0.62) !important;
  color: #0f172a !important;
  border-color: rgba(15, 23, 42, 0.14) !important;
}
body.theme-light .agents-chat-root.has-chat-bg .chat-row.streaming .chat-bubble::after {
  background: rgba(15, 23, 42, 0.75);
}
body:not(.theme-light) .agents-chat-root.has-chat-bg .chat-row.streaming .chat-bubble::after {
  background: rgba(236, 242, 255, 0.9);
}
body.theme-light .page[data-page="agents"].active.agents-in-chat .agent-chat-sug-btn,
body.theme-light .page[data-page="agents"].active.agents-in-chat .agent-chat-qa-btn {
  background: rgba(255, 255, 255, 0.92);
}

/* ============================================================
 * 智能体对话头部：头像 + 名称 + 记忆提示（与正文同字号）
 * ============================================================ */
.agent-chat-header-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 16px 16px 10px;
  flex: 0 0 auto;
  order: 1;
}
.agents-chat-root.has-chat-bg .agent-chat-header-row {
  margin: 10px 12px 4px;
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(15, 23, 42, 0.08);
  box-shadow: 0 4px 18px rgba(15, 23, 42, 0.1);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
body:not(.theme-light) .agents-chat-root.has-chat-bg .agent-chat-header-row {
  background: rgba(18, 24, 34, 0.88);
  border-color: rgba(255, 255, 255, 0.1);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.35);
}
.agents-chat-root.has-chat-bg .agent-chat-hd-name {
  color: #0f172a;
  text-shadow: none;
}
.agents-chat-root.has-chat-bg .agent-chat-hd-sub {
  color: #475569;
}
.agents-chat-root.has-chat-bg .agent-chat-mem-tip {
  color: #0d9488;
}
body:not(.theme-light) .agents-chat-root.has-chat-bg .agent-chat-hd-name {
  color: #f1f5f9;
}
body:not(.theme-light) .agents-chat-root.has-chat-bg .agent-chat-hd-sub {
  color: #cbd5e1;
}
body:not(.theme-light) .agents-chat-root.has-chat-bg .agent-chat-mem-tip {
  color: #5eead4;
}
.agent-chat-hd-img {
  width: 1.6em;
  height: 1.6em;
  font-size: 28px;
  border-radius: 50%;
  object-fit: cover;
  flex: 0 0 auto;
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}
.agent-chat-hd-info {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.agent-chat-hd-name {
  font-size: 0.95em;
  font-weight: 700;
  color: #0f172a;
}
body:not(.theme-light) .agent-chat-hd-name { color: #e8ecf2; }
.agent-chat-hd-sub {
  font-size: 0.8em;
  color: #64748b;
}
body:not(.theme-light) .agent-chat-hd-sub { color: #9aa3b2; }
.agent-chat-mem-tip {
  font-size: 0.75em;
  color: #0d9488;
  margin-top: 2px;
}
body:not(.theme-light) .agent-chat-mem-tip { color: #2ee6c9; }

/* ============================================================
 * 引导建议按钮
 * ============================================================ */
.agent-chat-suggestions {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 4px 16px 12px;
}
.agent-chat-suggestions--compact {
  flex-direction: row;
  flex-wrap: wrap;
  gap: 6px;
  padding-top: 8px;
}
.agent-chat-suggestions--compact .agent-chat-sug-btn {
  width: auto;
  flex: 1 1 auto;
  min-width: 42%;
  font-size: 0.8em;
  padding: 8px 10px;
}
.agent-chat-sug-btn {
  display: block;
  width: 100%;
  text-align: left;
  background: rgba(59,130,246,0.06);
  border: 1px solid rgba(59,130,246,0.2);
  border-radius: 10px;
  padding: 10px 14px;
  font-size: 0.88em;
  color: #1d4ed8;
  cursor: pointer;
  transition: background 0.15s;
}
.agent-chat-sug-btn:active { background: rgba(59,130,246,0.14); }
body:not(.theme-light) .agent-chat-sug-btn {
  background: rgba(91,140,255,0.08);
  border-color: rgba(91,140,255,0.22);
  color: #5b8cff;
}

/* ============================================================
 * 快捷操作按钮行
 * ============================================================ */
.agent-chat-qactions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0 16px 16px;
}
.agent-chat-qactions--sticky {
  position: sticky;
  bottom: 0;
  z-index: 2;
  padding-top: 10px;
  margin-top: 4px;
  background: linear-gradient(to top, var(--agents-chat-bg-fade, rgba(248,250,252,0.96)) 55%, transparent);
}
body:not(.theme-light) .agent-chat-qactions--sticky {
  --agents-chat-bg-fade: rgba(15,18,24,0.92);
}
.agent-chat-qa-btn {
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  padding: 7px 14px;
  font-size: 0.83em;
  color: #334155;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.15s;
}
.agent-chat-qa-btn:active { background: #e2e8f0; }
body:not(.theme-light) .agent-chat-qa-btn {
  background: rgba(255,255,255,0.07);
  border-color: rgba(255,255,255,0.1);
  color: #9aa3b2;
}
body:not(.theme-light) .agent-chat-qa-btn:active {
  background: rgba(255,255,255,0.12);
}

/* ============================================================
 * 知识库选择栏
 * ============================================================ */
.agent-kb-bar {
  position: relative;
  z-index: 2;
  padding: 6px 12px;
  background: rgba(255,255,255,0.92);
  border-top: 1px solid rgba(0,0,0,0.06);
  display: flex;
  align-items: center;
}
body:not(.theme-light) .agent-kb-bar {
  background: rgba(15,20,25,0.92);
  border-top-color: rgba(255,255,255,0.06);
}
.agent-kb-bar-btn {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 0.82em;
  color: #64748b;
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px 6px;
  border-radius: 8px;
}
.agent-kb-bar-btn:active { background: rgba(0,0,0,0.06); }
body:not(.theme-light) .agent-kb-bar-btn { color: #9aa3b2; }

/* ============================================================
 * 固定问答编辑器样式
 * ============================================================ */
/* ── 头像选择器 ──────────────────────────────────── */
.agents-mine-avatar-row { align-items: flex-start; }
.agents-mine-avatar-pick {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.agents-mine-avatar-pick .agents-mine-btn {
  width: auto;
}
.agents-mine-avatar-cur {
  width: 56px; height: 56px; border-radius: 16px; font-size: 28px;
  background: #f1f5f9; border: 2px solid #e2e8f0; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: border-color 0.15s;
  overflow: hidden;
}
.agents-mine-avatar-cur:active { border-color: #3b82f6; }
body:not(.theme-light) .agents-mine-avatar-cur {
  background: rgba(255,255,255,0.07); border-color: rgba(255,255,255,0.12);
}
.agents-mine-avatar-grid {
  position: absolute; top: calc(100% + 8px); left: 0;
  background: #fff; border: 1px solid #e2e8f0; border-radius: 16px;
  padding: 10px; box-shadow: 0 8px 32px rgba(0,0,0,0.12);
  display: grid; grid-template-columns: repeat(6,1fr); gap: 6px;
  z-index: 100; width: 220px;
}
/* 关键：类选择器的 display:grid 会盖过 UA 的 [hidden]{display:none}，
   必须显式让 hidden 生效，否则头像选择器「关不掉」 */
.agents-mine-avatar-grid[hidden] { display: none !important; }
body:not(.theme-light) .agents-mine-avatar-grid {
  background: #1e2532; border-color: rgba(255,255,255,0.12);
}
.agents-mine-avatar-opt {
  width: 32px; height: 32px; border-radius: 8px; font-size: 20px;
  background: transparent; border: none; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: background 0.12s;
}
.agents-mine-avatar-opt:hover, .agents-mine-avatar-opt:active {
  background: rgba(59,130,246,0.1);
}
/* ── bg image picker ─────────────────────────────── */
.agents-mine-bg-row { align-items: flex-start; }
.agents-mine-bg-pick { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.agents-mine-bg-pick .agents-mine-btn {
  width: auto;
}
.agents-mine-bg-preview {
  width: 80px; height: 56px; border-radius: 10px; border: 2px solid #e2e8f0;
  background-size: cover; background-position: center;
  flex-shrink: 0;
}
body:not(.theme-light) .agents-mine-bg-preview { border-color: rgba(255,255,255,0.12); }
.agents-mine-bg-preview--empty {
  background: #f1f5f9; border-style: dashed;
}
body:not(.theme-light) .agents-mine-bg-preview--empty { background: rgba(255,255,255,0.05); }
.agents-mine-bg-hint {
  width: 100%; margin: 2px 0 0 0; font-size: 12px; color: #94a3b8;
}
.agents-mine-textarea--sm { min-height: 72px; }
.agents-mine-sug-input { margin-bottom: 8px; font-size: 14px; }
.agents-mine-sug-input:last-child { margin-bottom: 0; }

/* ── mine qa ─────────────────────────────────────── */
.agents-mine-qa-row {
  display: flex;
  flex-direction: column;
  gap: 6px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  padding: 10px 12px;
  margin-bottom: 8px;
  position: relative;
}
body:not(.theme-light) .agents-mine-qa-row {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.08);
}
.agents-mine-qa-q {
  font-size: 0.88em;
}
.agents-mine-qa-a {
  min-height: 60px;
  font-size: 0.85em;
}
.agents-mine-qa-del {
  position: absolute;
  top: 6px;
  right: 8px;
  background: none;
  border: none;
  font-size: 1.1em;
  color: #94a3b8;
  cursor: pointer;
  padding: 2px 6px;
  border-radius: 6px;
}
.agents-mine-qa-del:active { background: rgba(239,68,68,0.1); color: #ef4444; }
.agents-mine-qa-add {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  background: none;
  border: 1.5px dashed #cbd5e1;
  border-radius: 10px;
  padding: 10px;
  font-size: 0.85em;
  color: #3b82f6;
  cursor: pointer;
  margin-top: 4px;
  text-align: center;
  transition: background 0.15s;
  font-family: inherit;
}
.agents-mine-qa-add:active { background: rgba(59,130,246,0.06); }
body:not(.theme-light) .agents-mine-qa-add {
  border-color: rgba(255,255,255,0.12);
  color: #5b8cff;
}

/* 20260615b: 智能体对话气泡同宽同边距，取消用户侧窄条右对齐 */
.page[data-page="agents"].active.agents-in-chat .agent-chat-msgs {
  width: 100% !important;
  box-sizing: border-box !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.page[data-page="agents"].active.agents-in-chat .agent-chat-msgs .chat-row,
.page[data-page="agents"].active.agents-in-chat .chat-row.user,
.page[data-page="agents"].active.agents-in-chat .chat-row.assistant {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  padding-left: 14px !important;
  padding-right: 14px !important;
  justify-content: flex-start !important;
}
.page[data-page="agents"].active.agents-in-chat .agent-chat-msgs .chat-bubble-stack,
.page[data-page="agents"].active.agents-in-chat .chat-row.user .chat-bubble-stack,
.page[data-page="agents"].active.agents-in-chat .chat-row.assistant .chat-bubble-stack {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  align-self: stretch !important;
  align-items: stretch !important;
  box-sizing: border-box !important;
}
.page[data-page="agents"].active.agents-in-chat .agent-chat-msgs .chat-bubble,
.page[data-page="agents"].active.agents-in-chat .chat-row.user .chat-bubble,
.page[data-page="agents"].active.agents-in-chat .chat-row.assistant .chat-bubble {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  border-radius: 16px !important;
  padding: 11px 13px !important;
  text-align: left !important;
  white-space: pre-wrap !important;
  word-break: normal !important;
  overflow-wrap: anywhere !important;
  backdrop-filter: blur(8px) saturate(125%) !important;
  -webkit-backdrop-filter: blur(8px) saturate(125%) !important;
}
.page[data-page="agents"].active.agents-in-chat .chat-row.user .chat-bubble {
  background: rgba(80, 130, 255, 0.32) !important;
  border-color: rgba(132, 169, 255, 0.26) !important;
  box-shadow: 0 2px 10px rgba(40, 80, 180, 0.1) !important;
}
.page[data-page="agents"].active.agents-in-chat .chat-row.assistant .chat-bubble {
  background: rgba(12, 20, 38, 0.34) !important;
  border-color: rgba(255, 255, 255, 0.09) !important;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.12) !important;
}
.agents-chat-root.has-chat-bg .chat-row.user .chat-bubble {
  background: rgba(72, 118, 255, 0.34) !important;
}
.agents-chat-root.has-chat-bg .chat-row.assistant .chat-bubble {
  background: rgba(16, 24, 42, 0.36) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}
body.theme-light .page[data-page="agents"].active.agents-in-chat .chat-row.user .chat-bubble {
  background: rgba(37, 99, 235, 0.32) !important;
  border-color: rgba(37, 99, 235, 0.18) !important;
  color: #0c2347 !important;
}
body.theme-light .page[data-page="agents"].active.agents-in-chat .chat-row.assistant .chat-bubble {
  background: rgba(255, 255, 255, 0.38) !important;
  border-color: rgba(15, 23, 42, 0.08) !important;
  color: #0f172a !important;
}
body.theme-light .agents-chat-root.has-chat-bg .chat-row.user .chat-bubble {
  background: rgba(37, 99, 235, 0.34) !important;
}
body.theme-light .agents-chat-root.has-chat-bg .chat-row.assistant .chat-bubble {
  background: rgba(255, 255, 255, 0.42) !important;
  border-color: rgba(15, 23, 42, 0.1) !important;
}

/* 智能体多会话左侧抽屉（复用 home-drawer 结构） */
.agent-session-drawer { z-index: 520; }
.page[data-page="agents"].agents-in-chat ~ .agent-session-drawer.open { pointer-events: auto; }

/* —— 编辑页：头像 + 对话背景 —— */
.agents-ed-avatar-col {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  width: 96px;
}
.agents-ed-avatar-shell {
  position: relative;
  width: 88px;
  height: 88px;
  border-radius: 24px;
  padding: 3px;
  background: linear-gradient(135deg, rgba(46, 230, 201, 0.55), rgba(91, 140, 255, 0.45));
  box-shadow: 0 8px 24px rgba(46, 230, 201, 0.18);
}
.agents-ed-avatar-shell .agents-ed-avatar-btn {
  width: 100% !important;
  height: 100% !important;
  border-radius: 21px !important;
  font-size: 40px !important;
  box-shadow: none !important;
  border: none;
  background: #f8fafc;
}
body:not(.theme-light) .agents-ed-avatar-shell .agents-ed-avatar-btn {
  background: #0f172a;
}
.agents-ed-avatar-shell .agents-ed-avatar-btn .agents-mine-avatar-img {
  border-radius: 21px;
}
.agents-ed-avatar-change {
  position: absolute;
  right: -4px;
  bottom: -4px;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  border: 2px solid #fff;
  background: linear-gradient(135deg, #2ee6c9, #5b8cff);
  color: #042f2e;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  touch-action: manipulation;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.15);
}
body:not(.theme-light) .agents-ed-avatar-change {
  border-color: #121820;
  color: #042f2e;
}
.agents-ed-avatar-meta {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 4px;
  max-width: 110px;
}
.agents-ed-av-link {
  border: none;
  background: transparent;
  padding: 0;
  font-family: inherit;
  font-size: 11px;
  font-weight: 600;
  color: #0d9488;
  cursor: pointer;
  touch-action: manipulation;
}
.agents-ed-av-link--muted { color: #94a3b8; }
body:not(.theme-light) .agents-ed-av-link { color: #2ee6c9; }
body:not(.theme-light) .agents-ed-av-link--muted { color: #64748b; }
.agents-ed-av-dot {
  font-size: 11px;
  color: #cbd5e1;
  line-height: 1;
}
.agents-ed-emoji-panel {
  position: relative;
  z-index: 12;
  margin-top: 10px;
  padding: 10px;
  border-radius: 16px;
  background: #fff;
  border: 1px solid #e2e8f0;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.12);
}
body:not(.theme-light) .agents-ed-emoji-panel {
  background: #1a2330;
  border-color: rgba(255, 255, 255, 0.1);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35);
}
.agents-ed-avatar-col { position: relative; }

.agents-ed-bg-block {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid rgba(15, 23, 42, 0.06);
}
body:not(.theme-light) .agents-ed-bg-block {
  border-top-color: rgba(255, 255, 255, 0.06);
}
.agents-ed-bg-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 10px;
}
.agents-ed-bg-title {
  font-size: 13px;
  font-weight: 650;
  color: #334155;
}
body:not(.theme-light) .agents-ed-bg-title { color: #e2e8f0; }
.agents-ed-bg-optional {
  font-size: 11px;
  color: #94a3b8;
}
.agents-ed-bg-stage {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 16px;
  overflow: hidden;
  background: linear-gradient(135deg, #f1f5f9 0%, #e2e8f0 100%);
  background-size: cover;
  background-position: center;
  cursor: pointer;
  touch-action: manipulation;
  border: 1px solid rgba(15, 23, 42, 0.06);
}
body:not(.theme-light) .agents-ed-bg-stage {
  background: linear-gradient(135deg, rgba(255,255,255,0.06) 0%, rgba(255,255,255,0.02) 100%);
  border-color: rgba(255, 255, 255, 0.08);
}
.agents-ed-bg-stage-inner {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background: linear-gradient(180deg, transparent 40%, rgba(15, 23, 42, 0.55) 100%);
}
.agents-mine-bg-preview--empty .agents-ed-bg-stage-inner {
  justify-content: center;
  background: none;
}
.agents-ed-bg-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex: 1;
  color: #94a3b8;
  font-size: 13px;
  font-weight: 600;
}
.agents-ed-bg-fab {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding: 10px 12px;
}
.agents-ed-bg-fab-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 7px 12px;
  border-radius: 999px;
  border: none;
  background: rgba(255, 255, 255, 0.92);
  color: #334155;
  font-size: 12px;
  font-weight: 650;
  font-family: inherit;
  cursor: pointer;
  touch-action: manipulation;
  box-shadow: 0 2px 10px rgba(15, 23, 42, 0.12);
}
.agents-ed-bg-fab-btn--ghost {
  background: rgba(15, 23, 42, 0.35);
  color: #f8fafc;
  backdrop-filter: blur(8px);
}
.agents-mine-bg-preview:not(.agents-mine-bg-preview--empty) .agents-ed-bg-placeholder { display: none; }

/* —— 编辑页 / 对话页：音乐播放控制 —— */
.agents-ed-music-toolbar {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(15, 23, 42, 0.06);
}
body:not(.theme-light) .agents-ed-music-toolbar {
  border-top-color: rgba(255, 255, 255, 0.06);
}
.agents-ed-music-pp {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  min-height: 44px;
  border-radius: 999px;
  border: none;
  background: linear-gradient(135deg, #2ee6c9 0%, #5b8cff 100%);
  color: #042f2e;
  font-size: 13px;
  font-weight: 700;
  font-family: inherit;
  cursor: pointer;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
  position: relative;
  z-index: 2;
  box-shadow: 0 4px 14px rgba(46, 230, 201, 0.25);
}
.agents-ed-music-pp:disabled {
  opacity: 0.55;
  cursor: wait;
}
.agents-ed-music-pp:active:not(:disabled) {
  transform: scale(0.98);
}
.agents-ed-music-pp-hint {
  font-size: 11px;
  color: #94a3b8;
  line-height: 1.35;
}
.agents-chat-music-btn {
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  margin-right: 4px;
  border-radius: 12px;
  border: 1px solid rgba(46, 230, 201, 0.35);
  background: rgba(46, 230, 201, 0.12);
  color: #0f766e;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
body:not(.theme-light) .agents-chat-music-btn {
  color: #5eead4;
  border-color: rgba(46, 230, 201, 0.28);
  background: rgba(46, 230, 201, 0.1);
}
.agents-chat-topbar {
  display: flex;
  align-items: center;
  gap: 4px;
}
.agents-chat-topbar .home-new-chat-btn {
  flex-shrink: 0;
}
