/* 详情页按 App 重排：独立卡片 + 红竖条小标题 */
main.dt-wrap {
  background: #FFFFFF !important;
  padding: 12px 14px 112px !important;
}

.dt-c2{
  background:#fff; border-radius:16px; padding:16px;
  border:1px solid #EDEFF2; margin-bottom:12px;
  box-shadow:0 1px 2px rgba(17,24,39,.04), 0 6px 18px rgba(17,24,39,.05);
}
.dt-c2-title{ padding:18px 16px 16px; }

.dt-c2 .dt-title{
  font-size:19px; font-weight:800; line-height:1.45; color:#0F1115;
  margin:0 0 10px;
}

/* meta：纯文字 + 间距，不再用彩色胶囊 */
.dt-c2 .dt-meta{ display:flex; flex-wrap:wrap; gap:4px 14px; margin:0 }
.dt-c2 .dt-meta .tag-cat,
.dt-c2 .dt-meta .tag-kw{
  background:none !important; border:0 !important; padding:0 !important;
  margin:0 !important; color:#9AA0AA !important;
  font-size:12px !important; font-weight:400 !important;
  border-radius:0 !important;
}

/* 小标题：红竖条 + 加粗 */
.dt-c2-h{
  display:flex; align-items:center; gap:8px;
  font-size:15.5px; font-weight:800; color:#0F1115;
  margin:0 0 12px;
}
.dt-c2-h::before{
  content:''; width:3px; height:14px; border-radius:2px; background:#C41E3A;
}

/* 作者卡 */
.dt-c2 .dt-author{ display:flex; align-items:center; gap:12px; padding:0;
  border:0 !important; margin:0 !important }
.dt-c2 .dt-author::after{ display:none }

