@charset "utf-8";

:root {
    /* 색상 */
    --color-blue:#3496ff; /* #5577ff   #0056b3 */
    --color-blue-rgb:0, 86, 179;
    --color-navy:#162B5C;
    --color-navy-rgb:22, 43, 92;
    --color-blue-light:#3399fd;
    --color-blue-light-rgb:51, 153, 253;
    --color-blue-light2:#aed5ff;
    --color-blue-light2-rgb:171, 213, 255;
    --color-indigo:#444ce7;
    --color-indigo-rgb:68, 76, 231;
    
    /* primitive */
    --background-gray05:rgba(252, 252, 253, 1);
    --background-gray10:rgba(245, 246, 249, 1);
    --background-gray20:rgba(243, 244, 246, 1);
    --background-gray30:rgba(229, 231, 235, 1);
    --background-gray40:rgba(210, 214, 219, 1);
    --background-gray50:rgba(157, 164, 174, 1);
    --background-gray60:rgba(108, 115, 127, 1);
    --background-gray70:rgba(77, 87, 97, 1);
    --background-gray80:rgba(56, 66, 80, 1);
    --background-gray90:rgba(31, 42, 55, 1);
    --black-100:rgba(0, 0, 0, 1);
    --chartgraph-01:rgba(85, 119, 255, 1);
    --chartgraph-02:rgba(54, 220, 196, 1);
    --chartgraph-03:rgba(255, 124, 106, 1);
    --chartgraph-04:rgba(63, 196, 255, 1);
    --chartgraph-05:rgba(61, 211, 132, 1);
    --chartgraph-06:rgba(125, 127, 255, 1);
    --chartgraph-07:rgba(202, 111, 255, 1);
    --chartgraph-08:rgba(255, 124, 170, 1);
    --primary-05:rgba(245, 248, 255, 1);
    --primary-10:rgba(227, 237, 255, 1);
    --primary-20:rgba(199, 215, 254, 1);
    --primary-30:rgba(164, 188, 253, 1);
    --primary-40:rgba(97, 114, 243, 1);
    --primary-60:rgba(44, 53, 222, 1);
    --primary-70:rgba(36, 39, 196, 1);
    --primary-80:rgba(25, 27, 167, 1);
    --primary-90:rgba(0, 8, 131, 1);
    --primarymain-50:rgba(68, 76, 231, 1);
    --searchresultmain-50:rgba(3, 105, 102, 1);
    --semanticerror-10:rgba(255, 243, 242, 1);
    --semanticerror-20:rgba(255, 216, 210, 1);
    --semanticerror-30:rgba(255, 182, 172, 1);
    --semanticerror-40:rgba(255, 113, 94, 1);
    --semanticerrormain-50:rgba(255, 77, 53, 1);
    --semanticinformative-10:rgba(234, 244, 255, 1);
    --semanticinformative-20:rgba(191, 222, 255, 1);
    --semanticinformative-30:rgba(156, 204, 255, 1);
    --semanticinformative-40:rgba(90, 170, 255, 1);
    --semanticinformativemain-50:rgba(52, 150, 255, 1);
    --semanticsuccess-10:rgba(240, 255, 244, 1);
    --semanticsuccess-20:rgba(209, 245, 220, 1);
    --semanticsuccess-30:rgba(155, 229, 179, 1);
    --semanticsuccess-40:rgba(76, 215, 122, 1);
    --semanticsuccessmain-50:rgba(0, 193, 67, 1);
    --semanticwarning-10:rgba(255, 241, 227, 1);
    --semanticwarning-20:rgba(255, 218, 180, 1);
    --semanticwarning-30:rgba(255, 178, 100, 1);
    --semanticwarning-40:rgba(255, 154, 53, 1);
    --semanticwarningmain-50:rgba(255, 140, 17, 1);
    --sub-10:rgba(232, 234, 246, 1);
    --sub-20:rgba(197, 202, 232, 1);
    --sub-30:rgba(158, 168, 219, 1);
    --sub-40:rgba(92, 107, 192, 1);
    --sub-60:rgba(49, 63, 162, 1);
    --sub-70:rgba(40, 53, 147, 1);
    --sub-80:rgba(37, 45, 124, 1);
    --submain-50:rgba(63, 81, 181, 1);
    --tertiary-10:rgba(245, 243, 255, 1);
    --tertiary-20:rgba(226, 220, 255, 1);
    --tertiary-30:rgba(208, 199, 255, 1);
    --tertiary-40:rgba(173, 156, 255, 1);
    --tertiary-60:rgba(87, 53, 255, 1);
    --tertiary-70:rgba(53, 23, 197, 1);
    --tertiary-80:rgba(31, 9, 135, 1);
    --tertiarymain-50:rgba(119, 92, 255, 1);
    --text-gray05:rgba(246, 246, 246, 1);
    --text-gray10:rgba(236, 236, 236, 1);
    --text-gray20:rgba(218, 218, 218, 1);
    --text-gray30:rgba(198, 198, 198, 1);
    --text-gray40:rgba(178, 178, 178, 1);
    --text-gray50:rgba(157, 157, 156, 1);
    --text-gray60:rgba(135, 135, 134, 1);
    --text-gray70:rgba(112, 111, 111, 1);
    --text-gray80:rgba(87, 86, 86, 1); 
    --text-gray90:rgba(55, 55, 54, 1);
    --white-00:rgba(255, 255, 255, 1);
    --font-type:Pretendard GOV;
    --font-weight-regular:Regular;
    --font-weight-bold:Bold;
    --letter-spacing-0:0rem;
    --letter-spacing-1:0.1rem;

}

.gap_5 { gap:5px !important; }
.gap_10 { gap:10px !important; }
.gap_15 { gap:15px !important; }
.gap_20 { gap:20px !important; }
.gap_25 { gap:25px !important; }
.gap_30 { gap:30px !important; }
.gap_35 { gap:35px !important; }
.gap_40 { gap:40px !important; }
.gap_45 { gap:45px !important; }
.gap_50 { gap:50px !important; }
.w_25 { width:25% !important; }
.w_50 { width:50% !important; }
.w_75 { width:75% !important; }
.w_100 { width:100% !important; }

/* margin style*/
.m_0 { margin:0 !important; }
.m_5 { margin:5px !important; }
.m_10 { margin:10px !important; }
.m_15 { margin:15px !important; }
.m_20 { margin:20px !important; }
.m_25 { margin:25px !important; }
.m_30 { margin:20px !important; }
.m_35 { margin:35px !important; }
.m_40 { margin:40px !important; }
.m_45 { margin:45px !important; }
.m_50 { margin:50px !important; }

.mt_0 { margin-top:0 !important; }
.mt_5 { margin-top:5px !important; }
.mt_10 { margin-top:10px !important; }
.mt_15 { margin-top:15px !important; }
.mt_20 { margin-top:20px !important; }
.mt_25 { margin-top:25px !important; }
.mt_30 { margin-top:30px !important; }
.mt_35 { margin-top:35px !important; }
.mt_40 { margin-top:40px !important; }
.mt_45 { margin-top:45px !important; }
.mt_50 { margin-top:50px !important; }

.mb_0 { margin-bottom:0 !important; }
.mb_5 { margin-bottom:5px !important; }
.mb_10 { margin-bottom:10px !important; }
.mb_15 { margin-bottom:15px !important; }
.mb_20 { margin-bottom:20px !important; }
.mb_25 { margin-bottom:25px !important; }
.mb_30 { margin-bottom:30px !important; }
.mb_35 { margin-bottom:35px !important; }
.mb_40 { margin-bottom:40px !important; }
.mb_45 { margin-bottom:45px !important; }
.mb_50 { margin-bottom:50px !important; }

.ml_0 { margin-left:0 !important; }
.ml_5 { margin-left:5px !important; }
.ml_10 { margin-left:10px !important; }
.ml_15 { margin-left:15px !important; }
.ml_20 { margin-left:20px !important; }
.ml_25 { margin-left:25px !important; }
.ml_30 { margin-left:30px !important; }
.ml_35 { margin-left:35px !important; }
.ml_40 { margin-left:40px !important; }
.ml_45 { margin-left:45px !important; }
.ml_50 { margin-left:50px !important; }

.mr_0 { margin-right:0 !important; }
.mr_5 { margin-right:5px !important; }
.mr_10 { margin-right:10px !important; }
.mr_15 { margin-right:15px !important; }
.mr_20 { margin-right:20px !important; }
.mr_25 { margin-right:25px !important; }
.mr_30 { margin-right:30px !important; }
.mr_35 { margin-right:35px !important; }
.mr_40 { margin-right:40px !important; }
.mr_45 { margin-right:45px !important; }
.mr_50 { margin-right:50px !important; }

/* padding style */
.p_0 { padding:0 !important; }
.p_5 { padding:5px !important; }
.p_10 { padding:10px !important; }
.p_15 { padding:15px !important; }
.p_20 { padding:20px !important; }
.p_25 { padding:25px !important; }
.p_30 { padding:30px !important; }
.p_35 { padding:35px !important; }
.p_40 { padding:40px !important; }
.p_45 { padding:45px !important; }
.p_50 { padding:50px !important; }

.pt_0 { padding-top:0 !important; }
.pt_5 { padding-top:5px !important; }
.pt_10 { padding-top:10px !important; }
.pt_15 { padding-top:15px !important; }
.pt_20 { padding-top:20px !important; }
.pt_25 { padding-top:25px !important; }
.pt_30 { padding-top:30px !important; }
.pt_35 { padding-top:35px !important; }
.pt_40 { padding-top:40px !important; }
.pt_45 { padding-top:45px !important; }
.pt_50 { padding-top:50px !important; }

.pb_0 { padding-bottom:0 !important; }
.pb_5 { padding-bottom:5px !important; }
.pb_10 { padding-bottom:10px !important; }
.pb_15 { padding-bottom:15px !important; }
.pb_20 { padding-bottom:20px !important; }
.pb_25 { padding-bottom:25px !important; }
.pb_30 { padding-bottom:30px !important; }
.pb_35 { padding-bottom:35px !important; }
.pb_40 { padding-bottom:40px !important; }
.pb_45 { padding-bottom:45px !important; }
.pb_50 { padding-bottom:50px !important; }

.pl_0 { padding-left:0 !important; }
.pl_5 { padding-left:5px !important; }
.pl_10 { padding-left:10px !important; }
.pl_15 { padding-left:15px !important; }
.pl_20 { padding-left:20px !important; }
.pl_25 { padding-left:25px !important; }
.pl_30 { padding-left:30px !important; }
.pl_35 { padding-left:35px !important; }
.pl_40 { padding-left:40px !important; }
.pl_45 { padding-left:45px !important; }
.pl_50 { padding-left:50px !important; }

.pr_0 { padding-right:0 !important; }
.pr_5 { padding-right:5px !important; }
.pr_10 { padding-right:10px !important; }
.pr_15 { padding-right:15px !important; }
.pr_20 { padding-right:20px !important; }
.pr_25 { padding-right:25px !important; }
.pr_30 { padding-right:30px !important; }
.pr_35 { padding-right:35px !important; }
.pr_40 { padding-right:40px !important; }
.pr_45 { padding-right:45px !important; }
.pr_50 { padding-right:50px !important; }

.blind_txt { position:absolute; margin:-1px; padding:0; width:1px; height:1px; border:0; overflow:hidden; clip:rect(0, 0, 0, 0); white-space:nowrap; }
.relative { position:relative !important; }
.absolute { position:absolute !important; }
.fixed { position:fixed !important; }
.cur_pointer { cursor:pointer !important; }



