/* ══════════════════════════════════════════════════════════
   질문답변 — 목록 / 상세 / 검색결과 공용
   ══════════════════════════════════════════════════════════ */

.screen-reader-text{
  position:absolute!important;width:1px;height:1px;overflow:hidden;
  clip:rect(1px,1px,1px,1px);white-space:nowrap;
}

/* 목록·상세 페이지의 검색창은 front.css 와 같은 모양을 씁니다 */
.qa-search{
  display:flex;gap:8px;max-width:520px;margin:24px auto 0;
  background:var(--paper);border:1.5px solid var(--line);
  border-radius:var(--r-pill);padding:6px 6px 6px 20px;
  box-shadow:0 4px 20px rgba(47,43,39,.07);
  transition:border-color .18s,box-shadow .18s;
}
.qa-search:focus-within{border-color:var(--brand);box-shadow:0 0 0 4px var(--brand-soft);}
.qa-search input{flex:1;min-width:0;border:0;background:transparent;font-size:1rem;padding:10px 0;}
.qa-search input:focus{outline:none;}
.qa-search button{
  flex:0 0 auto;background:var(--brand);color:#fff;border-radius:var(--r-pill);
  padding:11px 24px;font-weight:700;font-size:.94rem;transition:background .18s;
}
.qa-search button:hover{background:var(--brand-deep);}

/* ── 카테고리 탭 ── */
.qa-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px;}
.qa-tab{
  display:inline-block;font-size:.9rem;font-weight:600;color:var(--text-sub);
  background:var(--paper);border:1px solid var(--line);
  padding:8px 16px;border-radius:var(--r-pill);
  transition:.16s;white-space:nowrap;
}
.qa-tab:hover{border-color:var(--brand-tint);color:var(--brand-deep);}
.qa-tab.is-active{background:var(--brand);border-color:var(--brand);color:#fff;}
.qa-count{font-size:.85rem;color:var(--text-light);margin-bottom:14px;}

/* ── 목록 카드 ── */
.qa-list{display:grid;gap:11px;}
.qa-card > a{
  display:block;background:var(--paper);
  border:1px solid var(--line);border-radius:var(--r);
  padding:20px 22px;transition:.2s var(--ease);
}
.qa-card > a:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--brand-tint);}
.qa-card-q{
  font-size:1.03rem;line-height:1.5;margin:9px 0 7px;
  display:flex;gap:8px;align-items:flex-start;
}
.qa-card-q::before{content:'Q';flex:0 0 auto;color:var(--brand);font-weight:800;}
.qa-card-a{
  color:var(--text-sub);font-size:.9rem;line-height:1.65;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}

/* ── 카테고리 배지 ── */
.qa-badge{
  display:inline-block;font-size:.75rem;font-weight:700;
  padding:3px 10px;border-radius:var(--r-pill);
}
.qa-badge--start{color:var(--c-start);background:var(--c-start-bg);}
.qa-badge--income{color:var(--c-income);background:var(--c-income-bg);}
.qa-badge--vat{color:var(--c-vat);background:var(--c-vat-bg);}
.qa-badge--transfer{color:var(--c-transfer);background:var(--c-transfer-bg);}
.qa-badge--gift{color:var(--c-gift);background:var(--c-gift-bg);}
.qa-badge--corp{color:var(--c-corp);background:var(--c-corp-bg);}
.qa-badge--fin{color:var(--c-fin);background:var(--c-fin-bg);}

/* ── 더보기 ── */
.qa-more-wrap{text-align:center;margin-top:26px;}
.qa-empty{color:var(--text-light);font-size:.92rem;padding:30px 0;}

/* ── 안내 박스 ── */
.qa-hint{
  margin-top:44px;text-align:center;
  background:var(--cream);border:1px dashed var(--line);
  border-radius:var(--r);padding:30px 24px;
}
.qa-hint strong{display:block;color:var(--ink);font-size:1.05rem;margin-bottom:6px;}
.qa-hint p{color:var(--text-sub);font-size:.92rem;margin-bottom:16px;}

