@charset "utf-8";
/* =========================================================================
   광주비상에듀 dex 매거진 톤 캘린더 스타일
   - 색상: --blue #127bca / --navy #1b3a6b / line #e4e9f0 / tint #f1f6fc / paper #faf9f7
   - 폰트: Paperozi(한글) + Crimson Text(숫자/영문) — 테마 head 에서 이미 로드됨
   - 클래스명/구조는 그대로 두고 '보이는 스타일'만 변경 (기능 영향 없음)
   - 이벤트 막대의 사용자 지정 색상은 덮어쓰지 않음
   ========================================================================= */

/* ===== 전체 컨테이너 ===== */
#bo_list { font-family:"Paperozi", sans-serif; }
#calendar { max-width:1320px; margin:0 auto; }

/* 달력 상단 라인 */
.fc-view-harness { border-top:2px solid #1b3a6b; }

/* ===== 상단 툴바 ===== */
.fc .fc-toolbar.fc-header-toolbar { margin-bottom:1.2em; }
.fc-toolbar-chunk:nth-child(1) { width:30%; text-align:left; }
.fc-toolbar-chunk:nth-child(2) { width:40%; text-align:center; }
.fc-toolbar-chunk:nth-child(3) { width:30%; text-align:right; }
.fc-toolbar-chunk > h2 { display:inline-block; padding-top:3px !important; }

/* 툴바 제목 (예: 2026년 6월) */
.fc .fc-toolbar-title {
    font-family:"Paperozi", sans-serif;
    font-size:26px;
    font-weight:800;
    letter-spacing:-0.5px;
    color:#1b3a6b;
}

/* ===== 버튼 (이전/다음/오늘/월·주·일/글쓰기/설정) ===== */
.fc .fc-button {
    border:1px solid #127bca !important;
    background:#127bca;
    color:#fff;
    border-radius:50px;
    padding:8px 18px;
    font-size:14px;
    font-weight:600;
    line-height:1.2;
    text-transform:none;
    box-shadow:none !important;
    transition:background .15s, border-color .15s;
}
.fc .fc-button:hover { background:#1b3a6b; border-color:#1b3a6b !important; color:#fff; }
.fc .fc-button-primary:not(:disabled).fc-button-active,
.fc .fc-button-primary:not(:disabled):active { background:#1b3a6b !important; border-color:#1b3a6b !important; }
.fc .fc-button:focus { outline:none; box-shadow:0 0 0 3px rgba(18,123,202,.2) !important; }
.fc .fc-button:disabled { opacity:.4; }
.fc .fc-button .fc-icon { font-size:1.3em; vertical-align:-2px; }

/* 보기 전환(월/주/일) 묶음은 알약 한 덩어리로 */
.fc .fc-button-group { gap:0; }
.fc .fc-button-group > .fc-button { border-radius:0; margin:0 !important; }
.fc .fc-button-group > .fc-button:first-child { border-radius:50px 0 0 50px; }
.fc .fc-button-group > .fc-button:last-child { border-radius:0 50px 50px 0; }
.fc .fc-button-group > .fc-button:not(:first-child) { border-left:1px solid rgba(255,255,255,.35) !important; }

/* 이전/다음 단독 버튼 간격 */
.fc-prev-button { display:inline-block; }
.fc-next-button { display:inline-block; margin-left:0.6em !important; }
/* 글쓰기/설정 커스텀 버튼 간격 */
#btn-write, #btn-settings, #btn-adminset { margin-left:0.4em !important; }

/* ===== 요일 헤더 (월 ~ 일) ===== */
.fc .fc-col-header-cell {
    height:auto;
    vertical-align:middle !important;
    background:#f1f6fc;
    border-color:#e4e9f0;
}
.fc .fc-col-header-cell-cushion {
    display:inline-block;
    padding:11px 4px !important;
    color:#1b3a6b;
    font-weight:700;
    font-size:14px;
    text-decoration:none;
}

/* ===== 날짜 셀 / 격자 ===== */
.fc-theme-standard td,
.fc-theme-standard th,
.fc-theme-standard .fc-scrollgrid { border-color:#e4e9f0; }
.fc .fc-daygrid-day-frame { padding:2px; }
.fc .fc-daygrid-day-top { height:auto; padding:4px 2px; }
.fc .fc-daygrid-day-number {
    font-size:14px;
    color:#1a1a1a;
    padding:4px 8px;
    text-decoration:none;
}
.fc .fc-daygrid-body-unbalanced .fc-daygrid-day-events { min-height:100px !important; }

/* 토/일 색상 (dex 톤으로 순화) */
.fc-day-sun a, .fc-day-sun a.fc-daygrid-day-number { color:#e05a5a; }
.fc-day-sat a, .fc-day-sat a.fc-daygrid-day-number { color:#127bca; }
.fc-day-sat { background:#f7faff; }
.fc-day-sun { background:#fdf6f6; }

/* 다른 달 날짜는 흐리게 */
.fc .fc-day-other .fc-daygrid-day-top { opacity:.35; }

/* 오늘 날짜: 연한 파랑 배경 + 숫자 원형 강조 */
.fc .fc-day-today { background:#eaf3fb !important; }
.fc .fc-day-today .fc-daygrid-day-number {
    background:#127bca;
    color:#fff !important;
    border-radius:50%;
    min-width:26px;
    height:26px;
    line-height:26px;
    text-align:center;
    padding:0;
    margin:3px;
}

/* ===== 이벤트 막대 (색상은 사용자 지정값 유지) ===== */
.fc-daygrid-event {
    border:none !important;
    border-radius:6px !important;
    font-size:12px !important;
    margin-top:2px !important;
    padding:1px 0;
}
.fc-event-main-frame {
    font-size:12.5px;
    padding:3px 8px;
}
.fc-daygrid-event:hover { filter:brightness(0.93); }
.fc-event-time { font-weight:700; margin-right:3px; }
.fc-h-event .fc-event-main { color:#fff; }

/* '+N 더보기' 링크 & 팝오버 */
.fc .fc-daygrid-more-link { color:#127bca; font-weight:600; font-size:11px; }
.fc .fc-popover { border:1px solid #e4e9f0; border-radius:12px; box-shadow:0 14px 40px rgba(27,58,107,.16); overflow:hidden; }
.fc .fc-popover-header { background:#f1f6fc; color:#1b3a6b; font-weight:700; padding:10px 12px; }
.fc .fc-popover-title { font-family:"Paperozi", sans-serif; }

/* ===== 카테고리 칩 ===== */
#bo_list #bo_cate { background:#faf9f7; border:1px solid #e4e9f0; border-radius:12px; padding:12px 14px; margin:0 0 16px; }
.category {
    display:inline-block;
    background:#1b3a6b;
    color:#fff;
    height:auto;
    line-height:1.6;
    padding:7px 16px !important;
    text-align:center;
    margin-right:6px;
    margin-bottom:4px;
    border-radius:50px;
    font-size:13px;
    font-weight:600;
    cursor:pointer;
    transition:background .15s;
}
.category:hover { background:#127bca; }
.category-active { background:#127bca !important; }

/* ===== 날짜 hover 시 글쓰기(+) 버튼 ===== */
.rumi-write { position:absolute; display:none; top:6px; left:7px; font-size:15px; color:#bcd3ea; cursor:pointer; z-index:10; }
.rumi-write:hover { background:#127bca; color:#fff; border-radius:50%; padding:5px; top:1px; left:2px; }
.fc-daygrid-day-frame:hover .rumi-write { display:block; }

/* ===== 음력 / 공휴일 ===== */
.rumi-lunarday { position:absolute; top:22px; right:5px; font-size:10px; color:#9aa3ad; }
.rumi-lunarholiday { position:absolute; top:5px; left:30px; font-size:11px; color:#e05a5a; }
.week-rumi-lunarset { display:block; width:100%; }
.week-rumi-lunarday { display:inline-block; font-size:11px; color:#9aa3ad; }
.week-rumi-lunarholiday { display:inline-block; font-size:11px; color:#e05a5a; margin-left:8px; }

/* ===== 글쓰기 색상 선택 (clr-list / color-sample) ===== */
.clr-list { list-style:none; margin-left:10px; }
.clr-list > .clr-title { height:26px; line-height:26px; margin-right:10px; }
.clr-list:after { display:block; visibility:hidden; clear:both; content:''; }
.clr-list > li { float:left; }
.clr-list > li .btn-color { display:block; margin:0 1px; width:26px; height:26px; border-radius:6px; border:1px solid #e4e9f0; }
.clr-list > li .user-color { outline:none; border:1px solid #e4e9f0; width:70px !important; text-align:center; border-radius:6px; }
.color-sample { display:block; width:100%; height:42px; line-height:42px; text-align:center; background:#127bca; color:#fff; border-radius:8px; font-weight:600; }

/* ===== 설정 테이블 (fullcalendar 설정) ===== */
.wz_tbl_1,.wz_tbl_1 th,.wz_tbl_1 td { border:0; }
.wz_tbl_1 { width:100%; text-align:center; margin:7px 0 0px; }
.wz_tbl_1 table { clear:both; width:100%; border-collapse:collapse; border-spacing:0; background:#fff; }
.wz_tbl_1 tbody, .wz_tbl_1 tr, .wz_tbl_1 td { vertical-align:middle; }
.wz_tbl_1 caption { display:none; }
.wz_tbl_1 th { height:40px; padding:6px 0; border:1px solid #e4e9f0; color:#1b3a6b; text-align:center; font-weight:700; background:#f1f6fc; }
.wz_tbl_1 td { height:40px; padding:6px 8px; border:1px solid #e4e9f0; color:#3a4250; text-align:left; }
.wz_tbl_1 th span.last:after { border:none; }
.wz_tbl_1 td .numberic { text-align:right; padding-right:4px; }
.wz_tbl_1 ul li { display:inline-block; margin-right:10px; }

/* ===== 일정 상세보기 (view.skin.php) ===== */
#bo_v .scdate-txt { position:relative; display:block; width:100%; height:38px; font-size:14px; border-radius:8px; overflow:hidden; }
#bo_v .scdate-txt span { position:absolute; display:inline-block; color:#fff; }
#bo_v .scdate-txt .date-title { width:110px; top:0; left:0; background:#1b3a6b; text-align:center; padding:9px 0; font-weight:700; }
#bo_v .scdate-txt .date-txt { width:100%; text-align:left; padding:9px 0 9px 124px; background:#127bca; }

/* ===== 반응형 ===== */
@media (max-width:768px) {
    .fc .fc-toolbar.fc-header-toolbar { flex-direction:column; gap:10px; }
    .fc-toolbar-chunk:nth-child(1),
    .fc-toolbar-chunk:nth-child(2),
    .fc-toolbar-chunk:nth-child(3) { width:100%; text-align:center; }
    .fc .fc-toolbar-title { font-size:21px; }
    .fc .fc-button { padding:7px 13px; font-size:13px; }
    #calendar { padding:0 4px; }
}