.bj-qa {
  --bj-red: #eb6100;
  --bj-gold: #0166c0;
  --bj-gold-light: #dce6ef;
  --bj-gold-hover: #00549f;
  --bj-text: #333;
  --bj-muted: #777;
  --bj-border: #dce6ef;
  --bj-bg: #f1f7fc;
  --bj-radius: 12px;
  font-family: inherit;
  color: var(--bj-text);
  margin: 52px 0 0;
  padding: 0;
}
.bj-container {
  max-width: 840px;
  margin: 0 auto;
  padding: 38px 28px 60px;
  background: var(--bj-bg);
  border: 1px solid var(--bj-border);
  border-radius: var(--bj-radius);
  box-shadow: 0 5px 26px rgba(1, 70, 120, 0.08);
}

/* Header */
.bj-header { text-align: center; margin-bottom: 28px; }
.bj-title { font-size: 1.5em; font-weight: 700; color: #1a1a1a; margin: 0 0 10px; line-height: 1.35; }
.bj-title-icon { color: var(--bj-red); margin-right: 6px; }
.bj-subtitle { color: var(--bj-muted); font-size: 0.96em; line-height: 1.65; margin: 0 auto; max-width: 660px; }

/* Form */
.bj-form { margin-top: 6px; }
.bj-field { margin-bottom: 18px; }
.bj-row { display: flex; gap: 16px; }
.bj-row .bj-field { flex: 1; }
.bj-label { display: block; font-weight: 600; font-size: 0.92em; margin-bottom: 7px; color: #444; }
.bj-req { color: var(--bj-red); }
.bj-hint { color: var(--bj-muted); font-weight: 400; font-size: 0.85em; }

.bj-input,
.bj-textarea,
.bj-select {
  width: 100%; padding: 11px 13px;
  border: 1.5px solid #cdd9e4; border-radius: 8px;
  font-size: 0.97em; font-family: inherit; color: var(--bj-text); background: #fff;
  transition: border-color .2s, box-shadow .2s; box-sizing: border-box;
}
.bj-input:focus, .bj-textarea:focus, .bj-select:focus {
  outline: none; border-color: var(--bj-gold); box-shadow: 0 0 0 3px rgba(1, 102, 192, 0.15);
}
.bj-textarea { resize: vertical; min-height: 96px; }

.bj-error { display: none; color: var(--bj-red); font-size: 0.84em; margin: 6px 0 0; }
.bj-field.has-error .bj-error { display: block; }
.bj-field.has-error .bj-input, .bj-field.has-error .bj-textarea { border-color: var(--bj-red); }

/* 类型切换 */
.bj-type { display: flex; gap: 10px; flex-wrap: wrap; }
.bj-type-btn {
  flex: 1; min-width: 200px; padding: 12px 16px;
  border: 1.5px solid #cdd9e4; border-radius: 8px; background: #fff;
  font-size: 0.95em; font-family: inherit; cursor: pointer; transition: all .2s; color: #555;
}
.bj-type-btn.is-active { border-color: var(--bj-gold); background: #e8f2fc; color: #00549f; font-weight: 600; }

/* 标签 */
.bj-tags { display: flex; flex-wrap: wrap; gap: 8px; }
.bj-tag {
  padding: 8px 13px; border: 1.5px solid #cdd9e4; border-radius: 20px;
  background: #fff; font-size: 0.9em; font-family: inherit; cursor: pointer; color: #555; transition: all .15s;
}
.bj-tag:hover { border-color: var(--bj-gold); }
.bj-tag.is-active { background: var(--bj-gold); color: #fff; border-color: var(--bj-gold); font-weight: 600; }

/* Checkbox */
.bj-check { display: flex; align-items: flex-start; gap: 9px; }
.bj-check input { margin-top: 3px; accent-color: var(--bj-gold); }
.bj-check-label { font-size: 0.88em; line-height: 1.5; color: #555; }
.bj-check-label a { color: var(--bj-gold); text-decoration: none; }
.bj-check-label a:hover { text-decoration: underline; }

/* Submit */
.bj-submit {
  position: relative; width: 100%; padding: 14px 20px;
  background: var(--bj-red); color: #fff; font-size: 1.02em; font-weight: 700;
  border: none; border-radius: 8px; cursor: pointer; transition: background .2s;
  display: flex; align-items: center; justify-content: center; gap: 10px;
}
.bj-submit:hover { background: #cf5500; }
.bj-submit:disabled { opacity: .6; cursor: not-allowed; }
.bj-spinner { display: none; width: 18px; height: 18px; border: 2.5px solid rgba(255,255,255,.4); border-top-color: #fff; border-radius: 50%; animation: bj-spin .7s linear infinite; }
.bj-submit.is-loading .bj-spinner { display: inline-block; }
@keyframes bj-spin { to { transform: rotate(360deg); } }

/* Success */
.bj-success { margin-top: 20px; padding: 15px 18px; background: #eef9f0; border: 1px solid #b9e3c6; border-radius: 8px; display: flex; align-items: flex-start; gap: 14px; color: #1e7e4e; }
.bj-success[hidden] { display: none; }
.bj-success-icon { width: 30px; height: 30px; background: #2ecc71; color: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 700; flex-shrink: 0; }
.bj-success strong { display: block; margin-bottom: 3px; }
.bj-success p { margin: 0; font-size: 0.88em; line-height: 1.5; }

/* List */
.bj-list-section { margin-top: 42px; }
.bj-list-header { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; margin-bottom: 14px; padding-bottom: 12px; border-bottom: 2px solid var(--bj-gold-light); }
.bj-list-title { font-size: 1.18em; margin: 0; color: #1a1a1a; }
.bj-count { color: var(--bj-gold); }
.bj-sort { display: flex; align-items: center; gap: 8px; font-size: 0.9em; color: #555; }
.bj-sort .bj-select { width: auto; padding: 7px 10px; font-size: 0.9em; }

/* 筛选 */
.bj-filter { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 18px; }
.bj-filter-btn { padding: 7px 14px; border: 1.5px solid #cdd9e4; border-radius: 18px; background: #fff; font-size: 0.88em; font-family: inherit; cursor: pointer; color: #555; transition: all .15s; }
.bj-filter-btn.is-active { background: var(--bj-red); color: #fff; border-color: var(--bj-red); font-weight: 600; }

.bj-list { list-style: none; padding: 0; margin: 0; }
.bj-item { background: #fff; border: 1px solid var(--bj-border); border-radius: 10px; padding: 20px 22px; margin-bottom: 16px; animation: bj-fade .35s ease; }
@keyframes bj-fade { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }

.bj-item-head { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 8px; }
.bj-avatar { width: 40px; height: 40px; border-radius: 50%; background: var(--bj-gold); color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 1em; flex-shrink: 0; }
.bj-author-wrap { flex: 1; }
.bj-author { font-weight: 700; color: #222; font-size: 0.98em; }
.bj-meta { font-size: 0.8em; color: var(--bj-muted); margin-top: 1px; }
.bj-tag-pill { display: inline-block; font-size: 0.76em; background: #fbeae8; color: var(--bj-red); padding: 2px 9px; border-radius: 12px; margin-left: 8px; font-weight: 600; }
.bj-type-pill { display: inline-block; font-size: 0.74em; padding: 2px 8px; border-radius: 10px; margin-left: 6px; font-weight: 600; }
.bj-type-pill.pregunta { background: #e8f0fe; color: #1a5cbf; }
.bj-type-pill.experiencia { background: #eef9f0; color: #1e7e4e; }

.bj-item-title { font-size: 1.05em; font-weight: 600; color: #222; margin: 6px 0 4px; line-height: 1.45; }
.bj-item-body { font-size: 0.95em; line-height: 1.65; color: #444; margin: 0 0 12px; }

/* 互动：投票 + 回答 */
.bj-actions { display: flex; align-items: center; gap: 20px; font-size: 0.88em; }
.bj-vote, .bj-answer-btn { background: none; border: none; color: var(--bj-muted); cursor: pointer; padding: 4px 0; font-size: inherit; display: flex; align-items: center; gap: 5px; transition: color .15s; font-family: inherit; }
.bj-vote:hover, .bj-answer-btn:hover { color: var(--bj-gold); }
.bj-vote.is-voted { color: var(--bj-red); font-weight: 600; }
.bj-vote-count { font-variant-numeric: tabular-nums; }

/* 回答框 */
.bj-answer-form { margin-top: 12px; padding: 14px; background: #f1f7fc; border-radius: 8px; display: none; }
.bj-answer-form.is-open { display: block; }
.bj-answer-form .bj-input { margin-bottom: 10px; }
.bj-answer-actions { display: flex; gap: 10px; justify-content: flex-end; }
.bj-btn-cancel, .bj-btn-send { padding: 8px 16px; border-radius: 6px; font-size: 0.88em; cursor: pointer; border: none; font-family: inherit; }
.bj-btn-cancel { background: #eee; color: #555; }
.bj-btn-cancel:hover { background: #e0e0e0; }
.bj-btn-send { background: var(--bj-gold); color: #fff; font-weight: 600; }
.bj-btn-send:hover { background: var(--bj-gold-hover); }

/* 官方回答高亮 */
.bj-accepted { border: 1.5px solid var(--bj-gold); background: #f1f7fc; }
.bj-official-badge { display: inline-flex; align-items: center; gap: 5px; font-size: 0.78em; background: var(--bj-gold); color: #fff; padding: 3px 10px; border-radius: 12px; margin-left: 10px; font-weight: 600; }

/* 回答列表 */
.bj-answers { list-style: none; padding: 0; margin: 14px 0 0 50px; }
.bj-answer { display: flex; gap: 10px; margin-bottom: 12px; }
.bj-answer .bj-avatar { width: 30px; height: 30px; font-size: 0.82em; background: #8a8a8a; }
.bj-answer.official .bj-avatar { background: var(--bj-red); }
.bj-answer-content { flex: 1; background: #f1f7fc; border-radius: 8px; padding: 10px 13px; }
.bj-answer.official .bj-answer-content { background: #fff5f4; border: 1px solid #f3d4d0; }
.bj-answer-author { font-weight: 700; font-size: 0.88em; }
.bj-answer-meta { font-size: 0.76em; color: var(--bj-muted); }
.bj-answer-text { font-size: 0.92em; line-height: 1.55; margin: 3px 0 0; color: #444; }

.bj-loadmore { display: block; margin: 8px auto 0; padding: 11px 28px; background: #fff; border: 1.5px solid var(--bj-gold); color: var(--bj-gold); border-radius: 7px; font-weight: 600; cursor: pointer; font-family: inherit; transition: all .2s; }
.bj-loadmore:hover { background: var(--bj-gold); color: #fff; }
.bj-loadmore[hidden] { display: none; }

.bj-empty { text-align: center; color: var(--bj-muted); padding: 30px 0; font-style: italic; }

@media (max-width: 600px) {
  .bj-row { flex-direction: column; gap: 0; }
  .bj-container { padding: 26px 18px 40px; }
  .bj-title { font-size: 1.25em; }
  .bj-answers { margin-left: 22px; }
  .bj-type-btn { flex: 1 1 100%; }
}

/* Keep this shared destination board inside the existing page flow. */
.bj-qa{position:relative;z-index:5;padding:0 15px;margin:36px auto 44px}.bj-qa [hidden]{display:none!important}
.bj-qa *{box-sizing:border-box}.bj-field{min-width:0}.bj-container{width:100%}.bj-author-wrap,.bj-answer-content{min-width:0}
.bj-qa button:focus-visible,.bj-qa input:focus-visible,.bj-qa textarea:focus-visible,.bj-qa select:focus-visible{outline:3px solid #0166c0;outline-offset:3px}
.bj-item-title,.bj-item-body,.bj-answer-text{white-space:pre-wrap;overflow-wrap:anywhere}.bj-author,.bj-meta{overflow-wrap:anywhere}
.bj-captcha{display:flex;align-items:center;gap:12px}.bj-captcha .bj-input{min-width:0;max-width:220px}.bj-captcha button{border:1px solid #cdd9e4;background:#fff;border-radius:6px;padding:4px;flex-shrink:0;cursor:pointer}
.bj-captcha img{display:block;width:130px;height:40px}.bj-answer-form form{display:grid;gap:10px}.bj-answer-form .bj-input{margin:0}
.bj-answer-content .bj-official-badge{margin-left:6px}.bj-moderation-note{margin-bottom:12px}.bj-success.is-error{background:#fff5f4;border-color:#f3d4d0;color:#ad3025}
.bj-actions{flex-wrap:wrap;gap:14px}.bj-list-title{line-height:1.4}.bj-submit:disabled,.bj-qa button:disabled{cursor:wait;opacity:.65}
@media(max-width:600px){.bj-qa{padding:0 10px}.bj-sort{width:100%}.bj-sort .bj-select{flex:1;min-width:0}.bj-item{padding:16px}.bj-item-head{flex-wrap:wrap}.bj-answers{margin-left:10px}.bj-captcha{gap:8px}.bj-captcha .bj-input{width:100%}.bj-answer-form{padding:10px}}
