/**
 * Flatpickr — Tenachine dark UI (matches backtest / investor tools)
 */
.flatpickr-calendar {
  z-index: 10050 !important;
  background: #1c1c1c !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 12px !important;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.55) !important;
  color: #e5e5e5 !important;
  font-family: inherit !important;
  font-size: 0.875rem !important;
  display: inline-block !important;
  width: auto !important;
  min-width: 16.5rem !important;
  max-width: min(20rem, calc(100vw - 1rem)) !important;
  box-sizing: border-box !important;
}

.flatpickr-months .flatpickr-month {
  background: #1c1c1c !important;
  color: #fff !important;
  fill: #fff !important;
  border-radius: 12px 12px 0 0 !important;
}

.flatpickr-current-month {
  padding: 0.25rem 0.4rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.4rem !important;
}

.flatpickr-current-month .flatpickr-monthDropdown-months,
.flatpickr-current-month input.cur-year {
  background: rgba(15, 15, 15, 0.92) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: 8px !important;
  color: #fff !important;
  font-weight: 600 !important;
  padding: 0.3rem 0.5rem !important;
  height: 2rem !important;
  line-height: 1 !important;
  box-shadow: none !important;
}

.flatpickr-current-month .flatpickr-monthDropdown-months {
  margin-right: 0 !important;
  width: auto !important;
  min-width: 7.8rem !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  padding-right: 1.8rem !important;
  background-image: linear-gradient(45deg, transparent 50%, rgba(255,255,255,0.55) 50%),
    linear-gradient(135deg, rgba(255,255,255,0.55) 50%, transparent 50%);
  background-position: calc(100% - 0.9rem) calc(50% - 2px), calc(100% - 0.65rem) calc(50% - 2px) !important;
  background-size: 8px 8px, 8px 8px !important;
  background-repeat: no-repeat !important;
}

.flatpickr-monthDropdown-months option {
  background: #1c1c1c !important;
  color: #e5e5e5 !important;
}

.flatpickr-monthDropdown-months option:hover,
.flatpickr-monthDropdown-months option:focus {
  background: rgba(50, 205, 50, 0.14) !important;
  color: #fff !important;
}

.flatpickr-monthDropdown-months option:checked {
  background: rgba(50, 205, 50, 0.12) !important;
  color: #32cd32 !important;
}

.flatpickr-monthDropdown-months::-ms-expand {
  display: none;
}

.flatpickr-monthDropdown-months:hover,
.flatpickr-current-month input.cur-year:hover {
  background: rgba(50, 205, 50, 0.12) !important;
  border-color: rgba(50, 205, 50, 0.35) !important;
}

.flatpickr-monthDropdown-months:focus,
.flatpickr-current-month input.cur-year:focus {
  background: rgba(18, 18, 18, 0.98) !important;
}

.flatpickr-current-month .flatpickr-monthDropdown-months:focus,
.flatpickr-current-month input.cur-year:focus {
  outline: none !important;
  border-color: #32cd32 !important;
  box-shadow: 0 0 0 1px rgba(50, 205, 50, 0.2) !important;
}

.flatpickr-weekdays {
  background: #161616 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}

.flatpickr-weekday {
  color: rgba(255, 255, 255, 0.45) !important;
  font-weight: 600 !important;
  font-size: 0.62rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
}

span.flatpickr-weekday:nth-child(1),
span.flatpickr-weekday:nth-child(7) {
  color: rgba(248, 113, 113, 0.75) !important;
}

.flatpickr-days {
  border: none !important;
}

.dayContainer {
  padding: 0.1rem 0.25rem 0.25rem !important;
}

.flatpickr-day {
  border-radius: 6px !important;
  color: #e8e8e8 !important;
  border-color: transparent !important;
  font-weight: 500 !important;
  height: 32px !important;
  line-height: 32px !important;
}

.flatpickr-day:hover:not(.flatpickr-disabled):not(.selected) {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: transparent !important;
  color: #fff !important;
}

.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay {
  color: rgba(255, 255, 255, 0.22) !important;
}

.flatpickr-day.today:not(.selected) {
  border: 1px solid rgba(50, 205, 50, 0.5) !important;
  background: rgba(50, 205, 50, 0.06) !important;
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange {
  background: #32cd32 !important;
  border-color: #32cd32 !important;
  color: #0a0a0a !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}

.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover {
  background: #2dd42d !important;
  border-color: #2dd42d !important;
  color: #0a0a0a !important;
}

.flatpickr-day.flatpickr-disabled {
  color: rgba(255, 255, 255, 0.15) !important;
}

.flatpickr-months .flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month {
  fill: rgba(255, 255, 255, 0.65) !important;
  padding: 0.35rem !important;
  border-radius: 8px !important;
}

.flatpickr-months .flatpickr-prev-month:hover,
.flatpickr-months .flatpickr-next-month:hover {
  background: rgba(50, 205, 50, 0.12) !important;
  fill: #32cd32 !important;
}

.flatpickr-time {
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

/* Month/year dropdown options */
.flatpickr-monthDropdown-month {
  color: #e5e5e5 !important;
  background: #1c1c1c !important;
}

.flatpickr-monthDropdown-month:hover,
.flatpickr-monthDropdown-month:focus {
  background: rgba(50, 205, 50, 0.15) !important;
  outline: none !important;
}

.flatpickr-monthDropdown-months .flatpickr-monthDropdown-month {
  color: #e5e5e5 !important;
}

.flatpickr-current-month .numInputWrapper {
  width: 6rem !important;
  display: inline-flex !important;
}

.flatpickr-current-month .numInputWrapper span {
  border-color: transparent !important;
}
