/* CoupleBill 预算总结与心愿规划模块样式 (Budget & Goals UI) */
.box-budget-summary {
  background: #FFFFFF;
  border: 1px solid #E5E5EA;
  border-radius: 14px;
  padding: 12px 14px;
  margin-bottom: 12px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02);
}
.income-surplus-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.income-col { display: flex; flex-direction: column; }
.surplus-col { display: flex; flex-direction: column; align-items: flex-end; }
.box-label { font-size: 11px; color: #64748B; font-weight: 600; }
.box-income-val { font-size: 17px; font-weight: 800; color: #0F172A; }
.box-surplus-val { font-size: 17px; font-weight: 800; color: #16A34A; }
.cycle-tag-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 6px;
  font-size: 11px;
  color: #0284C7;
  font-weight: 600;
}
.btn-toggle-formula {
  border: none;
  background: #F1F5F9;
  color: #475569;
  font-size: 10px;
  font-weight: 600;
  padding: 2px 7px;
  border-radius: 6px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 2px;
}
.box-formula-collapsible {
  display: none;
  margin-top: 8px;
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  padding: 8px 10px;
  font-size: 11px;
  color: #475569;
  line-height: 1.5;
}
.box-formula-collapsible.expanded { display: block; }

/* 第2框：心愿目标 */
.box-goals-container {
  background: #FFFFFF;
  border: 1px solid #FED7AA;
  border-radius: 14px;
  padding: 12px 14px;
  margin-bottom: 12px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02);
}
.goal-card-item {
  background: #FFFDFB;
  border: 1px solid #FFEDD5;
  border-radius: 10px;
  padding: 10px 12px;
  margin-top: 8px;
}
.goal-badge-days {
  font-size: 11px;
  font-weight: 700;
  color: #64748B;
  background: #F1F5F9;
  padding: 2px 7px;
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
}
.goal-badge-days.future-blue {
  color: #1D4ED8;
  background: #EFF6FF;
  border: 1px solid #BFDBFE;
}
.goal-badge-days.future-purple {
  color: #7E22CE;
  background: #FAF5FF;
  border: 1px solid #E9D5FF;
}
.btn-stick-integrated {
  border: none;
  background: #16A34A;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  padding: 3px 9px;
  border-radius: 6px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 2px;
  flex-shrink: 0;
  white-space: nowrap;
}
.btn-stick-integrated:active { opacity: 0.85; transform: scale(0.97); }

.goal-badge-current {
  font-size: 10px;
  font-weight: 700;
  padding: 2px 6px;
  border-radius: 6px;
  background: #FEF3C7;
  color: #B45309;
  border: 1px solid #FDE68A;
  white-space: nowrap;
}
.goal-badge-future {
  font-size: 10px;
  font-weight: 700;
  padding: 2px 6px;
  border-radius: 6px;
  background: #EFF6FF;
  color: #1D4ED8;
  border: 1px solid #BFDBFE;
  white-space: nowrap;
}
.goals-collapsible-wrapper { display: none; }
.goals-collapsible-wrapper.expanded { display: block; }
.btn-toggle-goals {
  width: 100%;
  border: none;
  background: #FFF7ED;
  color: #EA580C;
  font-size: 11px;
  font-weight: 700;
  padding: 6px;
  border-radius: 8px;
  cursor: pointer;
  margin-top: 8px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4px;
}
