/* 성경공부 책 구역 (2026-10-09) — build-books.mjs 가 쓰는 bk- 클래스.
   폭은 px 로 못 박지 않는다: 읽는 단은 화면을 따라 커지고(최대 820px), 그림은 단을 꽉 채운다. */
.bk-wrap{max-width:1200px;margin:0 auto;padding:0 clamp(16px,4vw,32px)}
.bk-narrow{max-width:860px}
.bk-eb{font:700 .82rem/1.3 var(--y2-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--y2-terra);margin:0 0 .7rem}
.bk-eb a{color:inherit;text-decoration:none}
.bk-eb a:hover{text-decoration:underline}
.bk-sub{font-size:1.15rem;color:var(--y2-muted);margin:.2rem 0 1rem}
.bk-anchor{position:relative;top:-90px}

/* 장 쪽 */
.bk-ch{max-width:min(860px,calc(100vw - 32px));margin:0 auto;padding:clamp(28px,5vw,56px) 0 40px}
.bk-chhead h1{margin:.2rem 0 1.4rem}
.bk-ways{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:0 0 28px}
.bk-ways a{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border:1px solid var(--y2-line);border-radius:12px;background:#fff;color:var(--y2-ink);text-decoration:none;transition:border-color .15s,transform .15s}
.bk-ways a:hover{border-color:var(--y2-terra);transform:translateY(-1px)}
.bk-ways svg{width:22px;height:22px;color:var(--y2-terra);margin-bottom:4px}
.bk-ways b{font-size:1rem}
.bk-ways small{color:var(--y2-soft);font-size:.85rem}
.bk-text{font-size:clamp(1.05rem,1rem + .25vw,1.18rem);line-height:1.85;color:var(--y2-text)}
.bk-text p{margin:0 0 1.15em}
.bk-text h2{margin:2.4em 0 .7em}
.bk-verse{margin:1.4em 0;padding:1em 1.2em;background:#fbf7ef;border-left:4px solid var(--y2-gold);border-radius:0 10px 10px 0}
.bk-verse p{margin:0 0 .4em}
.bk-verse p:last-child{margin:0}
.bk-verse b{color:var(--y2-deep);white-space:nowrap}
.bk-table{overflow-x:auto;margin:1.4em 0}
.bk-table table{border-collapse:collapse;width:100%;font-size:.95em;line-height:1.5}
.bk-table th,.bk-table td{border:1px solid var(--y2-line);padding:.55em .7em;text-align:left;vertical-align:top}
.bk-table th{background:#f3ecdf}
.bk-slide,.bk-info{margin:1.8em 0}
.bk-slide img,.bk-info img{display:block;width:100%;height:auto;border-radius:10px;box-shadow:var(--y2-shadow)}
.bk-info{max-width:min(640px,100%);margin-left:auto;margin-right:auto}
.bk-slide figcaption,.bk-info figcaption{font-size:.82rem;color:var(--y2-soft);margin-top:.5em;text-align:center}
.bk-lead{margin-top:0}
.bk-watch{margin:2em 0}
.bk-watch h2{margin:0 0 .7em}
.bk-watch-row{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:760px){.bk-watch-row:has(.bk-yt-v){grid-template-columns:3fr 1fr}}
.bk-yt{position:relative;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#000}
.bk-yt-v{aspect-ratio:9/16;max-width:320px}
.bk-yt iframe,.bk-yt-btn{position:absolute;inset:0;width:100%;height:100%;border:0}
.bk-yt-btn{background-size:cover;background-position:center;cursor:pointer;display:grid;place-items:center}
.bk-yt-btn span{width:68px;height:68px;border-radius:50%;background:rgba(180,83,46,.92);display:grid;place-items:center}
.bk-yt-btn svg{width:34px;height:34px;color:#fff}
.bk-next{margin-top:3em;border-top:1px solid var(--y2-line);padding-top:2em}
.bk-more{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:24px}
.bk-more a{display:grid;grid-template-columns:28px 1fr;column-gap:12px;padding:14px 16px;border-radius:12px;background:var(--y2-deep);color:#e8eee9;text-decoration:none}
.bk-more a:hover{background:var(--y2-deep-2)}
.bk-more svg{width:26px;height:26px;color:var(--y2-gold);grid-row:span 2}
.bk-more b{color:#fff}
.bk-more span{font-size:.88rem;color:#b9c6bf}
.bk-pager{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.bk-pager a{display:block;padding:14px 16px;border:1px solid var(--y2-line);border-radius:12px;text-decoration:none;color:var(--y2-ink);background:#fff}
.bk-pager a.nx{text-align:right}
.bk-pager span{display:block;font-size:.82rem;color:var(--y2-soft)}
.bk-toc{text-align:center;margin-top:18px}
.bk-toc a{color:var(--y2-terra);font-weight:700}

/* 권 쪽 */
.bk-bookhead{background:var(--y2-cream);padding:clamp(32px,6vw,72px) 0}
.bk-bookhead .bk-wrap{display:grid;grid-template-columns:minmax(160px,300px) 1fr;gap:clamp(24px,5vw,56px);align-items:center}
@media(max-width:640px){.bk-bookhead .bk-wrap{grid-template-columns:1fr}.bk-cover{max-width:220px}}
.bk-cover{width:100%;height:auto;border-radius:8px;box-shadow:0 18px 40px rgba(22,20,15,.25)}
.bk-facts{color:var(--y2-soft);margin:0 0 1.2rem}
.bk-btns{display:flex;flex-wrap:wrap;gap:10px}
.bk-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border-radius:999px;background:var(--y2-terra);color:#fff;text-decoration:none;font-weight:700}
.bk-btn:hover{background:var(--y2-terra-d)}
.bk-btn.ln{background:#fff;color:var(--y2-ink);border:1px solid var(--y2-line)}
.bk-btn svg{width:20px;height:20px}
.bk-about{padding:clamp(32px,5vw,64px) 0;background:#fff}
.bk-desc{font-size:1.08rem;line-height:1.8}
.bk-desc p{margin:0 0 .8em}
.bk-chlist{padding:clamp(32px,5vw,64px) 0;background:#fbf7ef}
.bk-chlist ol{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr));gap:10px}
.bk-chlist a{display:grid;grid-template-columns:2.4em 1fr;column-gap:10px;padding:12px 14px;border-radius:10px;background:#fff;border:1px solid var(--y2-line);color:var(--y2-ink);text-decoration:none;height:100%}
.bk-chlist a:hover{border-color:var(--y2-terra)}
.bk-chlist s{text-decoration:none;color:var(--y2-terra);font-weight:700;grid-row:span 2}
.bk-chlist small{color:var(--y2-soft)}

/* 시리즈 · 책 전체 */
.bk-intro{padding:clamp(36px,6vw,80px) 0 clamp(20px,3vw,32px);background:#fbf7ef}
.bk-intro p{font-size:1.08rem;line-height:1.8}
.bk-waysec{padding:8px 0 clamp(24px,4vw,40px);background:#fbf7ef}
.bk-four{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.bk-four div{background:#fff;border:1px solid var(--y2-line);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:4px}
.bk-four svg{width:26px;height:26px;color:var(--y2-terra)}
.bk-four span{color:var(--y2-muted);font-size:.95rem}
.bk-shelf{padding:clamp(32px,5vw,64px) 0;background:#fff}
.bk-shead{max-width:860px;margin-bottom:24px}
.bk-shead h2 a{color:var(--y2-ink);text-decoration:none}
.bk-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:22px}
.bk-card{display:flex;flex-direction:column;gap:4px;color:var(--y2-ink);text-decoration:none}
.bk-card img{width:100%;height:auto;border-radius:8px;box-shadow:var(--y2-shadow);margin-bottom:8px;transition:transform .15s}
.bk-card:hover img{transform:translateY(-3px)}
.bk-cn{font-size:.8rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--y2-terra)}
.bk-card small{color:var(--y2-muted)}
.bk-card em{font-style:normal;color:var(--y2-terra);font-weight:700;margin-top:4px}
.bk-soon{margin-top:24px;color:var(--y2-soft)}

/* 슬라이드 묶음 — 넓은 화면 두 줄, 폰 한 줄 */
.bk-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:14px;margin:1.8em 0}
.bk-gallery .bk-slide{margin:0}

/* 원어 낱말 칩 (2026-10-09) — 누르면 읽어 주기 · 마우스 올리면 뜻 */
.ow{cursor:pointer;border-bottom:1px dotted var(--y2-terra);border-radius:3px;transition:background .15s}
.ow:hover,.ow:focus{background:#f6e7dc;outline:none}
.ow.ow-say{background:#f0d2bf}
.ow-o{font-family:'Noto Serif Hebrew','Noto Sans KR',serif;font-size:1.08em;color:var(--y2-deep);font-weight:600;margin:0 .1em}
.ow-o[lang=he]{font-size:1.2em}
.ow-p{font-size:.78em;color:var(--y2-soft);font-style:italic;white-space:nowrap}
.ow-tip{position:absolute;z-index:80;display:none;max-width:min(340px,calc(100vw - 16px));background:#1c2a24;color:#e8eee9;border-radius:12px;padding:12px 14px;box-shadow:0 12px 30px rgba(0,0,0,.25);font-size:.92rem;line-height:1.45}
.ow-tip-o{font-family:'Noto Serif Hebrew','Noto Sans KR',serif;font-size:1.6rem;color:#fff;margin-bottom:2px}
.ow-tip-p{color:var(--y2-gold);margin-bottom:6px}
.ow-tip-g{color:#fff}
.ow-tip-m{color:#b9c6bf;font-size:.82rem;margin-top:6px}
.ow-tip-h{color:#b9c6bf;font-size:.78rem;margin-top:6px;border-top:1px solid rgba(255,255,255,.15);padding-top:6px}
