/* 검색영역 */
.search_board {width:100%}
.search_board_wrap {
  display: flex; align-items: center; gap:1rem;
}
.search_board2 {
  width:100%;
  display: flex; gap:.5rem;
}
.search_board2 .search_board_wrap2 {
  width:100%; 
}

.search_board2 .search_board_wrap2 .search_row{
  display:flex; gap:1rem; align-items:center; width:100%;
}

.owner_id:not(:has(*)) { display: none; }
.owner_id:not(:has(> select)) { display: none; }

.owner_id,
.search_type{ 
  display:flex; gap: .5rem; align-items:center;
}
.search_type{ width: 100%;}

.owner_id select,
.search_type select,
#SearchWord{
  height:38px; 
  border:1px solid var(--color-6);
  border-radius:6px;
  padding:0 12px;
  font-size:15px;
  font-weight:500;
  box-sizing:border-box;
}

#SearchWord{ flex:1 1 auto; min-width:0; }

.search_type select{
  flex:0 0 200px; min-width:120px;
}
.owner_id select{
  flex:0 0 200px; min-width:160px;
}

.info_text { 
  min-width:2.6rem; font-weight: 700; 
  font-size: .9rem; color:var(--blue-1);
}


/* 리스트용 테이블 스타일 */
.support_board_list {
  width: 100%; 
  margin-bottom: 3rem;
}

.support_board_list table {
    font-size: .9rem;
    width: 100%; 
    border-top: var(--border-3);
    border-bottom: var(--border-2);
    border-collapse: collapse; 
    table-layout: fixed;
}
.support_board_list thead th {
    background-color: var(--gray-6);
    font-weight: 600; 
}

.support_board_list thead th:nth-child(1) { width: 15%; min-width: 30px; }
.support_board_list thead th:nth-child(2) { width: 15%; min-width: 80px; }
.support_board_list thead th:nth-child(3) { width: auto; }
.support_board_list thead th:nth-child(4) { width: 25%; min-width: 100px; }

.support_board_list tbody td,
.support_board_list thead th {
  border-bottom: none; 
}

.support_board_list thead tr,
.support_board_list tbody tr {
  border-bottom: var(--border-1); 
}

.support_board_list thead th, 
.support_board_list tbody td {
  padding:1rem .5rem;
  vertical-align: middle;
  text-align: center;
  white-space: nowrap;  
}

.support_board_list tbody tr:nth-child(even) {
    background-color: var(--gray-7); 
}

.support_board_list .num{ 
  display: flex; justify-content: center;
}
.support_board_list .company span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
    max-width: 100%; 
}
.support_board_list .title {
  text-align: left;
}
.support_board_list .title span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
    max-width: 100%; 
}

.support_board_list .date span {
    white-space: nowrap;
    display: block;
    text-align: center;
    width: 100%;
}

.support_board_list tbody td a {font-size: .95rem;}
.support_board_list tbody td a:hover { color:var(--blue-1)}

.pagination {
  display: flex; gap:2rem; 
  align-items: center; justify-content: center;
}
.pagination .page_number {
  display: flex; gap:1rem; font-size: .9rem;
}
.pagination .page_number a {
  display: block; color: var(--gray-2); font-weight: 600;
  width:auto; padding:0 .5rem;
  height:24px; text-align: center;
  line-height: 24px;
}
.pagination .page_number a.active {
  background-color: var(--blue-1);
  border-radius: 3px;
  color: var(--white);
}


/* 투찰율 실적배수 */
.owner_title_wrap {
  padding:1rem 0 1rem 0;   
}

.owner_title {
  display: flex; justify-content: space-between; align-items: center;
}
.owner_title h3 {
  font-size: 1.1rem; color:var(--blue-2)
}

.owner_container {
  width: 100%;
}

.owner_content {
  overflow-x: auto;
  width: 100%;
  -webkit-overflow-scrolling: touch;
}

.owner_content table {
  border-top: var(--border-3);
  font-size: .9rem;
  line-height: 1.2rem;
  color: var(--gray-2);
  width: 100%;        /* 🔹 고정폭 대신 100% */
  min-width: 600px;   /* 🔹 최소폭만 설정 (내용에 맞게 조정 가능) */
  border-collapse: collapse;
  table-layout: auto; /* 🔹 컬럼 크기 자동 조정 */
  word-break: break-word;
}
.owner_content table tr{
  border-bottom:var(--border-1)
}

