/**
 * 自建问答页样式（任务A：替代 anspress.css 的问答布局/侧栏 + 自渲染单页/列表/提问/分类/标签/动态）。
 *
 * 仅问答面加载（inc/qa-frontend.php enqueue，bumian_theme_qa_is_page()）。全部 token 化、0 硬编码 hex
 * （品牌按钮白字沿用组件既有 #fff）。断点用 480/768/1100（CODEGEN §2.5）。列表行式 .b-qa-rows 在
 * components.css（全站共用·不重复）；分类跑马灯 .b-catqa 在 woocommerce.css；配图选择器基样式在 qa.css
 * （发布页共用·此处不重复）。本文件与 qa.css 分离，避免动到发布页依赖。
 */

/* ============================================================
   问答页「主列 + 右侧栏」布局（移植 anspress.css·QA 页自建后此处唯一 SOT）
   ============================================================ */
.b-qa-layout { display: flex; align-items: flex-start; gap: var(--s-5); }
.b-qa-layout__main { flex: 1 1 auto; min-width: 0; }
.b-qa-layout__side { flex: 0 0 300px; width: 300px; display: flex; flex-direction: column; gap: var(--s-4); }

.b-qa-side-card { padding: var(--s-4); border: 1px solid var(--line); border-radius: var(--r-3); background: var(--bg-0); }
.b-qa-side-card__title { margin: 0 0 var(--s-3); font-size: 15px; font-weight: 700; color: var(--ink-0); }

