/* NTHA public/member Stats v3.55.16 */
.ntha-stats-public{max-width:1120px;margin:0 auto;padding:42px 24px 64px}
.ntha-stats-public-intro{display:flex;justify-content:space-between;gap:28px;align-items:flex-start;margin-bottom:20px}
.ntha-stats-public-intro h2{margin:2px 0 8px;font-size:32px;color:#333}
.ntha-stats-public-intro p{margin:0;max-width:760px}
.ntha-stats-public-kicker,.ntha-stats-chart-id{text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:700;color:#b51625}
.ntha-stats-public-status{flex:0 0 auto;padding:10px 13px;border:1px solid #e1e4e8;border-radius:9px;background:#f8f9fa;font-size:13px;color:#555}
.ntha-stats-method-note{margin:0 0 26px;padding:14px 16px;border:1px solid #e2e4e8;border-radius:10px;background:#f7f7f8;font-size:13px;line-height:1.55;color:#555}
.ntha-stats-chart-card{margin:0 0 30px;padding:22px;border:1px solid #e0e2e6;border-radius:12px;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.035)}
.ntha-stats-chart-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:12px}
.ntha-stats-chart-heading h3{margin:2px 0 0;font-size:22px;color:#3f4146}
.ntha-stats-chart-id{margin:0}
.ntha-stats-chart-actions{display:flex;gap:9px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.ntha-stats-download,.ntha-stats-detail-button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 14px;border-radius:6px;text-decoration:none!important;font-size:13px;font-weight:700;white-space:nowrap}
.ntha-stats-download{background:#e01d2d;color:#fff!important}
.ntha-stats-download:hover,.ntha-stats-download:focus{background:#c91624}
.ntha-stats-detail-button{border:1px solid #e01d2d;background:#fff;color:#b51625!important}
.ntha-stats-detail-button:hover,.ntha-stats-detail-button:focus{background:#fff3f4;color:#8f101d!important}
.ntha-stats-chart-narrative{margin:0 0 16px;line-height:1.55;color:#444}
.ntha-stats-table-wrap{overflow-x:auto;margin-bottom:18px}
.ntha-stats-metrics-table{width:100%;border-collapse:collapse;min-width:760px;font-size:13px}
.ntha-stats-metrics-table th,.ntha-stats-metrics-table td{padding:9px 10px;border:1px solid #dedfe2}
.ntha-stats-metrics-table th{background:#f4f4f4;color:#45474b;font-weight:700;text-align:left}
.ntha-stats-metrics-table th:nth-child(2),.ntha-stats-metrics-table th:nth-child(3),.ntha-stats-metrics-table td:nth-child(2),.ntha-stats-metrics-table td:nth-child(3){text-align:right}
.ntha-stats-metrics-table th:nth-child(4),.ntha-stats-metrics-table td:nth-child(4){text-align:center}
.ntha-stats-metrics-table th span{font-size:11px;font-weight:600}
.ntha-stats-percent-table{min-width:620px}
.ntha-stats-momentum{font-size:20px;line-height:1}
.ntha-stats-live-chart{border-top:1px solid #ececef;padding-top:16px}
.ntha-stats-chart-controls{display:flex;gap:7px 12px;flex-wrap:wrap;align-items:center;margin:0 0 10px}
.ntha-stats-series-toggle{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#505258;cursor:pointer}
.ntha-stats-series-toggle input{margin:0;accent-color:#e01d2d}
.ntha-stats-series-swatch{display:inline-block;width:14px;height:3px;border-radius:999px;background:var(--ntha-series-color,#555)}
.ntha-stats-trend-key{margin-left:auto;font-size:11px;color:#6a6d73;font-style:italic}
.ntha-stats-svg-wrap{position:relative;width:100%;overflow:hidden;border:1px solid #ececef;border-radius:9px;background:#fff}
.ntha-stats-svg-wrap svg{display:block;width:100%;height:auto;min-height:300px}
.ntha-stats-svg-grid{stroke:#e8e9ec;stroke-width:1}
.ntha-stats-svg-axis-label{font-size:11px;fill:#70737a}
.ntha-stats-svg-axis-title{font-size:12px;font-weight:700;fill:#555960}
.ntha-stats-svg-line{fill:none;stroke-width:2.2;vector-effect:non-scaling-stroke}
.ntha-stats-svg-trend{stroke-dasharray:1 5;stroke-linecap:round;stroke-width:1.9;opacity:.9}
.ntha-stats-svg-point{vector-effect:non-scaling-stroke}
.ntha-stats-svg-overlay{cursor:crosshair;outline:none}
.ntha-stats-svg-overlay:focus{stroke:#e01d2d;stroke-width:2;stroke-dasharray:4 4;vector-effect:non-scaling-stroke}
.ntha-stats-svg-empty{padding:48px 20px;text-align:center;color:#6d7077}
.ntha-stats-tooltip{position:absolute;z-index:4;max-width:340px;min-width:220px;padding:10px 12px;border:1px solid #d9dce1;border-radius:8px;background:rgba(255,255,255,.97);box-shadow:0 5px 18px rgba(0,0,0,.12);font-size:11px;color:#3f4247;pointer-events:none}
.ntha-stats-tooltip[hidden]{display:none}
.ntha-stats-tooltip-date{margin:0 0 7px;padding-bottom:6px;border-bottom:1px solid #ececef;font-weight:700;color:#24272b}
.ntha-stats-tooltip-row{display:grid;grid-template-columns:9px minmax(0,1fr) auto;gap:6px 7px;align-items:center;margin:5px 0}
.ntha-stats-tooltip-swatch{width:8px;height:8px;border-radius:50%}
.ntha-stats-tooltip-name{min-width:0;line-height:1.25}
.ntha-stats-tooltip-row strong{white-space:nowrap}
.ntha-stats-tooltip-trend{grid-column:2/4;color:#71747a;font-style:italic}
.ntha-stats-source-note{margin:18px 0 0;font-size:12px;color:#666}
.ntha-stats-public-empty{padding:24px;border:1px solid #e1e4e8;border-radius:10px;background:#fff}
.ntha-stats-public-empty h2{margin-top:0}

@media(max-width:780px){
    .ntha-stats-public{padding:28px 16px 48px}
    .ntha-stats-public-intro,.ntha-stats-chart-heading{display:block}
    .ntha-stats-public-status{margin-top:12px}
    .ntha-stats-chart-actions{justify-content:flex-start;margin-top:12px}
    .ntha-stats-public-intro h2{font-size:27px}
    .ntha-stats-chart-card{padding:16px}
    .ntha-stats-svg-wrap svg{min-height:260px}
    .ntha-stats-trend-key{width:100%;margin-left:0}
    .ntha-stats-tooltip{max-width:calc(100% - 16px);min-width:0}
}

/* v3.55.11 */
.ntha-stats-chart-meta{margin:5px 0 0;font-size:12px;color:#70737a}

/* v3.55.16 Regional Building Approvals selector */
.ntha-stats-region-picker{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(300px,1.8fr) auto;gap:14px;align-items:end;margin:0 0 24px;padding:18px;border:1px solid #e0e2e6;border-radius:12px;background:#f8f9fa}
.ntha-stats-region-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.ntha-stats-region-field label{font-size:12px;font-weight:700;color:#45474b}
.ntha-stats-region-field select{width:100%;min-height:42px;padding:8px 34px 8px 10px;border:1px solid #cfd3d9;border-radius:7px;background:#fff;color:#333;font:inherit}
.ntha-stats-region-submit{min-height:42px;padding:8px 16px;border:0;border-radius:6px;background:#e01d2d;color:#fff;font-size:13px;font-weight:700;cursor:pointer}
.ntha-stats-region-submit:hover,.ntha-stats-region-submit:focus{background:#c91624;color:#fff}
@media (max-width:760px){.ntha-stats-region-picker{grid-template-columns:1fr}.ntha-stats-region-submit{width:100%}}

/* v3.55.23 Regional BA state -> parent/child hierarchy + separate detail view */
.ntha-stats-region-picker.ntha-stats-region-state-only{grid-template-columns:minmax(260px,520px) auto;justify-content:start;max-width:760px}
.ntha-stats-region-hierarchy{margin:0 0 30px;border:1px solid #e0e2e6;border-radius:12px;background:#fff;overflow:hidden}
.ntha-stats-region-hierarchy-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid #e6e8eb;background:#f8f9fa}
.ntha-stats-region-hierarchy-heading h3{margin:2px 0 0;font-size:22px;color:#3f4146}
.ntha-stats-region-hierarchy-heading>p{margin:3px 0 0;font-size:12px;color:#6a6d73;white-space:nowrap}
.ntha-stats-region-table-wrap{overflow-x:auto}
.ntha-stats-region-table{width:100%;border-collapse:collapse;font-size:14px}
.ntha-stats-region-table th,.ntha-stats-region-table td{padding:10px 14px;border-bottom:1px solid #eceef0;text-align:left;vertical-align:top}
.ntha-stats-region-table th{background:#fff;color:#4a4d52;font-size:12px;font-weight:700}
.ntha-stats-region-table th:first-child,.ntha-stats-region-table td:first-child{width:110px;white-space:nowrap}
.ntha-stats-region-table tr:last-child td{border-bottom:0}
.ntha-stats-region-table tr.is-parent td{background:#f4f4f5;font-weight:700;border-top:1px solid #dde0e4}
.ntha-stats-region-table tr.is-parent:first-child td{border-top:0}
.ntha-stats-region-table tr.is-child td:nth-child(2){padding-left:30px}
.ntha-stats-region-table tr.is-grandchild td:nth-child(2){padding-left:50px}
.ntha-stats-region-tree{display:inline-block;width:20px;color:#8b8e94}
.ntha-stats-region-table a{color:#174db6;text-decoration:none;font-weight:inherit}
.ntha-stats-region-table a:hover,.ntha-stats-region-table a:focus{text-decoration:underline}
.ntha-stats-region-table tr.is-selected td{background:#fff3f4}
.ntha-stats-region-table tr.is-selected td:first-child{box-shadow:inset 4px 0 0 #e01d2d}
.ntha-stats-region-chart-card{scroll-margin-top:32px}

.ntha-stats-region-detail-nav{margin:0 0 16px}
.ntha-stats-region-back{display:inline-flex;align-items:center;gap:6px;color:#174db6;text-decoration:none;font-weight:700}
.ntha-stats-region-back:hover,.ntha-stats-region-back:focus{text-decoration:underline}
.ntha-stats-region-detail-page .ntha-stats-chart-card{margin-top:0}
@media (max-width:760px){
  .ntha-stats-region-picker.ntha-stats-region-state-only{grid-template-columns:1fr;max-width:none}
  .ntha-stats-region-hierarchy-heading{display:block}
  .ntha-stats-region-hierarchy-heading>p{margin-top:8px}
  .ntha-stats-region-table th,.ntha-stats-region-table td{padding:9px 10px}
  .ntha-stats-region-table th:first-child,.ntha-stats-region-table td:first-child{width:82px}
  .ntha-stats-region-table tr.is-child td:nth-child(2){padding-left:22px}
  .ntha-stats-region-table tr.is-grandchild td:nth-child(2){padding-left:34px}
}

/* v3.55.28: shared summary table followed by the related charts. */
.ntha-stats-combined-charts {
    display: grid;
    gap: 30px;
    margin-top: 30px;
}
.ntha-stats-combined-chart {
    border-top: 1px solid #d9dee5;
    padding-top: 24px;
}
.ntha-stats-combined-chart:first-child {
    border-top: 0;
    padding-top: 0;
}
.ntha-stats-combined-chart-heading {
    margin-bottom: 12px;
}
