/* =====================================================================
   Finance Story · library.css — ส่วนที่ 3 ห้องสมุด (/library · หน้าเล่ม · หน้าอ่านบท · โหมดหนังสือ)
   ใช้คู่กับ base.css · สไตล์เนื้อหาหนังสืออยู่ใน /assets/css/books/<id>.css (ครอบด้วย .ebk)
   กฎ motion: เข้าฉากครั้งเดียว · ไม่มี pin · prefers-reduced-motion = ปิด effect ทั้งหมด
   ===================================================================== */
body.lib{background:var(--paper)}
.wrap{max-width:1120px;margin:0 auto;padding:0 28px}
.nav .links a.on{color:var(--navy);box-shadow:inset 0 -2px 0 var(--orange);padding-bottom:3px}
/* ปุ่มอารมณ์ตลาด (ชุดเดียวกับหน้าแรก hub-market.css) */
.mkn[hidden]{display:none}
.mkn{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 11px;border-radius:999px;border:1px solid #C9D6E3;background:#fff;
  color:var(--deep,#0E2F49);text-decoration:none;font-size:13.5px;white-space:nowrap;transition:border-color .2s}
.mkn:hover{border-color:var(--orange,#E8891A)}
.mkn-dot{width:8px;height:8px;border-radius:50%;background:#0C9A5C;box-shadow:0 0 0 3px rgba(12,154,92,.18)}
.mkn-l{color:var(--body,#3E4C5A)}
.mkn-long{margin-left:.2em}
.mkn-z{font-weight:500;padding:1px 9px;border-radius:999px;background:#EEF3F8;color:#3E4C5A}
.mkn[data-b="3"] .mkn-z,.mkn[data-b="4"] .mkn-z{background:#FDEFD9;color:#B8620A}
.mkn[data-b="0"] .mkn-z,.mkn[data-b="1"] .mkn-z{background:#E3EEF9;color:#2F6FB5}
.nav .cta{gap:14px}
@media(max-width:640px){
  .mkn{padding:4px 5px 4px 9px;gap:6px;font-size:12.5px}.mkn-long{display:none}.mkn-z{padding:1px 8px}
  .nav{gap:10px;padding-left:14px!important;padding-right:14px!important}.nav .cta{gap:8px}
  .nav .cta .btn{padding:7px 12px!important;font-size:12.5px!important;white-space:nowrap}
}
@media(max-width:380px){.nav{gap:6px}.nav .flogo{width:80px;height:auto}.mkn{gap:4px;padding:3px 4px 3px 7px;font-size:11.5px}.mkn-dot{width:6px;height:6px}.mkn-z{padding:1px 6px}.nav .cta{gap:6px}.nav .cta .btn{padding:6px 9px!important;font-size:11.5px!important}}

/* ---------- ชิ้นส่วนร่วม ---------- */
.bk-hero h1,.bk-body h2,.bk-sibs h2,.lhero h1,.lane h2,.card h3{font-weight:500;color:var(--deep);line-height:1.3}
.crumb{font-size:12.5px;color:var(--muted)}.crumb a{color:var(--navy);text-decoration:none}.crumb a:hover{text-decoration:underline}
.pill{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;padding:3px 11px;border-radius:999px;border:1px solid var(--line);color:var(--body);background:#fff;white-space:nowrap}
.pill.free{background:#E9F6EF;border-color:#BFE3CF;color:#16774A}
.pill.paid{background:#FFF3E2;border-color:#F3D3A6;color:#A55E0B}

/* ================= หน้าเล่ม ================= */
.bk-hero{background:linear-gradient(180deg,#fff 0,var(--paper) 100%);border-bottom:1px solid var(--hair);padding:44px 0 50px;position:relative}
.bk-hero::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--tk,var(--navy))}
.bk-grid{display:grid;grid-template-columns:300px 1fr;gap:54px;align-items:center}
.bk-cover img{width:100%;height:auto;display:block;border-radius:6px 12px 12px 6px;box-shadow:var(--sh-l)}
.bk-info .eyebrow{margin:12px 0 8px}
.bk-info h1{font-size:clamp(28px,3.6vw,42px);margin-bottom:10px}
.bk-info .tag{font-size:16.5px;color:var(--body);max-width:600px}
.bk-info .meta{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 22px}
.bk-info .acts{display:flex;gap:12px;flex-wrap:wrap}
.resume{display:inline-block;margin-top:14px;font-size:14px;color:var(--orange-hi);text-decoration:none}
.resume[hidden]{display:none}
.byline{display:flex;gap:12px;align-items:center;margin-top:26px;padding-top:18px;border-top:1px solid var(--line);font-size:14px;color:var(--body)}
.byline .av{width:44px;height:44px;border-radius:50%;flex:none;background:var(--jo,var(--navy)) center 18%/cover no-repeat,var(--navy)}
.byline b{color:var(--deep);font-weight:400}.byline small{display:block;font-size:12.5px;color:var(--muted)}.byline a{color:var(--navy)}
.bk-body{display:grid;grid-template-columns:1fr 300px;gap:40px;padding-top:44px;padding-bottom:20px}
.bk-toc h2,.bk-sibs h2{font-size:22px;margin-bottom:14px}
.toc{list-style:none;border-top:1px solid var(--line)}
.tocrow{display:grid;grid-template-columns:46px 1fr auto 20px;gap:14px;align-items:center;padding:16px 6px;border-bottom:1px solid var(--line);text-decoration:none;color:inherit;transition:background .2s}
.tocrow:hover{background:#fff}
.tocrow .tn{font-family:var(--mono);font-size:15px;color:var(--orange-hi)}
.tocrow .tt b{display:block;font-weight:400;color:var(--deep);font-size:16.5px;line-height:1.4}
.tocrow .tt small{display:block;font-size:13.5px;color:var(--muted);line-height:1.5;margin-top:2px}
.tocrow .tm{font-size:12.5px;color:var(--muted);white-space:nowrap}
.tocrow .ta{color:var(--navy);transition:transform .2s}.tocrow:hover .ta{transform:translateX(3px)}
.bk-side{display:flex;flex-direction:column;gap:16px}
.side-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px}
.side-card small{font-size:12px;color:var(--muted)}.side-card b{display:block;color:var(--deep);font-weight:500;font-size:16.5px;margin-bottom:4px}
.side-card p{font-size:13.5px;color:var(--body);margin-bottom:10px}
.side-card.how p span{display:block;color:var(--deep);font-weight:400}
.side-card .btn{padding:8px 16px;font-size:13.5px}
.bk-sibs{padding-top:34px;padding-bottom:70px}
.sibs{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sib{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px;text-decoration:none;color:inherit;transition:box-shadow .2s}
.sib:hover{box-shadow:var(--sh-m)}
.sib small{display:block;font-size:12px;color:var(--muted)}.sib b{display:block;color:var(--deep);font-weight:400;font-size:16px;margin:2px 0 8px}
.sib:last-child{text-align:right}
.back{margin-top:18px;font-size:14px}.back a{color:var(--navy)}

/* ================= หน้าอ่านบท (โหมดเว็บ) ================= */
.rd-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding-top:20px;padding-bottom:14px}
.rd-tools{display:flex;align-items:center;gap:14px}
.rd-pos{font-size:13px;color:var(--muted)}.rd-pos b{color:var(--deep);font-weight:500}
.rd-bm{padding:8px 16px!important;font-size:13.5px!important}
.rd-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:44px;align-items:start;padding-bottom:60px}
.rd-side{position:sticky;top:96px;font-size:13.5px}
.rd-book{display:flex;gap:12px;align-items:center;text-decoration:none;color:inherit;padding-bottom:14px;border-bottom:1px solid var(--line)}
.rd-book img{width:54px;height:72px;object-fit:cover;border-radius:3px 6px 6px 3px;box-shadow:var(--sh-m)}
.rd-book small{display:block;font-size:11.5px;color:var(--muted)}.rd-book b{font-weight:400;color:var(--deep);line-height:1.35;display:block}
.rd-toc{list-style:none;margin:10px 0 16px}
.rd-toc a{display:flex;gap:10px;padding:8px 10px;border-radius:10px;color:var(--body);text-decoration:none;line-height:1.45}
.rd-toc a span{font-family:var(--mono);font-size:12px;color:var(--muted);padding-top:2px}
.rd-toc a:hover{background:#fff;color:var(--deep)}
.rd-toc a.on{background:#fff;color:var(--deep);box-shadow:inset 3px 0 0 var(--orange)}
.rd-toc a.on span{color:var(--orange-hi)}
.rd-toc a.done span::after{content:" ✓";color:#16774A}
.rd-tool{display:block;font-size:13px;color:var(--navy);text-decoration:none;padding:10px 12px;border:1px dashed #C6D5E2;border-radius:10px}
.rd-main{max-width:760px}
/* เนื้อหาเล่มแบบไหลต่อกัน: ถอดกรอบหน้า A4 (หัว/ท้ายหน้า เลขหน้า) ออก เหลือเนื้อหาล้วน */
.ebk.flow{background:transparent!important}
.ebk.flow .pg{height:auto!important;min-height:0!important;box-shadow:none!important;margin:0!important;border-radius:0;background:transparent!important;overflow:visible}
.ebk.flow .pg:not(.cover) .inner{padding:30px 0 0!important}
.ebk.flow .pg:not(.cover)+.pg:not(.cover) .inner{border-top:1px solid var(--line);margin-top:34px;padding-top:40px!important}
.ebk.flow .ph,.ebk.flow .ph-rule,.ebk.flow .pf{display:none!important}
.ebk.flow .grow{flex:none}
.ebk.flow .pg.cover{border-radius:20px!important;overflow:hidden!important;min-height:520px!important;background:var(--deep)!important}
.ebk.flow .pg.cover .foot .dots{display:none}
.sumbox{margin:22px 0 4px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:12px;padding:0 18px}
.sumbox summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:14px 0;color:var(--deep);font-weight:400}
.sumbox summary::-webkit-details-marker{display:none}
.sumbox summary small{font-size:12.5px;color:var(--muted)}
.sumbox summary small::after{content:" ▾"}.sumbox[open] summary small::after{content:" ▴"}
.sumbox ul{margin:0 0 14px 18px;font-size:15px;color:var(--body)}.sumbox li{margin-bottom:6px}
.rd-end{margin-top:20px;display:flex;flex-direction:column;gap:18px}
.pdfbox{border:2px dashed #D8C7A5;background:#FFFBF2;border-radius:16px;padding:20px 22px;font-size:14px;color:var(--body)}
.pdfbox b{display:block;color:var(--deep);font-weight:500;font-size:16px;margin-bottom:4px}
.endnext{display:block;background:var(--deep);color:#C9DBEA;border-radius:18px;padding:24px 26px;text-decoration:none;transition:transform .2s,box-shadow .2s}
.endnext:hover{transform:translateY(-2px);box-shadow:var(--sh-l)}
.endnext small{font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;color:var(--sand)}
.endnext b{display:block;color:#fff;font-weight:500;font-size:21px;margin:6px 0 6px;line-height:1.35}
.endnext span{display:block;font-size:14px}
.endnext em{display:inline-block;margin-top:14px;font-style:normal;background:var(--orange);color:#fff;border-radius:999px;padding:8px 18px;font-size:14px}
.endbook{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.endbook>small{color:var(--orange-hi)}.endbook>b{font-size:20px;color:var(--deep);font-weight:500}
.endbook .endnext{align-self:stretch}
.rd-pn{display:flex;justify-content:space-between;gap:10px;font-size:14px;border-top:1px solid var(--line);padding-top:16px}
.rd-pn a{color:var(--navy);text-decoration:none}.rd-pn a:hover{text-decoration:underline}
@media(max-width:980px){
  .rd-grid{grid-template-columns:1fr;gap:0}
  .rd-side{position:static;order:2;margin-top:40px;padding-top:20px;border-top:1px solid var(--line)}
  .bk-body{grid-template-columns:1fr}
}
@media(max-width:760px){
  .wrap{padding:0 16px}
  .bk-hero{padding:26px 0 34px}
  .bk-grid{grid-template-columns:1fr;gap:22px}
  .bk-cover{max-width:200px;margin:0 auto}
  .bk-info .acts .btn{flex:1;justify-content:center;white-space:nowrap;padding:12px 14px;font-size:14px}
  .tocrow{grid-template-columns:34px 1fr 16px}.tocrow .tm{grid-column:2;grid-row:2;margin-top:-6px}
  .sibs{grid-template-columns:1fr}.sib:last-child{text-align:left}
  .rd-tools{width:100%;justify-content:space-between}
  .ebk.flow .pg.cover{min-height:440px!important;border-radius:16px!important}
}

/* ================= โหมดหนังสือ (พลิกหน้า) =================
   ใช้หน้าเดิมของเล่ม (คัดลอกจากเนื้อหาบทนี้ด้วย JS) · จอกว้าง = 2 หน้าคู่ · มือถือ = ทีละหน้า */
body.bkm-on{overflow:hidden}
.bkm{position:fixed;inset:0;z-index:200;background:radial-gradient(ellipse at 50% 40%,#22394F 0,#0B1824 75%);display:flex;flex-direction:column}
.bkm[hidden]{display:none}
.bkm-bar{display:flex;align-items:center;gap:16px;padding:12px 20px;color:#C9DBEA;font-size:13.5px}
.bkm-t{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bkm-c{font-family:var(--mono);font-size:12.5px;color:var(--sand)}
.bkm-x{font:inherit;font-size:13px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:999px;padding:6px 14px;cursor:pointer}
.bkm-x:hover{background:rgba(255,255,255,.18)}
.bkm-stage{flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;perspective:2200px;touch-action:pan-y}
.bkm-spread{display:flex;gap:0;transform-origin:center center;background:transparent!important;box-shadow:0 30px 80px rgba(0,0,0,.5)}
.bkm-spread .pg{width:720px;height:960px!important;flex:none;margin:0!important;border-radius:0!important;box-shadow:none!important}
.bkm-spread .pg:first-child:not(:last-child){box-shadow:inset -18px 0 30px -18px rgba(0,0,0,.25)!important}
.bkm-spread .pg:last-child:not(:first-child){box-shadow:inset 18px 0 30px -18px rgba(0,0,0,.25)!important}
.bkm-spread.turn-n{animation:tn .38s cubic-bezier(.3,.7,.3,1)}
.bkm-spread.turn-p{animation:tp .38s cubic-bezier(.3,.7,.3,1)}
@keyframes tn{from{opacity:.35;transform:var(--sc) rotateY(-9deg) translateX(30px)}to{opacity:1;transform:var(--sc)}}
@keyframes tp{from{opacity:.35;transform:var(--sc) rotateY(9deg) translateX(-30px)}to{opacity:1;transform:var(--sc)}}
.bkm-nav{position:absolute;left:0;right:0;top:50%;display:flex;justify-content:space-between;padding:0 14px;pointer-events:none}
.bkm-nav button{pointer-events:auto;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:rgba(11,24,36,.6);color:#fff;font-size:26px;line-height:1;cursor:pointer}
.bkm-nav button:hover{background:var(--orange);border-color:var(--orange)}
.bkm-nav button:disabled{opacity:.25;cursor:default;background:rgba(11,24,36,.6)}
.bkm-endcard{width:720px;height:960px;flex:none;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:10px;padding:80px;background:var(--deep);color:#C9DBEA;text-decoration:none;font-family:var(--sans)}
.bkm-endcard small{font-family:var(--mono);letter-spacing:.12em;color:var(--sand);font-size:18px}
.bkm-endcard b{color:#fff!important;font-size:52px;font-weight:500;line-height:1.2}
.bkm-endcard span{font-size:24px;color:#C9DBEA!important}
.bkm-endcard em{color:#fff!important}
.bkm-endcard em{font-style:normal;margin-top:20px;background:var(--orange);color:#fff;border-radius:999px;padding:14px 34px;font-size:24px}
/* มือถือ: ทีละหน้า กว้างเต็มจอ เลื่อนอ่านในหน้าได้ */
.bkm.mobile .bkm-stage{align-items:flex-start;overflow-y:auto;padding:0 10px 90px}
.bkm.mobile .bkm-spread{width:100%;transform:none!important;box-shadow:0 14px 40px rgba(0,0,0,.45)}
.bkm.mobile .bkm-spread .pg,.bkm.mobile .bkm-endcard{width:100%;height:auto!important;min-height:calc(100vh - 160px)}
.bkm.mobile .bkm-endcard{padding:40px 26px}.bkm.mobile .bkm-endcard b{font-size:28px}.bkm.mobile .bkm-endcard span{font-size:16px}.bkm.mobile .bkm-endcard em{font-size:16px;padding:10px 22px}.bkm.mobile .bkm-endcard small{font-size:12px}
.bkm.mobile .bkm-nav{top:auto;bottom:16px;justify-content:center;gap:24px}
.bkm.mobile .bkm-t{display:none}
@media (prefers-reduced-motion:reduce){
  .bkm-spread.turn-n,.bkm-spread.turn-p{animation:none}
  .tocrow,.tocrow .ta,.endnext,.sib{transition:none}
}

/* ================= หน้า /library ================= */
.lhero{background:linear-gradient(120deg,var(--night),var(--navy));color:#fff;padding:54px 0 46px;position:relative;overflow:hidden}
.lhero h1{color:#fff!important;font-size:clamp(28px,4.4vw,44px);margin:10px 0 10px}
.lhero h1 em{font-style:normal;color:var(--orange)}
.lhero p{color:#C9DBEA;max-width:600px}
.lhero .crumb,.lhero .crumb a{color:#8FA8BD}
.goals{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:24px}
.goal{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:14px 16px;color:#fff;text-align:left;font:inherit;cursor:pointer;transition:.2s}
.goal:hover,.goal.on{background:#fff;color:var(--deep)}
.goal.on{box-shadow:0 0 0 3px var(--orange)}
.goal small{display:block;font-size:12px;opacity:.75;margin-top:2px}
.goal .gk{font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:var(--sand)}
.goal.on .gk,.goal:hover .gk{color:var(--orange-hi)}
.roadbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:34px 0 18px;font-size:13.5px;color:var(--muted)}
.roadbar b{color:var(--deep);font-weight:400}
.xall{font:inherit;font-size:13.5px;background:#fff;border:1px solid #C6D5E2;color:var(--navy);border-radius:999px;padding:6px 16px;cursor:pointer}
.xall:hover{border-color:var(--orange)}
.lane{scroll-margin-top:96px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px 22px 14px;margin-bottom:18px;transition:opacity .3s,box-shadow .3s}
.lane.dim{opacity:.38}
.lane.hl{box-shadow:0 0 0 2px var(--orange),var(--sh-m)}
.lane .lh{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:flex-start;margin-bottom:16px}
.lane .lh .tt{display:flex;gap:14px;align-items:center}
.lane .lh .lt{width:44px;height:44px;border-radius:12px;color:#fff;font-family:var(--mono);font-size:20px;display:grid;place-items:center;flex:none}
.lane h2{font-size:21px}
.lane .lh p{font-size:13.5px;color:var(--muted)}
.lane .tool{font-size:13px;color:var(--navy);text-decoration:none;border:1px solid #C6D5E2;border-radius:999px;padding:6px 14px;white-space:nowrap}
.steps{display:flex;overflow-x:auto;padding:12px 2px 8px;scrollbar-width:thin}
.step{flex:0 0 150px;position:relative;padding-right:18px;text-decoration:none;color:inherit}
.step::after{content:"";position:absolute;top:22px;left:44px;right:0;height:2px;background:repeating-linear-gradient(90deg,#CFC6B4 0 6px,transparent 6px 11px)}
.step:last-child::after{display:none}
.step .dot{width:44px;height:44px;border-radius:50%;border:2px solid;display:grid;place-items:center;font-family:var(--mono);font-size:13px;background:#fff;position:relative;z-index:1}
.step .sn,.step .sm{display:block}
.step .sn{font-size:14px;color:var(--deep);margin-top:8px;line-height:1.35}
.step .sm{font-size:11.5px;color:var(--muted);margin-top:3px}
.step.start .dot{box-shadow:0 0 0 5px rgba(232,137,26,.28)}
.step .flag{position:absolute;top:-10px;left:30px;z-index:2;background:var(--orange);color:#fff;font-size:10.5px;padding:1px 8px;border-radius:999px;white-space:nowrap}
.step:hover .sn{color:var(--orange-hi)}
.more{margin-top:10px;border-top:1px dashed var(--line)}
.more summary{list-style:none;cursor:pointer;display:flex;justify-content:center;align-items:center;gap:8px;padding:12px 0 4px;font-size:14px;color:var(--navy)}
.more summary::-webkit-details-marker{display:none}
.more summary:hover{color:var(--orange-hi)}
.more summary .ar{display:inline-block;transition:transform .25s}
.more[open] summary .ar{transform:rotate(180deg)}
.more summary .c{display:none}.more[open] summary .o{display:none}.more[open] summary .c{display:inline}
.more .grid{display:grid;padding:14px 0 6px;gap:14px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.more[open] .grid{animation:dd .35s cubic-bezier(.16,.9,.24,1)}
@keyframes dd{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:14px;display:grid;grid-template-columns:72px 1fr;gap:12px;text-decoration:none;color:inherit;transition:box-shadow .2s,transform .2s}
.card:hover{box-shadow:var(--sh-m);transform:translateY(-2px)}
.card h3{font-size:15.5px;margin-bottom:3px}
.card p{font-size:13px;color:var(--body);line-height:1.55;margin-bottom:8px}
.card .meta{display:flex;gap:6px;flex-wrap:wrap}
.card .pill.door{background:var(--navy);border-color:var(--navy);color:#fff}
.card .cv{aspect-ratio:3/4;border-radius:4px 8px 8px 4px;background-size:cover;background-position:center;box-shadow:0 8px 18px rgba(9,34,53,.18)}
.less{display:block;margin:4px auto 0;font:inherit;font-size:13.5px;color:var(--navy);background:none;border:none;cursor:pointer;padding:8px}
.legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12.5px;color:var(--muted);margin:6px 0 60px}
@media(max-width:860px){.goals{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.more .grid{grid-template-columns:1fr;gap:10px}.card{grid-template-columns:54px 1fr;padding:11px}}
@media (prefers-reduced-motion:reduce){.more[open] .grid{animation:none}.more summary .ar,.card,.lane,.goal{transition:none}}
/* ---------- ท้ายบท: สิทธิ์ลูกค้า / เล่มขาย ---------- */
.pdfbox a{color:var(--navy)}
.pdfbox .todo{display:block;margin-top:8px;font-size:12.5px;color:#A58A55}
.ebk.flow .pg.teaser{position:relative;max-height:340px;overflow:hidden!important}
.ebk.flow .pg.teaser::after{content:"";position:absolute;left:0;right:0;bottom:0;height:140px;background:linear-gradient(rgba(251,248,242,0),var(--paper))}
.lockcard{background:#fff;border:1px solid var(--line);border-top:4px solid var(--orange);border-radius:18px;padding:24px 26px;box-shadow:var(--sh-m)}
.lockcard>b{display:block;color:var(--deep);font-size:19px;font-weight:500;margin-bottom:6px}
.lockcard p{font-size:14.5px;color:var(--body);margin-bottom:16px}
.lk-acts{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.lockcard small{display:block;font-size:13px;color:var(--muted);padding-top:12px;border-top:1px solid var(--hair)}
.lockcard small a{color:var(--navy)}
/* ---------- สมาชิก YouTube: กรอกรหัสประจำเดือน ---------- */
.mform{background:var(--sunk);border-radius:12px;padding:14px 16px;margin:4px 0 14px}
.mform label{display:block;font-size:13.5px;color:var(--deep);margin-bottom:8px}
.mrow{display:flex;gap:8px}
.mform input{flex:1;min-width:0;font:inherit;font-family:var(--mono);font-size:15px;letter-spacing:.06em;text-transform:uppercase;padding:9px 14px;border-radius:999px;border:1px solid #C6D5E2;background:#fff;color:var(--deep)}
.mform input:focus{outline:2px solid var(--orange);outline-offset:1px}
.mform .btn{padding:9px 18px;font-size:14px;white-space:nowrap}
.mform .mmsg{display:block;font-size:12.5px;color:var(--muted);margin-top:7px}
.mform .mmsg.err{color:#B4432E}
.mform .mmsg.ok{color:#16774A}
.membadge{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;background:#E9F6EF;color:#16774A;border:1px solid #BFE3CF;border-radius:999px;padding:3px 12px}
/* ---------- ถาม–ตอบ (คำถามที่บทนี้ตอบ / คำถามที่พบบ่อยของเล่ม) ---------- */
.faq{margin:40px 0 8px;padding-top:30px;border-top:1px solid var(--line)}
.faq h2{font-size:22px;font-weight:500;color:var(--deep);margin:6px 0 14px;line-height:1.35}
.faq-i{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 20px;margin-bottom:12px}
.faq-i h3{font-size:16.5px;font-weight:500;color:var(--deep);line-height:1.45;margin-bottom:6px}
.faq-i p{font-size:15px;color:var(--body);line-height:1.75}
.faq-i p a,.faq-more{color:var(--navy)}
.faq-more{display:inline-block;margin-top:8px;font-size:13.5px;text-decoration:none;border-bottom:1px solid #C6D5E2}
.faq-more:hover{color:var(--orange-hi);border-color:var(--orange)}
.bk-faq{padding-top:10px}
.bk-faq .faq{border-top:0;margin-top:20px}
@media(max-width:640px){.faq-i{padding:14px 15px}.faq h2{font-size:20px}}

/* ---------- อภิธานศัพท์ /library/glossary + ปุ่มจากหน้า /library ---------- */
.gl-cta{display:grid;grid-template-columns:1fr auto;gap:2px 16px;align-items:center;margin:22px 0 8px;padding:16px 20px;border:1px solid var(--line);border-radius:var(--r-m);background:#fff;color:var(--ink);text-decoration:none;box-shadow:var(--sh-s)}
.gl-cta b{font-weight:500;color:var(--navy)}.gl-cta span{grid-column:1;font-size:14px;color:var(--muted)}.gl-cta em{grid-row:1/3;grid-column:2;font-style:normal;color:var(--orange-hi);font-weight:500}
.gl-cta:hover{border-color:var(--orange)}
.gl-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.gl-nav a{font-size:14px;padding:5px 12px;border-radius:99px;background:#fff;border:1px solid var(--line);color:var(--navy);text-decoration:none}
.gl-nav a:hover{border-color:var(--orange)}
.gl-wrap{padding-bottom:56px}
.gl-g{margin:30px 0 0;scroll-margin-top:90px}
.gl-g h2{font-size:20px;font-weight:500;color:var(--navy);margin:0 0 10px;padding-bottom:8px;border-bottom:2px solid var(--navy)}
.gl dl{margin:0;display:grid;gap:10px}
.gl-i{background:#fff;border:1px solid var(--line);border-radius:var(--r-m);padding:14px 18px;scroll-margin-top:90px}
.gl-i:target{border-color:var(--orange);box-shadow:0 0 0 3px #E8891A33}
.gl dt{font-weight:500;color:var(--ink);font-size:17px}.gl dt small{font-weight:300;color:var(--muted);font-size:13px;margin-left:6px}
.gl dd{margin:4px 0 0}.gl dd p{margin:0 0 6px;color:var(--body);line-height:1.7}
.gl-more{font-size:13.5px;color:var(--muted)}.gl-more a{color:var(--navy)}
.gl-note{margin-top:28px;font-size:13.5px;color:var(--muted)}
@media(max-width:640px){.gl-cta{grid-template-columns:1fr}.gl-cta em{grid-row:auto;grid-column:1}}

/* ===== ฟอร์ม + กล่องแลก worksheet ท้ายบทเล่มฟรี (2 ต.ค. 2026) · ใช้ร่วมกับหน้า /library/buy ===== */
.wsbox .ws{margin-top:14px;padding-top:14px;border-top:1px dashed #D8C7A5}
.wsbox h4{margin:0 0 4px;font-size:16px;font-weight:500;color:#1E8449}
.wsbox .ws p{margin:0 0 8px;font-size:14px}
.ff label.f{display:block;font-size:13.5px;color:var(--ink);font-weight:400;margin:10px 0 4px}
.ff label.f em{font-style:normal;color:var(--muted);font-weight:300}
.ff input[type=text],.ff input[type=email]{width:100%;font:inherit;font-size:15px;padding:9px 12px;border:1px solid #D9D3C7;border-radius:10px;background:#fff;color:var(--ink)}
.ff input:focus{outline:2px solid #E8891A55;border-color:var(--orange)}
.ff .bad{outline:2px solid #C0392B88!important}
.ff .row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ff .chips{display:flex;flex-wrap:wrap;gap:6px}.ff .chips label{font-size:13.5px;border:1px solid var(--line);border-radius:99px;padding:4px 11px;cursor:pointer;background:#fff}
.ff .chips input{position:absolute;opacity:0;pointer-events:none}.ff .chips label:has(input:checked){border-color:var(--navy);background:#EEF3F8;color:var(--navy);font-weight:500}
.ff .chips label:has(input:focus-visible){outline:2px solid var(--orange)}
.ff .cons{display:flex;gap:8px;align-items:flex-start;font-size:13px;margin-top:10px;color:var(--body);line-height:1.5}.ff .cons input{margin-top:3px;flex:none}
.ff .cons input.bad{outline-offset:2px}
.ff .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ff .ws-msg,.ff .o-msg{font-size:13.5px;color:#A0322A;margin-top:8px}.ff .ws-msg:empty,.ff .o-msg:empty{display:none}
.ws-ok{background:#EAF5EE;border:1px solid #BFE0CB;border-radius:12px;padding:14px;color:#1E4D2E;font-size:14.5px;margin-top:14px}
.ws-ok b{color:#1E4D2E;display:block;font-size:16px}
.buy-strip{display:grid;grid-template-columns:1fr auto;gap:2px 16px;align-items:center;margin:10px 0 8px;padding:16px 20px;border-radius:var(--r-m);background:linear-gradient(120deg,#0E2F49,#1F5F7A);color:#fff;text-decoration:none;box-shadow:var(--sh-m)}
.buy-strip b{font-weight:500;color:#F4C26B}.buy-strip span{grid-column:1;font-size:14px;color:#DDE7F0}.buy-strip em{grid-row:1/3;grid-column:2;font-style:normal;font-weight:500;background:var(--orange);border-radius:99px;padding:7px 16px}
.lockcard .lk-why{display:block;font-size:13px;color:var(--body);margin:-6px 0 12px}
.lockcard .lk-why b{display:inline;font-size:inherit;color:var(--orange-hi);font-weight:500;margin:0}
@media(max-width:640px){.ff .row2{grid-template-columns:1fr}.buy-strip{grid-template-columns:1fr}.buy-strip em{grid-row:auto;grid-column:1;justify-self:start;margin-top:8px}}
.bk-buy{margin-top:12px;font-size:14.5px}.bk-buy a{color:var(--orange-hi);font-weight:500;text-decoration:none}.bk-buy a:hover{text-decoration:underline}.bk-buy small{display:block;font-size:12.5px;color:var(--muted)}
.legal{max-width:780px;padding:24px 20px 70px}.legal h1{color:var(--navy);font-weight:600;font-size:clamp(26px,4vw,34px);margin:10px 0 6px}
.legal .lead{color:var(--muted);margin-bottom:18px}.legal h2{color:var(--deep);font-weight:500;font-size:19px;margin:26px 0 6px}
.legal p,.legal li{font-size:15.5px;line-height:1.75;color:var(--body)}.legal ul{padding-left:20px}.legal li{margin:3px 0}.legal b{font-weight:500;color:var(--ink)}
