  <style>
    /* ===== 零全局污染：所有样式仅限 .chat-bubble 内部 ===== */    
    /* 页面本身完全透明，无任何背景或装饰 */
    body {
      margin: 0;
      padding: 0;
      background: transparent;
      min-height: auto;
      display: block;
    }
    /* ============================================================
       🛡️ 所有样式完全锁定在 .chat-bubble 内
       ============================================================ */
    .chat-bubble {
      /* 容器本身：完全透明背景，无阴影，无边框 */
      max-width: 100%;
      width: auto;
      background: transparent;
      backdrop-filter: none;
      -webkit-backdrop-filter: none;
      border-radius: 0;
      box-shadow: none;
      padding: 0;
      display: block;
      font-family: '黑体', 'Heiti SC', 'PingFang SC', 'Microsoft YaHei', sans-serif;
      line-height: 1.55;
      color: #2f241a;
      overflow: visible;
      position: relative;
    }
    /* ----- 重置所有子元素，继承容器透明背景 ----- */
    .chat-bubble *,
    .chat-bubble *::before,
    .chat-bubble *::after {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
      background: transparent;
    }
    /* ----- 模块纵向排列 ----- */
    .chat-bubble .module {
      display: flex;
      flex-direction: column;
      gap: 10px;
      background: transparent;
    }
    /* ----- details 折叠卡片 (透明无装饰) ----- */
    .chat-bubble details {
      background: transparent;
      border: none;
      margin: 0;
    }
    .chat-bubble details summary {
      list-style: none;
      display: flex;
      align-items: center;
      gap: 10px;
      font-weight: 500;
      font-size: 0.95rem;
      letter-spacing: 0.4px;
      color: #4b3a2c;
      padding: 8px 0;
      cursor: pointer;
      transition: all 0.2s ease;
      background: transparent;
      border: none;
    }
    .chat-bubble details summary::-webkit-details-marker {
      display: none;
    }
    .chat-bubble details summary i.fa-chevron-down {
      margin-left: auto;
      font-size: 0.8rem;
      color: #b2926c;
      transition: transform 0.25s ease;
    }
    .chat-bubble details[open] summary i.fa-chevron-down {
      transform: rotate(180deg);
    }
    .chat-bubble details summary:hover {
      color: #6d4f35;
    }
    /* ----- 内容区块 ----- */
    .chat-bubble .content-block {
      font-family: inherit;
      line-height: 1.55;
      color: #2f241a;
      display: flex;
      flex-direction: column;
      gap: 7px;
      margin-top: 2px;
      background: transparent;
    }
    /* ----- 分隔线 (纯文本样式，无背景) ----- */
    .chat-bubble .divider-icon {
      display: flex;
      align-items: center;
      gap: 12px;
      color: #b39274;
      font-weight: 400;
      font-size: 0.75rem;
      letter-spacing: 1.5px;
      margin: 4px 0;
      background: transparent;
    }
    .chat-bubble .divider-icon::before,
    .chat-bubble .divider-icon::after {
      content: "";
      flex: 1;
      height: 1px;
      background: linear-gradient(to right, transparent, #dac5ad, transparent);
      opacity: 0.7;
    }
    /* ----- 列表行 ----- */
    .chat-bubble .list-row {
      display: flex;
      align-items: baseline;
      gap: 10px;
      font-size: 0.88rem;
      margin-left: 4px;
      background: transparent;
    }
    .chat-bubble .list-row i {
      width: 18px;
      color: #be9a78;
      font-size: 0.8rem;
      text-align: center;
      flex-shrink: 0;
    }
    /* ----- 子列表缩进 ----- */
    .chat-bubble .sub-list {
      margin-left: 24px;
      display: flex;
      flex-direction: column;
      gap: 4px;
    }
    /* ----- 标签 (仅文本样式) ----- */
    .chat-bubble .highlight-tag {
      font-weight: 600;
      color: #5e3b24;
      background: rgba(220, 195, 160, 0.28);
      padding: 0 6px;
      border-radius: 10px;
      display: inline-block;
    }
    .chat-bubble .badge {
      background: rgba(200, 170, 130, 0.25);
      border-radius: 30px;
      padding: 2px 12px;
      font-size: 0.7rem;
      font-weight: 500;
      color: #594430;
      letter-spacing: 0.3px;
      display: inline-flex;
      align-items: center;
      gap: 5px;
    }
    /* ----- 头部区域 ----- */
    .chat-bubble .assistant-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      background: transparent;
      margin-bottom: 2px;
    }
    .chat-bubble .assistant-header .left {
      display: flex;
      align-items: center;
      gap: 10px;
    }
    .chat-bubble .assistant-header i {
      font-size: 1.8rem;
      color: #bc8f6c;
      filter: drop-shadow(0 4px 5px rgba(0, 0, 0, 0.1));
    }
    .chat-bubble .date-city {
      display: flex;
      flex-wrap: wrap;
      align-items: baseline;
      gap: 6px 14px;
      font-size: 0.82rem;
      color: #4e3a28;
    }
    .chat-bubble .weather-detail {
      display: flex;
      flex-wrap: wrap;
      gap: 8px 16px;
      font-size: 0.82rem;
      background: transparent;
    }
    .chat-bubble .weather-detail span i {
      margin-right: 4px;
      color: #c49a6c;
    }
    .chat-bubble .star-rating {
      color: #d4a373;
      letter-spacing: 2px;
    }
    /* ----- 动画 (仅作用于图标) ----- */
    @keyframes softPulse {
      0% { opacity: 0.85; transform: scale(1); }
      50% { opacity: 1; transform: scale(1.03); }
      100% { opacity: 0.85; transform: scale(1); }
    }
    .chat-bubble .pulse-icon {
      animation: softPulse 3s infinite ease-in-out;
      display: inline-block;
    }
    @keyframes fadeIn {
      from { opacity: 0.5; transform: translateY(4px); }
      to { opacity: 1; transform: translateY(0); }
    }
    .chat-bubble .fade-in {
      animation: fadeIn 0.5s ease;
    }
    /* ----- 正文内容样式 (透明背景) ----- */
    .chat-bubble .text-content {
      font-weight: 450;
      color: #2e2319;
      font-size: 0.92rem;
      background: transparent;
      padding: 6px 0;
    }
    /* ===== 所有样式仅限 .chat-bubble 内部，无任何全局泄漏 ===== */
  </style>