.textbook-reason-box{
  padding:0;
  background:transparent;
  border:none;
}

.book-puzzle-root{
  margin-top:12px;
  border:1px solid #dfe7ff;
  border-radius:16px;
  background:#f8faff;
  padding:16px;
}
.book-puzzle-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:10px;
}
.book-puzzle-head h4{
  margin:0;
  font-size:1rem;
  color:#2440a8;
}
.book-puzzle-guide{
  font-size:.82rem;
  font-weight:700;
  color:#5c6ac4;
}
.book-puzzle-desc{
  margin:0 0 12px;
  line-height:1.65;
  color:#43506a;
}
.book-step{
  margin-top:12px;
}
.book-step-label{
  font-size:.88rem;
  font-weight:800;
  color:#334155;
  margin-bottom:8px;
}
.book-chip-wrap{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.book-chip{
  border:1px solid #d7e3ff;
  background:#fff;
  color:#2440a8;
  border-radius:14px;
  padding:9px 11px;
  font-size:.84rem;
  font-weight:700;
  cursor:pointer;
  text-align:left;
}
.book-chip.is-active{
  background:#2458ff;
  color:#fff;
  border-color:#2458ff;
}
.book-result-box{
  margin-top:14px;
  padding:12px;
  border:1px solid #dfe7ff;
  border-radius:14px;
  background:#fff;
}
.book-result-label{
  font-size:.82rem;
  font-weight:800;
  color:#2440a8;
  margin-bottom:6px;
}
.book-final-title{
  line-height:1.7;
  color:#172033;
  font-weight:700;
}
.book-apply-btn{
  margin-top:12px;
  width:100%;
  border:0;
  border-radius:12px;
  padding:12px 14px;
  background:#2458ff;
  color:#fff;
  font-weight:800;
  cursor:pointer;
}
.book-copy-notice{
  margin-top:8px;
  font-size:.82rem;
  line-height:1.45;
  color:#2458ff;
  font-weight:700;
}
@media (max-width:760px){
  .book-chip{
    width:100%;
  }
}
