/* Yardage tools kit — Golf Course Census charts. Consumes the theme's --yd-* tokens with fallbacks. */

.yd-chart { margin: var(--yd-s-6, 32px) 0; padding: 0; }
.yd-chart__caption { display: flex; flex-direction: column; gap: 2px; margin-bottom: var(--yd-s-3, 12px); }
.yd-chart__title { font-family: var(--yd-font-display, inherit); font-weight: 700; font-size: var(--yd-text-lg, 1.2rem); color: var(--yd-ink, #141a16); }
.yd-chart__source { font-size: var(--yd-text-xs, .75rem); color: var(--yd-ink-3, #5f6862); }
.yd-chart__scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; border-radius: var(--yd-radius-sm, 8px); }
.yd-chart__scroll:focus-visible { outline: 2px solid var(--yd-focus, #267946); outline-offset: 4px; }
.yd-bars { display: block; width: 100%; height: auto; max-width: 46rem; }
@media (max-width: 479px) {
  .yd-chart__scroll .yd-bars { min-width: 34rem; }
  .yd-chart__scroll::after { content: 'Swipe sideways to see the whole chart'; display: block; font-size: var(--yd-text-xs, .75rem); color: var(--yd-ink-3, #5f6862); margin-top: 4px; position: sticky; left: 0; }
}
.yd-bars__bar { fill: var(--yd-green, #267946); }
.yd-bars__bar2 { fill: var(--yd-green, #267946); fill-opacity: .38; }
.yd-bars__label, .yd-bars__val { fill: var(--yd-ink, #141a16); }
.yd-bars__val { font-variant-numeric: tabular-nums; }
.yd-bars__note, .yd-bars__legend { fill: var(--yd-ink-2, #4b534d); }
.yd-bars__marker { stroke: var(--yd-ink, #141a16); stroke-dasharray: 3 3; }
.yd-chart__table, .yd-chart__embed { margin-top: var(--yd-s-3, 12px); }
.yd-chart__table summary, .yd-chart__embed summary { cursor: pointer; font-weight: 600; color: var(--yd-green-text, #23703f); }
.yd-chart__table table { margin-top: var(--yd-s-3, 12px); }
.yd-chart__table .yd-table + .yd-table { margin-top: var(--yd-s-5, 24px); }
.yd-chart__embed p { margin: var(--yd-s-2, 8px) 0; font-size: var(--yd-text-sm, .875rem); }
.yd-chart__code { width: 100%; font-family: var(--yd-font-mono, monospace); font-size: .8125rem; padding: 12px; border: 1px solid var(--yd-rule-strong, #b9b8ae); border-radius: var(--yd-radius, 12px); background: var(--yd-surface, #fff); color: var(--yd-ink, #141a16); resize: vertical; }

/* Key findings */
ol.yd-findings { list-style: none; counter-reset: yd-finding; margin: var(--yd-s-5, 24px) 0; padding: 0; display: grid; gap: var(--yd-s-4, 16px); }
ol.yd-findings > .yd-findings__item { counter-increment: yd-finding; position: relative; margin: 0; padding: var(--yd-s-4, 16px) var(--yd-s-4, 16px) var(--yd-s-4, 16px) 3.75rem; border: 1px solid var(--yd-rule, #dfded6); border-radius: var(--yd-radius, 12px); background: var(--yd-surface, #fff); }
ol.yd-findings > .yd-findings__item::before { content: counter(yd-finding); position: absolute; left: var(--yd-s-4, 16px); top: var(--yd-s-4, 16px); width: 2rem; height: 2rem; border-radius: 50%; background: var(--yd-green, #267946); color: var(--yd-on-green, #fff); font-family: var(--yd-font-display, inherit); font-weight: 700; display: grid; place-items: center; }
ol.yd-findings > .yd-findings__item::marker { content: ''; }
.yd-findings__headline { margin: 0 0 var(--yd-s-1, 4px); font-family: var(--yd-font-display, inherit); font-weight: 700; font-size: var(--yd-text-lg, 1.2rem); line-height: 1.3; color: var(--yd-ink, #141a16); }
.yd-findings__detail { margin: 0; color: var(--yd-ink-2, #4b534d); font-size: var(--yd-text-sm, .875rem); }
.yd-findings__link { white-space: nowrap; }

/* Facts panel on the census page reuses the theme's .yd-facts */
.yd-census-facts { margin: var(--yd-s-5, 24px) 0; }
.yd-census-download__links { display: flex; flex-wrap: wrap; gap: var(--yd-s-3, 12px); }
.yd-census-cite p { margin: var(--yd-s-2, 8px) 0; }
.yd-census-cite code { font-size: .8125rem; word-break: break-all; }
.yd-census-caveat { margin: var(--yd-s-4, 16px) 0; }

@media print {
  .yd-chart__embed { display: none; }
  .yd-chart__table { display: block; }
  .yd-chart__table[open] summary, .yd-chart__table summary { display: none; }
  .yd-chart__table table { display: table; }
  .yd-bars__bar { fill: #267946 !important; }
}
