.reflection-intro { background: #efe2f5; }
.reflection-intro h2 { max-width: 24ch; letter-spacing: -.025em; }
.reflection-range { display: flex; align-items: end; gap: 12px; flex-wrap: wrap; margin-top: 18px; }
.reflection-range > div { flex: 1 1 175px; }
.reflection-range button { min-width: 132px; }
.reflection-status { min-height: 24px; line-height: 1.55; margin-top: 14px; font-size: 14px; }
.reflection-status button { margin: 8px; }
.insight-groups { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 16px 0; }
.insight-group { background: #f4ebf7; border: 1px solid var(--line); border-radius: 16px; padding: 18px; min-width: 0; }
.insight-after { background: #f7f0f5; }
.insight-rest { background: #f1f2eb; }
.insight-group-label { color: var(--accent); text-transform: uppercase; letter-spacing: .08em; font-size: 11px; font-weight: 700; }
.insight-count { font-size: 35px; line-height: 1; display: inline-block; margin-top: 15px; font-variant-numeric: tabular-nums; }
.insight-count-caption { color: var(--muted); font-size: 13px; margin-left: 8px; }
.insight-values { margin: 16px 0 0; }
.insight-values > div { display: flex; justify-content: space-between; gap: 10px; padding: 8px 0; border-top: 1px solid rgba(116, 101, 124, .16); }
.insight-values dt { color: var(--muted); text-transform: capitalize; }
.insight-values dd { margin: 0; font-weight: 700; font-variant-numeric: tabular-nums; text-align: right; }
.insight-low-data { border-left: 3px solid #8d6c5b; padding: 8px 10px; font-size: 13px; line-height: 1.5; background: rgba(255,255,255,.44); }
.reflection-settings h2 { max-width: 26ch; }
.reflection-toggles { border: 1px solid var(--line); border-radius: 12px; padding: 14px 16px; margin: 18px 0; }
.reflection-toggles legend { padding: 0 6px; color: var(--muted); font-size: 13px; }
.reflection-toggle { display: flex; align-items: center; gap: 12px; margin: 10px 0; min-height: 36px; }
.reflection-toggle input { width: 20px; height: 20px; accent-color: var(--accent); }
.reflection-cycle-controls { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 6px 14px; align-items: end; margin-bottom: 18px; }
.reflection-cycle-controls small { grid-column: 1 / -1; line-height: 1.5; }
.in-app-reminders { background: #f4ebf7; }
.in-app-reminders h3 { margin-bottom: 8px; }
.reflection-reminder-list { line-height: 1.55; }
.reflection-reminder-list p { margin: 10px 0; }
.in-app-reminder { border-left: 3px solid var(--accent); padding: 9px 12px; background: rgba(255,255,255,.5); }
.break-reflection { background: #f3f0e8; }
.break-reflection-copy { line-height: 1.6; }
.break-reflection-copy small { display: block; margin: 8px 0; line-height: 1.55; }
.break-reflection-copy p:last-of-type { margin-bottom: 10px; }
.tracking-form #checkinIntention, .tracking-form #checkinNoticed, .tracking-form #checkinGratitude { min-height: 88px; }
@media (max-width: 767px) {
    .insight-groups { grid-template-columns: 1fr; }
    .reflection-range button { width: 100%; }
    .reflection-cycle-controls { grid-template-columns: 1fr; }
    .reflection-cycle-controls small { grid-column: 1; }
}
