.modal-border{
  border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);
}
.bg-gray-200 {
  background-color: #ebebeb;
}
.option{
    border: 1px solid #dee2e6;
    color:#212529bf;
    padding:0.3rem 1.5rem;
    border-radius:5px;
    margin:0.2rem;
    cursor:pointer;
    font-weight:bold;
    background-color:white;
}
.option.active{
    border: 1px solid #264F6D;
    color:#264F6D;
    padding:0.3rem 1.5rem;
    border-radius:5px;
    margin:0.2rem;
    cursor:pointer;
}
.selectedOption{
    position: relative; /* X定位用 */
    border: 1px solid #264F6D;
    color:#264F6D;
    padding:0.2rem 1rem 0.2rem 0.6rem;
    border-radius:10px;
    cursor:pointer;
    font-size:0.9rem;
    font-weight:bold;
    background:#E5F0FF;
}
/* 已選取選項叉叉 */
.selectedOption::after {
    content: "✕";
    position: absolute;
    top: 6px;
    right: 0px;
    background: #E5F0FF;
    color: #264F6D;
    font-size: 0.85rem;
    line-height: 1;
    border-radius: 50%;
    width: 16px;
    height: 16px;
    text-align: center;
}
.selectedOptionNoX{
    border: 1px solid #264F6D;
    color:#264F6D;
    padding:0.2rem 0.6rem 0.2rem 0.6rem;
    border-radius:10px;
    cursor:pointer;
    font-size:0.9rem;
    font-weight:bold;
    background:#E5F0FF;
}
.type-tab{
    padding:0px !important;
    display:flex;
    flex-direction:column;
    height:100%;
    justify-content:center;
    border-right: 1px solid #dee2e6 !important;
}
.body-container{
    min-height:400px;
    max-height: 600px;
    overflow-y: auto; 
    overflow-x: hidden; 
}
.source-option{
    display:flex;
    gap:0.5rem;
}
.form-check-input{
    width: 1.2em;
    height: 1.2em;
    flex-shrink: 0;/*避免手機版radio擠壓變橢圓形*/
}
@media (min-width: 992px) {
    .type-tab button:first-child {
        border-top: 1px solid #dee2e6 !important;
    }
    .content-box{
        border-top: 1px solid #dee2e6 !important;
    }
    .type-tab button:not(:last-child) {
        border-bottom: 1px solid #dee2e6 !important;
    }
}
@media (max-width: 991px) {
    .body-container {
        min-height: auto; 
        max-height: 400px;
    }
    .type-tab{
        flex-direction:row;
        height:auto;
        border-right: none !important;
    }
    .type-tab button{
        border-top: 1px solid #dee2e6 !important;
        border-bottom: 1px solid #dee2e6 !important;
    }
    .source-option{
        flex-direction:column;
    }
}
@media (max-width: 500px) {
    #monthSalary,
    #hourSalary {
        width: 40% !important;
    }
    .body-container {
        min-height: auto; 
        max-height: 400px;
    }
    .type-tab{
        flex-direction:row;
        height:auto;
        border-right: none !important;
    }
    .type-tab button{
        border-top: 1px solid #dee2e6 !important;
        border-bottom: 1px solid #dee2e6 !important;
    }
    .source-option{
        flex-direction:column;
    }
}