/* ================================
   FullCalendar ±âº» ½ºÅ¸ÀÏ
================================ */
.calendar-wrap {
	background: #ffffff;
	border: 1px solid var(--bs-primary);
	border-radius: 18px;
	padding: 24px;
	box-shadow: 0 8px 24px rgba(0,0,0,0.04);
}

.calendar-title-box {
	border-left: 5px solid var(--bs-primary);
	padding-left: 15px;
	margin-bottom: 25px;
}

.calendar-title-box h4 {
	font-weight: 800;
	margin-bottom: 6px;
	color: #222222;
}

.calendar-title-box p {
	margin-bottom: 0;
	color: #777777;
	font-size: 0.95rem;
}

#calendar {
	width: 100%;
	background: #ffffff;
}

/* ´Þ·Â ÀüÃ¼ */
.fc {
	font-size: 0.9rem;
}

/* »ó´Ü ¹öÆ° */
.fc .fc-button {
	border-radius: 8px !important;
	font-size: 0.85rem !important;
	padding: 6px 12px !important;
}

/* Á¦¸ñ */
.fc .fc-toolbar-title {
	font-weight: 800;
}

/* ¿À´Ã ³¯Â¥ */
.fc .fc-daygrid-day.fc-day-today {
	background: #fff8e5 !important;
}

/* ³¯Â¥ ¼ýÀÚ */
.fc .fc-daygrid-day-number {
	color: #333333;
	text-decoration: none;
	font-weight: 600;
}

/* ¿äÀÏ */
.fc .fc-col-header-cell-cushion {
	color: #333333;
	text-decoration: none;
	font-weight: 800;
	display: block;
	padding: 12px 0 !important;
}

/* ¿äÀÏ ÁÙ ÀüÃ¼ */
.fc .fc-col-header-cell {
	background: #f8f9fa !important;
	border-color: #e5e7eb !important;
}

/* ÀÏ¿äÀÏ */
.fc-day-sun .fc-col-header-cell-cushion,
.fc-day-sun .fc-daygrid-day-number {
	color: #dc3545;
}

/* Åä¿äÀÏ */
.fc-day-sat .fc-col-header-cell-cushion,
.fc-day-sat .fc-daygrid-day-number {
	color: var(--bs-primary);
}

/* ÀÏ¿äÀÏ ¿äÀÏ ¹è°æ */
.fc .fc-day-sun.fc-col-header-cell {
	background: #fff5f5 !important;
}

/* Åä¿äÀÏ ¿äÀÏ ¹è°æ */
.fc .fc-day-sat.fc-col-header-cell {
	background: #f4f8ff !important;
}

/* ÀÌº¥Æ® °øÅë */
.fc-event {
	border: 0 !important;
	border-radius: 6px !important;
	padding: 2px 5px !important;
	font-size: 0.82rem;
	cursor: pointer;
	text-decoration: none !important;
}

.fc-event:hover {
	text-decoration: none !important;
}

/* ================================
   ½Ã°£ ¾Õ ÆÄ¶õ Á¡ Á¦°Å
================================ */
.fc .fc-daygrid-event-dot {
	display: none !important;
}

/* ½Ã°£ ÀÏÁ¤ ÀüÃ¼ */
.fc .fc-daygrid-dot-event {
	color: #111111 !important;
	background: transparent !important;
	border: 0 !important;
	padding: 1px 4px !important;
	margin: 1px 2px !important;
	letter-spacing: -0.8px;
	line-height: 1.35;
}

/* ½Ã°£ */
.fc .fc-daygrid-dot-event .fc-event-time {
	color: #111111 !important;
	font-weight: 700;
	margin-right: 3px;
	letter-spacing: -0.8px;
}

/* Á¦¸ñ */
.fc .fc-daygrid-dot-event .fc-event-title {
	color: #111111 !important;
	font-weight: 600;
	letter-spacing: -0.8px;
}

/* ½Ã°£ ÀÏÁ¤ hover */
.fc .fc-daygrid-dot-event:hover {
	background: #f8f9fa !important;
}

/* ================================
   ÇÑ ÁÖ ³ôÀÌ Á¤¸®
================================ */
.fc .fc-daygrid-body,
.fc .fc-daygrid-body table {
	width: 100% !important;
}

.fc .fc-daygrid-day-frame {
	min-height: 115px !important;
}

.fc .fc-daygrid-day-top {
	padding: 6px 6px 2px 6px;
}

.fc .fc-daygrid-day-events {
	margin-top: 4px !important;
}

.fc .fc-daygrid-day-bottom {
	padding-top: 2px;
}

.fc .fc-daygrid-more-link {
	font-size: 0.75rem;
	font-weight: 700;
	color: #0d6efd !important;
}

/* ================================
   Á¾ÀÏ ÀÏÁ¤ ½ºÅ¸ÀÏ
================================ */
.fc .fc-daygrid-block-event {
	border-radius: 5px !important;
	padding: 2px 5px !important;
	letter-spacing: -0.5px;
}

.fc .fc-daygrid-block-event .fc-event-title {
	font-weight: 700;
	letter-spacing: -0.6px;
}

/* Á¾ÀÏ ÀÏÁ¤ »ö»ó °­Á¦ Àû¿ë¿ë */
.fc .is-allday-custom {
	border-radius: 5px !important;
}

.fc .is-allday-custom .fc-event-main,
.fc .is-allday-custom .fc-event-title {
	font-weight: 700 !important;
}

/* ¸ð¹ÙÀÏ */
@media (max-width: 768px) {
	.calendar-wrap {
		padding: 16px;
		border-radius: 14px;
	}

	.fc {
		font-size: 0.78rem;
	}



	.fc .fc-toolbar-title {
		font-size: 1.2rem !important;
	}

	.fc .fc-button {
		font-size: 0.75rem !important;
		padding: 5px 8px !important;
	}

	.fc-event {
		font-size: 0.72rem;
	}
}