/* ideas.css — idea 卡片页。

   版面上只有一条主张：**推导在上，原帖在下，两层视觉上必须分得开**。
   上层是我们的分析（白底、正常字号），下层是别人的话（沉底色、
   左侧一道竖线，像引文一样）。混成一片的话，读者分不清哪句是谁说的。 */

.how{max-width:78ch;padding:20px 0 4px}
.lede{font-size:15.5px;line-height:1.65;margin:0 0 10px}
.lede-sub{font-size:14px;line-height:1.65;color:var(--ink-2);margin:0}

.idea-filters{display:flex;gap:8px;flex-wrap:wrap;padding:12px 0 4px}
.ifg{display:flex;align-items:center;gap:6px;background:var(--card);border:1px solid var(--line);
  border-radius:8px;padding:4px 6px;flex-wrap:wrap}
.ifg b{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);
  font-weight:600;padding:0 4px}
.ifg button{border:0;background:none;font:inherit;font-size:12.5px;color:var(--ink-2);
  padding:4px 9px;border-radius:6px;cursor:pointer;white-space:nowrap}
.ifg button:hover{color:var(--ink);background:var(--sunk)}
.ifg button[aria-pressed="true"]{background:var(--ink);color:var(--card);font-weight:600}
.ifg .n{color:var(--ink-3);font-size:11px;margin-left:5px}
.ifg button[aria-pressed="true"] .n{color:var(--card);opacity:.7}

.idea-list{display:flex;flex-direction:column;gap:16px;padding:6px 0 20px}
.idea{background:var(--card);border:1px solid var(--line);border-radius:10px;
  box-shadow:var(--shadow);overflow:hidden}

/* ── 上层：我们的推导 ─────────────────────────────────── */
.idea-top{padding:16px 18px}
.idea-line{margin:0 0 10px;font-size:16.5px;line-height:1.4;font-weight:600;
  font-family:"Zilla Slab","Noto Sans SC",Georgia,serif}
.idea-tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.idea-tags span{font-size:11px;background:var(--tagbg);color:var(--tagink);
  border-radius:4px;padding:2px 8px;font-weight:600}
.idea-tags .rev{background:var(--money-bg);color:var(--money)}
.idea-tags .none{background:var(--sunk);color:var(--ink-3);font-weight:400}

/* 推理链：每条判断 + 它的出处。出处用等宽，强调它是原文里的词 */
.reading{display:flex;flex-direction:column;gap:3px;margin:0 0 10px}
.reading div{display:flex;gap:10px;font-size:13px;align-items:baseline}
.reading .k{flex:0 0 84px;color:var(--ink-3);font-size:11.5px;font-weight:600}
.reading .v{color:var(--ink);font-weight:600}
.reading .from{color:var(--ink-3);font-size:11.5px;font-family:"JetBrains Mono",monospace}

.unknowns{margin:0;padding:9px 12px;background:var(--sunk);border-radius:7px}
.unknowns b{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);
  display:block;margin-bottom:4px}
.unknowns li{font-size:12.5px;color:var(--ink-2);line-height:1.55;margin-left:16px}

/* ── 下层：原帖 ──────────────────────────────────────────
   沉底色 + 左侧竖线，视觉上明确是「引来的东西」，不是我们写的。 */
.src{background:var(--sunk);border-top:1px solid var(--line-2);padding:12px 18px 13px;
  border-left:3px solid var(--line)}
.src h4{margin:0 0 6px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--ink-3);font-weight:600;font-family:inherit}
.src .t{margin:0 0 5px;font-size:14px;line-height:1.45;font-weight:600}
.src .t a{text-decoration:none}
.src .t a:hover{text-decoration:underline}
.src .ex{margin:0 0 7px;font-size:13px;line-height:1.6;color:var(--ink-2)}
.src .m{display:flex;gap:12px;flex-wrap:wrap;font-size:11.5px;color:var(--ink-3);align-items:center}
.src .m a{color:var(--money);font-weight:600}
.src .money{background:var(--money-bg);color:var(--money);border-radius:4px;padding:1px 7px;
  font-weight:700;font-family:"JetBrains Mono",monospace}
.src .evi{margin:6px 0 0;font-size:12px;color:var(--ink-3);line-height:1.55;
  font-family:"JetBrains Mono",monospace}

/* ── 被挡下的那些 ───────────────────────────────────────── */
.skipped{border-top:1px solid var(--line);padding:20px 0 40px;max-width:78ch}
.skipped h2{font-size:16px;margin:0 0 8px}
.skipped p{font-size:13.5px;line-height:1.65;color:var(--ink-2);margin:0 0 10px}
.skipped ul{margin:0;padding-left:20px}
.skipped li{font-size:13px;color:var(--ink-2);margin-bottom:4px}
.skipped .n{font-family:"JetBrains Mono",monospace;font-weight:700;color:var(--ink)}

.idea-empty{padding:40px 0;text-align:center;color:var(--ink-3);font-size:14px}

@media (max-width:640px){
  .reading div{flex-wrap:wrap}
  .reading .from{flex:1 0 100%;padding-left:94px}
}
