/* Recommended Books — uses the theme's colours and type when present. */
.bk{--bk-blue:var(--blue,#2C51F7);--bk-ink:var(--ink,#353535);--bk-ink2:var(--ink-2,#5B5F6A);--bk-line:var(--line,#E4E7EF);--bk-mist:var(--mist,#F5F7FC);--bk-night:var(--night,#0A1238);--bk-r:var(--r-sm,10px)}
.bk [hidden]{display:none!important}
.bk-filters{display:flex;flex-direction:column;gap:12px;margin:0 0 clamp(24px,4vw,40px);padding-bottom:20px;border-bottom:1px solid var(--bk-line)}
.bk-frow{display:flex;align-items:center;gap:8px 12px}
.bk-chips{display:flex;flex-wrap:wrap;gap:8px;min-width:0}
.bk-flabel{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--bk-ink2);min-width:150px}
.bk-chip{font:inherit;font-size:.88rem;padding:.5em 1em;border-radius:999px;border:1.5px solid var(--bk-line);background:#fff;color:var(--bk-ink);cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.bk-chip:hover{border-color:var(--bk-blue);color:var(--bk-blue)}
.bk-chip.on{background:var(--bk-blue);border-color:var(--bk-blue);color:#fff}
.bk-chip:focus-visible{outline:2px solid var(--bk-blue);outline-offset:2px}
.bk-count{margin:4px 0 0;font-size:.9rem;color:var(--bk-ink2)}
.bk-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2.4vw,28px)}
.bk-card{display:grid;grid-template-columns:132px minmax(0,1fr);gap:22px;padding:22px;background:#fff;border:1px solid var(--bk-line);border-radius:var(--r,18px);scroll-margin-top:110px}
.bk-cover{align-self:start}
.bk-cover img{display:block;width:132px;height:198px;object-fit:cover;border-radius:4px;box-shadow:0 10px 24px -12px rgba(10,18,56,.45);background:var(--bk-mist)}
.bk-fallback{width:132px;height:198px;border-radius:4px;background:var(--bk-night);color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:14px 12px;box-sizing:border-box;box-shadow:0 10px 24px -12px rgba(10,18,56,.45);border-top:5px solid #C9A55C}
.bk-ft{font-weight:700;font-size:.92rem;line-height:1.2}
.bk-fa{font-size:.72rem;opacity:.8;line-height:1.3}
.bk-body{display:flex;flex-direction:column;gap:6px;min-width:0}
.bk-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0}
.bk-tags span{font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--bk-blue);background:var(--bk-mist);padding:.3em .6em;border-radius:4px}
.bk-title{margin:4px 0 0;font-size:1.2rem;line-height:1.25;color:var(--bk-night)}
.bk-sub{margin:0;font-size:.88rem;color:var(--bk-ink2);font-style:italic}
.bk-by{margin:0 0 4px;font-size:.88rem;font-weight:600;color:var(--bk-ink2)}
.bk-sum,.bk-why{margin:0;font-size:.95rem;line-height:1.6;color:var(--bk-ink)}
.bk-why{padding:10px 12px;background:var(--bk-mist);border-radius:6px}
.bk-why strong{color:var(--bk-night)}
.bk-note{font-size:.85rem;color:var(--bk-ink2)}
.bk-note summary{cursor:pointer;font-weight:600}
.bk-note p{margin:6px 0 0;line-height:1.55}
.bk-for{margin:0;font-size:.8rem;color:var(--bk-ink2)}
.bk-buy{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:auto;padding-top:10px}
.bk-buy-l{font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--bk-ink2);margin-right:2px}
.bk-buy a{font-size:.85rem;font-weight:700;text-decoration:none;color:var(--bk-blue);border:1.5px solid var(--bk-line);padding:.42em .9em;border-radius:999px;transition:border-color .2s,background .2s,color .2s}
.bk-buy a:hover{background:var(--bk-blue);border-color:var(--bk-blue);color:#fff}
.bk-empty{padding:28px;text-align:center;color:var(--bk-ink2);background:var(--bk-mist);border-radius:var(--r,18px)}
.bk-disclose{margin:28px 0 0;font-size:.82rem;color:var(--bk-ink2)}
@media (max-width:980px){.bk-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){.bk-frow{flex-direction:column;align-items:stretch}.bk-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:none;margin-right:calc(-1 * var(--gut,16px))}.bk-chips::-webkit-scrollbar{display:none}.bk-chip{flex:none}.bk-card{grid-template-columns:minmax(0,1fr);gap:14px;padding:18px}.bk-cover img,.bk-fallback{width:104px;height:156px}.bk-ft{font-size:.8rem}}
