/* 컨테이너: 넘침 숨기기 + 한 줄 */
.fc .fc-daygrid-event .fc-event-title.marquee-wrap,
.fc .fc-daygrid-event .marquee-wrap {
position: relative;
overflow: hidden;
white-space: nowrap;
display: block;
text-overflow: clip !important; /* 혹시 상속된 ellipsis 무력화 */
}

/* 트랙: 동일 텍스트 2번으로 무한 루프 */
.fc .fc-daygrid-event .marquee-track {
display: inline-flex;
will-change: transform;
animation: fc-marquee 12s linear infinite;
}

/* 각 세그먼트 사이 간격 */
.fc .fc-daygrid-event .marquee-seg {
flex: 0 0 auto;
padding-right: 2rem;
}

@keyframes fc-marquee {
from { transform: translateX(0); }
to   { transform: translateX(-50%); }
}

/* 높이 자동 (월뷰에서 잘림 방지) */
.fc .fc-daygrid-event { height: auto; }
/* 전체 폰트 통일 */
#calendar {
    font-family: 'Noto Sans KR', sans-serif;
}

/* ===== 공통 스타일 ===== */
.fc-toolbar-title {
    font-weight: 700;
    font-size: 1.5rem;
}
.fc-col-header-cell {
    font-weight: 500;
    padding: 0.5rem 0;
}
.fc-daygrid-day-number {
    font-weight: 400;
}
.fc-day-today {
    background-color: rgba(255, 223, 107, 0.3) !important;
}

/* ===== 라이트 모드 ===== */
html:not(.dark) .fc-toolbar-title {
    color: #1e3a8a; /* 진한 남색 */
}
html:not(.dark) .fc-col-header-cell {
    background-color: #f1f5f9; /* 밝은 회색 */
    color: #374151; /* 짙은 회색 */
}
html:not(.dark) .fc-daygrid-day-number {
    color: #111827; /* 기본 진한 글씨 */
}

/* ===== 다크 모드 ===== */
html.dark .fc-toolbar-title {
    color: #93c5fd; /* 하늘빛 파랑 */
}
html.dark .fc-col-header-cell {
    background-color: #1f2937; /* 진한 회색 배경 */
    color: #d1d5db; /* 밝은 회색 글씨 */
}
html.dark .fc-daygrid-day-number {
    color: #f3f4f6; /* 거의 흰색 */
}
html.dark .fc-day-today {
    background-color: rgba(253, 224, 71, 0.2) !important; /* 연노랑 하이라이트 */
}