@charset "utf-8";
#calendar-container {
    padding: 0 5px;
}

#calendar a {
    text-decoration: none;
    color: black;
    font-size: 0.8em;
}

.fc-header-toolbar {
    /*padding-top: 1em;*/
    /*padding-left: 1em;*/
    /*padding-right: 1em;*/

}

.fc .fc-col-header-cell {
    height: 60px;           /* 원하는 높이(px, em, rem 등) */
    vertical-align: middle; /* 글자 세로 중앙 정렬 */
    padding: 0;             /* 필요시 위/아래 여백 제거 */


}
.fc-col-header-cell-cushion{
    font-size: 0.9em !important;
    font-weight: normal;
}
.fc-day-mon a { color:#A5A5BA !important; } /* 월요일 */
.fc-day-tue a { color:#A5A5BA !important; } /* 월요일 */
.fc-day-wed a { color:#A5A5BA !important; } /* 월요일 */
.fc-day-thu a { color:#A5A5BA !important; } /* 월요일 */
.fc-day-fri a { color:#A5A5BA !important; } /* 월요일 */
.fc-day-sat a { color:#4E4E69 !important; } /* 토요일 */
.fc-day-sun a { color:#EE4F4F !important; } /* 일요일 */

.fc-scroller {
    overflow: visible !important;
    position: relative !important;
}

.fc-event {
    font-size: 0.8em;
}

.fc .fc-bg-event {
    background:#ffecec !important;
    color: #ee4f4f;
    opacity: 1 !important;
}

.fc .fc-bg-event .fc-event-title {
    margin-top: 2.5em !important;
    font-size: 0.7em !important;
}

.fc .fc-today-button {display: block; position: relative; padding: 10px; width: 120px; line-height: 20px; font-size: 14px; color: #4f31d4 !important; font-weight: 400 !important; background-color: #ebebff !important; border: 0; border-radius: 6px; text-align: center; box-sizing: border-box; letter-spacing: -0.04em; overflow: hidden;}
.fc .fc-button {display: block; position: relative; padding: 10px; width: 120px; line-height: 20px; font-size: 14px; color: #4f31d4; font-weight: 400; background-color: #ebebff; border: 0; border-radius: 6px; text-align: center; box-sizing: border-box; letter-spacing: -0.04em; overflow: hidden;color: #fff; background-color: #4f31d4;}
.fc-button:focus,
.fc-button:active {
    outline: none !important;
    box-shadow: none !important;
    border: none !important; /* 테두리 기본 제거 */
}

.cal-month-wrap {font-size: 0; text-align: center;}
.fc-toolbar-title {display: inline-block; margin: 0 20px !important; line-height: 40px; font-size: 22px; color: #343445; font-weight: 500; vertical-align: top;}

/** Ham Custom 2025.07.25**/

.fc-daygrid-day .fc-more-link {
    display: block;
    width: 100%;
    text-align: center;
    padding: 0px;
}

.fc-prev-button,
.fc-next-button {
    display: inline-block !important;
    position: relative;
    width: 40px !important;
    height: 40px;
    box-sizing: border-box;
    vertical-align: top;
    color: unset !important;
    font-weight: unset !important;
    background-color: unset !important;
}
.fc-prev-button:hover,
.fc-next-button:hover{
    border: 0;
}
.fc-prev-button:before,
.fc-next-button:before {display: block; content: ''; width: 100%; height: 100%; background-position: center center; background-repeat: no-repeat;}
.fc-prev-button:before {background-image: url(../images/btn_prev.png);}
.fc-next-button:before {background-image: url(../images/btn_next.png);}
.fc-prev-button:disabled::before {background-image: url(../images/btn_prev_disabled.png);}
.fc-next-button:disabled::before {background-image: url(../images/btn_next_disabled.png);}
.fc-prev-button span,
.fc-next-button span {position: absolute; clip: rect(0 0 0 0); width: 1px; height: 1px; margin: -1px; overflow: hidden;}

.cal-label-box {position: relative; margin-top: 5px; cursor: text;}
.cal-label-box:first-child {margin-top: 0;}

.cal-label {display: flex; gap: 5px; align-items: center; justify-content: space-between;  padding: 5px 10px; width: 100%; height: 28px; font-size: 10px; font-weight: 500; background-color: #fff; border: 1px solid #000; border-radius: 18px; box-sizing: border-box;}

.cal-label-color {color: #4f31d4; background-color: #dedeff; border-color: #9797ff;}
.cal-label-orange {color: #f3870c; background-color: #fff0df; border-color: #f8d6b0;}
.cal-label-green {color: #2a9a6d; background-color: #e2fbf1; border-color: #a3dfc7;}
.cal-label-blue {color: #2c86cd; background-color: #dbeefd; border-color: #90c2e9;}
.cal-label-purple {color: #a04ac2; background-color: #f6dfff; border-color: #ddb1ee;}

.cal-label-text {flex: auto; white-space: nowrap; overflow: hidden;}

.cal-people {flex: auto;}
.cal-people ul {display: flex; align-items: center; justify-content: flex-end; list-style: none;}
.cal-people ul li {margin-left: -3px;}
.cal-people ul li:first-child {margin-left: 0;}

.cal-profile-img {display: inline-block; width: 18px; height: 18px; border-radius: 50%; box-sizing: border-box; vertical-align: top; overflow: hidden;}
.cal-profile-img img {vertical-align: top;}
.cal-profile-more {display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; font-size: 10px; color: #fff; font-weight: 500; background-color: #9797ff;}

.cal-btn-more {display: block; margin: 5px auto 0; width: 60px; line-height: 20px; font-size: 10px; color: #4e4e69; font-weight: 400; border-radius: 10px; text-align: center;}
.cal-btn-more:hover {background-color: #f4f4fa;}

.cal-text {display: block; font-size: 10px; color: #343445; font-weight: 500;}
.cal-text-red {color: #ee4f4f;}

.cal-event {position: relative; font-size: 0;}
.cal-event-time,
.cal-event-memo {display: inline-block; font-size: 10px; color: #343445; vertical-align: top;}
.cal-event-time {margin-right: 3px; font-weight: 500;}

.fc-h-event {
     background-color: unset;
     border: unset;
}

.fc .fc-daygrid-day-top{
    display: block;
    margin: 4px 0 0 4px; /* 원하는 만큼 여백 조정 */
    text-align: left !important;
}

.fc-daygrid-more-link:hover,
.fc-more-link:hover {
    background: none !important;
    background-color: transparent !important;
}

.fc-daygrid-event-harness{
    padding-left: 5px;
    padding-right: 5px;
}

.fc .fc-daygrid-day-number {
    color: #343445 !important;
    font-weight: normal;
}

.fc .fc-day-today {
    background: #F4F4FA !important;
}

.cal-holiday{
    margin-top: 9px;
    left: 24px;
    position: relative;
}

.fc-popover{
    display: none;
}

.fc-event:hover,
.fc .fc-event.fc-event-mirror {
    /* 배경색 변경 효과를 비활성화 */
    background-color: inherit !important;
    /* 선택적으로, 그림자나 테두리 효과도 제거 가능 */
    box-shadow: none !important;
    border-color: inherit !important;
}

.fc .fc-daygrid-day-events {
    margin-top: 2px;
}

.cal-tooltip {
    display: none;
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);


    width: max-content;

    white-space: pre-line;
    word-break: break-all;
}
.cal-tooltip:after {
    display: block;
    content: '';
    position: fixed;
    top: 100%; left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-top: 6px solid rgb(52 52 69 / 90%);
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    z-index: 9000;

}
.cal-label-box:hover .cal-tooltip {display: block;}

.portal-tooltip {
    position: absolute;
    background-color: rgba(52, 52, 69, 0.9);
    color: white;
    font-size: 10px;
    padding: 6px 8px;
    border-radius: 6px;
    white-space: pre-line;
    word-break: break-word;
    z-index: 99999;
    pointer-events: none;
    max-width: 300px;
    line-height: 1.4;
}
.tippy-content {
    padding: 7px 8px;
    margin-bottom: 7px;
    max-width: calc(100% + 20px);
    font-size: 10px; color: #fff;
    font-weight: 500;
    background-color: rgb(52 52 69 / 90%);
    border-radius: 6px;
}
.tippy-arrow{
    color: rgb(52 52 69 / 90%);
}

.fc-event-main{
    margin-top: 2px;
}