/* 正文 */
.dt-c2 .dt-body{ font-size:13.5px; line-height:1.95; color:#3F4550 }
.dt-c2 .dt-body p{ margin:0 0 10px }

/* 安全提示 */
.dt-c2-safety p{ font-size:12.5px; line-height:1.9; color:#7A8089; margin:0 }

/* 图片区标题沿用红竖条 */
.dt-c2 .dt-sec-h{
  display:flex; align-items:center; gap:8px;
  font-size:15.5px; font-weight:800; color:#0F1115;
  margin:16px 0 10px;
}
.dt-c2 .dt-sec-h::before{
  content:''; width:3px; height:14px; border-radius:2px; background:#C41E3A;
}

/* 最近查看 / 联系区也做成卡片 */
.dt-acts, .dt-contact{
  background:#fff; border-radius:16px; padding:16px;
  border:1px solid #EDEFF2; margin:0 0 12px !important;
  box-shadow:0 1px 2px rgba(17,24,39,.04), 0 6px 18px rgba(17,24,39,.05);
}


/* ===== 右侧竖排悬浮：名额有限 / 尽快联系（跟 App 一致） ===== */
.dt-float{
  position:fixed; right:0; bottom:150px; z-index:60;
  width:30px; padding:12px 0 10px; border:0; border-radius:12px 0 0 12px;
  background:rgba(255,255,255,.97);
  box-shadow:0 6px 18px rgba(17,24,39,.14);
  display:block; text-align:center;
  font-size:11.5px; font-weight:700; color:#3F4550;
  cursor:pointer; font-family:inherit; line-height:1.35;
}
.dt-float span{
  display:block; line-height:1.5; letter-spacing:0;
}
.dt-float span + span{ margin-top:8px }
.dt-float:active{ background:#FFF0F3; color:#C41E3A }

/* ===== 左下角漂浮气泡：跟 App 一样堆叠两条 ===== */
.dt-bubbles{
  position:fixed; left:12px; bottom:150px; z-index:60;
  display:flex; flex-direction:column; gap:6px;
  pointer-events:none;
}
.dt-bub{
  display:flex; align-items:center; gap:7px;
  max-width:236px; padding:6px 11px 6px 6px; border-radius:999px;
  background:rgba(28,30,34,.88); color:#fff;
  font-size:12px; opacity:0; transform:translateY(8px);
  transition:opacity .28s ease, transform .28s cubic-bezier(.22,.9,.3,1);
}
.dt-bub.on{ opacity:1; transform:translateY(0) }
.dt-bub .ic{ flex:none; width:16px; height:16px; display:flex; align-items:center;
  justify-content:center; color:#FF9AAA }
.dt-bub .ic svg{ width:14px; height:14px }
.dt-bub .av{
  width:22px; height:22px; border-radius:50%; overflow:hidden; flex:none;
  background:#4A4E57; display:flex; align-items:center; justify-content:center;
  font-size:11px; color:#fff;
}
.dt-bub .av img{ width:100%; height:100%; object-fit:cover }
.dt-bub .tx{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
/* ===== 右上角三个点 ===== */
.dt-more{ margin-left:auto; width:34px; height:34px; border:0; border-radius:50%;
  background:transparent; color:#16181B; display:flex; align-items:center;
  justify-content:center; cursor:pointer; font-family:inherit }
.dt-more:active{ background:#F0F1F4 }

/* ===== 底部菜单（跟 App 的 _moreSheet 一样） ===== */
.dt-sheet-mask{ position:fixed; inset:0; z-index:90; background:rgba(6,7,10,.42);
  opacity:0; transition:opacity .2s; display:flex; align-items:flex-end }
.dt-sheet-mask.on{ opacity:1 }
.dt-sheet{ width:100%; background:#fff; border-radius:18px 18px 0 0;
  padding:6px 0 calc(10px + env(safe-area-inset-bottom));
  transform:translateY(100%); transition:transform .24s cubic-bezier(.22,.9,.3,1) }
.dt-sheet-mask.on .dt-sheet{ transform:translateY(0) }
.dt-sheet-hd{ width:38px; height:4px; border-radius:2px; background:#E3E6EB;
  margin:6px auto 10px }
.dt-sheet-it{ display:flex; align-items:center; gap:12px; width:100%;
  padding:15px 20px; border:0; background:transparent; font-family:inherit;
  font-size:15px; color:#16181B; text-align:left; cursor:pointer }
.dt-sheet-it svg{ width:20px; height:20px; flex:none; color:#6B7075 }
.dt-sheet-it:active{ background:#F7F8FA }
.dt-sheet-it.danger{ color:#C41E3A }
.dt-sheet-it.danger svg{ color:#C41E3A }

/* ===== 动效只给底部那条常驻按钮（卡片里的小按钮保持静态） ===== */
@keyframes dtGoFlow{ 0%{background-position:0% 50%} 50%{background-position:100% 50%}
  100%{background-position:0% 50%} }
/* 卡片里那个小的：纯色，不动 */
.dt-c-btn, .dt-c-card .dt-c-btn{
  background:#C41E3A !important; animation:none !important;
  box-shadow:0 4px 12px rgba(196,30,58,.16) !important;
}

/* ===== 底部操作栏：白底 + 整宽红按钮，跟 App 一样 ===== */
.dt-c-bar-fixed{
  position:fixed; left:0; right:0; bottom:0; z-index:70;
  padding:10px 14px calc(10px + env(safe-area-inset-bottom));
  background:#fff; border-top:1px solid #EDEFF2;
  box-shadow:0 -4px 16px rgba(17,24,39,.06);
}
.dt-c-bar-fixed .go{
  width:100%; height:46px; border:0; border-radius:23px;
  background:#C41E3A; color:#fff; font-size:16px; font-weight:700;
  font-family:inherit; cursor:pointer;
}
.dt-c-bar-fixed .go:active{ opacity:.9 }

/* 给固定底部栏让位 */
.pg-detail .dt-wrap{ padding-bottom:120px !important }

/* 对接卡内层：外层已经是卡片，这里只排内容，不画框 */
.dt-c-card{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 !important;
}
/* 卡片之间统一 12px，且都跟上面 .dt-c2 一样宽 */
.dt-c2, .dt-acts, .dt-contact, .dt-safety{ margin-left:0 !important; margin-right:0 !important }

/* PC 外壳：气泡贴底栏上方，别压正文 */
body.pane-pc .dt-bubbles{ bottom:84px }
body.pane-pc .dt-float{ bottom:84px }

/* 底部常驻按钮：渐变流动 + 按下回弹（写在最后，盖掉上面的 background 简写） */
.dt-c-bar-fixed .go{
  background:linear-gradient(100deg,#C41E3A 0%,#E04B67 35%,#C41E3A 68%,#A8172F 100%) !important;
  background-size:220% 100% !important;
  background-position:0% 50% !important;
  animation:dtGoFlow 4.2s ease-in-out infinite !important;
  box-shadow:0 6px 18px rgba(196,30,58,.28) !important;
  transition:transform .12s ease, box-shadow .12s ease !important;
}
.dt-c-bar-fixed .go:active{
  transform:scale(.984) !important;
  box-shadow:0 3px 10px rgba(196,30,58,.2) !important;
  opacity:1 !important;
}
