/* =====================================================
   训练执行页 v10 — 布局 / 主题 / 配色 / 按钮 / 图片整体优化
   - P0 底部留白治理、休息信息去重
   - P1 冷暖撞色统一为奶油暖调、主 CTA 与首页 token 统一
   - P2 顶部进度强化、加组降级、动作说明对齐
   - P3 噜噜放大呼吸、记录进度点、贴士气泡化
   ===================================================== */

/* ── 1. 页面整体：去掉底部大片留白，让内容有承接 ── */
.lu .screen.premium-workout,
.lu .premium-workout {
  padding-bottom: 130px !important;
  min-height: calc(100dvh - 49px) !important;
  background-image:
    radial-gradient(130% 280px at 85% 16px, rgba(254, 215, 145, .38) 0%, rgba(246, 238, 214, .22) 42%, transparent 70%) !important;
  background-repeat: no-repeat !important;
}

/* ── 2. 顶部工具栏：进度强化 + 结束按钮降级为描边 ── */
.lu .premium-workout .workout-toolbar {
  align-items: center !important;
  gap: 10px !important;
  padding-bottom: 6px !important;
}

.lu .premium-workout .workout-back {
  width: 40px !important;
  height: 40px !important;
  min-height: 40px !important;
  border-radius: 13px !important;
  background: #fffdf8 !important;
  border: 1.5px solid #e6ddc9 !important;
  box-shadow: 0 2px 0 #d6cdb8 !important;
  color: #4c6a4f !important;
}

/* 中间标题区：计划名淡出，进度 1/6 提亮 */
.lu .premium-workout .workout-toolbar > span {
  color: #2a2a26 !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: -.2px !important;
  line-height: 1.25 !important;
}
.lu .premium-workout .workout-toolbar small {
  display: block !important;
  margin-top: 1px !important;
  color: #8a8879 !important;
  font-size: 10px !important;
  font-weight: 650 !important;
  letter-spacing: .2px !important;
}

/* 结束：从实心橘降级为描边，不与主 CTA 抢视线 */
.lu .premium-workout .finish-session {
  height: 34px !important;
  min-height: 34px !important;
  padding: 0 12px !important;
  border-radius: 12px !important;
  background: transparent !important;
  border: 1.5px solid #e2d8c4 !important;
  box-shadow: none !important;
  color: #8a7458 !important;
  font-size: 12px !important;
  font-weight: 750 !important;
}
.lu .premium-workout .finish-session:active {
  background: #f8f3e8 !important;
}

