/* /Authenticate/OpenIdProviderLogins.razor.rz.scp.css */
body[b-kxbnmekb9d] {
    font-family: 'Noto Sans KR', sans-serif;
    background-color: #f8f9fa;
}

.btn-google[b-kxbnmekb9d] {
    background-color: white;
    border: 1px solid #ced4da;
    color: #212529;
}

    .btn-google:hover[b-kxbnmekb9d] {
        background-color: #f8f9fa;
        border: 1px solid #ced4da;
    }

.btn-kakao[b-kxbnmekb9d] {
    background-color: #FEE500;
    border: none;
    color: #212529;
}

    .btn-kakao:hover[b-kxbnmekb9d] {
        background-color: #FDD835;
        color: #212529;
    }
/* /Layout/DutyOnLayout.razor.rz.scp.css */
/* /SharedComponents/DutyCalendars/DutyCalendar.razor.rz.scp.css */
.duty-calendar[b-ubkj52b9ih] {
    width: 100%;
    margin: 20px 0;
}

.calendar-header[b-ubkj52b9ih] {
    display: flex;
    justify-content: center;
    margin-bottom: 10px;
    font-weight: bold;
}

.calendar-grid[b-ubkj52b9ih] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
}
/* /SharedComponents/DutyCalendars/DutyCalendarCell.razor.rz.scp.css */
.duty-date-cell[b-boqjhs7ezl] {
    border: 1px solid #ccc;
    padding: 5px;
    position: relative;
    min-height: 80px;
    cursor: pointer;
}

    .duty-date-cell.current-month[b-boqjhs7ezl] {
        background: #fafafa;
        color: #000;
    }


    .duty-date-cell.other-month[b-boqjhs7ezl] {
        background: #f5f5f5;
        color: #aaa;
    }

    .duty-date-cell.weekend[b-boqjhs7ezl] {
        background: #fedc8d;
        color: #000;
    }

    .duty-date-cell.holiday[b-boqjhs7ezl] {
        background: #34d1f5;
        color: #000;
    }

    .duty-date-cell:hover[b-boqjhs7ezl] {
        background: #f0f8ff;
    }

.date-label[b-boqjhs7ezl] {
    font-weight: bold;
    margin-bottom: 5px;
}

.duties[b-boqjhs7ezl] {
    position: relative;
    margin-top: 5px;
}