.owner_content table tbody tr th {
  border: 1px solid #c2c2c2;
  vertical-align: middle;
}
.owner_content>table>tbody>tr>td {
  white-space: normal;
  word-break: break-word;
} 
.owner_content table th,
.owner_content table td {
  white-space: normal; 
  word-break: break-word;
  padding:.7rem; 
  border-bottom:var(--border-1);
  border-left:var(--border-1);
  border-right:var(--border-1);

}
.owner_content table tr th {
  color:var(--gray-1);
  background-color: var(--gray-5);
}

.owner_content table .sisl_btn {
  padding:.2rem;
  border-radius: 3px;
  font-size: .8rem; 
  border: var(--border-1);
  background-color: var(--gray-1);
  color: var(--white);
}

.tr-color {
  background-color: var(--gray-7);
}
.owner_text_wrap{
  padding:1.5rem 2rem;
}
.owner_text_wrap h4 {
  color:var(--gray-1);
}
.owner_text_wrap h4::before{
  content: url("/assets/images/svg/dot_red.svg");
  position: relative; right:5px; bottom: 2px;
}
.owner_text_wrap ul {
  padding:.5rem .5rem; color: var(--gray-2);
}


.aver_title_wrap {
  padding:1rem 0 1rem 0;   
}

.aver_title {
  display: flex; justify-content: space-between; align-items: center;
}
.aver_title h3 {
  font-size: 1.1rem; color:var(--blue-2)
}
.aver_tap select{
  width:100%; 
  height: 38px; border:1px solid var(--color-6); 
  border-radius:6px; 
  padding:0 12px; font-size:15px; 
  font-weight:500;
  box-sizing: border-box; 
}
.aver_tap_list {
  display: flex; justify-content: space-around;
}
.aver_tap_list li{
  padding:.7rem .3rem;
  flex: 1; text-align: center;
  background-color: var(--gray-2);  
}

.aver_tap_list li a{ color:var(--white); font-size: .9rem; font-weight: 600;}
.aver_tap_list li.active{
  flex: 1;
  color: var(--white);
  background-color: var(--gray-1);
}
.tab_box { display: none; }
.tab_box.active { display: block;}
.aver_tap_content .tab_box {
  font-size: .9rem; 
}
.aver_tap_content .tab_box .tab_box_text {
  display: flex; flex-direction: column; gap: .2rem;
}
.aver_tap_content .tab_box h3{ 
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  border: var(--border-1);
  border-radius: .5rem;
  color:var(--gray-1); 
  text-align: center;
  background-color: var(--gray-7);
  padding: .8rem 0 .8rem 0 ; font-size: 1.1rem;
  box-shadow: 1px 1px 2px 0 rgba(0,0,0,0.2)
} 
.aver_tap_content .tab_box h4{ color:var(--gray-2);}
.aver_tap_content .tab_box h4::before{  
  content: url("/assets/images/svg/dot_red.svg");
  position: relative; right:0px; bottom: 2px;
  padding:5px;
} 


.rate_table_wrap {
  display: flex; flex-wrap: wrap; justify-content: space-between; gap:2%;
}

.rate_table_wrap table {
  border-top: var(--border-3);
  font-size: .9rem;
  line-height: 1.2rem;
  color: var(--gray-2);
  width: 48%;  
  flex: 1 1 calc(50% - 1rem);
  box-sizing: border-box;
}
.rate_table_wrap table tr{
  border-bottom:var(--border-1)
}

.rate_table_wrap table tbody tr th {
  border: 1px solid #c2c2c2;
  vertical-align: middle;
}
.rate_table_wrap>table>tbody>tr>td {
  white-space: normal;
  word-break: break-word;
} 
.rate_table_wrap table th,
.rate_table_wrap table td {
  white-space: normal; 
  word-break: break-word;
  padding:.7rem; 
  border-bottom:var(--border-1);
  border-left:var(--border-1);
  border-right:var(--border-1);
}

.owner_content table {
  border-top: var(--border-3);
  font-size: .9rem;
  line-height: 1.2rem;
  color: var(--gray-2);
  width: 100%;  
  flex: 1 1 calc(50% - 1rem);
  box-sizing: border-box;
}
.owner_content table tr{
  border-bottom:var(--border-1)
}

