/* v3.8.0 训练决策增强版：组类型、首页决策、日历热力图、联合分析 */
.set-row.set-row-with-type,
.train-form .set-row.set-row-with-type,
.day-edit-form .set-row.set-row-with-type,
.live-set-list .set-row.set-row-with-type:not(.set-head) {
  grid-template-columns: 32px minmax(72px, .9fr) minmax(74px, 1fr) minmax(64px, .9fr) minmax(62px, .85fr) 34px !important;
  grid-template-areas: none !important;
  gap: 6px !important;
}
.set-row.set-row-with-type.set-head {
  grid-template-columns: 32px minmax(72px, .9fr) minmax(74px, 1fr) minmax(64px, .9fr) minmax(62px, .85fr) 34px !important;
  grid-template-areas: none !important;
}
.set-type-select {
  min-width: 0 !important;
  min-height: 38px !important;
  border: 1px solid rgba(36, 83, 66, .16) !important;
  border-radius: 12px !important;
  padding: 6px 8px !important;
  background: rgba(255,255,255,.86) !important;
  color: var(--text, #18251f) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-align: center !important;
}
html[data-theme="dark"] .set-type-select { background: rgba(255,255,255,.07) !important; color: #edf7f2 !important; border-color: rgba(255,255,255,.12) !important; }
.set-type-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  margin-right: 6px;
  padding: 2px 7px;
  border-radius: 999px;
  background: rgba(14, 143, 112, .10);
  color: #0b715a;
  font-size: 11px;
  font-weight: 800;
}
.set-type-chip.type-warmup { background: rgba(98, 116, 142, .12); color: #475569; }
.set-type-chip.type-drop { background: rgba(219, 120, 45, .12); color: #9a4a12; }
.set-type-chip.type-super { background: rgba(125, 82, 210, .12); color: #6941c6; }
html[data-theme="dark"] .set-type-chip { color: #dff8ee; background: rgba(85, 220, 176, .14); }

.home-decision-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 14px 0 18px;
}
.home-decision-strip > div,
.home-recommend-stack,
.calendar-summary-chip {
  border: 1px solid rgba(36, 83, 66, .10);
  border-radius: 18px;
  background: rgba(255,255,255,.72);
  box-shadow: 0 14px 34px rgba(24, 39, 32, .06);
}
.home-decision-strip > div {
  padding: 14px 16px;
}
.home-decision-strip span {
  display: block;
  color: var(--muted, #66756f);
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 6px;
}
.home-decision-strip strong {
  display: block;
  color: var(--text, #17231d);
  font-size: clamp(16px, 2vw, 22px);
  line-height: 1.2;
}
.home-recommend-stack {
  padding: 12px;
  display: grid;
  gap: 8px;
  margin-top: 10px;
}
.home-recommend-stack p { margin: 0 !important; line-height: 1.55; color: var(--muted, #53635d); }
.home-recommend-stack strong { color: var(--text, #17231d); }
.home-calendar-card { margin-top: 16px; }

.training-calendar {
  display: grid;
  gap: 7px;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}
.calendar-weekdays,
.calendar-week {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 7px;
}
.calendar-weekdays span {
  text-align: center;
  color: var(--muted, #66756f);
  font-size: 12px;
  font-weight: 800;
}
.calendar-day {
  position: relative;
  min-width: 0;
  min-height: 58px;
  border-radius: 14px;
  border: 1px solid rgba(36, 83, 66, .10);
  background: rgba(148, 163, 184, .12);
  color: var(--text, #17231d);
  text-decoration: none;
  padding: 7px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.calendar-day:hover { transform: translateY(-1px); box-shadow: 0 10px 22px rgba(24,39,32,.10); border-color: rgba(14,143,112,.28); }
.calendar-day.is-blank { opacity: 0; pointer-events: none; }
.calendar-day.level-0 { background: rgba(148, 163, 184, .10); }
.calendar-day.level-1 { background: rgba(38, 166, 120, .15); }
.calendar-day.level-2 { background: rgba(14, 143, 112, .30); }
.calendar-day.level-3 { background: linear-gradient(135deg, rgba(14,143,112,.80), rgba(32,92,73,.82)); color: #fff; }
.calendar-day > span { font-weight: 900; font-size: 13px; }
.calendar-day i { display: flex; flex-wrap: wrap; gap: 3px; min-height: 15px; font-style: normal; }
.calendar-day b {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 15px;
  border-radius: 999px;
  padding: 0 4px;
  background: rgba(255,255,255,.62);
  color: #0b715a;
  font-size: 9px;
  line-height: 1;
  font-weight: 900;
}
.calendar-day.level-3 b { color: #0b715a; background: rgba(255,255,255,.86); }
.calendar-summary-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 0 14px;
  color: var(--muted, #53635d);
  font-weight: 800;
  font-size: 13px;
}
.heatmap-compact .calendar-day { min-height: 42px; border-radius: 12px; padding: 5px; }
.heatmap-compact .calendar-day b { display: none; }

.joint-health-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
.joint-health-grid > div strong { font-size: 15px !important; line-height: 1.45 !important; white-space: normal !important; }
.analysis-calendar-card,
.history-calendar-card { margin-bottom: 16px; }
.analysis-summary-grid > div strong { font-size: clamp(20px, 2.2vw, 30px) !important; }

@media (max-width: 760px) {
  .set-row.set-row-with-type,
  .train-form .set-row.set-row-with-type,
  .day-edit-form .set-row.set-row-with-type,
  .live-set-list .set-row.set-row-with-type:not(.set-head) {
    grid-template-columns: 28px minmax(70px, .9fr) minmax(58px, 1fr) minmax(50px, .8fr) minmax(50px, .75fr) 30px !important;
    grid-template-areas: none !important;
    gap: 4px !important;
    align-items: center !important;
  }
  .set-row.set-row-with-type.set-head {
    grid-template-columns: 28px minmax(70px, .9fr) minmax(58px, 1fr) minmax(50px, .8fr) minmax(50px, .75fr) 30px !important;
    grid-template-areas: none !important;
    font-size: 11px !important;
  }
  .set-type-select {
    min-height: 36px !important;
    padding: 4px 4px !important;
    font-size: 12px !important;
    border-radius: 10px !important;
  }
  .set-row.set-row-with-type input { min-height: 36px !important; font-size: 13px !important; padding-left: 4px !important; padding-right: 4px !important; }
  .set-row.set-row-with-type .remove-set { min-height: 36px !important; width: 30px !important; }
  .home-decision-strip { grid-template-columns: 1fr; gap: 8px; margin: 10px 0 12px; }
  .home-decision-strip > div { padding: 11px 12px; border-radius: 15px; }
  .home-decision-strip strong { font-size: 17px; }
  .home-recommend-stack { padding: 10px; gap: 6px; font-size: 13px; }
  .calendar-weekdays,
  .calendar-week { gap: 4px; }
  .calendar-day { min-height: 42px; border-radius: 10px; padding: 5px 4px; }
  .calendar-day > span { font-size: 12px; }
  .calendar-day i { gap: 2px; }
  .calendar-day b { min-width: 15px; height: 13px; font-size: 8px; padding: 0 2px; }
  .joint-health-grid { grid-template-columns: 1fr !important; }
  .calendar-summary-chip { min-height: 32px; font-size: 12px; padding: 0 10px; }
}

@media (max-width: 390px) {
  .set-row.set-row-with-type,
  .train-form .set-row.set-row-with-type,
  .day-edit-form .set-row.set-row-with-type,
  .live-set-list .set-row.set-row-with-type:not(.set-head),
  .set-row.set-row-with-type.set-head {
    grid-template-columns: 24px minmax(62px, .85fr) minmax(50px, 1fr) minmax(44px, .75fr) minmax(44px, .7fr) 28px !important;
    grid-template-areas: none !important;
    gap: 3px !important;
  }
  .set-type-select { font-size: 11px !important; padding-left: 2px !important; padding-right: 2px !important; }
  .calendar-day { min-height: 36px; }
  .calendar-day b { display: none; }
}

/* v3.8.1 细节修正：首页 Today 区域更紧凑，分析页两栏不再被内容拉高 */
body[data-page="/"] .home-hero-grid {
  align-items: start !important;
}
body[data-page="/"] .home-primary-card,
body[data-page="/"] .home-advice-card {
  min-height: 0 !important;
  height: auto !important;
}
body[data-page="/"] .home-primary-card {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding-top: 28px !important;
  padding-bottom: 28px !important;
}
body[data-page="/"] .home-primary-card h1 {
  line-height: 1.08 !important;
}
body[data-page="/"] .home-primary-card .home-lead {
  line-height: 1.86 !important;
}
body[data-page="/"] .home-primary-card .home-kpi-row {
  width: 100% !important;
  max-width: 880px !important;
}
body[data-page="/"] .home-primary-card .home-kpi-row > div {
  display: grid !important;
  align-content: center !important;
  text-align: center !important;
}
body[data-page="/"] #today-brief {
  padding-bottom: 22px !important;
}
body[data-page="/"] #today-brief .home-section-title {
  align-items: center !important;
}
body[data-page="/"] #today-brief .home-section-title > div {
  max-width: 760px !important;
}
body[data-page="/"] #today-brief .compact-list,
body[data-page="/"] #today-brief .home-empty-line {
  width: min(100%, 920px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body[data-page="/"] #today-brief .home-list-item {
  align-items: center !important;
}
body[data-page="/"] #today-brief .home-list-item strong,
body[data-page="/"] #today-brief .home-list-item small,
body[data-page="/"] #today-brief .home-empty-line span {
  line-height: 1.7 !important;
}

body[data-page="/analysis"] section.professional-analysis-grid {
  align-items: start !important;
}
body[data-page="/analysis"] section.professional-analysis-grid > .training-quality-card,
body[data-page="/analysis"] section.professional-analysis-grid > .analysis-joint-card {
  align-self: start !important;
  height: auto !important;
  min-height: 0 !important;
}
body[data-page="/analysis"] section.professional-analysis-grid .training-quality-card,
body[data-page="/analysis"] section.professional-analysis-grid .analysis-joint-card {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
}
body[data-page="/analysis"] section.professional-analysis-grid .training-quality-card .quality-card-list,
body[data-page="/analysis"] section.professional-analysis-grid .analysis-joint-card .joint-health-grid {
  margin-top: 12px !important;
  align-content: start !important;
}
body[data-page="/analysis"] section.professional-analysis-grid .training-quality-card .quality-card-list > div {
  min-height: 92px !important;
  display: grid !important;
  align-content: center !important;
  text-align: center !important;
}
body[data-page="/analysis"] section.professional-analysis-grid .analysis-joint-card .analysis-chart-note {
  margin: 2px 0 8px !important;
  line-height: 1.65 !important;
}
body[data-page="/analysis"] section.professional-analysis-grid .analysis-joint-card .training-advice-text {
  margin: 0 0 10px !important;
  padding: 11px 14px !important;
  line-height: 1.58 !important;
}
body[data-page="/analysis"] section.professional-analysis-grid .analysis-joint-card .joint-health-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}
body[data-page="/analysis"] section.professional-analysis-grid .analysis-joint-card .joint-health-grid > div {
  min-height: 0 !important;
  padding: 13px 14px !important;
  display: grid !important;
  align-content: start !important;
  text-align: left !important;
  overflow: visible !important;
}
body[data-page="/analysis"] section.professional-analysis-grid .analysis-joint-card .joint-health-grid span {
  font-size: 12px !important;
  line-height: 1.35 !important;
}
body[data-page="/analysis"] section.professional-analysis-grid .analysis-joint-card .joint-health-grid strong {
  font-size: 16px !important;
  line-height: 1.48 !important;
  letter-spacing: -0.02em !important;
  margin: 5px 0 4px !important;
  color: var(--brand, #0b7f65) !important;
  white-space: normal !important;
}
body[data-page="/analysis"] section.professional-analysis-grid .analysis-joint-card .joint-health-grid small {
  font-size: 12px !important;
  line-height: 1.55 !important;
}

@media (max-width: 760px) {
  body[data-page="/"] .home-primary-card {
    padding-top: 18px !important;
    padding-bottom: 18px !important;
    justify-content: flex-start !important;
  }
  body[data-page="/"] #today-brief .home-section-title {
    align-items: stretch !important;
  }
  body[data-page="/analysis"] section.professional-analysis-grid .analysis-joint-card .joint-health-grid {
    grid-template-columns: 1fr !important;
  }
  body[data-page="/analysis"] section.professional-analysis-grid .analysis-joint-card .joint-health-grid strong {
    font-size: 15px !important;
  }
}


/* v3.8.2 布局平衡修正：桌面端卡片等高，移动端训练按钮上移，分析长内容改为单列 */
@media (min-width: 961px) {
  body[data-page="/"] .home-hero-grid {
    align-items: stretch !important;
    grid-template-columns: minmax(0, 1.12fr) minmax(360px, .88fr) !important;
  }
  body[data-page="/"] .home-primary-card,
  body[data-page="/"] .home-advice-card {
    height: 100% !important;
    min-height: 360px !important;
    align-self: stretch !important;
  }
  body[data-page="/"] .home-primary-card {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    padding: 30px !important;
  }
  body[data-page="/"] .home-primary-card .home-card-head {
    margin-bottom: 8px !important;
  }
  body[data-page="/"] .home-primary-card h1 {
    margin: 10px 0 8px !important;
    line-height: 1.08 !important;
  }
  body[data-page="/"] .home-primary-card .home-lead {
    max-width: 760px !important;
    line-height: 1.86 !important;
  }
  body[data-page="/"] .home-primary-card .home-kpi-row {
    margin-top: 22px !important;
    width: 100% !important;
  }
  body[data-page="/"] .home-primary-card .home-kpi-row > div {
    min-height: 96px !important;
    display: grid !important;
    align-content: center !important;
    justify-items: center !important;
    text-align: center !important;
  }
  body[data-page="/"] .home-primary-card .home-main-action {
    margin-top: 22px !important;
    align-self: flex-start !important;
  }
  body[data-page="/"] .home-advice-card {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    padding: 30px !important;
  }
  body[data-page="/"] .home-advice-card h2 {
    line-height: 1.18 !important;
  }
  body[data-page="/"] .home-recommend-stack {
    margin-top: 12px !important;
    margin-bottom: 12px !important;
  }
  body[data-page="/"] .home-sync-note {
    margin-top: 14px !important;
  }

  body[data-page="/analysis"] section.professional-analysis-grid {
    grid-template-columns: minmax(360px, .94fr) minmax(0, 1.06fr) !important;
    align-items: stretch !important;
    gap: 18px !important;
  }
  body[data-page="/analysis"] section.professional-analysis-grid > .training-quality-card,
  body[data-page="/analysis"] section.professional-analysis-grid > .analysis-joint-card {
    align-self: stretch !important;
    height: 100% !important;
    min-height: 0 !important;
  }
  body[data-page="/analysis"] section.professional-analysis-grid .training-quality-card,
  body[data-page="/analysis"] section.professional-analysis-grid .analysis-joint-card {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
  }
  body[data-page="/analysis"] section.professional-analysis-grid .training-quality-card .quality-card-list,
  body[data-page="/analysis"] section.professional-analysis-grid .analysis-joint-card .joint-health-grid {
    margin-top: 14px !important;
  }
  body[data-page="/analysis"] section.professional-analysis-grid .training-quality-card .quality-card-list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
  body[data-page="/analysis"] section.professional-analysis-grid .training-quality-card .quality-card-list > div {
    min-height: 118px !important;
    padding: 15px !important;
    display: grid !important;
    align-content: center !important;
    text-align: center !important;
  }
  body[data-page="/analysis"] section.professional-analysis-grid .analysis-joint-card .joint-health-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
  body[data-page="/analysis"] section.professional-analysis-grid .analysis-joint-card .joint-health-grid > div {
    min-height: 0 !important;
    padding: 14px 15px !important;
    text-align: left !important;
  }
  body[data-page="/analysis"] section.professional-analysis-grid .analysis-joint-card .joint-health-grid strong {
    font-size: 15px !important;
    line-height: 1.45 !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }
  body[data-page="/analysis"] section.professional-analysis-grid .analysis-joint-card .joint-health-grid small,
  body[data-page="/analysis"] section.professional-analysis-grid .training-quality-card .quality-card-list small {
    line-height: 1.58 !important;
  }
}

@media (max-width: 760px) {
  body[data-page="/train"] .sticky-submit.live-submit {
    position: sticky !important;
    bottom: calc(108px + env(safe-area-inset-bottom)) !important;
    margin-top: 8px !important;
    margin-bottom: 16px !important;
    z-index: 42 !important;
  }
  body[data-page="/"] .mobile-fixed-cta {
    bottom: calc(84px + env(safe-area-inset-bottom)) !important;
    min-height: 44px !important;
    z-index: 42 !important;
  }
  body[data-page="/analysis"] .professional-analysis-grid,
  body[data-page="/analysis"] .analysis-grid,
  body[data-page="/analysis"] .analysis-summary-grid,
  body[data-page="/analysis"] .week-summary-grid,
  body[data-page="/analysis"] .analysis-stat-chips,
  body[data-page="/analysis"] .mini-trend-grid.two-only,
  body[data-page="/analysis"] .analysis-trend-grid,
  body[data-page="/analysis"] .joint-health-grid,
  body[data-page="/analysis"] .quality-card-list,
  body[data-page="/analysis"] .analysis-pr-list {
    grid-template-columns: 1fr !important;
  }
  body[data-page="/analysis"] section.professional-analysis-grid > .training-quality-card,
  body[data-page="/analysis"] section.professional-analysis-grid > .analysis-joint-card {
    height: auto !important;
    align-self: start !important;
  }
  body[data-page="/analysis"] .analysis-joint-card .joint-health-grid > div,
  body[data-page="/analysis"] .training-quality-card .quality-card-list > div {
    min-height: 0 !important;
    text-align: left !important;
    align-content: start !important;
  }
  body[data-page="/analysis"] .analysis-joint-card .joint-health-grid strong,
  body[data-page="/analysis"] .training-quality-card .quality-card-list strong {
    font-size: 15px !important;
    line-height: 1.5 !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }
  body[data-page="/analysis"] .analysis-summary-grid > div,
  body[data-page="/analysis"] .week-summary-grid > div,
  body[data-page="/analysis"] .analysis-stat-chips > div {
    text-align: center !important;
  }
}


/* v3.8.3 移动端细节回调：只让联合分析单列；Today 抬头和日期控件保持紧凑一行 */
@media (max-width: 760px) {
  /* 首页 Today / Next Step 抬头：左边标题，右边状态或链接，不再拆成两行 */
  body[data-page="/"] .home-card-head {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    margin-bottom: 10px !important;
  }
  body[data-page="/"] .home-card-head .eyebrow {
    margin: 0 !important;
    min-width: 0 !important;
  }
  body[data-page="/"] .home-card-head .home-state-pill,
  body[data-page="/"] .home-card-head .home-text-link {
    flex: 0 0 auto !important;
    min-height: 30px !important;
    padding-inline: 10px !important;
    white-space: nowrap !important;
  }

  /* 分析页：撤回 v3.8.2 对所有模块强制单列的处理，保留上一版紧凑双列节奏 */
  body[data-page="/analysis"] .analysis-summary-grid,
  body[data-page="/analysis"] .week-summary-grid,
  body[data-page="/analysis"] .analysis-stat-chips,
  body[data-page="/analysis"] .training-quality-card .quality-card-list,
  body[data-page="/analysis"] .quality-card-list,
  body[data-page="/analysis"] .analysis-pr-list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body[data-page="/analysis"] .mini-trend-grid.two-only,
  body[data-page="/analysis"] .analysis-trend-grid,
  body[data-page="/analysis"] .analysis-trend-grid.two-only {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body[data-page="/analysis"] .training-quality-card .quality-card-list > div {
    min-height: 58px !important;
    text-align: center !important;
    align-content: center !important;
  }
  body[data-page="/analysis"] .training-quality-card .quality-card-list strong {
    font-size: 15px !important;
    line-height: 1.45 !important;
  }
  /* 只有“健身 + 健康联合分析”因为文案长，手机端保持单列阅读 */
  body[data-page="/analysis"] .analysis-joint-card .joint-health-grid,
  body[data-page="/analysis"] section.professional-analysis-grid .analysis-joint-card .joint-health-grid {
    grid-template-columns: 1fr !important;
  }
  body[data-page="/analysis"] .analysis-joint-card .joint-health-grid > div {
    min-height: 0 !important;
    text-align: left !important;
    align-content: start !important;
  }

  /* 历史、分析页日期控件：参考首页日期条，手机端尽量压成一行，不再拆成很多行 */
  body[data-page="/history"] .page-head.history-head-compact .history-switcher,
  body[data-page="/analysis"] .page-head.analysis-head-compact .history-switcher {
    display: grid !important;
    align-items: center !important;
    width: 100% !important;
    gap: 4px !important;
    padding: 4px !important;
    border-radius: 16px !important;
  }
  body[data-page="/history"] .page-head.history-head-compact .history-switcher {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 44px 58px !important;
  }
  body[data-page="/analysis"] .page-head.analysis-head-compact .history-switcher {
    grid-template-columns: 34px minmax(112px, 1fr) 44px 34px 58px !important;
  }
  body[data-page="/history"] .history-switcher > *,
  body[data-page="/analysis"] .history-switcher > * {
    min-width: 0 !important;
    width: 100% !important;
    grid-column: auto !important;
  }
  body[data-page="/history"] .history-switcher input[type="date"],
  body[data-page="/analysis"] .history-switcher input[type="date"] {
    min-width: 0 !important;
    width: 100% !important;
    min-height: 34px !important;
    padding: 6px 7px !important;
    font-size: 12px !important;
    border-radius: 12px !important;
  }
  body[data-page="/history"] .history-switcher .ghost-btn,
  body[data-page="/history"] .history-switcher .primary-btn,
  body[data-page="/analysis"] .history-switcher .ghost-btn,
  body[data-page="/analysis"] .history-switcher .primary-btn {
    min-height: 34px !important;
    padding-inline: 5px !important;
    font-size: 12px !important;
    border-radius: 12px !important;
    white-space: nowrap !important;
  }
  body[data-page="/analysis"] .history-switcher .icon-btn {
    width: 34px !important;
    min-width: 34px !important;
    padding: 0 !important;
  }
}

@media (max-width: 420px) {
  body[data-page="/history"] .page-head.history-head-compact .history-switcher {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 40px 44px !important;
    gap: 3px !important;
  }
  body[data-page="/analysis"] .page-head.analysis-head-compact .history-switcher {
    grid-template-columns: 30px minmax(96px, 1fr) 40px 30px 44px !important;
    gap: 3px !important;
  }
  body[data-page="/history"] .history-switcher .ghost-btn,
  body[data-page="/history"] .history-switcher .primary-btn,
  body[data-page="/analysis"] .history-switcher .ghost-btn,
  body[data-page="/analysis"] .history-switcher .primary-btn {
    font-size: 11px !important;
    padding-inline: 3px !important;
  }
  body[data-page="/history"] .history-switcher input[type="date"],
  body[data-page="/analysis"] .history-switcher input[type="date"] {
    font-size: 11px !important;
    padding-inline: 4px !important;
  }
}

/* v3.8.4 细节微调：移动端三问一行、训练按钮三等分、趋势图可读性、桌面今日摘要字号 */
@media (max-width: 760px) {
  /* 首页“今天练没练 / 建议练什么 / 现在做什么”保持一行三列，减少首屏长度 */
  body[data-page="/"] .home-decision-strip {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    margin: 8px 0 12px !important;
  }
  body[data-page="/"] .home-decision-strip > div {
    min-width: 0 !important;
    min-height: 66px !important;
    padding: 8px 6px !important;
    border-radius: 14px !important;
    display: grid !important;
    align-content: center !important;
    justify-items: center !important;
    text-align: center !important;
  }
  body[data-page="/"] .home-decision-strip span {
    margin-bottom: 4px !important;
    font-size: 10px !important;
    line-height: 1.15 !important;
    white-space: normal !important;
    letter-spacing: -0.02em !important;
  }
  body[data-page="/"] .home-decision-strip strong {
    font-size: 13px !important;
    line-height: 1.22 !important;
    letter-spacing: -0.03em !important;
    overflow-wrap: anywhere !important;
    word-break: keep-all !important;
  }

  /* 训练页：复制上一组 / 复制上次动作 / 添加一组 三个按钮保持同一行 */
  body[data-page="/train"] .set-panel-head {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }
  body[data-page="/train"] .set-panel-actions.segmented-actions,
  body[data-page="/train"] .segmented-actions {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    width: 100% !important;
    gap: 5px !important;
  }
  body[data-page="/train"] .segmented-actions .neutral-btn,
  body[data-page="/train"] .set-panel-actions.segmented-actions .neutral-btn {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 38px !important;
    padding: 0 4px !important;
    font-size: 10.5px !important;
    line-height: 1.15 !important;
    letter-spacing: -0.04em !important;
    white-space: normal !important;
  }
  body[data-page="/train"] .segmented-actions .neutral-btn:nth-child(3) {
    grid-column: auto !important;
  }

  /* 分析页：只让“容量与时长趋势”两张图上下排，避免手机端两列挤压导致柱状图看不清 */
  body[data-page="/analysis"] .analysis-trend-card .mini-trend-grid.two-only,
  body[data-page="/analysis"] .analysis-trend-card .analysis-trend-grid,
  body[data-page="/analysis"] section.analysis-trend-card .mini-trend-grid.two-only {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
  body[data-page="/analysis"] .analysis-trend-card .analysis-trend-panel,
  body[data-page="/analysis"] .analysis-trend-card .mini-trend {
    padding: 13px !important;
  }
  body[data-page="/analysis"] .analysis-trend-card .analysis-bar-chart,
  body[data-page="/analysis"] section.analysis-trend-card .analysis-bar-chart {
    height: 224px !important;
    min-height: 224px !important;
    padding: 22px 10px 12px !important;
    gap: 6px !important;
  }
  body[data-page="/analysis"] .analysis-trend-card .analysis-bar-chart .bar {
    width: min(30px, 72%) !important;
    max-height: calc(100% - 62px) !important;
  }
  body[data-page="/analysis"] .analysis-trend-card .analysis-bar-chart .bar-item small {
    font-size: 10px !important;
  }
  body[data-page="/analysis"] .analysis-trend-card .analysis-bar-chart .bar-value {
    font-size: 10px !important;
    padding: 2px 4px !important;
  }
}

@media (max-width: 390px) {
  body[data-page="/"] .home-decision-strip {
    gap: 5px !important;
  }
  body[data-page="/"] .home-decision-strip > div {
    min-height: 62px !important;
    padding: 7px 4px !important;
  }
  body[data-page="/"] .home-decision-strip span {
    font-size: 9px !important;
  }
  body[data-page="/"] .home-decision-strip strong {
    font-size: 12px !important;
    line-height: 1.18 !important;
  }
  body[data-page="/train"] .segmented-actions .neutral-btn,
  body[data-page="/train"] .set-panel-actions.segmented-actions .neutral-btn {
    min-height: 36px !important;
    font-size: 9.4px !important;
    padding: 0 2px !important;
  }
  body[data-page="/analysis"] .analysis-trend-card .analysis-bar-chart {
    height: 216px !important;
    min-height: 216px !important;
  }
}

@media (min-width: 761px) {
  /* 桌面端：今日记录摘要里的训练内容跟其他卡片统一，不再显得偏小 */
  body[data-page="/"] #today-brief .home-list-item {
    min-height: 68px !important;
    padding: 13px 15px !important;
  }
  body[data-page="/"] #today-brief .home-list-item strong {
    font-size: 16.5px !important;
    line-height: 1.35 !important;
  }
  body[data-page="/"] #today-brief .home-list-item small {
    font-size: 13.5px !important;
    line-height: 1.55 !important;
  }
  body[data-page="/"] #today-brief .home-list-item .muted-tag {
    font-size: 13px !important;
    min-height: 30px !important;
    padding-inline: 11px !important;
  }
}


/* v3.8.5 桌面端细节修正：今日记录摘要卡片尺寸与站点图标统一 */
.header-copy::before {
  background: url("/static/favicon.svg?v=3.8.5") center / 100% 100% no-repeat !important;
  border-radius: 15px !important;
  box-shadow: 0 14px 28px rgba(8,118,88,.24) !important;
}
.header-copy::after { display: none !important; }

@media (min-width: 761px) {
  /* 调整的是“内容框”的尺寸和间距，不再单纯放大文字。 */
  body[data-page="/"] #today-brief {
    padding: 24px !important;
  }
  body[data-page="/"] #today-brief .home-section-title {
    margin-bottom: 16px !important;
  }
  body[data-page="/"] #today-brief .compact-list {
    width: 100% !important;
    max-width: none !important;
    gap: 12px !important;
    align-items: stretch !important;
  }
  body[data-page="/"] #today-brief .home-list-item {
    min-height: 86px !important;
    padding: 16px 18px !important;
    border-radius: 18px !important;
    gap: 12px !important;
    grid-template-columns: 46px minmax(0, 1fr) auto !important;
    box-sizing: border-box !important;
  }
  body[data-page="/"] #today-brief .home-list-item .mini-icon {
    width: 46px !important;
    height: 46px !important;
    border-radius: 15px !important;
    margin-right: 0 !important;
  }
  body[data-page="/"] #today-brief .home-list-item .exercise-img,
  body[data-page="/"] #today-brief .home-list-item svg {
    width: 34px !important;
    height: 34px !important;
  }
  body[data-page="/"] #today-brief .home-list-item strong {
    font-size: 15.4px !important;
    line-height: 1.35 !important;
  }
  body[data-page="/"] #today-brief .home-list-item small {
    font-size: 13px !important;
    line-height: 1.5 !important;
    margin-top: 4px !important;
  }
  body[data-page="/"] #today-brief .home-list-item .muted-tag {
    min-height: 34px !important;
    padding: 0 13px !important;
    font-size: 12.5px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    white-space: nowrap !important;
  }
}
