/* 《AI 生活指南》（AI for Life）2026-10-21 新增：对应兄弟目录 阅读-阅读与发芽/网站读书笔记/试排/261020-AI-for-Life-Artifact/ai-for-life.html（概览卡＋“提示词三要素”题图、正文内目录、十二部分；第 2 部分每个用法一张卡：起手交代／往下追问）。
   全部限定在 .ai-for-life-notes 内，类前缀 afl-；小程序样式在 miniprogram/build_reading_notes.py 的 CLASS_STYLES（afl-*）。
   青绿（--green）标“具体背景”、金色（--afl-gold）标“动作和细节”和书中原句；英文（lang="en"）用西文字体。
   防孤字：段落、条目、卡片末尾 4 个字在试排页生成时已包进 .afl-nb，不拆行。 */
.ai-for-life-notes {
  --afl-serif: "Songti SC", "STSong", "Noto Serif SC", "Source Han Serif SC", "SimSun", serif;
  --afl-latin: "Helvetica Neue", Helvetica, Arial, "Noto Sans SC", "PingFang SC", sans-serif;
  --afl-gold: #f2c14e;
  max-width: 44em;
  font-size: 16.5px;
  line-height: 1.9;
}
.ai-for-life-notes [lang="en"],
.ai-for-life-page .reading-profile-facts dd[lang="en"],
.ai-for-life-page .reading-profile-field strong[lang="en"] { font-family: var(--afl-latin); }
.ai-for-life-notes p { margin-bottom: 1.1em; }
.ai-for-life-notes p,
.ai-for-life-notes li,
.ai-for-life-notes dd { text-wrap: pretty; }
.ai-for-life-notes .afl-part-title,
.ai-for-life-notes .afl-subtitle,
.ai-for-life-notes .afl-quote p { text-wrap: balance; }
.ai-for-life-page .afl-nb { white-space: nowrap; }
.ai-for-life-notes .afl-overview-title,
.ai-for-life-page .chapter-prevnext a { word-break: keep-all; overflow-wrap: anywhere; }
@media (min-width: 641px) {
  .ai-for-life-page .chapter-title { word-break: keep-all; overflow-wrap: anywhere; }
}
.ai-for-life-notes strong { color: var(--white); font-weight: 700; }
.ai-for-life-notes .afl-pg { font-size: .8em; color: var(--slate); white-space: nowrap; }

/* ---------- 全书概览（右侧：提示词三要素） ---------- */
.ai-for-life-notes .afl-overview {
  display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 28px; align-items: center;
  padding: 26px 28px; background: var(--light-navy); border: 1px solid var(--lightest-navy); border-radius: 12px;
}
.ai-for-life-notes .afl-kicker { margin: 0 0 6px; font-size: 13px; font-weight: 500; letter-spacing: .18em; color: var(--green); }
.ai-for-life-notes .afl-overview-title { margin: 0 0 14px; font-family: var(--afl-serif); font-size: 21px; font-weight: 900; line-height: 1.45; color: var(--white); }
.ai-for-life-notes .afl-overview-lead { margin: 0; color: var(--lightest-slate); }

.ai-for-life-notes .afl-prompt { margin: 0; padding: 16px 16px 12px; border: 1px solid var(--lightest-navy); border-radius: 10px; background: var(--navy); }
.ai-for-life-notes .afl-prompt-title { margin: 0 0 10px; font-size: 13px; line-height: 1.5; font-weight: 500; color: var(--white); }
.ai-for-life-notes .afl-prompt-bad { margin: 0 0 8px; font-size: 13px; line-height: 1.6; color: var(--slate); }
.ai-for-life-notes .afl-prompt-tag { margin-right: 8px; font-size: 11.5px; letter-spacing: .08em; }
.ai-for-life-notes .afl-prompt-bad del { text-decoration-color: var(--slate); }
.ai-for-life-notes .afl-prompt-good { margin: 0 0 10px; padding: 10px 12px; border: 1px solid var(--lightest-navy); border-radius: 8px; background: var(--light-navy); font-size: 14px; line-height: 1.85; color: var(--white); }
.ai-for-life-notes .afl-prompt-good mark { background: none; color: inherit; padding: 0 1px; border-bottom: 2px solid; }
.ai-for-life-notes .afl-m1 { border-color: var(--green); }
.ai-for-life-notes .afl-m2 { border-color: var(--afl-gold); }
.ai-for-life-notes .afl-m3 { border-bottom-style: dashed !important; border-color: var(--slate); }
.ai-for-life-notes .afl-prompt-key { display: grid; grid-template-columns: 5.4em minmax(0, 1fr); gap: 8px; margin-bottom: 6px; font-size: 12.5px; line-height: 1.55; color: var(--slate); }
.ai-for-life-notes .afl-prompt-key b { font-weight: 500; color: var(--white); justify-self: start; align-self: start; }
.ai-for-life-notes .afl-k1 { box-shadow: inset 0 -2px 0 var(--green); }
.ai-for-life-notes .afl-k2 { box-shadow: inset 0 -2px 0 var(--afl-gold); }
.ai-for-life-notes .afl-k3 { border-bottom: 2px dashed var(--slate); }
.ai-for-life-notes .afl-prompt-note { margin: 8px 0 0; font-size: 11.5px; line-height: 1.55; color: var(--slate); }

