﻿

.rw-textbox {
    padding: 3px 10px;
    height: 26px;
    min-height: 26px;
    font-size: 12px;
    font-weight: 400;
    border-radius: 0;
    border: 1px solid rgba(var(--bs-gray-300-rgb), 1);
    width: 100%;
}

    .rw-textbox:focus {
        outline: none;
    }

    .rw-textbox::placeholder {
        color: var(--bs-text-gray-400);
        font-style: italic;
        opacity: 0.7;
    }


.rw-item-container {
    font-family: "Pretendard";
}

    .rw-item-container .rw-item-header {
        width: 120px;
        padding: 6px 0px;
        color: var(--bs-text-gray-900);
        font-weight: 400 !important;
        font-size: 12px !important;
    }

    .rw-item-container .rw-item-content {
        font-size: 12px !important;
        font-weight: 400 !important;
        width: 330px;
    }

    .rw-item-container .rw-item-content-auto {
        font-size: 12px !important;
        font-weight: 400 !important;
        width: auto;
    }

    .rw-item-container .rw-item-content .rw-textbox {
        padding: 3px 10px;
        height: 26px;
        min-height: 26px;
        font-size: 12px;
        font-weight: 400;
        border-radius: 0;
        border: 1px solid rgba(var(--bs-gray-300-rgb), 1);
        width: 100%;
    }

    .rw-item-container .rw-file-upload {
        height: 32px;
        /*  background-color: #efefef !important; */
        overflow: hidden;
        padding: 3px 8px !important;
    }

    .rw-item-container .rw-option-list {
        gap: 5px !important;
    }

    .rw-item-container .rx-popover-content {
        background-color: rgba(var(--bs-gray-200-rgb), 1) !important;
        border: 1px solid rgba(var(--bs-gray-300-rgb), 1) !important;
        font-family: "Pretendard";
        font-size: 12px !important;
        font-weight: 400 !important;
    }

    .rw-item-container .rw-option-icon {
        font-size: 17px !important;
    }



/* 스위치 크기 조정 */
.rw-textbox-switch {
    padding-left: -46px !important;
    margin: 0 !important
}

    .rw-textbox-switch .form-check-input {
        width: 60px;
        height: 20px;
        transition: all 0.3s ease !important;
    }

        .rw-textbox-switch .form-check-input:checked {
            background-color: #0d6efd;
            border-color: #0d6efd;
        }

        .rw-textbox-switch .form-check-input:focus {
            box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
        }

    .rw-textbox-switch .form-check-label {
        margin: 0 !important;
        padding: 0 !important;
        /*    margin-left: 0.5rem;
    font-size: 0.875rem;*/
    }

    .rw-textbox-switch .form-check-input:checked {
        background-color: #ff0000; /* 빨간색으로 변경 */
        border-color: #ff0000; /* 빨간색으로 변경 */
    }

    .rw-textbox-switch .form-check-input:focus {
        box-shadow: 0 0 0 0.25rem rgba(255, 0, 0, 0.25); /* 빨간색으로 변경 */
    }

/* 라디오 버튼 크기 조정 */
.rw-textbox-radio {
    appearance: none;
    /* border: max(2px, 0.0em) solid #ccc; */
    border: 1px solid var(--bs-text-gray-600);
    border-radius: 100%;
    width: 15px;
    height: 15px;
    transition: border 0.1s ease-in-out;
}


    .rw-textbox-radio:checked {
        /* border: 8px solid tomato; */
        background-color: tomato;
        border-color: tomato;
    }


/* 체크박스 크기 및 스타일 조정 */
.rw-textbox-checkbox {
    appearance: none;
    border: 1px solid var(--bs-text-gray-600);
    border-radius: 1px; /* 체크박스는 보통 둥근 모서리를 가집니다 */
    width: 14px !important;
    height: 14px !important;
    transition: all 0.1s ease-in-out;
}

    .rw-textbox-checkbox:checked {
        background-color: tomato !important;
        border-color: tomato;
        position: relative;
    }

        /* 체크 표시 추가 */
        .rw-textbox-checkbox:checked::after {
            /*content: '\2714';*/ /* 체크 표시 유니코드 */
            font-size: 12px;
            color: white;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
        }


.rw-textbox-label {
    width: auto;
    color: var(--bs-text-gray-700);
    font-size: 12px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}


.rw-textbox-input {
    background-color: var(--bs-white);
    color: var(--bs-text-dark);
}






.rw-combobox-container {
    position: relative;
    width: 100%;
}

    .rw-combobox-container .options-container {
        position: absolute;
        width: 100%;
        max-height: 200px;
        overflow-y: auto;
        border: 1px solid #ccc;
        background-color: white;
        z-index: 1000;
        opacity: 0;
        transition: opacity 0.2s ease-in-out;
    }

        .rw-combobox-container .options-container.show {
            opacity: 1;
        }

    .rw-combobox-container .option-item {
        padding: 5px 10px;
        cursor: pointer;
    }

        .rw-combobox-container .option-item:hover, .option-item.selected {
            background-color: #f0f0f0;
        }

        .rw-combobox-container .option-item.highlighted {
            background-color: #e6f7ff !important
        }

    .rw-combobox-container .rw-textbox {
        padding: 3px 10px;
        height: 26px;
        min-height: 26px;
        font-size: 12px;
        font-weight: 400;
        border-radius: 0;
        border: 1px solid rgba(var(--bs-gray-300-rgb), 1);
        border-right: none !important;
        width: 100%;
    }

    .rw-combobox-container .rx-combo-toggle {
        border: 1px solid rgba(var(--bs-gray-300-rgb), 1);
        border-left: none;
    }


