@charset "utf-8";

/* ==========================================================================
정렬 및 유틸리티 (Typography & Layout Utilities)
========================================================================== */
.text-center {text-align:center !important;}
.text-left {text-align:left !important; justify-content:flex-start !important;}
.text-right {text-align:right !important;}
.text-blue {color:#2a5ee8 !important;}
.w-full {width:100% !important;max-width:100% !important;}
.w-half {width:100% !important;max-width:36.5% !important;}
.w-small {width:100% !important;max-width:5.8rem !important;height:3.6rem !important;}
.h-full {height:100% !important;}
.border-none {border:none !important;}
.bg-transparent {background:transparent !important;}
.con-box-item {margin-bottom:1.6rem;}
.f-bold {font-weight:bold;}
.con-box-area {margin-bottom:1.6rem;}
.hide, .sr-only {overflow:hidden;position:absolute;width:0.1rem;height:0.1rem;font-size:0;line-height:0;}
caption {overflow:hidden;position:absolute;width:0.1rem;height:0.1rem;font-size:0;line-height:0;}
h4 {padding:0rem 0rem 0.5rem 0rem;font-size:1.6rem;}

/* ==========================================================================
폼 요소 및 데이터 그룹 (Form Elements & Data Groups)
========================================================================== */
.data-group {display:flex;align-items:center;gap:0.4rem;flex-wrap:wrap;line-height:2.4rem;}
.data-group.dg-row {flex-direction:column;align-items:flex-start;}
.required-mark {color:#ef4444;margin-left:0.25rem;}
.input-text:read-only {background-color:#f8fafc;color:#64748b;cursor:default;}
.data-util {padding:0rem 0rem;}
.data-util p {font-size:1.3rem;display:flex;padding:0.4rem 0rem 0rem 0rem;align-items:center;}
.input-text {height:3.6rem !important;padding:0 1.2rem;border:0.1rem solid #cbd5e1;border-radius:0.4rem;font-size:1.4rem;background:#fff;box-sizing:border-box;max-width:12.5rem;}
.input-text.mw100 {max-width:100%;}
.date-input {height:3.6rem;padding:0 0.8rem;border:0.1rem solid #cbd5e1;border-radius:0.4rem;font-size:1.4rem;background:#fff;width:12.5rem;box-sizing:border-box;cursor:pointer;}
.select-box {height:3.6rem;padding:0 1.2rem;border:0.1rem solid #cbd5e1;border-radius:0.4rem;font-size:1.4rem;width:100%;box-sizing:border-box;max-width:12.5rem;}
.select-box.w-select-lg {max-width:19.5rem;}
.radio-group, .checkbox-group {display:flex;gap:1.8rem;align-items:center;flex-wrap:wrap;height:3.6rem;}
.radio-label, .checkbox-label {display:flex;align-items:center;font-size:1.4rem;cursor:pointer;gap:0.4rem;margin:0;}
.textarea-wrap {width:100%;position:relative;}
.textarea-wrap .textarea {width:100%;border:none;background:#f8fafc;padding:1.2rem;border-radius:0.4rem;min-height:9rem;font-size:1.4rem;border:0.1rem solid #cbd5e1;box-sizing:border-box;}
.textarea-wrap .textarea.h-textarea-lg {min-height:26rem;}
.textarea-wrap .textarea:focus {background:#fff;outline:0.1rem solid #2a5ee8;}
.byte-count {font-size:1.3rem;color:#94a3b8;}
.byte-count span {color:#2a5ee8;font-weight:bold;}
.required {color:#ef4444;font-weight:bold;margin-right:0.25rem;}
.textarea_wrap {width:100%;}
.required-txt {font-size:1.4rem;color:#666;display:flex;width:100%;justify-content:flex-end;align-items:center;}
.required-txt::before {content:'*';color:#eb5757;margin-right:0.35rem;font-weight:700;}
.input-text.is-error, .select-box.is-error {border:0.1rem solid #d22730 !important;background-color:#fffafb;}
.input-text.is-error:focus, .select-box.is-error:focus {border:0.2rem solid #d22730 !important;box-shadow:none;outline:none;}
.input-text.is-success, .select-box.is-success {border:0.1rem solid #2a5ee8 !important;background-color:#f8fafc;}
.input-text.is-success:focus, .select-box.is-success:focus {border:0.2rem solid #2a5ee8 !important;box-shadow:none;outline:none;}
.data-group:has(.is-error) + .data-util .util_msg, .table_group:has(.is-error) + .data-util .util_msg {color:#d22730 !important;}
.data-group:has(.is-error) + .data-util .util_msg::before, .table_group:has(.is-error) + .data-util .util_msg::before {content:"\e9ab";display:inline-block;width:1.5rem;height:1.5rem;margin-right:0.35rem;vertical-align:middle;font-family:"xeicon";font-weight:600;font-size:1.4rem;}
.data-group:has(.is-success) + .data-util .util_msg, .table_group:has(.is-success) + .data-util .util_msg {color:#2a5ee8 !important;}
.data-group:has(.is-success) + .data-util .util_msg::before, .table_group:has(.is-success) + .data-util .util_msg::before {content:"\e92c";display:inline-block;width:1.5rem;height:1.5rem;margin-right:0.35rem;vertical-align:middle;font-family:"xeicon";font-weight:600;font-size:1.4rem;}

/* ==========================================================================
검색 섹션 (Search Section)
========================================================================== */
.search-section {position:relative;margin:0 0 0rem 0;padding:2rem;border-radius:1rem;background-color:#F9FAFC;border:0.1rem solid #ebedf1;}
.search-section p {margin:0;padding:0;}
.search-section .condition-area {display:flex;flex-wrap:wrap;gap:0 2.2rem;}
.search-section .condition-area .block .label {display:inline-flex;align-items:center;min-width:8.5rem;padding:0 0.8rem 0 0;font-weight:600;vertical-align:top;line-height:3.6rem;font-size:1.4rem;color:#334155;}
.search-section .condition-area .block .label.word-4 {min-width:6.5rem;}
.search-section .condition-area .block .label.word-5 {min-width:8.5rem;}
.search-section .condition-area .block .label.word-long {flex-shrink:0;min-width:10.5rem;line-height:1.1;}
.search-section .condition-area .block select {min-width:15rem;background-color:#fff;}
.search-section .condition-area .block .radio-period {margin-left:0.35rem;}
.search-section .condition-area .line {display:flex;gap:0.8rem 2.2rem;flex-wrap:wrap;width:100%;}
.search-section .condition-area .line + .line {margin-top:1.2rem;}
.search-section .condition-area .line .block {display:inline-flex;gap:0 0.7rem;align-items:center;}
.search-section .condition-area .line .block:only-child {width:100%;}
.search-section .condition-area .line .block .input-text {width:100%;max-width:none;}
.search-section .condition-area .line .block.search-input-group {flex-grow:1;}
.search-section .condition-area .line .block.search-input-group select {flex-shrink:0;min-width:15rem;}
.search-section .condition-area .line .block.search-input-group .input-text {flex-grow:1;}
.search-section .condition-area .line.search-bottom-line {padding-right:19.5rem;box-sizing:border-box;}
.search-section .button-more {position:absolute;right:2.4rem;bottom:2rem;display:flex;gap:0.7rem;align-items:center;}
.search-section .button-more .flex-wrap {display:flex;gap:0.35rem;}
.box-border + .search-section {margin-top:1.2rem;}

/* ==========================================================================
타이틀 및 헤더 영역 (Title & Header Elements)
========================================================================== */
.title-link {font-size:1.4rem;color:#1e293b;text-decoration:none;font-weight:500;transition:0.2s;}
.title-link:hover {color:#2a5ee8;text-decoration:underline;}
.title-box-area {display:flex;justify-content:space-between;align-items:center;margin-bottom:1.6rem;padding-bottom:1.2rem;min-height:3.8rem;border-bottom:0.1rem solid #1e293b;margin-top:0rem;background:transparent;}
.title-box-area + .title-box-area {margin-top:1.2rem;}
.title-name {text-align:center;width:100%;padding: 1rem 0rem 2rem 0rem;}
.title-name h1 {font-size: 2.5rem;font-weight:800;color:#fff;letter-spacing:-0.05rem;line-height:1.3;position:relative;padding-top: 0rem;display:inline-block;}
.title-name p {color:#798596;font-size:1.4rem;font-weight:normal;padding:0.8rem 0rem 0rem 0rem;}
.title-left {display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap;}
.title-text {position:relative;font-size:1.8rem;font-weight:700;color:#1e293b;letter-spacing:-0.05rem;display:flex;align-items:center;gap:0.7rem;margin:0;}
.title-help-badge {display:inline-flex;align-items:center;gap:0.4rem;padding:0.35rem 1rem;background:#eff6ff;color:#1e40af;font-size:1.3rem;border-radius:2rem;font-weight:500;}

.title-right {display:flex;align-items:center;gap:0.9rem;flex-wrap:wrap;}
.total-count {font-size:1.4rem;color:#64748b;margin-right:0.9rem;}
.total-count strong {color:#1d70f7;font-size:1.5rem;}
.title-lg .title-text span {padding-left:2.1rem;}
.title-lg .title-text span::before {content:"";position:absolute;left:0.35rem;top: 50%;transform:translateY(-50%);background:linear-gradient(135deg,#3b82f6,#1d4ed8);width:0.55rem;height:1.8rem;display:block;border-radius:0.5rem;box-shadow:0 0.2rem 0.7rem rgba(59,130,246,0.2);}
.title-box-area.title-md {margin-top:1.2rem;margin-bottom:1.2rem;padding-bottom:0rem;border-bottom:none;position:relative;}
.title-box-area + .title-box-area.title-md {margin-top:1.2rem;}
.title-md .title-text span {font-size:1.7rem;font-weight:600;color:#142c6d;position:relative;padding-left:0rem;}
.title-md .title-text span {padding-left:2.1rem;}
.title-md .title-text span::before {content:"";position:absolute;left:0;top: 46%;transform:translateY(-50%);background:#eff6ff;width:0.7rem;height:0.7rem;display:block;border-radius:50%;border:0.25rem solid #3b82f6;box-shadow:0 0.2rem 0.35rem rgba(59,130,246,0.15);}
.title-box-area.title-sm {margin-top:0.8rem;margin-bottom:1.2rem;padding-bottom:0rem;border-bottom:none;position:relative;}
.title-box-area + .title-box-area.title-sm {margin-top:0.8rem;}
.title-sm .title-text span {font-size:1.5rem;font-weight:600;color:#5d5e5f;position:relative;padding-left:0rem;}
.title-sm .title-text span {padding-left:2.1rem;}
.title-sm .title-text span::before {content:"";position:absolute;left:0.35rem;top:50%;transform:translateY(-50%);background:#a1a9b5;width:0.55rem;height:0.55rem;display:block;border-radius:50%;}
.title-box-area .title-right select {height: 3.2rem;}

/* ==========================================================================
아이콘 (Font Icons - Xeicon)
========================================================================== */
.icon-register::before {content:"\e9b3";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-save::before {content:"\e9b9";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-load::before {content:"\e977";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-edit::before {content:"\e9c3";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-change::before {content:"\ea53";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-reorder::before {content:"\e996";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-upload::before {content:"\eb7e";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-download::before {content:"\eb7c";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-send::before {content:"\ea0b";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-search::before {content:"\e97a";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-view::before {content:"\e951";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-preview::before {content:"\ea50";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-list::before {content:"\e993";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-select::before {content:"\e9c7";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-pick::before {content:"\ea0f";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-check::before {content:"\e928";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-all::before {content:"\eb3b";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-document::before {content:"\e998";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-folder::before {content:"\eaa1";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-report-card::before {content:"\eb1e";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-evaluate::before {content:"\ea6b";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-settlement::before {content:"\eb71";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-plus::before {content:"\e913";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-minus::before {content:"\e91a";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-minimize::before {content:"\e911";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-maximize::before {content:"\e910";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-calendar::before {content:"\e9a0";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-clock::before {content:"\ea2b";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-refresh::before {content:"\e973";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-close::before {content:"\e921";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-cancel::before {content:"\e9ae";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-delete::before {content:"\e96e";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-impo::before {content:"\ea16";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-new-window::before {content:"\e980";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-out::before {content:"\e972";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-in::before {content:"\e963";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-link::before {content:"\e980";font-family:"xeicon";font-weight:normal;margin-right:0.45rem;font-size:1.5rem;}
.icon-link-back::after {content:"\e980";font-family:"xeicon";font-weight:normal;margin-left:0.45rem;font-size:1.5rem;}
.icon-xi-zoom-in::after {content:"\e97b";font-family:"xeicon";font-weight:normal;margin-left:0.45rem;font-size:1.5rem;}
.icon-xi-zoom-out::after {content:"\e97c";font-family:"xeicon";font-weight:normal;margin-left:0.45rem;font-size:1.5rem;}

/* ==========================================================================
버튼 스타일 (크기 스케일에 맞춰 폰트 차등 적용)
========================================================================== */
.btn {display:inline-flex;justify-content:center;align-items:center;gap:0.1rem;border-radius:0.4rem;font-weight:600;transition:all .2s ease;white-space:nowrap;cursor:pointer;box-sizing:border-box;border:0.1rem solid transparent;}
.btn i {font-size:1.2em;line-height:1;}
.btn-xs {height:3rem;padding:0 0.7rem;font-size:1.3rem;}
.btn-sm {height:3.2rem;padding:0 1.1rem;font-size:1.3rem;}
.btn-md {height:3.6rem;padding:0 1.8rem;font-size:1.4rem;}
.btn-lg {height:4.8rem;padding:0 2.8rem;font-size:1.6rem;}
.btn-blue {background:#2a5ee8;color:#fff;border-color:#2a5ee8;}
.btn-green {background:#10b981;color:#fff;border-color:#10b981;}
.btn-red {background:#ef4444;color:#fff;border-color:#ef4444;}
.btn-gray {background:#64748b;color:#fff;border-color:#64748b;}
.btn-pink {background:#ec4899;color:#fff;border-color:#ec4899;}
.btn-orange {background:#f97316;color:#fff;border-color:#f97316;}
.btn-skyblue {background:#0ea5e9;color:#fff;border-color:#0ea5e9;}
.btn-purple {background:#8b5cf6;color:#fff;border-color:#8b5cf6;}
.btn-outline-blue {background:#fff;color:#2a5ee8;border-color:#2a5ee8;}
.btn-outline-green {background:#fff;color:#10b981;border-color:#10b981;}
.btn-outline-red {background:#fff;color:#ef4444;border-color:#ef4444;}
.btn-outline-gray {background:#fff;color:#475569;border-color:#cbd5e1;}
.btn-outline-pink {background:#fff;color:#ec4899;border-color:#ec4899;}
.btn-outline-orange {background:#fff;color:#f97316;border-color:#f97316;}
.btn-outline-skyblue {background:#fff;color:#0ea5e9;border-color:#0ea5e9;}
.btn-outline-purple {background:#fff;color:#8b5cf6;border-color:#8b5cf6;}
.btn-outline-opaque {background:#fff;color:#ffffff;border-color:#afb2b733;background:#7e9fd71f;}
.btn-blue:hover {background:#1d4ed8;border-color:#1d4ed8;color:#fff;}
.btn-green:hover {background:#059669;border-color:#059669;color:#fff;}
.btn-red:hover {background:#dc2626;border-color:#dc2626;color:#fff;}
.btn-gray:hover {background:#475569;border-color:#475569;color:#fff;}
.btn-pink:hover {background:#be185d;border-color:#be185d;color:#fff;}
.btn-orange:hover {background:#c2410c;border-color:#c2410c;color:#fff;}
.btn-skyblue:hover {background:#0369a1;border-color:#0369a1;color:#fff;}
.btn-purple:hover {background:#6d28d9;border-color:#6d28d9;color:#fff;}
.btn-outline-blue:hover {background:#2a5ee8;color:#fff;}
.btn-outline-green:hover {background:#10b981;color:#fff;}
.btn-outline-red:hover {background:#ef4444;color:#fff;}
.btn-outline-gray:hover {background:#f1f5f9;color:#475569;}
.btn-outline-pink:hover {background:#ec4899;color:#fff;}
.btn-outline-orange:hover {background:#f97316;color:#fff;}
.btn-outline-skyblue:hover {background:#0ea5e9;color:#fff;}
.btn-outline-purple:hover {background:#8b5cf6;color:#fff;}
.btn-outline-opaque:hover {background:#000000;color:#fff;}
.content-bottom-util {display:flex;justify-content:center;gap:1.4rem;margin-top:2rem;padding-top:2rem;border-top:0.1rem solid #e2e8f0;}
.util_msg {font-size:1.3rem;color:#64748b;font-weight:500;line-height:1.55rem;margin:0;display:block;}
.util_help {font-size:1.3rem;color:#64748b;font-weight:500;line-height:1.55rem;margin:0;display:block;}
.msg_text::before {content:"\ea16";display:inline-block;width:1.5rem;height:1.5rem;margin-right:0.35rem;vertical-align:middle;font-family:"xeicon";font-weight:600;font-size:1.4rem;}
.btn-group {display:flex;gap:0.9rem;}

/* ==========================================================================
테이블 및 게시판 쓰기 영역 (th, td 높이 4.8rem 긴축 및 1.4rem 픽스)
========================================================================== */
.table-container {width:100%;overflow-x:auto;background:#ffffff;}
.custom-table, .board-write-area, .krds-table-left {width:100%;border-collapse:collapse;table-layout:fixed;}
.custom-table th, .custom-table td, .board-write-area th, .board-write-area td, .krds-table-left th, .krds-table-left td {padding:0.6rem 1.2rem;border:0.1rem solid #e2e8f0;font-size:1.4rem;line-height:1.4;vertical-align:middle;box-sizing:border-box;min-height:4.8rem;height:4.8rem;}
.custom-table th, .board-write-area th, .krds-table-left th {background:#f8fafc;font-weight:600;color:#334155;text-align:center;}
.custom-table td, .board-write-area td, .krds-table-left td {background:#fff;color:#333;text-align:center;}
.table-col-type .data-group {justify-content:center;flex-wrap:wrap;}
.table-row-type .custom-table th, .board-write-area th, .krds-table-left th {text-align:left;background:#f8fafc;}
.table-row-type .custom-table td, .board-write-area td, .krds-table-left td {text-align:left;}
.board-write-area .table_group, .krds-table-left .table_group {display:flex;align-items:center;gap:0.9rem;width:100%;}
.board-write-area .table_group.txt-value, .krds-table-left .table_group.txt-value {font-size:1.4rem;color:#333;}
.custom-table tr:has(.textarea-wrap) th, .custom-table tr:has(.textarea-wrap) td, .board-write-area tr:has(.textarea-wrap) th, .board-write-area tr:has(.textarea-wrap) td, .krds-table-left tr:has(.textarea-wrap) th, .krds-table-left tr:has(.textarea-wrap) td, .custom-table tr:has(.krds-file-upload) th, .custom-table tr:has(.krds-file-upload) td, .board-write-area tr:has(.krds-file-upload) th, .board-write-area tr:has(.krds-file-upload) td, .krds-table-left tr:has(.krds-file-upload) th, .krds-table-left tr:has(.krds-file-upload) td {height:auto;padding:1.2rem;}
.table-scroll-tpye {overflow-x:auto;-webkit-overflow-scrolling:touch;}
.table-scroll-tpye table {width:165.7rem;table-layout:fixed;}
.table-scroll-tpye .data-group {justify-content:center;flex-wrap:wrap;}
.nested-table {width:100%;border-collapse:collapse;border:none;}
.nested-table th {background:#f3f3ff !important;border:0.1rem solid #e6e6ff;height:3.6rem;font-size:1.4rem;text-align:center !important;padding:0.6rem 0.8rem;}
.nested-table td {border:0.1rem solid #e2e8f0;height:4.8rem;text-align:center !important;padding:0.6rem 1rem;}
.notice-board-table th {background:#f8fafc;color:#1e293b;border-left:none;border-right:none;border-bottom:none;}
.notice-board-table td {border-left:none;border-right:none;border-bottom:0.1rem solid #f1f5f9;padding:1rem 1.2rem;}
.notice-board-table .td-subject .data-group {justify-content:flex-start;text-align:left;}

/* ==========================================================================
파일 업로드 (File Upload)
========================================================================== */
.krds-file-upload {width:100%;display:flex;flex-direction:column;gap:0.9rem;}
.file-upload-drag {border:0.2rem dashed #cbd5e1;background:#f8fafc;border-radius:0.5rem;padding:2.4rem 1.6rem;text-align:center;position:relative;transition:0.2s;}
.file-upload-drag:hover {background:#f1f5f9;border-color:#2a5ee8;}
.real-file-input {position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:2;}
.file-upload-inner {display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0.7rem;}
.file-upload-inner i {font-size:3rem;color:#64748b;}
.upload-guide {font-size:1.4rem;color:#475569;margin:0;}
.upload-guide strong {color:#2a5ee8;font-weight:600;}
.btn-file-select {display:inline-flex;align-items:center;height:3.4rem;padding:0 1.2rem;background:#fff;border:0.1rem solid #cbd5e1;border-radius:0.4rem;color:#334155;font-size:1.3rem;font-weight:600;cursor:pointer;position:relative;z-index:3;transition:0.2s;}
.btn-file-select:hover {background:#f8fafc;border-color:#94a3b8;}
.file-list-container {width:100%;}
.file-list {list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0.5rem;}
.file-item {display:flex;justify-content:space-between;align-items:center;padding:0.6rem 1.2rem;background:#f1f5f9;border-radius:0.4rem;width:100%;box-sizing:border-box;}
.file-name {font-size:1.3rem;color:#334155;font-weight:500;}
.btn-file-delete {background:transparent;border:none;cursor:pointer;padding:0.35rem;color:#94a3b8;display:inline-flex;align-items:center;justify-content:center;transition:0.2s;}
.btn-file-delete:hover {color:#ef4444;}
.btn-file-delete i {font-size:1.4rem;}
.info-msg-group {display:flex;flex-direction:column;gap:0.25rem;margin:0;padding-top:0.4rem;}
.info-txt {font-size:1.3rem;color:#64748b;display:block;text-align:left;}

/* ==========================================================================
탭 메뉴 및 페이지네이션 (Tabs & Pagination)
========================================================================== */
.tab-container {width:100%;box-sizing:border-box;}
.tab-scroll-wrap {width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overflow-y:hidden;}
.tab-scroll-wrap::-webkit-scrollbar {height:0.4rem;}
.tab-scroll-wrap::-webkit-scrollbar-track {background:#f1f5f9;border-radius:0.4rem;}
.tab-scroll-wrap::-webkit-scrollbar-thumb {background:#cbd5e1;border-radius:0.4rem;}
.tab-scroll-wrap::-webkit-scrollbar-thumb:hover {background:#94a3b8;}
.tab-menu-list {display:inline-flex;padding:0;margin:0;list-style:none;white-space:nowrap;min-width:100%;border-bottom:none;}
.tab-item {display:inline-block;}
.tab-depth1 {margin:0rem;border-top:0.1rem solid #cbd5e1;border-bottom:0.1rem solid #cbd5e1;}
.tab-depth1 .tab-btn {display:block;height:4.2rem;padding:0rem 2rem;background:transparent;border:none;font-size:1.4rem;font-weight:500;color:#64748b;cursor:pointer;position:relative;transition:all 0.2s ease;box-sizing:border-box;}
.tab-depth1 .tab-btn:hover {color:#1e293b;}
.tab-depth1 .tab-item.active .tab-btn {color:#2a5ee8;font-weight:700;}
.tab-depth1 .tab-item.active .tab-btn::after {content:"";position:absolute;left:0;bottom:-0.1rem;width:100%;height:0.25rem;background:#2a5ee8;border-radius:0.3rem 0.3rem 0 0;}
.tab-depth2 {margin:1.2rem 0rem;background:#f8fafc;border:0.1rem solid #e2e8f0;border-radius:0.5rem;padding:0.8rem;}
.tab-depth2 .tab-menu-list {gap:0.35rem;}
.tab-depth2 .tab-btn {display:block;height:3.4rem;padding:0rem 1.2rem;background:transparent;border:none;font-size:1.4rem;font-weight:500;color:#64748b;cursor:pointer;border-radius:0.4rem;transition:all 0.2s ease;box-sizing:border-box;}
.tab-depth2 .tab-btn:hover {color:#1e293b;background:#f1f5f9;}
.tab-depth2 .tab-item.active .tab-btn {color:#2a5ee8;background:#fff;font-weight:700;box-shadow:0 0.1rem 0.3rem rgba(0,0,0,0.05);border:0.1rem solid #e2e8f0;}
.pagination-wrap {display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:1.6rem;}
.page-btn {display:inline-flex;align-items:center;justify-content:center;width:3.2rem;height:3.2rem;border:0.1rem solid #cbd5e1;background:#fff;color:#64748b;font-size:1.4rem;text-decoration:none;border-radius:0.4rem;transition:0.2s;}
.page-btn:hover {background:#f8fafc;color:#1e293b;border-color:#94a3b8;}
.page-number-list {display:flex;align-items:center;gap:0.35rem;padding:0;margin:0;list-style:none;}
.page-number-list li {display:inline-block;}
.page-link {display:inline-flex;align-items:center;justify-content:center;width:3.2rem;height:3.2rem;color:#64748b;font-size:1.4rem;font-weight:500;text-decoration:none;border-radius:0.4rem;transition:0.2s;}
.page-link:hover {background:#f1f5f9;color:#1e293b;}
.page-number-list li.active .page-link {background:#003675;color:#fff;font-weight:700;}

/* ==========================================================================
게시판 상세 보기 (label, value 패딩 조율 및 1.4rem 고정)
========================================================================== */
.board-view-area {color:#1e293b;}
.board-view-header {border-bottom:0.1rem solid #e2e8f0;background:#ffffff;padding: 2rem 2rem;border-top:0.2rem solid #003a76;}
.board-view-meta {display:flex;align-items:center;gap:1rem;margin-bottom:1.2rem;font-size:1.3rem;color:#64748b;}
.board-view-category {display:inline-block;padding:0.3rem 1rem;background:#eff6ff;color:#2563eb;font-weight:700;border-radius:0.4rem;}
.board-view-date {position:relative;padding-left:1rem;color:#64748b;}
.board-view-date::before {content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:0.1rem;height:1.1rem;background:#cbd5e1;}
.board-view-title {font-size:2.4rem;font-weight:800;line-height:1.4;color:#0f172a;word-break:keep-all;}
.board-view-detail {display:flex;flex-wrap:wrap;gap: 2rem;padding: 1.5rem 2rem;border-bottom:0.1rem solid #e2e8f0;}
.board-view-row {display:flex;align-items:center;gap: 2rem;font-size:1.3rem;}
.board-view-row::after { content: ""; display: inline-block; width: 0.1rem; height: 1.2rem; border-left: 0.1rem solid #ccc; }
.board-view-row:last-child::after { display: none; }
.board-view-row.full {width:100%;flex-direction:column;align-items:flex-start;gap:1.2rem;padding:2rem;background:#f8fafc;border-radius:0.8rem;border:0.1rem solid #edf2f7;margin-top:2.4rem;}
.board-view-row.full::after {display: none;}
.board-view-label {font-weight:700;color:#475569;min-width:5rem;}
.board-view-row.full .board-view-label {display:inline-flex;align-items:center;position:relative;font-size:1.5rem;font-weight:700;color:#0f172a;margin-bottom:0.6rem;text-align:left;padding-left:1.2rem;height:2rem;line-height:1;}
.board-view-row.full .board-view-label::before {content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:0.4rem;height:1.4rem;background:linear-gradient(to bottom, #4f46e5, #3b5bdb);border-radius:0.2rem;}
.board-view-value {color:#334155;display:flex;flex-wrap:wrap;gap:0.8rem;width:100%;}
.board-view-text {padding:4rem 0.5rem;font-size:1.5rem;line-height:1.7;color:#334155;min-height:20rem;word-break:break-all;}
.ext-file_link {display:inline-flex;align-items:center;gap:0.6rem;padding:0.8rem 1.4rem;background:#fff;color:#334155;text-decoration:none;border-radius:0.6rem;font-size:1.3rem;font-weight:500;border:0.1rem solid #e2e8f0;transition:all 0.2s ease;width:100%;box-shadow:0 0.1rem 0.2rem rgba(0,0,0,0.02);}
.ext-file_link:hover {background:#f1f5f9;color:#2563eb;border-color:#bfdbfe;transform:translateY(-0.1rem);}
.ext-file_link::before {content:'\eb7c';font-family:"xeicon";font-size:1.4rem;color:#2563eb;}
.content-bottom-util {display:flex;justify-content:center;margin-top:3rem;}

/* ==========================================================================
모달 및 레이어 팝업 (Modals & Overlay Popups)
========================================================================== */
.soe_overlay {display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,0.85);z-index:9999;}
.soe_container {position:fixed;top:50%;left:50%;margin-left:-22rem;margin-top:-28rem;background:#fff;border-radius:1.6rem;overflow:hidden;width:44rem;box-shadow:0 2rem 4rem rgba(0,0,0,0.5);border-top:0.8rem solid #ff3b30;animation:soeFadeUp 1s ease-out;}
.soe_header {padding:3.4rem 2rem 1.6rem;text-align:center;}
.soe_icon_alert {display:inline-flex;align-items:center;justify-content:center;width:5.4rem;height:5.6rem;background:#fff1f0;color:#ff3b30;border:0.2rem solid #ff3b30;border-radius:50%;font-size:2.8rem;font-weight:900;margin-bottom:1.6rem;font-style:normal;}
.soe_title {font-size:2.2rem;font-weight:850;color:#000;letter-spacing:-0.08rem;line-height:1.2;}
.soe_content {padding:0 2.4rem 2rem;}
.soe_warning_box {background:#fafafa;border:0.1rem solid #eee;padding:2rem;border-radius:1.2rem;margin-bottom:1.6rem;text-align:center;}
.soe_text_important {font-size:1.45rem;line-height:1.7;color:#1d1d1f;word-break:keep-all;}
.soe_text_important strong {color:#ff3b30;font-weight:800;border-bottom:0.2rem solid #ff3b30;}
.soe_text_notice {font-size:1.3rem;color:#86868b;margin-top:1.2rem;display:block;font-weight:500;}
.soe_check_area {display:flex;gap:0.9rem;padding:1.2rem;align-items:center;background:#f8f9fa;border-radius:0.8rem;cursor:pointer;}
.soe_checkbox {width:1.8rem;height:1.8rem;margin-top:0.15rem;cursor:pointer;accent-color:#ff3b30;}
.soe_check_label {font-size:1.45rem;color:#333;font-weight:600;cursor:pointer;line-height:1.4;}
.soe_actions {display:flex;flex-direction:column;gap:1.2rem;padding:0 2.4rem 3.4rem;}
.soe_btn_submit {width:100%;height:4.6rem;background:#3864f2;color:#fff;border:none;border-radius:1rem;font-size:1.45rem;font-weight:700;cursor:pointer;transition:all 0.2s ease;}
.soe_btn_submit:disabled {background:#ccc;cursor:not-allowed;}
.soe_btn_submit:not(:disabled):hover {background:#0D2778;}
.soe_btn_skip {background:none;border:none;color:#aeaeb2;font-size:1.45rem;text-decoration:underline;cursor:pointer;align-self:center;}
.soe_btn_skip:hover {color:red;}
.soe_container.soe_blue {border-color:#3864f2 !important;}
.soe_container.soe_blue .soe_icon_alert {color:#3864f2;border-color:#3864f2;background:#f6f8ff;}
@keyframes soeFadeUp { 0%{opacity:0;margin-top:-23rem;}100%{opacity:1;margin-top:-28rem;} }
.common-modal_wrap {display:none;position:fixed;top:0;left:0;width:100%;height:100%;z-index:1000;align-items:center;justify-content:center;padding:1.6rem;}
.common-modal_wrap.active {display:flex !important;}
.common-modal_dimmed {position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.6);}
.common-modal_content {position:relative;width:100%;max-width:96rem;background:#fff;border-radius:1rem;overflow:hidden;display:flex;flex-direction:column;animation:commonFadeUp 0.3s ease-out;}
@keyframes commonFadeUp { from{opacity:0;transform:translateY(1.6rem);}to{opacity:1;transform:translateY(0);} }
.common-modal_header {display:flex;align-items:center;justify-content:space-between;background:#003675;padding:2rem 2rem 1.2rem;border-bottom:0.1rem solid #eceef2;}
.common-modal_title {font-size:1.8rem;font-weight:700;color:#ffffff;margin:0;}
.common-btn_close {position:relative;width:2.2rem;height:2.2rem;padding:0;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;background:transparent;outline:none;}
.common-btn_close::before {content:'\e921';font-family:"xeicon";font-size:2.2rem;color:#fff;line-height:1;display:block;transition:transform 0.4s ease-in-out, color 0.3s ease;}
.common-btn_close:hover::before {color:#93D2FF;transform:rotate(180deg);}
.common-btn_close:active {transform:scale(0.9);}
.common-modal_body {padding:2rem;overflow-y:auto;min-height:46rem;max-height:calc(100vh - 22rem);}
.common-modal_footer {padding:1.2rem 2rem 2rem;display:flex;justify-content:center;background:#f1f1f1;border-top:0.1rem solid #d5d5d5;gap:0.7rem;}
.common-modal_footer button {min-width:11rem;}

/* ==========================================================================
새창 팝업 페이지 (Popup Window Content)
========================================================================== */
.detail-popup_page {margin:0;padding:0;background-color:#f8fafc;min-height:100vh;display:flex;flex-direction:column;}
.detail-popup_window {width:100%;margin:0 auto;background:#fff;display:flex;flex-direction:column;min-height:100vh;box-shadow:0 0 1.6rem rgba(0, 0, 0, 0.05);box-sizing:border-box;}
.detail-popup_header {display:flex;align-items:center;justify-content:space-between;background:#003675;padding:1.2rem 2rem 1.2rem;border-bottom:0.1rem solid #eceef2;}
.detail-popup_title {font-size:1.8rem;font-weight:700;color:#ffffff;margin:0;}
.detail-popup_close {position:relative;width:2.2rem;height:2.2rem;padding:0;border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;background:transparent;outline:none;}
.detail-popup_close::before {content:'\e921';font-family:"xeicon";font-size:2.2rem;color:#fff;line-height:1;display:block;transition:transform 0.4s ease-in-out, color 0.3s ease;}
.detail-popup_close:hover::before {color:#93D2FF;transform:rotate(180deg);}
.detail-popup_close:active {transform:scale(0.9);}
.detail-popup_body {padding:2rem;flex:1;background:#fff;}
.detail-popup_footer {padding:1.2rem 2rem 2rem;display:flex;justify-content:center;background:#f1f1f1;border-top:0.1rem solid #d5d5d5;gap:0.7rem;}
.detail-popup_footer button {min-width:11rem;}

/* ==========================================================================
토글 툴팁
========================================================================= */
.tooltip_box {width:3.2rem; height:3.2rem; border-radius:0.6rem; border:0.1rem solid #e2e8f0; background:#ffffff; color:#475569; cursor:pointer; display:flex; align-items:center; justify-content:center; position:relative; flex-shrink:0; transition:all 0.2s ease;}
.tooltip_box:hover, .tooltip_box.list-tpye-active {border-color:#3b82f6; color:#3b82f6; background:#eff6ff;}
.tooltip_box i {font-size:1.6rem; pointer-events:none;}
.tooltip_box .tooltip_txt {position:absolute;bottom:-4rem;left:50%;transform:translateX(-50%) scale(0.9);background:#1e293b;color:#ffffff;font-size:1.2rem;font-weight:600;padding:0.6rem 1rem;border-radius:0.4rem;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;transition:all 0.15s cubic-bezier(0.4, 0, 0.2, 1);box-shadow:0 0.4rem 1.2rem rgba(0,0,0,0.15);z-index:100;}
.tooltip_box .tooltip_txt::before {content:""; position:absolute; top:-0.4rem; left:50%; transform:translateX(-50%) rotate(45deg); width:0.8rem; height:0.8rem; background:#1e293b;}
.tooltip_box:hover .tooltip_txt {opacity:1; visibility:visible; transform:translateX(-50%) scale(1);}

/* ==========================================================================
대민용 확장 스타일 (General Portal UI Customization)
========================================================================== */
.general-wrap .com-list-container {display:block !important;width:100% !important;max-width:150rem;padding:0 !important;}
.general-wrap .com-category-tab {display:flex;align-items:center;gap:0.8rem;margin-bottom:3.2rem;overflow-x:auto;width:100% !important;max-width:100% !important;white-space:nowrap;-webkit-overflow-scrolling:touch;box-sizing:border-box;justify-content:center;flex-wrap:nowrap !important;}
.general-wrap .com-category-tab .tab-item {min-width:9rem;height:4rem;padding:0 5rem;font-size:1.6rem;font-weight:500;color:#475569;background:#fff;border:0.1rem solid #e2e8f0;border-radius:2rem;cursor:pointer;transition:all 0.2s ease;flex-shrink:0;white-space:nowrap;display:inline-block !important;width:auto !important;}
.general-wrap .com-category-tab .tab-item:hover {color:#2a5ee8;background:#f0f4ff;border-color:#2a5ee8;box-shadow:0 0.2rem 0.8rem rgba(42,94,232,0.1);}
.general-wrap .com-category-tab .tab-item.active {color:#fff;background:#001c3d;border-color:#001c3d;font-weight:600;box-shadow:0 0.4rem 1.2rem rgba(0,28,61,0.15);}
.general-wrap .com-search-box {display:flex;justify-content:space-between;align-items:center;background:#f1f4f9;border-radius:0.8rem;padding:1.6rem 2.4rem;margin-bottom:2.4rem;gap:1.6rem;}
.general-wrap .com-search-box .search-left .total-info {font-size:1.4rem;color:#475569;display:flex;align-items:center;gap:0.6rem;}
.general-wrap .com-search-box .search-left .total-info i {font-size:1.6rem;color:#2a5ee8;}
.general-wrap .com-search-box .search-left .total-info strong {color:#2a5ee8;font-weight:700;}
.general-wrap .com-search-box .search-right {display:flex;align-items:center;gap:0.8rem;}
.general-wrap .com-search-box .spec-select {height:3.8rem;border:0.1rem solid #cbd5e1;border-radius:0.4rem;padding:0 1rem;background:#fff;font-size:1.4rem;box-sizing:border-box;transition:all 0.2s ease;}
.general-wrap .com-search-box .spec-select:hover, .general-wrap .com-search-box .spec-select:focus {border-color:#2a5ee8;outline:none;}
.general-wrap .com-search-box .spec-select.w-select-lg {max-width:15rem;}
.general-wrap .com-search-box .search-input-wrap {display:flex;align-items:center;position:relative;background:#fff;border:0.1rem solid #cbd5e1;border-radius:0.4rem;overflow:hidden;height:3.8rem;box-sizing:border-box;transition:all 0.2s ease;}
.general-wrap .com-search-box .search-input-wrap :has(.input-text:focus), .general-wrap .com-search-box .search-input-wrap:hover {border-color:#2a5ee8;box-shadow:0 0 0 0.2rem rgba(42,94,232,0.1);}
.general-wrap .com-search-box .search-input-wrap .input-text {border:none !important;height:100% !important;padding:0 8.5rem 0 1.4rem !important;font-size:1.4rem !important;width: 35rem !important;max-width:100%;background:transparent !important;display:block !important;}
.general-wrap .com-search-box .search-input-wrap .input-text:focus {outline:none !important;}
.general-wrap .com-search-box .search-input-wrap .btn-search-trigger {position:absolute;right:0;top:0;height:100%;width:7.5rem;background:#002957;color:#fff;font-size:1.3rem;font-weight:600;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:0.4rem;transition:all 0.2s ease;z-index:5;}
.general-wrap .com-search-box .spec-size-wrap {display: flex; gap:1rem;}
.general-wrap .com-search-box .spec-size-wrap select {min-width: 8rem;}
.general-wrap .com-search-box .search-input-wrap .btn-search-trigger:hover {background:#2a5ee8;color:#fff;}
.general-wrap .com-search-box .btn-apply {height:3.8rem;padding:0 1.8rem;background:#002957;color:#fff;font-size:1.4rem;font-weight:600;border:none;border-radius:0.4rem;cursor:pointer;transition:all 0.2s ease;}
.general-wrap .com-search-box .btn-apply:hover {background:#2a5ee8;box-shadow:0 0.2rem 0.6rem rgba(42,94,232,0.3);}
.general-wrap .title-box-area {border-bottom:none;padding-bottom:0rem;margin-bottom:1.6rem;min-height:auto;}
.general-wrap .title-lg .title-text span {font-size: 1.8rem;color:#0f172a;font-weight:700;padding-left:1.4rem;}
.general-wrap .title-lg .title-text span::before {width:0.4rem;height:1.8rem;background:#2a5ee8;border-radius:0.2rem;left:0;box-shadow:none;}
.general-wrap .table-container {border:none;border-top:0.2rem solid #0f172a;border-radius:0;box-shadow:none;}
.general-wrap .custom-table th {background:#fff;color:#0f172a;font-weight:600;border:none;background: #f8faff;border-bottom:0.1rem solid #cbd5e1;height:5.2rem;font-size:1.5rem;}
.general-wrap .custom-table td {border-left:none;border-right:none;border-bottom:0.1rem solid #e2e8f0;height: 5.2rem;background:#fff;transition:all 0.2s ease;}
.general-wrap .custom-table tbody tr {transition:all 0.2s ease;}
.general-wrap .custom-table tbody tr:hover td {background-color:#f4f7fc;color:#002957;}
.general-wrap .custom-table tbody tr:hover .title-link {color:#2a5ee8;font-weight:500;}
.general-wrap .custom-table .td-num {color:#64748b;font-weight:500;}
.general-wrap .custom-table .td-type {color:#334155;}
.general-wrap .custom-table .td-date {color:#64748b;}
.general-wrap .custom-table .td-count {color:#64748b;}
.general-wrap .title-link {font-size:1.5rem;color:#1e293b;font-weight:400;transition:all 0.2s ease;}
.general-wrap .title-link:hover {color:#2a5ee8;text-decoration:underline;}
.general-wrap .badge {display:inline-flex;align-items:center;justify-content:center;padding:0.2rem 0.8rem;font-size:1.1rem;font-weight:700;border-radius:0.3rem;margin-right:0.6rem;height:1.9rem;box-sizing:border-box;}
.general-wrap .badge.badge-new {background:#ef4444;color:#fff;}
.general-wrap .badge.badge-required {background:#2a5ee8;color:#fff;}
.general-wrap .pagination-wrap {margin-top:3.6rem;gap:0.4rem;}
.general-wrap .page-btn {border:0.1rem solid #e2e8f0;background:#fff;color:#64748b;border-radius:0.4rem;width:3.4rem;height:3.4rem;transition:all 0.2s ease;}
.general-wrap .page-btn:hover {background:#002957;color:#fff;border-color:#002957;box-shadow:0 0.2rem 0.6rem rgba(0,41,87,0.15);}
.general-wrap .page-link {color:#64748b;border-radius:0.4rem;width:3.4rem;height:3.4rem;font-size:1.4rem;transition:all 0.2s ease;}
.general-wrap .page-link:hover {background:#f1f5f9;color:#002957;font-weight:600;}
.general-wrap .page-number-list li.active .page-link {background:#002957;color:#fff;font-weight:700;box-shadow:0 0.2rem 0.6rem rgba(0,41,87,0.2);}

/* ==========================================================================
[20260625] 축소 전용 영역
========================================================================== */
.shrink-size .common-modal_body{padding:1.5rem !important;}
.shrink-size .con-box-item{margin-bottom:1.5rem !important;}
.shrink-size .title-box-area{margin-bottom:1rem !important; min-height:auto !important;}
.shrink-size .title-box-area.title-lg .title-text{font-size:1.6rem !important;}
.shrink-size .title-md .title-text span{font-size:1.5rem !important;}
.shrink-size .title-box-area.title-md .title-text{font-size:1.4rem !important;}
.shrink-size .title-box-area.title-sm .title-text{font-size:1.3rem !important;}
.shrink-size .total-count{font-size:1.2rem !important; margin-left:1rem !important;}
.shrink-size .total-count strong {font-size:1.2rem !important; margin-left:1rem !important;}
.shrink-size .title-help-badge{font-size:1.1rem !important; padding:0.2rem 0.6rem !important; height:auto !important;}
.shrink-size .custom-table{font-size:1.2rem !important;}
.shrink-size .custom-table th{padding:0.4rem 0.6rem !important; height:2.8rem !important; font-size:1.2rem !important; line-height:1.2 !important;}
.shrink-size .custom-table td{padding:0.4rem 0.6rem !important; height:2.8rem !important; font-size:1.2rem !important; line-height:1.2 !important;}
.shrink-size .board-write-area th{padding:0.6rem 1rem !important; font-size:1.2rem !important; height:auto !important;}
.shrink-size .board-write-area td{padding:0.6rem 1rem !important; font-size:1.2rem !important; height:auto !important;}
.shrink-size .nested-table th{padding:0.3rem 0.5rem !important; height:2.4rem !important; font-size:1.1rem !important;}
.shrink-size .nested-table td{padding:0.3rem 0.5rem !important; height:2.4rem !important; font-size:1.1rem !important;}
.shrink-size .input-text{padding:0rem 0.8rem !important; height:2.6rem !important; font-size:1.2rem !important; line-height:2.6rem !important;}
.shrink-size .select-box{padding:0rem 2rem 0rem 0.8rem !important; height:2.6rem !important; font-size:1.2rem !important; line-height:2.6rem !important;}
.shrink-size .date-input{padding:0rem 0.6rem !important; height:2.6rem !important; font-size:1.2rem !important;}
.shrink-size .textarea_wrap textarea{padding:0.6rem 0.8rem !important; font-size:1.2rem !important; min-height:6rem !important;}
.shrink-size .radio-label{font-size:1.2rem !important;}
.shrink-size .radio-label input[type="radio"]{width:1.4rem !important; height:1.4rem !important;}
.shrink-size .checkbox-label{font-size:1.2rem !important;}
.shrink-size .checkbox-label input[type="checkbox"]{width:1.4rem !important; height:1.4rem !important;}
.shrink-size .btn{padding:0rem 1rem !important; height:2.6rem !important; font-size:1.2rem !important; line-height:2.4rem !important;}
.shrink-size .btn.btn-xs{padding:0rem 0.6rem !important; height:2rem !important; font-size:1.1rem !important; line-height:1.8rem !important;}
.shrink-size .btn.btn-sm{padding:0rem 0.8rem !important; height:2.4rem !important; font-size:1.1rem !important; line-height:2.2rem !important;}
.shrink-size .btn.btn-md{padding:0rem 1.2rem !important; height:2.8rem !important; font-size:1.2rem !important; line-height:2.6rem !important;}
.shrink-size .btn.btn-lg{padding:0rem 1.6rem !important; height:3.2rem !important; font-size:1.3rem !important; line-height:3rem !important;}
.shrink-size .tab-depth1 .tab-btn{padding:0rem 1.2rem !important; height:3.2rem !important; font-size:1.3rem !important; line-height:3.2rem !important;}
.shrink-size .tab-depth2 .tab-btn{padding:0rem 1rem !important; height:2.8rem !important; font-size:1.2rem !important; line-height:2.8rem !important;}
.shrink-size .search-section{padding:1.2rem !important; margin-bottom:1.5rem !important;}
.shrink-size .search-section .line{margin-bottom:0.8rem !important;margin-top: 0rem !important;}
.shrink-size .search-section .label{font-size:1.2rem !important; min-width:auto !important; margin-right:0.8rem !important;}
.shrink-size .search-section .block{margin-right:1.5rem !important;}
.shrink-size .search-section .button-more{margin-top:0.8rem !important;bottom: 2.5rem;}
.shrink-size .pagination-wrap{margin-top:1.5rem !important; height:auto !important;}
.shrink-size .pagination-wrap .page-btn{width:2.6rem !important; height:2.6rem !important; line-height:2.4rem !important; font-size:1.2rem !important;}
.shrink-size .pagination-wrap .page-link{width:2.6rem !important; height:2.6rem !important; line-height:2.6rem !important; font-size:1.2rem !important;}
.shrink-size .board-view-header{padding:1.2rem 1.5rem !important;}
.shrink-size .board-view-title{font-size:1.6rem !important; margin-top:0.4rem !important;}
.shrink-size .board-view-meta span{font-size:1.1rem !important;}
.shrink-size .board-view-detail{padding:0.8rem 1.5rem !important;}
.shrink-size .board-view-label{font-size:1.2rem !important; padding:0.4rem 0rem !important;}
.shrink-size .board-view-value{font-size:1.2rem !important; padding:0.4rem 0rem !important;}
.shrink-size .board-view-text{padding:1.5rem !important; font-size:1.3rem !important; line-height:1.5 !important;}
.shrink-size .board-view-bottom{padding:1rem 1.5rem !important;}
.shrink-size .basics-helpbox{padding:1rem 1.2rem !important; margin-bottom:1.2rem !important;}
.shrink-size .basics-helpbox h4{font-size:1.3rem !important; margin-bottom:0.4rem !important;}
.shrink-size .basics-helpbox p{font-size:1.2rem !important; line-height:1.4 !important;}
.shrink-size .list-disc li{font-size:1.2rem !important; margin-bottom:0.4rem !important; padding-left:1.2rem !important;}
.shrink-size .box-help-text{padding:1rem !important;align-items: center;}
.shrink-size .box-help-text h4{font-size:1.2rem !important;margin-bottom: 0rem !important;}
.shrink-size .box-help-text p{font-size:1.1rem !important;line-height:1.4 !important;}
.shrink-size .empty-state{padding:2.5rem 1.5rem !important;}
.shrink-size .empty-state .empty-icon i{font-size:3rem !important;}
.shrink-size .empty-state p{font-size:1.4rem !important; margin:0.6rem 0 0.2rem 0 !important;}
.shrink-size .empty-state span{font-size:1.1rem !important;}
.shrink-size .krds-file-upload{padding:0.8rem !important;}
.shrink-size .file-upload-drag{padding:1.2rem !important;}
.shrink-size .file-upload-inner i{font-size:2.4rem !important;}
.shrink-size .upload-guide{font-size:1.2rem !important; margin-bottom:0.6rem !important;}
.shrink-size .btn-file-select{padding:0.4rem 1rem !important; font-size:1.1rem !important; height:auto !important;}
.shrink-size .file-list{margin-top:0.6rem !important;}
.shrink-size .file-item{padding:0.4rem 0.6rem !important; margin-bottom:0.4rem !important; font-size:1.1rem !important;}
.shrink-size .info-msg-group{margin-top:0.6rem !important;}
.shrink-size .info-txt{font-size:1.1rem !important; line-height:1.3 !important;}	
 .shrink-size .common-modal_footer .btn-xs {height:3rem !important;padding:0 0.7rem !important;font-size:1.3rem !important;}
.shrink-size .common-modal_footer .btn-sm {height:3.2rem !important;padding:0 1.1rem !important;font-size:1.3rem !important;}
.shrink-size .common-modal_footer .btn-md {height:3.6rem !important;padding:0 1.8rem !important;font-size:1.4rem !important;}
.shrink-size .common-modal_footer .btn-lg {height:4.8rem !important;padding:0 2.8rem !important;font-size:1.6rem !important;}
.shrink-size .title-link {font-size: 1.2rem !important;}
.shrink-size .data-util p {font-size: 1.2rem !important;}

/* ==========================================================================
[20260625] 타이틀영역 중앙 탭
========================================================================== */
.t-center-tab {display: inline-flex;align-items: center;gap: 2rem;padding: 0.2rem 0;background-color: transparent;border: none;}
.tc-tab_btn {position: relative;border: none;background: none;padding: 0rem;font-size: 1.4rem;font-weight: 500;color: #71717a;background: #f8faff;cursor: pointer;transition: all 0.25s ease;border-radius: 10rem;border: 0.1rem solid #edf4ff;padding: 0rem 2rem;}
.tc-tab_btn:not(:first-child)::before {content: "";position: absolute;left: -1.2rem;top: calc(50% - 0.3rem);width: 0.3rem;height: 0.3rem;background-color: #bbbbbb;border-radius: 50%;}
.tc-tab_btn:hover { color: #18181b; background: #dbe6ff; }
.tc-tab_btn.active {color: #18181b;font-weight: 600;background: #eff3ff;color: #2563eb;border-color: #ceddff;}



/* ==========================================================================
반응형 미디어 쿼리
========================================================================== */
@media screen and (max-width: 1366px) {
.gne-brand-side { flex:0 0 40%;padding:5.5rem 3.6rem; }
.gne-form-side { padding:3.6rem; }
.gne-h-tit { font-size:2.6rem; }
}

@media screen and (max-width: 1024px) {
.w-half, .select-box, .input-text:read-only { max-width:100% !important; }
.title-box-area {flex-direction:column;align-items:flex-start;gap:1.4rem;height:auto;border-bottom:0.1rem solid #cbd5e1;padding:1.4rem 0rem;margin-top:0rem;}
.title-box-area:first-child { margin-top:0; }
.title-box-area + .title-box-area { margin-top:1.4rem; }
.title-right { width:100%;justify-content:flex-start; }
.date-input { max-width:100%;width:100%; }
.btn { width:100%;height:4.2rem; }
.btn-xs { height:3rem; }
.btn-lg { height:5.2rem; }
.custom-table { table-layout:auto; }
.custom-table th, .custom-table td, .board-write-area th, .board-write-area td, .krds-table-left th, .krds-table-left td { height:auto !important;min-height:4.8rem;padding:1.2rem; }
.table-col-type colgroup { display:none; }
.table-col-type .custom-table thead { display:none; }
.table-col-type .custom-table tr { display:block;margin-bottom:1.4rem;border:0.1rem solid #cbd5e1;border-radius:0.7rem;overflow:hidden; }
.table-col-type .custom-table td { display:flex;justify-content:space-between;align-items:center;text-align:right !important;border:none;border-bottom:0.1rem solid #f1f5f9; }
.table-col-type .custom-table td::before { content:attr(data-label);font-weight:bold;color:#334155;margin-right:1.8rem;flex-shrink:0;text-align:left; }
.table-col-type .notice-board-table colgroup { display:none; }
.table-col-type .notice-board-table tr { display:grid;grid-template-columns:auto 1fr auto;padding:1.4rem;background:#fff;border:0.1rem solid #cbd5e1;border-radius:0.7rem;margin-bottom:1rem;gap:0.7rem 1.1rem; }
.table-col-type .notice-board-table td { display:block;padding:0 !important;min-height:auto;height:auto;border:none;text-align:left !important; }
.table-col-type .notice-board-table td::before { display:none; }
.table-col-type .notice-board-table .td-num { grid-column:1;grid-row:1;font-size:1.3rem;color:#64748b;font-weight:600; }
.table-col-type .notice-board-table .td-type { grid-column:2;grid-row:1;font-size:1.3rem;color:#2a5ee8;font-weight:600; }
.table-col-type .notice-board-table .td-count { grid-column:3;grid-row:1;font-size:1.3rem;color:#94a3b8;text-align:right !important; }
.table-col-type .notice-board-table .td-count .data-group { justify-content:flex-end; }
.table-col-type .notice-board-table .td-count .data-group::before { content:"조회 ";margin-right:0.25rem; }
.table-col-type .notice-board-table .td-subject { grid-column:1 / span 3;grid-row:2;padding:0.35rem 0 !important; }
.table-col-type .notice-board-table .notice-link { font-size:1.6rem;font-weight:600;line-height:1.4;display:block; }
.table-col-type .notice-board-table .td-date { grid-column:1 / span 3;grid-row:3;font-size:1.3rem;color:#64748b; }
.table-col-type .notice-board-table .td-num .data-group, .table-col-type .notice-board-table .td-type .data-group, .table-col-type .notice-board-table .td-subject .data-group, .table-col-type .notice-board-table .td-date .data-group { justify-content:flex-start; }
.table-row-type .custom-table colgroup { display:none; }
.table-row-type .custom-table tr { display:flex;flex-direction:column;border-bottom:0.1rem solid #cbd5e1; }
.table-row-type .custom-table th, .table-row-type .custom-table td, .krds-table-left th, .krds-table-left td { width:100% !important;text-align:left; }
.nested-table thead { display:none; }
.nested-table tbody, .nested-table tr, .nested-table td { display:block;width:100% !important;border:none !important; }
.nested-table td { display:flex;justify-content:space-between;align-items:center;padding:1.1rem 1.4rem !important;height:auto !important;text-align:right !important; }
.nested-table td::before { content:attr(data-label);font-weight:bold;font-size:1.3rem;color:#1e293b;margin-right:1.8rem;flex-shrink:0; }
.board-view-header { padding:1.4rem 1.2rem; }
.board-view-title { font-size:2rem; }
.board-view-label { width:100%;padding:1.1rem 1.4rem; }
.board-view-value { padding:1.1rem 1.4rem; }
.board-view-text {padding:2.6rem 1.4rem;font-size:1.4rem;min-height:22rem;line-height:1.9rem;}
.board-view-bottom { flex-direction:column;gap:1.4rem;align-items:stretch; }
.btn-group { flex-direction:column; }
.board-view-bottom a, .board-view-bottom button { width:100%; }
.board-write-area colgroup { display:none; }
.board-write-area tbody, .board-write-area tr, .board-write-area th, .board-write-area td { display:block;width:100% !important; }
.board-write-area tr { border-bottom:0.1rem solid #cbd5e1; }
.board-write-area th { text-align:left;background:#f8fafc;border-bottom:none; }
.board-write-area td { border-top:none;padding-top:0.4rem; }
.board-write-area .select-box.w-select-lg { max-width:100%; }
.file-item { flex-direction:row;justify-content:space-between; }
.tab-depth1 { margin:1.4rem 0rem 0rem 0rem; }
.tab-depth1 .tab-btn { height:4.2rem;padding:0rem 1.4rem;font-size:1.4rem; }
.tab-depth2 { margin:0.8rem 0rem;padding:0.25rem; }
.tab-depth2 .tab-btn { height:3.4rem;padding:0rem 1.1rem;font-size:1.3rem; }
.soe_container { width:calc(100% - 3.6rem);left:1.8rem;margin-left:0;width:auto; }
.common-modal_content { width:100%;max-height:calc(100vh - 3.6rem); }
.search-section { padding:1.8rem; }
.search-section .condition-area { display:grid;grid-template-columns:1fr;gap:1.4rem;width:100%; }
.search-section .condition-area .line { display:grid;grid-template-columns:1fr;gap:1.1rem;width:100%;margin-top:0 !important; }
.search-section .condition-area .line .block { display:flex;flex-direction:column;align-items:stretch;gap:0.7rem;width:100% !important; }
.search-section .condition-area .line .block .label { line-height:1.8rem;padding:0;min-width:auto !important;flex-shrink:0; }
.search-section .condition-area .line .block select { max-width:100%;width:100%; }
.search-section .condition-area .line .block .input-text { max-width:100%;width:100%; }
.search-section .condition-area .line .block.search-input-group { display:flex;flex-direction:column;gap:0.7rem;width:100%; }
.search-section .condition-area .line .block.search-input-group select { width:100% !important;max-width:100%; }
.search-section .condition-area .line .block.search-input-group .input-text { width:100% !important;max-width:100%; }
.search-section .condition-area .line.search-bottom-line { padding-right:0; }
.search-section .button-more { position:static;margin-top:1.8rem;display:flex;flex-direction:row;width:100%;justify-content:center;gap:0.9rem; }
.search-section .button-more .flex-wrap { flex-direction:row;width:auto;gap:0.7rem; }
.search-section .button-more .btn { width:auto;min-width:9.5rem; }
.pagination-wrap { gap:0.2rem;margin-top:2.6rem; }
.page-btn, .page-link { width:3rem;height:3rem;font-size:1.3rem; }
.detail-popup_window { max-width:100%;min-height:100vh; }
.detail-popup_body { padding:1.8rem 1.4rem; }
.detail-popup_footer { padding:1.4rem; }
.detail-popup_footer button { width:100%; }
.input-text { width:100%; max-width:100%; }
.general-wrap .com-category-tab { justify-content:flex-start !important;padding-bottom:1.2rem !important;margin-bottom:2rem !important;flex-direction:row !important; }
.general-wrap .com-category-tab::-webkit-scrollbar { height:0.4rem; }
.general-wrap .com-category-tab::-webkit-scrollbar-track { background:#f1f5f9;border-radius:0.4rem; }
.general-wrap .com-category-tab::-webkit-scrollbar-thumb { background:#cbd5e1;border-radius:0.4rem; }
.general-wrap .com-category-tab .tab-item { padding:0 2.4rem !important; }
.general-wrap .com-category-tab .tab-item:hover { box-shadow:none;background:#fff;color:#475569;border-color:#e2e8f0; }
.general-wrap .com-category-tab .tab-item.active { color:#fff;background:#001c3d;border-color:#001c3d; }
.general-wrap .com-search-box { flex-direction:column;align-items:stretch;padding:1.4rem;gap:1.2rem; }
.general-wrap .com-search-box .search-right { flex-wrap:wrap; }
.general-wrap .com-search-box .spec-select { flex:1 1 calc(50% - 0.4rem); }
.general-wrap .com-search-box .search-input-wrap { flex:1 1 100%;width:100%; }
.general-wrap .com-search-box .search-input-wrap .input-text { width:100% !important;max-width:100% !important;box-sizing:border-box !important; }
.general-wrap .com-search-box .btn-apply { width:100%; }
.general-wrap .table-container { border-top:none; }
.general-wrap .custom-table td { border-bottom:none !important; }
.general-wrap .table-col-type .notice-board-table tr { border:0.1rem solid #e2e8f0;border-radius:0.6rem;box-shadow:0 0.2rem 0.8rem rgba(0,0,0,0.03);padding:1.4rem;margin-bottom:1rem;background:#fff;transition:all 0.2s ease; }
.general-wrap .table-col-type .notice-board-table tr:hover { border-color:#2a5ee8;box-shadow:0 0.4rem 1.2rem rgba(42,94,232,0.08); }
.general-wrap .table-col-type .notice-board-table tr:hover td { background:none; }
.general-wrap .table-col-type .notice-board-table .td-type { color:#475569; }
.general-wrap .table-col-type .notice-board-table .notice-link { font-size:1.5rem;font-weight:500; }
.general-wrap .com-search-box .spec-size-wrap {display: none;}
}

@media screen and (max-width: 768px) {
.sidebar-profile { position:relative; }
.profile-img { display:none !important; }
.profile-info { flex-direction:column;align-items:flex-end;gap:0.35rem; }
.profile-time { font-size:1.1rem; display:none !important;}
.profile-utils { position:absolute;right:0;top:6.5rem;background:#fff;box-shadow:0 0.4rem 0.9rem rgba(0,0,0,0.1);padding:0.7rem;border-radius:0.5rem;border:0.1rem solid #cbd5e1;display:none; }
.profile-utils.is-open { display:flex; }
.gne-modern-login-container { background:#fff; }
.gne-brand-side { display:none; }
.gne-form-side { padding:2.6rem 1.8rem; }
.gne-page-title { font-size:2.2rem; }
.gne-login-card { box-shadow:none;padding:1.8rem 1.8rem; }
.gne-selector-btn { font-size:1.5rem; }
.gne-form-options { flex-direction:column;align-items:flex-start;gap:1.4rem; }
.gne-link-group { width:100%;justify-content:space-between; }
.gne-btn-login { height:4.8rem; }
.gne-extra-box { padding:1.4rem; }
.auth-card-container { max-height:none;padding-right:0rem; }


.auth-card-item label { padding:1.1rem 1.2rem;gap:0.7rem; }
.auth-card-item .auth-num { margin-right:0.9rem;font-size:1.3rem; }
.auth-card-item .auth-title { font-size:1.3rem; }
.auth-card-item .auth-badge { font-size:1.3rem;padding:0.25rem 0.7rem; }
.tooltip_box { width:2.8rem; height:2.8rem; border-radius:0.4rem; }
.tooltip_box i { font-size:1.4rem; }
.tooltip_box .tooltip_txt { display:none; }
.title-name h1 {font-size: 2rem;}
}