
.dp-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 16px; margin: 16px 0 32px; }
.dp-bars { display: grid; grid-template-columns: fit-content(16em) minmax(60px, 240px) max-content; gap: 6px 12px; align-items: center; margin: 12px 0 24px; }
.dp-bars__label { color: var(--ink-2); font-size: 14px; }
.dp-bars__value { font-family: var(--mono); font-size: 13px; }
.dp-bars__track { width: 100%; max-width: 240px; }
.dp-bar { fill: var(--blue); }
.dp-chart { width: 100%; max-width: 640px; height: auto; margin: 12px 0 24px; }
.dp-chart__line { fill: none; stroke: var(--blue); stroke-width: 2; }
.dp-source { color: var(--ink-3); margin: 8px 0 24px; }
.dp-words { display: flex; flex-wrap: wrap; gap: 8px; }
.dp-inline-cta { margin: -8px 0 32px; }
.dp-inline-cta a { color: var(--blue); text-decoration: underline; }
.dp-cta { margin-top: 40px; }
.dp .dp-cta h2 { margin: 0 0 12px; }
.dp-cta__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.dp-privacy { margin-top: 16px; }
.dp h2 { margin: 40px 0 12px; }

@media (max-width: 600px) {
  .dp-bars--stack { grid-template-columns: minmax(0, 1fr) max-content; gap: 2px 12px; }
  .dp-bars--stack .dp-bars__label { grid-column: 1 / -1; margin-top: 6px; }
  .dp-bars--stack .dp-bars__track { max-width: none; }
  .dp-cta__actions .btn { flex: 1 1 100%; }
}
