.hf-strategic-hero { background: linear-gradient(135deg, #0d6b4f, #1a5f8a); color: #fff; padding: 2.5rem 0; }
.hf-kpi-card { border: none; border-radius: 1rem; box-shadow: 0 4px 18px rgba(13,107,79,.1); height: 100%; }
.hf-kpi-card--exec { border-left: 4px solid #0d6b4f; }
.hf-kpi-card .display-6 { font-weight: 700; color: #0d6b4f; }
.hf-kpi-value-row { display: flex; align-items: flex-end; gap: 0.25rem; }
.hf-kpi-trend { font-size: 1.5rem; line-height: 1; opacity: 0.85; }
.hf-chart-card { border-radius: 1rem; border: 1px solid rgba(148,163,184,.2); padding: 1.25rem; background: #fff; height: 100%; }
.hf-chart-card h2 { font-weight: 600; color: #1e2a28; margin-bottom: 1rem; }
.hf-chart-wrap { position: relative; min-height: 200px; max-width: 100%; overflow: hidden; }
@media (max-width: 575.98px) {
    .hf-kpi-card .display-6 { font-size: 1.35rem; }
    .hf-chart-card { padding: 1rem; }
}
.hf-skeleton { background: linear-gradient(90deg, #f0f4f3 25%, #e8eeec 50%, #f0f4f3 75%); background-size: 200% 100%; animation: hf-shimmer 1.2s infinite; border-radius: 8px; min-height: 120px; }
@keyframes hf-shimmer { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } }
.hf-rank-list { padding-left: 1.25rem; }
.hf-rank-list li { margin-bottom: 0.35rem; }
.hf-strategic-section-title { font-weight: 600; color: #1e2a28; }
.hf-drill-row { cursor: pointer; }
.hf-drill-row:hover { background: rgba(13, 107, 79, 0.06); }
.hf-executive-alerts .border-danger { border-width: 2px !important; }
.hf-strategic-loading .hf-kpi-card .display-6 { opacity: 0.35; }
@media print {
  .hf-no-print { display: none !important; }
  .hf-chart-card, section.panel { break-inside: avoid; page-break-inside: avoid; }
  .hf-strategic-kpi-row .display-6 { font-size: 1.25rem; }
}
