/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Apr 16 2026 | 11:57:22 */
/*--------------------------------------------------------------
📊 PROGRESS METER - .gfpm-container (BrightLeaf Giving Theme)
   Matches brand tokens from Fund Tile Grid v5.0
--------------------------------------------------------------*/

/* ── Fix dashboard columns to enforce equal width ─────────── */
.dashboard-row {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 20px !important;
  width: 100% !important;
}

.dashboard-row-col {
  flex: 1 1 0 !important;
  min-width: 0 !important;
}

/* ── Card wrapper ─────────────────────────────────────────── */
.gfpm-container {
  flex: 1 !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  font-family: 'Nunito Sans', sans-serif !important;
  padding: 20px 24px !important;
  background: var(--bl-white, #ffffff) !important;
  border: 1px solid var(--bl-border, #DEE4E1) !important;
  border-radius: var(--bl-tile-radius, 16px) !important;
  box-shadow: 0 1px 3px rgba(11,42,74,0.06),
              0 4px 12px rgba(11,42,74,0.04) !important;
  transition: box-shadow 0.25s cubic-bezier(0.4, 0, 0.2, 1),
              transform 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  position: relative !important;
  overflow: hidden !important;
}

.gfpm-container:hover {
  box-shadow: 0 4px 12px rgba(11,42,74,0.10),
              0 12px 32px rgba(11,42,74,0.08) !important;
  transform: translateY(-2px) !important;
}

/* Left accent bar on hover (matches fund tiles) */
.gfpm-container::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 4px !important;
  height: 100% !important;
  background: linear-gradient(180deg,
    var(--bl-accent, #A8C64A) 0%,
    var(--bl-green, #2F7E4B) 100%) !important;
  border-radius: var(--bl-tile-radius, 16px) 0 0 var(--bl-tile-radius, 16px) !important;
  opacity: 0 !important;
  transition: opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  pointer-events: none !important;
}

.gfpm-container:hover::before {
  opacity: 1 !important;
}

/* ── Progress bar track ───────────────────────────────────── */
.gfpm-meter {
  height: 14px !important;
  border-radius: 9999px !important;
  background-color: var(--bl-border, #DEE4E1) !important;
  overflow: hidden !important;
  margin-bottom: 12px !important;
  width: 100% !important;
  box-shadow: inset 0 1px 2px rgba(11,42,74,0.08) !important;
}

/* ── Progress bar fill ────────────────────────────────────── */
.gfpm-fill {
  height: 100% !important;
  background: linear-gradient(90deg,
    var(--bl-green, #2F7E4B),
    var(--bl-accent-2, #6fc24a)) !important;
  min-width: 0 !important;
  transition: width 0.6s ease-in-out !important;
  border-radius: 9999px !important;
  box-shadow: 0 0 8px rgba(47,126,75,0.3) !important;
  position: relative !important;
}

.gfpm-fill::after {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.35) 50%, transparent 100%) !important;
  background-size: 200% 100% !important;
  animation: gfpmShimmer 2s infinite !important;
}

@keyframes gfpmShimmer {
  0%   { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}

/* ── Caption + Goal labels ────────────────────────────────── */
.gfpm-caption,
.gfpm-goal {
  display: inline-block !important;
  width: 49% !important;
  font-family: 'Nunito Sans', sans-serif !important;
  font-size: 0.9rem !important;
  color: var(--bl-muted, #56645F) !important;
  line-height: 1.4 !important;
}

.gfpm-caption {
  text-align: left !important;
  float: left !important;
}

.gfpm-goal {
  text-align: right !important;
  float: right !important;
}

.gfpm-caption-value,
.gfpm-goal-value {
  font-weight: 700 !important;
  font-size: 1.1rem !important;
  color: var(--bl-green, #2F7E4B) !important;
  display: block !important;
}

.gfpm-caption-label,
.gfpm-goal-label {
  font-weight: 600 !important;
  font-size: 0.78rem !important;
  color: var(--bl-muted, #56645F) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.03em !important;
}

/* ── Also style .progressmeter if it wraps the shortcode ──── */
.progressmeter {
  width: 100% !important;
  text-align: center !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/*--------------------------------------------------------------
📱 RESPONSIVE
--------------------------------------------------------------*/
@media (max-width: 767px) {
  .gfpm-container {
    padding: 16px !important;
  }

  .gfpm-caption,
  .gfpm-goal {
    display: block !important;
    width: 100% !important;
    float: none !important;
    text-align: center !important;
    margin-bottom: 4px !important;
  }

  .gfpm-caption-value,
  .gfpm-goal-value {
    display: inline !important;
    margin-left: 4px !important;
  }
}

@media (max-width: 480px) {
  .gfpm-container {
    padding: 14px 12px !important;
    border-radius: 12px !important;
  }

  .gfpm-meter {
    height: 10px !important;
  }

  .gfpm-caption-label,
  .gfpm-goal-label {
    font-size: 0.72rem !important;
  }

  .gfpm-caption-value,
  .gfpm-goal-value {
    font-size: 1rem !important;
  }
}


/*--------------------------------------------------------------
📊 GRAVITY FORMS NATIVE PROGRESS BAR (if used elsewhere)
--------------------------------------------------------------*/
.gf_progress_meter_wrapper,
[class*="progress-meter"] {
  width: 100% !important;
  margin-top: 12px !important;
}

.gf_progress_meter {
  width: 100% !important;
  height: 14px !important;
  background: var(--bl-border, #DEE4E1) !important;
  border-radius: 9999px !important;
  overflow: hidden !important;
  position: relative !important;
  box-shadow: inset 0 1px 2px rgba(11,42,74,0.08) !important;
}

.gf_progress_meter_bar {
  height: 100% !important;
  background: linear-gradient(90deg,
    var(--bl-green, #2F7E4B),
    var(--bl-accent-2, #6fc24a)) !important;
  border-radius: 9999px !important;
  transition: width 1s cubic-bezier(0.16, 1, 0.3, 1) !important;
  position: relative !important;
  box-shadow: 0 0 8px rgba(47,126,75,0.3) !important;
}

.gf_progress_meter_bar::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.35) 50%, transparent 100%) !important;
  background-size: 200% 100% !important;
  animation: gfpmShimmer 2s infinite !important;
}