/* ============================================
   NGX-Bootstrap Datepicker - Professional MIX Theme
   ============================================ */

/* Main Container with Shadow */
bs-datepicker-container,
bs-daterangepicker-container {
  z-index: 10000 !important;
}

.bs-datepicker {
  box-shadow:
    0 15px 50px rgba(18, 138, 150, 0.18),
    0 8px 22px rgba(218, 102, 39, 0.10) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  border: none !important;
}

/* Simple Clean Header */
.theme-pink .bs-datepicker-head {
  background: #ffffff !important;
  border-radius: 0 !important;
  padding: 16px 12px !important;
  box-shadow: none !important;
  border-bottom: 2px solid #f0f3f7 !important;
}

/* Body Container */
.theme-pink .bs-datepicker-body {
  border: none !important;
  border-radius: 0 !important;
  padding: 15px !important;
  background: #ffffff !important;
  min-width: 280px !important;
}

/* Navigation Arrow Buttons */
.theme-pink .bs-datepicker-head button {
  color: #6e84a3 !important;
  font-weight: 500 !important;
  transition: all 0.25s ease !important;
  border-radius: 6px !important;
  padding: 4px 8px !important;
  border: none !important;
  background: transparent !important;
  height: 32px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.theme-pink .bs-datepicker-head button:hover {
  background: linear-gradient(135deg,
      rgba(18, 138, 150, 0.10),
      rgba(218, 102, 39, 0.06)) !important;
  color: #128A96 !important;
  transform: scale(1.08) !important;
}

.theme-pink .bs-datepicker-head button:active {
  background: linear-gradient(135deg,
      rgba(18, 138, 150, 0.16),
      rgba(218, 102, 39, 0.10)) !important;
  transform: scale(1.04) !important;
}

/* Previous/Next Icons */
.theme-pink .bs-datepicker-head button span {
  font-size: 18px !important;
  line-height: 1 !important;
}

/* Navigation Container */
.theme-pink bs-datepicker-navigation-view {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

.theme-pink bs-datepicker-navigation-view button {
  border-radius: 8px !important;
  padding: 8px 16px !important;
  min-width: auto !important;
  background: transparent !important;
  border: none !important;
}

/* Current Month/Year Display - Simple & Clean */
.theme-pink .current {
  color: #12263f !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  letter-spacing: 0.3px !important;
  padding: 0 !important;
}

/* Weekdays Header (Mon, Tue, etc.) */
.theme-pink .bs-datepicker-body table th {
  color: #6e84a3 !important;
  font-weight: 600 !important;
  font-size: 11px !important;
  padding: 10px 0 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  border-bottom: 1px solid #e3ebf6 !important;
}

/* Date Cells Container */
.theme-pink .bs-datepicker-body table td {
  color: #12263f !important;
  padding: 3px !important;
}

/* Individual Date Numbers */
.theme-pink .bs-datepicker-body table td span {
  border-radius: 10px !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  width: 38px !important;
  height: 38px !important;
  line-height: 38px !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  margin: 2px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Hover Effect - Smooth Scale */
.theme-pink .bs-datepicker-body table td span:hover:not(.disabled) {
  background: linear-gradient(135deg,
      rgba(18, 138, 150, 0.10),
      rgba(218, 102, 39, 0.07)) !important;
  color: #128A96 !important;
  transform: scale(1.05) !important;
  box-shadow:
    0 2px 8px rgba(18, 138, 150, 0.18),
    0 2px 8px rgba(218, 102, 39, 0.10) !important;
  cursor: pointer;
}

/* Selected Date - Bold Gradient */
.theme-pink .bs-datepicker-body table td.selected span,
.theme-pink .bs-datepicker-body table td span.selected {
  background: linear-gradient(135deg, #128A96 0%, #DA6627 100%) !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  box-shadow:
    0 6px 18px rgba(18, 138, 150, 0.28),
    0 4px 14px rgba(218, 102, 39, 0.22) !important;
  transform: scale(1.08) !important;
  border: 2px solid rgba(255, 255, 255, 0.28) !important;
}

/* Today's Date - Ring */
.theme-pink .bs-datepicker-body table td.is-highlighted:not(.selected):not(.select-start):not(.select-end) span,
.theme-pink .bs-datepicker-body table td span.is-highlighted:not(.selected):not(.select-start):not(.select-end) {
  background: linear-gradient(135deg,
      rgba(18, 138, 150, 0.08),
      rgba(218, 102, 39, 0.06)) !important;
  color: #128A96 !important;
  font-weight: 700 !important;
  border: 2px solid rgba(18, 138, 150, 0.85) !important;
  box-shadow:
    0 0 0 3px rgba(18, 138, 150, 0.10),
    0 0 0 5px rgba(218, 102, 39, 0.05) !important;
}

/* Disabled Dates - Muted */
.theme-pink .bs-datepicker-body table td.disabled span,
.theme-pink .bs-datepicker-body table td span.disabled {
  color: #d2ddec !important;
  cursor: not-allowed !important;
  opacity: 0.35 !important;
  text-decoration: line-through !important;
}

.theme-pink .bs-datepicker-body table td.disabled span:hover,
.theme-pink .bs-datepicker-body table td span.disabled:hover {
  background: transparent !important;
  transform: none !important;
  box-shadow: none !important;
}

/* Other Month Dates - Subtle */
.theme-pink .bs-datepicker-body table td.is-other-month span {
  color: #c4cfe0 !important;
  opacity: 0.6 !important;
  font-weight: 400 !important;
}

.theme-pink .bs-datepicker-body table td.is-other-month span:hover:not(.disabled) {
  opacity: 1 !important;
}

/* Week Numbers */
.theme-pink .bs-datepicker-body table td.week span {
  color: #95aac9 !important;
  font-weight: 600 !important;
  font-size: 11px !important;
  opacity: 0.7 !important;
}

/* Month/Year Picker - Beautiful Grid */
.theme-pink .bs-datepicker-body table.months span,
.theme-pink .bs-datepicker-body table.years span {
  width: 75px !important;
  height: 55px !important;
  line-height: 55px !important;
  margin: 4px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  transition: all 0.3s ease !important;
}

.theme-pink .bs-datepicker-body table.months span:hover,
.theme-pink .bs-datepicker-body table.years span:hover {
  background: linear-gradient(135deg,
      rgba(18, 138, 150, 0.12),
      rgba(218, 102, 39, 0.08)) !important;
  color: #128A96 !important;
  transform: scale(1.07) !important;
  box-shadow:
    0 4px 12px rgba(18, 138, 150, 0.18),
    0 4px 12px rgba(218, 102, 39, 0.10) !important;
  cursor: pointer;
}

.theme-pink .bs-datepicker-body table.months span.selected,
.theme-pink .bs-datepicker-body table.years span.selected {
  background: linear-gradient(135deg, #128A96 0%, #DA6627 100%) !important;
  color: #fff !important;
  box-shadow:
    0 6px 16px rgba(18, 138, 150, 0.24),
    0 4px 12px rgba(218, 102, 39, 0.20) !important;
}

/* Smooth Entrance Animation */
.theme-pink .bs-datepicker {
  animation: slideUpFade 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

@keyframes slideUpFade {
  from {
    opacity: 0;
    transform: scale(0.92) translateY(15px);
  }

  to {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}

/* Custom Scrollbar */
.theme-pink .bs-datepicker-body::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

.theme-pink .bs-datepicker-body::-webkit-scrollbar-track {
  background: #f5f7fa;
  border-radius: 10px;
}

.theme-pink .bs-datepicker-body::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, rgba(18, 138, 150, 0.75), rgba(218, 102, 39, 0.70));
  border-radius: 10px;
  transition: all 0.3s ease;
}

.theme-pink .bs-datepicker-body::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, rgba(18, 138, 150, 0.92), rgba(218, 102, 39, 0.88));
  box-shadow:
    0 2px 6px rgba(18, 138, 150, 0.22),
    0 2px 6px rgba(218, 102, 39, 0.14);
}

/* Container Positioning */
.bs-datepicker-container {
  padding: 0 !important;
}

.theme-pink .bs-datepicker-container {
  z-index: 10000 !important;
}

/* Table Spacing */
.theme-pink .bs-datepicker-body table {
  width: 100% !important;
  border-spacing: 0 !important;
  border-collapse: separate !important;
}

/* Separator Line After Weekdays */
.theme-pink .bs-datepicker-body table thead {
  border-bottom: 2px solid #f0f3f7 !important;
}