/* Book finder (books/) — layered on top of ../style.css */
.bf-wrap{max-width:1100px;margin:0 auto;padding:0 2rem 2rem}
.bf-disclosure{max-width:780px;margin:-1.5rem auto 2rem;padding:0 2rem;text-align:center;font-size:12px;color:rgba(255,255,255,0.45);font-weight:600;line-height:1.7}
.bf-disclosure a{color:#2dd4bf}

.bf-controls{position:sticky;top:68px;z-index:50;background:rgba(13,51,51,0.96);backdrop-filter:blur(6px);padding:1rem 0 0.75rem;border-bottom:1px solid rgba(255,255,255,0.07);margin-bottom:1.5rem}
.bf-row{display:flex;gap:0.75rem;flex-wrap:wrap;align-items:center}
.bf-search{flex:1 1 280px;background:rgba(0,0,0,0.25);border:1px solid rgba(255,255,255,0.15);border-radius:999px;padding:0.8rem 1.2rem;color:white;font-family:inherit;font-size:15px;font-weight:600}
.bf-search:focus{outline:none;border-color:#2dd4bf}
.bf-search::placeholder{color:rgba(255,255,255,0.4)}
.bf-select{background:rgba(0,0,0,0.25);border:1px solid rgba(255,255,255,0.15);border-radius:999px;padding:0.75rem 1rem;color:white;font-family:inherit;font-size:14px;font-weight:700;cursor:pointer}
.bf-select option{background:#0a2626}
.bf-toggle{display:flex;align-items:center;gap:0.45rem;font-size:13px;font-weight:800;color:rgba(255,255,255,0.7);cursor:pointer;user-select:none}
.bf-toggle input{accent-color:#2dd4bf;width:16px;height:16px}

.bf-chips{display:flex;gap:0.5rem;flex-wrap:wrap;margin-top:0.85rem}
.bf-chip{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.14);color:rgba(255,255,255,0.75);border-radius:999px;padding:0.4rem 0.9rem;font-family:inherit;font-size:12px;font-weight:800;cursor:pointer;transition:all 0.15s}
.bf-chip:hover{border-color:rgba(45,212,191,0.5);color:white}
.bf-chip.on{background:linear-gradient(135deg,#2dd4bf,#818cf8);border-color:transparent;color:white}

.bf-count{font-size:13px;font-weight:700;color:rgba(255,255,255,0.5);margin:0 0 1rem}
.bf-cat-intro{max-width:760px;color:rgba(255,255,255,0.7);font-size:15px;line-height:1.8;font-weight:600;margin:0 0 1.5rem}

.bf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.1rem}
.bf-card{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:border-color 0.2s,transform 0.2s}
.bf-card:hover{border-color:rgba(45,212,191,0.4);transform:translateY(-3px)}
.bf-card.filmed{border-color:rgba(45,212,191,0.28)}
.bf-cover{height:150px;display:flex;align-items:center;justify-content:center;padding:1rem;text-align:center;position:relative}
.bf-cover-title{font-family:'Lora',serif;font-weight:700;font-size:17px;color:white;line-height:1.25;text-shadow:0 2px 8px rgba(0,0,0,0.35)}
.bf-badge{position:absolute;top:10px;left:10px;background:rgba(10,38,38,0.85);border:1px solid rgba(45,212,191,0.5);color:#2dd4bf;font-size:10px;font-weight:900;letter-spacing:0.06em;text-transform:uppercase;padding:0.3rem 0.6rem;border-radius:999px}
.bf-body{padding:1rem 1.1rem 1.1rem;display:flex;flex-direction:column;gap:0.45rem;flex:1}
.bf-title{font-weight:900;font-size:15px;color:white;line-height:1.3}
.bf-author{font-size:12px;color:rgba(255,255,255,0.55);font-weight:700}
.bf-grade{font-size:11px;font-weight:800;color:#2dd4bf;letter-spacing:0.04em;text-transform:uppercase}
.bf-love{font-family:'Lora',serif;font-style:italic;font-size:13px;color:rgba(255,255,255,0.78);line-height:1.6}
.bf-btns{display:flex;flex-direction:column;gap:0.45rem;margin-top:auto;padding-top:0.6rem}
.bf-btn{display:block;text-align:center;text-decoration:none;font-weight:800;font-size:13px;padding:0.6rem 0.8rem;border-radius:999px;transition:transform 0.15s}
.bf-btn:hover{transform:translateY(-1px)}
.bf-btn-shop{background:linear-gradient(135deg,#2dd4bf,#818cf8);color:white;text-shadow:0 1px 2px rgba(0,0,0,0.18)}
.bf-buy{display:grid;grid-template-columns:1fr 1fr;gap:0.45rem}
.bf-buy .bf-btn:only-child{grid-column:1/-1}
.bf-btn-amz{background:#ffb347;color:#1a1a1a}
.bf-btn-watch{background:rgba(255,255,255,0.1);color:white}
.bf-btn-watch::before{content:"▶ "}
.bf-empty{text-align:center;color:rgba(255,255,255,0.55);font-weight:700;padding:3rem 1rem}

.bf-c0{background:linear-gradient(135deg,#0d4f4f,#1a7a7a)}
.bf-c1{background:linear-gradient(135deg,#1e3a8a,#4c1d95)}
.bf-c2{background:linear-gradient(135deg,#5b21b6,#db2777)}
.bf-c3{background:linear-gradient(135deg,#78350f,#b45309)}
.bf-c4{background:linear-gradient(135deg,#064e3b,#1e40af)}
.bf-c5{background:linear-gradient(135deg,#831843,#6d28d9)}
.bf-c6{background:linear-gradient(135deg,#312e81,#0f766e)}
.bf-c7{background:linear-gradient(135deg,#7c2d12,#be185d)}

@media (max-width:760px){
  .bf-wrap{padding:0 1rem 2rem}
  .bf-controls{top:0}
}

/* Covers, indie note, series */
.bf-cover{height:210px}
.bf-img{position:absolute;inset:12px;width:calc(100% - 24px);height:calc(100% - 24px);object-fit:contain;filter:drop-shadow(0 6px 14px rgba(0,0,0,0.45))}
.bf-badge{z-index:2}
.bf-title{margin:0}
.bf-series{font-size:11px;font-weight:800;color:rgba(255,255,255,0.6)}
.bf-indie{font-size:11px;font-weight:700;color:rgba(255,255,255,0.55);text-align:center;margin-top:-0.15rem}
a.bf-chip{text-decoration:none;display:inline-block}
.bf-all{color:#2dd4bf}
@media (max-width:760px){
  .bf-chips{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:0.4rem;scrollbar-width:none}
  .bf-chips::-webkit-scrollbar{display:none}
  .bf-chip{flex:0 0 auto}
}
.bf-controls{position:static}
.bf-cover:has(.bf-img) .bf-cover-title{visibility:hidden}
a.bf-series{text-decoration:none;font-size:11px;font-weight:800;color:#a5b4fc;align-self:flex-start}
a.bf-series:hover{text-decoration:underline}
.bf-cat-select{max-width:240px}
.bf-browse{margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,0.08)}
.bf-browse h2{font-family:'Lora',serif;font-size:22px;color:white;margin:0 0 1.2rem}
.bf-browse-groups{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.4rem}
.bf-browse h3{font-size:12px;font-weight:900;letter-spacing:0.06em;text-transform:uppercase;color:#2dd4bf;margin:0 0 0.5rem}
.bf-browse ul{list-style:none;margin:0;padding:0}
.bf-browse li{margin:0.25rem 0}
.bf-browse a{color:rgba(255,255,255,0.75);text-decoration:none;font-weight:700;font-size:14px}
.bf-browse a:hover{color:white;text-decoration:underline}
.bf-img-yt{inset:24px 10px;width:calc(100% - 20px);height:calc(100% - 48px);border-radius:8px;object-fit:cover}
.bf-author a.bf-author-link{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}

.bf-title a{color:inherit;text-decoration:none}.bf-title a:hover{text-decoration:underline}
.bf-book{max-width:820px;margin:0 auto 2.5rem}
.bf-video{position:relative;width:100%;aspect-ratio:16/9;border-radius:16px;overflow:hidden;margin-bottom:1.5rem;background:#000}
.bf-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.bf-book-row{display:flex;gap:1.5rem;align-items:flex-start}
.bf-book-cover{width:200px;max-width:40%;border-radius:10px;box-shadow:0 6px 20px rgba(0,0,0,0.35)}
.bf-book-info{flex:1;min-width:0}
.bf-book-meta{margin:0.35rem 0;color:rgba(255,255,255,0.8)}
.bf-book-meta a{color:#7dd3fc}
.bf-book .bf-btns{max-width:380px;margin-top:1rem}
.bf-more-title{text-align:center;margin:1rem 0 1.25rem}
@media (max-width:640px){.bf-book-row{flex-direction:column}.bf-book-cover{max-width:60%;align-self:center}}
