@charset "UTF-8";

/* ===========================================================================
 * 갤러리 예약 달력 전용 스타일 (glryRsvtCalendar.jsp 전용)
 * fullcalendar.css 의 모던 Grid 섹션을 분리하여 _glry 접미사 네임스페이스로 이관.
 * 타 화면 영향 없음.
 * =========================================================================== */
 
.cal_box .selMonth { margin: 0 .5rem; }
.cal_box .selMonth select { height: 2rem; border: 1px solid #b2b7c7; color: #444; }

.calendar-container_glry {
    width: 100%;
    border: 1px solid #d3d3d3;
    border-top: 2px solid #007dda;
    display: grid;
    grid-template-rows: auto 1fr;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.calendar-header_glry {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    background: #f1f7fb;
}

.day-header_glry {
    /* padding: 5px;
    font-size: 15px;
    color: #111;
    line-height: 40px;
    border-left: 1px solid #b2b7c7;
    background: #f1f7fb;
    text-align: center;
    font-weight: 600; */
    background: #e3f2fe;
    font-weight: 600;
    color: #333;
    padding: 1rem 0.5rem;
    border-bottom: 1px solid #b9bec7;
    border-left: 1px solid #dad8d9;
    text-align:center;
}

.day-header_glry:first-child {
    border-left: none;
}

.day-header_glry.sun_glry {
    color: #d00;
}

.day-header_glry.sat_glry {
    color: #00d;
}

.calendar-body_glry {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    grid-auto-rows: auto;
    position: relative;
    gap: 0;
    width: 100%;
    min-height: auto;
}

.calendar-day_glry {
    min-height: 140px;
    height: auto;
    padding: 5px;
    font-size: 14px;
    font-family: 'SCDream';
    vertical-align: top;
    border-left: 1px solid #b2b7c7;
    border-top: 1px solid #b2b7c7;
    position: relative;
    display: flex;
    flex-direction: column;
    overflow: visible;
    margin: 0;
    box-sizing: border-box;
}

.calendar-day_glry:nth-child(7n+1) {
    border-left: none;
}

.calendar-day_glry:nth-child(-n+7) {
    border-top: none;
}

.calendar-day_glry.sun_glry .day-number_glry {
    color: #d00;
}

.calendar-day_glry.sat_glry .day-number_glry {
    color: #00d;
}

.calendar-day_glry.today_glry {
    background-color: #fff8dd;
}

.calendar-day_glry.op50_glry {
    opacity: 0.5;
}

.day-number_glry {
    font-weight: bold;
    margin-bottom: 5px;
    display: block;
    flex-shrink: 0;
    height: 20px;
    line-height: 20px;
}

.day-number_glry.pre_day_glry {
    color: #999;
}

.day-events_glry {
    position: relative;
    flex: 1;
    overflow: visible;
    min-height: 100px;
}

/* 연속된 일정 스타일 */
.continuous-event_glry {
    position: absolute;
    height: 20px;
    margin: 1px;
    padding: 2px 5px;
    border-radius: 0px;
    border: 1px solid rgba(0, 0, 0, 0.05);
    font-size: 0.7rem;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: flex;
    align-items: center;
    justify-content:flex-start;
    box-sizing: border-box;
}

.continuous-event_glry .event-title_glry {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
    font-weight: 500;
}

/* 층별 일정 z-index */
.continuous-event_glry.layer-0_glry { z-index: 20; }
.continuous-event_glry.layer-1_glry { z-index: 19; }
.continuous-event_glry.layer-2_glry { z-index: 18; }
.continuous-event_glry.layer-3_glry { z-index: 17; }
.continuous-event_glry.layer-4_glry { z-index: 16; }

/* 색상 변형 */
.continuous-event_glry.lavender_glry {
    background-color: #FFC6BF !important;
    color: #333;
}

.continuous-event_glry.papayaWhip_glry {
    background-color: #A6E3E9 !important;
    color: #333;
}

.continuous-event_glry.beige_glry {
    background-color: #DEB6EB !important;
    color: #333;
}

.continuous-event_glry.lightCyan_glry {
    background-color: #93CEC2 !important;
    color: #333;
}

.continuous-event_glry.holiday_glry {
    background-color: #ff6b6b !important;
    color: #fff;
}


@media screen and (max-width: 440px) {
	.calendar-container_glry {
	    overflow:auto;
	}
}