.insight-nav { display: flex; gap: 10px; margin: 0 0 14px; }
.insight-nav button { display: flex; justify-content: space-between; gap: 36px; flex: 1; text-align: left; }
.insight-nav button span { color: #a096d6; }
.insight-page { overflow-wrap: anywhere; }
.insight-page .intro { align-items: center; flex-wrap: wrap; }
.insight-page .eyebrow { margin: 0 0 9px; font-size: 10px; }
.insight-lead { font-size: 13px; color: #7a8295; line-height: 1.8; margin: 0 0 20px; }
.insight-summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 23px 26px; background: #eeebfa; border: 1px solid #e3def7; border-radius: 16px; margin-bottom: 20px; }
.insight-metric { min-width: 0; }
.insight-metric > span, .insight-metric > small { display: block; color: #868297; font-size: 11px; line-height: 1.7; }
.insight-metric > strong { display: block; font-size: 23px; color: #443b68; margin: 5px 0; letter-spacing: -.5px; }
.insight-summary .insight-metric > strong { font-size: 32px; }
.insight-summary .insight-metric > .insight-cny-label { margin-top: 14px; }
.insight-summary .insight-metric > .insight-cny-value { font-size: 23px; }
.insight-timing { color: #827995; font-size: 11px; line-height: 1.65; text-align: right; }
.insight-timing p { margin: 3px 0; }
.analysis-grid, .goals-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-bottom: 20px; }
.insight-card, .goal-card { background: white; border: 1px solid #e5e7ee; padding: 24px; border-radius: 16px; min-width: 0; }
.insight-card h2 { font-size: 17px; }
.insight-card-note { color: #8990a0; font-size: 11px; line-height: 1.8; margin: 7px 0 22px; }
.breakdown-row + .breakdown-row { margin-top: 22px; }
.breakdown-heading, .breakdown-detail { display: flex; justify-content: space-between; gap: 16px; }
.breakdown-heading { font-size: 13px; align-items: baseline; }
.breakdown-heading > :first-child { min-width: 0; }
.breakdown-percent { font-size: 18px; flex-shrink: 0; font-weight: 600; }
.breakdown-detail { margin: 5px 0 9px; font-size: 11px; color: #9299a8; line-height: 1.7; flex-wrap: wrap; gap: 2px 10px; }
.breakdown-track { height: 7px; border-radius: 8px; background: #f1eff8; position: relative; overflow: hidden; }
.breakdown-track > span { height: 100%; display: block; background: #8472df; border-radius: 8px; }
.tone-1 .breakdown-track > span { background: #6c9cb7; }
.tone-2 .breakdown-track > span { background: #73bba6; }
.tone-3 .breakdown-track > span { background: #c5a46e; }
.unclassified .breakdown-track > span { background: #a5aab7; }
.breakdown-track.signed { background: linear-gradient(to right, #fbefee 0 50%, #f1eff8 50%); }
.breakdown-track.signed::after { position: absolute; content: ''; height: 100%; width: 1px; background: #b7b2c5; left: 50%; top: 0; }
.signed .bar-positive { position: absolute; left: 50%; }
.signed .bar-negative { position: absolute; right: 50%; background: #cb8f8f; }
.insight-chart-note { font-size: 10px; color: #959bac; line-height: 1.7; margin: 17px 0 0; }
.top-asset-summary { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; background: #f8f7fd; padding: 16px 20px; border-radius: 10px; margin-bottom: 24px; }
.top-asset-summary .insight-metric > strong { font-size: 28px; }
.insight-footnote, .insight-method { font-size: 11px; line-height: 1.9; color: #8790a1; }
.insight-footnote { margin: 16px 3px; }
.insight-method a { color: #6d60c7; text-decoration: underline; text-underline-offset: 3px; }
.insight-caution { color: #96733b; font-size: 11px; line-height: 1.8; margin: 12px 0 0; }
.insight-refresh { margin-top: 18px; }
.goal-heading { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 18px; }
.goal-heading .eyebrow { margin: 0; }
.goal-card h2 { font-size: 21px; letter-spacing: -.5px; }
.goal-deadline { color: #9097a6; font-size: 11px; margin: 9px 0 25px; line-height: 1.7; }
.goal-progress-label { display: flex; gap: 10px; align-items: baseline; flex-wrap: wrap; }
.goal-progress-label strong { font-size: 34px; letter-spacing: -1px; color: #7564cc; font-weight: 600; }
.goal-progress-label span { font-size: 11px; color: #a1a5b3; }
.goal-card progress { display: block; width: 100%; height: 7px; margin: 12px 0 23px; border: none; border-radius: 8px; overflow: hidden; background: #f1eff8; }
.goal-card progress::-webkit-progress-bar { background: #f1eff8; }
.goal-card progress::-webkit-progress-value { background: #8875e2; border-radius: 8px; }
.goal-card progress::-moz-progress-bar { background: #8875e2; border-radius: 8px; }
.goal-amounts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.goal-amounts .insight-metric strong { font-size: 18px; color: #445067; }
.goal-target { font-size: 10px; color: #989fae; line-height: 1.8; margin: 9px 0 20px; }
.goal-annual { display: flex; justify-content: space-between; align-items: center; gap: 18px; padding-top: 17px; border-top: 1px solid #eeeef5; }
.goal-annual span { font-size: 12px; color: #8490a1; }
.goal-annual strong { font-size: 24px; font-weight: 600; color: #514375; }
.goal-source { font-size: 10px; line-height: 1.8; color: #8d95a5; margin: 12px 0 0; }
.achieved .badge { color: #318467; background: #e9f5ef; }
.achieved .goal-progress-label strong { color: #3b9478; }
@media (max-width: 700px) {
  .analysis-grid, .goals-grid { grid-template-columns: 1fr; gap: 14px; margin-bottom: 14px; }
  .insight-summary { align-items: flex-start; flex-direction: column; padding: 20px; gap: 12px; margin-bottom: 14px; }
  .insight-timing { text-align: left; }
  .insight-summary .insight-metric > strong { font-size: 29px; }
  .insight-card, .goal-card { padding: 20px; border-radius: 14px; }
  .insight-page .intro .actions { flex-wrap: wrap; }
  .insight-nav button { padding: 10px 12px; gap: 12px; }
  .top-asset-summary { padding: 14px; gap: 10px; }
  .top-asset-summary .insight-metric strong { font-size: 24px; }
  .goal-card h2 { font-size: 20px; }
}
@media (max-width: 360px) {
  .goal-amounts .insight-metric strong { font-size: 16px; }
  .insight-card, .goal-card { padding: 17px; }
  .goal-annual strong { font-size: 21px; }
}
