.dropNewEvent {
    font-size: 13px;
}

.popoverTitleCalendar {
    width: 100%;
    height: 100%;
    padding: 15px 15px;
    font-size: 13px;
    border-radius: 5px 5px 0 0;
}

.popoverInfoCalendar i {
    font-size: 14px;
    margin-right: 10px;
    line-height: inherit;
    color: #d3d4da;
}

.popoverInfoCalendar p {
    margin-bottom: 1px;
}

.popoverDescCalendar {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #e3e3e3;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.popover-title {
    background: transparent;
    font-weight: 600;
    padding: 0 !important;
    border: none;
}

.popover-content {
    padding: 15px 15px;
    font-size: 13px;
}

.inputModal {
    width: 65%;
    margin-bottom: 10px;
}

#contextMenu {
    position: absolute;
    display: none;
    z-index: 2;
}

#contextMenu .dropdown-menu {
    border: none;
}

.opacityWeekend {
    background-color: #f4f4fb !important;
}

/* fc */
.fc * {
    font-family: "Pretendard";
}
.fc .fc-toolbar > * > * {
    float: none;
    margin: auto;
}
.fc-left,
.fc-right,
.fc-right .fc-button-group {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
.fc .fc-toolbar h2 {
    font-size: 28px;
    font-weight: 700;
    margin: 0 12px;
    line-height: 36px;
}
.fc-left .fc-state-default {
    border: 1px solid #ddd;
    background: #fff;
    width: 32px;
    height: 32px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.fc-right .fc-state-default {
    border: none;
    background: #f4f4f4;
    width: auto;
    height: 36px;
    padding: 0 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #777;
    border-radius: 4px;
}
.fc-right .fc-state-active {
    background-color: #444;
    color: #fff;
    font-weight: 500;
    font-size: 16px;
}

.fc-head-container.fc-widget-header {
    border: none;
    border-top: 1px solid #555;
}
.fc-unthemed tbody {
    border-bottom: 1px solid #555;
}

.fc-title {
    color: #111;
    font-size: 14px;
}
.fc th {
    background-color: #f4f4f4;
    text-align: left;
    color: #555;
    font-size: 15px;
    font-weight: 600;
    padding: 16px;
    border: none;
}
.fc-day.fc-widget-content {
    padding: 16px;
    border-color: #efefef;
    font-size: 14px;
    font-weight: 400;
    color: #999;
}
td.fc-day-top {
    padding: 16px 16px 8px;
    color: #555;
}
.fc-ltr .fc-basic-view .fc-day-top .fc-day-number {
    float: none;
    font-weight: 400;
    font-size: 14px;
}
a.fc-more {
    margin: 8px 16px;
    font-size: 14px;
    font-weight: 500;
    display: block;
}
.fc-sun {
    color: #d7272c !important;
}
.fc-unthemed td.fc-today {
    background-color: #f1f4fa;
}

.fc-view > table > tbody.fc-body > tr > td.fc-widget-content {
    border: none;
}

/* 공통 초기화 */
.fc .fc-icon {
    background: none;
}

/* FA6 기준 (FA5면 font-family만 바꿔주면 됩니다) */
.fc .fc-icon-left-single-arrow:after {
    font-family: "Font Awesome 6 Free";
    font-weight: 900; /* solid */
    content: "\f104"; /* angle-left  */
}
.fc .fc-icon-right-single-arrow:after {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f105"; /* angle-right */
}
.fc .fc-icon-left-double-arrow:after {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f100"; /* angle-double-left  */
}
.fc .fc-icon-right-double-arrow:after {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f101"; /* angle-double-right */
}

/* 버튼 크기/정렬 보정이 필요하면 */
.fc button .fc-icon {
    top: auto;
    margin: 0;
}
.fc .fc-button .fc-icon:after {
    font-size: 16px;
    color: #555;
    vertical-align: middle;
}

.fc-today-button.fc-button.fc-state-default {
    width: 80px;
    height: 36px;
    border-radius: 4px;
    border: none;
    background: #f1f4fa;
    color: #111;
}
.fc-today-button.fc-button.fc-state-default.fc-state-disabled {
    opacity: 1;
}

.fc-avatar-image {
    top: 4px;
    left: 20px;
    height: 28px;
    width: 28px;
    border-radius: 50%;
    position: absolute;
    z-index: 2;
}

.fc-avatar-image img {
    height: 28px;
    width: 28px;
    border-radius: 50%;
}

.fc-avatar-image:before {
    content: none !important;
}

.fc-center h2 {
    text-transform: uppercase;
    font-size: 18px;
    font-weight: 600;
    color: #505363;
    line-height: 32px;
}

.fc-toolbar.fc-header-toolbar {
    margin-bottom: 22px;
    padding-top: 22px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.fc-agenda-view .fc-day-grid .fc-row .fc-content-skeleton {
    padding-bottom: 1em;
    padding-top: 1em;
}

.fc-day {
    -webkit-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    transition: all 0.2s linear;
}

.fc-day:hover {
    background: #eef7ff;
    cursor: pointer;
    -webkit-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    transition: all 0.2s linear;
}

.fc-highlight {
    background: #eef7ff;
    opacity: 0.7;
}

.fc-time-grid-event.fc-short .fc-time:before {
    content: attr(data-start);
    display: none;
}

.fc-time-grid-event.fc-short .fc-time span {
    display: inline-block;
}

.fc-time-grid-event.fc-short .fc-avatar-image {
    display: none;
    -webkit-transition: all 0.3s linear;
    -o-transition: all 0.3s linear;
    transition: all 0.3s linear;
}

.fc-time-grid .fc-bgevent,
.fc-time-grid .fc-event {
    border: 1px solid #fff !important;
}

.fc-time-grid-event.fc-short .fc-content {
    padding: 4px 20px 10px 22px !important;
}

.fc-time-grid-event .fc-avatar-image {
    top: 9px;
}

.fc-event-vert {
    min-height: 22px;
}

.fc .fc-axis {
    vertical-align: middle;
    padding: 0 4px;
    white-space: nowrap;
    font-size: 10px;
    color: #505362;
    text-transform: uppercase;
    text-align: center !important;
    background-color: #fafafa;
}

.fc-unthemed .fc-event .fc-content,
.fc-unthemed .fc-event-dot .fc-content {
    padding: 8px 12px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    color: #111;
    border-radius: 4px;
}

.fc-event {
    border: none !important;
}

.fc-day-grid-event .fc-time {
    font-weight: 700;
    text-transform: uppercase;
}

.fc-ltr .fc-h-event .fc-end-resizer,
.fc-ltr .fc-h-event .fc-end-resizer:before,
.fc-ltr .fc-h-event .fc-end-resizer:after,
.fc-rtl .fc-h-event .fc-start-resizer,
.fc-rtl .fc-h-event .fc-start-resizer:before,
.fc-rtl .fc-h-event .fc-start-resizer:after {
    left: auto;
    cursor: e-resize;
    background: none;
}

select.filter {
    width: 500px !important;
}

.popover {
    background: #fff !important;
    color: #2e2f34;
    border: none;
    margin-bottom: 10px;
}

/*popover header*/
.popover-title {
    background: #f7f7fc;
    font-weight: 600;
    padding: 15px 15px 11px;
    border: none;
}

/*popover arrows*/
.popover.top .arrow:after {
    border-top-color: #fff;
}

.popover.right .arrow:after {
    border-right-color: #fff;
}

.popover.bottom .arrow:after {
    border-bottom-color: #fff;
}

.popover.left .arrow:after {
    border-left-color: #fff;
}

.popover.bottom .arrow:after {
    border-bottom-color: #fff;
}

.material-icons {
    font-family: "Material Icons";
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    /* Preferred icon size */
    display: inline-block;
    line-height: 1;
    text-transform: none;
    letter-spacing: normal;
    word-wrap: normal;
    white-space: nowrap;
    direction: ltr;

    /* Support for all WebKit browsers. */
    -webkit-font-smoothing: antialiased;
    /* Support for Safari and Chrome. */
    text-rendering: optimizeLegibility;

    /* Support for Firefox. */
    -moz-osx-font-smoothing: grayscale;

    /* Support for IE. */
    -webkit-font-feature-settings: "liga";
    font-feature-settings: "liga";
}

#add-color,
#edit-color {
    color: #d25565;
}
.fc-toolbar .fc-center,
.fc-toolbar .fc-clear {
    display: none;
}
/* v3, 기본 테마(unthemed) 기준 */
.fc-unthemed .fc-list-view .fc-scroller {
    min-height: 240px; /* 원하는 값으로 */
}

/* (테마를 쓰거나 unthemed가 아닐 때) */
.fc .fc-list-view .fc-scroller {
    min-height: 240px;
}
@media screen and (max-width: 1359px) {
    .fc .fc-toolbar h2 {
        font-size: 18px;
    }
    .fc th {
        padding: 8px;
    }
    .fc-unthemed .fc-event .fc-content,
    .fc-unthemed .fc-event-dot .fc-content {
        padding: 4px 6px;
    }
    .fc-left .fc-state-default {
        width: 28px;
        height: 28px;
    }
    .fc-today-button.fc-button.fc-state-default {
        width: 64px;
        height: 32px;
        font-size: 14px;
    }
    .fc-right .fc-state-default {
        height: 28px;
        font-size: 14px;
    }
    td.fc-day-top {
        padding: 8px;
    }
}
@media screen and (max-width: 768px) {
    .fc-toolbar.fc-header-toolbar {
        flex-direction: column;
        gap: 12px;
        position: relative;
    }
    a.fc-more {
        margin: 2px 4px;
    }
    .fc .fc-toolbar h2 {
        position: absolute;
        top: -18px;
        left: 50%;
        transform: translateX(-50%);
        margin: 0;
        width: 100%;
    }
    .fc-agendaWeek-view .fc-day-header {
        font-size: 12px; /* 원하는 크기 */
        padding: 4px 0; /* 여백도 조정 가능 */
    }
}
