.su-report-dialog { width:min(540px,calc(100% - 24px)); max-height:calc(100dvh - 32px); margin:auto; padding:0; border:1px solid var(--line, #dadde3); border-radius:24px; background:var(--card, #fff); color:var(--text, #202328); box-shadow:0 20px 80px #0004; overflow:auto; overscroll-behavior:contain; }
.su-report-dialog::backdrop { background:#080c1270; backdrop-filter:blur(3px); }
.su-report-head { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:24px 24px 18px; border-bottom:1px solid var(--line, #dadde3); }
.su-report-head h2 { margin:6px 0 0; font-size:24px; font-weight:800; }
.su-report-head .icon-btn { flex:0 0 40px; }
.su-report-form { display:grid; gap:16px; padding:20px 24px 24px; }
.su-report-form label { display:grid; gap:7px; margin:0; font-size:13px; font-weight:700; }
.su-report-form :is(input,select,textarea) { width:100%; min-width:0; padding:12px; border:1px solid var(--line, #dadde3); border-radius:12px; color:var(--text, #202328); background:var(--bg-soft, #f0f2f5); font:inherit; font-weight:400; font-size:16px; }
.su-report-form textarea { resize:vertical; min-height:108px; max-height:260px; }
.su-report-form :is(input,select,textarea,button):focus-visible { outline:2px solid var(--gold-deep, #ae792b); outline-offset:2px; }
.su-report-target { margin:0; padding:12px; background:var(--bg-soft, #f0f2f5); border-radius:12px; font-weight:600; font-size:13px; overflow-wrap:anywhere; max-height:90px; overflow:auto; }
.su-report-hint { margin:0; font-size:12px; color:color-mix(in srgb,var(--text, #202328) 75%,var(--card, #fff)); }
.su-report-message { margin:0; font-size:13px; overflow-wrap:anywhere; }
.su-report-message.is-error { color:var(--danger, #c64747); }
.su-report-message.is-success { color:var(--text, #202328); font-weight:700; }
.su-report-message:empty { display:none; }
.su-report-form footer { display:flex; justify-content:flex-end; align-items:center; gap:12px; flex-wrap:wrap; }
.su-report-form .premium-btn { min-height:44px; }
.su-report-form button:disabled { opacity:.55; cursor:wait; }
.su-report-trap { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); pointer-events:none; }
body.su-report-open { overflow:hidden !important; }
[data-report-verification]:empty { display:none; }
html[data-theme="dark"] .su-report-dialog { background:var(--card, #171c20); }
html[data-theme="dark"] .su-report-form :is(input,select,textarea),html[data-theme="dark"] .su-report-target { background:var(--bg-soft, #20262c); }
@media(max-width:700px) {
  .su-report-dialog {
    position:fixed;
    inset:auto 0 0;
    /* Follow the shared mobile viewport when the on-screen keyboard opens. */
    bottom:max(0px,calc(100% - var(--su-visual-viewport-height,100dvh) - var(--su-visual-viewport-top,0px)));
    box-sizing:border-box;
    width:100%;
    max-width:none;
    max-height:calc(var(--su-visual-viewport-height,100dvh) - env(safe-area-inset-top,0px));
    margin:0;
    border-width:1px 0 0;
    border-radius:22px 22px 0 0;
    scroll-padding-top:110px;
  }
  .su-report-dialog[open] { animation:su-report-slide-up .28s cubic-bezier(.2,.8,.2,1); }
  .su-report-head { position:sticky; top:0; z-index:1; padding:28px 20px 20px; background:inherit; }
  .su-report-head::before { content:""; position:absolute; top:8px; left:50%; width:36px; height:4px; transform:translateX(-50%); background:var(--line-strong, #c8ccd3); border-radius:99px; }
  .su-report-head h2 { margin:2px 0 0; font:700 28px var(--font-display, sans-serif); }
  .su-report-form { padding:20px 20px calc(20px + env(safe-area-inset-bottom,0px)); gap:16px; }
}
@keyframes su-report-slide-up { from { transform:translateY(100%); } to { transform:translateY(0); } }
@media(prefers-reduced-motion:reduce) { .su-report-dialog[open] { animation:none; } }