/* ── 3. 动作标题区：肌群标签 + 动作说明同排右对齐 ── */
.lu .premium-workout .premium-exercise-heading {
  margin-top: 14px !important;
}
.lu .premium-workout .premium-exercise-heading h2 {
  font-size: 27px !important;
  font-weight: 900 !important;
  letter-spacing: -.6px !important;
  color: #23251f !important;
  line-height: 1.18 !important;
  margin: 0 !important;
}
.lu .premium-workout .premium-exercise-heading > div {
  margin-top: 6px !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
.lu .premium-workout .premium-exercise-heading p {
  margin: 0 !important;
  color: #7d7a6d !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: .2px !important;
}

/* 动作说明：从带影胶囊降级为轻量文字链，重心不漂移 */
.lu .premium-workout .exercise-guide {
  height: 24px !important;
  min-height: 24px !important;
  padding: 0 9px 0 7px !important;
  margin-left: auto !important;
  border-radius: 999px !important;
  background: #f3f7ee !important;
  border: 1px solid #dbe6d2 !important;
  box-shadow: none !important;
  color: #4f6b52 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 3px !important;
}
.lu .premium-workout .exercise-guide svg {
  width: 12px !important;
  height: 12px !important;
}

/* ── 4. 「当前组」主卡：冷青绿 → 奶油暖调（与首页 Hero 同源） ── */
.lu .premium-workout .workout-focus {
  margin: 12px 0 14px !important;
  border: 1.5px solid #eadfc2 !important;
  border-radius: 22px !important;
  background: linear-gradient(160deg, #fffdf7 0%, #f8f2e2 46%, #eef3dd 100%) !important;
  box-shadow: 0 3.5px 0 #e3d7b8, 0 10px 22px -10px rgba(120, 95, 40, .18) !important;
  padding: 11px 13px !important;
  min-height: 100px !important;
  align-items: center !important;
}
/* 草丘：从冷绿换成暖橄榄 */
.lu .premium-workout .workout-focus::after {
  height: 46px !important;
  bottom: -12px !important;
  background: linear-gradient(180deg, #d8e4b6 0%, #c6d8a0 100%) !important;
  opacity: .85 !important;
}

/* 环形进度：冷灰 → 暖奶油 + 橘 */
.lu .premium-workout .ring-guide,
.lu .premium-workout .ring-arc {
  stroke: #e6dcc0 !important;
}
.lu .premium-workout .ring-arc.is-selected {
  stroke: #ea922c !important;
  stroke-width: 6px !important;
  stroke-linecap: round !important;
}
.lu .premium-workout .ring-arc.is-done {
  stroke: #7ea86a !important;
}
.lu .premium-workout .precision-center > span {
  color: #8a7a58 !important;
  font-size: 9.5px !important;
  font-weight: 750 !important;
  letter-spacing: .4px !important;
}
.lu .premium-workout .precision-center > strong {
  color: #2a2a26 !important;
  font-size: 24px !important;
  font-weight: 900 !important;
  letter-spacing: -1px !important;
}

/* 陪伴文案气泡：奶油白 + 暖描边 */
.lu .premium-workout .workout-companion-copy {
  background: rgba(255, 253, 246, .95) !important;
  border: 1.5px solid #e8dcc0 !important;
  border-radius: 14px !important;
  padding: 8px 10px !important;
  box-shadow: 0 2px 6px rgba(120, 95, 40, .07) !important;
}
.lu .premium-workout .workout-companion-copy > strong {
  color: #2c3327 !important;
  font-size: 13px !important;
  font-weight: 850 !important;
}
.lu .premium-workout .workout-companion-copy > span {
  color: #7a7460 !important;
  font-size: 10.5px !important;
  font-weight: 650 !important;
}

/* 噜噜放大 + 底部渐隐 + 呼吸浮动 */
.lu .premium-workout .workout-lulu {
  flex: 0 0 82px !important;
  width: 82px !important;
  height: 92px !important;
  object-fit: contain !important;
  -webkit-mask-image: linear-gradient(180deg, #000 88%, rgba(0, 0, 0, .1) 100%) !important;
  mask-image: linear-gradient(180deg, #000 88%, rgba(0, 0, 0, .1) 100%) !important;
  filter: drop-shadow(0 5px 10px rgba(120, 85, 30, .16)) !important;
  animation: luluWorkoutBreathe 4.6s ease-in-out infinite !important;
}
@keyframes luluWorkoutBreathe {
  0%, 100% { transform: translateY(0) scale(1); }
  50%      { transform: translateY(-3px) scale(1.012); }
}

/* ── 5. 组号选择：统一基线，取消夸张浮起 ── */
.lu .premium-workout .workout-set-bar {
  padding: 10px 0 10px !important;
  gap: 10px !important;
  align-items: center !important;
}
.lu .premium-workout .set-selection {
  gap: 7px !important;
  padding: 4px 0 !important;
  align-items: center !important;
}
.lu .premium-workout .set-selection > button {
  flex: 0 0 44px !important;
  width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  border-radius: 14px !important;
  background: #fffdf8 !important;
  border: 1.5px solid #e5ddca !important;
  box-shadow: 0 2.5px 0 #d6cdb8 !important;
  color: #5c6350 !important;
  font-size: 13.5px !important;
  font-weight: 800 !important;
  transition: transform .14s ease, box-shadow .14s ease !important;
}
.lu .premium-workout .set-selection > button.selected {
  border: 1.5px solid #e59634 !important;
  background: linear-gradient(180deg, #fffaf0 0%, #fef2dd 100%) !important;
  color: #97530f !important;
  box-shadow: 0 2.5px 0 #d8933c, 0 5px 12px rgba(234, 157, 60, .22) !important;
  transform: none !important;
}
/* 顶部小橘子缩小、贴边更克制 */
.lu .premium-workout .set-selection > button.selected::before {
  font-size: 12px !important;
  top: -10px !important;
}
.lu .premium-workout .set-selection > button.is-done:not(.selected) {
  background: linear-gradient(180deg, #ffffff 0%, #eaf5e3 100%) !important;
  border: 1.5px solid #a8caa2 !important;
  box-shadow: 0 2.5px 0 #93bb8d !important;
  color: #2f5a36 !important;
}

/* 加组：从虚线大按钮降级为同基线轻胶囊 */
.lu .premium-workout .add-set-compact {
  flex: 0 0 auto !important;
  height: 44px !important;
  min-height: 44px !important;
  width: 52px !important;
  padding: 0 !important;
  border-radius: 14px !important;
  background: #f6f9f2 !important;
  border: 1.5px dashed #c3d5b6 !important;
  box-shadow: 0 2.5px 0 #d3ddc9 !important;
  color: #6b8464 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.lu .premium-workout .add-set-compact::before {
  content: none !important;
  display: none !important;
}

/* ── 6. 重量 / 次数双栏：冷青蓝 → 统一奶油暖白，仅用数字颜色区分 ── */
.lu .premium-workout .premium-fields {
  border: 1.5px solid #e6dcc6 !important;
  border-radius: 22px !important;
  background: #ffffff !important;
  box-shadow: 0 3.5px 0 #dfd4bd, 0 10px 24px -12px rgba(90, 70, 30, .14) !important;
  margin-bottom: 10px !important;
}
.lu .premium-workout .premium-field:first-child {
  background: linear-gradient(160deg, #fffdf8 0%, #fdf5e6 100%) !important;
  border-right: 1.5px dashed #e9d9bd !important;
  color: #8a5520 !important;
  padding: 13px 13px 15px !important;
}
.lu .premium-workout .premium-field:last-child {
  background: linear-gradient(160deg, #fffdf8 0%, #f4f8ec 100%) !important;
  border-right: 0 !important;
  color: #41693f !important;
  padding: 13px 13px 15px !important;
}
/* 水印 emoji 减淡 */
.lu .premium-workout .premium-field:first-child::before,
.lu .premium-workout .premium-field:last-child::before {
  opacity: .07 !important;
  font-size: 38px !important;
}

/* 编辑小胶囊：次数区从青蓝改暖绿 */
.lu .premium-workout .premium-field:last-child .premium-field-label::after {
  color: #4c7448 !important;
  background: #eef5e7 !important;
  border: 1px solid #d5e4c9 !important;
}
.lu .premium-workout .premium-field:first-child .premium-field-label::after {
  color: #9c6225 !important;
  background: #fae7cd !important;
  border: 1px solid #ebd0ab !important;
}
.lu .premium-workout .premium-field-label {
  font-size: 12px !important;
  font-weight: 800 !important;
}
.lu .premium-workout .field-value {
  font-size: 42px !important;
  font-weight: 900 !important;
  letter-spacing: -.8px !important;
  min-height: 54px !important;
}
/* 步进按钮：统一暖白 */
.lu .premium-workout .premium-stepper > button {
  background: #fffdf8 !important;
  border: 1.5px solid #e7dcc4 !important;
  box-shadow: 0 2.5px 0 #d8cdb6 !important;
  border-radius: 12px !important;
  color: #7a6440 !important;
}
.lu .premium-workout .premium-field:last-child .premium-stepper > button {
  color: #4f6f4c !important;
}
.lu .premium-workout .premium-stepper > span {
  background: #fffdf8 !important;
  border: 1px solid #e7dcc4 !important;
  color: #7a6440 !important;
  box-shadow: 0 1.5px 0 #dfd4bd !important;
}
.lu .premium-workout .premium-field:last-child .premium-stepper > span {
  color: #4f6f4c !important;
}

/* ── 7. 上次参考条：去掉重复的「自动休息 90 秒」，只留参考 ── */
.lu .premium-workout .workout-status-strip {
  background: #fffdf7 !important;
  border: 1.5px dashed #e8dcc0 !important;
  border-radius: 14px !important;
  padding: 8px 12px !important;
  box-shadow: none !important;
  margin-top: 0 !important;
  min-height: 38px !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
.lu .premium-workout .workout-status-strip .workout-feedback {
  display: none !important;
}
.lu .premium-workout .workout-reference {
  color: #8a8474 !important;
  font-size: 11.5px !important;
  font-weight: 650 !important;
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
}
.lu .premium-workout .workout-reference strong {
  color: #3d5c3f !important;
  font-weight: 800 !important;
  font-size: 12px !important;
}

/* ── 8. 手动休息 / 切换动作：合并为同一行等宽次级按钮 ── */
.lu .premium-workout .workout-secondary-actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 9px !important;
  margin-top: 10px !important;
}
.lu .premium-workout .workout-secondary-actions > button {
  height: 46px !important;
  min-height: 46px !important;
  border-radius: 14px !important;
  background: #fffdf8 !important;
  border: 1.5px solid #e4dcc8 !important;
  box-shadow: 0 2.5px 0 #d7cdb7 !important;
  color: #52664e !important;
  font-size: 12.5px !important;
  font-weight: 800 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
}
.lu .premium-workout .workout-secondary-actions > button::before,
.lu .premium-workout .workout-secondary-actions > button::after {
  content: none !important;
  display: none !important;
}

/* ── 9. 本次记录：折叠标题右侧加进度点，展开行更清爽 ── */
.lu .premium-workout .workout-log {
  background: #fffdf8 !important;
  border: 1.5px solid #e7dfcc !important;
  border-radius: 18px !important;
  box-shadow: 0 3px 0 #ddd3bd !important;
  margin-top: 10px !important;
  overflow: hidden !important;
}
.lu .premium-workout .workout-log > summary {
  min-height: 46px !important;
  padding: 0 14px !important;
  color: #2f3b2e !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}
.lu .premium-workout .premium-log-row {
  border-radius: 10px !important;
  font-size: 11.5px !important;
  min-height: 40px !important;
}
.lu .premium-workout .premium-log-row.selected {
  background: #fdf1dc !important;
  box-shadow: inset 0 0 0 1.5px #f0d9ae !important;
}

/* ── 10. 底部固定操作区：与首页主 CTA 完全同源 ── */
.lu:has(.premium-workout) .training-action-dock {
  background: linear-gradient(180deg, rgba(247, 243, 233, 0) 0%, rgba(247, 243, 233, .94) 30%, #f7f3e9 100%) !important;
  padding-top: 14px !important;
}
.lu .complete-set-button {
  height: 54px !important;
  min-height: 54px !important;
  border-radius: 16px !important;
  background: linear-gradient(180deg, #f9c46b 0%, #ea912a 100%) !important;
  border: 1.5px solid #c67b19 !important;
  box-shadow: 0 3.5px 0 #b0680d, 0 10px 20px rgba(234, 146, 44, .3) !important;
  color: #fff !important;
  font-size: 15.5px !important;
  font-weight: 850 !important;
  letter-spacing: .3px !important;
  position: relative !important;
}
.lu .complete-set-button::after {
  content: "" !important;
  position: absolute !important;
  inset: 4px !important;
  border: 1.2px dashed rgba(255, 255, 255, .7) !important;
  border-radius: 12px !important;
  pointer-events: none !important;
}
.lu .complete-set-button:active {
  transform: translateY(2px) !important;
  box-shadow: 0 1.5px 0 #b0680d, 0 5px 10px rgba(234, 146, 44, .24) !important;
}

/* ── 11. 噜噜陪练贴士：虚线框 → 奶油对话气泡 ── */
.lu .premium-workout .lulu-tip-card,
.lu .premium-workout [class*="tip-card"] {
  background: linear-gradient(160deg, #fffdf7 0%, #f9f2e0 100%) !important;
  border: 1.5px solid #ece0c4 !important;
  border-radius: 16px 16px 16px 6px !important;
  box-shadow: 0 2.5px 0 #e2d7bd !important;
  color: #6b6350 !important;
  font-size: 11.5px !important;
  line-height: 1.62 !important;
  padding: 10px 13px !important;
  margin-top: 12px !important;
}

/* ── 12. 深色主题兼容 ── */
html[data-theme="dark"] .lu .premium-workout .workout-focus {
  background: linear-gradient(160deg, #33342a 0%, #2f352a 100%) !important;
  border-color: #4d5442 !important;
  box-shadow: none !important;
}
html[data-theme="dark"] .lu .premium-workout .premium-field:first-child,
html[data-theme="dark"] .lu .premium-workout .premium-field:last-child {
  background: #2b2f26 !important;
  border-color: #454b3d !important;
}
html[data-theme="dark"] .lu .premium-workout .workout-status-strip,
html[data-theme="dark"] .lu .premium-workout .workout-log,
html[data-theme="dark"] .lu .premium-workout .set-selection > button,
html[data-theme="dark"] .lu .premium-workout .workout-secondary-actions > button {
  background: #2a2e26 !important;
  border-color: #464c3f !important;
  box-shadow: none !important;
  color: #dfe6d5 !important;
}
/* ── 13. 本次记录折叠态进度小圆点 ── */
.lu .premium-workout .workout-log > summary .lulu-log-dots {
  margin-left: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
}
.lu .premium-workout .workout-log > summary .lulu-log-dots > i {
  width: 7px !important;
  height: 7px !important;
  border-radius: 999px !important;
  background: #e4ddc9 !important;
  display: block !important;
}
.lu .premium-workout .workout-log > summary .lulu-log-dots > i.is-done {
  background: #ea922c !important;
  box-shadow: 0 0 0 1.5px rgba(234, 146, 44, .22) !important;
}

/* ── 14. 修正：隐藏重复的「完成本组后，自动休息 90 秒」提示 ── */
.lu .premium-workout .workout-status-strip .workout-feedback,
.lu .premium-workout .workout-feedback {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  position: absolute !important;
  pointer-events: none !important;
}
/* 提示隐藏后参考条居中显示 */
.lu .premium-workout .workout-status-strip .workout-reference {
  width: 100% !important;
  justify-content: center !important;
}

/* ── 15. 修正：主 CTA 统一为首页 token（覆盖原优先级） ── */
.lu .training-action-dock .complete-set-button,
.lu .premium-workout .complete-set-button,
.lu button.complete-set-button {
  height: 54px !important;
  min-height: 54px !important;
  border-radius: 16px !important;
  background: linear-gradient(180deg, #f9c46b 0%, #ea912a 100%) !important;
  border: 1.5px solid #c67b19 !important;
  box-shadow: 0 3.5px 0 #b0680d, 0 10px 20px rgba(234, 146, 44, .3) !important;
  color: #ffffff !important;
  font-size: 15.5px !important;
  font-weight: 850 !important;
  letter-spacing: .3px !important;
  position: relative !important;
  overflow: visible !important;
}
.lu .training-action-dock .complete-set-button::after {
  content: "" !important;
  position: absolute !important;
  inset: 4px !important;
  border: 1.2px dashed rgba(255, 255, 255, .7) !important;
  border-radius: 12px !important;
  pointer-events: none !important;
}

/* ── 16. 修正：动作说明按钮与肌群行对齐、贴士卡气泡化 ── */
.lu .premium-workout .premium-exercise-heading .exercise-guide {
  margin-left: auto !important;
  align-self: center !important;
}
.lu .premium-workout .lulu-tip-card,
.lu .lulu-tip-card {
  background: linear-gradient(160deg, #fffdf7 0%, #f9f2e0 100%) !important;
  border: 1.5px solid #ece0c4 !important;
  border-radius: 16px 16px 16px 6px !important;
  box-shadow: 0 2.5px 0 #e2d7bd !important;
  color: #6b6350 !important;
  font-size: 11.5px !important;
  line-height: 1.65 !important;
  padding: 10px 13px !important;
  margin-top: 12px !important;
  text-align: left !important;
}

/* ── 17. 终局覆盖：用同等/更高优先级压过 workout-home-polish.css ── */

/* 主 CTA：与首页完全统一 */
html body #root.lu:has(.premium-workout) .training-action-dock .complete-set-button,
html body #root.lu .training-action-dock .complete-set-button,
html body .lu:has(.premium-workout) .training-action-dock .complete-set-button {
  height: 54px !important;
  min-height: 54px !important;
  border-radius: 16px !important;
  background: linear-gradient(180deg, #f9c46b 0%, #ea912a 100%) !important;
  border: 1.5px solid #c67b19 !important;
  box-shadow: 0 3.5px 0 #b0680d, 0 10px 20px rgba(234, 146, 44, .3) !important;
  color: #fff !important;
  font-size: 15.5px !important;
  font-weight: 850 !important;
  letter-spacing: .3px !important;
}
html body #root.lu .training-action-dock .complete-set-button::after,
html body #root.lu:has(.premium-workout) .training-action-dock .complete-set-button::after {
  content: "" !important;
  position: absolute !important;
  inset: 4px !important;
  border: 1.2px dashed rgba(255, 255, 255, .7) !important;
  border-radius: 12px !important;
  pointer-events: none !important;
  background: transparent !important;
}

/* 隐藏重复的「自动休息 90 秒」提示胶囊 */
html body #root.lu .workout-status-strip .workout-feedback,
html body #root.lu .premium-workout .workout-status-strip .workout-feedback,
html body #root.lu .screen.premium-workout .workout-status-strip .workout-feedback,
html body #root.lu .premium-workout .workout-feedback {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  min-width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  position: absolute !important;
  left: -9999px !important;
  pointer-events: none !important;
}
html body #root.lu .premium-workout .workout-status-strip {
  justify-content: center !important;
}

/* ── 18. 贴士卡气泡化（强优先级） ── */
html body #root.lu .premium-workout > div:last-of-type,
html body #root.lu .premium-workout .lulu-tip,
html body #root.lu .lulu-tip-card {
  background: linear-gradient(160deg, #fffdf7 0%, #f9f2e0 100%) !important;
  border: 1.5px solid #ece0c4 !important;
  border-radius: 16px 16px 16px 6px !important;
  box-shadow: 0 2.5px 0 #e2d7bd !important;
  color: #6b6350 !important;
  font-size: 11.5px !important;
  line-height: 1.65 !important;
  padding: 10px 13px !important;
  margin-top: 10px !important;
}

/* ── 19. 贴士卡（实为 .premium-workout::after 伪元素）：气泡化 ── */
html body #root.lu .screen.premium-workout::after,
html body .lu .screen.premium-workout::after,
.lu .screen.premium-workout::after {
  display: block !important;
  margin: 10px 0 0 !important;
  padding: 10px 14px 10px 36px !important;
  background: linear-gradient(160deg, #fffdf7 0%, #f9f2e0 100%) !important;
  border: 1.5px solid #ece0c4 !important;
  border-radius: 16px 16px 16px 6px !important;
  box-shadow: 0 2.5px 0 #e2d7bd !important;
  color: #6b6350 !important;
  font-size: 11.5px !important;
  font-weight: 650 !important;
  line-height: 1.62 !important;
  text-align: left !important;
  position: relative !important;
}
