.member-report-dialog { width: min(440px, calc(100% - 24px)); max-height: calc(100dvh - 32px); padding: 26px 20px 20px; overflow-y: auto; border: 1px solid var(--line); border-radius: 24px; background: #fff; color: var(--ink); box-shadow: 0 24px 80px #29001955; }
.member-report-dialog::backdrop { background: #18001199; }
.member-report-dialog .sheet-close { position: absolute; right: 14px; top: 12px; min-width: 44px; min-height: 44px; }
.report-eyebrow { display: block; margin: 8px 42px 8px 0; color: var(--pink); font-size: 12px; font-weight: 800; letter-spacing: .1em; }
.member-report-dialog h2 { margin: 0 36px 6px 0; font: 700 28px/1.2 Georgia, serif; }
#memberReportTarget { font-size: 16px; font-weight: 700; margin: 8px 0; overflow-wrap: anywhere; }
#memberReportPrivacy { margin: 12px 0 20px; padding: 12px; border-radius: 12px; background: #e9faf6; color: #086c5d; font-size: 14px; line-height: 1.5; }
#memberReportForm { display: grid; gap: 9px; }
#memberReportForm[hidden], .report-preview[hidden], .report-error[hidden], .report-confirmation[hidden], .report-evidence-preview[hidden] { display: none; }
#memberReportForm label { font-size: 14px; font-weight: 700; margin-top: 4px; }
#memberReportForm label small { font-weight: 400; }
#memberReportReason, #memberReportExplanation { width: 100%; min-width: 0; border: 1px solid var(--line); border-radius: 12px; padding: 12px; color: var(--ink); background: white; font: inherit; font-size: 16px; line-height: 1.5; }
#memberReportReason { min-height: 48px; }
#memberReportExplanation { min-height: 110px; resize: vertical; }
#memberReportWordCount { margin: 0 0 10px; text-align: right; color: var(--muted); font-size: 14px; }
#memberReportWordCount.over-limit, .report-error { color: #a20d3f; }
#memberReportScreenshot { max-width: 100%; padding: 8px 0; font-size: 14px; }
#memberReportFileHint { font-size: 13px; color: var(--muted); }
.report-preview { padding: 12px; border: 1px solid var(--line); border-radius: 12px; }
.report-preview img { display: block; max-width: 100%; max-height: 200px; margin: 0 auto; object-fit: contain; }
.report-preview p { font-size: 13px; overflow-wrap: anywhere; }
.report-preview button, .report-evidence-button { min-height: 44px; padding: 10px 14px; border: 1px solid #d7b7c9; border-radius: 10px; background: #fff0f6; color: var(--wine); cursor: pointer; font-size: 14px; }
.report-error { font-size: 14px; line-height: 1.5; padding: 12px; background: #fff0f4; border: 1px solid #de85a1; border-radius: 12px; }
.report-form-actions { display: grid; grid-template-columns: 1fr 1.5fr; gap: 10px; margin-top: 12px; }
.report-form-actions button, .report-confirmation .primary { min-height: 48px; margin: 0; padding: 12px; font-size: 16px; }
.report-confirmation { font-size: 16px; line-height: 1.5; }
.member-report-dialog button:disabled { opacity: .6; cursor: default; }
.member-report-dialog :focus-visible { outline: 3px solid #168c80; outline-offset: 2px; }
.moderation-report-details { display: grid; gap: 10px; margin: 14px 0; }
.moderation-report-details > strong { font-size: 14px; }
.moderation-report-details .report-explanation { margin: 0; font-size: 16px; line-height: 1.5; white-space: pre-wrap; overflow-wrap: anywhere; }
.report-evidence-status { font-size: 14px; line-height: 1.5; }
.report-evidence-preview { padding: 12px; border: 1px solid var(--line); border-radius: 12px; }
.report-evidence-preview img { display: block; max-width: 100%; max-height: 360px; margin: 0 auto 12px; object-fit: contain; }
.report-evidence-preview a { color: var(--wine); font-size: 14px; }
