/* --- SHARED CARD STYLES --- */
.line-budget-portlet-card {
  border: 1px solid #dee2e6;
  background-color: #fff;
  margin: 0 auto;
  /* Layout & Positioning */
  position: relative;
  padding-bottom: 80px; /* Space for absolute button */
}

.budget-header {
  background-color: #e8eff7;
  color: #2c3e50;
  font-weight: 700;
  text-align: center;
  padding: 15px;
  font-size: 1.1rem;
  text-transform: uppercase;
}

.card-body {
  padding: 20px;
}

/* --- CHART SPECIFIC STYLES --- */
/* Horizontal Legend at Top */
.legend-horizontal {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px; /* Space between items */
  margin-bottom: 20px;
}

.legend-item {
  display: flex;
  align-items: center;
  font-size: 0.9rem;
  font-weight: 600;
  color: #333;
}

.legend-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  margin-right: 8px;
  display: inline-block;
}

/* Wrapper for Line Chart */
.chart-wrapper-line {
  position: relative;
  height: 350px !important;
  width: 100%;
}

/* Unit Text (Bottom Right) */
.unit-note {
  text-align: right;
  color: #3b5998; /* Dark Blue */
  font-weight: 600;
  margin-top: 15px;
  font-size: 0.95rem;
}

/* Colors */
.bg-red {
  background-color: #ed2f35;
}

.bg-green {
  background-color: #00b862;
}

.bg-yellow {
  background-color: #fdd835;
}

/* --- ABSOLUTE FOOTER BUTTON --- */
.footer-btn-container {
  position: absolute;
  bottom: 25px;
  left: 0;
  right: 0;
  text-align: center;
  height: 40px;
  z-index: 10;
}