  /* ÀüÃ¼ ´Þ·Â °¨½Î´Â ÄÁÅ×ÀÌ³Ê */
    .calendar-inline-container {
        margin-top: 10px;
        width: 100%;
        max-width: 360px;
        box-shadow: 0 4px 12px rgba(0,0,0,0.08);
        background: #fff;
        font-family: 'Pretendard', sans-serif;
        position: relative;
    }

    /* »ó´Ü Ä¿½ºÅÒ ºí·ç Çì´õ */
    .custom-calendar-header {
        background: #4A90E2;
        display: flex;
        width: 100%;
        padding: 10px 16px;
        color: #fff;
        font-weight: 500;
        align-items: center;
        justify-content: space-between;
        box-sizing: border-box;
    }

    .header-left-selectors {
        display: flex;
        align-items: center;
        gap: 6px;
        margin: 0 auto;
    }

    .nav-btn {
        background-color: #000;
        border-radius: 99px;
        border: none;
        color: #fff;
        font-size: 11px;
        cursor: pointer;
        padding: 6px 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
        width: 30px;
        height: 30px;
    }
    .nav-btn:hover { opacity: 0.8; }
    .nav-btn:disabled { background-color: #ccc; cursor: not-allowed; opacity: 0.6; }

    #cal_month_select,
    #cal_year_select {
        -webkit-appearance: auto;
        -moz-appearance: auto;
        appearance: auto;
        background: #fff;
        color: #333;
        border-radius: 4px;
        border: 1px solid #ccc;
        font-family: 'Pretendard', sans-serif;
        font-size: 13px;
        font-weight: 500;
        padding: 2px 4px;
        height: 28px;
        outline: none;
        cursor: pointer;
    }
    #cal_year_select { width: 75px; }
    #cal_month_select { width: 65px; }

    /* ¹Ù´Ò¶ó ´Þ·Â º»Ã¼ ½ºÅ¸ÀÏ¸µ */
    .vanilla-calendar-wrapper {
        padding: 15px;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .month-item {
        width: 100%;
        max-width: 310px;
        /* border: 1px solid #e1e1e1; */
        border-radius: 6px;
        overflow: hidden;
        background: #fff;
    }

    .month-item-header {
        display: flex;
        justify-content: center;
        align-items: center;
        background-color: #4A90E2;
        color: #fff;
        font-size: 16px;
        font-weight: bold;
        padding: 10px 0;
        margin-bottom: 10px;
    }

    .month-item-weekdays-row {
        display: grid;
        grid-template-columns: repeat(7, 1fr);
        text-align: center;
        padding: 0 4px;
        margin-bottom: 5px;
    }

    .month-item-weekdays-row > div {
        color: #333;
        font-weight: bold;
        font-size: 14px;
    }

    .container__days {
        display: grid;
        grid-template-columns: repeat(7, 1fr);
        text-align: center;
        padding: 0 4px 10px 4px;
        
        /* ÀÌ ÁÙÀ» Ãß°¡ÇÏ¿© ÁÖº°(Çàº°) °£°ÝÀ» ¹ú·ÁÁÝ´Ï´Ù */
        row-gap: 8px; 
    }

    .month-item-day {
        font-weight: 400;
        color: #333;
        border-radius: 4px;
        padding: 10px 0;
        cursor: pointer;
        font-size: 14px;
        user-select: none;
        border: 2px solid transparent;
        box-sizing: border-box;
    }
    .month-item-day:hover:not(.is-disabled) {
        background-color: #f0f0f0;
    }

    /* ¿À´Ã ³¯Â¥ ½ºÅ¸ÀÏ */
    .month-item-day.is-today {
        font-weight: bold;
        border: 2px solid #4A90E2;
    }

    /* ¼±ÅÃ ºÒ°¡ ³¯Â¥ (ÃÖ¼Ò ³¯Â¥ ÀÌÀü) */
    .month-item-day.is-disabled {
        color: #ccc;
        cursor: not-allowed;
    }

    /* °ø¹é Ä­ Ã³¸® */
    .month-item-day.is-empty {
        cursor: default;
    }

    /* ½ÃÀÛÀÏ / Á¾·áÀÏ ÇÏÀÌ¶óÀÌÆ® */
    .month-item-day.is-start-date,
    .month-item-day.is-end-date {
        background-color: #4A90E2 !important;
        color: #fff !important;
        border-radius: 4px !important;
    }

    /* ¹üÀ§ ³» Áß°£ ³¯Â¥ ÇÏÀÌ¶óÀÌÆ® */
    .month-item-day.is-in-range {
        background-color: #D0E3FA !important;
        border-radius: 0 !important;
    }

    /* ½ÃÀÛÀÏ°ú Á¾·áÀÏÀÌ 'µ¿ÀÏÇÑ ³¯Â¥'ÀÏ ¶§ÀÇ Æ¯¼ö µðÀÚÀÎ */
    .month-item-day.is-same-date {
        background-color: #2C5E9E !important;
        color: #fff !important;
        border-radius: 4px !important;
    }

    /* ³¯Â¥ È®ÀÎ¿ë °á°ú ºä¾î ½ºÅ¸ÀÏ */
    .calendar-result-view {
        margin-top: 15px;
        font-family: 'Pretendard', sans-serif;
        font-size: 13px;
        color: #555;
        background: #f9f9f9;
        padding: 8px 12px;
        border-radius: 6px;
        border: 1px dashed #ccc;
        max-width: 360px;
        text-align: left;
        box-sizing: border-box;
    }
    .calendar-result-view span {
        font-weight: bold;
        color: #4A90E2;
    }