.rx-scroll {
    --bs-scrollbar-size: 9px;
    --bs-scrollbar-color: rgba(136, 136, 136, 0.5);
    --bs-scrollbar-hover-color: rgba(85, 85, 85, 0.7);
    --bs-scrollbar-min-thumb-size: 120px;
}

    /* 공통 스크롤바 스타일 */
    .rx-scroll::-webkit-scrollbar {
        width: var(--bs-scrollbar-size);
        height: var(--bs-scrollbar-size);
    }

    .rx-scroll::-webkit-scrollbar-thumb {
        background-color: var(--bs-scrollbar-color) !important;
        border-radius: calc(var(--bs-scrollbar-size) / 2) !important;
        border-width: calc(var(--bs-scrollbar-size) / 2) !important;
        border-block-style: solid !important;
        border-color: var(--bs-scrollbar-color) !important;
        background-clip: padding-box !important;
        max-height: var(--bs-scrollbar-max-thumb-size) !important;
        max-width: var(--bs-scrollbar-max-thumb-size) !important;
    }

    .rx-scroll::-webkit-scrollbar-track {
        background-color: transparent;
    }

    .rx-scroll::-webkit-scrollbar-thumb:hover {
        background-color: var(--bs-scrollbar-hover-color) !important;
        border-color: var(--bs-scrollbar-hover-color) !important;
    }

/* rx-scroll-y */
.rx-scroll-y {
    overflow-y: auto;
    overflow-x: hidden;
}

/* rx-scroll-x */
.rx-scroll-x {
    overflow-x: auto;
    overflow-y: hidden;
}

/* 호버 효과를 위한 기본 설정 */
.rx-scroll-hover-y, .rx-scroll-hover-x {
    transition: all 0.5s;
}

/* rx-scroll-hover-y */
.rx-scroll-hover-y {
    overflow-y: auto;
    overflow-x: hidden;
}

    .rx-scroll-hover-y::-webkit-scrollbar-thumb {
        background-color: transparent !important;
        border-color: transparent !important;
        transition: background-color 0.3s;
    }

    .rx-scroll-hover-y:hover::-webkit-scrollbar-thumb {
        background-color: var(--bs-scrollbar-color) !important;
        border-color: var(--bs-scrollbar-color) !important;
    }

/* rx-scroll-hover-x */
.rx-scroll-hover-x {
    overflow-x: auto;
    overflow-y: hidden;
}

    .rx-scroll-hover-x::-webkit-scrollbar-thumb {
        background-color: transparent !important;
        border-color: transparent !important;
        transition: background-color 0.3s;
    }

    .rx-scroll-hover-x:hover::-webkit-scrollbar-thumb {
        background-color: var(--bs-scrollbar-color) !important;
        border-color: var(--bs-scrollbar-color) !important;
    }



/* rx-tree-view */

.rx-tree-view {
    font-family: 'Pretendard';
    padding: 0px;
    font-size: 12px;
}

.rx-tree-view-item {
    margin: 6px 0;
}


    .rx-tree-view-item.selected > .item-content {
        background-color: #e6f3ff;
        border-color: #1890ff;
    }

    .rx-tree-view-item .item-content {
        display: flex;
        align-items: center;
        /* background-color: #fff; */
        /* border: 1px solid #e0e0e0; */
        border-radius: 0px;
        padding: 0px 0px;
    }

    .rx-tree-view-item .toggle {
        width: 10px;
        margin-right: 10px;
        cursor: pointer;
    }

    .rx-tree-view-item .toggle-icon {
        display: inline-block;
        width: 16px;
        height: 16px;
        text-align: center;
        line-height: 16px;
        font-weight: bold;
    }

        .rx-tree-view-item .toggle-icon.empty {
            color: #ccc;
        }

    .rx-tree-view-item .item-name {
        flex-grow: 1;
    }

    .rx-tree-view-item .badge {
        background-color: #ccc;
        color: white;
        border-radius: 5px;
        padding: 2px 3px;
        font-size: 10px;
    }

.rx-tree-view .children {
    margin-left: 10px;
}

.has-children > .item-content {
    /* font-weight: bold; */
}





.rx-drawer {
    position: fixed;
    top: 0;
    height: 100%;
    background-color: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease-in-out;
    z-index: 1000;
}

    .rx-drawer.right {
        right: 0;
        transform: translateX(100%);
    }

    .rx-drawer.left {
        left: 0;
        transform: translateX(-100%);
    }

    .rx-drawer.open {
        transform: translateX(0);
    }

.rx-drawer-content {
    padding: 20px;
    height: 100%;
    overflow-y: auto;
}


.rw-fileupload-image-container {
    max-width : 100% !important;
}
