/* One Download control for resource pages and report placements. */
.dr-chart-downloads .ca-btn {
    display: inline-flex; align-items: center; justify-content: center;
    width: 34px; height: 34px; border-radius: 9px; cursor: pointer;
    background: transparent; color: var(--text-light);
    border: 1px solid var(--border-light);
    transition: all 0.15s;
}
.dr-chart-downloads .ca-btn svg { width: 17px; height: 17px; }
.dr-chart-downloads .ca-btn:hover { color: var(--white); border-color: var(--border-mid); background: var(--navy-light); }
.dr-chart-downloads .ca-btn.is-busy { opacity: 0.6; pointer-events: none; }
.dr-chart-downloads { position: relative; margin-left: auto; }
.dr-chart-downloads .ca-dl-btn { width: auto; gap: 0.45rem; padding: 0 0.7rem 0 0.9rem; font-family: inherit;
    font-size: 0.78rem; font-weight: 700; letter-spacing: 0.02em; }
.dr-chart-downloads .ca-dl-btn .ca-dl-label { line-height: 1; }
.dr-chart-downloads .ca-dl-btn .ca-dl-caret { width: 12px; height: 12px; opacity: 0.85; transition: transform 0.15s; }
.dr-chart-downloads .ca-dl-btn[aria-expanded="true"] .ca-dl-caret { transform: rotate(180deg); }
.dr-chart-downloads .ca-dl-menu {
    position: absolute; top: calc(100% + 6px); right: 0; z-index: 80;
    min-width: 182px; padding: 0.3rem;
    background: var(--navy-light); border: 1px solid var(--border-mid);
    border-radius: 12px; box-shadow: var(--shadow-lg);
}
.dr-chart-downloads .ca-dl-menu[hidden] { display: none; }
.dr-chart-downloads .ca-dl-item[hidden] { display: none; }
.dr-chart-downloads .ca-dl-item {
    display: flex; align-items: center; gap: 0.55rem; width: 100%;
    padding: 0.5rem 0.6rem; border: 0; border-radius: 8px; cursor: pointer;
    background: transparent; color: var(--white); text-align: left;
    font-family: inherit; font-size: 0.82rem; font-weight: 600;
}
.dr-chart-downloads .ca-dl-item:hover, .dr-chart-downloads .ca-dl-item:focus-visible { background: var(--navy-lighter); }
.dr-chart-downloads .ca-dl-item svg { width: 16px; height: 16px; flex: none; color: var(--text-light); }
.dr-chart-downloads .ca-dl-item em {
    margin-left: auto; padding-left: 0.8rem; font-style: normal;
    font-size: 0.66rem; font-weight: 700; letter-spacing: 0.07em;
    color: var(--text-lighter);
}

/* A chart is part of the page's flow: one rail, no nested card or fixed canvas. */
.dr-chart-placement { position: relative; margin: 1.25rem 0 0; min-width: 0; }
.dr-chart-toolbar { display: flex; align-items: flex-start; gap: 1rem; margin-bottom: 1rem; }
.dr-chart-summary { flex: 1; min-width: 0; }
.dr-chart-insight { margin: 0; color: var(--white); font-size: 1.15rem; font-weight: 650; line-height: 1.35; }
.dr-chart-subtitle { margin: .3rem 0 0; font-size: .85rem; line-height: 1.5; color: var(--text-light); }
.dr-chart-placement iframe { display: block; width: 100%; min-width: 0; min-height: 0; border: 0; background: transparent; }
.dr-chart-placement .chart-frame-wrap { max-width: none; background: transparent; border: 0; border-radius: 0; overflow: visible; }
.dr-chart-meta { margin-top: 1rem; color: var(--text-light); font-size: .75rem; line-height: 1.55; }
.dr-chart-note { margin: 0 0 .85rem; }
.dr-chart-footer { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; padding-top: .85rem; border-top: 1px solid var(--border-light); }
.dr-chart-source { margin: 0; flex: 1 1 240px; }
.dr-chart-brands { display: flex; align-items: center; gap: 1.1rem; }
.dr-chart-brands img { display: block; object-fit: contain; width: 116px; height: 28px; }
.dr-chart-placement [hidden] { display: none !important; }
.dr-chart-placement[data-chart-exporting] iframe { visibility: hidden; }
.dr-chart-status { position: absolute; inset: 45% 0 auto; text-align: center; font-size: .85rem; color: var(--text-light); }
@media (max-width: 520px) {
  .dr-chart-toolbar { flex-wrap: wrap; gap: .7rem; }
  .dr-chart-summary { flex-basis: 100%; }
  .dr-chart-insight { font-size: 1.05rem; }
}