.b-qa-side-card--cta { background: var(--brand-50); border-color: var(--brand-200); text-align: center; }
.b-qa-side__cta-text { margin: 0 0 var(--s-3); font-size: 14px; color: var(--ink-1); }
.b-qa-side__ask { display: block; min-height: 44px; line-height: 44px; border-radius: var(--r-3); background: var(--btn-primary-bg); color: #fff; font-size: 15px; font-weight: 600; text-decoration: none; text-align: center; }
.b-qa-side__ask:hover { background: var(--btn-primary-bg-h); color: #fff; }

.b-qa-side__list { list-style: none; margin: 0; padding: 0; }
.b-qa-side__item + .b-qa-side__item { border-top: 1px solid var(--line); }
.b-qa-side__item a { display: flex; align-items: baseline; gap: var(--s-2); padding: var(--s-2) 0; color: var(--ink-1); text-decoration: none; }
.b-qa-side__item a:hover .b-qa-side__item-title { color: var(--brand); }
.b-qa-side__item-title { flex: 1 1 auto; min-width: 0; font-size: 13.5px; line-height: 1.5; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.b-qa-side__item-count { flex: none; font-size: 12px; color: var(--ink-3); white-space: nowrap; }
.b-qa-side__item-count.is-solved { color: var(--success-strong); }
.b-qa-side__empty { margin: 0; color: var(--ink-3); font-size: 13px; }

.b-qa-side__cats { display: flex; flex-wrap: wrap; gap: var(--s-2); }
.b-qa-side__cat { display: inline-flex; align-items: center; gap: 5px; min-height: 32px; padding: 0 var(--s-3); border: 1px solid var(--line); border-radius: var(--r-pill); background: var(--bg-0); color: var(--ink-1); font-size: 13px; text-decoration: none; }
.b-qa-side__cat:hover { border-color: var(--brand); color: var(--brand); }
.b-qa-side__cat-n { display: inline-flex; align-items: center; justify-content: center; min-width: 18px; height: 18px; padding: 0 5px; border-radius: var(--r-pill); background: var(--bg-2); color: var(--ink-3); font-size: 11px; font-weight: 700; }

[data-theme="dark"] .b-qa-side-card--cta { border-color: var(--brand-400); }
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) .b-qa-side-card--cta { border-color: var(--brand-400); }
}

@media (max-width: 1100px) {
	.b-qa-layout { flex-direction: column; gap: var(--s-3); }
	.b-qa-layout__main { width: 100%; }
	.b-qa-layout__side { flex-basis: auto; width: 100%; gap: var(--s-3); }
}

/* 自己问题页友好等待提示 + 登录/已答引导。 */
.b-qa-own-note {
	padding: var(--s-3);
	background: var(--bg-2);
	border: 1px solid var(--line);
	border-radius: var(--r-3);
	color: var(--ink-3);
	font-size: 14px;
	text-align: center;
}
.b-qa-own-note .b-qax-act { color: var(--brand); }

/* ============================================================
   列表页工具条 + 排序
   ============================================================ */
.b-qax-toolbar { display: flex; align-items: center; gap: var(--s-3); flex-wrap: wrap; margin-bottom: var(--s-3); }
.b-qax-search { display: flex; flex: 1 1 240px; min-width: 0; }
.b-qax-search__input { flex: 1 1 auto; min-width: 0; height: 40px; padding: 0 var(--s-3); border: 1px solid var(--line); border-radius: var(--r-3) 0 0 var(--r-3); background: var(--bg-0); color: var(--ink-0); font-size: 14px; }
.b-qax-search__input:focus-visible { outline: 2px solid var(--brand); outline-offset: -1px; }
.b-qax-search__btn { flex: none; height: 40px; padding: 0 var(--s-4); border: 1px solid var(--brand); border-left: none; border-radius: 0 var(--r-3) var(--r-3) 0; background: var(--btn-primary-bg); color: #fff; font-size: 14px; cursor: pointer; }
.b-qax-ask-btn { flex: none; min-height: 40px; line-height: 40px; padding: 0 var(--s-4); }

.b-qax-sort { display: flex; align-items: center; flex-wrap: wrap; gap: var(--s-2); margin-bottom: var(--s-4); }
.b-qax-sort__chip { min-height: 32px; line-height: 30px; padding: 0 var(--s-3); border: 1px solid var(--line); border-radius: var(--r-pill); background: var(--bg-0); color: var(--ink-1); font-size: 13px; text-decoration: none; }
.b-qax-sort__chip:hover { border-color: var(--brand); color: var(--brand); }
.b-qax-sort__chip.is-active { background: var(--btn-primary-bg); border-color: transparent; color: #fff; }
.b-qax-sort__count { margin-left: auto; font-size: 12.5px; color: var(--ink-3); }

.b-qax-empty { padding: var(--s-8) var(--s-4); text-align: center; color: var(--ink-3); }
.b-qax-empty p { margin: 0 0 var(--s-3); font-size: 14px; }

/* ============================================================
   单问题页
   ============================================================ */
.b-qax-avatar { border-radius: 50%; vertical-align: middle; }

.b-qax-q { padding: var(--s-5); border: 1px solid var(--line); border-radius: var(--r-4); background: var(--bg-0); margin-bottom: var(--s-5); }
.b-qax-q__title { margin: 0 0 var(--s-3); font-size: 22px; line-height: 1.35; color: var(--ink-0); }
.b-qax-q__meta { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-3); font-size: 12.5px; color: var(--ink-3); margin-bottom: var(--s-4); }
.b-qax-q__author { display: inline-flex; align-items: center; gap: var(--s-2); color: var(--ink-1); }
.b-qax-q__cat { color: var(--brand); text-decoration: none; }
.b-qax-q__cat:hover { text-decoration: underline; }
/* 〔批X419〕所属专区 chip（可点进专区·与分类文字链区分：品牌浅底胶囊） */
.b-qax-q__cat--zone { display: inline-flex; align-items: center; min-height: 20px; padding: 0 var(--s-2); border-radius: var(--r-pill); background: var(--brand-50); font-size: 12px; font-weight: 600; }
.b-qax-q__cat--zone:hover { text-decoration: none; background: var(--brand-100); }
/* 〔批X432〕二级标签轻胶囊（专区实心浅底·标签描边更轻=视觉分层与选择器同语）——点进标签归档。 */
.b-qax-q__cat--scenetag { display: inline-flex; align-items: center; min-height: 20px; padding: 0 var(--s-2); border-radius: var(--r-pill); border: 1px solid var(--brand-100); background: none; font-size: 12px; font-weight: 500; }
.b-qax-q__cat--scenetag:hover { text-decoration: none; background: var(--brand-50); }
.b-qax-solved-badge { display: inline-flex; align-items: center; min-height: 20px; padding: 0 var(--s-2); border-radius: var(--r-pill); background: var(--success-50); color: var(--success-strong); font-size: 12px; font-weight: 600; }
.b-qax-q__content { font-size: 15px; line-height: 1.7; color: var(--ink-1); word-break: break-word; }
.b-qax-q__content p { margin: 0 0 var(--s-3); }
.b-qax-q__foot { display: flex; gap: var(--s-3); margin-top: var(--s-4); padding-top: var(--s-3); border-top: 1px solid var(--line); }

.b-qax-act { display: inline-flex; align-items: center; gap: 4px; min-height: 32px; padding: 0 var(--s-2); border: none; background: none; color: var(--ink-3); font-size: 13px; cursor: pointer; text-decoration: none; }
.b-qax-act:hover { color: var(--brand); }

.b-qax-answers { margin-bottom: var(--s-5); }
.b-qax-answers__title { margin: 0 0 var(--s-4); font-size: 17px; font-weight: 700; color: var(--ink-0); }
.b-qax-answers__empty { margin: 0; padding: var(--s-5); text-align: center; color: var(--ink-3); font-size: 14px; border: 1px dashed var(--line); border-radius: var(--r-3); }

.b-qax-answer-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--s-4); }
.b-qax-answer { padding: var(--s-4) 0; border-bottom: 1px solid var(--line); }
.b-qax-answer.is-selected { padding: var(--s-4); border: 1px solid var(--success); border-radius: var(--r-3); background: var(--success-50); }
.b-qax-answer__best { display: inline-flex; align-items: center; min-height: 22px; padding: 0 var(--s-2); margin-bottom: var(--s-2); border-radius: var(--r-pill); background: var(--success); color: #fff; font-size: 12px; font-weight: 700; }
.b-qax-answer__meta { display: flex; align-items: center; gap: var(--s-3); font-size: 12.5px; color: var(--ink-3); margin-bottom: var(--s-2); }
.b-qax-answer__author { display: inline-flex; align-items: center; gap: var(--s-2); color: var(--ink-1); }
.b-qax-answer__content { font-size: 15px; line-height: 1.7; color: var(--ink-1); word-break: break-word; }
.b-qax-answer__content p { margin: 0 0 var(--s-2); }
.b-qax-answer__actions { display: flex; align-items: center; flex-wrap: wrap; gap: var(--s-3); margin-top: var(--s-3); }
.b-qax-answer__editform { margin-top: var(--s-3); }

.b-qax-like { display: inline-flex; align-items: center; gap: 5px; min-height: 32px; padding: 0 var(--s-3); border: 1px solid var(--line); border-radius: var(--r-pill); background: var(--bg-0); color: var(--ink-2); font-size: 13px; cursor: pointer; }
.b-qax-like:hover { border-color: var(--danger); color: var(--danger); }
.b-qax-like.is-liked { border-color: var(--danger); background: var(--danger-50); color: var(--danger); }
.b-qax-like.is-own { cursor: default; opacity: .6; }
.b-qax-like.is-own:hover { border-color: var(--line); color: var(--ink-2); }

/* ============================================================
   表单（提问/回答/编辑共用）
   ============================================================ */
.b-qax-askwrap { max-width: 720px; }
.b-qax-form { display: flex; flex-direction: column; gap: var(--s-4); }
/* 〔批X425/X430 站长指示〕提问页 分类+场景 并排（发布页同款）：分类窄条·场景=展开式选择器占余宽·≤640 回落纵排。 */
.b-qax-catzone { display: flex; align-items: flex-start; gap: var(--s-4); }
.b-qax-catzone__cat { flex: 0 0 auto; }
.b-qax-catzone .b-field__label { display: block; margin: 0 0 6px; } /* 〔X430〕label 在上（select 变窄后防跑同行·对齐发布页） */
.b-qax-catzone__cat .b-qax-select { width: auto; min-width: 150px; }
.b-qax-catzone__zone { flex: 1 1 auto; min-width: 0; }
.b-qax-catzone__zone .b-scene { margin: 0; }
/* 〔批X453〕分类下拉与场景折叠条同排「等高」消错位：收起胶囊默认 font13.5+pad6=36.3px·比同排
   .b-qax-select（font15·行高比1.65·上下 --s-3·1px 边框×2=50.75px）矮 14.5px → 视觉错位。收起条
   min-height 对齐下拉高度（flex align-items:center 已居中·不改展开态·仅本提问页两栏语境）。 */
.b-qax-catzone__zone .b-scene__fold-summary {
	min-height: calc(15px * 1.65 + var(--s-3) * 2 + 2px); /* = .b-qax-select 计算高度 */
	box-sizing: border-box;
}
@media (max-width: 640px) {
	.b-qax-catzone { flex-direction: column; gap: var(--s-4); }
	.b-qax-catzone__cat { width: 100%; }
	.b-qax-catzone__cat .b-qax-select { width: 100%; }
}
.b-qax-input,
.b-qax-select,
.b-qax-textarea {
	width: 100%; padding: var(--s-3); border: 1px solid var(--line); border-radius: var(--r-3);
	background: var(--bg-0); color: var(--ink-0); font-size: 15px; font-family: inherit; box-sizing: border-box;
}
.b-qax-textarea { min-height: 120px; resize: vertical; line-height: 1.6; }
.b-qax-input:focus-visible,
.b-qax-select:focus-visible,
.b-qax-textarea:focus-visible { outline: 2px solid var(--brand); outline-offset: -1px; }
.b-qax-select { appearance: none; -webkit-appearance: none; background-image: linear-gradient(45deg, transparent 50%, var(--ink-3) 50%), linear-gradient(135deg, var(--ink-3) 50%, transparent 50%); background-position: calc(100% - 18px) center, calc(100% - 13px) center; background-size: 5px 5px, 5px 5px; background-repeat: no-repeat; padding-right: var(--s-8); }
.b-qax-form__msg { margin: 0; font-size: 13px; min-height: 18px; }
.b-qax-form__msg.is-error { color: var(--danger); }
.b-qax-form__msg.is-ok { color: var(--success-strong); }
.b-qax-form__actions { display: flex; justify-content: flex-end; gap: var(--s-3); }
.b-qax-answerform { padding: var(--s-4); border: 1px solid var(--line); border-radius: var(--r-4); background: var(--bg-0); }

/* ============================================================
   分类总览
   ============================================================ */
.b-qax-catgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: var(--s-4); }
.b-qax-catcard { display: flex; flex-direction: column; align-items: center; gap: var(--s-2); padding: var(--s-5) var(--s-4); border: 1px solid var(--line); border-radius: var(--r-4); background: var(--bg-0); text-decoration: none; text-align: center; transition: border-color var(--dur-1) var(--ease), box-shadow var(--dur-1) var(--ease); }
.b-qax-catcard:hover { border-color: var(--brand-200); box-shadow: var(--sh-1); }
.b-qax-catcard__icon { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: var(--r-3); background: var(--brand-50); color: var(--brand); }
.b-qax-catcard__name { font-size: 15px; font-weight: 600; color: var(--ink-0); }
.b-qax-catcard__count { font-size: 12.5px; color: var(--ink-3); }

