/* 캘린더 테이블 */
.schedule-cal-table { table-layout: fixed; min-width: 420px; }
.schedule-cal-table th { padding: 8px 4px; font-size: .75rem; }
.schedule-cal-cell {
    vertical-align: top;
    padding: 4px 4px 6px;
    cursor: pointer;
    height: 90px;
    transition: background .15s;
}
.schedule-cal-cell:hover { background: #f0f4ff; }
.cal-empty { background: #fafafa; cursor: default; }
.cal-day-num {
    font-size: .82rem;
    font-weight: 600;
    margin-bottom: 2px;
    width: 22px;
    height: 22px;
    line-height: 22px;
    text-align: center;
    border-radius: 50%;
}
.cal-day-num.today {
    background: #4263eb;
    color: #fff !important;
}
.cal-event-item {
    font-size: .7rem;
    background: #e7f0ff;
    color: #2d5be3;
    border-radius: 3px;
    padding: 1px 4px;
    margin-bottom: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    cursor: pointer;
    transition: background .1s;
}
.cal-event-item:hover { background: #c5d9ff; }
.cal-more { font-size: .65rem; color: #888; padding: 1px 3px; }
.cal-dot-inline {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #4263eb;
    flex-shrink: 0;
    margin-top: 5px;
}
/* 목록 뷰 카드 (Event 스킨의 .event-card 등과 클래스명이 겹치므로 #list-view로 스코프) */
#list-view .event-card { transition: box-shadow .2s, transform .2s; }
#list-view .event-card:hover { box-shadow: 0 4px 16px rgba(0,0,0,.1); transform: translateX(4px); }
#list-view .event-date-box {
    width: 52px;
    background: #f0f4ff;
    border-radius: 10px;
    padding: 6px 4px;
    border: 1px solid #d0d9f5;
}
#list-view .event-date-month { font-size: .65rem; color: #4263eb; font-weight: 600; text-transform: uppercase; }
#list-view .event-date-day { font-size: 1.4rem; font-weight: 700; color: #1a1a2e; line-height: 1.1; }
@media (max-width: 576px) {
    .schedule-cal-cell { height: 64px; }
    .cal-event-item { display: none; }
    .cal-day-num { font-size: .75rem; }
}
