  body {
    /* 내부 페이지의 body에 스크롤을 허용 */
    overflow-x: auto; 
}  

/* ------------------------------------------- */
    /* 1. 컨테이너 스타일 */
    /* ------------------------------------------- */
    /* ⚠️ 컨테이너 너비를 750px로 설정 */
    .calendar-container {
            background-color: #C4C4C4;
        width: 750px; 
        margin: 20px auto;
        border: 1px solid #ccc;
        border-radius: 8px;
        padding: 15px;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        font-family: Arial, sans-serif;
    }
    /* ------------------------------------------- */
    /* 2. 캔버스 및 기타 요소 스타일 */
    /* ------------------------------------------- */
    #calendarCanvas {
        display: block; 
        /* ⚠️ 너비 750px, 높이 1150px 설정 */
        border: 1px solid #ddd;
        margin: 10px auto; 
    }
    .calendar-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 10px;
        gap: 5px;
    }
    #currentMonthYear { 
        font-size: 1.2em;
        font-weight: bold;
        color: #333; 
        flex-grow: 1;
        text-align: center;
    }
    .custom-text-area { /* 년도 표시 영역 */
        display: flex; 
        justify-content: space-between; 
        align-items: center; 
        margin-top: 10px;
    }
    #customText { /* 년도 텍스트 스타일 */
        font-weight: bold; 
        font-size: 1.5em; 
        color: #FF5733; 
        transition: color 0.3s ease;
    }
    #textChangeBtn { /* 색상 변경 버튼 */
        background-color: #ffe0b2;
        padding: 5px 10px;
        border: 1px solid #ddd;
        cursor: pointer;
        border-radius: 4px;
        font-size: 0.9em;
    }
    #imageUploader {
        display: block;
        width: 100%; 
        margin: 10px 0;
        padding: 8px;
        box-sizing: border-box;
    }
    #downloadBtn {
        display: block;
        width: 100%; 
        padding: 10px;
        background-color: #4CAF50;
        color: white;
        border: none;
        border-radius: 4px;
        cursor: pointer;
        font-size: 1em;
    }
/* ⚠️ CSS 추가/수정: */

#imageUploader {
    display: none; /* 실제 input 요소를 화면에서 숨김 */
}

/* 커스텀 업로드 버튼 (라벨) 스타일 */
#uploadLabel {
    display: block;
    width: 100%; 
    padding: 10px;
    margin: 10px 0;
    text-align: center;
    background-color: #5bc0de; /* 버튼 색상 */
    color: white;
    border-radius: 4px;
    cursor: pointer;
    font-size: 1em;
    transition: background-color 0.3s;
    box-sizing: border-box;
}

#uploadLabel:hover {
    background-color: #31b0d5; 
}