@charset "UTF-8";

/* [N-Style 캘린더 위젯 공통] */
.n-calendar-widget .na-card { 
	position: relative; 
	border: 1px solid var(--bs-border-color); 
	border-radius: 12px; 
	background: var(--bs-body-bg); 
	box-shadow: 0 1px 2px rgba(0,0,0,0.05); 
}

/* 상단 그린 포인트 라인 (네이버 스타일 1/3) */
.n-calendar-widget .na-card::before {
	content: ""; 
	position: absolute; 
	top: 0; left: 0; 
	width: 33%; height: 3px; 
	background-color: var(--bs-primary); 
	z-index: 10;
}

.n-calendar-widget .na-sec-head { 
	background: var(--bs-tertiary-bg); 
	border-bottom: 1px solid var(--bs-border-color) !important;
}

/* [좌측 오늘 날짜 영역] */
.n-calendar-widget .cal-big-date { 
	font-size: 2.8rem; 
	font-weight: 300; 
	letter-spacing: -2px; 
	line-height: 1; 
	margin-bottom: 5px; 
	color: var(--bs-body-color);
}
.n-calendar-widget .cal-big-date strong { font-weight: 600; }
.n-calendar-widget .cal-today-list { 
	font-size: 0.9rem; 
	color: var(--bs-secondary-color); 
	max-height: 80px; 
	overflow-y: auto; 
}

/* [우측 달력 그리드 영역] */
.n-calendar-widget .cal-grid { width: 100%; text-align: center; table-layout: fixed; }
.n-calendar-widget .cal-grid th { 
	font-size: 0.8rem; 
	font-weight: 500; 
	color: var(--bs-secondary-color); 
	padding-bottom: 8px; 
}
.n-calendar-widget .cal-grid td { 
	position: relative; 
	padding: 4px 0; 
	font-size: 0.85rem; 
	vertical-align: middle; 
	height: 32px;
	color: var(--bs-body-color);
}
.n-calendar-widget .cal-day-text { 
	display: inline-block; 
	width: 24px; height: 24px; 
	line-height: 24px; 
	border-radius: 50%; 
}

/* [포인트 및 효과 스타일] */
.n-calendar-widget .cal-day-cell { cursor: pointer; } 
.n-calendar-widget .cal-day-cell:hover .cal-day-text { background-color: rgba(var(--bs-primary-rgb), 0.1); }
.n-calendar-widget .text-holiday { color: #e74c3c !important; }

/* 오늘 날짜 표시 (빨간 원형) */
.n-calendar-widget .is-today .cal-day-text { 
	background-color: #e74c3c; 
	color: #fff !important; 
	font-weight: bold; 
}

/* 일정 표시 점(Dot) */
.n-calendar-widget .event-dot { 
	position: absolute; 
	bottom: 0; left: 50%; 
	transform: translateX(-50%); 
	width: 4px; height: 4px; 
	border-radius: 50%; 
	background-color: var(--bs-primary); 
}

/* 🌙 [다크모드 가독성 핵심 보정] */
[data-bs-theme=dark] .n-calendar-widget .badge.bg-light {
    background-color: var(--bs-secondary-bg) !important;
    color: #adb5bd !important;
    border: 1px solid var(--bs-border-color) !important;
}

[data-bs-theme=dark] .n-calendar-widget .cal-today-list {
    color: #adb5bd !important;
}

[data-bs-theme=dark] .n-calendar-widget .text-body-tertiary {
    color: #6c757d !important;
}