/* ── 페이지 넘김 ── */
.qa-pager{display:flex;justify-content:center;gap:6px;margin-top:30px;flex-wrap:wrap;}
.qa-pager .page-numbers{
  display:inline-block;min-width:38px;text-align:center;
  padding:8px 12px;border-radius:var(--r-sm);
  border:1px solid var(--line);font-size:.9rem;color:var(--text-sub);
}
.qa-pager .page-numbers.current{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:700;}
.qa-pager a.page-numbers:hover{border-color:var(--brand-tint);color:var(--brand-deep);}

/* ── 검색 결과 없음 / 404 ── */
.qa-noresult{text-align:center;padding:50px 20px;}
.nr-emoji{font-size:2.6rem;margin-bottom:14px;}
.qa-noresult h1,.qa-noresult h2{font-size:1.3rem;margin-bottom:10px;}
.qa-noresult p{color:var(--text-sub);font-size:.95rem;}
.nr-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:24px;}

/* ══════════════════════════════════════════════════════════
   상세 페이지
   ══════════════════════════════════════════════════════════ */
.qa-single{padding-block:14px 70px;}
.qa-head{padding-bottom:22px;border-bottom:1px solid var(--line-soft);margin-bottom:26px;}
.qa-title{
  font-size:clamp(1.4rem,3.8vw,1.95rem);line-height:1.42;
  margin:12px 0 10px;
  display:flex;gap:11px;align-items:flex-start;
}
.qa-title::before{content:'Q';flex:0 0 auto;color:var(--brand);font-weight:800;}
.qa-meta{font-size:.83rem;color:var(--text-light);}

/* 한 줄 요약 */
.qa-summary{
  background:var(--sage-soft);border-left:3px solid var(--sage);
  border-radius:0 var(--r-sm) var(--r-sm) 0;
  padding:16px 20px;margin-bottom:30px;
}
.qa-summary-label{
  display:block;font-size:.75rem;font-weight:800;
  color:var(--sage-deep);letter-spacing:.04em;margin-bottom:5px;
}
.qa-summary p{color:var(--ink);font-size:1rem;font-weight:600;line-height:1.6;}

/* 본문 — 서식은 전부 여기서 결정됩니다 */
.qa-body{font-size:1.02rem;line-height:1.85;color:var(--text);}
.qa-body p{margin-bottom:20px;}
.qa-body h3{
  font-size:1.14rem;margin:34px 0 12px;padding-left:12px;
  border-left:3px solid var(--brand);
}
.qa-body .qa-ul{margin:0 0 20px;padding-left:2px;}
.qa-body .qa-ul li{
  position:relative;padding-left:18px;margin-bottom:8px;
}
.qa-body .qa-ul li::before{
  content:'';position:absolute;left:2px;top:.72em;
  width:5px;height:5px;border-radius:50%;background:var(--brand-tint);
}
.qa-body blockquote{
  background:var(--cream);border:1px solid var(--line);
  border-radius:var(--r-sm);padding:16px 20px;margin:0 0 22px;
  color:var(--text-sub);font-size:.96rem;
}
.qa-body strong{color:var(--ink);font-weight:700;}
.qa-body a{color:var(--brand-deep);text-decoration:underline;}

.qa-consult{margin-top:34px;}

/* 관련 글 */
.qa-related{margin-top:44px;padding-top:30px;border-top:1px solid var(--line-soft);}
.qa-related h2{font-size:1.08rem;margin-bottom:14px;}
.qa-related ul{display:grid;gap:2px;}
.qa-related li a{
  display:block;padding:11px 4px;font-size:.95rem;color:var(--text);
  border-bottom:1px solid var(--line-soft);transition:color .16s;
}
.qa-related li a::before{content:'Q ';color:var(--brand);font-weight:700;}
.qa-related li a:hover{color:var(--brand-deep);}
.qa-related-all{
  display:inline-block;margin-top:16px;
  font-size:.88rem;font-weight:700;color:var(--brand-deep);
}

@media(max-width:600px){
  .qa-card > a{padding:17px 18px;}
  .qa-single{padding-block:8px 48px;}
}
