/* =========================================================
   modal.css - 모달 골격 / 풀블리드 푸터 / 로딩 오버레이 (DESIGN.md 9.7)
   ========================================================= */

/* 주문내역 보기 모달 */
.pr-modal { position: fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,.5); z-index:10000; display:none; }
.pr-modal.active { display:block; }
.pr-modal-box { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:90%; max-width:1000px; max-height:88vh; background:var(--surface); border-radius:var(--r-modal); box-shadow:var(--shadow-modal); display:flex; flex-direction:column; overflow:hidden; }
.pr-modal-head { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; padding:22px 26px 18px; border-bottom:1px solid var(--line-soft); background:var(--surface); }
.pr-modal-heading { flex:1; min-width:0; }
.pr-modal-head h3 { margin:0; font-size:19px; font-weight:700; color:var(--ink); letter-spacing:-.01em; }
.pr-modal-close { width:34px; height:34px; flex:none; display:flex; align-items:center; justify-content:center; border:none; background:transparent; border-radius:var(--r-ctl); font-size:22px; line-height:1; color:var(--muted); cursor:pointer; transition:background-color .13s, color .13s; }
.pr-modal-close:hover { background:var(--track); color:var(--ink); }
.pr-modal-body { padding:24px 26px; overflow-y:auto; flex:1 1 auto; min-height:0; } /* flex 자식이 내용만큼 늘어나 푸터를 상자 밖으로 밀어내지 않게 (2026-09-11) */
.pr-modal-empty { text-align:center; color:var(--faint2); padding:60px 20px; }

.pr-modal-box button { margin: 0px; }

/* --- 푸터(액션) --- */
/* 액션 푸터 — 바디 안에 있으나 음수 마진으로 풀블리드(하단 바) 룩 */
.m-actions { display:flex; justify-content:flex-end; gap:9px; margin:24px -26px -24px; padding:16px 26px; border-top:1px solid var(--line-soft); background:var(--surface-2); }
.m-actions.has-urgent { justify-content:space-between; align-items:center; }
.m-actions-btns { display:flex; gap:9px; }

/* --- 처리 중 오버레이 --- */

.pr-loading { position: fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,.5); z-index:9999; display:none; }
.pr-loading.active { display:block; }
.pr-loading .msg { position:absolute; top:48%; left:0; width:100%; text-align:center; color:#fff; font-size:18px; }

