/* 개선 요청 /feedback (10-10) — 양식은 account.css 의 ac-* 를 같이 쓴다 */
.fb { max-width: 860px; }
.fb-desc { margin: 4px 0 0; color: var(--st-text-muted); max-width: 640px; line-height: 1.6; }
.fb-form { padding: 24px; display: grid; gap: 16px; }
.fb-label { font-size: var(--st-fs-md); font-weight: 500; }
.fb-opt { font-weight: 400; font-size: var(--st-fs-sm); }
.fb-count { font-weight: 400; font-size: var(--st-fs-sm); color: var(--st-text-muted); font-variant-numeric: tabular-nums; }
.fb-form textarea {
  width: 100%; min-height: 150px; padding: 10px 12px; resize: vertical; font: 400 var(--st-fs-lg)/1.6 var(--st-font); color: var(--st-text);
  background: var(--st-surface); border: 1px solid var(--st-border); border-radius: var(--st-r-md);
}
.fb-form textarea:focus { outline: 2px solid var(--st-focus); outline-offset: 0; border-color: var(--st-accent); }
.fb-form .ac-actions { justify-content: flex-start; }
.fb-form .ac-primary { min-width: 160px; }
.fb-login, .fb-done { padding: 28px; }
.fb-login h2, .fb-done h2 { font-size: var(--st-fs-xl); margin: 0 0 6px; }
.fb-login p, .fb-done p { margin: 0 0 14px; }
.fb-login-a { display: flex; gap: 8px; flex-wrap: wrap; margin: 0 !important; }
.fb-how { margin-top: 28px; color: var(--st-text-muted); }
.fb-how h2 { font-size: var(--st-fs-md); font-weight: 600; margin: 0 0 8px; color: var(--st-text); }
.fb-how ol { margin: 0; padding-left: 20px; display: grid; gap: 4px; font-size: var(--st-fs-md); line-height: 1.55; }

.fb-list { display: grid; gap: 12px; }
.fb-item { padding: 16px 18px; }
.fb-top { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: var(--st-fs-sm); }
.fb-meta { margin-right: auto; }
.fb-item h3 { margin: 8px 0 4px; font-size: var(--st-fs-lg); font-weight: 600; line-height: 1.4; }
.fb-text { margin: 0; white-space: pre-line; line-height: 1.6; color: var(--st-text); overflow-wrap: anywhere;
  display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical; overflow: hidden; }
.fb-page { margin: 6px 0 0; font-size: var(--st-fs-sm); overflow-wrap: anywhere; }
.fb-kind { padding: 1px 8px; border-radius: var(--st-r-full); background: var(--st-chip); color: var(--st-text); }
.fb-st { padding: 1px 8px; border-radius: var(--st-r-full); font-weight: 600; background: var(--st-chip); color: var(--st-text-muted); }
.fb-st-reviewing { background: var(--st-info-soft); color: var(--st-info); }
.fb-st-in_progress { background: var(--st-warn-soft); color: var(--st-warn); }
.fb-st-done { background: var(--st-ok-soft); color: var(--st-ok); }
.fb-reply { margin-top: 12px; padding: 12px 14px; border-left: 3px solid var(--st-accent); background: var(--st-accent-soft); border-radius: 0 var(--st-r-md) var(--st-r-md) 0; }
.fb-reply p { margin: 0; }
.fb-reply-h { font-size: var(--st-fs-sm); font-weight: 600; color: var(--st-accent); margin-bottom: 4px !important; }
.fb-reply-t { white-space: pre-line; line-height: 1.6; margin-bottom: 6px !important; overflow-wrap: anywhere; }
.fb-new { display: inline-block; padding: 0 6px; border-radius: var(--st-r-xs); background: var(--st-accent); color: var(--st-on-accent); font-size: var(--st-fs-xs); }
.fb-tl { list-style: none; margin: 10px 0 0; padding: 0; display: grid; gap: 2px; font-size: var(--st-fs-sm); color: var(--st-text-muted); }
.fb-tl time { font-variant-numeric: tabular-nums; }
.fb-vote { min-height: 32px; padding: 0 10px; gap: 6px; }
.fb-vote[aria-pressed="true"] { background: var(--st-accent-soft); color: var(--st-accent); border-color: var(--st-accent); }
.fb-pubnote { font-size: var(--st-fs-sm); }
.fb-dot { display: inline-block; width: 7px; height: 7px; margin-left: 6px; border-radius: 50%; background: var(--st-accent); vertical-align: 2px; }
.fb .rs-sort { margin-bottom: 14px; }
.fb .rs-sort .st-btn[aria-pressed="true"] { background: var(--st-accent-soft); color: var(--st-accent); border-color: var(--st-accent); }

@media (max-width: 760px) {
  .fb-form { padding: 18px 16px; }
  .fb-item { padding: 14px; }
  .fb-text { -webkit-line-clamp: 8; line-clamp: 8; }
}
