.fc-direction-ltr { background:transparent !important; } 
.fc .fc-toolbar { justify-content: center; } 
.fc .fc-toolbar.fc-header-toolbar { margin-bottom:20px; } 
.fc .fc-toolbar-title { color: #111; text-align: center; font-size: 24px; font-weight: 700; line-height: 1.4; letter-spacing: -0.6px; } 
.fc .fc-button-primary, .fc .fc-button-primary:hover, .fc .fc-button-primary:not(:disabled).fc-button-active, .fc .fc-button-primary:not(:disabled):active, .fc .fc-button-primary:focus, .fc .fc-button-primary:not(:disabled).fc-button-active:focus, .fc .fc-button-primary:not(:disabled):active:focus { background:transparent; border:0; outline:none; box-shadow:none; } 
.fc ::before { color:#000; opacity:0.2; } 
.fc .fc-button-primary:hover ::before, .fc .fc-button-primary:not(:disabled).fc-button-active:focus ::before, .fc .fc-button-primary:not(:disabled):active:focus ::before { opacity:1; } 
.fc-daygrid-day-events { display: none !important; } 
.fc table { text-align: center; font-size: 20px; font-weight: 700; line-height: 1.4; letter-spacing: -0.5px; } 
.fc-theme-standard .fc-scrollgrid, .fc-theme-standard td, .fc-theme-standard th { border:0; } 
.fc-day-sat .fc-daygrid-day-number { color: #1e88e5; } 
.fc-day-sun .fc-daygrid-day-number { color: #e53935; } 
.fc .fc-col-header-cell-cushion { padding:0; } 
.fc .fc-scroller { overflow:hidden !important; } 
.fc .fc-daygrid-day-number { padding:0; } 
.fc .fc-daygrid-day-top { flex-direction: column-reverse; justify-content: center; align-items: center; } 
.fc .fc-daygrid-day-frame { display: flex; justify-content: center; align-items: center; cursor: pointer; } 
.fc-day-today .fc-daygrid-day-number, .fc-daygrid-day.selected .fc-daygrid-day-number { color: #fff !important; width: auto; height: auto; display: flex; align-items: center; justify-content: center; } 
.fc-daygrid-day-bg { position:absolute; width:48px; height:auto; aspect-ratio: 1/1; border-radius: 100px; left: 50%; top: 50%; transform: translate(-50%, -50%); display:none; } 
.fc-day-today .fc-daygrid-day-bg { background: var(--color-theme); display:block; } 
.fc-daygrid-day.selected .fc-daygrid-day-bg { background:var(--color-theme-hover); display:block; } 
.fc-day-today { background: transparent !important; } 
.event-dot { position:absolute; display: block; width: 8px; height: auto; aspect-ratio:1/1; background: var(--color-theme); border-radius: 100px; right:-10px; top:-10px; } 
.fc-daygrid-day.selected .event-dot { display:none; } 
.event-panel { display: flex; height:70px; padding: 20px 24px; align-items: center; gap: 25px; border-radius: 12px; border: 1px solid var(--color-theme); background: var(--color-theme-opacity); color: #111; font-size: 20px; line-height: 1.4; letter-spacing: -0.5px; } 
.event-panel strong { font-weight: 700; } 
.event-panel p { display:flex; align-items:center; font-weight: 400; gap:12px; } 
.event-panel p > span { display:block; width:6px; height:auto; aspect-ratio: 1/1; border-radius:100px; background:#666; } 
.btn-wrap { display:flex; justify-content: space-between; gap: var(--clamp-size-20); } 
.btn-wrap a { width:50%; display:flex; align-items: center; gap:8px; border-radius:12px; padding:24px; background:url('../img/common/ico-arrow-line-right-black.svg') right 24px center / auto no-repeat #f5f5f5; color: #111; font-size: 20px; font-weight: 600; letter-spacing: -0.5px; } 
 
@media (max-width: 768px){
 .fc .fc-col-header-cell-cushion { padding-bottom:0; } 
 .fc .fc-daygrid-day-frame { padding:15px 0; } 
 .event-panel { margin-top:10px; font-size:16px; padding:20px; gap:10px; } 
 .event-panel p { gap:5px; } 
 .event-panel p > span { width:4px; } 
 .btn-wrap a { font-size:16px; padding:20px; } 
 .fc .fc-daygrid-day-number { font-size:16px; } 
 .fc-daygrid-day-bg { width:70%; max-width:40px; } 
 }

.rental-status-wrap { display:flex; align-items:flex-start; gap:20px; align-items: stretch; } 
.rental-status-wrap > .bx { flex:1; min-width:0; } 

.calendar-legend { display:flex; align-items:center; gap:8px; margin-top:12px; padding:0 4px; } 
.calendar-legend li { display:flex; align-items:center; gap:4px; color:#555; font-size:14px; font-weight:600; } 
.calendar-legend .dot { display:block; width:8px; height:auto; aspect-ratio:1/1; border-radius:100px; background:linear-gradient(180deg, var(--color-theme) 0%, var(--color-theme-opacity) 100%); } 
.calendar-legend .dot.wait { background:#999; } 

.event-dot.wait { background:#999; } 
.event-dot.dot2 { right:0; } 

.rental-detail-wrap { display:flex; align-items:center; justify-content:center; min-height:400px; padding:24px; } 
.rental-empty { display:flex; flex-direction:column; align-items:center; gap:12px; text-align:center; } 
.rental-empty .ico { display:block; width:62px; height:auto; aspect-ratio:1/1; background:url('../img/common/ico-calendar03.svg') center / 100% auto no-repeat; } 
.rental-empty p { color:#666; font-size:16px; font-weight:600; line-height:1.55; letter-spacing: -0.32px; } 

.rental-detail { width:100%; display:flex; flex-direction: column; align-items: center; gap:32px; } 
.rental-detail .date-tit { color: #111; text-align: center; font-size: 24px; font-weight: 700; line-height: 1.4; letter-spacing: -0.6px; } 
.rental-detail .sub-tit { color: #111; font-size: 20px; font-weight: 700; line-height: 1.45; letter-spacing: -0.4px; margin-bottom:20px; } 
.rental-detail .retal-detail-info { width:100%; } 

.timeline-legend { display:flex; align-items:center; gap:8px; margin-bottom:16px; } 
.timeline-legend li { display:flex; align-items:center; gap:6px; color: #555; font-size: 14px; font-weight: 600; line-height: 1.20; letter-spacing: -0.35px; } 
.timeline-legend .dot { display:block; width:8px; height:auto; aspect-ratio:1/1; border-radius:100px; background:#3A8DDE; } 
.timeline-legend .dot.wait { background:#FFC629; } 

.timeline-hours { display:flex; justify-content:space-between; padding-left:106px; margin-bottom:16px; color: #333; font-size: 14px; font-weight: 600; line-height: 1.20; letter-spacing: -0.35px; } 
.timeline-row { display:flex; align-items:center; gap:16px; } 
.timeline-row + .timeline-row { margin-top:8px; } 
.timeline-row .room { flex-shrink:0; width:90px; color: #333; font-size: 16px; font-weight: 600; line-height: 1.55; letter-spacing: -0.32px; } 
.timeline-row .bar-track { position:relative; flex:1; height:29px; border-radius:20px; background:#F5F5F5; } 
.timeline-row .bar { position:absolute; top:0; height:29px; display:flex; align-items:center; justify-content:center; border-radius:200px; color: #FFF; font-size: 12px; font-weight: 600; line-height: 1.4; letter-spacing: -0.24px; white-space:nowrap; overflow:hidden; } 
.timeline-row .bar.confirm { background:#3A8DDE; } 
.timeline-row .bar.wait { background:#FFC629; color:#111; } 

.tit-total { display:flex; align-items:baseline; gap:8px; } 
.tit-total .total { margin-left:auto; color: #111; font-size: 16px; font-weight: 400; line-height: 1.55; letter-spacing: -0.32px; } 
.tit-total .total strong { font-weight:700; } 

@media (max-width: 768px){
 .rental-status-wrap { flex-direction:column; } 
 .rental-detail { gap:12px; } 
 .rental-detail .date-tit { font-size:20px; } 
 .rental-detail .sub-tit { font-size:16px; margin-bottom:10px; } 
 .timeline-hours { padding-left:80px; margin-bottom:8px; font-size:11px; } 
 .timeline-row { align-items:flex-start; gap:6px; } 
 .timeline-row + .timeline-row { margin-top:16px; } 
 .timeline-row .room { width:80px; font-size:14px; } 
 .timeline-row .bar-track { width:100%; height:26px; } 
 .timeline-row .bar { height:26px; font-size:10px; padding:0 4px; } 
 .tit-total .total { font-size:14px; } 
 }

.edu { background: #FFC629 !important; color:#111 !important; } 
.event { background: #3A8DDE !important;  color:#fff !important; } 
.etc { background: #a8a8a8 !important; color:#111 !important; } 
.holiday { background: #e94639 !important; color:#fff !important; } 

.dp00 { background: #a8a8a8 !important; color:#111 !important; }
.dp01 { background:#fbbb01 !important; color:#fff !important; }
.dp02 { background:#38558f !important; color:#fff !important; }
.dp03 { background:#55b031 !important; color:#fff !important; }
.dp04 { background:#53acee !important; color:#fff !important; }
.dp05 { background:#936357 !important; color:#fff !important; }
.dp06 { background:#e94639 !important; color:#fff !important; }
.dp07 { background:#db6138 !important; color:#fff !important; }
.dp08 { background:#e89338 !important; color:#fff !important; }
.dp09 { background:#8b9f40 !important; color:#fff !important; }
.dp10 { background:#50a391 !important; color:#fff !important; }
.dp11 { background:#5189a4 !important; color:#fff !important; }
.dp12 { background:#6f7399 !important; color:#fff !important; }
.dp13 { background:#65beb5 !important; color:#fff !important; }
.dp14 { background:#594f4f !important; color:#fff !important; }
.dp15 { background:#91404f !important; color:#fff !important; }
.dp16 { background:#87aed5 !important; color:#fff !important; }
.dp17 { background:#e98f9b !important; color:#fff !important; }

.schedule-calendar-wrap { position: relative; } 
.calendar-legend { position: absolute; top: 68px; right: 24px; display: flex; align-items: center; gap: 16px; padding: 0 4px; z-index: 2; } 
.calendar-legend li { display: flex; align-items: center; gap: 6px; color: #555; font-size: 14px; font-weight: 600; } 
.event-pill { display: block; margin-top: 4px; padding: 6px 12px; border-radius: 200px; font-size: 12px; font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } 
.calendar-wrap[data-type="notice"] .event-pill,
.calendar-wrap[data-type="notice"] .event-dot-type,
.schedule-item-clickable,
#scheduleSwiperWrapper .swiper-slide[data-schedule-index] { cursor:pointer; }
.schedule-detail-description { white-space:pre-wrap; word-break:break-word; }
.fc .fc-daygrid-day.fc-day-today .event-pill { margin-top:16px; }
.calendar-wrap[data-type="notice"] .fc-toolbar.fc-header-toolbar { margin-bottom:40px; }
.calendar-wrap[data-type="notice"] .fc-daygrid-day-frame { flex-direction: column; justify-content: flex-start; min-height:100px; height:100px; } 
.calendar-wrap[data-type="notice"] .fc-daygrid-day-events { display: block !important; min-height:0; } 
.calendar-wrap[data-type="notice"] .calendar-legend { position:relative; gap:12px; top:unset; right:unset; margin-left:auto; margin-bottom:50px; flex-wrap:wrap; }
.calendar-wrap[data-type="notice"] .calendar-legend .dot { width:12px; }
.calendar-wrap[data-type="notice"] .calendar-legend .dot.etc { background:#a8a8a8; }
.calendar-wrap[data-type="notice"] .calendar-legend .dot.holiday { background:#e94639; }
.calendar-wrap[data-type="notice"] .fc-daygrid-event-harness { display:none; }
.calendar-wrap[data-type="notice"] .fc-day-today .fc-daygrid-day-bg { background: #000; top: -10px; transform: translate(-50%, 0);}
.calendar-wrap[data-type="notice"] .event-dot-wrap { display:flex; justify-content:center; gap:3px; margin:0; position:absolute; right:15%; top:-10px; }
.calendar-wrap[data-type="notice"] .event-dot-type { display:block; width:8px; height:auto; aspect-ratio: 1/1; border-radius:100px; } 
.calendar-wrap[data-type="notice"] .fc-daygrid-body { margin-top:32px; }
.calendar-wrap[data-type="notice"] .fc-daygrid-body-unbalanced .fc-daygrid-day-events { position: unset; max-width:98%; }

.fc-event, .fc-daygrid-event { border: 0; background: transparent; } 

@media (max-width: 768px) {
 .calendar-wrap[data-type="notice"] .fc-toolbar.fc-header-toolbar { margin-bottom:20px; }
 .calendar-wrap[data-type="notice"] .fc-daygrid-day-frame { min-height:80px; height:80px; } 
 .calendar-wrap[data-type="notice"] .fc-day-today .fc-daygrid-day-bg { top:8px; }
 .calendar-wrap[data-type="notice"] .fc-daygrid-body-unbalanced .fc-daygrid-day-events { position:relative; width:100%; }
 .calendar-wrap[data-type="notice"] .event-dot-wrap { right:unset; left:50%; transform:translateX(-50%); top:12px; }
 .event-pill { position:absolute; height: auto; aspect-ratio: 1 / 1; border-radius: 100px; left: 50%; top: -33px; width: 70%; max-width: 40px; display: block; text-indent: -999px; transform: translate(-50%, 0); overflow:hidden; } 
 .calendar-wrap[data-type="notice"] .has-event .fc-daygrid-day-number { color:#fff; } 
.calendar-wrap[data-type="notice"] .calendar-legend { margin-bottom:30px; }
}
