/* 요청 전용 화면: 직원 메신저와 OS 할 일에서 동일한 요청을 연다. */
.mr-back { box-sizing:border-box; position:fixed; inset:0; z-index:10000; background:rgb(15 23 42 / .45); display:flex; align-items:center; justify-content:center; padding:16px; }
.mr-panel { background:#fff; color:#0f172a; width:min(720px,100%); min-width:0; max-height:100%; display:flex; flex-direction:column; border-radius:16px; box-shadow:0 20px 60px rgb(15 23 42 / .2); font-size:var(--fs-body,15px); }
.mr-head { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:16px 20px; border-bottom:1px solid #e2e8f0; flex-shrink:0; }
.mr-head h2 { margin:0; font-size:var(--fs-title,18px); font-weight:700; }
.mr-body { padding:18px 20px; overflow:auto; overscroll-behavior:contain; min-height:0; }
.mr-form,.mr-field { display:flex; flex-direction:column; gap:8px; }
.mr-form { gap:16px; }
.mr-field>span { font-weight:600; }
.mr-panel input,.mr-panel select,.mr-panel textarea { width:100%; box-sizing:border-box; border:1px solid #cbd5e1; border-radius:8px; padding:10px 12px; font:inherit; font-size:16px; background:#fff; color:inherit; }
.mr-panel textarea { resize:vertical; min-height:64px; }
.mr-panel button { min-height:44px; }
.mr-panel button:disabled { opacity:.55; cursor:wait; }
.mr-tabs,.mr-row,.mr-actions,.mr-footer { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.mr-tabs [aria-pressed=true] { color:#5b21b6; border-color:#8b5cf6; background:#f5f3ff; }
.mr-muted { color:#64748b; font-size:var(--fs-meta,13px); margin:8px 0; overflow-wrap:anywhere; }
.mr-error { color:#b91c1c; white-space:pre-wrap; font-size:var(--fs-meta,13px); margin:8px 0; }
.mr-error:empty { display:none; }
.mr-rows { display:flex; flex-direction:column; gap:12px; }
.mr-card { border:1px solid #e2e8f0; border-radius:12px; padding:16px; display:flex; flex-direction:column; align-items:flex-start; gap:8px; }
.mr-card h3 { font-size:var(--fs-body,15px); font-weight:700; white-space:pre-wrap; overflow-wrap:anywhere; margin:0; }
.mr-card p { margin:0; }
.mr-card.is-overdue { border-color:#fca5a5; }
.mr-kind { border-radius:999px; background:#f5f3ff; color:#6d28d9; padding:3px 9px; font-size:var(--fs-meta,13px); }
.mr-card details { width:100%; font-size:var(--fs-meta,13px); }
.mr-card summary { cursor:pointer; padding:8px 0; color:#475569; }
.mr-history { white-space:pre-wrap; overflow-wrap:anywhere; padding:8px 0; border-top:1px solid #f1f5f9; }
.mr-footer { margin-top:16px; }
@media(max-width:640px) { .mr-back { padding:8px; align-items:stretch; } .mr-panel { border-radius:12px; } .mr-head,.mr-body { padding:14px; } .mr-actions { width:100%; } .mr-actions button { flex:1 1 auto; } }