/* ============================================================
   标签云
   ============================================================ */
.b-qax-tagcloud { display: flex; flex-wrap: wrap; gap: var(--s-2); }
.b-qax-tagchip { display: inline-flex; align-items: center; gap: 6px; min-height: 34px; padding: 0 var(--s-3); border: 1px solid var(--line); border-radius: var(--r-pill); background: var(--bg-0); color: var(--ink-1); font-size: 13.5px; text-decoration: none; }
.b-qax-tagchip:hover { border-color: var(--brand); color: var(--brand); }
.b-qax-tagchip__count { display: inline-flex; align-items: center; justify-content: center; min-width: 18px; height: 18px; padding: 0 5px; border-radius: var(--r-pill); background: var(--bg-2); color: var(--ink-3); font-size: 11px; font-weight: 700; }

/* ============================================================
   动态流
   ============================================================ */
.b-qax-activity { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.b-qax-activity__item { display: flex; gap: var(--s-3); padding: var(--s-3) 0; border-bottom: 1px solid var(--line); }
.b-qax-activity__avatar { flex: none; }
.b-qax-activity__body { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.b-qax-activity__line { font-size: 13.5px; color: var(--ink-2); }
.b-qax-activity__name { color: var(--ink-0); }
.b-qax-activity__ref { font-size: 14px; color: var(--ink-1); text-decoration: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.b-qax-activity__ref:hover { color: var(--brand); }
.b-qax-activity__when { font-size: 12px; color: var(--ink-3); }

@media (max-width: 480px) {
	.b-qax-q__title { font-size: 19px; }
	.b-qax-toolbar { gap: var(--s-2); }
	.b-qax-ask-btn { width: 100%; }
}

/* 〔批X399〕问答列表宽屏两列——复刻 AnsPress 时代 anspress.css「列表仅电脑宽屏两列；移动/窄屏单列」段
   （≥1400 两列·同款 minmax(0,1fr) 防长标题撑破）·145 自建列表页漏带此段（站长截图指出）。
   scoped 到问答页布局容器且本文件只在问答面 enqueue——首页/搜索/个人中心的 .b-qa-rows 零影响。 */
@media (min-width: 1400px) {
	.b-qa-layout__main .b-qa-rows {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		gap: var(--s-2) var(--s-3);
		align-items: start;
	}
	.b-qa-layout__main .b-qa-rows > .b-qa-row { min-width: 0; }
}
