/* ── CSS Variables ── */
:root {
  --cf-primary:    #FDB827;
  --cf-primary-dk: #c9920a;
  --cf-primary-lt: #fff4d6;
  --cf-on-primary: #3a2800;
  --cf-section:    #fff8ec;
  --cf-border:     #e8d8b0;
  --cf-text:       #2d1f00;
  --cf-muted:      #7a5c20;
  --cf-accent:     #d64a00;
  --cf-bg:         #f5f0e8;
}

body {
  background: var(--cf-bg);
  color: var(--cf-text);
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
}

/* ── Page wrapper（主內容 + 側欄，仿 default-tw 兩欄）── */
.list-page-wrap {
  max-width: 1168px;
  margin: 0 auto;
  padding: 28px 16px 60px;
}
.list-below {
  display: flex;
  gap: 12px;
  align-items: flex-start;
}
.list-main {
  flex: 0 0 820px; max-width: 820px; min-width: 0;
}
.list-side {
  flex: 0 0 336px; max-width: 336px; min-width: 0;
}
@media(max-width: 1023px) {
  .list-below { flex-wrap: wrap; }
  .list-main  { flex: 1 1 100%; max-width: 100%; }
  .list-side  { display: none; }
}

/* ── Breadcrumb ── */
.cf-breadcrumb {
  display: flex;
  align-items: center;
  gap: .4rem;
  font-size: .85rem;
  color: var(--cf-muted);
  margin-bottom: 20px;
  flex-wrap: wrap;
}
.cf-breadcrumb a {
  color: var(--cf-muted);
  text-decoration: none;
}
.cf-breadcrumb a:hover { color: var(--cf-primary-dk); }
.cf-breadcrumb .sep { color: #c8b890; }

/* ── Result meta ── */
.cf-result-meta {
  font-size: .88rem;
  color: var(--cf-muted);
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: .5rem;
  flex-wrap: wrap;
}
.cf-result-meta strong { color: var(--cf-primary-dk); }

/* ── List rows ── */
.cf-list-table {
  background: #fff;
  border: 1px solid var(--cf-border);
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 28px;
}
.cf-list-row {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 14px 16px;
  border-bottom: 1px solid #f0ead8;
  transition: background .15s;
}
.cf-list-row:last-child { border-bottom: none; }
.cf-list-row:hover { background: var(--cf-primary-lt); }

/* 類別 badge（文字） */
.cf-row-badge {
  flex-shrink: 0;
  width: 64px;
  height: 48px;
  border-radius: 10px;
  background: #5b8dd9;
  color: #fff;
  font-size: .82rem;
  font-weight: 900;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  letter-spacing: .02em;
  line-height: 1.25;
  text-align: center;
  word-break: keep-all;
  padding: 2px 8px;
}

/* ── 三大主要類別 ── */
.cf-row-badge--te  { background: #2563eb; color: #fff; }  /* 技術  — 深藍 */
.cf-row-badge--mk  { background: #16a34a; color: #fff; }  /* 市場  — 深綠 */
.cf-row-badge--vp  { background: #7c3aed; color: #fff; }  /* 觀點  — 紫 */

/* ── 舊格式類別 ── */
.cf-row-badge--rb  { background: #e85d8a; color: #fff; }  /* 大型論壇 — 桃色 */
.cf-row-badge--rn  { background: #15803d; color: #fff; }  /* 技術講座 — 深綠 */
.cf-row-badge--etc { background: #64748b; color: #fff; }  /* 其餘舊格式 — 石板灰 */

/* 右側文字 */
.cf-row-body { flex: 1; min-width: 0; }
.cf-row-title {
  font-size: 1.12rem;
  font-weight: 800;
  color: var(--cf-text);
  line-height: 1.45;
  text-decoration: none;
  display: block;
  margin-bottom: 4px;
  transition: color .15s;
}
/* aTit 輸出的是 <a> 標籤，需強制繼承字體大小 */
.cf-row-title a,
.cf-row-title a span {
  font-size: inherit !important;
  font-weight: inherit;
  color: inherit;
  text-decoration: none;
  transition: color .15s;
}
.cf-row-title:hover,
.cf-row-title a:hover { color: var(--cf-primary-dk); }
.cf-row-desc {
  font-size: .83rem;
  color: #5a4020;
  line-height: 1.6;
  margin-bottom: 5px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.cf-row-meta {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  align-items: center;
  font-size: .8rem;
  color: var(--cf-muted);
}
.cf-row-meta i { font-size: .85rem; }

/* ── Empty state ── */
.cf-empty {
  text-align: center;
  padding: 60px 20px;
  color: var(--cf-muted);
}
.cf-empty i { font-size: 3rem; color: var(--cf-border); margin-bottom: 12px; display: block; }
.cf-empty p { font-size: 1rem; }

/* (pagination removed — infinite scroll) */
