.bsb-chart {
  width: 100%; height: 100%; background: #eef1f4; box-sizing: border-box;
  padding: 20px; font: 14px/1.4 sans-serif;
}
.bsb-chart .bsb-title { margin: 0 0 16px; font-size: 18px; font-weight: 500; color: #333; }
.bsb-chart .bsb-panels { display: flex; gap: 24px; justify-content: center; }
.bsb-chart .bsb-panel h3 { margin: 0 0 6px; font-size: 13px; font-weight: 600; color: #777; text-align: center; }
.bsb-chart .bsb-svg { width: 100%; max-width: 320px; }
.bsb-chart .bsb-link { stroke: #ccc; stroke-width: 2px; fill: none; }
.bsb-chart .bsb-link.is-mri { stroke: #e07b39; stroke-width: 3px; }
.bsb-chart .bsb-node { fill: #999; }
.bsb-chart .bsb-node.is-mri { fill: #e07b39; r: 5; }
.bsb-chart .bsb-label { font-size: 10px; fill: #555; }
.bsb-chart .bsb-label.is-mri { fill: #e07b39; font-weight: 700; }
.bsb-chart .bsb-year-label { font-size: 11px; fill: #999; font-weight: 600; }
