.day-group {
      display: flex;
      gap: 4px;
    }

    .day-group input[type="checkbox"] {
      display: none;
    }

    .day-label {
      display: inline-block;
      padding: 12px;
      border-radius: 10px;
      background-color: var(--blue-50, #EEF3FD);
      color: var(--blue-200, #B3C9F4);
      font-size: 1rem;
      cursor: pointer;
      user-select: none;
      transition: all 0.2s ease;
    }

    /* 선택된 상태 */
    .day-group input[type="checkbox"]:checked + .day-label {
      background-color: #4e8ef7;
      color: white;
      font-weight: 500;
    }

    /* hover 효과 */
    .day-label:hover {
      background-color: #dbe7ff;
    }


    .timepicker-container {
    position: relative;
}

.input_item_label:has(.btn-search) > .input_bx{
 width: calc(100% - 188px);
}
.input_item_label .btn-search{
    width: 48px;
    height: 48px;
    display: inline-flex;
    padding: 0;
    align-items: center;
    justify-content: center;
}
.icon{
    width: 24px;
    height: 24px;
    background-repeat: no-repeat;
    background-size: 24px;
    background-position: center;
    display: block;
}
.icon.search{
    background-image: url('/theme/bootstrap5-basic/img/search_btn.svg');
}
.timepicker-container::after{
    width: 24px;
    height: 24px;
    content: '';
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    background-image: url('/theme/bootstrap5-basic/img/input_icons.png');
    background-size: auto 24px;
    background-position: -96px 0; /* 시계 아이콘 위치 (0 -24px는 달력 아이콘) */
    background-repeat: no-repeat;
    pointer-events: none;
}

.bootstrap-timepicker-widget table td input {
    width: 30px;
    border: 0;
}


.search_box{
    padding: 20px;
    border-radius: 20px;
background: var(--light-50, #F9FAFB);

> form{
display: flex;
flex-direction: column;
gap: 10px;
}

.input_item_label {
    > label {
        width: auto;
        min-width: 60px;
        padding-top: 14px;
    }
}
}
.program_list_bx{
  margin-top: 40px;
  .total{
    padding: 0 20px;
    color: var(--text, #1F1F1F);
font-weight: 700;
margin-bottom: 10px;
display: block;
  }
}
.program_list{

}
.program_item{
  width: 100%;
}
.program_item + .program_item{
  margin-top: 10px;
}
.sub_program_card{
  width: 100%;
  border-radius: 20px;
border: 1px solid var(--border, #D9D9D9);
background: var(--white, #FFF);
display: flex;
gap: 1rem;
padding:20px;
}
.sub_program_card:hover{
  border: 1px solid var(--primary-500);
  box-shadow: 0 4px 20px 0 rgba(116, 143, 194, 0.25);
}
.program_info{
  display: flex;
  flex-direction: column;
  gap: 1rem;
  width: calc(100% - 125px - 1rem);
  dl {
    display: flex;
    gap: 0.5rem;
    dd + dt {
      margin-left: 20px;
    }
  }
}
.program_current{
  width: 125px;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  border-radius: 10px;
background: var(--blue-50, #EEF3FD);
padding: 12px;
align-items: center;
justify-content: center;
  > * {
    display: flex;
  flex-direction: column;
  gap: 0.5rem;
  align-items: center;
  }
  h6{
    color: var(--sub_text, #5B5B5B);
text-align: center;
font-weight: 700;
  }
  .program_online{
    > p {
      color: var(--sub_text, #5B5B5B);
      > span{
        font-size: 2rem;
        color: var(--primary-500, #185BD8);
        font-weight: 700;
      }
    }
  }
  .program_offline{
    .offline_on, .offline_off{
padding: 4px 10px;
border-radius: 5px;
color: var(--white);
width: 100%;
text-align: center;
line-height: normal;
    } 
    .offline_on{
background: var(--blue-500, #598AE6);
    }
    .offline_off{
background: var(--light-600, #B4BBBF);
    }
  }
}
.program_top{
  display: flex;
  justify-content: space-between;
  align-items: center;
  .badge{
    padding: 8px 16px;
    font-size: 0.875rem;
    font-weight: 400;
  }
  .badge.text-bg-light{
    color: var(--white) !important;
  }  
}


/*상세페이지*/

.program_tit_card{
  .program_top{
  display: flex;
  justify-content: center;
  gap: 10px;
  
}
.program_tit{
  width: 100%;
  text-align: center;
  margin-bottom: 40px;
    font-weight: 700;
}
.program_info{
    width: 100%;
  }
}



.alert{
  border-radius: 5px;
}

.radio-card {
    position: relative;
    display: inline-flex;
    padding: 20px;
    border-radius: 20px;
    border: 1px solid var(--border, #D9D9D9);
    text-align: center;
    cursor: pointer;
    width: 100%;
    transition: 0.3s;
    gap: 10px;
    align-items: center;
}
.radio-card:has(input[type="radio"]:checked){
border: 3px solid var(--blue-500, #598AE6);
padding: 18px;
background: var(--white, #FFF);

/* active_shadow */
box-shadow: 0 4px 10px 0 rgba(24, 91, 216, 0.20);
}

.radio-card input[type="radio"] {
    display: none;
}
.radio-card .content{
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: flex-start;
}
.radio-card img {
    width: 200px;
    height: auto;
}

.radio-card h5 {
}

.radio-card p {
    margin: 0;
    color: var(--sub_text);
}


.radio-card::before {
    position: relative;
    content: '';
    width: 40px;
    height: 40px;
    background-color: var(--light-100, #EDF0F1);
    border-radius: 20px;
    border: 1px solid var(--light-200, #E5E8EA);
}

.radio-card:has(input[type="radio"]:checked)::before { 
    background-color: var(--primary-500);
    border: 1px solid var(--blue-500);
    background-image: url('/theme/bootstrap5-basic/img/white_check.svg');
    background-size: 24px;
    background-position: center;
    background-repeat: no-repeat;
}

.radio-card + .radio-card{
  margin-top: 10px;
}

.big_btns{
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 40px;
  button{
    width: 100%;
    max-width: 240px;
  }
}
@media (max-width: 991.98px) {
  
}
@media (max-width: 767.98px) {
  .input_item_label .btn-search {
    width: 40px;
    height: 40px;
  }
  .search_box {
    padding: 12px;
        > form {
        gap: 7px;
    }
        & .input_item_label {
        > label {
            padding-top: 4px;
        }
    }
  }
  .sub_program_card {
    flex-direction: column;
  }
  .program_info {
    width: 100%;
}
  .program_current {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    h6 {
      white-space: nowrap;
    }
    > * {
      width: 50%;
        display: flex;
        flex-direction: row;
        gap: 0.5rem;
        align-items: center;
        justify-content: center;
    }
}
.sub_program_card {
    padding: 10px;
}
}
@media (max-width: 575.98px) {
  .program_current {
    flex-wrap: wrap;
    > * {
      width: 100%;
    }
}
.program_info {
  gap: 0;
  .program_tit{
    margin-top: 10px;
    margin-bottom: 10px;
  }
    dl {
        margin-bottom: 0rem;
            display: block;
                dd + dt {
            margin-left: 0px;
            
        }
        > *{
              display: inline-block;
              float: left;
            }
        >dt{
          width: 30%;
          margin-top: 4px;
        }
        > dd{
          width: 70%;
          margin-top: 4px;
        }

    }
}
}