.ai-for-life-notes .afl-intro { margin: 24px 0 0; color: var(--light-slate); }
.ai-for-life-notes .afl-intro + .afl-intro { margin-top: 12px; }

/* ---------- 正文内目录 ---------- */
.ai-for-life-notes .afl-toc {
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px;
  margin: 22px 0 0; padding: 18px 0 2px; border-top: 1px solid var(--lightest-navy);
}
.ai-for-life-notes .afl-toc-item {
  display: flex; gap: 8px; align-items: baseline; padding: 7px 10px; border: 1px solid var(--lightest-navy);
  border-radius: 6px; font-size: 14px; line-height: 1.4; color: var(--light-slate); transition: border-color .15s, color .15s;
}
.ai-for-life-notes .afl-toc-no { font-size: 12px; color: var(--green); white-space: nowrap; }
.ai-for-life-notes .afl-toc-item:hover,
.ai-for-life-notes .afl-toc-item:focus-visible { border-color: var(--green); color: var(--white); outline: none; }

/* ---------- 部分 ---------- */
.ai-for-life-notes .afl-part { margin-top: 64px; scroll-margin-top: 24px; }
.ai-for-life-notes .afl-part-head { padding-bottom: 12px; margin: 0 0 18px; border-bottom: 1px solid var(--lightest-navy); }
.ai-for-life-notes .afl-part-no { margin: 0 0 2px; font-size: 13px; letter-spacing: .18em; color: var(--green); }
.ai-for-life-notes .afl-part-title { margin: 0; font-family: var(--afl-serif); font-size: 25px; font-weight: 900; line-height: 1.4; color: var(--white); }
.ai-for-life-notes .afl-subtitle { margin: 34px 0 12px; font-size: 17px; font-weight: 700; color: var(--white); letter-spacing: .04em; }

.ai-for-life-notes .afl-items { list-style: none; display: grid; gap: 12px; margin: 0 0 1.1em; padding: 0; }
.ai-for-life-notes .afl-items li { padding-left: 16px; border-left: 2px solid var(--lightest-navy); }
.ai-for-life-notes .afl-steps { margin: 0 0 1.2em; padding-left: 1.5em; display: grid; gap: 8px; }

.ai-for-life-notes .afl-quote {
  margin: 0 0 1.3em; padding: 4px 0 4px 18px; border-left: 3px solid var(--afl-gold);
  font-family: var(--afl-serif); color: var(--white); line-height: 1.85;
}
.ai-for-life-notes .afl-quote p { margin: 0 0 .4em; }
.ai-for-life-notes .afl-quote .afl-orig { font-size: 14px; line-height: 1.65; color: var(--slate); }
.ai-for-life-notes .afl-cite { display: block; margin-top: 6px; font-style: normal; font-size: 13px; color: var(--slate); }

/* 第 1 章：六个短板 */
.ai-for-life-notes .afl-limits { display: grid; gap: 10px; margin: 0 0 1.4em; }
.ai-for-life-notes .afl-limit { padding: 12px 16px; border: 1px solid var(--lightest-navy); border-radius: 10px; }
.ai-for-life-notes .afl-limit-title { display: block; margin-bottom: 6px; color: var(--white); }

/* 第 2 部分：每个用法一张卡 */
.ai-for-life-notes .afl-uses { display: grid; gap: 12px; margin: 0 0 1.4em; }
.ai-for-life-notes .afl-use { padding: 14px 16px 12px; border: 1px solid var(--lightest-navy); border-radius: 10px; background: var(--light-navy); }
.ai-for-life-notes .afl-use-title { margin: 0 0 8px; font-size: 16px; font-weight: 700; color: var(--white); display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; }
.ai-for-life-notes .afl-use-title .afl-pg { font-weight: 400; }
.ai-for-life-notes .afl-dl { margin: 0; display: grid; grid-template-columns: 4.8em minmax(0, 1fr); gap: 6px 12px; font-size: 15px; line-height: 1.8; }
.ai-for-life-notes .afl-dt { font-size: 12px; line-height: 2.25; letter-spacing: .06em; color: var(--green); }
.ai-for-life-notes .afl-dd { margin: 0; min-width: 0; }

/* 每章末尾的一句话用法 */
.ai-for-life-notes .afl-quick { margin: 0 0 1.2em; padding: 14px 16px; border: 1px dashed var(--lightest-navy); border-radius: 10px; }
.ai-for-life-notes .afl-quick-h { margin: 0 0 8px !important; font-weight: 700; color: var(--white); display: flex; gap: 10px; align-items: baseline; }
.ai-for-life-notes .afl-quick-list { margin: 0; padding-left: 1.2em; display: grid; gap: 6px; font-size: 15px; line-height: 1.8; }

@media (max-width: 900px) {
  .ai-for-life-notes .afl-overview { grid-template-columns: 1fr; }
  .ai-for-life-notes .afl-prompt { max-width: 440px; }
}
@media (max-width: 640px) {
  .ai-for-life-notes { font-size: 16px; }
  .ai-for-life-notes .afl-overview { padding: 20px 18px; gap: 18px; }
  .ai-for-life-notes .afl-toc { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ai-for-life-notes .afl-part-title { font-size: 22px; }
  .ai-for-life-notes .afl-dl { grid-template-columns: 1fr; gap: 0; }
  .ai-for-life-notes .afl-dt { line-height: 1.6; margin-top: 6px; }
}
