table.fc-scrollgrid{
  border:0;
}

#calendar{
  padding:12px;
  position: relative;
  min-height: 300px;
}

.fc-header-toolbar{
  align-items: center;
}

/* 상단 툴바 부분 design */
.fc .fc-toolbar {
  gap: 20px;
  flex-direction: row-reverse;
}

.fc .fc-toolbar .fc-toolbar-chunk:first-child{
  display:flex;
  flex-direction: column;
  gap:5px;
}

.fc-direction-ltr .fc-toolbar .fc-toolbar-chunk:first-child .fc-today-button{
  margin-left:0;
}

.fc .fc-button-group{
  gap:4px;
}

.fc .fc-button {
  background-color: transparent;
  color: #666;
  border: 1px solid #ccc;
  border-radius: 9999px;
  font-size: 0.9em;
  padding: 0.3em 0.6em;
  transition: background-color 0.2s;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.fc .fc-button.fc-button-primary:hover,
.fc .fc-button.fc-button-primary:focus,
.fc .fc-button.fc-button-primary:focus-visible,
.fc .fc-button.fc-button-primary:active {
  background-color: #eee;
  color: #333;
  border-color: #999;
  box-shadow: none !important;
}

/* disabled 상태 today 버튼: 연한 색상, hover 제거 */
.fc .fc-today-button:disabled {
  color: #999;
  border-color: #ddd;
  background-color: transparent;
  opacity: 0.6;
  cursor: default;
  pointer-events: none;
}

/* 테이블 부분 양식 편집 */

/* 일자 중앙정렬 */
.fc-daygrid-day-number {
  display: block;
  width: 100%;
  text-align: center;
}

/* 테이블, 셀 테두리 제거 */
.fc-theme-standard .fc-scrollgrid,
.fc-theme-standard td,
.fc-theme-standard th {
  border-left: none;
  border-right: none;
}

.fc-daygrid-day.fc-day-past {
  /* background-color: #f3f4f6; */
  color: #9ca3af; 
}

/* 과거 날짜 안의 이벤트 바 흐리게 */
.fc-daygrid-day.fc-day-past .fc-event {
  /* opacity: 0.7; */
}

/* 이벤트바 수정 */
.fc .fc-event {
  min-height: 1.8em;
  padding: 2px 4px;
  font-size: 0.8em;
}

/* 타이틀 줄바꿈 관련 */
.fc-event-title{
  white-space: normal;
  overflow-wrap: break-word;
  word-break: normal;
  display: -webkit-box !important;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* point 이벤트들은 배경색 제거 */
.fc-event[class*="-point"] {
  background-color: transparent !important;
  background-image: none !important;
  font-size:0.7rem;
}

/* 시작시간 비표시 */
.fc-event-time,
.fc-event-start.type-bd.fc-daygrid-dot-event .fc-event-time {
  display: none !important;
}

/* 이벤트 사이 간격주기 */
.fc-daygrid-event-harness.fc-daygrid-event-harness-abs{
  padding:1px 0;
}

/* 오늘날짜 강조 */
.fc .fc-daygrid-day.fc-day-today {
  position: relative;
  background: transparent;
}

.fc-day-today .fc-daygrid-day-number span{
  font-weight: bold;
}

/*오늘날짜 보더는 일단 주석처리*/
div.today-border{
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  border: 3px solid transparent;
  /* border-radius: 6px; */
  margin: -1px;

  /* background:
    linear-gradient(45deg, #1db8ff, #fd61e7) border-box;
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box, 
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude; */

  pointer-events: none;
}

.fc-daygrid-day-number span{
  display:flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  width:25px;
  height:25px;  
}

.fc-day-today .fc-daygrid-day-number span{
  border-radius: 50%;
  color:white;
  background-color:#222;

}
/* 오늘날짜 강조 끝 */


/* 단일이벤트 도트 양식 수정 */
.fc-daygrid-event {
  display: flex;
  align-items: stretch; /* 좌측 바가 세로로 쭉 늘어나도록 */
}

.fc-daygrid-event-dot {
  position: absolute;
  left:0;
  height:40%;
  border-radius: 10px;
  margin:0;
}

.fc-event-title {
  padding-left: 7px; /* 바 두께 + 여백 */
}
/* 단일이벤트 도트 양식 수정 끝 */

/* 생일 이벤트 캐릭터 sd*/
img.bd-char-img{
  width:38px;
  position:absolute;
  bottom:-5px;
  /* left:-5px; */
  z-index:10;
}

.fc-event.fc-event-start.type-bd .fc-event-title.fc-sticky{
  padding-left:34px;
}

/* 생일 이벤트 sd 캐릭터 끝 */

/* 가챠 종료만 두줄표시 */
.fc-event.gacha-point .fc-event-title{
  width:3rem;
  overflow-wrap: break-word;
  word-break: keep-all;
  -webkit-line-clamp: 2;
}