/* extracted-features.css
   features-ext.js 인라인 style 추출 — 정적 패턴만 (동적 보간은 보류).
   prefix: u-fx-
   ※ style.css 의 u-* 와 충돌하지 않는 별도 네임스페이스. */

/* 공통 빈/없음 셀 — text-align:center;padding:20px;color:var(--txt3) (23회) */
.u-fx-empty-cell{text-align:center;padding:20px;color:var(--txt3)}
/* 공통 빈 영역 — text-align:center;padding:40px;color:var(--txt3) (7회) */
.u-fx-empty-area{text-align:center;padding:40px;color:var(--txt3)}

/* font-weight / 정렬 */
.u-fx-fw700{font-weight:700}
.u-fx-fw600{font-weight:600}
.u-fx-fw700-15{font-weight:700;font-size:15px;margin-bottom:12px}
.u-fx-fw600-13{font-weight:600;font-size:13px}
.u-fx-ta-r{text-align:right}
.u-fx-ta-c{text-align:center}
.u-fx-ta-r-700{text-align:right;font-weight:700}
.u-fx-ta-r-600{text-align:right;font-weight:600}
.u-fx-ta-r-c166534{text-align:right;color:#166534}
.u-fx-ta-r-c991B1B{text-align:right;color:#991B1B}

/* width */
.u-fx-w50{width:50px}
.u-fx-w70{width:70px}
.u-fx-w80{width:80px}
.u-fx-w90{width:90px}
.u-fx-w100{width:100px}
.u-fx-w120{width:120px}
.u-fx-w400{width:400px}
.u-fx-w420{width:420px}

/* 인풋 — 70x4 / 80x4 (실사·안전재고) */
.u-fx-inp-70{width:70px;padding:4px;border:1px solid var(--bdr);border-radius:4px}
.u-fx-inp-80{width:80px;padding:4px;border:1px solid var(--bdr);border-radius:4px}
/* 풀폭 인풋 (코드 편집 모달) */
.u-fx-inp-w100{width:100%;padding:8px;border:1px solid var(--bdr);border-radius:6px}
.u-fx-inp-readonly{background:var(--bg2)}
.u-fx-inp-select{padding:8px;border:1px solid var(--bdr);border-radius:6px}
.u-fx-inp-pill{padding:6px 10px;border:1px solid var(--bdr);border-radius:6px}
/* shift select (font-size:11px;padding:2px) */
.u-fx-inp-shift{font-size:11px;padding:2px;border:1px solid var(--bdr);border-radius:4px}

/* padding */
.u-fx-p-12{padding:12px}
.u-fx-p-16{padding:16px}
.u-fx-p-1-4{padding:1px 4px}
.u-fx-p-2-6{padding:2px 6px;font-size:10px}
.u-fx-p-2-8{padding:2px 8px;font-size:11px}
.u-fx-card-12-mb8{padding:12px;margin-bottom:8px}
.u-fx-modal-body{padding:16px;display:flex;flex-direction:column;gap:12px}
.u-fx-modal-body-10{padding:16px;display:flex;flex-direction:column;gap:10px}
.u-fx-flex-gap12{display:flex;gap:12px}
.u-fx-flex-1{flex:1}

/* 라벨 — 코드 편집 라벨 (font-size:12px;font-weight:600;margin-bottom:4px;display:block) */
.u-fx-lbl-12{font-size:12px;font-weight:600;margin-bottom:4px;display:block}

/* 인쇄 모달용 (메인 DOM 부분) */
.u-fx-print-modal-card{background:#fff;width:90vw;height:90vh;border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.u-fx-print-modal-hd{padding:10px 16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ddd}
.u-fx-print-btn{padding:8px 20px;background:#1E3A5F;color:#fff;border:none;border-radius:8px;font-weight:700;cursor:pointer}
.u-fx-print-btn-close{padding:8px 16px;background:#E2E8F0;border:none;border-radius:8px;cursor:pointer}
.u-fx-print-iframe{flex:1;border:none}
.u-fx-print-btn-group{display:flex;gap:8px}

/* 알림 배지 (납기 카드 상단) */
.u-fx-alert-orange{padding:8px 12px;border-radius:10px;background:#FFF7ED;border:1px solid #FED7AA;color:#C2410C;font-size:12px;font-weight:700}
.u-fx-alert-red{padding:8px 12px;border-radius:10px;background:#FEF2F2;border:1px solid #FECACA;color:#B91C1C;font-size:12px;font-weight:700}
.u-fx-alert-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}

/* OEE 카드 */
.u-fx-oee-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.u-fx-oee-label{font-size:11px;text-align:center;color:var(--txt3);margin-bottom:12px}
.u-fx-oee-row{display:flex;gap:8px;font-size:12px}
.u-fx-oee-col{flex:1;text-align:center}
.u-fx-oee-blue{font-size:16px;font-weight:700;color:#1E3A5F}
.u-fx-oee-purple{font-size:16px;font-weight:700;color:#7B61FF}
.u-fx-oee-green{font-size:16px;font-weight:700;color:#10B981}

/* 코드관리 카테고리 항목 */
/* 카테고리 항목 베이스 (선택여부에 따른 색은 인라인 유지) */
.u-fx-cat-row{padding:10px 12px;border-radius:8px;cursor:pointer;margin-bottom:4px;display:flex;justify-content:space-between;align-items:center}
/* 카운트 배지 베이스 (선택여부에 따른 배경은 인라인 유지) */
.u-fx-cat-cnt{font-size:11px;padding:2px 6px;border-radius:10px}
.u-fx-cat-meta{display:flex;align-items:center;gap:6px}
.u-fx-cat-name{font-weight:600;font-size:13px}
.u-fx-cat-id{font-size:11px;opacity:0.7}
.u-fx-cat-sys{font-size:10px;padding:1px 5px;border-radius:4px;background:#F59E0B;color:#fff}

/* 코드관리 코드 row */
.u-fx-code-mono{font-family:monospace;font-weight:600}
.u-fx-code-val{font-size:12px;color:var(--txt3)}
.u-fx-code-default{color:#10B981;font-weight:700}
.u-fx-code-toolbar{margin-top:12px;display:flex;gap:8px}

/* 감사로그 */
.u-fx-audit-ts{font-size:11px}
.u-fx-audit-detail{font-size:11px;max-width:300px;overflow:hidden;text-overflow:ellipsis}

/* 문서 흐름 뷰 */
.u-fx-flow-meta{font-size:12px;color:var(--txt3);margin-bottom:8px}
.u-fx-flow-row{display:flex;align-items:center;gap:4px;padding:10px 12px;background:var(--bg2);border-radius:8px;margin-bottom:6px;overflow-x:auto}
.u-fx-flow-arrow{color:var(--txt4);font-size:16px}
.u-fx-flow-subno{font-size:10px;opacity:0.8}
.u-fx-flow-node{padding:6px 12px;color:#fff;border-radius:6px;font-size:12px;white-space:nowrap;cursor:pointer}

/* 코드 미리보기 색상 스와치 (배경색은 동적) */
.u-fx-color-swatch{display:inline-block;width:20px;height:20px;border-radius:4px;vertical-align:middle}
.u-fx-c-txt4{color:var(--txt4)}

/* 품목 수불장 */
.u-fx-ledger-bar{display:flex;gap:8px;margin-bottom:12px;align-items:center}
.u-fx-ledger-ref{font-size:12px}

/* 거래명세서 양식2 — _tradeFormat2 는 print iframe 컨텍스트라 본 파일이 적용되지 않음 → 변환 대상 아님 */

/* 견적/거래 안내 메시지 */
.u-fx-quote-msg{margin-top:30px;font-size:12px;color:#666;text-align:center}

/* 단가이력 카드 */
.u-fx-price-hd{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.u-fx-price-table{font-size:12px}

/* 권한관리 표 */
.u-fx-perm-wrap{overflow-x:auto}
.u-fx-perm-table{font-size:11px}
.u-fx-perm-th{writing-mode:vertical-rl;text-orientation:mixed;padding:4px 2px;font-size:10px}
.u-fx-perm-cell{text-align:center}

/* 헤더 — viewAuditDetail */
.u-fx-audit-title{margin:12px 0}

/* ================================================================
   동적 인라인 style 정리 (CSP 대비) — CSS variable 기반
   ================================================================ */

/* 프로그레스바 너비 — width:N% */
.u-fx-prog-w{width:var(--w,0)}

/* 강조 텍스트 — color:X;font-weight:700 (D-day, 차이값, 부족량 등) */
.u-fx-c-fw700{color:var(--c);font-weight:700}

/* 안전재고 "정상" — color:#10B981 (font-weight 없음) */
.u-fx-safety-ok{color:var(--c)}

/* 외주 D-day 셀 (font-size:11px 동반) */
.u-fx-os-dd{font-size:11px;color:var(--c);font-weight:700}

/* 외주 비고 작은 메모 (정적 color) */
.u-fx-os-note{font-size:11px;color:#64748B}

/* OEE 큰 숫자 */
.u-fx-oee-big{text-align:center;font-size:32px;font-weight:800;color:var(--c);margin:8px 0}

/* 단가이력 변동률 */
.u-fx-price-chg{font-size:13px;color:var(--c);font-weight:600}

/* 코드관리 카테고리 row — 선택/미선택 배경·텍스트 색 */
.u-fx-cat-row-sel{background:var(--pri);color:#fff}
.u-fx-cat-row-uns{background:var(--bg2);color:var(--txt)}
.u-fx-cat-cnt-sel{background:rgba(255,255,255,0.2)}
.u-fx-cat-cnt-uns{background:var(--bg3)}

/* 코드 색상 스와치 동적 배경 */
.u-fx-swatch-dyn{background:var(--bg)}

/* 비활성 row 흐림 */
.u-fx-row-inactive{opacity:0.4}

/* 문서 흐름 노드 동적 배경 */
.u-fx-flow-node-dyn{background:var(--bg)}
