/* ============================================
   NGX-Bootstrap Datepicker - Professional Red Theme
   ============================================ */

/* Main Container with Shadow */
bs-datepicker-container,
bs-daterangepicker-container {
  z-index: 10000 !important;
}

.bs-datepicker {
  box-shadow: 0 10px 40px rgba(220, 53, 69, 0.2) !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;
  /* width: 32px !important; */
  height: 32px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.theme-pink .bs-datepicker-head button:hover {
  background: rgba(220, 53, 69, 0.1) !important;
  color: #dc3545 !important;
  transform: scale(1.1) !important;
}

.theme-pink .bs-datepicker-head button:active {
  background: rgba(220, 53, 69, 0.18) !important;
  transform: scale(1.05) !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(220, 53, 69, 0.12), rgba(239, 71, 111, 0.12)) !important;
  color: #dc3545 !important;
  transform: scale(1.05) !important;
  box-shadow: 0 2px 8px rgba(220, 53, 69, 0.2) !important;
  /* font-weight: 600 !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, #dc3545 0%, #c82333 100%) !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 15px rgba(220, 53, 69, 0.45) !important;
  transform: scale(1.1) !important;
  border: 2px solid rgba(255, 255, 255, 0.3) !important;
}

/* Today's Date - Pink 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: rgba(220, 53, 69, 0.08) !important;
  color: #dc3545 !important;
  font-weight: 700 !important;
  border: 2px solid #dc3545 !important;
  box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.1) !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;
  /* font-weight: 600 !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(220, 53, 69, 0.15), rgba(239, 71, 111, 0.15)) !important;
  color: #dc3545 !important;
  transform: scale(1.08) !important;
  box-shadow: 0 4px 12px rgba(220, 53, 69, 0.25) !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, #dc3545 0%, #c82333 100%) !important;
  color: #fff !important;
  box-shadow: 0 4px 12px rgba(220, 53, 69, 0.4) !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, #dc3545, #c82333);
  border-radius: 10px;
  transition: all 0.3s ease;
}

.theme-pink .bs-datepicker-body::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, #c82333, #dc3545);
  box-shadow: 0 2px 6px rgba(220, 53, 69, 0.4);
}

/* Professional Shadow */
.theme-pink .bs-datepicker {
  box-shadow: 0 15px 50px rgba(220, 53, 69, 0.22), 
              0 5px 15px rgba(220, 53, 69, 0.15) !important;
}

/* 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;
}
