/* TDH V3 HQ: date-filtered operational overview, restrained purple accent. */
.hq-dashboard-header{display:flex;align-items:end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin:3px 0 22px}
.hq-dashboard-header h2{font-size:28px;letter-spacing:-.04em;margin:8px 0 4px;color:#27233d}
.hq-dashboard-header p{color:#7b7891;font-size:13px;margin:0}
.hq-period-form{display:flex;gap:9px;align-items:end;flex-wrap:wrap}
.hq-period-form label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:750;color:#77718b}
.hq-period-form input{width:148px;height:38px;border:1px solid #e0dbe9;border-radius:9px;background:#fff;padding:6px 9px;color:#302943;font-size:12px}
.hq-apply,.hq-reset{height:38px;padding:0 13px;border-radius:9px;border:1px solid #e0dbe9;font-size:12px;font-weight:750}
.hq-apply{background:#6636a2;border-color:#6636a2;color:#fff}.hq-reset{background:#fff;color:#593884}
.hq-period-caption{color:#8a7d99;font-size:12px;font-weight:650;margin:0 0 15px}
.hq-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
.hq-stat{background:#fff;border:1px solid #e9e3ef;border-radius:15px;padding:20px 18px 13px;min-width:0;box-shadow:0 3px 14px #38224e08}
.hq-stat-label{font-size:11px;font-weight:750;color:#7d748a;letter-spacing:.02em}
.hq-stat-heading{display:flex;align-items:start;justify-content:space-between;gap:7px;min-width:0}
.hq-stat-net{display:flex;flex-direction:column;align-items:flex-end;gap:4px;text-align:right;flex:0 0 auto;max-width:73%;min-width:0;padding:0;border:0;background:transparent}
.hq-stat-net>span{font-size:10px;font-weight:750;color:#826593;white-space:nowrap}
.hq-stat-net>strong{font-size:17px;font-weight:800;line-height:1.15;letter-spacing:-.02em;color:#4a3067;white-space:nowrap}
@media(max-width:520px){.hq-stat-net>strong{font-size:16px}}

.hq-stat-value{font-size:27px;line-height:1.15;letter-spacing:-.04em;color:#29243f;font-weight:800;margin:11px 0 5px}
.hq-change{display:inline-block;font-size:11px;font-weight:700;color:#8d7f95}
.hq-change.positive{color:#258365}.hq-change.negative{color:#b25a56}
.hq-sparkline{width:100%;height:64px;margin-top:10px}
.hq-stat p{font-size:10px;color:#94899f;margin:4px 0 0;min-height:24px}
.hq-no-spark{height:70px;display:flex;align-items:center;color:#a299ac;font-size:11px}
.hq-performance-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin-bottom:18px}
.hq-performance-panel{background:#fff;border:1px solid #e9e3ef;border-radius:15px;padding:21px 22px;min-width:0;box-shadow:0 3px 14px #38224e08}
.hq-panel-heading{display:flex;justify-content:space-between;gap:10px;align-items:center}
.hq-panel-heading h3{font-size:16px;color:#342843;margin:0;font-weight:750}
.hq-panel-heading span{font-size:11px;color:#998ca3;font-weight:700}
.hq-performance-panel>p{font-size:12px;color:#8c809a;line-height:1.5;margin:8px 0 18px}
.hq-chart-scroll{max-width:100%;overflow-x:auto}
.hq-main-chart{display:block;width:100%;min-width:370px;max-height:210px}
.hq-no-chart{font-size:12px;color:#978ca0;min-height:110px;display:flex;align-items:center}
.hq-market-row{margin:20px 0}.hq-market-heading{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:#51415d;margin-bottom:9px}
.hq-market-heading span{color:#80748c}.hq-market-track{background:#f1ecf7;height:9px;border-radius:7px;overflow:hidden}
.hq-market-track span{display:block;background:#7142b3;height:100%;border-radius:7px}
.hq-snapshot-row{display:flex;justify-content:space-between;border-bottom:1px solid #f0ebf3;align-items:center;padding:13px 0;gap:10px;font-size:12px;color:#73667d}
.hq-snapshot-row strong{font-size:17px;color:#392848}
.hq-source-note{font-size:11px;color:#898197;line-height:1.65;padding-bottom:16px}
.hq-overview-error{background:#fff4f2;border:1px solid #efc2bc;color:#923e37;padding:12px;border-radius:10px}
.hq-overview-error[hidden]{display:none}
@media(max-width:1140px){.hq-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:770px){.hq-performance-panels{grid-template-columns:1fr}.hq-dashboard-header{align-items:start}}
@media(max-width:520px){.hq-kpis{grid-template-columns:1fr}.hq-period-form{width:100%}.hq-period-form label{flex:1}.hq-period-form input{width:100%}}

.hq-market-visual{display:block;width:100%;height:9px;margin-top:8px}
