.problem-report { box-sizing:border-box; width:min(540px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); padding:0; margin:auto; overflow:auto; border:1px solid var(--line); border-radius:8px; background:var(--panel); color:var(--text); box-shadow:var(--ui-shadow); font-family:inherit; font-size:14px; line-height:1.5; }
.problem-report::backdrop { background:#0007; }
.problem-report header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:20px 24px 12px; }
.problem-report h2 { font-size:18px; margin:0; }
.problem-report button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:40px; padding:8px 14px; border:1px solid var(--line2); border-radius:6px; background:var(--panel2); color:var(--text); font:inherit; cursor:pointer; }
.problem-report button:hover { background:var(--soft); }
.problem-report button:focus-visible,.problem-report textarea:focus-visible { outline:2px solid var(--text); outline-offset:3px; }
.problem-report .problem-report-close { width:40px; height:40px; padding:8px; flex-shrink:0; border-color:transparent; background:transparent; }
.problem-report-close svg { width:20px; height:20px; }
.problem-report form { padding:0 24px 24px; }
.problem-report p { margin:0 0 18px; color:var(--muted); }
.problem-report label { display:block; margin:0 0 8px; }
.problem-report textarea { display:block; box-sizing:border-box; width:100%; min-height:84px; max-height:220px; padding:10px 12px; border:1px solid var(--line2); border-radius:6px; background:var(--field); color:var(--text); font:inherit; resize:vertical; margin:0 0 18px; }
.problem-report .problem-report-consent { display:flex; align-items:flex-start; gap:10px; margin-bottom:18px; cursor:pointer; }
.problem-report-consent input { flex:0 0 18px; width:18px; height:18px; margin:2px 0 0; accent-color:var(--accent); }
.problem-report details { margin:12px 0; }
.problem-report summary { cursor:pointer; color:var(--muted); }
.problem-report pre { max-height:200px; overflow:auto; white-space:pre-wrap; overflow-wrap:anywhere; font:12px/1.5 monospace; background:var(--panel2); padding:12px; border-radius:6px; }
.problem-report footer { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:10px; margin-top:20px; }
.problem-report .problem-report-submit { background:var(--accent); color:var(--accent-text); border-color:transparent; }
.problem-report button:disabled { opacity:.55; cursor:default; }
.problem-report .problem-report-status { margin:12px 0 0; }
.message-report-button { display:inline-flex; align-items:center; gap:6px; margin-top:12px; padding:6px 8px; min-height:36px; border:0; border-radius:6px; color:var(--muted); background:transparent; font-family:inherit; font-size:12px; line-height:1.4; cursor:pointer; }
.message-report-button:hover { color:var(--text); background:var(--soft); }
.message-report-button svg { width:15px; height:15px; }
.message-report-button:disabled { cursor:default; }
@media(max-width:480px) { .problem-report header { padding:16px 16px 10px; } .problem-report form { padding:0 16px 16px; } }