.owner_content table tbody tr th {
  border: 1px solid #c2c2c2;
  vertical-align: middle;
}
.owner_content>table>tbody>tr>td {
  white-space: normal;
  word-break: break-word;
} 
.owner_content table tbody tr th {
  color:var(--blue-1);
}
.owner_content table th,
.owner_content table td {
  white-space: normal; 
  word-break: break-word;
  padding:.7rem; 
  border-bottom:var(--border-1);
  border-left:var(--border-1);
  border-right:var(--border-1);
}
.owner_content table colgroup{display: none;}
.blank {display: none;}

.h-scroll{
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.h-scroll > table{
  width: auto;  
  max-width: none; 
  table-layout: fixed; 
  border-collapse: collapse;
  padding-bottom: 1rem;
}

/* 경영상태평균비율 */
.sub_title {
  padding:1rem;
  font-size: 1.2rem; color:var(--blue-1);font-weight: 600;
}
.ratiotab {
  display: flex; flex-wrap: wrap; gap:.5rem; 
  padding-bottom: 1rem;
}
.ratiotab a {
  border: var(--border-1);
  border-radius: .3rem;
  padding:.7rem .3rem; flex: 1;
  text-align: center;
  white-space: nowrap;
}

.ratiotab_select {
  padding:.5rem;
  display: flex; gap:1rem;  
}
.ratiotab_select select {
  width:100%; 
  height: 38px; border:1px solid var(--color-6); 
  border-radius:6px; 
  padding:0 12px; font-size:15px; 
  font-weight:500;
  box-sizing: border-box;   
}


.toggle_tab  { 
  color:var(--gray-2);
  width:100%;
}

.toggle_tab h3 {color:#2263ad; padding:.5rem;}
.txtbox {
  border:var(--border-1);  
  padding:1rem;
}
.toggle_tab table {
  min-width: 1000px;
  overflow-x: auto;
  overflow-y: auto;
}

.toggle_tab table tbody tr th {
  background-color: var(--gray-6); 
  color:var(--blue-1);
}
.toggle_tab table tbody tr th,
.toggle_tab table tbody tr td {
  border:var(--border-1);
  padding:.5rem; 
}

.toggle_tab strong { 
  color:var(--red-1); line-height: 30px; margin-bottom: .5rem
}
.toggle_tab .blank {display: none;}


/* 자치단체 일반용역 */
#local_yong_div {
    margin: 0 auto;
    width:calc(100% - 30px);
    padding:1rem 0;
    box-sizing: border-box;
}
#local_contents {width:100%}
.sub_navi_980 {width:100%}

#content_90p {
    width:100%; 
}
.ncenter { 
  display: flex; justify-content: space-between; align-items: center;
  box-sizing: border-box;
 
}
.local_sort {width:100%}

.local_sort>table {
  font-size: 1rem;
    border-top:var(--border-3);
    border-bottom:var(--border-1);
    width:100%;
}

.local_sort>table a{white-space: nowrap;}

.local_sort td{
    margin:0;
    padding:.7rem ;
    border-bottom:1px solid #ddd; 
    box-sizing:border-box;    
  }

.field_sort {
    width: 100%; display: flex; gap:.5rem;
    padding:1rem 0;
}
.field_sort .field_title { 
  font-size: 1rem;
    cursor: pointer;
    background-color: var(--gray-6);
    border: var(--border-1);
    padding:.3rem 1rem;
    border-radius: .3rem;
    white-space: nowrap;
}
.field_sort .pointer { 
    border: var(--border-1);
    padding:.3rem 1rem;
    border-radius: .3rem;
}

#local_content_div{
  width:100%;
  color: var(--gray-3);
}
.local_title {
    width:100%;  
    padding:1rem;
    color:var(--gray-1); 
    border-bottom: var(--border-2);
}
.main_title{
    color:var(--blue-1);
    font-size: 1.2rem;
}
.bold {font-weight: 600;}

.contents_comment {
    color:var(--gray-2); line-height: 1.5rem;    
}

.contents_comment_title {
    color:var(--gray-2); line-height: 1.5rem;
    padding:.5rem;
}