.duty[b-boqjhs7ezl] {
    position: absolute;
    height: 20px;
    background: lightgreen;
    font-size: 12px;
    overflow: hidden;
    white-space: nowrap;
    border-radius: 3px;
}
/* /SharedComponents/Loading.razor.rz.scp.css */
.dots[b-sgkrb7r0i2] {
    margin: auto auto;
    width: 56px;
    height: 26.9px;
    background: radial-gradient(circle closest-side, #ff9a47 90%, #0000) 0% 50%, radial-gradient(circle closest-side, #ff9a47 90%, #0000) 50% 50%, radial-gradient(circle closest-side, #ff9a47 90%, #0000) 100% 50%;
    background-size: calc(100% / 3) 13.4px;
    background-repeat: no-repeat;
    animation: dots-7ar3yq-b-sgkrb7r0i2 1s infinite linear;
}

@keyframes dots-7ar3yq-b-sgkrb7r0i2 {
    20% {
        background-position: 0% 0%, 50% 50%, 100% 50%;
    }

    40% {
        background-position: 0% 100%, 50% 0%, 100% 50%;
    }

    60% {
        background-position: 0% 50%, 50% 100%, 100% 0%;
    }

    80% {
        background-position: 0% 50%, 50% 50%, 100% 100%;
    }
}
/* /SharedComponents/ModalDialog.razor.rz.scp.css */
.modal-body[b-tpk8vnwplf] {
    /*overflow-x: auto;*/ /* 가로 스크롤 허용 */
    overflow-y: auto; /* 세로 스크롤 허용 */
    max-height: 80vh; /* 화면 높이 기준 제한 */
}

.modal.show[b-tpk8vnwplf] {
    display: block;
}

/* /SharedComponents/RangeLimitInput.razor.rz.scp.css */
.multi-slider[b-ndq82dygo4] {
    position: relative;
    width: 320px;
    height: 2rem;
}

/* 겹치는 range들이 실제로 드래그 가능해야 합니다 */
.slider[b-ndq82dygo4] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 2rem;
    margin: 0;
    background: transparent;
    /* FIX 1: 이벤트 차단 제거 */
    pointer-events: auto;
    /* FIX 2: 기본 UI 유지 (appearance 제거) */
    /* appearance: none;  <-- 제거 */
    accent-color: var(--thumb-color, #2563eb);
    z-index: 1;
}

    /* 겹칠 때 현재 조작 중인 슬라이더가 위로 오게 */
    .slider:hover[b-ndq82dygo4],
    .slider:focus[b-ndq82dygo4] {
        z-index: 2;
    }

/* 색상 지정 */
.hard-min[b-ndq82dygo4] {
    --thumb-color: #ef4444;
}
/* red-500 */
.hard-max[b-ndq82dygo4] {
    --thumb-color: #ef4444;
}

.soft-min[b-ndq82dygo4] {
    --thumb-color: #2563eb;
}
/* blue-600 */
.soft-max[b-ndq82dygo4] {
    --thumb-color: #2563eb;
}

/* 배경 구간 표시 (클릭 가로채지 않게 z-index 0) */
.multi-slider[b-ndq82dygo4]::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    height: 6px;
    width: 100%;
    border-radius: 3px;
    background: linear-gradient( to right, #ef4444 0 var(--hardMinPct, 0%), #2563eb var(--hardMinPct, 0%) var(--softMinPct, 0%), #93c5fd var(--softMinPct, 0%) var(--softMaxPct, 0%), #2563eb var(--softMaxPct, 0%) var(--hardMaxPct, 0%), #ef4444 var(--hardMaxPct, 0%) 100% );
}
/* /SharedComponents/Tooltip.razor.rz.scp.css */
.tooltip-wrapper[b-uic229sdq0] {
    display: inline-flex;
    align-items: center;
    position: relative;
    gap: 8px;
    outline: none;
}

.tooltip-icon[b-uic229sdq0] {
    background: transparent;
    border: none;
    padding: 6px;
    margin: 0;
    cursor: pointer;
    color: inherit;
    font-size: 1.125rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* 기본 패널 스타일 */
.tooltip-panel[b-uic229sdq0] {
    position: absolute;
    min-width: 200px;
    max-width: 360px;
    background: #fff;
    color: #212121;
    border: 1px solid rgba(0,0,0,0.12);
    border-radius: 6px;
    box-shadow: 0 6px 18px rgba(0,0,0,0.12);
    z-index: 1000;
}

/* 오른쪽 배치: 아이콘의 중앙을 기준으로 수평 오른쪽에 표시 */
.tooltip-right[b-uic229sdq0] {
    left: 100%;
    top: 50%;
    transform: translate(10px, -50%);
}

    /* 화살표 (아이콘과 패널 사이) */
    .tooltip-right[b-uic229sdq0]::before {
        content: "";
        position: absolute;
        left: -6px;
        top: 50%;
        transform: translateY(-50%);
        width: 0;
        height: 0;
        border-top: 6px solid transparent;
        border-bottom: 6px solid transparent;
        border-right: 6px solid rgba(0,0,0,0.12);
    }

.tooltip-body[b-uic229sdq0] {
    padding: 12px;
    font-size: 14px;
    line-height: 1.4;
}

.tooltip-footer[b-uic229sdq0] {
    display: flex;
    justify-content: flex-end;
    padding: 8px;
    border-top: 1px solid rgba(0,0,0,0.05);
}

.tooltip-close[b-uic229sdq0] {
    background: transparent;
    border: none;
    color: #0d6efd;
    padding: 6px 10px;
    cursor: pointer;
    font-size: 13px;
}

/* 모바일/좁은 화면에서 패널이 화면 밖으로 나가지 않도록 간단한 조정 */
@media (max-width: 480px) {
    .tooltip-right[b-uic229sdq0] {
        left: auto;
        right: 0;
        top: calc(100% + 8px);
        transform: translateX(0);
    }

        .tooltip-right[b-uic229sdq0]::before {
            display: none;
        }
}
/* /UseCases/ManagerActor/PlanRequests/PlanRequestTable.razor.rz.scp.css */
.order[b-ny5p1hcmwv]{
    width: 2rem;
}

.period[b-ny5p1hcmwv]{
    width: 15rem;
}

.status[b-ny5p1hcmwv]{
    width: 5rem;
}

.result-message[b-ny5p1hcmwv]{
    width: 10rem;
}
/* /UseCases/ManagerActor/Workers/WorkersSorter.razor.rz.scp.css */

.wrapper[b-yc0dnp8gk5] {
    display: flex;   
    height : 60vh;
    overflow-y : auto;
    align-items: start;
    justify-content: center;
}

.sortable-list[b-yc0dnp8gk5] {
    list-style: none;
    width: 300px;
    padding: 30px 35px 20px;
    border-radius: 6px;
    background-color: #fff;
}

    .sortable-list .item[b-yc0dnp8gk5] {
        display: flex;
        align-items: center;
        border-radius: 5px;
        justify-content: space-between;
        border: 1px solid #ccc;
        margin-bottom: 11px;
        padding: 10px 13px;
    }

.item .details[b-yc0dnp8gk5] {
    display: flex;
    align-items: center;
}

    .item .details span[b-yc0dnp8gk5] {
        font-size: 1.13rem;
    }

.item .icon[b-yc0dnp8gk5] {
    cursor: grab;
    font-size: 20px;
    color: #333;
}

    .item .icon:hover[b-yc0dnp8gk5] {
        color: #007bff;
    }

.item.dragging:where(.details, .icon)[b-yc0dnp8gk5] {
    opacity: 0.4;
}

.item.dragging:where(.icon)[b-yc0dnp8gk5] {
    cursor: grabbing;
}
/* /UseCases/ManagerActor/Workers/WorkerTable.razor.rz.scp.css */
.table-container[b-cvb7n6iyiq] {
    max-height: 60vh; /* 화면 높이의 80% */
    overflow-y: auto;
}

    .table-container table[b-cvb7n6iyiq] {
        width: 100%;
        border-collapse: collapse;
    }

    .table-container thead[b-cvb7n6iyiq] {
        position: sticky;
        top: 0;
        /* background: white; /* 또는 배경색을 정해줘야 헤더가 보임 */
        z-index: 1;
    }
/* /UseCases/ManagerActor/WorkGroups/WorkGroupTable.razor.rz.scp.css */
.table-container[b-mfou9n6fng] {
    max-height: 60vh; /* 화면 높이의 80% */
    overflow-y: auto;
}

    .table-container table[b-mfou9n6fng] {
        width: 100%;
        border-collapse: collapse;
    }

    .table-container thead[b-mfou9n6fng] {
        position: sticky;
        top: 0;
        /* background: white; /* 또는 배경색을 정해줘야 헤더가 보임 */
        z-index: 1;
    }
