/* 교재 본문 추가 요소 — 출간도서(kbk.css) 위에 얹는 규칙 */
.kbt-text .kbt-h { font-size: 19px; font-weight: 500; line-height: 1.5; color: #111; margin: 36px 0 14px; }
.kbt-text .kbt-h:first-child { margin-top: 0; }
.kbt-text .kbt-h5 { font-size: 17px; font-weight: 500; line-height: 1.6; color: #111; margin: 26px 0 10px; }
.kbt-text strong { font-weight: 500; color: #111; }
.kbt-text .kbt-tw { overflow-x: auto; margin: 0 0 28px; -webkit-overflow-scrolling: touch; }
.kbt-text .kbt-table { width: 100%; border-collapse: collapse; font-size: 15px; line-height: 1.6; color: #222; }
.kbt-text .kbt-table th, .kbt-text .kbt-table td { border: 1px solid #ccc; padding: 8px 10px; text-align: left; vertical-align: top; height: 38px; }
.kbt-text .kbt-table th { background: #f3f3f3; font-weight: 500; color: #111; white-space: nowrap; }
.kbt-text .kbt-table a { color: #222; text-decoration: none; word-break: break-all; overflow-wrap: anywhere; }
.kbt-text .kbt-table td { overflow-wrap: anywhere; }
.kbt-text .kbt-table a:hover { text-decoration: underline; }
.kbt-text .kbt-q { background: #f5f5f5; border-left: 3px solid #888; padding: 12px 16px; font-size: 15px; line-height: 1.6; color: #222; }
.kbt-text .kbt-q span { display: block; font-size: 13px; font-weight: 500; color: #111; margin-bottom: 4px; }
.kbt-text .kbt-rep { font-size: 14px; color: #444; }
.kbt-book .kbk-buy-note { margin-top: 10px; }
.kbt .kbk-bookchip { width: 180px; justify-content: center; box-sizing: border-box; }
.kbt .kbk-tab { justify-content: center; text-align: center; }
.kbt-locked { text-align: center; font-size: 16px; color: #222; padding: 60px 0 0; }
@media (max-width: 768px) {
  .kbt .kbk-bookchip { width: auto; flex: 1 1 0; padding: 0 8px; }
  .kbt-text .kbt-h { font-size: 18px; margin-top: 30px; }
  .kbt-text .kbt-h5 { font-size: 16px; }
  .kbt-text .kbt-table { font-size: 14px; }
  .kbt-text .kbt-table th { white-space: normal; }
}

/* 훈련노트 비공개 미리보기 (가짜 줄을 흐리게) */
.kbt-blur { position: relative; padding: 6px 0 4px; filter: blur(3px); opacity: .55; user-select: none; pointer-events: none; }
.kbt-blur i { display: block; height: 11px; background: #cfcfcf; margin: 0 0 15px; }
.kbt-blur b { display: block; height: 14px; }
.kbt-lock-note { margin-top: 18px; }

/* 표지 줄에서는 출간도서와 같은 크기 */
.kbt .kbk-covers .kbk-bookchip { width: auto; flex: none; padding: 0; justify-content: flex-start; }
@media (max-width: 768px) { .kbt .kbk-covers .kbk-bookchip { width: auto; flex: none; padding: 0; } }
