.feedback-page { max-width:850px; }
.fb-dialog { width:min(760px,calc(100vw - 24px)); max-height:calc(100dvh - 24px); padding:0; border:1px solid var(--line); border-radius:20px; background:var(--surface-solid); color:var(--text); }
.fb-dialog::backdrop { background:rgb(0 0 0 / .45); }
.fb-dialog[open] { display:flex; flex-direction:column; overflow:hidden; }
.fb-head { display:flex; flex-shrink:0; justify-content:space-between; align-items:center; gap:16px; padding:20px; border-bottom:1px solid var(--line); }
.fb-head h2 { margin:0; font-size:20px; }
.fb-body { padding:20px; overflow:auto; min-height:0; overflow-wrap:anywhere; }
.fb-status { display:inline-block; padding:5px 12px; border-radius:20px; background:var(--accent-soft); color:var(--accent-strong); font-size:13px; }
.fb-content,.fb-event p { white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.75; }
.fb-timeline { display:grid; gap:14px; margin:20px 0; padding:0; list-style:none; }
.fb-event { padding:16px; border:1px solid var(--line); border-radius:12px; }
.fb-event.is-admin { background:var(--accent-soft); }
.fb-event time { display:block; font-size:12px; color:var(--muted); margin-top:5px; }
.fb-event p { margin:8px 0 0; }
.fb-reply { display:grid; gap:12px; padding-top:16px; border-top:1px solid var(--line); }
.fb-reply label { display:grid; gap:6px; }
.fb-reply :is(select,textarea) { width:100%; box-sizing:border-box; background:var(--bg); color:var(--text); border:1px solid var(--line); border-radius:10px; padding:10px; font:inherit; }
.fb-reply textarea { resize:vertical; min-height:110px; }
.fb-reply .fb-hide { display:flex; gap:8px; align-items:center; }
.fb-error { color:var(--danger,#b54747); white-space:pre-wrap; }
.fb-dialog :is(button,a,select,textarea):focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
@media(max-width:520px) { .fb-head,.fb-body { padding:16px; } }

.fb-dialog .fb-reply .fb-hide { display:grid; grid-template-columns:18px minmax(0,1fr); gap:4px 10px; align-items:center; padding:13px 15px; border:1px solid var(--line); border-radius:12px; background:var(--bg); }
.fb-dialog .fb-reply .fb-hide input[type="checkbox"] { appearance:auto; width:16px; height:16px; min-width:16px; min-height:16px; margin:0; padding:0; accent-color:var(--accent); justify-self:start; grid-column:1; grid-row:1; }
.fb-dialog .fb-reply .fb-hide span { grid-column:2; font-size:13px; line-height:1.5; }
.fb-dialog .fb-reply .fb-hide small { grid-column:2; font-size:11px; line-height:1.6; color:var(--muted); }
.fb-dialog .fb-head h2 { font-size:18px; }.fb-dialog .fb-body { padding:24px 28px; }.fb-dialog .fb-reply { margin-top:24px; }.fb-dialog .fb-reply label { font-size:13px; }
.feedback-page #feedbackDetail { padding:32px; max-width:700px; margin:24px auto; border-radius:22px; }
@media(max-width:520px){.fb-dialog .fb-body{padding:20px}.feedback-page #feedbackDetail{padding:20px}}
