/* fa-link.css — 고정자산 연동 공용 UI(P.faui) · 46 신규 요소. 전 클래스 faui-/fa- 접두.
   수치는 stg 실측(_refs/fixed-asset-link/plan1-compare.md) + stg styles.min.css 규칙 기준. */

/* ---------- 알럿/확인창 (stg alertLayer·confirmLayer: .popup.alert.icon) ---------- */
.faui-layer { position: fixed; inset: 0; z-index: 4000; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,.5); }
.faui-layer__card { width: 382px; padding: 28px 32px 24px; background: #fff; border: 1px solid rgba(0,0,0,.2); border-radius: 12px; text-align: center; box-shadow: 0 6px 13px rgba(0,0,0,.2); }
.faui-layer__body { display: flex; flex-direction: column; gap: 8px; }
.faui-layer__ico { height: 63px; margin: 0 0 8px; background: url("data:image/svg+xml,%3Csvg%20width='60'%20height='60'%20viewBox='0%200%2060%2060'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M53%2033.6318C53%2046.3302%2042.6984%2056.6318%2030%2056.6318C17.3016%2056.6318%207%2046.3302%207%2033.6318V13.0529L30%203.36865L53%2013.0529V33.6318Z'%20fill='url(%23p0)'/%3E%3Cpath%20d='M29.9992%2037.2631C28.6676%2037.2631%2027.5781%2036.1736%2027.5781%2034.8421V17.8947C27.5781%2016.5631%2028.6676%2015.4736%2029.9992%2015.4736C31.3308%2015.4736%2032.4202%2016.5631%2032.4202%2017.8947V34.8421C32.4202%2036.1736%2031.3308%2037.2631%2029.9992%2037.2631Z'%20fill='url(%23p1)'/%3E%3Cpath%20d='M30.0007%2046.9477C32.0064%2046.9477%2033.6323%2045.3218%2033.6323%2043.3161C33.6323%2041.3105%2032.0064%2039.6846%2030.0007%2039.6846C27.9951%2039.6846%2026.3691%2041.3105%2026.3691%2043.3161C26.3691%2045.3218%2027.9951%2046.9477%2030.0007%2046.9477Z'%20fill='url(%23p2)'/%3E%3Cdefs%3E%3ClinearGradient%20id='p0'%20x1='30'%20y1='56.6318'%20x2='30'%20y2='3.36865'%20gradientUnits='userSpaceOnUse'%3E%3Cstop%20stop-color='%23BCD5FC'/%3E%3Cstop%20offset='1'%20stop-color='%23F0F5FF'/%3E%3C/linearGradient%3E%3ClinearGradient%20id='p1'%20x1='29.9992'%20y1='37.2631'%20x2='29.9992'%20y2='15.4736'%20gradientUnits='userSpaceOnUse'%3E%3Cstop%20stop-color='%237AA4EF'/%3E%3Cstop%20offset='1'%20stop-color='%239DBEF3'/%3E%3C/linearGradient%3E%3ClinearGradient%20id='p2'%20x1='7.00072'%20y1='46.9477'%20x2='8.21125'%20y2='39.6846'%20gradientUnits='userSpaceOnUse'%3E%3Cstop%20stop-color='%237AA4EF'/%3E%3Cstop%20offset='1'%20stop-color='%239DBEF3'/%3E%3C/linearGradient%3E%3C/defs%3E%3C/svg%3E") no-repeat 50% 0; }
.faui-layer__ico .icon { display: none; }
.faui-layer__title { display: block; margin: 0; font-size: 20px; font-weight: 700; line-height: 24px; color: #003879; }
.faui-layer__msg { margin: 12px 0 0; font-size: 16px; color: #444; word-break: keep-all; }
.faui-layer__msg span { display: block; margin-top: 4px; line-height: 19px; }
.faui-layer__box { margin: 6px 0 0; padding: 8px 12px; background: #e6ecff; border-radius: 4px; text-align: left; font-size: 14px; line-height: 16px; color: #222; max-height: 80px; overflow-y: auto; }
.faui-layer__box--del { margin-top: 6px; padding: 9px 12px; display: flex; flex-direction: column; gap: 6px; }
.faui-layer__box--del small { font-size: 12px; line-height: 14px; color: #444; }
.faui-layer__box--del b { font-size: 14px; font-weight: 400; line-height: 16px; color: #222; }
.faui-layer__foot { display: flex; gap: 12px; padding: 20px 0 0; }
.faui-layer__ok, .faui-layer__cancel { flex: 1; height: 40px; padding: 0 8px; border-radius: 6px; font-size: 16px; font-weight: 500; line-height: 1; cursor: pointer; }
.faui-layer__ok { background: #003879; color: #fff; border: 1px solid #003879; }
.faui-layer__cancel { background: #fff; color: #888; border: 1px solid #ccc; }

/* ---------- 공용 팝업 skin (stg .wj-popup > .popup: 헤더 57 / 바디 16 32 8 / 푸터 64) ---------- */
.modal__backdrop:has(> .faui-modal) { background: rgba(0,0,0,.5); }
.faui-modal { border: 1px solid rgba(0,0,0,.2); border-radius: 12px; box-shadow: 0 6px 13px rgba(0,0,0,.2); background: #fff; max-width: 96vw; max-height: 96vh; overflow: hidden; }
.faui-modal .modal__head { position: relative; flex: none; padding: 20px 32px 12px; border-bottom: 1px solid #e1e5ea; background: #fff; justify-content: flex-start; }
.faui-modal .modal__title { font-size: 20px; font-weight: 700; color: #003879; line-height: 24px; }
.faui-modal .modal__close { position: absolute; top: 50%; right: 32px; transform: translateY(-50%); width: 24px; height: 24px; padding: 0; background: url("data:image/svg+xml,%3Csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M9.36394%208.26881L14.96%202.68921L14.9605%202.68877C15.3411%202.30738%2015.3551%201.67866%2014.9509%201.31412C14.5874%200.986275%2013.9668%200.916787%2013.5922%201.32722L8.00089%206.90205L2.43307%201.2947L2.43263%201.29425C2.05176%200.912601%201.42341%200.898465%201.05937%201.3038C0.732341%201.66791%200.663172%202.28903%201.07268%202.66412L6.6365%208.23944L1.03954%2013.848C0.65894%2014.2294%200.644861%2014.8581%201.04906%2015.2226C1.41259%2015.5505%202.03315%2015.62%202.40781%2015.2095L7.99956%209.63424L13.5674%2015.2136C13.9482%2015.5952%2014.5766%2015.6093%2014.9406%2015.204C15.2677%2014.8399%2015.3368%2014.2188%2014.9273%2013.8437L9.36394%208.26881Z'%20fill='%23CACACA'%20stroke='%23CACACA'%20stroke-width='0.5'/%3E%3C/svg%3E") no-repeat 50% 50% / 14px; }
.faui-modal .modal__close:hover { background-color: transparent; }
.faui-modal .modal__close .icon { display: none; }
.faui-modal .modal__body { flex: 1; min-height: 0; padding: 16px 32px 8px; overflow-y: auto; background: #fff; }
.faui-modal .modal__foot { flex: none; justify-content: center; gap: 12px; height: 64px; padding: 12px 32px 20px; border-top: 0; background: #fff; }
.faui-modal .modal__foot .btn { width: 89px; min-width: 89px; height: 32px; padding: 0 8px; border-radius: 6px; font-size: 14px; font-weight: 500; }
.faui-btn--cancel { border-color: #ff2828 !important; color: #ff2828 !important; background: #fff !important; }
.faui-btn--primary { background: #003879 !important; border-color: #003879 !important; color: #fff !important; }

/* ---------- 조회 팝업(계정과목 / 고정자산) ---------- */
.faui-modal--acct, .faui-modal--assets { height: 722px; }
.faui-modal--acct .modal__body, .faui-modal--assets .modal__body { display: flex; flex-direction: column; overflow: hidden; }
.faui-acct { display: flex; flex-direction: column; flex: 1; min-height: 0; }
.faui-searchrow { display: flex; gap: 8px; flex: none; margin-bottom: 20px; }
.faui-modal--assets .faui-searchrow { margin-bottom: 8px; }
.faui-inp { flex: 1; height: 32px; padding: 0 12px; border: 1px solid #e1e5ea; border-radius: 6px; font-size: 14px; color: #222; background: #fff; }
.faui-inp:focus { outline: 0; border-color: #376cfb; }
.faui-inp::placeholder { color: #888; }
.faui-searchrow .faui-btn--search, .faui-searchrow .faui-btn--reset { height: 32px; padding: 0 8px; border-radius: 6px; font-size: 14px; font-weight: 500; }
.faui-searchrow .faui-btn--search { width: 80px; min-width: 80px; color: #003879; border: 1px solid #738aa5; background: #fff; }
.faui-searchrow .faui-btn--reset { width: 82px; min-width: 82px; color: #888; border: 1px solid #e1e5ea; background: #fff; }
.faui-searchrow .btn .icon { width: 16px; height: 16px; fill: currentColor; }
.faui-tabs { position: relative; display: flex; flex: none; height: 40px; }
.faui-tab { position: relative; flex: 1; height: 25px; padding: 0; background: none; border: 0; font-size: 14px; font-weight: 600; line-height: 23px; color: #a8afb8; cursor: pointer; }
.faui-tab::before { content: ''; position: absolute; left: 0; right: 0; bottom: -3px; height: 3px; background: #a8afb8; }
.faui-tab:first-child::before { border-radius: 3px 0 0 3px; }
.faui-tab:last-child::before { border-radius: 0 3px 3px 0; }
.faui-tab.is-active { color: #003879; font-weight: 700; }
.faui-tab.is-active::after { content: ''; position: absolute; left: 0; right: 0; bottom: -3px; height: 3px; background: #003879; border-radius: 3px; z-index: 1; }
.faui-acct__grid { flex: 1; min-height: 0; overflow: auto; border: 1px solid #e1e5ea; border-radius: 8px; background: #fff; }
.faui-table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.faui-table th { height: 30px; padding: 0 10px; background: #f1f2f5; font-size: 14px; font-weight: 700; color: #444; text-align: center !important; border: 1px solid #e4e4e4; border-top: 0; position: sticky; top: 0; }
.faui-table th:first-child, .faui-table td:first-child { border-left: 0; }
.faui-table th:last-child, .faui-table td:last-child { border-right: 0; }
.faui-table td { height: 30px; padding: 6px 10px; font-size: 14px; line-height: 18px; color: #222; border: 1px solid #e4e4e4; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.faui-table td.is-center { text-align: center; }
.faui-table tbody tr { cursor: pointer; }
.faui-table tbody tr:hover td { background: #f5f8ff; }
.faui-table tbody tr.is-selected td { background: #edf6ff; color: #003879; }
.faui-hit { color: #376cfb; }
.faui-empty { text-align: center !important; color: #888; }

/* ---------- 처리 방법 선택 / 연결 정보 ---------- */
.faui-handle { display: flex; flex-direction: column; }
.faui-handle__sub { padding: 16px 20px; background: #ecf1ff; border-radius: 8px; font-size: 14px; font-weight: 600; line-height: 16px; color: #003879; }
.faui-handle__ask { margin: 12px 0 0; font-size: 14px; font-weight: 600; line-height: 16px; color: #222; }
.faui-reasons { list-style: none; margin: 12px 0 0; padding: 0; display: grid; gap: 16px 20px; }
.faui-reason { display: flex; flex-direction: column; gap: 16px; padding: 20px 24px; border: 1px solid #e1e5ea; border-radius: 8px; cursor: pointer; background: #fff; }
.faui-reason.is-on { border-color: #376cfb; }
.faui-reason__top { display: flex; justify-content: space-between; align-items: center; }
.faui-reason__radio { display: inline-flex; align-items: center; gap: 8px; font-size: 16px; font-weight: 700; line-height: 19px; color: #222; cursor: pointer; }
.faui-reason__radio input { appearance: none; -webkit-appearance: none; position: relative; width: 18px; height: 18px; margin: 0; padding: 0; border: 1px solid #ccc; border-radius: 50%; background: #fff; }
.faui-reason__radio input:checked { border-color: #003879; }
.faui-reason__radio input:checked::before { content: ''; position: absolute; top: 50%; left: 50%; width: 12px; height: 12px; transform: translate(-50%, -50%); border-radius: 50%; background: #003879; }
.faui-reason__right { font-size: 14px; line-height: 16px; color: #222; }
.faui-reason__desc { margin: 0; font-size: 12px; line-height: 14px; color: #003879; }
.faui-form { display: flex; flex-direction: column; gap: 12px; }
.faui-form__row { display: flex; align-items: flex-start; }
.faui-form__row label { flex: none; min-width: 120px; max-width: 120px; padding: 6px 8px 5px 0; font-size: 14px; font-weight: 600; line-height: 16px; color: #222; }
.faui-form__row .faui-inp { flex: none; width: 316px; background: #f1f2f5; color: #444; }

/* 분개 '상세' 셀 — stg .btn-popOpen(24x24): 기본 회색 아이콘, 연결되면(.active) 네이비 */
.faui-detail { width: 24px; height: 24px; padding: 0; border: 0; background: url("data:image/svg+xml,%3Csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M18%2012.5V17C18%2017.2652%2017.8946%2017.5196%2017.7071%2017.7071C17.5196%2017.8946%2017.2652%2018%2017%2018H6C5.7348%2018%205.4804%2017.8946%205.2929%2017.7071C5.1054%2017.5196%205%2017.2652%205%2017V6C5%205.7348%205.1054%205.4804%205.2929%205.2929C5.4804%205.1054%205.7348%205%206%205H10.5'%20stroke='%23888888'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3Cpath%20d='M14.5%205H18V8.5'%20stroke='%23888888'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3Cpath%20d='M18%205L11.5%2011.5'%20stroke='%23888888'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat 50% 50% / 100% auto; cursor: pointer; display: inline-block; vertical-align: middle; }
.faui-detail .icon { display: none; }
.faui-detail.is-linked { background: #003879; -webkit-mask: url("data:image/svg+xml,%3Csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M18%2012.5V17C18%2017.2652%2017.8946%2017.5196%2017.7071%2017.7071C17.5196%2017.8946%2017.2652%2018%2017%2018H6C5.7348%2018%205.4804%2017.8946%205.2929%2017.7071C5.1054%2017.5196%205%2017.2652%205%2017V6C5%205.7348%205.1054%205.4804%205.2929%205.2929C5.4804%205.1054%205.7348%205%206%205H10.5'%20stroke='%23888888'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3Cpath%20d='M14.5%205H18V8.5'%20stroke='%23888888'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3Cpath%20d='M18%205L11.5%2011.5'%20stroke='%23888888'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat 50% 50% / cover; mask: url("data:image/svg+xml,%3Csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M18%2012.5V17C18%2017.2652%2017.8946%2017.5196%2017.7071%2017.7071C17.5196%2017.8946%2017.2652%2018%2017%2018H6C5.7348%2018%205.4804%2017.8946%205.2929%2017.7071C5.1054%2017.5196%205%2017.2652%205%2017V6C5%205.7348%205.1054%205.4804%205.2929%205.2929C5.4804%205.1054%205.7348%205%206%205H10.5'%20stroke='%23888888'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3Cpath%20d='M14.5%205H18V8.5'%20stroke='%23888888'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3Cpath%20d='M18%205L11.5%2011.5'%20stroke='%23888888'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat 50% 50% / cover; }

/* ---------- 46 고정자산정보: stg 검색바·툴바 (stg bs06110 실측) ---------- */
.famgr .fa-filter { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; }
.famgr .fa-search { display: flex; align-items: center; gap: 0; }
.famgr .fa-filter__label { width: 88px; padding-right: 8px; color: #222; font-weight: 500; }
.famgr .fa-search .fa-filter__label:nth-of-type(2) { margin-left: 30px; }
.fa-acctinput { position: relative; width: 204px; height: 32px; border: 1px solid #e1e5ea; border-radius: 6px; background: #f1f2f5; }
.fa-acctinput input { width: 100%; height: 100%; padding: 0 34px 0 12px; border: 0; background: transparent; font-size: 14px; color: #888; }
.fa-acctinput .fa-input__icon { position: absolute; right: 8px; top: 6px; width: 18px; height: 18px; padding: 0; background: none; border: 0; cursor: pointer; }
.fa-acctinput .fa-input__icon .icon { width: 18px; height: 18px; fill: #888; }
.famgr .fa-selectwrap.fa-assettype { width: 196px; }
.famgr .fa-assettype .fa-select { border-color: #e1e5ea; padding-left: 12px; }
.famgr .fa-filter__btns { display: flex; gap: 8px; }
.famgr .fa-detailbtn, .famgr .fa-searchbtn, .famgr .fa-resetbtn { display: inline-flex; align-items: center; justify-content: center; gap: 4px; height: 32px; padding: 0 8px; border-radius: 6px; font-size: 14px; font-weight: 500; background: #fff; cursor: pointer; }
.famgr .fa-detailbtn { width: 98px; color: #888; border: 1px solid #e1e5ea; }
.famgr .fa-searchbtn { width: 80px; color: #003879; border: 1px solid #738aa5; }
.famgr .fa-resetbtn { width: 82px; color: #888; border: 1px solid #e1e5ea; }
.famgr .fa-detailbtn.is-active { color: #003879; border-color: #738aa5; }
/* 상세 검색 드로어(stg .search-detail): 라벨 88 · 검색기준 select 110 · 입력 178 · 세그먼트 버튼은 좌우 12 */
.famgr .fa-detail-filter { gap: 30px; }
.famgr .fa-detail-filter .fa-fld { gap: 0; }
.famgr .fa-detail-filter .fa-fld__label { width: 88px; padding-right: 8px; color: #222; }
.famgr .fa-detail-filter .fa-selectwrap { width: 110px; }
.famgr .fa-detail-filter .fa-select { border-color: #e1e5ea; padding-left: 12px; }
.famgr .fa-detail-filter .fa-searchbox { width: 178px; margin-left: 9px; border-color: #e1e5ea; }
.famgr .fa-detail-filter .fa-seg button { padding: 0 12px; }
.famgr .fa-detailbtn .icon, .famgr .fa-searchbtn .icon, .famgr .fa-resetbtn .icon { width: 20px; height: 20px; fill: currentColor; }
.famgr .fa-toolbar { gap: 8px; margin-bottom: 8px; }
.famgr .fa-tools { gap: 8px; }
.famgr .fa-toolbar .fa-count { display: flex; align-items: flex-end; gap: 12px; height: 32px; margin-left: 11px; padding-bottom: 7px; font-size: 12px; font-weight: 500; line-height: 14px; color: #003879; }
.famgr .fa-toolbar .fa-count > span:first-child { color: #888; }
.famgr .fa-toolbar .fa-count b { font-weight: inherit; color: inherit; }
.famgr .fa-tbtn { padding: 0 8px; gap: 4px; }
.famgr .fa-tbtn .icon { width: 20px; height: 20px; }
.famgr .fa-tools:first-child > .fa-tbtn:nth-child(1) { min-width: 94px; }
.famgr .fa-tools:first-child > .fa-tbtn:nth-child(2) { min-width: 82px; }
.famgr .fa-tbtn--prior { padding: 0 8px; }
.famgr .fa-tbtn--prior.fa-tbtn--acct { color: #003879; border-color: #738aa5; }
.famgr .fa-tbtn.fa-tbtn--dispose { width: 99px; min-width: 99px; padding: 0; color: #376cfb; border-color: #376cfb; }
.famgr .fa-tbtn:disabled { opacity: .4; color: #888; background: #fff; }
.famgr .fa-tbtn--del:disabled { color: #ff2828; }
.famgr .fa-tbtn.fa-tbtn--dispose:disabled { opacity: .6; color: #376cfb; }
.fa-tipbox { position: relative; display: inline-block; }
.fa-tiptext { display: none; position: absolute; right: 0; top: 100%; z-index: 20; width: 300px; margin-top: 6px; padding: 12px 14px; background: #333; color: #fff; border-radius: 6px; font-size: 12px; line-height: 1.5; }
.fa-tiptext ul { margin: 0; padding-left: 14px; }
.fa-tipbox:hover .fa-tiptext { display: block; }
.fa-badge--off { background: #f1f2f5; color: #888; }

/* ---------- 변동내역 추가 팝업 (stg bs06110p3: 382x323) ---------- */
.faui-modal--chg .modal__body { padding-bottom: 16px; }
.faui-modal--chg .faui-form { gap: 12px; }
.faui-modal--chg .faui-form__row { align-items: flex-start; }
.faui-modal--chg .faui-form__row label { min-width: 120px; max-width: 120px; }
.faui-modal--chg .faui-form__row label.is-required::after { content: ' *'; color: #ff2828; }
.faui-modal--chg .fa-input, .faui-modal--chg .fa-form-selectwrap { flex: none; width: 194px; height: 32px; border-radius: 6px; }
.faui-modal--chg .fa-input--date { width: 128px; }
.faui-modal--chg .fa-input input { text-align: right; }
.faui-modal--chg .fa-input--date input { text-align: left; }
.faui-modal--chg .fa-form-select { height: 32px; border-color: #e1e5ea; padding-left: 12px; }
.faui-modal--chg .faui-form__row:nth-child(-n+2) { min-height: 34px; }

/* ---------- 등록/수정 팝업 (stg bs06110pt: 1402x802 — 헤더 57 · 바디 16 32 8 · 푸터 64) ---------- */
.modal__backdrop:has(> .fa-modal-card) { background: rgba(0,0,0,.5); }
.fa-modal-card { width: 1402px; height: 802px; max-width: 96vw; max-height: 96vh; transform: none; border-radius: 12px; }
.fa-modal-card .modal__body { overflow: hidden; padding: 16px 32px 8px; }
.fa-modal-card .fa-form--live { width: 100%; height: 100%; display: flex; flex-direction: column; gap: 8px; }
.fa-modal-card .fa-acq { flex: none; }
.fa-modal-card .fa-acq-title { height: 32px; display: flex; align-items: center; font-size: 15px; font-weight: 700; color: #444; }
.fa-modal-card .fa-acq-box { height: auto; display: grid; grid-template-columns: 444px 444px 1fr; column-gap: 0; row-gap: 8px; align-content: start; margin-top: 9px; padding: 7px 16px; border: 1px solid #e1e5ea; border-radius: 8px; }
.fa-modal-card .fa-acq-field { height: 28px; display: grid; grid-template-columns: 120px 284px; column-gap: 9px; align-items: center; }
.fa-modal-card .fa-acq-label { width: auto; font-size: 14px; font-weight: 500; color: #222; }
.fa-modal-card .fa-acq-label.is-required::after { content: '*'; margin-left: 5px; color: #ff2828; }
.fa-modal-card .fa-acq .fa-input, .fa-modal-card .fa-acq .fa-form-selectwrap { flex: none; width: 284px; max-width: none; height: 28px; border-radius: 4px; }
.fa-modal-card .fa-acq .fa-input input { height: 26px; padding: 0 12px; }
.fa-modal-card .fa-acq .fa-input--date { width: 128px; }
.fa-modal-card .fa-acq .fa-input__icon { width: 18px; height: 18px; margin-right: 10px; border: 0; }
.fa-modal-card .fa-input__icon .icon { fill: #888; }
.fa-modal-card .fa-acq .fa-input--date .fa-input__icon .icon { width: 16px; height: 16px; }
.fa-modal-card .fa-input.is-disabled { background: #f1f2f5; }
.fa-modal-card .fa-input.is-disabled input { color: #888; }
.fa-modal-card .fa-input.fa-input--plain { background: #fff; }
.fa-modal-card .fa-input.fa-input--plain input { color: #222; }
.fa-modal-card .fa-form-select { border-color: #e1e5ea; font-size: 14px; }
.fa-modal-card .fa-acq .fa-form-select { height: 28px; padding: 0 30px 0 12px; border-radius: 4px; }
.fa-modal-card .fa-form-selectwrap .icon { fill: #888; right: 10px; top: 50%; margin-top: -8px; }
.fa-modal-card .fa-qtypair { display: flex; gap: 10px; width: 284px; }
.fa-modal-card .fa-qtypair .fa-input { flex: none; width: 137px; }
.fa-modal-card .fa-qtypair input, .fa-modal-card .fa-calc-item input { text-align: right; }
.fa-codeauto { display: flex; align-items: center; gap: 8px; width: 284px; }
.fa-modal-card .fa-codeauto .fa-input { flex: 1; width: auto; }
.fa-codeauto .fa-autochk { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 500; color: #222; }
.fa-codeauto .fa-autochk input { width: 18px; height: 18px; margin: 0; accent-color: #003879; }
.fa-modal-card .fa-radio-inline { height: 28px; gap: 20px; }
.fa-modal-card .fa-radio-inline label { gap: 8px; font-weight: 500; }
.fa-modal-card .fa-radio-inline input[type="radio"] { appearance: none; -webkit-appearance: none; position: relative; width: 18px; height: 18px; margin: 0; padding: 0; border: 1px solid #ccc; border-radius: 50%; background: #fff; opacity: 1; }
.fa-modal-card .fa-radio-inline input[type="radio"]:checked { border-color: #003879; }
.fa-modal-card .fa-radio-inline input[type="radio"]:checked::before { content: ''; position: absolute; top: 50%; left: 50%; width: 12px; height: 12px; transform: translate(-50%, -50%); border-radius: 50%; background: #003879; }
.fa-modal-card .fa-radio-inline input[type="radio"]:disabled { background: #e4e4e4; }
.fa-modal-card .fa-status-pill { min-width: 0; height: 24px; padding: 0 12px; justify-self: start; border: 1px solid #376cfb; border-radius: 99px; color: #376cfb; font-size: 12px; font-weight: 500; }
.fa-modal-card .fa-status-pill.is-done { color: #444; border-color: #444; }

/* 탭(stg wj-tabpanel: 헤더 25 + 하단 3px 바) */
.fa-modal-card .fa-live-tabs { flex: none; display: flex; align-items: flex-start; height: 40px; margin: 9px 0 0; border: 0; }
.fa-modal-card .fa-live-tab { position: relative; flex: 1 1 auto; height: 25px; padding: 0 20px; background: none; font-size: 14px; font-weight: 600; line-height: 23px; color: #a8afb8; }
.fa-modal-card .fa-live-tab::before { content: ''; position: absolute; left: 0; right: 0; bottom: -3px; height: 3px; background: #a8afb8; }
.fa-modal-card .fa-live-tab:first-child::before { border-radius: 3px 0 0 3px; }
.fa-modal-card .fa-live-tab:last-child::before { border-radius: 0 3px 3px 0; }
.fa-modal-card .fa-live-tab.is-active { color: #003879; font-weight: 700; }
.fa-modal-card .fa-live-tab.is-active::after { content: ''; position: absolute; left: 0; right: 0; bottom: -3px; height: 3px; background: #003879; border-radius: 3px; z-index: 1; }
.fa-modal-card .fa-live-pane { flex: 1; min-height: 0; margin-top: -8px; overflow: hidden; }
.fa-modal-card .fa-tab-pane { position: relative; height: 100%; display: flex; flex-direction: column; gap: 8px; padding: 0; overflow-y: auto; }

/* 상각비계산 탭: th(120) + 라벨(200)/입력 2열 */
.fa-calc-tbl { flex: none; border: 1px solid #e1e5ea; border-radius: 8px; overflow: hidden; }
.fa-calc-tbl table { width: 100%; table-layout: fixed; border-collapse: separate; border-spacing: 0; color: #444; }
.fa-calc-tbl th { width: 120px; padding: 7px 12px; border-right: 1px solid #e1e5ea; border-bottom: 1px solid #e1e5ea; background: #f1f2f5; font-size: 14px; font-weight: 700; color: #444; text-align: center; vertical-align: middle; }
.fa-calc-tbl td { height: 40px; padding: 4px 12px 3px; border-bottom: 1px solid #e1e5ea; background: #fff; vertical-align: middle; }
.fa-calc-tbl tr:last-child th, .fa-calc-tbl tr:last-child td { border-bottom: 0; }
.fa-calc-tbl tr:last-child td { padding-bottom: 4px; }
.fa-calc-grp { display: grid; grid-template-columns: 1fr 1fr; column-gap: 24px; align-items: start; }
.fa-calc-item { display: flex; align-items: flex-start; min-height: 32px; }
.fa-calc-label { flex: none; width: 200px; padding: 6px 8px 5px 0; font-size: 14px; font-weight: 600; line-height: 16px; color: #444; }
.fa-calc-label.is-80 { width: 80px; }
.fa-calc-item .fa-input { flex: 1; height: 32px; }
.fa-calc-life { display: flex; align-items: flex-start; gap: 16px; }
.fa-calc-flex { display: flex; align-items: flex-start; gap: 8px; }
.fa-calc-flex .fa-input { flex: none; width: 100px; height: 32px; }
.fa-calc-exp { display: flex; align-items: center; gap: 4px; height: 32px; font-size: 14px; font-weight: 500; color: #ff2828; }
.fa-calc-exp.is-hidden { visibility: hidden; }
.fa-calc-item .fa-input--search .fa-input__icon { width: 18px; height: 18px; margin-right: 10px; }
.fa-modal-card .fa-recalc { position: absolute; right: 12px; bottom: 60px; width: 82px; height: 32px; min-width: 0; padding: 0 8px; border: 1px solid #e1e5ea; border-radius: 6px; background: #fff; color: #888; font-size: 14px; font-weight: 500; }
.fa-modal-card .fa-recalc .icon { width: 20px; height: 20px; }

/* 변동내역 탭 */
.fa-modal-card .fa-live-changebar { flex: none; height: 32px; margin: 0; }
.fa-modal-card .fa-live-smallbtn { width: 80px; min-width: 80px; padding: 0 8px; gap: 4px; font-size: 14px; }
.fa-modal-card .fa-live-smallbtn .icon { width: 20px; height: 20px; }
.fa-modal-card .fa-live-smallbtn--add { color: #376cfb; }
.fa-modal-card .fa-live-smallbtn:disabled { opacity: .6; background: #fff; }
.fa-modal-card .fa-live-smallbtn--del:disabled { color: #ff2828; }
.fa-modal-card .fa-live-gridbox { flex: 1; height: auto; min-height: 0; border: 1px solid #e1e5ea; border-radius: 8px; }
.fa-modal-card .fa-live-changegrid th { border-color: #e4e4e4; border-top: 0; }
.fa-modal-card .fa-live-changegrid td { border-color: #e4e4e4; }
.fa-modal-card .fa-live-changegrid th:first-child, .fa-modal-card .fa-live-changegrid td:first-child { border-left: 0; }
.fa-modal-card .fa-live-changegrid th:last-child, .fa-modal-card .fa-live-changegrid td:last-child { border-right: 0; }
.fa-modal-card .fa-live-empty td { height: 100%; }
.fa-modal-card .fa-live-grid__chk { text-align: center; vertical-align: middle; }
.fa-modal-card .fa-live-grid__chk input[type="checkbox"] { display: block; margin: 0 auto; }
.fa-live-changegrid td.is-center { text-align: center; }
.fa-live-changegrid td.is-right { text-align: right; }

/* 추가정보 탭 */
.fa-modal-card .fa-tab-pane--extra { padding: 0; }
.fa-modal-card .fa-extra-grid { display: grid; grid-template-columns: 1fr 1fr; column-gap: 24px; row-gap: 12px; align-items: start; padding: 12px 20px; border: 1px solid #e1e5ea; border-radius: 8px; }
.fa-modal-card .fa-extra-grid .fa-form-field { min-height: 32px; align-items: flex-start; gap: 0; }
.fa-modal-card .fa-extra-grid .fa-form-label { width: 120px; min-width: 120px; padding: 6px 8px 5px 0; font-size: 14px; font-weight: 600; line-height: 16px; color: #222; }
.fa-modal-card .fa-extra-grid .fa-input, .fa-modal-card .fa-extra-grid .fa-form-selectwrap { height: 32px; border-radius: 6px; }
.fa-modal-card .fa-extra-grid .fa-form-selectwrap { height: 34px; }
.fa-modal-card .fa-extra-grid .fa-form-select { height: 34px; border-radius: 6px; padding-left: 12px; }
.fa-modal-card .fa-extra-grid .fa-input--textarea { height: 58px; }
.fa-modal-card .fa-extra-grid .fa-input textarea { height: 56px; padding-top: 8px; }
.fa-modal-card .fa-extra-grid .fa-form-field--full .fa-input { max-width: none; }
.fa-modal-card .fa-extra-grid .fa-input__icon { width: 18px; height: 18px; margin-right: 10px; }

/* 82 매입세금계산서: 상세 셀이 좁은 칸에서 잘리지 않게 */
.stx-jrnl td:has(> .faui-detail), .ps-jtab td:has(> .faui-detail) { overflow: visible; text-overflow: clip; }
.stx-jrnl td.is-center .faui-detail, .ps-jtab td.is-center .faui-detail { vertical-align: middle; }

/* ---------- 처리 방법 선택 — 매각/폐기 모드 (stg st01110p31: 702) ---------- */
.faui-dispchoice__date { display: flex; align-items: center; margin-bottom: 4px; }
.faui-dispchoice__date label { flex: none; width: 108px; font-size: 14px; font-weight: 600; color: #222; }
.faui-date { position: relative; display: inline-flex; align-items: center; width: 128px; }
.faui-date .faui-inp { width: 100%; padding-right: 32px; }
.faui-date__btn { position: absolute; right: 8px; top: 50%; width: 18px; height: 18px; margin-top: -9px; padding: 0; border: 0; background: none; cursor: pointer; }
.faui-date__btn .icon { width: 16px; height: 16px; fill: #888; }
.faui-modal--dispchoice .faui-reasons { margin-top: 12px; }

/* ---------- 매각/폐기 계정설정 (stg bs06110p7: 502) ---------- */
.faui-modal--dispacct .faui-form__row { align-items: center; }
.faui-inpwrap { position: relative; display: flex; width: 316px; }
.faui-form__row .faui-inpwrap .faui-inp { flex: 1; width: auto; padding-right: 36px; }
.faui-inp__srch { position: absolute; right: 8px; top: 7px; width: 18px; height: 18px; padding: 0; border: 0; background: none; cursor: pointer; }
.faui-inp__srch .icon { width: 18px; height: 18px; fill: #888; }

/* ---------- 고정자산 매각/폐기 (stg bs06110p6 스크린샷 실측: 약 1800x768) ---------- */
.faui-modal.fadp-modal { height: 768px; }
.fadp-modal .modal__body { display: flex; flex-direction: column; overflow: hidden; padding: 16px 32px 8px; }
.fadp { display: flex; flex-direction: column; gap: 16px; flex: 1; min-height: 0; }
.fadp-sec { display: flex; flex-direction: column; gap: 8px; flex: none; }
.fadp-sec--journal { flex: 1; min-height: 0; }
.fadp-sec__head { display: flex; align-items: center; gap: 12px; height: 32px; }
.fadp-sec__title { margin: 0; font-size: 16px; font-weight: 700; color: #222; }
.fadp-datelab { font-size: 14px; color: #222; }
.fadp-sec__head .fadp-date { flex: none; width: 128px; height: 32px; background: #fff; }
.fadp-grid { border: 1px solid #e1e5ea; border-radius: 8px; overflow-x: auto; overflow-y: hidden; }
.fadp-table { width: 100%; min-width: 1700px; border-collapse: collapse; table-layout: fixed; }
.fadp-table th { height: 30px; padding: 0 8px; background: #f1f2f5; border: 1px solid #e4e4e4; border-top: 0; font-size: 14px; font-weight: 700; color: #444; text-align: center; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fadp-table th.is-required::after { content: '*'; margin-left: 2px; color: #ff2828; }
.fadp-table td { height: 30px; padding: 0 10px; border: 1px solid #e4e4e4; font-size: 14px; color: #222; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fadp-table th:first-child, .fadp-table td:first-child { border-left: 0; }
.fadp-table th:last-child, .fadp-table td:last-child { border-right: 0; }
.fadp-table td.is-center { text-align: center; }
.fadp-table td.is-right { text-align: right; }
.fadp-table td.is-off { background: #e9ebef; }
.fadp-assets tbody td[data-fadp="code"] { color: #376cfb; }
.fadp-table td.fadp-qty { padding: 0; background: #e8f4fd; }
.fadp-qtyin, .fadp-in { width: 100%; height: 28px; padding: 0 10px; border: 0; background: transparent; font-size: 14px; color: #222; }
.fadp-qtyin, .fadp-in.is-right { text-align: right; }
.fadp-in:disabled { color: #888; }
.fadp-sum td, .fadp-jfoot td { font-weight: 700; background: #f7f8fa; }
.fadp-info td { padding: 0 4px; }
.fadp-sel { width: 100%; height: 28px; padding: 0 24px 0 10px; border: 0; background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='M3 6l5 5 5-5' fill='none' stroke='%23999' stroke-width='1.2'/%3E%3C/svg%3E") right 6px center / 14px no-repeat; appearance: none; -webkit-appearance: none; font-size: 14px; color: #222; }
.fadp-sel:disabled { color: #222; opacity: 1; }
.fadp-srch { display: flex; align-items: center; gap: 4px; }
.fadp-srch .fadp-in { flex: 1; min-width: 0; }
.fadp-srch__btn { flex: none; width: 28px; height: 22px; padding: 0; border: 1px solid #e1e5ea; border-radius: 4px; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Ccircle cx='7' cy='7' r='5' fill='none' stroke='%23666' stroke-width='1.3'/%3E%3Cpath d='M11 11l3.5 3.5M5 7h4M7 5v4' fill='none' stroke='%23666' stroke-width='1.3' stroke-linecap='round'/%3E%3C/svg%3E") center / 16px no-repeat; cursor: pointer; }
.fadp-srch__btn .icon { display: none; }
.fadp-jbtns { margin-left: auto; display: flex; gap: 8px; }
.fadp-btn { display: inline-flex; align-items: center; justify-content: center; gap: 4px; height: 32px; padding: 0 8px; border: 1px solid #e1e5ea; border-radius: 6px; background: #fff; font-size: 14px; font-weight: 500; cursor: pointer; }
.fadp-btn .icon { width: 20px; height: 20px; fill: currentColor; }
.fadp-gen { color: #376cfb; border-color: #bdd0fe; }
.fadp-add { width: 80px; color: #376cfb; }
.fadp-del { width: 80px; color: #ff2828; }
.fadp-btn:disabled { opacity: .5; cursor: default; }
.fadp-jbox { display: flex; flex-direction: column; flex: 1; min-height: 0; border: 1px solid #e1e5ea; border-radius: 8px; overflow: hidden; }
.fadp-jscroll { flex: 1; min-height: 0; overflow: auto; }
.fadp-jscroll thead th { position: sticky; top: 0; z-index: 1; }
.fadp-jfoot { flex: none; border-top: 1px solid #e4e4e4; overflow: hidden; }
.fadp-jfoot td { border-top: 0; border-bottom: 0; }
.fadp-table .fadp-chk { padding: 0; text-align: center; }
.fadp-table .fadp-chk input[type="checkbox"] { width: 18px; height: 18px; margin: 0; vertical-align: middle; accent-color: var(--c-brand); }
.fadp-journal td .fadp-in { padding-left: 0; padding-right: 0; text-overflow: ellipsis; }     /* 칸 여백 10px 만 쓴다 — 수정 가능 줄과 잠긴 줄의 글자 x 가 같다(stg) */
.fadp-journal td[data-fadp="gubun"] { padding: 0; }
.fadp-empty td { height: 200px; text-align: center; color: #888; border: 0; }
.fadp-modal .modal__foot .btn:disabled { background: #e1e5ea !important; border-color: #e1e5ea !important; color: #888 !important; cursor: default; }

/* ---------- 수정 팝업: 전체양도/폐기일자 = 구분 콤보 + 날짜 (stg 2단계 s-f47-chg3, 합 284px = 다른 필드 폭) ---------- */
.fa-modal-card .fa-disppair { display: flex; gap: 10px; width: 284px; }
.fa-modal-card .fa-acq .fa-disppair .fa-form-selectwrap { width: 146px; }
.fa-modal-card .fa-acq .fa-disppair .fa-input--date { width: 128px; }
.fa-modal-card .fa-acq .fa-disppair.is-none .fa-input--date { display: none; }
.fa-modal-card .fa-acq .fa-disppair.is-none .fa-form-selectwrap { width: 284px; }
.fa-modal-card .fa-acq .fa-disppair .fa-form-select:disabled { opacity: 1; }     /* 전체양도/폐기 콤보: 비활성 표시 전용이지만 stg 처럼 진한 글자 */

/* ---------- 일반(대체)전표: 처분 전표 줄의 상세 셀 (체크박스 칸과 같은 ellipsis 예외) ---------- */
.gv-grid td:has(> .faui-detail) { overflow: visible; text-overflow: clip; }
.gv-grid td .faui-detail { vertical-align: middle; }

/* 길라잡이 제목의 \n 줄바꿈 허용(시나리오 B 제목) */
.gt-tip__title { white-space: pre-line; }
