/* FullCalendar 파스텔 톤 커스터마이징 */

/* 캘린더 전체 컨테이너 */
#project-calendar .fc {
  background: linear-gradient(135deg, #faf5ff 0%, #f3e8ff 100%);
  border-radius: 12px;
  padding: 16px;
}

/* 헤더 툴바 스타일 */
#project-calendar .fc-header-toolbar {
  margin-bottom: 1rem;
  padding: 12px 16px;
  background: linear-gradient(135deg, #e0e7ff 0%, #c7d2fe 100%);
  border-radius: 10px;
  border: 1px solid #c4b5fd;
}

/* 버튼 스타일 */
#project-calendar .fc-button {
  background: linear-gradient(135deg, #ddd6fe 0%, #c4b5fd 100%) !important;
  border: 1px solid #a78bfa !important;
  color: #6b46c1 !important;
  border-radius: 8px !important;
  padding: 6px 12px !important;
  font-weight: 500 !important;
  text-shadow: none !important;
  box-shadow: 0 2px 4px rgba(139, 92, 246, 0.1) !important;
  transition: all 0.2s ease !important;
}

#project-calendar .fc-button:hover {
  background: linear-gradient(135deg, #c4b5fd 0%, #a78bfa 100%) !important;
  border-color: #8b5cf6 !important;
  color: #553c9a !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 8px rgba(139, 92, 246, 0.15) !important;
}

#project-calendar .fc-button:active,
#project-calendar .fc-button-active {
  background: linear-gradient(135deg, #a78bfa 0%, #8b5cf6 100%) !important;
  border-color: #7c3aed !important;
  color: white !important;
  box-shadow: 0 2px 4px rgba(139, 92, 246, 0.2) !important;
}

/* 제목 스타일 */
#project-calendar .fc-toolbar-title {
  color: #6b46c1 !important;
  font-weight: 600 !important;
  font-size: 1.25rem !important;
}

/* 테이블 헤더 */
#project-calendar .fc-col-header-cell {
  background: linear-gradient(135deg, #fdf4ff 0%, #fae8ff 100%) !important;
  border-color: #e9d5ff !important;
  color: #7c2d12 !important;
  font-weight: 600 !important;
  padding: 8px !important;
}

/* 날짜 셀 */
#project-calendar .fc-daygrid-day {
  background: rgba(255, 255, 255, 0.7) !important;
  border-color: #e9d5ff !important;
  transition: background-color 0.2s ease !important;
}

#project-calendar .fc-daygrid-day:hover {
  background: rgba(249, 168, 212, 0.1) !important;
}

#project-calendar .fc-day-today {
  background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%) !important;
  border: 2px solid #f59e0b !important;
}

/* 이벤트 스타일 */
#project-calendar .fc-event {
  border: none !important;
  margin: 2px !important;
  border-radius: 6px !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

#project-calendar .fc-event:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
}

/* 이벤트 타입별 파스텔 색상 */
#project-calendar .pastel-meeting {
  background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%) !important;
  color: #1e40af !important;
  border-left: 4px solid #3b82f6 !important;
}

#project-calendar .pastel-deadline {
  background: linear-gradient(135deg, #fce7f3 0%, #fbcfe8 100%) !important;
  color: #be185d !important;
  border-left: 4px solid #ec4899 !important;
}

#project-calendar .pastel-milestone {
  background: linear-gradient(135deg, #f3e8ff 0%, #e9d5ff 100%) !important;
  color: #7c2d12 !important;
  border-left: 4px solid #a855f7 !important;
}

#project-calendar .pastel-personal {
  background: linear-gradient(135deg, #d1fae5 0%, #a7f3d0 100%) !important;
  color: #065f46 !important;
  border-left: 4px solid #10b981 !important;
}

/* 리스트 뷰 스타일 */
#project-calendar .fc-list-event {
  border-radius: 8px !important;
  margin: 4px 0 !important;
  padding: 8px !important;
  border: 1px solid transparent !important;
}

#project-calendar .fc-list-event:hover {
  background: rgba(196, 181, 253, 0.1) !important;
  border-color: #c4b5fd !important;
}

#project-calendar .fc-list-event-title {
  font-weight: 500 !important;
}

#project-calendar .fc-list-event-time {
  color: #7c3aed !important;
  font-weight: 600 !important;
}

/* 스크롤바 스타일 */
#project-calendar .fc-scroller::-webkit-scrollbar {
  width: 6px;
}

#project-calendar .fc-scroller::-webkit-scrollbar-track {
  background: #f1f5f9;
  border-radius: 3px;
}

#project-calendar .fc-scroller::-webkit-scrollbar-thumb {
  background: #c4b5fd;
  border-radius: 3px;
}

#project-calendar .fc-scroller::-webkit-scrollbar-thumb:hover {
  background: #a78bfa;
}

/* 로딩 상태 */
#project-calendar .fc-loading {
  background: linear-gradient(90deg, #e2e8f0, #f1f5f9, #e2e8f0) !important;
  background-size: 200% 100% !important;
  animation: shimmer 1.5s infinite !important;
}

@keyframes shimmer {
  0% { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}

/* 반응형 디자인 */
@media (max-width: 768px) {
  #project-calendar .fc-header-toolbar {
    flex-direction: column !important;
    gap: 8px !important;
  }

  #project-calendar .fc-toolbar-chunk {
    display: flex !important;
    justify-content: center !important;
  }

  #project-calendar .fc-button {
    padding: 4px 8px !important;
    font-size: 0.875rem !important;
  }
}