/* DX Report — report.css v1.0.0 */
*,*::before,*::after{box-sizing:border-box}

/* ── 모달 전체 ── */
#dxrp-modal{
  display:none;position:fixed;
  top:0;right:0;bottom:0;left:0;
  z-index:9500;
  -webkit-align-items:center;align-items:center;
  -webkit-justify-content:center;justify-content:center;
  padding:16px;
}
#dxrp-modal[aria-hidden="false"]{
  display:-webkit-flex;display:flex;
  animation:dxrp-fadein .2s ease;
}
#dxrp-backdrop{
  position:absolute;top:0;right:0;bottom:0;left:0;
  background:rgba(0,0,0,.55);
  -webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);
}

/* ── 다이얼로그 카드 ── */
#dxrp-dialog{
  position:relative;
  width:100%;max-width:440px;
  background:#fff;
  border-radius:16px;
  box-shadow:0 24px 60px rgba(0,0,0,.18),0 2px 8px rgba(0,0,0,.08);
  overflow:hidden;
  animation:dxrp-slideup .25s cubic-bezier(.34,1.56,.64,1);
}
#dxrp-dialog-head{
  display:-webkit-flex;display:flex;
  -webkit-align-items:center;align-items:center;
  gap:10px;
  padding:16px 20px 14px;
  border-bottom:1px solid #f1f5f9;
}
#dxrp-dialog-title{
  display:-webkit-flex;display:flex;
  -webkit-align-items:center;align-items:center;
  gap:8px;flex:1;
  font-size:15px;font-weight:700;color:#1e293b;
}
#dxrp-close{
  background:none;border:none;cursor:pointer;
  color:#94a3b8;padding:4px;border-radius:6px;
  display:-webkit-flex;display:flex;
  -webkit-align-items:center;align-items:center;
  transition:color .15s,background .15s;
}
#dxrp-close:hover{color:#ef4444;background:#fef2f2}
#dxrp-dialog-body{padding:20px}

/* ── Step ── */
.dxrp-step-desc{
  font-size:13px;color:#64748b;margin:0 0 14px;
}
.dxrp-notice{
  background:#fef9ec;border:1px solid #fde68a;border-radius:10px;
  padding:12px 16px;font-size:13px;color:#92400e;text-align:center;
}

/* ── 사유 목록 ── */
#dxrp-reasons{
  display:-webkit-flex;display:flex;
  -webkit-flex-direction:column;flex-direction:column;
  gap:6px;margin-bottom:14px;
}
.dxrp-reason-item{
  display:-webkit-flex;display:flex;
  -webkit-align-items:center;align-items:center;
  gap:10px;
  padding:10px 14px;
  border:1.5px solid #e2e8f0;
  border-radius:10px;
  cursor:pointer;
  transition:all .15s;
}
.dxrp-reason-item:hover{border-color:#fca5a5;background:#fef2f2}
.dxrp-reason-item input[type=radio]{
  -webkit-appearance:none;appearance:none;
  width:16px;height:16px;
  border:2px solid #cbd5e1;border-radius:50%;
  -webkit-flex-shrink:0;flex-shrink:0;
  transition:all .15s;cursor:pointer;
  position:relative;
}
.dxrp-reason-item input[type=radio]:checked{
  border-color:#ef4444;background:#ef4444;
}
.dxrp-reason-item input[type=radio]:checked::after{
  content:'';position:absolute;
  top:50%;left:50%;transform:translate(-50%,-50%);
  width:5px;height:5px;border-radius:50%;background:#fff;
}
.dxrp-reason-item:has(input:checked){
  border-color:#fca5a5;background:#fef2f2;
}
.dxrp-reason-label{font-size:13px;font-weight:500;color:#374151}

/* ── 직접 입력 ── */
#dxrp-custom-wrap{margin-bottom:12px}
#dxrp-custom-text{
  width:100%;border:1.5px solid #e2e8f0;border-radius:10px;
  padding:10px 12px;font-size:13px;color:#374151;
  font-family:inherit;resize:vertical;outline:none;
  transition:border-color .15s;
  min-height:80px;
}
#dxrp-custom-text:focus{border-color:#ef4444}
#dxrp-char-count{
  text-align:right;font-size:11px;color:#94a3b8;margin-top:4px;
}

/* ── 에러 ── */
.dxrp-err{
  font-size:12px;color:#ef4444;
  padding:6px 10px;background:#fef2f2;
  border-radius:7px;margin-bottom:10px;
}

/* ── 액션 버튼 ── */
.dxrp-actions{
  display:-webkit-flex;display:flex;
  gap:8px;margin-top:16px;
}
.dxrp-btn-cancel{
  -webkit-flex:1;flex:1;
  padding:11px;border-radius:10px;
  border:1.5px solid #e2e8f0;background:#fff;
  color:#64748b;font-size:14px;font-weight:600;
  cursor:pointer;font-family:inherit;transition:all .15s;
}
.dxrp-btn-cancel:hover{background:#f8fafc;border-color:#cbd5e1}
.dxrp-btn-submit{
  -webkit-flex:2;flex:2;
  padding:11px;border-radius:10px;
  border:none;background:#ef4444;
  color:#fff;font-size:14px;font-weight:700;
  cursor:pointer;font-family:inherit;transition:all .15s;
  box-shadow:0 2px 8px rgba(239,68,68,.3);
}
.dxrp-btn-submit:hover{background:#dc2626}
.dxrp-btn-submit:active{transform:scale(.98)}

/* ── 완료 화면 ── */
#dxrp-done-icon{font-size:48px;text-align:center;margin-bottom:12px}
#dxrp-done-msg{
  font-size:14px;color:#374151;text-align:center;
  line-height:1.7;margin-bottom:20px;
}

/* ── 로딩 ── */
#dxrp-loading{
  display:-webkit-flex;display:flex;
  -webkit-flex-direction:column;flex-direction:column;
  -webkit-align-items:center;align-items:center;
  gap:12px;padding:32px;
}
#dxrp-loading p{font-size:13px;color:#64748b;margin:0}
.dxrp-spinner{
  width:32px;height:32px;
  border:3px solid #fee2e2;
  border-top-color:#ef4444;
  border-radius:50%;
  animation:dxrp-spin .7s linear infinite;
}

/* ── 신고 버튼 wrap ── */
.dxrp-btn-wrap{text-align:center;padding:16px 0 4px}

/* ── 키프레임 ── */
@keyframes dxrp-fadein  {from{opacity:0}to{opacity:1}}
@keyframes dxrp-slideup {from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes dxrp-spin    {to{transform:rotate(360deg)}}

/* ── 반응형 ── */
@media(max-width:480px){
  #dxrp-dialog{border-radius:14px}
  #dxrp-dialog-head{padding:14px 16px 12px}
  #dxrp-dialog-body{padding:16px}
  .dxrp-reason-item{padding:9px 12px}
}