/* 공통 메인 탭 */
.top_nav_wrap { margin:50px 0 50px 0; }
.top_nav_wrap .nav_wrap_inner { position:relative; overflow:hidden; }
.top_nav_wrap .nav_menu { display:flex; justify-content:flex-start; align-items:center; position:relative; border-bottom:1px solid #d2d2d2; }
.top_nav_wrap .nav_menu li { flex:1 1 0; }
.top_nav_wrap .nav_menu li a { display:flex; justify-content:center; align-items:center; position:relative; padding:15px 10px; font-size:2.2rem; font-weight:600; cursor:pointer; color:#9d9d9c; transition:all 0.3s ease; }
.top_nav_wrap .nav_menu li a:after { content:""; position:absolute; bottom:0; left:0; right:0; height:3px; background-color:rgba(68, 76, 231, 1); border-radius:4px; transform:scaleX(0); transform-origin:center; transition:transform 0.3s ease-out; }
.top_nav_wrap .nav_menu li a:hover,
.top_nav_wrap .nav_menu li a.on { color:#000; }
.top_nav_wrap .nav_menu li a.on:after { transform:scaleX(1); }
.top_nav_wrap .nav_menu li a:hover:after { transform:scaleX(1); }
/* 메뉴에 튤팁 있을 경우 */
.tooltip_nav .top_nav_wrap { margin:0 0 50px 0; }
.tooltip_nav .top_nav_wrap .nav_wrap_inner { padding-top:50px; }
.tooltip_nav .top_nav_wrap .nav_wrap_inner .tooltip .tooltiptext::after {content:""; position:absolute; bottom:100%; left:50%; border:none; /* roadshow.css 초기화 */ border-left:8px solid transparent; border-right:8px solid transparent; border-top:8px solid #222; text-indent:0; } 

/* 공통 메인 탭 반응형 */
/* @media screen and (max-width:1024px) {
    .top_nav_wrap .nav_wrap_inner { padding-bottom:10px; overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch; scrollbar-width:thin; scrollbar-color:rgba(0, 0, 0, 0.2) transparent; }
    .top_nav_wrap .nav_wrap_inner::-webkit-scrollbar { height:2px; }
    .top_nav_wrap .nav_wrap_inner::-webkit-scrollbar-track { background:transparent; }
    .top_nav_wrap .nav_wrap_inner::-webkit-scrollbar-thumb { background-color:rgba(0, 0, 0, 0.2); border-radius:1px; }
    .top_nav_wrap .nav_wrap_inner::-webkit-scrollbar-thumb:hover { background-color:rgba(0, 0, 0, 0.3); }
    .top_nav_wrap .nav_menu { display:inline-flex; min-width:100%; }
    .top_nav_wrap .nav_menu li { flex:0 0 200px; width:200px; min-width:200px; max-width:200px; }
    .top_nav_wrap .nav_menu li a { white-space:nowrap; }
} */

/* 화살표 네비게이션 버튼 */
.nav_arrow_btn { position:absolute; top:50%; transform:translateY(-50%); width:40px; height:40px; background:rgba(255,255,255,0.95); border:1px solid #d2d2d2; border-radius:50%; display:none; align-items:center; justify-content:center; cursor:pointer; z-index:10; box-shadow:0 2px 8px rgba(0,0,0,0.1); transition:all 0.3s ease; }
.nav_arrow_btn:hover { background:#fff; box-shadow:0 4px 12px rgba(0,0,0,0.15); }
.nav_arrow_btn:active { transform:translateY(-50%) scale(0.95); }
.nav_arrow_btn svg { width:20px; height:20px; fill:#444ce7; }
.nav_arrow_btn.left { left:10px; }
.nav_arrow_btn.right { right:10px; }
.nav_arrow_btn.show { display:flex; }
/* 메뉴에 튤팁 있을 경우 */
.tooltip_nav .nav_arrow_btn { position:absolute; top:calc(50% + 20px); transform:translateY(-50%); width:40px; height:40px; background:rgba(255,255,255,0.95); border:1px solid #d2d2d2; border-radius:50%; display:none; align-items:center; justify-content:center; cursor:pointer; z-index:10; box-shadow:0 2px 8px rgba(0,0,0,0.1); transition:all 0.3s ease; }
.tooltip_nav .nav_arrow_btn:hover { background:#fff; box-shadow:0 4px 12px rgba(0,0,0,0.15); }
.tooltip_nav .nav_arrow_btn:active { transform:translateY(-50%) scale(0.95); }
.tooltip_nav .nav_arrow_btn.show { display:flex; }

/* 공통 메인 탭 반응형 */
@media screen and (max-width:1024px) {
    .top_nav_wrap .nav_menu { display:inline-flex; min-width:100%; }
    .top_nav_wrap .nav_menu li { flex:0 0 200px; width:200px; min-width:200px; max-width:200px; }
    .top_nav_wrap .nav_menu li a { white-space:nowrap; }
}

/* 모바일 슬라이드 기능 (800px 이하) */
@media screen and (max-width:800px) {
    .top_nav_wrap .nav_wrap_inner { cursor:grab; user-select:none; -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; }
    .top_nav_wrap .nav_wrap_inner.dragging { cursor:grabbing; }
    .top_nav_wrap .nav_wrap_inner.dragging .nav_menu { transition:none; }
    .top_nav_wrap .nav_menu li { flex:0 0 180px; width:180px; min-width:180px; max-width:180px; }
    .top_nav_wrap .nav_menu li a { font-size:1.8rem; }
}

@media screen and (max-width:480px) {
    .top_nav_wrap .nav_menu li { flex:0 0 160px; width:160px; min-width:160px; max-width:160px; }
    .top_nav_wrap .nav_menu li a { font-size:1.6rem; padding:12px 8px; }
    .nav_arrow_btn { width:36px; height:36px; }
    .nav_arrow_btn svg { width:18px; height:18px; }
}

/* ### 사업화 후보기술 ### */
.commercial .cmcl_visual { margin-top:35px; padding:55px 50px; color:#fff; background:linear-gradient(268deg, #162B5C 2.51%, #2B59A0 50%, #4C7EDC 96.63%); border-radius:10px; }
.commercial .cmcl_visual h1 { margin-bottom:8px; font-family:"S-Core4"; font-size:4rem; }
.commercial .cmcl_visual p { font-family:"S-Core4"; font-size:2rem; }

/* 서브 탭 */
/* .comn_tab_head { position:relative; }
.comn_tab_head button { display:flex; justify-content:center; align-items:center; position:absolute; bottom:10px; right:0; padding:1px 15px; height:40px; font-size:1.5rem; color:#fff; background-color:var(--primarymain-50); border-radius:3px; }
.dtl_tab_head .head_list { display:flex; justify-content:flex-start; align-items:center; position:relative; margin:50px 0 30px 0; }
.dtl_tab_head .head_list li { flex:1 1 auto; }
.dtl_tab_head .head_list li a.tab_head { display:flex; justify-content:center; align-items:center; position:relative; padding:10px; width:100%; font-size:1.6rem; color:#706f6f; background-color:#fff; border:1px solid #d2d6db; cursor:pointer; transition:all 0.3s ease; }
.dtl_tab_head .head_list li:first-child a.tab_head { border-right:none; }
.dtl_tab_head .head_list li a.tab_head.on{ color:var(--submain-50); background-color:rgba(var(--color-blue-rgb),0.1); border-color:#c7d4eb; } */
/* 서브 탭2 */
.comn_tab_head { position:relative; }
.comn_tab_head button { display:flex; justify-content:center; align-items:center; position:absolute; bottom:10px; right:0; padding:1px 15px; height:40px; font-size:1.5rem; color:#fff; background-color:var(--primarymain-50); border-radius:3px; }
.dtl_tab_head .head_list { display:flex; justify-content:flex-start; align-items:center; position:relative; margin:50px 0 30px 0; }
.dtl_tab_head .head_list li { flex:1 1 auto; }
.dtl_tab_head .head_list li a.tab_head { display:flex; justify-content:center; align-items:center; position:relative; padding:20px 10px; width:100%; font-size:1.6rem; color:var(--text-gray70); background-color:var(--white-00); border:1px solid var(--background-gray40); cursor:pointer; transition:all 0.3s ease; }
/* .dtl_tab_head .head_list li:first-child a.tab_head { border-radius:10px 0 0 10px; }
.dtl_tab_head .head_list li:last-child a.tab_head { border-radius:0 10px 10px 0; } */
.dtl_tab_head .head_list li a.tab_head.on { color:var(--submain-50); background-color:var(--sub-10); border-color:var(--submain-50); }

/* hover */
.dtl_tab_head .head_list li .tab_head:hover:after { transform:scaleX(1); }
.comn_tab_body .tab_body { display:none; }
.comn_tab_body .tab_body .tab_body_inner { display:grid; grid-template-columns:1fr 300px; gap:30px; align-items:start; transition:grid-template-columns 0.3s ease; }
.comn_tab_body .tab_body.on { display:block; }
/* 검색 */
.dtl_srch { padding:30px 45px; background-color:#f9fafb; border:1px solid #d7d7d7; border-radius:10px; }
.dtl_srch_row { display:flex; align-items:center; margin-bottom:20px; gap:20px; }
.dtl_srch_row:last-child { margin-bottom:0; }
.srch_group { flex:1; display:flex; align-items:center; gap:15px; }
.srch_label { flex-shrink:0; min-width:80px; font-size:1.4rem; color:#333; }
.basic_srch_label .srch_input { flex:1; padding:12px 16px; border:1px solid #c0c0c0; border-radius:4px; font-size:1.4rem; color:#666; }.srch_input:focus { border-color:var(--submain-50); }
.srch_group .srch_input { flex:1; padding:12px 16px; border:1px solid #c0c0c0; border-radius:4px; font-size:1.4rem; color:#666; }.srch_input:focus { border-color:var(--submain-50); }
.srch_input::placeholder { color:#c9c9c9; }
.srch_select { flex:1; padding:12px 16px; border:1px solid #d1d5db; border-radius:4px; font-size:1.4rem; color:#333; background-color:#fff; cursor:pointer; }
.srch_select:focus { border-color:var(--submain-50); }
/* 검색2 */
.srch_group .basic_srch_label { flex:1; display:inline-block; width:100%;  }
.srch_group .basic_srch_label input { width:100%; }
.inst_selector { position:relative; width:100%; }
.inst_input { padding:12px 16px; padding-right:20px; width:100%; font-size:1.4rem;  color:#333; background-color:#fff; border:1px solid #d1d5db; border-radius:4px; background-image:url("../../../../images/ico/icon_dropdown.svg"); background-repeat:no-repeat; background-position:right 16px center; cursor:pointer; }
.inst_input.on { border:1px solid var(--submain-50); border-radius:4px 4px 0 0; }
.inst_list { display:none; position:absolute; top:calc(100% - 1px); left:0; right:0; max-height:500px; background:#fff; border:1px solid var(--submain-50); border-radius:0 0 4px 4px; overflow:hidden; z-index:100; }
.inst_list.on { display:block; }
.inst_tab_header { display:flex; border-bottom:1px solid #e5e7eb; background-color:#fff; }
.inst_tab_header li {  flex:1; }
.inst_tab { display:block; padding:12px; text-align:center; font-size:1.5rem; font-weight:500; color:#333; background:none; border:none; cursor:pointer; transition:background-color 0.3s; }
.inst_tab:hover { background-color:rgba(255,255,255,0.1); }
.inst_tab.on { color:#fff; background-color:var(--submain-50); }
.inst_tab_body { padding:20px; max-height:400px; overflow-y:auto; }
.inst_tab_conts { display:none; }
.inst_tab_conts.on { display:block; }
.inst_list_grid { display:grid; grid-template-columns:repeat(4, 1fr); gap:20px 10px; }
.inst_card { display:flex;align-items:center; gap:12px; padding:15px; background-color:#f2f6f9; border:1px solid #e9e9e9; border-radius:6px; cursor:pointer; transition:all 0.3s; }
.inst_card:hover { border-color:var(--submain-50); box-shadow:0 2px 8px rgba(59,130,246,0.15); }
.inst_card.selected { border-color:var(--submain-50); background-color:#eff6ff; }
.inst_logo { padding:5px; width:48px; height:47px; display:flex; align-items:center; justify-content:center; flex-shrink:0; background-color:#fff; border:1px solid #d7dae0; border-radius:4px; overflow:hidden; }
.inst_logo img { width:100%; height:100%; object-fit:contain; }
.inst_name { line-height:1.4; font-size:1.4rem; font-weight:bold; color:#333; }
.inst_footer { padding:15px 20px; border-top:1px solid #e5e7eb; text-align:center; }
.inst_cls_btn { padding:10px 30px; font-size:1.4rem; font-weight:500; color:#fff; background-color:#6b7280; border:none; border-radius:4px; cursor:pointer; transition:background-color 0.3s; }
.inst_cls_btn:hover { background-color:#4b5563; }
.search_btn { padding:10.5px 25px; min-width:80px; min-height:40px; font-size:1.7rem; border-radius:5px; color:var(--white-color); background-color:var(--primarymain-50); }
.search_btn.icon { display:flex; justify-content:space-between; align-items:center; gap:10px; }
.search_btn.icon img { width:22px; filter:brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(2%) hue-rotate(131deg) brightness(103%) contrast(101%); }

/* 목록 */
.dtl_list_wrap { margin-top:50px; }
.dtl_header { position:relative; }
.dtl_header h2 { position:relative; margin-bottom:30px; padding-bottom:15px; font-size:2rem; font-weight:bold; color:#333; border-bottom:2px solid var(--primary-20); }
.dtl_header h2:after { content:""; position:absolute; bottom:-2px; left:0; width:50px; height:4px; background-color:var(--primary-40); border-radius:4px; }
.dtl_header h2 span { color:var(--primary-40); }
.dtl_header .sec_tit_btn_area { display:flex; justify-content:center; align-items:center; gap:10px; position:absolute; bottom:10px; right:0; }
.dtl_header button { display:flex; justify-content:center; align-items:center; padding:1px 15px; height:35px; font-size:1.5rem; color:#fff; background-color:var(--primarymain-50); border-radius:3px; }
.dtl_header button.icon_plus:before { content:"+"; margin-right:5px; font-size:2rem; }
.dtl_header .sec_tit_btn_area .form_group_item label { display:flex; justify-content:start; align-items:center; gap:5px; font-size:1.5rem; color:#333; cursor:pointer; }



.dtl_header button.btn02 { background-color:var(--primarymain-50); }
.dtl_header button.btn03 { color:#777; background-color:#e6e7ed; border-color:#e6e7ed; }
.dtl_list ul { display:flex; justify-content:start; align-items:center; flex-direction:column; gap:20px;}
.dtl_list ul .list_card { display:flex; justify-content:start; align-items:center; gap:20px; padding:20px 30px; width:100%; background-color:#fff; border:1px solid #d7d7d7; border-radius:10px; cursor:pointer; }
.dtl_list ul .list_card .card_img { display:flex; justify-content:center; align-items:center; flex-shrink:0; width:140px; height:117px; background-color:#f3f5f7; border:1px solid #e2e8f0;border-radius:10px; }
.dtl_list ul .list_card .card_img.placeholder { color:#94a3b8; background-color:#e2e8f0; }
.dtl_list ul .list_card .card_img img { padding:5px; width:100%; height:100%; border-radius:5px; object-fit:contain; }
.dtl_list ul .list_card .card_content { display:flex; justify-content:center; align-items:start; flex-direction:column; gap:11px; }
.dtl_list ul .list_card .card_content h3 { font-size:1.8rem; font-weight:bold; color:#333; }
.dtl_list ul .list_card .card_content p { font-size:1.4rem; color:#555; display:-webkit-box; display:box; -webkit-line-clamp:2; line-clamp:2; -webkit-box-orient:vertical; box-orient:vertical; overflow:hidden; text-overflow:ellipsis; word-break:break-all; }
.dtl_list ul .list_card .card_content .card_btm { display:flex; justify-content:start; align-items:center; gap:30px;}
.dtl_list ul .list_card .card_content .card_btm p { font-size:1.4rem; color:#999; }
/* hover */
.list_card:hover { box-shadow:0 4px 12px rgba(30, 64, 175, 0.1); }
/* 기술목록 필터 */
.inst_filter { margin:40px 0 15px 0;}
.inst_filter ul { display:flex; justify-content:start; align-items:center; gap:10px; }
.inst_filter ul li a { 
    display:flex;
    justify-content:center;
    align-items:center;
    padding:8px 40px;
    font-size:1.7rem;
    background-color:var(--white-00);
    border-radius:40px;
    border:1px solid var(--background-gray40);
    color:var(--text-gray70);
}
.inst_filter ul li a.on { 
    color:var(--submain-50);
    background-color:var(--sub-10);
    border-color:1px solid var(--submain-50);
}

.dtl_list_grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:20px; }
.grid_card { display:flex; justify-content:start; align-items:center; gap:10px; padding:20px 15px; background-color:#fff; border:1px solid #d7d7d7; border-radius:10px; cursor:pointer; }
.grid_card .grid_card_img { display:flex; justify-content:center; align-items:center; flex-shrink:0; width:64px; height:64px; background-color:#fff; border:1px solid #e2e8f0;border-radius:7px; }
.grid_card .grid_card_img.placeholder { color:#94a3b8; background-color:#e2e8f0; }
.grid_card .grid_card_img img { width:100%; max-width:50px; height:100%; object-fit:contain;}
.grid_card .grid_card_content { display:flex; justify-content:space-between; align-items:center; width:100%; }
.grid_card .grid_card_content h3 { font-size:1.8rem; font-weight:500; color:#333; }
.grid_card .grid_card_content .tech_cnt { display:flex; justify-content:center; align-items:center; flex-direction:column; gap:5px; width:70px; height:64px; background-color:#f5f8ff; border:1px solid #d7e3ff; border-radius:7px; }
.grid_card .grid_card_content .tech_cnt p { font-size:1.2rem; color:#333; }
.grid_card .grid_card_content .tech_cnt p.cnt { font-size:1.6rem; font-weight:bold; color:var(--primarymain-50); }
/* hover */
.grid_card:hover { box-shadow:0 4px 12px rgba(30, 64, 175, 0.1); }

/* 보유 기술 목록 */
.tech_list_header { display:flex; justify-content:start; align-items:center; gap:20px; padding:30px 50px; background:linear-gradient(91deg, #f6f6f8 0.11%, #e7e8ea 99.89%);border:1px solid #efeff1; border-radius:10px; }
.tech_list_header .header_img { position:relative; width:116px; height:116px; background-color:#f3f5f7; border:1px solid #dbe4ff; border-radius:10px; }
.tech_list_header .header_img img { padding:10px; width:100%; height:100%; object-fit:contain; }
.tech_list_header .header_img button { position:absolute; top:-7px; right:-7px; width:28px; height:28px; background-color:transparent; border-radius:50%; }
.tech_list_header .header_img button img { padding:0; width:100%; height:100%; object-fit:contain; }
.tech_list_header .header_content { display:flex; justify-content:center; align-items:start; flex-direction:column; gap:5px; flex:1; width:100%; }
.tech_list_header .header_content h2 { position:relative; font-size:2.5rem; font-weight:bold; color:#333; }
.tech_list_header .header_content h2 button { position:absolute; top:-7px; right:-23px; background-color:transparent; }
.tech_list_header .header_content h2 img { width:21px; height:23px; }
.tech_list_header .header_content p { font-size:2rem; font-weight:bold; color:var(--primarymain-50); }
.tech_list_header .header_analysis { display:flex; justify-content:space-between; align-items:center; gap:15px; }
.tech_list_header .header_analysis div  { display:flex; justify-content:center; align-items:center; flex-direction:column; gap:15px; width:100%; min-width:116px; height:100%; min-height:116px; background-color:#fff; border:1px solid #dbe4ff; border-radius:10px; }
.tech_list_header .header_analysis div p:first-child { font-size:2rem; color:#333; }
.tech_list_header .header_analysis div p:last-child { font-size:2.3rem; font-weight:bold; color:var(--primarymain-50); }

/* ### 레이어 팝업 공통 ### */
.layer_popup_overlay { display:none; align-items:center; justify-content:center; position:fixed; top:0; left:0; width:100%; height:100%; background-color:rgba(0, 0, 0, 0.7); z-index:1000; }
.popup_inner { margin:auto; width:100%; max-width:500px; border-radius:10px;  box-shadow:0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); }
.popup_header { display:flex; justify-content:space-between; align-items:center; padding:25px 20px; border-radius:10px 10px 0 0;
    background:linear-gradient(270deg, #1E3F73 21.65%, #2C5AA0 78.35%); }
.popup_header h2 { position:relative; font-size:2.2rem; font-weight:700; color:#fff; }
.popup_header h2 .tit_icon { position:relative; display:inline-block; position:relative; margin-right:10px; width:16px; height:16px; background-color:rgba(255, 255, 255, 0.20); transform:rotate(45deg); }
.popup_header h2 .tit_icon:after { content:""; display:block; position:absolute; top:50%; left:50%; width:8px; height:8px; background-color:#fff; transform:translate(-50%, -50%);  }
.close_popup { display:flex; align-items:center; justify-content:center; width:33px; height:33px; background:rgba(255, 255, 255, 0.20); border-radius:5px; }
.close_popup img { width:14px; height:14px; filter:brightness(0) saturate(100%) invert(100%) sepia(99%) saturate(44%) hue-rotate(47deg) brightness(110%) contrast(99%); }
/* 팝업 바디 */
.popup_body { display:flex; justify-content:center; align-items:center; flex-direction:column; gap:20px; padding:50px 84px 35px 84px; background-color:#fff; }
.popup_body_top { display:flex; justify-content:space-between; align-items:center; width:100%; }
.popup_body_top .img_box_wrap { display:flex; justify-content:start; align-items:center; flex-direction:column; gap:12px; }
.popup_body_top .img_box_wrap p { font-size:1.8rem; color:#333; }
.popup_body_top .img_box_wrap .img_box {display:flex; justify-content:center; align-items:center; width:116px; height:116px; background-color:#fff; border:1px solid #dbe4ff; border-radius:10px; }
.popup_body_top .img_box_wrap .img_box.placeholder { background-color:#e2e8f0; border:1px solid #dbe4ff; }
.popup_body_top .img_box_wrap .img_box img { padding:10px; width:100%; height:100%; object-fit:contain; }
.popup_body_mid { display:flex; justify-content:center; align-items:center; width:100%; }
.popup_body_mid button { display:flex; justify-content:center; align-items:center; padding:10px; width:100%; color:var(--primary-70); background-color:var(--sub-10); border:1px solid var(--primary-70); border-radius:3px; }
.popup_body_btm { display:flex; justify-content:center; align-items:center; width:100%; }
.popup_body_btm p { font-size:1.6rem; color:#ef4444; }
.popup_footer { display:flex; justify-content:center; align-items:center; gap:10px; padding:0 0 50px 0; background-color:#fff; border-radius:0 0 10px 10px; }
.popup_footer button { padding:10px 30px; color:#fff; }
.popup_footer button.popup_cancel_btn { background-color:#ddd; }
.popup_footer button.popup_save_btn { background-color:var(--primarymain-50); }

.ai_desc_popup .popup_inner { max-width:700px; }
.ai_desc_popup .popup_inner .popup_body { padding:25px 30px; border-radius:0 0 10px 10px; }
.ai_desc_popup .popup_inner .popup_body .ai_content { font-size:1.6rem; color:#333; }
.ai_desc_popup .popup_inner .popup_body .ai_content .row01 p { font-size:1.8rem; word-break:break-word; }
.ai_desc_popup .popup_inner .popup_body .ai_content .row01 p span { font-weight:bold; }
.ai_desc_popup .popup_inner .popup_body .ai_content .row02 { margin-top:40px;  }
.ai_desc_popup .popup_inner .popup_body .ai_content .row02 p { margin-bottom:10px; font-size:1.8rem; color:var(--primary-40); font-weight:bold; }
.ai_desc_popup .popup_inner .popup_body .ai_content .list01 { padding-left:20px; }
.ai_desc_popup .popup_inner .popup_body .ai_content .list01 > li { list-style:decimal; line-height:30px; }
.ai_desc_popup .popup_inner .popup_body .ai_content .list02 { margin-bottom:10px; }
.ai_desc_popup .popup_inner .popup_body .ai_content .list02 > li { position:relative; padding-left:13px; }
.ai_desc_popup .popup_inner .popup_body .ai_content .list02 > li:before { content:""; position:absolute; top:9.5px; left:3px; width:4px; height:4px; border-radius:50%; background-color:#333; }
.ai_desc_popup .popup_inner .popup_body .ai_content .list02 > li span { font-weight:bold; color:var(--primary-40) }

/* 레이어 팝업 테이블 */
#layerContent { width:100%; }

/* ### 상세 페이지 ### */
/* 상세 해더 */
.dtl_cont_header { display:flex; justify-content:space-between; align-items:stretch; gap:30px; margin-bottom:50px; }
.dtl_cont_header > div { flex:1; }
.dtl_cont_header .cont_header_img { display:flex; justify-content:center; align-items:center; min-height:432px; border-radius:10px; }
.dtl_cont_header .cont_header_img.placeholder { color:#94a3b8; /* background-color:#e2e8f0; */ background-color:#f3f5f7; }
.dtl_cont_header .cont_header_img img { width:100%; height:100%; object-fit:contain; }
.dtl_cont_header .dtl_header_info { display:flex; flex-direction:column; justify-content:start; }
.dtl_cont_header .info_tag { display:flex; justify-content:start; align-items:center; gap:10px; margin-bottom:12px; }
.dtl_cont_header .info_tag .tag { display:inline-block; font-size:1.3rem; font-weight:500; padding:5px 12px;  border-radius:30px; }
.dtl_cont_header .info_tag .tag_blue { color:#4338ca; background-color:#e0e7ff; }
.dtl_cont_header .info_tag .tag_green { color:#047857; background-color:#d1fae5; }
.dtl_cont_header .info_tit { margin-bottom:30px; min-height:90px; font-size:3rem; font-weight:bold; color:#333; }
.dtl_cont_header .info_meta { margin-bottom:30px; }
.dtl_cont_header .info_meta p { font-size:1.6rem; color:#4b5563; font-weight:500; }
.dtl_cont_header .info_meta p .meta_label { color:#333;  }
.dtl_cont_header .info_status { display:flex; justify-content:start; align-items:center; gap:10px; margin-bottom:25px; padding:20px; background-color:#f8f9fa; border-radius:8px; }
.dtl_cont_header .info_status > div { flex:1; }
.dtl_cont_header .status_label { font-size:1.4rem; font-weight:500; color:#6b7280; }
.dtl_cont_header .status_value { font-size:1.8rem; font-weight:bold; color:#333; }
.dtl_cont_header .info_download { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:12px;  }
.dtl_cont_header .dwn_btn { display:flex; justify-content:center; align-items:center; padding:6px 20px; font-size:1.6rem; color:#9ca3af; background-color:#fff; border:1px solid #d1d5db; border-radius:6px; text-align:center; }
/* .dtl_cont_header .dwn_btn img { margin-right:10px; } */
.dtl_cont_header .dwn_btn.icon_download:before { content:""; width:25px; height:25px; background:url("../../../../images/content/icon_download.svg") center/15px 15px no-repeat; }
/* 특허 */
.dtl_cont_patent { display:flex; justify-content:space-between; align-items:stretch; gap:50px; margin-bottom:50px; }
.dtl_cont_patent > div { flex:1; }
.dtl_cont_patent > div .patent_tit { margin-bottom:20px; padding-bottom:15px; font-size:2rem; font-weight:bold; color:#333;  border-bottom:1px solid #e5e7eb; }
.dtl_cont_patent > div ul li { display:grid; grid-template-columns:1fr auto; gap:20px; padding:10px 0; }
.dtl_cont_patent > div ul li p { font-size:1.6rem; }
.dtl_cont_patent > div ul li p a { font-size:1.6rem; font-weight:400; color:#333; }
.dtl_cont_patent > div ul li p:first-child { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dtl_cont_patent > div ul li p:last-child  { color:var(--primary-40); }
/* 내용 */
.section_header h2 { position:relative; padding-bottom:15px; font-size:2rem; font-weight:bold; color:#333; border-bottom:2px solid #dedede; }
.section_header h2:after { content:""; position:absolute; bottom:-2px; left:0; width:50px; height:4px; background-color:#94a3b8; border-radius:4px; }
.section_header h2 span { color:var(--primary-40); }
.section_header button { display:flex; justify-content:center; align-items:center; position:absolute; bottom:10px; right:0; padding:1px 15px; height:40px; font-size:1.5rem; color:#fff; background-color:var(--primarymain-50); border-radius:3px; }
.dtl_desc_row p { margin-top:15px; line-height:25px; font-size:1.6rem; color:#374151; }
/* 댓글 */
.comment_wrap { margin-top:15px; }
.comment_textarea { padding:15px; width:100%; min-height:100px; font-size:1.4rem; color:#333; border:1px solid #d1d5db; border-radius:8px; resize:vertical; transition:border-color 0.3s ease; }
.comment_textarea:focus {  border-color:var(--submain-50); }
.comment_textarea::placeholder { color:#ccc; }
.comment_actions { display:flex; justify-content:end; align-items:center; margin-top:10px; }
.comment_btn { padding:9px 17px; background-color:#E2E8F0; color:var(--primarymain-50); border-radius:6px; font-size:1.5rem; font-weight:500; transition:all 0.3s ease; }
.comment_btn:hover { transform:translateY(-1px); }
.comment_btn:active { transform:translateY(0); }
.reply_wrap:not(:first-child) { margin-bottom:15px; }
.reply_wrap .reply_row { margin-top:15px; padding:25px 20px; background-color:#f9fafb; border-radius:8px; }
.reply_wrap .reply_row:first-child { margin-top:0; }
.reply_row .reply_meta { display:flex; justify-content:space-between; align-items:center;  }
.reply_row .reply_meta p:first-child { margin-top:0; font-size:1.7rem; font-weight:bold; color:#333; }
.reply_row .reply_meta p:last-child { margin-top:0; font-size:1.4rem; font-weight:400; color:#666; letter-spacing:0.5px; }
.reply_row .reply_text p { margin-top:20px; font-size:1.6rem; font-weight:400; color:#333; }
.reply_row .reply_action { display:flex; justify-content:start; align-items:center; gap:15px; margin-top:20px;  }
.reply_row .reply_action button { font-size:1.4rem; color:#666; background-color:transparent; }
.reply_row .reply_action button:last-child { color:#ef4444; }
.reply_wrap.depth01 { margin-top:30px; }
.reply_wrap.depth02 { position:relative; padding-left:54px; }
.reply_wrap.depth02:before { content:""; position:absolute; left:25px; top:0; bottom:0; width:2px; background:linear-gradient(to bottom, #e1e4e8, #fdfdfd); }

/* ### 상담신청 ### */
.apply_header { display:flex; justify-content:center; align-items:center; width:100%; height:87px; background-color:#f9fafb; border:1px solid #eefaf3; border-radius:10px; }
.apply_header h2 { font-size:2.5rem; font-weight:bold; color:#333; }
/* checkbox 기본 스타일 */
.form_section input[type="text"]::placeholder { color:#c9c9c9; }
.form_section input[type="checkbox"] { margin:0; padding:0; width:16px; height:16px; background-color:#fff; border:1px solid #d1d5db; border-radius:3px; vertical-align:inherit; -webkit-appearance:none; -moz-appearance:none; appearance:none; }
.form_section input[type="checkbox"]::after { content:""; display:none; position:relative; top:50%; left:50%; border:solid #fff; border-width:0 2px 2px 0;  width:3px; height:7px; transform:rotate(45deg) translate(-100%, -30%); }
.form_section input[type="checkbox"]:checked { background-color:var(--primary-40); }
.form_section input[type="checkbox"]:checked::after { display:block; }
/* 상담요청내용 */
.form_section { margin-top:20px; padding:30px 20px; background-color:#f8fafc; border:1px solid #f1f5f9; border-radius:10px; }
.form_section .category_tit { padding-bottom:10px; font-size:1.6rem; color:#333; border-bottom:1px solid #dedede; }
.form_section .category_tit.required_item:after { content:"*"; margin-left:3px; font-size:1.6rem; color:#ef4444; }
.form_section .form_group { display:grid; grid-template-columns:repeat(6, minmax(0, 1fr)); gap:20px; margin-top:15px; }
.form_section .form_group .group_item p,
.form_group_inner,
.form_section .form_group .group_item a { display:flex; justify-content:start; align-items:center; padding:0 10px; height:40px; line-height:40px; font-size:1.6rem; color:#333; background-color:#fff; border:1px solid #eef1f3; border-radius:5px; }
.form_section .form_group .group_item p { min-height:42px; color:#b9bfca; cursor:not-allowed;}
.form_section .form_group .group_item a.icon img { margin-right:10px; width:15px; }
.form_section .form_group label { display:block; }
.form_section .form_group .form_group_item { transition:all 0.3s ease; }
.form_section .form_group .form_group_item label { display:flex; justify-content:start; align-items:center; gap:5px; font-size:1.4rem; color:#333; cursor:pointer; }
.form_section .form_group.form_full { grid-template-columns:repeat(1, minmax(0, 1fr)); }
.form_section .form_group.form_full .form_group_item textarea { padding:15px; width:100%; min-height:100px; font-size:1.4rem; color:#333; border:1px solid #d1d5db; border-radius:8px; resize:vertical; }
.form_section .form_group02 .form_group_item textarea:focus { border-color:var(--primary-40); }
.form_section .form_group02 .form_group_item textarea::placeholder { color:#a9a3b4; }
/* hover */
.form_section .form_group .form_group_item:hover { transform:translate(-2px); transition:all 0.3s ease; }
.form_section .form_group .group_item a.linked:hover { color:var(--primary-40); text-decoration:underline; }
.form_section .form_group .group_item a.icon:hover img { filter:brightness(0) saturate(100%) invert(18%) sepia(98%) saturate(2298%) hue-rotate(198deg) brightness(96%) contrast(104%); }
/* 신청기업정보 */
.form_section .form_div { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:20px; }
.form_section .form_div.grid_full .form_div_inner {  grid-column:span 2; }
.form_section .form_div .form_div_inner .form_group { grid-template-columns:repeat(1, minmax(0, 1fr)); }
.form_section .form_group input[type="text"]:read-only { font-size:1.6rem; color:#000; cursor:not-allowed; }
.form_section .form_group input[type="text"],
.form_section .form_group select,
.form_section .form_group_flex select,
.form_section .form_group_flex input[type="text"],
.form_section .form_group_flex input[type="date"] { padding:10px 20px; width:100%; height:40px; border:1px solid #a9a3b4; border-radius:3px !important; }
.form_section .form_group input[type="text"]:focus,
.form_section .form_group select:focus,
.form_section .form_group_flex select:focus,
.form_section .form_group_flex input[type="text"]:focus { border-color:var(--primary-40); }
.form_section .form_group_flex { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-top:15px; }
.form_section .form_group_flex .group_item { flex:1 1 0%; }
.form_section .form_group_flex .group_item.dash,
.form_section .form_group_flex .group_item.at { position:relative; }
.form_section .form_group_flex .group_item.dash:after { content:"-"; position:absolute; top:50%; right:-13px; font-size:1.6rem; color:#333; transform:translateY(-50%); }
.form_section .form_group_flex .group_item.at:after { content:"@"; position:absolute; top:50%; right:-17px; font-size:1.4rem; color:#333; transform:translateY(-50%); }
/* 개인정보 */
.form_section .policy { padding:20px; min-height:200px; background-color:#fff; border:1px solid #d1d5db; border-radius:8px; overflow:hidden; overflow-y:auto }
.form_section .agree_wrap .form_group { grid-template-columns:repeat(1, minmax(0, 1fr)); justify-items:end; }
.form_section .agree_wrap .form_group .group_item label { display:flex; justify-content:start; align-items:center; gap:5px; font-size:1.4rem; color:#333; cursor:pointer; }
.form_section .policy > p { font-size:1.4rem; color:#333; }
.form_section .policy .list01 { padding-left:20px; font-size:1.4rem; color:#333; font-size:1.6rem; color:#333;}
.form_section .policy .list02 { margin-bottom:10px; font-size:1.4rem; color:#333; }
.form_section .policy .list02 > li { position:relative; padding-left:13px; }
.form_section .policy .list02 > li:before { content:""; position:absolute; top:9.5px; left:3px; width:4px; height:4px; border-radius:50%; background-color:#333; }


/* ### 버튼 공통 ### */
.basic_btn { display:flex; justify-content:center; align-items:center; padding:7px 25px; min-width:80px; height:40px; font-size:1.7rem; border-radius:5px;  }
.sm_btn { display:flex; justify-content:center; align-items:center;  padding:1px 15px; height:35px; font-size:1.5rem; border-radius:3px; }
.btn_bg_blue { color:var(--white-color); background-color:var(--color-blue); }
.btn_bg_gray { color:var(--white-color); background-color:#ccc; }
.btn_bg_navy { color:var(--white-color); background-color:var(--color-navy); }

/* ### 테이블 공통 - 목록형 ### */
.tbl_wrapper { border-radius:5px 5px 0 0; overflow:hidden; }
table.tbl_style01,
table.tbl_style01 * { all:revert; /* 브라우저 기본값으로 리셋 */ }
table.tbl_style01 { table-layout:fixed; width:100%; border-spacing:0; border-collapse:collapse; }
table.tbl_style01 .blind_txt { position:absolute; margin:-1px; padding:0; width:1px; height:1px; border:0; overflow:hidden; clip:rect(0, 0, 0, 0); white-space:nowrap; }
table.tbl_style01 tr th { padding:10px; height:53px; font-size:1.4rem; font-weight:bold; color:#484848; text-align:center; background-color:#e3ecfa; }
table.tbl_style01 tr th.required_item:after { content:"*"; margin-left:3px; font-size:1.6rem; color:#ef4444; }
table.tbl_style01 tr td { padding:13px 10px; height:45px; font-size:1.4rem; color:#484848; text-align:center; border-bottom:1px solid  #ccc; word-break:break-all; }
table.tbl_style01 tr td.ellipsis { text-overflow:ellipsis; white-space:nowrap; overflow:hidden; }
table.tbl_style01 tr td.left { text-align:left; }
table.tbl_style01 tr td.transTxt { text-transform:uppercase; }/* 모든 소문자 강제로 대문자로 바꾸는 css */
table.tbl_style01 tr td a { color:#333; text-decoration:none; }
table.tbl_style01 tr td a:hover { color:#0056b3; text-decoration:underline; }
table.tbl_style01 button { margin:0; padding:0; border:none; outline:none; cursor:pointer; }
table.tbl_style01 input[type="checkbox"] { margin:0; padding:0; width:16px; height:16px; background-color:#fff; border:1px solid #d1d5db; border-radius:3px; vertical-align:inherit; -webkit-appearance:none; -moz-appearance:none; appearance:none; }
table.tbl_style01 input[type="checkbox"]::after { content:""; display:none; position:relative; top:50%; left:50%; border:solid #fff; border-width:0 2px 2px 0;  width:3px; height:7px; transform:rotate(45deg) translate(-100%, -30%); }
table.tbl_style01 input[type="checkbox"]:checked { background-color:var(--primary-40); border-color:var(--primary-40); }
table.tbl_style01 input[type="checkbox"]:checked::after { display:block; }
table.tbl_style01 .item_lable { display:flex !important; justify-content:center !important; align-items:center !important; gap:5px !important; cursor:pointer !important; }
table.tbl_style01 input[type="radio"] { margin:0; padding:0; width:16px; height:16px; background-color:#fff; border:1px solid #d1d5db; border-radius:50%; vertical-align:inherit; -webkit-appearance:none; -moz-appearance:none; appearance:none; }
table.tbl_style01 input[type="radio"]::after { content:""; display:none; position:relative; top:50%; left:50%; width:6px; height:6px; background-color:#fff; border-radius:50%; transform:translate(-50%, -50%); }
table.tbl_style01 input[type="radio"]:checked { background-color:var(--primary-40); border-color:var(--primary-40); }
table.tbl_style01 input[type="radio"]:checked::after { display:block; }
table.tbl_style01 .blue_btn { display:flex !important; justify-content:center !important; align-items:center !important; padding:5px 15px !important; font-size:1.3rem !important; color:var(--primary-70) !important; background-color:var(--sub-10) !important; border:1px solid var(--primary-70) !important; border-radius:5px !important; }
table.tbl_style01 input[type="text"],
table.tbl_style01 input[type="date"] { padding:5px 10px; width:100%; height:35px; border:1px solid #a9a3b4; border-radius:3px !important; }
.table.tbl_style01 .grid_type01 { display:grid !important; grid-template-columns:repeat(1, minmax(0, 1fr)) !important; gap:10px !important; } 
.table.tbl_style01 .grid_type02 { display:grid !important; grid-template-columns:repeat(2, minmax(0, 1fr)) !important; gap:10px !important; } 



.srch_group.srch_group02 select { flex:1; }
.srch_group.srch_group02 .basic_srch_label { flex:6; }

/* 기술목록 관리자 */
/* checkbox 기본 스타일 */
.check_list_wrap input[type="checkbox"] { margin:0; padding:0; width:16px; height:16px; background-color:#fff; border:1px solid #d1d5db; border-radius:3px; vertical-align:inherit; -webkit-appearance:none; -moz-appearance:none; appearance:none; }
.check_list_wrap input[type="checkbox"]::after { content:""; display:none; position:relative; top:50%; left:50%; border:solid #fff; border-width:0 2px 2px 0;  width:3px; height:7px; transform:rotate(45deg) translate(-100%, -30%); }
.check_list_wrap input[type="checkbox"]:checked { background-color:var(--color-blue); border-color:var(--color-blue); }
.check_list_wrap input[type="checkbox"]:checked::after { display:block; }
.check_list_wrap { margin-top:30px;  padding:30px 20px; background-color:#f8f9fa; border:1px solid #e1e4e8; border-radius:8px; }
.check_list_wrap .check_list { display:flex !important; flex-direction:column; gap:12px; padding:0 10px; }
.check_list .check_list_item { display:flex; align-items:center; cursor:pointer; padding:16px 20px; font-size:1.4rem; background-color:#fff; border:1px solid #e1e4e8; border-radius:6px; transition:all 0.2s; gap:5px; }
.check_list_item:hover { background-color:#f0f7ff; border-color:#0066cc; }
.check_list_item input[type="checkbox"] { width:18px; height:18px; margin-right:12px; cursor:pointer; }
.check_list_item label { font-size:1.4rem; cursor:pointer; }
.pagination { display:flex; justify-content:center; align-items:center; gap:20px; margin-top:30px; }
.paging_btn { display:flex; align-items:center; justify-content:center; width:34px; height:34px; font-size:1.8rem; color:#666; background-color:#fff; border:1px solid #d1d5db; border-radius:3px; cursor:pointer; }
.paging_btn img { width:14px; height:14px; filter:brightness(0) saturate(100%) invert(15%) sepia(9%) saturate(10%) hue-rotate(360deg) brightness(91%) contrast(83%); }
.paging_btn.prev_btn img {  transform:rotate(180deg); }
.paging_btn:hover { background-color:#f3f4f6; }
.paging_btn.disabled { opacity:0.4; cursor:not-allowed; }
.pagination_text { font-size:1.4rem; color:#666; }

/* 순서 배치 섹션 */
.order_wrap { margin-top:50px; }
/* .order_wrap .order_card_grid { display:grid; grid-template-columns:repeat(4, 1fr); gap:20px; margin-top:30px; padding:30px; background-color:#f9fafb;  border:1px dashed #d7d7d7; border-radius:10px; } */
/* .order_card_grid .order_card { position:relative; background-color:#fff; border:1px solid #e1e4e8; border-radius:8px; overflow:hidden; min-height:299.5px; max-height:299.5px; } */
.order_card_grid .order_card { display:flex; flex-direction:column; position:relative; width:100%; height:100%; background-color:#fff; border:1px solid #e1e4e8; border-radius:8px; overflow:hidden; transition:box-shadow 0.2s; }
.order_card_grid .order_card:hover { box-shadow:0 4px 12px rgba(0,0,0,0.1); }
.order_wrap .order_card_grid { display:block; margin-top:30px; padding:20px; background-color:#f9fafb;  border:1px dashed #d7d7d7; border-radius:10px; }

.order_card .card_header {  display:flex; align-items:center; justify-content:center; padding:20px 20px 0 20px; }
.order_card .card_header .card_image { display:flex; align-items:center; justify-content:center; width:100%; height:140px; background-color:#fff; border:1px solid #e2e8f0; border-radius:5px; }
.order_card .card_header .card_image.placeholder { color:#94a3b8; background-color:#e2e8f0;}
.order_card .card_header .card_image img { width:100%; height:100%; border-radius:5px; /* object-fit:contain; */ object-fit:cover; pointer-events:none; }
.order_card .card_close { display:flex; align-items:center; justify-content:center; position:absolute; top:10px; right:10px; width:24px; height:24px; font-size:1.6rem; color:#666; box-shadow:0 2px 4px rgba(0,0,0,0.1); background-color:#f1f3f5; border:none; border-radius:50%; cursor:pointer; z-index:10; }
.order_card .card_close img { width:10px; height:10px; filter:brightness(0) saturate(100%) invert(48%) sepia(10%) saturate(387%) hue-rotate(167deg) brightness(92%) contrast(91%); }
.order_card .card_close:hover { background-color:#aed5ff; }
.order_card .card_close:hover img { filter:brightness(0) saturate(100%) invert(32%) sepia(15%) saturate(476%) hue-rotate(165deg) brightness(91%) contrast(88%); }
.order_card .card_content { padding:16px; flex-grow:1; }
.order_card .card_badge { display:inline-block; margin-bottom:8px; padding:5px 12px; font-size:1.2rem; color:#fff; background-color:var(--sub-40); border-radius:30px; }
.order_card .card_tit { margin-bottom:6px; min-height:40px; font-size:1.5rem; font-weight:bold;  color:#1f2937; max-height:44px; overflow-y:hidden; }
.order_card .card_sub_tit { font-size:1.3rem; color:#6c757d; max-height:20px; overflow-y:hidden;}
/* GridStack이 제어 */
.grid-stack { display:block; margin:0; width:100%; min-height:300px; }
.grid-stack-item { height:320px !important; }
.grid-stack-item-content { display:block; position:absolute !important; height:100%; min-height:299.5px; max-height:299.5px; border-radius:8px !important; overflow:hidden; border:none !important; }
.grid-stack-placeholder > .placeholder-content { background-color:rgba(12, 140, 233, 0.1) !important; border:2px dashed #0c8ce9 !important; border-radius:8px; }

/* ### 전자계약 --primary-40 ### */
.grid_type01 { display:grid !important; grid-template-columns:repeat(1, minmax(0, 1fr)) !important; gap:10px !important; }  
.grid_type02 { display:grid !important; grid-template-columns:repeat(2, minmax(0, 1fr)) !important; gap:10px !important; }  
.e_contract_conts h3 { font-size:2rem; font-weight:bold; color:#333; }
.e_contract_tbl_wrap .tbl_tit { font-size:1.6rem; color:#333; }
/* 인장정보 */
.form_section .form_div .form_div_inner .form_group.group_type02 { grid-template-columns:repeat(2, minmax(0, 1fr)); gap:10px; }
.form_section .form_div .form_div_inner .form_group.group_type02_02 { grid-template-columns:1fr auto;; gap:10px; }
.form_section .form_div .form_div_inner .form_group.group_type02_02 button.blue_btn { display:flex; justify-content:center; align-items:center; padding:5px 15px; font-size:1.3rem; color:var(--primary-70); background-color:var(--sub-10); border:1px solid var(--primary-70); border-radius:5px; }
.form_group .group_item a.primary_img { position:relative; } 
.form_group .group_item a.primary_img:after { content:"대표"; position:absolute; top:50%; right:10px; padding:5px 15px; line-height:15px; font-size:1.4rem; color:#fff; background-color:var(--primary-40); border-radius:20px; transform:translateY(-50%);}
.file_upload_btn_wrap input[type="file"]{ position:absolute !important; margin:-1px !important; padding:0 !important; width:1px !important; height:1px !important; overflow:hidden !important; clip:rect(0, 0, 0, 0) !important; white-space:nowrap !important; border:0 !important; }
table.tbl_style01 .file_upload_btn_wrap { position:absolute; top:50%; right:0; transform:translateY(-50%); }
.e_contract .form_section .form_div .form_div_inner .form_group .contract_grid_type02 { display:grid !important;  grid-template-columns:repeat(2, max-content) !important; gap:20px !important; }
.e_contract input[type="radio"] { margin:0; padding:0; width:16px; height:16px; background-color:#fff; border:1px solid #d1d5db; border-radius:50%; vertical-align:inherit; -webkit-appearance:none; -moz-appearance:none; appearance:none; }
.e_contract input[type="radio"]::after { content:""; display:none; position:relative; top:50%; left:50%; width:6px; height:6px; background-color:#fff; border-radius:50%; transform:translate(-50%, -50%); }
.e_contract input[type="radio"]:checked { background-color:var(--primary-40); border-color:var(--primary-40); }
.e_contract input[type="radio"]:checked::after { display:block; }

/* 전자계약 진행 표시 */
.progress_wrap { padding:50px 20px 40px 20px; width:100%; max-width:1200px; background-color:#f8fafc; border:1px solid #f1f5f9; border-radius:12px; overflow:hidden; }
.progress_inner { display:flex; justify-content:space-between; align-items:flex-start; position:relative; padding-bottom:10px; /* 스크롤바 공간 확보 */ overflow-x:auto; -webkit-overflow-scrolling:touch; }
.progress_inner .step { flex:1; display:flex; flex-direction:column; align-items:center; position:relative; margin:15px 0; min-width:100px; z-index:1; }
.progress_inner .step::after { content:""; position:absolute; top:calc(25% + 10px); left:50%; width:100%; height:5px; background-color:#e0e0e0; transform:translateY(-50%); z-index:-1; /* 원 뒤로 배치 */ }
.progress_inner .step:last-child::after { display:none; }
.progress_inner .node { display:flex; justify-content:center; align-items:center; position:relative; /* z-index 적용을 위해 */ margin-bottom:20px; width:70px; height:70px; font-size:1.8rem; color:#aaa; background-color:#fff; border:3px solid #e0e0e0; border-radius:50%; transition:all 0.3s ease; z-index:2; }
.progress_inner .num { line-height:1; }
.progress_inner .label { line-height:1.4; font-size:1.5rem; font-weight:600; color:#333; text-align:center; word-break:keep-all; }
/* 완료된 단계 - 녹색 */
.progress_inner .step.check .node { color:transparent; background-color:#3dd384; border-color:#3dd384; }
.progress_inner .step.check::after { background-color:#3dd384; }
.progress_inner .step.check .node::before { content:""; position:absolute; width:30px; height:30px; background:url("../../../../images/content/icon_check_wh.svg") center/contain no-repeat; }
/* 현재 진행 단계 - 파란색 */
.progress_inner .step.active .node { position:relative; color:#fff; background-color:#5577ff; border-color:#5577ff; transform:scale(1.1); }
.progress_inner .step.active::after { background-color:#E0E0E0; }
.progress_inner .step.active .node::before { content:""; position:absolute; top:-5px; left:-5px; right:-5px; bottom:-5px; border:7px solid rgba(41,98,255,0.7); border-radius:50%; animation:current_ring 2s infinite; }
@keyframes current_ring {
    0%, 100% {
        opacity:1;
        transform:scale(1);
    }
    50% {
        opacity:0.6;
        transform:scale(1.15);
    }
}
/* 진행 예정 - 회색 */
.progress_inner .step.basic .node { color:#aaa; background-color:#fff; border-color:#e0e0e0; }

/* 윈도우 오픈 팝업 */
.popup_container { margin:0 auto; width:100%; max-width:1100px; }
.popup_container .window_popup_header { display:flex; justify-content:center; align-items:start; flex-direction:column; gap:5px; position:relative; padding:0 20px; width:100%; max-width:1100px; height:65px; background-color:#fff; background-image:none; border-bottom:1px solid #aed5ff; border-radius:none; }
.popup_container .window_popup_header:after { content:""; position:absolute; bottom:-2px; left:20px; width:50px; height:4px; background-color:var(--primary-40); border-radius:4px; }
.popup_container .window_popup_header small { font-size:1.4rem; color:#333; } 
.popup_container .window_popup_body { padding:20px; }
.popup_container .window_popup_body .basic_btn { padding:5px 20px; height:36px; font-size:1.4rem; }
.popup_container .window_popup_body .dtl_srch { padding:20px 35px; }
.popup_container .window_popup_body .dtl_srch .srch_label { min-width:auto; }
.popup_container .window_popup_body .dtl_srch .srch_input { padding:7px 10px; }

/* 기술이전 사업화 현황 팝업 */
.tech_commz_status.popup_container { margin:0 auto; max-width:1920px; min-height:100vh; background-color:#fff; border-left:1px solid #eee; border-right:1px solid #eee; }
.tech_commz_status .popup_header { display:flex; justify-content:space-between; align-items:center; padding:0 26px; height:60px; background-color:#fff; background-image:none; border-bottom:1px solid #e0e0e0; }
.tech_commz_status .logo_area { font-size:2.4rem; font-weight:700; letter-spacing:-1px; }
.tech_commz_status .header_right { display:flex; align-items:center; gap:20px; }
.tech_commz_status .user_profile { display:flex; align-items:center; justify-content:center; width:32px; height:32px; font-weight:bold; color:#ffffff; background-color:var(--primary-40); border-radius:50%; }
.tech_commz_status .tab_mn_wrap { display:flex; align-items:center; flex-wrap:wrap; padding:5px 26px; border-bottom:1px solid #e0e0e0; }
.tech_commz_status .tab_menu { display:flex; justify-content:start; align-items:center; }
.tech_commz_status .tab_item { position:relative; padding:12px 24px; font-size:1.8rem; font-weight:500; color:#575656; cursor:pointer; }
.tech_commz_status .tab_item.active { font-weight:700; color:#333; }
.tech_commz_status .tab_item.active::after { content:''; position:absolute; bottom:-5px; left:0; width:100%; height:4px; background-color:#6172f3; }
.tech_commz_status .tab_item_plus { padding:12px 15px; font-size:1.8rem; color:#999; cursor:pointer; }
.tech_commz_status .filter_row { display:flex; align-items:center; flex-wrap:wrap; padding:10px 26px; border-bottom:1px solid #eee; }
.tech_commz_status .filter_row .desc { position:relative; margin-left:10px; padding-left:10px; font-size:1.4rem; color:#878786; }
.tech_commz_status .filter_row .desc:before { content:"*"; position:absolute; top:4px; left:0;  }
.tech_commz_status .filter_row .desc ul li { line-height:15px; font-weight:300; letter-spacing:-0.4px; }
/* 기본 select 디자인 */
.tech_commz_status .select_box { flex:1 1 auto; padding:8px 25px 8px 12px; width:auto; max-width:215px; min-width:180px; min-height:40px; font-size:1.5rem; color:#333; background-color:#fff; background-image:url("../../../../images/content/icon_arrow.svg"); background-repeat:no-repeat; background-position:right 8px center; background-size:12px; border:1px solid #d2d6db; border-radius:8px; cursor:pointer; appearance:none; outline:none; }
.tech_commz_status .select_box:focus { border-color:var(--primary-40); }
.tech_commz_status .select_box.wide { min-width:200px; }
/* //기본 select 디자인 */
/* 체크 선택 가능한 select 디자인 */
.tech_commz_status .custom_select_wrap { position:relative; display:inline-block; min-width:190px; width:auto; }
/* selectd(드롭다운) 디자인 변경 */
.dropdown_wrapper { display:flex; gap:20px; flex-wrap:wrap; }
.dropdown_wrapper .custom_select { position:relative; width:200px; user-select:none; cursor:pointer; }
.dropdown_wrapper .custom_select::after { content:""; display:block; position:absolute; top:50%; right:12px; margin:-4px 0 0 10px; width:8px; height:8px; border-right:2px solid #333; border-bottom:2px solid #333; transform:translateY(-50%) rotate(45deg); transition:transform 0.3s; }
.dropdown_wrapper .custom_select.active::after { transform:rotate(-135deg); }
.dropdown_wrapper .selected_value { padding:10px 12px; font-size:1.5rem; color:#333; white-space:nowrap; background-color:#fff; border:1px solid #ccc; border-radius:8px; text-overflow:ellipsis; overflow:hidden; }
.dropdown_wrapper .selected_value:hover { background-color:#f9f9f9; }
.dropdown_wrapper .options_list { display:none; position:absolute; top:100%; left:0; margin-top:4px; padding:16px; width:100%; max-height:300px; background-color:#fff; border:1px solid #d2d6db; border-radius:8px; box-shadow:0 4px 12px rgba(0, 0, 0, 0.1); scrollbar-width:thin; scrollbar-color:rgba(0, 0, 0, 0.15) transparent; overflow-y:auto; z-index:10; }
.dropdown_wrapper .options_list::-webkit-scrollbar { width:4px; }
.dropdown_wrapper .options_list::-webkit-scrollbar-track { background:transparent; }
.dropdown_wrapper .options_list::-webkit-scrollbar-thumb { background:rgba(0, 0, 0, 0.15); border-radius:2px; }
.dropdown_wrapper .options_list::-webkit-scrollbar-thumb:hover { background:rgba(0, 0, 0, 0.25); }
.dropdown_wrapper .options_ul li { padding:8px 0; font-size:1.4rem; color:#333; white-space:nowrap; text-overflow:ellipsis; transition:background-color 0.2s; overflow:hidden; }
.dropdown_wrapper .options_ul li:hover { background-color:#f5f7fa; }
.dropdown_wrapper .real_select { display:none; }
.tech_commz_status .custom_select_trigger { display:flex; align-items:center; justify-content:space-between; padding:8px 12px; width:100%; min-height:40px; font-size:1.5rem; color:#333; background-color:#fff; border:1px solid #d2d6db; border-radius:8px; cursor:pointer; user-select:none; } 
.tech_commz_status .custom_select_trigger::after { content:""; display:block; margin:-4px 0 0 10px; width:8px; height:8px; border-right:2px solid #333; border-bottom:2px solid #333; transform:rotate(45deg); transition:transform 0.3s; }
.tech_commz_status .custom_select_wrap.active .custom_select_trigger { border-color:var(--primary-40); } 
.tech_commz_status .custom_select_wrap.active .custom_select_trigger::after { margin-top:4px; transform:rotate(-135deg); } 
.tech_commz_status .custom_options { display:none; position:absolute; top:100%; left:0; z-index:100; margin-top:4px; padding:16px; width:100%; max-height:300px; overflow-y:auto; background-color:#fff; border:1px solid #d2d6db; border-radius:8px; box-shadow:0 4px 12px rgba(0, 0, 0, 0.1); scrollbar-width:thin; scrollbar-color:rgba(0, 0, 0, 0.15) transparent; } 
.tech_commz_status .custom_options::-webkit-scrollbar { width:4px; }
.tech_commz_status .custom_options::-webkit-scrollbar-track { background:transparent; }
.tech_commz_status .custom_options::-webkit-scrollbar-thumb { background:rgba(0, 0, 0, 0.15); border-radius:2px; }
.tech_commz_status .custom_options::-webkit-scrollbar-thumb:hover { background:rgba(0, 0, 0, 0.25); }
.tech_commz_status .custom_select_wrap.achievement .custom_options { min-width:600px; }
.tech_commz_status .custom_select_wrap.active .custom_options { display:block; }
.tech_commz_status .custom_select_wrap.active .custom_options .custom_options_tit { margin-bottom:15px; padding:10px 0 8px 0; font-size:1.5rem; font-weight:500; border-bottom:1px solid #e5e7eb; }
.tech_commz_status .custom_select_wrap.active .custom_options .custom_option_item.all_chk { margin-bottom:10px; padding:10px 0 8px 0; font-size:1.5rem; font-weight:500; border-bottom:1px solid #e5e7eb; }
.tech_commz_status .custom_select_wrap.active .custom_options .custom_options_tit input[type="checkbox"] { margin-right:10px; width:16px; height:16px; cursor:pointer; accent-color:var(--primary-40); }
.tech_commz_status .custom_select_wrap.active .custom_options .custom_options_tit label span { margin-left:5px; font-size:1.3rem; color:#7d7d7c; } 
.tech_commz_status .custom_options_inner { display:flex; gap:24px; }
.tech_commz_status .custom_option_group { flex:1; } 
.tech_commz_status .custom_option_group_title { font-size:1.5rem; font-weight:500; color:#333; margin-bottom:12px; }
.tech_commz_status .custom_option_group ul { list-style:none; padding:0; margin:0; } 
.tech_commz_status .custom_option_item { display:flex; align-items:center; padding:8px 0; cursor:pointer; transition:background-color 0.2s; } 
.tech_commz_status .custom_option_item:hover { background-color:#f5f7fa; } 
.tech_commz_status .custom_option_item input[type="checkbox"] { margin-right:10px; width:16px; height:16px; cursor:pointer; accent-color:var(--primary-40); } 
.tech_commz_status .custom_option_item label { font-size:1.4rem; color:#333; cursor:pointer; flex:1; } 
.tech_commz_status .custom_select_trigger .selected_text.highlight { font-weight:500; color:#333; } 

/* 금액 */
.tech_commz_status .slider_filter_wrap { display:flex; align-items:center; flex:1; gap:15px; margin-left:15px; padding:0 10px; min-width:500px; } 
.tech_commz_status .slider_filter_wrap .group_label { font-size:1.7rem; }
.tech_commz_status .slider_control_area { display:flex; flex-direction:column; justify-content:center; flex:1 1 auto; position:relative; width:100%; margin-top:6px; max-width:250px; } 
.tech_commz_status .slider_val_display { display:flex; justify-content:center; gap:20px; width:100%;  }
.tech_commz_status .slider_val_display #slider_min_txt { margin-left:-5px; }
.tech_commz_status .slider_val_display #slider_min_txt input[type="number"] { width:100%; height:100%; }
.tech_commz_status .slider_val_display #slider_max_txt { margin-right:-10px; }
.tech_commz_status .slider_val_display #slider_max_txt input[type="number"] { width:100%; height:100%; }
.tech_commz_status .slider_val_display .slider_txt { flex:1; display:inline-block; padding:5px 0px 5px 7px; width:100%; max-width:195px; min-width:70px; font-size:1.3rem; font-weight:600; color:#777; text-align:center; background-color:#fff; border:1px solid #d2d6db; border-radius:8px; }
.tech_commz_status .slider_val_display .icon_btn { font-size:1.4rem; color:#6172f3; border-color:#6172f3; }


.tech_commz_status #price_slider { width:100%; }
.tech_commz_status .noUi-target { background:#e5e7eb; border:none; border-radius:6px; box-shadow:none; height:6px; } 
.tech_commz_status .noUi-connect { background:var(--primarymain-50); } 
.tech_commz_status .noUi-handle { width:18px; height:18px; border:2px solid var(--primarymain-50); border-radius:50%; background:#fff; box-shadow:0 2px 4px rgba(0,0,0,0.1); cursor:pointer; top:-7px; right:-9px; } 
.tech_commz_status .noUi-handle::before, .tech_commz_status .noUi-handle::after { display:none; } /* 핸들 내부 라인 제거 */ 
.tech_commz_status .quick_btn_group { display:flex; gap:6px; } 
.tech_commz_status .quick_btn { padding:6px 10px; font-size:1.2rem; font-weight:500; color:#666; background-color:#f3f4f6; border:1px solid #e5e7eb; border-radius:20px; transition:all 0.2s; white-space:nowrap; } 
.tech_commz_status .quick_btn:hover { background-color:#e5e7eb; color:#333; } 
.tech_commz_status .quick_btn.active { background-color:var(--primarymain-50); border-color:var(--primarymain-50); color:#fff; font-weight:700; box-shadow:0 2px 5px rgba(52, 150, 255, 0.3); }
.tech_commz_status .filter_label_group { display:flex; align-items:center; gap:8px; }
.tech_commz_status .filter_label_group .group_label { width:100%; max-width:100px; min-width:100px; font-size:1.7rem; }
.tech_commz_status .filter_label_group .group_date_wrap { display:flex; align-items:center; gap:8px; }
.tech_commz_status .filter_label_group .group_date { position:relative; }
.tech_commz_status .filter_label_group .group_date:last-child { margin-left:12px; }
.tech_commz_status .filter_label_group .group_date input[type="date"],
.tech_commz_status .filter_label_group .group_date input[type="number"],
.tech_commz_status .filter_label_group .group_date input[type="text"] { padding:8px 25px 8px 12px; width:auto; max-width:150px; min-width:130px; min-height:40px; font-size:1.5rem; color:#333; background-color:#fff; border:1px solid #d2d6db; border-radius:8px !important; }
.tech_commz_status .filter_label_group .group_date.dash:after { content:"-"; position:absolute; top:50%; right:-13px; font-size:1.6rem; color:#333; transform:translateY(-50%); }
.tech_commz_status .filter_label_group .group_date input[type="number"] { padding:8px 2px 8px 10px; width:100%; max-width:85px; min-width:60px; }
.tech_commz_status .filter_options { display:flex; justify-content:space-between; align-items:center; gap:15px; margin-left:auto; }
.tech_commz_status .filter_options button { background-color:transparent; }
.tech_commz_status .filter_options .filter_icon { padding:8px; background-color:#fff; }
.tech_commz_status .filter_options .bar { position:relative; }
.tech_commz_status .filter_options .bar:before { content:""; position:absolute; top:50%; left:-7px; width:1px; height:16px; background-color:#d2d6db; transform:translateY(-50%); }
.filter_row .filter_date_group { gap:10px 35px; }

.tech_commz_status .popup_tit_row { display:flex; justify-content:space-between; align-items:center; padding:15px 26px; }
.tech_commz_status .popup_tit_row .popup_tit { font-size:2rem; color:#333; }
/* 그래프 영역 */
.tech_commz_status .summary_tbl { display:block; padding:20px; }
/* 기술이던 사업혀 현황 테이블 */
.tech_commz_status .section_title { font-size:1.8rem; font-weight:700; }
.tech_commz_status .control_btns { display:flex; gap:8px; }
.tech_commz_status .icon_btn { display:flex; align-items:center; gap:6px; padding:3px 12px 3px 10px; font-size:1.6rem; height:40px; line-height:40px; color:#333; background-color:#fff; border:1px solid #d2d6db; border-radius:8px; }
.tech_commz_status .toggle_summary { display:flex; justify-content:start; align-items:center; gap:6px; margin-bottom:1px; font-size:1.5rem; color:var(--primary-40); background-color:#fff; }
.tech_commz_status .toggle_summary .toggle_icon { width:15px; transform:rotate(180deg); transition:all 0.3s ease; filter:brightness(0) saturate(100%) invert(47%) sepia(74%) saturate(2393%) hue-rotate(194deg) brightness(104%) contrast(101%); }
.tech_commz_status .toggle_summary .toggle_icon.rotated { transform:rotate(0deg); transition:all 0.3s ease; }
.tech_commz_status .icon_btn.highlight { color:#1f0987; background:linear-gradient(90deg, rgba(107, 71, 255, 0.10) 0%, rgba(194, 158, 243, 0.10) 72.65%, rgba(215, 178, 240, 0.10) 88.08%, rgba(255, 218, 235, 0.10) 109.72%); border:1px solid #c7bcfe; border-radius:8px; }
/* 현황 카드 */
.tech_commz_status .status_wrap { padding:0 20px; }
.tech_commz_status .status_wrap .status_inner { display:flex; background-color:#fff; border:1px solid #d2d6db; border-radius:10px; overflow:hidden; }
.tech_commz_status .card_group { display:flex; flex-direction:column; flex:1; border-right:1px solid #f0f0f0; }
.tech_commz_status .card_group:last-child { border-right:none; }
.tech_commz_status .stat_card { display:flex; flex-direction:column; justify-content:center; align-items:center; flex:1; padding:24px 10px; text-align:center; border-right:1px solid #e5e7eb; }
.tech_commz_status .card_group .stat_card { height:100%; border-right:none; }
.tech_commz_status .stat_header { padding:12px; font-size:1.8rem; font-weight:600; text-align:center; background-color:#f3f4f6; border-bottom:1px solid #e5e7eb; }
.tech_commz_status .stat_content { display:flex; flex-direction:column; justify-content:center; align-items:center; padding:30px 10px; height:100%; text-align:center; }
.tech_commz_status .stat_label { margin-bottom:15px; padding:10px 0; font-size:1.4rem; font-weight:500; color:#555; background-color:#f8f9fa; border-bottom:1px solid #e5e7eb; }
.tech_commz_status .stat_value { margin-bottom:1px; font-size:2.4rem; font-weight:400; color:#333; }
.tech_commz_status .stat_value_blue { font-size:3.2rem; font-weight:700; color:var(--color-blue); }
.tech_commz_status .stat_unit { margin-left:2px; font-size:1.4rem; font-weight:400; color:#888; }
.tech_commz_status .stat_sub_text { margin-top:5px; font-size:1.6rem; color:#666; }
.tech_commz_status .badge { display:inline-block; margin-top:8px; padding:4px 10px; font-size:1.5rme; color:#555; background-color:#f0f0f0; border-radius:12px; }
.tech_commz_status .tbl_options { display:flex; justify-content:space-between; align-items:center; gap:15px; }
/* .tech_commz_status .tbl_options .btn_excel_download { display:inline-flex; align-items:center; gap:6px; padding:8px 16px; font-size:1.4rem; color:#fff; background-color:#28a745; border-radius:4px; cursor:pointer;  transition:background-color 0.3s; }
.tech_commz_status .tbl_options .btn_excel_download:hover { background-color:#218838; }
.tech_commz_status .tbl_options .btn_excel_download img { width:16px; height:16px; filter:brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(103deg) brightness(105%) contrast(105%); } */
/* .tech_commz_status .tbl_options .switch_wrapper { display:flex; align-items:center; gap:8px; }
.tech_commz_status .tbl_options .switch_input { display:none; }
.tech_commz_status .tbl_options .switch_label { display:flex; align-items:center; gap:8px; margin-right:7px; font-size:1.4rem; color:#333; cursor:pointer; user-select:none; }
.tech_commz_status .tbl_options .switch_track { position:relative; width:36px; height:20px; background-color:#d1d5db; border-radius:20px; transition:background-color 0.3s; }
.tech_commz_status .tbl_options .switch_thumb { position:absolute; top:2px; left:2px; width:16px; height:16px; background-color:#ffffff; border-radius:50%; transition:left 0.3s; }
.tech_commz_status .tbl_options .switch_input:checked + .switch_label .switch_track { background-color:var(--color-indigo); }
.tech_commz_status .tbl_options .switch_input:checked + .switch_label .switch_thumb { left:18px; } */
.tech_commz_status .tbl_options button { padding:8px; background-color:#fff; }
.tech_commz_status .tbl_options button img.icon_btn02 { width:24px; }
.tech_commz_status .tbl_options .bar { position:relative; }
.tech_commz_status .tbl_options .bar:before { content:""; position:absolute; top:50%; left:-7px; width:1px; height:16px; background-color:#d2d6db; transform:translateY(-50%); }

/* 그리드 - tabulator  */
#sttn-table { width:100%; border-radius:10px; box-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1); overflow-x:auto; }
#sttn-table.tabulator { border:none; }
/* thead - 컬럼명 */
#sttn-table.tabulator .tabulator-header { background-color:#fff; border-top:1px solid #e2e8f0; border-bottom:2px solid #e2e8f0;  }
#sttn-table.tabulator .tabulator-header .tabulator-header-contents .tabulator-headers .tabulator-col { background-color:#fff; border-right:none; }
#sttn-table.tabulator .tabulator-header .tabulator-header-contents .tabulator-headers .tabulator-col .tabulator-col-content { background-color:#fff; border-right:none; }
#sttn-table.tabulator .tabulator-header .tabulator-header-contents .tabulator-headers .tabulator-col .tabulator-col-content .tabulator-col-title-holder { display:flex; justify-content:center; align-items:center; height:55px; text-align:center; background-color:#fff;  }/* f8fafc */
#sttn-table.tabulator .tabulator-header .tabulator-header-contents .tabulator-headers .tabulator-col .tabulator-col-content .tabulator-col-title-holder .tabulator-col-title { padding-right:10px; color:#333; }
#sttn-table.tabulator .tabulator-header .tabulator-header-contents .tabulator-headers .tabulator-col .tabulator-col-content .tabulator-col-title-holder .tabulator-col-title div { display:flex; justify-content:center; align-items:center; }
/* sort 아이콘 */
#sttn-table.tabulator .tabulator-header .tabulator-col.tabulator-sortable[aria-sort=none] .tabulator-col-content .tabulator-col-sorter,
#sttn-table.tabulator .tabulator-header .tabulator-col.tabulator-sortable[aria-sort=ascending] .tabulator-col-content .tabulator-col-sorter,
#sttn-table.tabulator .tabulator-header .tabulator-col.tabulator-sortable[aria-sort=descending] .tabulator-col-content .tabulator-col-sorter { right:20px; }
/* thead - 합계 금액 */
#sttn-table.tabulator .tabulator-header .tabulator-header-contents .tabulator-calcs-holder,
#sttn-table.tabulator .tabulator-header .tabulator-header-contents .tabulator-calcs-holder .tabulator-row { background-color:#fff !important; border:none; }
#sttn-table.tabulator .tabulator-header .tabulator-header-contents .tabulator-calcs-holder .tabulator-row .tabulator-cell { display:inline-flex; justify-content:center; align-items:center; height:30px; border-right:1px solid #eee; }
#sttn-table.tabulator .tabulator-header .tabulator-header-contents .tabulator-calcs-holder .tabulator-row .tabulator-cell .total_cnt { display:flex; justify-content:center; align-items:center; }
/* tbody */
#sttn-table.tabulator .tabulator-tableholder { background-color:#fff; }
#sttn-table.tabulator .tabulator-tableholder .tabulator-table { height:100%; }
#sttn-table.tabulator .tabulator-tableholder .tabulator-table .tabulator-row { background-color:#fff; border-bottom:1px solid #eee; }
#sttn-table.tabulator .tabulator-tableholder .tabulator-table .tabulator-row.tabulator-row-even { background-color:#fff; }/* 짝수행 색 변경 */
#sttn-table.tabulator .tabulator-tableholder .tabulator-table .tabulator-row .tabulator-cell { display:inline-block; height:70px; line-height:70px; border-right:none; }
#sttn-table.tabulator .tabulator-tableholder .tabulator-table .tabulator-row .tabulator-cell canvas { display:inline !important; }/* 그래프 가운데 정렬 */
/* hover */
#sttn-table.tabulator .tabulator-tableholder .tabulator-table .tabulator-row:hover { background-color:#f9fafb; }
/* 열 선택 */
#sttn-table.tabulator .tabulator-row .tabulator-cell.tabulator-range-selected:not(.tabulator-range-only-cell-selected):not(.tabulator-range-row-header) { font-weight:bold; background-color:#e5f6ff; }
/* 열 전체 선택시 */
#sttn-table.tabulator .tabulator-tableholder .tabulator-range-overlay .tabulator-range { border:none; } 
/* 개벌 선택시 */
#sttn-table.tabulator .tabulator-tableholder .tabulator-range-overlay .tabulator-range-cell-active { border-width:1px; border-color:var(--primary-40); }
#sttn-table.tabulator .tabulator-tableholder .tabulator-range-overlay .tabulator-range.tabulator-range-active:after { background-color:var(--primary-40); }
/* 컬럼 검색 버튼 */
.th_srch_btn { width:25px; height:25px; background:url("../../../../images/content/icon_search.svg") center 5px/18px 18px no-repeat; filter:brightness(0) saturate(100%) invert(8%) sepia(0%) saturate(3384%) hue-rotate(161deg) brightness(100%) contrast(72%); }
.th_srch_btn:hover { filter:brightness(0) saturate(100%) invert(47%) sepia(62%) saturate(3210%) hue-rotate(201deg) brightness(94%) contrast(96%); }
#sttn-table.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-col-sorter { display:none; }
#sttn-table.tabulator .tabulator-header .tabulator-col:hover .tabulator-col-content .tabulator-col-sorter { display:flex; cursor:pointer; }
#sttn-table.tabulator .tabulator-header .tabulator-col .tabulator-col-content:hover .th_srch_btn {  animation-name:srch_shake; animation-duration:1s; /* animation-iteration-count:3; */  }
@keyframes srch_shake { 
    0% { transform:rotate(0deg)}
    25% { transform:rotate(-20deg)}
    50% { transform:rotate(20deg)}
    75% { transform:rotate(-20deg)}
    100% { transform:rotate(0deg)}
} 
/* 셀 이동 */
.tabulator .tabulator-header .tabulator-col.tabulator-range-selected.tabulator-moving { justify-content:center; align-items:center; background-color:#fff; border:1px solid var(--primary-40); }
.tabulator .tabulator-header .tabulator-col.tabulator-range-selected.tabulator-moving .tabulator-col-content { color:#333; }


/* 금액 설정 레이어 팝업 스타일 추가 */
.tbl_options { position:relative; }
.tbl_options .layer_popup_box { display:none; position:absolute; top:45px; right:0; width:450px; background:#fff; border:1px solid #ccc; box-shadow:0 5px 15px rgba(0,0,0,0.1); border-radius:8px; z-index:1000; }
.tbl_options .popup_header { display:flex; justify-content:space-between; align-items:center; margin-bottom:15px; padding:10px 20px; border-bottom:1px solid #eee; }
.tbl_options .popup_header h3 { font-size:1.6rem; font-weight:700; color:#333; }
.tbl_options .popup_header .btn_close_popup { background:none; border:none; font-size:1.8rem; cursor:pointer; color:#999; }
.tbl_options .popup_header .btn_close_popup img { width:13px; filter:brightness(0) saturate(100%) invert(19%) sepia(5%) saturate(8%) hue-rotate(330deg) brightness(102%) contrast(98%); }
.tbl_options .popup_body { padding:20px; background-color:transparent; }
.tbl_options .slider_filter_wrap.in_popup { margin:0; padding:0; width:100%; min-width:auto; display:flex; flex-direction:column; align-items:flex-start; gap:15px; }
.tbl_options .slider_filter_wrap.in_popup .slider_control_area { padding:0 10px; max-width:100%; width:100%; }
.tbl_options .slider_filter_wrap.in_popup .quick_btn_group { justify-content:start; flex-wrap:wrap; width:100%; }
.tbl_options .slider_filter_wrap.in_popup .quick_btn { flex:0 0 auto; text-align:center; }

/* 테이블 컬럼 필터 팝업 스타일 (팝업 전용 클래스) */
.tbl_options .popup_filter_options { display:block; position:relative; background-color:#fff; border:none; border-radius:0; box-shadow:none; padding:0; max-height:none; overflow-y:visible; }
.tbl_options .popup_filter_options ul { display:flex; flex-wrap:wrap; list-style:none; padding:0; margin:0; gap:0; }
.tbl_options .popup_filter_option_item { display:flex; align-items:center; flex:1 1 calc(50% - 1px); min-width:calc(50% - 1px); padding:8px 12px; cursor:pointer; transition:background-color 0.2s; box-sizing:border-box; }
.tbl_options .popup_filter_option_item.popup_filter_select_all { flex:1 1 100%; min-width:100%; border-bottom:1px solid #e0e0e0; margin-bottom:4px; padding-bottom:12px; font-weight:600; }
.tbl_options .popup_filter_option_item:hover { background-color:#f5f7fa; border-radius:5px; }
.tbl_options .popup_filter_option_item input[type="checkbox"] { margin-right:8px; width:16px; height:16px; cursor:pointer; accent-color:var(--primary-40); flex-shrink:0; }
.tbl_options .popup_filter_option_item label { font-size:1.4rem; color:#333; cursor:pointer; flex:1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

/* ### 기술이이전 사업화 현황 레이어 팝업 ### */
.status_popup_inner { margin:auto; width:100%; border-radius:10px; background-color:#fff; box-shadow:0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); overflow:hidden; }
.status_popup_header { display:flex; justify-content:space-between; align-items:center; padding:15px 20px; border-radius:10px 10px 0 0; background:linear-gradient(270deg, #1E3F73 21.65%, #2C5AA0 78.35%); }
.status_popup_header h2 { position:relative; font-size:2.2rem; font-weight:700; color:#fff; margin:0; }
.status_popup_header h2 .tit_icon { display:inline-block; position:relative; margin-right:10px; width:16px; height:16px; background-color:rgba(255, 255, 255, 0.20); transform:rotate(45deg); vertical-align:middle; }
.status_popup_header h2 .tit_icon:after { content:""; display:block; position:absolute; top:50%; left:50%; width:8px; height:8px; background-color:#fff; transform:translate(-50%, -50%) rotate(90deg); } 
.status_popup_header .close_popup { display:flex; align-items:center; justify-content:center; width:33px; height:33px; background:rgba(255, 255, 255, 0.20); border:none; border-radius:5px; cursor:pointer; padding:0; }
.status_popup_header .close_popup img { width:14px; height:14px; filter:brightness(0) saturate(100%) invert(100%) sepia(99%) saturate(44%) hue-rotate(47deg) brightness(110%) contrast(99%); }
.status_popup_body { display:flex ; justify-content:center; align-items:center; position:relative; padding:0 20px; height:calc(100% - 60px); overflow:hidden; overflow-y:auto; }
.status_popup_body .tbl_wrapper { overflow-x:auto; }
.status_popup_body table.tbl_style01 { width:1750px; }
/* 과제검색 */
.commz_status_layer .status_popup_inner { max-width:1800px; height:90vh; } 
/* 그래프 */
.commz_graph_layer .status_popup_inner { max-width:900px; height:60vh; } 

/* 레이어 팝업 로딩바 */
.status_popup_loading {
	display:flex;
	justify-content:center;
	align-items:center;
	flex-direction:column;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-color:rgba(255,255,255,0.95);
	backdrop-filter:blur(2px);
	z-index:1000;
}

.status_popup_loading.loading_active {
	display:flex;
}

.loading_spinner {
	display:flex;
	justify-content:center;
	align-items:center;
	gap:8px;
	margin-bottom:20px;
}

.spinner_circle {
	width:12px;
	height:12px;
	background-color:var(--primary-40);
	border-radius:50%;
	animation:loading_bounce 1.4s ease-in-out infinite;
}

.spinner_circle:nth-child(1) {
	animation-delay:0s;
}

.spinner_circle:nth-child(2) {
	animation-delay:0.2s;
}

.spinner_circle:nth-child(3) {
	animation-delay:0.4s;
}

@keyframes loading_bounce {
	0%,
	80%,
	100% {
		transform:scale(0.8);
		opacity:0.5;
	}
	40% {
		transform:scale(1.2);
		opacity:1;
	}
}

.loading_text {
	font-size:14px;
	font-weight:500;
	color:#666;
	letter-spacing:0.5px;
}

/* Tabulator 로딩바   */
/* 기본 로딩바 초기화 */
#sttn-table .tabulator-alert-msg.tabulator-alert-state-msg {
	color:#fff;
	background-color:transparent;
	border:none;
}
.tabulator_loading_wrapper {
	display:flex;
	justify-content:center;
	align-items:center;
	flex-direction:column;
	position:absolute;
	top:0;
	left:0;
	margin-top:65px;
	width:100%;
	height:100%;
	background-color:rgba(0, 0, 0, 0.3);
	backdrop-filter:blur(2px);
	z-index:10;
}

.tabulator_loading_wrapper .loading_spinner {
	display:flex;
	justify-content:center;
	align-items:center;
	gap:8px;
	margin-bottom:20px;
}

.tabulator_loading_wrapper .spinner_circle {
	width:12px;
	height:12px;
	background-color:var(--primary-40);
	border-radius:50%;
	animation:loading_bounce 1.4s ease-in-out infinite;
}

.tabulator_loading_wrapper .spinner_circle:nth-child(1) {
	animation-delay:0s;
}

.tabulator_loading_wrapper .spinner_circle:nth-child(2) {
	animation-delay:0.2s;
}

.tabulator_loading_wrapper .spinner_circle:nth-child(3) {
	animation-delay:0.4s;
}

.tabulator_loading_wrapper .loading_text {
	font-size:14px;
	font-weight:500;
	color:#fff;
	letter-spacing:0.5px;
}

/* 검색창 색상 변경 */
.searchheader_wrap .mainsearch {
    background-color:var(--background-gray10);
    border:1px solid var(--background-gray40);
    border-radius:70px;
    box-shadow:none;
}

.searchheader_wrap .mainsearch select {
    padding-left:20px;
    background-color:var(--background-gray10);
    border-radius:70px;
}

.searchheader_wrap .mainsearch button {
    width:45px;
    height:40px;
    display:inline-block;
    background:url(../../../../images/ico/ico_sch.svg) no-repeat;
    background-position:50%;
    cursor:pointer;
    vertical-align:middle;
    text-indent:-9999px;
}

.btn_tab .tab_wrap button {
    font-size:1.7rem;
    background-color:var(--white-00);
    border:1px solid var(--background-gray40);
    color:var(--text-gray70);
}
.btn_tab .tab_wrap button.act {
    color:var(--submain-50);
    background-color:var(--sub-10);
    border:1px solid var(--submain-50);
}

.list_header button.other {
    display:inline-block;
    margin:2px 0 2px 2px;
    padding:var(--interval-md) var(--font-lg);
    line-height:1;
    font-size:var(--font-sm);
    font-weight:500;
    text-align:center;
    background-color:var(--primarymain-50) !important;
    border:1px solid var(--primarymain-50) !important;
    border-radius:4px;
}

.list_header > div:last-child button.act { 
    background-color:var(--primarymain-50) !important;
    border:1px solid var(--primarymain-50) !important;
}

.list_header > div:last-child button.act:hover { 
    border:1px solid var(--primarymain-50) !important;
}

.listContainer .listBox .listBtnbox button:hover {
    border:1px solid var(--primarymain-50) !important;
}

/* 미디어 쿼리 */
@media (max-width:1800px) {
    .status_popup_inner { width:95%; }
}

/* 태블릿 (1200px 이하) */
@media (max-width:1200px) {
    .tech_commz_status.popup_container { max-width:100%; }
    .tech_commz_status .popup_header { padding:0 20px; }
    .tech_commz_status .tab_mn_wrap { padding:5px 20px; }
    .tech_commz_status .filter_row { padding:10px 20px; gap:10px; }
    .tech_commz_status .select_box, .tech_commz_status .custom_select_wrap { flex:1; max-width:100%; }
    .tech_commz_status .custom_select_wrap.achievement .custom_options { min-width:550px; }
    .tech_commz_status .custom_options_inner { gap:20px; }
    .tech_commz_status .slider_filter_wrap { flex-wrap:wrap; margin-left:0; margin-top:10px; min-width:auto; width:100%; }
    .tech_commz_status .status_wrap { padding:0 15px; }
    .tech_commz_status .status_wrap .status_inner { flex-wrap:wrap; }
    .tech_commz_status .card_group { flex:1 1 33.33%; border-bottom:1px solid #f0f0f0; }
    .tech_commz_status .popup_tit_row { padding:10px 20px; }
    .tech_commz_status .table_wrapper { padding:0 20px; }
}

/* 태블릿 세로 / 작은 태블릿 (992px 이하) */
@media (max-width:992px) {
    .tech_commz_status .tab_item { padding:12px 18px; font-size:1.6rem; }
    .tech_commz_status .filter_row { flex-direction:column; align-items:flex-start; }
    .tech_commz_status .filter_label_group { width:100%; }
    .tech_commz_status .filter_label_group .group_date { max-width:100%; }
    .tech_commz_status .filter_label_group .group_date input[type="date"],
    .tech_commz_status .filter_label_group .group_date input[type="text"] { max-width:100%; width:100%; }
    .tech_commz_status .custom_select_wrap { width:100%; }
    .tech_commz_status .custom_select_wrap.achievement .custom_options { min-width:500px; max-width:100%; }
    .tech_commz_status .custom_options_inner { gap:20px; }
    .tech_commz_status .card_group { flex:1 1 50%; }
    .tech_commz_status .stat_value { font-size:2rem; }
    .tech_commz_status .stat_value_blue { font-size:2.6rem; }
    .tech_commz_status .filter_options { margin-left:auto; margin-right:auto; }
}

/* 모바일 (768px 이하) */
@media (max-width:768px) {
    .tech_commz_status .popup_header { padding:0 15px; height:50px; }
    .tech_commz_status .popup_tit_row .popup_tit { min-width:75px; }
    .tech_commz_status .logo_area { font-size:1.8rem; }
    .tech_commz_status .header_right { gap:10px; }
    .tech_commz_status .user_profile { width:28px; height:28px; font-size:1.2rem; }
    .tech_commz_status .tab_mn_wrap { padding:5px 15px; flex-direction:column; align-items:flex-start; gap:10px; }
    .tech_commz_status .tab_menu { white-space:nowrap; width:100%; -webkit-overflow-scrolling:touch; }
    .tech_commz_status .tab_item { padding:10px 16px; /* font-size:1.5rem; */ }
    .tech_commz_status .tab_item_plus { padding:10px 12px; font-size:1.5rem; }
    .tech_commz_status .filter_row { padding:10px 15px; }
    .tech_commz_status .select_box { font-size:1.4rem; min-width:100%; }
    .tech_commz_status .custom_select_wrap { width:100%; }
    .tech_commz_status .custom_select_trigger { font-size:1.4rem; }
    .tech_commz_status .custom_options { padding:12px; }
    .tech_commz_status .custom_select_wrap.achievement .custom_options { min-width:100%; max-width:100%; left:0; right:0; }
    .tech_commz_status .custom_options_inner { flex-direction:column; gap:16px; }
    .tech_commz_status .custom_option_group_title { font-size:1.4rem; margin-bottom:10px; padding-bottom:6px; }
    .tech_commz_status .custom_option_item { padding:6px 0; }
    .tech_commz_status .custom_option_item label { font-size:1.3rem; }
    .tech_commz_status .slider_filter_wrap { padding:10px 0; }
    .tech_commz_status .slider_val_display { gap:15px; }
    .tech_commz_status .quick_btn_group { flex-wrap:wrap; }
    .tech_commz_status .quick_btn { font-size:11px; padding:5px 8px; }
    .tech_commz_status .status_wrap { padding:0 10px; }
    /* 성과 요약 모바일 한개씩 적용 주석 */
    /* .tech_commz_status .status_wrap .status_inner { flex-direction:column; }
    .tech_commz_status .card_group { flex:1 1 100%; border-right:none; border-bottom:1px solid #f0f0f0; } */
    .tech_commz_status .card_group:last-child { border-bottom:none; }
    .tech_commz_status .stat_header { padding:10px; font-size:1.6rem; }
    .tech_commz_status .stat_content { padding:20px 10px; }
    .tech_commz_status .stat_value { font-size:1.8rem; }
    .tech_commz_status .stat_value_blue { font-size:2.4rem; }
    .tech_commz_status .stat_unit { font-size:1.2rem; }
    .tech_commz_status .stat_sub_text { font-size:1.4rem; }
    .tech_commz_status .badge { font-size:1.3rem; padding:3px 8px; }
    .tech_commz_status .popup_tit_row { padding:10px 15px; align-items:center; gap:10px; }
    .tech_commz_status .popup_tit { font-size:1.6rem; }
    .tech_commz_status .control_btns { justify-content:flex-start; width:100%; }
    .tech_commz_status .icon_btn { font-size:1.4rem; padding:3px 10px 3px 8px; height:36px; line-height:36px; }
    .tech_commz_status .toggle_summary { font-size:1.5rem; }
    .tech_commz_status .tbl_options { align-items:center; gap:10px; }
    .tech_commz_status .tbl_options .btn_excel_download { width:100%; justify-content:center; }
    .tech_commz_status .tbl_options .switch_wrapper { width:100%; justify-content:space-between; }
    .tech_commz_status .table_wrapper { padding:0 15px; overflow-x:auto; }
    /* .tbl_options .layer_popup_box { width:calc(100% - 30px); right:15px; left:15px; } */
    .tbl_options .slider_filter_wrap.in_popup .quick_btn_group { flex-wrap:wrap; }
    .tbl_options .slider_filter_wrap.in_popup .quick_btn { flex:1 1 calc(50% - 3px); }
}

/* 작은 모바일 (480px 이하) */
@media (max-width:480px) {
    .tech_commz_status .popup_header { padding:0 10px; height:45px; }
    .tech_commz_status .logo_area { font-size:1.6rem; }
    .tech_commz_status .tab_mn_wrap { padding:5px 10px; }
    .tech_commz_status .tab_item { padding:8px 12px; /* font-size:1.4rem; */ }
    .tech_commz_status .filter_row { padding:8px 10px; }
    .tech_commz_status .select_box { font-size:1.3rem; padding:6px 20px 6px 10px; min-height:36px; }
    .tech_commz_status .custom_select_trigger { padding:6px 10px; min-height:36px; /* font-size:1.3rem; */ }
    .tech_commz_status .custom_options { padding:10px; }
    .tech_commz_status .custom_select_wrap.achievement .custom_options { min-width:100%; max-width:100%; left:0; right:0; }
    .tech_commz_status .custom_options_inner { gap:12px; }
    .tech_commz_status .custom_option_group_title { font-size:1.3rem; margin-bottom:8px; padding-bottom:5px; }
    .tech_commz_status .custom_option_item { padding:5px 0; }
    .tech_commz_status .custom_option_item input[type="checkbox"] { width:14px; height:14px; margin-right:8px; }
    .tech_commz_status .custom_option_item label { font-size:1.2rem; }
    .tech_commz_status .filter_label_group .group_date input[type="date"],
    .tech_commz_status .filter_label_group .group_date input[type="text"] { min-width:100px; font-size:1.3rem; padding:6px 20px 6px 10px; min-height:36px; }
    .filter_row .filter_date_group { flex-direction:column; gap:10px 35px; }
    .tech_commz_status .status_wrap { padding:0 5px; }
    .tech_commz_status .stat_header { padding:8px; font-size:1.4rem; }
    .tech_commz_status .stat_content { padding:15px 8px; }
    .tech_commz_status .stat_value { font-size:1.6rem; }
    .tech_commz_status .stat_value_blue { font-size:2rem; }
    .tech_commz_status .popup_tit_row { padding:8px 10px; }
    .tech_commz_status .popup_tit { font-size:1.4rem; }
    .tech_commz_status .icon_btn { font-size:1.2rem; padding:3px 8px 3px 6px; height:32px; line-height:32px; }
    .tech_commz_status .toggle_summary { font-size:1.3rem; }
    .tech_commz_status .table_wrapper { padding:0 10px; }
    .tbl_options .popup_header h3 { display:flex; flex-direction:column; }
    .tbl_options .layer_popup_box { width:300px; }
    .tech_commz_status .slider_val_display .slider_txt { max-width:120px; }
    .tbl_options .slider_filter_wrap.in_popup .quick_btn { flex:1 1 100%; }
    #sttn-table.tabulator .tabulator-tableholder .tabulator-table .tabulator-row .tabulator-cell { height:60px; padding:5px; }
    #sttn-table.tabulator .tabulator-header .tabulator-header-contents .tabulator-headers .tabulator-col .tabulator-col-content .tabulator-col-title-holder { height:45px; }
}