.contents_comment_contents {
    border:var(--border-1);
    color:var(--gray-1);
    padding:1rem;
    line-height: 1.5rem;
    margin: 1rem 0;
    width: 100%;
    box-sizing: border-box;
    background-color: var(--gray-7)
}

.contents_table{
    width:100%;
    line-height: 1.5rem;
}
.table_title_div {padding:.5rem 0; color: var(--gray-2);}
.contents_table>table {
    border-top:var(--border-2);
    width:100%;
    margin:1rem 0;
    font-size: .9rem;
}
.contents_table>table>thead>tr {
    border-bottom:var(--border-1);
}
.contents_table>table>thead>tr>th {
    background-color: var(--gray-6);
    color:var(--blue-1);
    padding:1rem; white-space: nowrap;
}
.contents_table>table>thead>tr>th,
.contents_table>table>tbody>tr>td{
    border:var(--border-1); 
    line-height: 1.5rem;    
}
.division {
    text-align: left;
    line-height: 1.5rem;
}

.beRed {color:var(--red-1)}
.beBlue {color:var(--blue-1)}
.note_01 { 
    font-weight: 600; font-size: .9rem; color:var(--blue-3);
    padding:.5rem 0; 
}
.aleft { text-align: left;}

/* 온라인 교육동영상 */
.lecture_container colgroup{ display:table-column-group; }
.lecture_container col{ display:table-column; }

.lecture_container table{
  width:100%;
  border-collapse: collapse;
  border-top:var(--border-3);
  border-bottom:var(--border-2);
  margin:1rem 0;
  font-size: 1rem;
}
.lecture_container thead{ display:table-header-group; }
.lecture_container tbody{ display:table-row-group; }
.lecture_container tr{ display:table-row; }
.lecture_container th, .lecture_container td{
  display:table-cell;
  padding:.7rem 1rem;
  color:var(--gray-2);
  border:0;
}
.lecture_container td:nth-child(1) {
  font-weight: 900;
}
.lecture_container td:nth-child(2) {
  color:var(--blue-1); font-weight: 700;
}
.lecture_container thead tr,
.lecture_container tbody tr{ 
  border-bottom: var(--border-1); 
}
.lecture_container thead th{ 
  background-color: var(--gray-6); 
}

