/* 상단 헤더 */
.estimate-order-detail .estimate-topbar { background: #8faac5; padding: 18px 22px; color: #fff; font-size: 18px; font-weight: 600; display: flex; justify-content: space-between; align-items: center; border-radius: 4px 4px 0 0; margin-bottom: 20px; }
.estimate-order-detail .estimate-topbar h1 { margin: 0; font-size: 18px; font-weight: 600; }
.estimate-order-detail .estimate-close { background: transparent; border: none; color: #fff; font-size: 22px; cursor: pointer; line-height: 1; padding: 0; }
.estimate-order-detail .estimate-close:hover { opacity: 0.8; }
/* 전체 레이아웃 컨테이너 */
.estimate-order-detail .estimate-container { max-width: 1200px; margin: 0 auto; padding: 20px 24px 60px; background:#fff; }
/* 공통 섹션 */
.estimate-order-detail .est-section { padding: 20px 0; border-bottom: 1px solid #e5e5e5; }
.estimate-order-detail .section-header { font-size: 15px; font-weight: 600; margin-bottom: 12px; color: #333; }
/* 기본 테이블 스타일 */
.estimate-order-detail .est-table { width: 100%; border-collapse: collapse; background: #fff; }
.estimate-order-detail .est-table th,
.estimate-order-detail .est-table td { border: 1px solid #e5e5e5; padding: 10px 12px; font-size: 13px; }
.estimate-order-detail .est-table th { width: 140px; background: #fafafa; font-weight: 500; color: #444; text-align: left; }
.estimate-order-detail .est-table td { color: #222; }
/* 옵션 테이블 */
.estimate-order-detail .option-table th,
.estimate-order-detail .option-table td { font-size: 13px; vertical-align: middle; }
.estimate-order-detail .textarea-row th { vertical-align: top; }
.estimate-order-detail .textarea-box { min-height: 70px; padding: 8px 10px; background: #fafafa; border: 1px solid #e5e5e5; border-radius: 4px; white-space: pre-wrap; color: #333; }
/* 결제/원가 테이블 */
.estimate-order-detail .price-table thead th { background: #f2f4f7; font-weight: 600; font-size: 13px; text-align: center; }
.estimate-order-detail .price-table th { background: #fafafa; font-weight: 500; width: 140px; }
.estimate-order-detail .price-table td { font-size: 13px; }
/* 거래처/배송 */
.estimate-order-detail .client-table { table-layout: fixed; width: 100%; }
.estimate-order-detail .client-table th { width: 130px; background: #fafafa; }
.estimate-order-detail .client-table td { word-break: break-all; vertical-align: top; }
.estimate-order-detail .order-detail-textarea#rcvAddr2 { border: 1px solid #ccc; padding: 8px; box-sizing: border-box; }
/* 진행현황 */
.estimate-order-detail .progress-table th,
.estimate-order-detail .progress-table td { text-align: center; font-size: 13px; }
.estimate-order-detail .progress-link { background: none; border: none; padding: 0; margin: 0; cursor: pointer; font-size: 13px; text-decoration: underline; color: inherit; }
/* 하단 버튼 */
.estimate-order-detail .est-footer { margin-top: 30px; text-align: right; }
.estimate-order-detail .est-footer-btns button { min-width: 90px; padding: 8px 14px; font-size: 13px; border-radius: 4px; cursor: pointer; }
.estimate-order-detail .btn-primary { border: 1px solid #2f54eb; background: #2f54eb; color: #fff; margin-right: 6px; }
.estimate-order-detail .btn-primary:hover { background:#2344b8; border-color:#2344b8; }
.estimate-order-detail .btn-line { border: 1px solid #d9d9d9; background: #fff; color: #333; }
.estimate-order-detail .btn-line:hover { background: #f3f3f3; }
/* 인풋 요소 꾸미기 */
.estimate-order-detail #rcv_addr2 { margin-top: 6px; }
.estimate-order-detail .order-detail-textarea { border: 1px solid #ccc; resize: none; max-width: 300px; height: 60px; width: 100%; }
.estimate-order-detail #edit_memo.order-detail-textarea { width: 100%; max-width: 100%; }
/* 상태 모달 */
.estimate-order-detail .sts-modal { position: fixed; inset: 0; display: none; align-items: center; justify-content: center; z-index: 1000; }
.estimate-order-detail .sts-modal.is-open { display: flex; }
.estimate-order-detail .sts-modal-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,0.4); }
.estimate-order-detail .sts-modal-dialog { position: relative; background: #fff; border-radius: 4px; width: 500px; max-width: calc(100% - 40px); max-height: calc(100% - 40px); display: flex; flex-direction: column; box-shadow: 0 8px 24px rgba(0,0,0,0.15); }
.estimate-order-detail .sts-modal-header { padding: 12px 16px; border-bottom: 1px solid #e5e5e5; display: flex; align-items: center; justify-content: space-between; }
.estimate-order-detail .sts-modal-title { margin: 0; font-size: 15px; font-weight: 600; }
.estimate-order-detail .sts-modal-close { border: none; background: transparent; font-size: 18px; cursor: pointer; line-height: 1; }
.estimate-order-detail .sts-modal-body { padding: 16px; overflow: auto; }
.estimate-order-detail .sts-modal-footer { padding: 10px 16px; border-top: 1px solid #e5e5e5; text-align: right; }
/**/
.estimate-order-detail .paydoc-table th { font-size: 13px; }
.estimate-order-detail .paydoc-table td { font-size: 13px; }
.estimate-order-detail .paydoc-table th[rowspan] { text-align: center; background:#f5f5f5; }
.estimate-order-detail .process-wrap { display:flex; align-items:center; gap:6px; }
.estimate-order-detail .process-stand-label { font-size:12px; color:#4b5563; }
.estimate-order-detail .process-roll-label { font-size:12px; color:#2563eb; }

.estimate-order-detail select,
.estimate-order-detail input { border: 1px solid #ccc; padding-right: 4px; }