
:root{
  --bbe-bg:#000000;
  --bbe-header:#d02d33;
  --bbe-text:#efe1e1;
  --bbe-stars:#ffffff;
  --bbe-button:#78181a;
  --bbe-button-hover:#d02d33;
  --bbe-border:#2b2b2b;
}
.bbe-search-form{background:var(--bbe-bg);border:1px solid var(--bbe-border);border-radius:18px;padding:18px;margin:0 0 24px;color:var(--bbe-text)}
.bbe-search-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.bbe-search-field{display:flex;flex-direction:column;gap:6px}
.bbe-search-field-wide{grid-column:span 2}
.bbe-search-field label{color:var(--bbe-header);font-weight:700}
.bbe-search-field input,.bbe-search-field select{width:100%;background:#111;border:1px solid var(--bbe-border);color:var(--bbe-text);border-radius:12px;padding:10px 12px}
.bbe-search-actions{display:flex;gap:10px;align-items:center;margin-top:14px}
.bbe-btn-secondary{background:#222 !important}
.bbe-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.bbe-card{background:var(--bbe-bg);color:var(--bbe-text);border:1px solid var(--bbe-border);border-radius:18px;overflow:hidden;padding:18px;display:flex;flex-direction:column;height:100%}
.bbe-card a{color:var(--bbe-text);text-decoration:none}
.bbe-title a{color:var(--bbe-button)}
.bbe-title a:hover{color:var(--bbe-button-hover)}
.bbe-title{margin:.85rem 0 0;color:var(--bbe-button);line-height:1.25;font-size:1.1rem}
.bbe-cover-wrap{display:block;aspect-ratio:2 / 3;overflow:hidden;border-radius:12px;background:#111}
.bbe-cover{width:100%;height:100%;object-fit:cover;display:block}
.bbe-card-body{display:flex;flex-direction:column;gap:12px;flex:1}
.bbe-author{opacity:.85;margin-bottom:2px}
.bbe-ratings>div{margin:4px 0;color:var(--bbe-text)}
.bbe-ratings strong{color:var(--bbe-button)}
.bbe-stars{color:var(--bbe-stars);letter-spacing:.06em}
.bbe-chilies{color:var(--bbe-stars)}
.bbe-summary{color:var(--bbe-text)}
.bbe-link-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.bbe-link-row a,.bbe-member-btn,.bbe-user-rating-form button,.bbe-btn{background:var(--bbe-button);color:#fff;border:0;border-radius:999px;padding:9px 14px;cursor:pointer}
.bbe-link-row a:hover,.bbe-member-btn:hover,.bbe-user-rating-form button:hover,.bbe-member-btn.is-active,.bbe-btn:hover,.bbe-read-more:hover{background:var(--bbe-button-hover);color:#fff}
.bbe-progress-bar{background:#1d1d1d;border-radius:999px;overflow:hidden;height:10px}.bbe-progress-bar span{display:block;height:100%;background:var(--bbe-header)}
.bbe-member-actions,.bbe-user-ratings-wrap{margin-top:18px}
.bbe-user-rating-form label{display:block;margin:8px 0}.bbe-user-rating-form select{min-width:90px}
.bbe-member-message,.bbe-user-rating-message,#bbe-fetch-status{margin-left:10px;font-weight:600}
.bbe-read-more-wrap{margin-top:auto;padding-top:8px}
.bbe-read-more{display:inline-block;background:var(--bbe-button);color:#fff !important;border-radius:999px;padding:9px 14px;text-decoration:none}
.bbe-empty{padding:18px;border:1px solid var(--bbe-border);border-radius:18px;background:var(--bbe-bg);color:var(--bbe-text)}
.bbe-pagination{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:24px}.bbe-pagination .page-numbers{display:inline-block;padding:8px 12px;border-radius:999px;background:#111;color:var(--bbe-text);text-decoration:none;border:1px solid var(--bbe-border)}.bbe-pagination .current{background:var(--bbe-button);color:#fff}
@media (max-width: 991px){.bbe-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.bbe-search-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.bbe-search-field-wide{grid-column:span 3}}
@media (max-width:640px){.bbe-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.bbe-card{padding:14px}.bbe-search-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bbe-search-field-wide{grid-column:span 2}}

.bbe-showcase{display:grid;grid-template-columns:minmax(180px,320px) minmax(0,1fr);gap:32px;align-items:start;background:transparent;color:var(--bbe-text);border:0;border-radius:24px;padding:24px 0}
.bbe-showcase a{color:#efe1e1;text-decoration:none;transition:color .2s ease,border-color .2s ease}
.bbe-showcase-media{width:100%}
.bbe-showcase-cover-link{display:block;max-width:320px}
.bbe-showcase-cover{display:block;width:100%;height:auto;border-radius:16px;box-shadow:0 24px 48px rgba(0,0,0,.58)}
.bbe-showcase-content{display:flex;flex-direction:column;gap:18px;min-width:0}
.bbe-showcase-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px}
.bbe-showcase-meta-row{font-size:1rem;line-height:1.5}
.bbe-showcase-label{color:#d02d33;font-weight:700}
.bbe-showcase-value{color:#efe1e1}
.bbe-showcase-subtitle{font-size:1.05rem;opacity:.9}
.bbe-showcase-section{border-top:1px solid var(--bbe-border);padding-top:16px}
.bbe-showcase-heading{margin:0 0 10px;color:#d02d33;font-size:1.35rem;line-height:1.3}
.bbe-showcase-copy{color:#efe1e1}
.bbe-showcase-copy p{margin:0 0 1em}
@media (max-width:991px){.bbe-showcase{display:grid;grid-template-columns:minmax(180px,320px) minmax(0,1fr);gap:32px;align-items:start;background:transparent;color:var(--bbe-text);border:0;border-radius:24px;padding:24px 0}.bbe-showcase-meta-grid{grid-template-columns:1fr}}
@media (max-width:767px){.bbe-showcase{display:grid;grid-template-columns:minmax(180px,320px) minmax(0,1fr);gap:32px;align-items:start;background:transparent;color:var(--bbe-text);border:0;border-radius:24px;padding:24px 0}.bbe-showcase-cover-link{max-width:220px}.bbe-showcase-meta-grid{grid-template-columns:1fr}.bbe-showcase-media{display:flex;justify-content:center}}

.bbe-showcase-value a{color:#efe1e1;text-decoration:none;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease}
.bbe-showcase-value a:hover{color:#d02d33;border-color:currentColor}
.bbe-link-row{display:flex;flex-wrap:wrap;gap:10px}

.bbe-showcase-heading:hover{color:#d02d33}
.bbe-showcase-copy a,.bbe-showcase-meta-row a,.bbe-showcase-content a{color:#efe1e1}.bbe-showcase-copy a:hover,.bbe-showcase-meta-row a:hover,.bbe-showcase-content a:hover{color:#d02d33}

.bbe-cover-slider-wrap{margin:0 0 32px}
.bbe-slider-heading{color:var(--bbe-header);margin:0 0 14px;font-size:1.4rem;line-height:1.2}
.bbe-cover-slider{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(120px, 1fr);gap:14px;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x proximity}
.bbe-cover-slider::-webkit-scrollbar{height:8px}.bbe-cover-slider::-webkit-scrollbar-thumb{background:var(--bbe-button);border-radius:999px}
.bbe-cover-slide{display:block;scroll-snap-align:start}.bbe-cover-slide img{display:block;width:100%;height:auto;aspect-ratio:2 / 3;object-fit:cover;border-radius:14px;box-shadow:0 12px 24px rgba(0,0,0,.35)}
.bbe-see-more-wrap{display:flex;justify-content:center;margin-top:20px}
@media (max-width:640px){.bbe-cover-slider{grid-auto-columns:minmax(110px, 42vw)}}

.bbe-cover-slider-shell{position:relative;display:flex;align-items:center;gap:10px}
.bbe-slider-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:42px;height:42px;border-radius:999px;border:0;background:#000;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .2s ease, background .2s ease}
.bbe-cover-slider-wrap:hover .bbe-slider-arrow,.bbe-cover-slider-wrap:focus-within .bbe-slider-arrow{opacity:.92}
.bbe-slider-arrow:hover{background:#111}
.bbe-slider-prev{left:8px}
.bbe-slider-next{right:8px}
.bbe-cover-slider{scroll-behavior:smooth;padding-inline:56px}
.bbe-cover-slide{display:block;scroll-snap-align:start}
.bbe-cover-slide img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;border-radius:10px;box-shadow:0 10px 24px rgba(0,0,0,.35)}
@media (max-width:767px){.bbe-slider-arrow{opacity:.92;width:36px;height:36px}.bbe-cover-slider{padding-inline:44px}}


/* v0.7.2 slider fixes */
.bbe-cover-slider-wrap{position:relative;margin:0 0 32px;max-width:100%;overflow:hidden}
.bbe-slider-heading{color:var(--bbe-header);margin:0 0 14px;font-size:1.5rem;line-height:1.2;text-align:center}
.bbe-cover-slider-shell{position:relative;max-width:100%;overflow:hidden;padding:0 40px}
.bbe-cover-slider{display:flex;gap:14px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:0;margin:0;scrollbar-width:none;-ms-overflow-style:none;width:100%}
.bbe-cover-slider::-webkit-scrollbar{display:none}
.bbe-cover-slide{flex:0 0 calc((100% - 28px) / 3);display:block;min-width:0;scroll-snap-align:start}
.bbe-cover-slide img{display:block;width:100%;height:auto;aspect-ratio:2 / 3;object-fit:cover;border-radius:14px;box-shadow:0 12px 24px rgba(0,0,0,.35)}
.bbe-slider-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:44px;height:44px;border-radius:999px;border:0;background:#000;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .2s ease, background .2s ease}
.bbe-cover-slider-wrap:hover .bbe-slider-arrow,.bbe-cover-slider-wrap:focus-within .bbe-slider-arrow{opacity:.92}
.bbe-slider-arrow:hover{background:#111}
.bbe-slider-prev{left:0}.bbe-slider-next{right:0}
.bbe-grid--reviews{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
@media (max-width:991px){.bbe-grid--reviews{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.bbe-cover-slider-shell{padding:0 34px}.bbe-cover-slider{gap:10px}.bbe-cover-slide{flex-basis:calc((100% - 20px) / 3)}.bbe-slider-arrow{opacity:.92;width:38px;height:38px}.bbe-grid--reviews{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:479px){.bbe-grid--reviews{grid-template-columns:1fr 1fr}}


/* v0.7.3 slider refinements */
.bbe-slider-heading{font-size:30px;line-height:1.2;text-align:center;color:var(--bbe-header)}
.bbe-cover-slide{display:flex;flex-direction:column;gap:8px}
.bbe-cover-slide.has-progress{padding-bottom:2px}
.bbe-slider-progress{display:block;width:100%;height:8px;background:rgba(255,255,255,.18);border-radius:999px;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.bbe-slider-progress span{display:block;height:100%;background:var(--bbe-header);border-radius:999px}
@media (max-width:767px){.bbe-slider-heading{font-size:30px}.bbe-slider-progress{height:7px}}

/* Compact archive search/filter UI */
.bbe-search-form{padding:12px 14px;margin-bottom:18px}
.bbe-search-top{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr .8fr;gap:10px;align-items:end}
.bbe-search-field-main{grid-column:auto}
.bbe-search-field{gap:4px}
.bbe-search-field label{font-size:.85rem;line-height:1.1}
.bbe-search-field input,.bbe-search-field select{border-radius:10px;padding:8px 10px;font-size:.92rem}
.bbe-advanced-filters{margin-top:10px}
.bbe-advanced-filters summary{cursor:pointer;color:var(--bbe-header);font-weight:700;display:inline-block;padding:4px 0}
.bbe-search-grid-compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:8px}
.bbe-search-actions{margin-top:10px}
@media (max-width:991px){.bbe-search-top{grid-template-columns:repeat(3,minmax(0,1fr))}.bbe-search-field-main{grid-column:span 3}.bbe-search-grid-compact{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px){.bbe-search-form{padding:10px}.bbe-search-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.bbe-search-field-main{grid-column:span 2}.bbe-search-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.bbe-search-actions{display:grid;grid-template-columns:1fr 1fr}.bbe-search-actions .bbe-btn{text-align:center}}

/* Affiliate disclaimer below outbound book buttons */
.bbe-affiliate-disclaimer {
  margin: 10px 0 0;
  color: #9f9696;
  font-size: 0.85rem;
  line-height: 1.45;
  font-style: italic;
}

/* v0.7.9 mobile showcase optimization: keep desktop layout, stack under 800px */
.bbe-showcase,
.bbe-showcase * {
  box-sizing: border-box;
}
.bbe-showcase {
  max-width: 100%;
  overflow-x: clip;
}
@media (max-width: 800px) {
  .bbe-showcase {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
    gap: 22px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 18px 0 !important;
    overflow-x: hidden !important;
  }
  .bbe-showcase-media {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }
  .bbe-showcase-cover-link {
    width: min(72vw, 300px) !important;
    max-width: 300px !important;
    margin: 0 auto !important;
  }
  .bbe-showcase-cover {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
    border-radius: 16px !important;
    box-shadow: 0 20px 42px rgba(0,0,0,.72) !important;
  }
  .bbe-showcase-content {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
  }
  .bbe-showcase-meta-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
    width: 100% !important;
  }
  .bbe-showcase-meta-row,
  .bbe-showcase-value,
  .bbe-showcase-copy,
  .bbe-showcase-copy p {
    width: 100% !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }
  .bbe-showcase-meta-row {
    font-size: 1rem !important;
    line-height: 1.45 !important;
  }
  .bbe-showcase-label {
    display: inline !important;
  }
  .bbe-showcase-section {
    width: 100% !important;
    max-width: 100% !important;
    padding-top: 14px !important;
  }
  .bbe-showcase-heading {
    font-size: 1.45rem !important;
  }
  .bbe-link-row {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }
  .bbe-link-row a {
    text-align: center !important;
    white-space: normal !important;
  }
}
@media (max-width: 420px) {
  .bbe-showcase-cover-link {
    width: min(78vw, 280px) !important;
  }
  .bbe-link-row {
    grid-template-columns: 1fr !important;
  }
}

/* Featured books shortcode */
.bbe-featured-books { width: 100%; }
.bbe-featured-books .bbe-slider-title {
  text-align: center;
  font-size: 30px;
  color: #d02d33;
  margin: 0 0 1rem;
}
.bbe-grid--featured {
  grid-template-columns: repeat(var(--bbe-featured-columns, 5), minmax(0, 1fr));
}
@media (max-width: 992px) {
  .bbe-grid--featured { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .bbe-grid--featured { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Book Club posts shortcode */
.bbe-book-club-posts{width:100%;margin:0 0 32px;color:var(--bbe-text)}
.bbe-book-club-heading{font-size:30px;line-height:1.2;text-align:center;color:var(--bbe-header);margin:0 0 1rem}
.bbe-book-club-grid{display:grid;grid-template-columns:repeat(var(--bbe-book-club-columns,3),minmax(0,1fr));gap:22px}
.bbe-book-club-card{background:var(--bbe-bg);border:1px solid var(--bbe-border);border-radius:18px;overflow:hidden;color:var(--bbe-text);display:flex;flex-direction:column;height:100%}
.bbe-book-club-cover{display:block;aspect-ratio:16/9;background:#111;overflow:hidden}
.bbe-book-club-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.bbe-book-club-card:hover .bbe-book-club-cover img{transform:scale(1.03)}
.bbe-book-club-body{display:flex;flex-direction:column;gap:10px;padding:16px;flex:1}
.bbe-book-club-date{font-size:.85rem;color:#9f9696}
.bbe-book-club-title{font-size:1.15rem;line-height:1.25;margin:0;color:var(--bbe-button)}
.bbe-book-club-title a{color:var(--bbe-button);text-decoration:none}
.bbe-book-club-title a:hover{color:var(--bbe-button-hover)}
.bbe-book-club-excerpt{margin:0;color:var(--bbe-text);line-height:1.5}
.bbe-book-club-button{margin-top:auto;align-self:flex-start}
@media (max-width:991px){.bbe-book-club-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.bbe-book-club-grid{grid-template-columns:1fr}.bbe-book-club-body{padding:14px}}