.popupModalVideo{ width:100%; padding:1rem 0; }
.popupModalVideo > ul{ 
  width:100%; margin:0; padding:0; list-style:none; 
}
.popupModalVideo > ul > li{
  display:flex; justify-content:space-between; gap:.5rem;
  width:100%; padding:.5rem 0;
}
.popupModalVideo .lec_title{
  min-width:0; 
  overflow:hidden; 
  text-overflow:ellipsis; 
  white-space:nowrap;
  color:var(--gray-1)
}
.popupModalVideo .lec_btn{
  flex:0 0 auto; 
  display:inline-flex; 
  align-items:center; 
  justify-content:center;
  font-size:.9rem; border-radius:.2rem; 
  padding:.3rem .7rem;
  background-color:var(--gray-1); color:var(--white);
}
.popupModalVideo .lec_btn:hover {
  background-color: var(--gray-3);
}
.preview_cell{
  background-image: url("/assets/images/svg/video_bg.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 15%;
}


@media (max-width:1200px) {

  .pagination  { gap:1rem }
  .pagination .page_number { gap:.3rem}

  

  .support_board_list .title span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
    width: 100%;
  }
  
  .support_board_list .date span {
      letter-spacing: -0.05rem;
       min-width: auto;
      max-width: 100%;
  }

  .support_board_list .company span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
    max-width: 100%;
    width: 100%;
    text-align: center;
  }

  .owner_text_wrap {
    font-size: .9rem;
  }

}
@media (max-width:768px) {
  .search_board_wrap {gap:.5rem}
  .search_board_wrap .info_text {font-size: .9rem;}

 .search_board2 .search_board_wrap2 .search_row{
    flex-direction: column; gap:.2rem;
    align-items: stretch;
  }

  .owner_id, .search_type{
    width: 100%;
  }

  .owner_id select{
    flex: initial; 
    width: 100%;  min-width: 0; 
  }

  .search_type select{
    font-size: .9rem;
    flex: initial; width: 30%; min-width: 80px;
  }

  #SearchWord{
    flex: 1;
  }
  .info_text { font-size: .85rem; min-width: 2.3rem;}

 
  .search_board2 .search_board_wrap2 div{ gap: .5rem;}
  .owner_content {
    width: 100%;
    overflow-x: auto;
  }
  .owner_content table {
    width: 100%;
    table-layout: auto;
    overflow-x: auto;
  }
  .owner_content table th,
  .owner_content table td {
    font-size: 0.8rem; 
    padding: .5rem; 
    white-space: nowrap;
  }
  .owner_title {
     flex-direction: column;
    align-items: flex-start; 
  }
  .owner_title > .owner_title_btn{
    width: 100%; padding-top: .5rem;
    display: flex; gap: .3rem; justify-content: flex-end;
  }

  .rate_table_wrap {
    display: flex;  gap:3%;
    flex-direction: column;
  }

   .rate_table_wrap table{
    width:100%
  }
  #local_yong_div {
     max-width: 100%;
  }
  .local_sort>table {
    font-size: .9rem;  
  }
  .field_sort {
    width: 100%; display: flex; gap:.3rem;
    padding:1rem 0; flex-wrap: wrap;
  }
  .field_sort .field_title { 
    padding:.2rem .4rem;
    border-radius: .2rem;
    font-size: .85rem;
  }
  .field_sort .pointer { 
    padding:.2rem .3rem;
    border-radius: .2rem;
    font-size: .85rem;
  }
  .contents_table{
    max-width: 950px;    
  } 
  #local_contents {
    min-width: 950px; 
  }

  #local_content_div {
    overflow-x: auto;
    border: 1px solid #f5f5f5;
  }


  .local_sort table{
    display:block; 
    border-collapse:separate; 
    border-spacing:0;
    width:100%;
  }
  .local_sort thead{ display:none; }

  .local_sort tbody{
    display:grid; 
    grid-template-columns: repeat(3, minmax(0,1fr)); 
    gap:0px; 
  }

  .local_sort tr{ display: contents; } 
  .local_sort td{
    display:block;
    margin:0;
    padding:.5rem .3rem;
    box-sizing:border-box;
    background:#fff;
  }
  .local_sort td:empty{ display:none; }

  .local_sort td > a{
    display:block; 
    width:100%;
    text-decoration:none;
  }
  .ratiotab {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr)); 
    gap: .5rem;
  }

  .ratiotab > * {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
  }
  .ratiotab a {
    border: var(--border-1);
    font-size: .9em;
    border-radius: .3rem;
    padding:.3rem .4rem; flex: 1;
    text-align: center;
    white-space: nowrap;
  }
  .toggle_tab{ 
    font-size:.9rem; }
  
    .toggle_tab table{ 
      width: 1000px; 
      overflow-x: auto;
    }

  .ratiotab_select {
    padding:.5rem;
    display: flex; gap:1rem; flex-direction: column;
  }
  .ratiotab_select select {width:100%}

  .lecture_container table{
    border-top:none;
    border-bottom:none;
    font-size: .9rem;
  }

  .lecture_container colgroup, 
  .lecture_container col{ display:none; }

  .lecture_container{
    border-collapse:separate; border-spacing:0; 
  }
  .lecture_container thead{ display:none; }
  .lecture_container tbody tr{
    display:grid;
    grid-template-columns: 30% 1fr; 
    grid-template-areas:
        "c1 c2"
        "c3 c3"
        "c4 c4";
    border:1px solid var(--gray-3); 
    border-radius:10px;
    padding:1rem; 
    margin-bottom:2rem; 
    box-shadow: 2px 2px 1px 0 rgba(0,0,0,0.2);
  }

  .lecture_container td{
    display:block;  padding:0;
    writing-mode: horizontal-tb; white-space: normal;
  }

  .lecture_container td:nth-child(1){ 
    grid-area:c1; padding:.7rem 0;
    font-size: 1rem;
  } 
  .lecture_container td:nth-child(2){ grid-area:c2; 
    padding-top:.5rem; 
    font-size: 1rem;
  } 
  .lecture_container td:nth-child(3){ grid-area:c3; 
    padding:.5rem; 
    border-top: 1px dotted var(--gray-3);
  } 
  .lecture_container td:nth-child(4){ grid-area:c4; 
    display: flex; justify-content: center;
  ;} 

  .preview_cell { min-height: 100px; background-color: var(--gray-7); }

}