/* ===================================================
   CozyBooks UI – FINAL CLEAN CSS (hotfix26)
   Brand Nude Brown: #C7A27C | Hover: #B8946F
   =================================================== */

:root{
  --cozy-nude-brown: #C7A27C;
  --cozy-nude-brown-hover: #B8946F;

  /* Legacy vars (safe fallback if any older rules exist elsewhere) */
  --cozy-brown: #C7A27C;
  --cozy-brown-dark: #B8946F;

  --cozy-cream: #FBF4EE;
  --cozy-shadow: 0 6px 16px rgba(0,0,0,.10);
}

/* Prevent Elementor primary color bleed into CozyBooks UI */
.cozybooks,
.cozybooks-wrap,
.bal-book-wrap{
  --e-global-color-primary: var(--cozy-nude-brown) !important;
}

/* ---------------------------------------------------
   1) Keep the ACTION BOXES (chips) neutral
   (These are the brown bars/boxes behind each action)
   --------------------------------------------------- */

/* Common container resets */
.bal-book-wrap .bal-book-actions-grid .bal-action,
.bal-book-wrap .bal-book-actions-grid .bal-action > a,
.bal-book-wrap .bal-book-actions-grid .bal-action-expander,
.bal-book-wrap .bal-book-actions-grid .bal-action-expander > a,
.bal-book-wrap .bal-book-actions-grid .bal-action-expander > div{
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

/* If the “chip” headers have their own element, keep them neutral too */
.bal-book-wrap .bal-book-actions-grid .bal-action-header,
.bal-book-wrap .bal-book-actions-grid .bal-action-title{
  background: transparent !important;
  background-color: transparent !important;
}

/* ---------------------------------------------------
   2) Buttons ONLY (the actual clickable submit buttons)
   This includes the stubborn "Create List and Add" button:
   <button class="bal-action-btn" ...>
   --------------------------------------------------- */

.bal-book-wrap button.bal-action-btn,
.bal-book-wrap form.bal-add-to-curated-list-form button.bal-action-btn,
.bal-book-wrap .bal-book-actions-grid button[type="submit"],
.bal-book-wrap .bal-book-actions-grid input[type="submit"]{
  background-color: var(--cozy-nude-brown) !important;
  border-color: var(--cozy-nude-brown) !important;
  color: #ffffff !important;

  font-weight: 600 !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

/* Hover */
.bal-book-wrap button.bal-action-btn:hover,
.bal-book-wrap form.bal-add-to-curated-list-form button.bal-action-btn:hover,
.bal-book-wrap .bal-book-actions-grid button[type="submit"]:hover,
.bal-book-wrap .bal-book-actions-grid input[type="submit"]:hover{
  background-color: var(--cozy-nude-brown-hover) !important;
  border-color: var(--cozy-nude-brown-hover) !important;
  color: #ffffff !important;
}

/* ---------------------------------------------------
   3) Button sizing
   --------------------------------------------------- */

/* Default compact size */
.bal-book-wrap button.bal-action-btn,
.bal-book-wrap .bal-book-actions-grid button[type="submit"],
.bal-book-wrap .bal-book-actions-grid input[type="submit"]{
  padding: 6px 10px !important;
  min-height: 30px !important;
  font-size: 12.5px !important;
  line-height: 1.1 !important;
  border-radius: 10px !important;
}

/* Slightly smaller: Create List and Add (scoped to the curated list form) */
.bal-book-wrap form.bal-add-to-curated-list-form button.bal-action-btn{
  padding: 5px 9px !important;
  min-height: 28px !important;
  font-size: 12px !important;
  line-height: 1.05 !important;
  border-radius: 9px !important;
}

/* ---------------------------------------------------
   4) Author pill (if used in markup)
   --------------------------------------------------- */
.cozybooks-author-pill{
  display: inline-flex;
  align-items: center;
  background: var(--cozy-cream) !important;
  color: #6B4B35 !important;
  border: 1px solid rgba(199,162,124,.35) !important;
  padding: 6px 10px !important;
  border-radius: 999px !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

/* ---------------------------------------------------
   5) Reaction stickers (stay pastel)
   --------------------------------------------------- */
.cozybooks-reaction{
  background: transparent !important;
}

.cozybooks-reaction-emoji{
  width: 34px;
  height: 34px;
  border-radius: 14px;
  background: #FFE6EE !important;
  border: 1px solid rgba(199,162,124,.35) !important;
  box-shadow: var(--cozy-shadow);
  font-size: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}


/* Also style the actual author pill used in the plugin markup */
.bal-book-wrap a.bal-author-pill{
  display: inline-flex !important;
  align-items: center !important;
  background: var(--cozy-cream) !important;
  color: #6B4B35 !important;
  border: 1px solid rgba(199,162,124,.35) !important;
  padding: 6px 10px !important;
  border-radius: 999px !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
.bal-book-wrap a.bal-author-pill:hover{
  background: #F7EFE7 !important;
}
.bal-book-wrap a.bal-author-pill .bal-pill-inner{
  color: inherit !important;
}



/* ===================================================
   CozyBooks – Series / "Other books in this series"
   Fix oversized / blurry covers + pink links
   =================================================== */

.bal-series-browser a,
.bal-series-browser a:visited,
.bal-series-browser a:hover,
.bal-series-browser a:active{
  color: #6B4B35;
  text-decoration: none;
}

.bal-series-browser a:hover{
  color: var(--cozy-nude-brown, #C7A27C);
  text-decoration: underline;
}

/* Series grid cards */
.bal-series-grid{
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 18px;
}

.bal-series-card{
  background: #fff;
  border-radius: 18px;
  padding: 14px;
  box-shadow: 0 6px 16px rgba(0,0,0,.06);
}

/* Make every cover the same display size (prevents giant stretched images) */
.bal-series-card img.bal-series-cover,
.bal-series-page img.bal-series-cover{
  width: 100%;
  max-width: 240px;
  height: auto;
  display: block;
  margin: 0 auto;
  border-radius: 16px;
}

/* Ensure covers never exceed container width */
.bal-series-card img,
.bal-series-page img{
  max-width: 100%;
}

/* Book page: "Other books in this series" */
.bal-book-wrap .bal-series-other-list img.bal-book-cover{
  width: 100%;
  max-width: 240px;
  height: auto;
  display: block;
  border-radius: 16px;
}

/* Keep series book list links from turning theme-pink */
.bal-series-page .bal-series-book-link,
.bal-series-page .bal-series-book-link:visited{
  color: #6B4B35 !important;
}

.bal-series-page .bal-series-book-link:hover{
  color: var(--cozy-nude-brown, #C7A27C) !important;
}

/* ---------------------------------------------------
   Series inline mini strip (book page)
   --------------------------------------------------- */
.bal-book-wrap .bal-series-inline-strip{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:10px;
}

.bal-book-wrap .bal-series-inline-item{
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  text-decoration:none;
  color:#6B4B35;
}

.bal-book-wrap .bal-series-inline-thumb{
  width:78px;
  height:110px;
  border-radius:14px;
  overflow:hidden;
  box-shadow: 0 6px 16px rgba(0,0,0,.08);
  border: 1px solid rgba(199,162,124,.25);
  background:#fff;
}

.bal-book-wrap .bal-series-inline-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.bal-book-wrap .bal-series-inline-num{
  margin-top:6px;
  font-size:12px;
  font-weight:700;
  color:#6B4B35;
  background: #FBF4EE;
  border: 1px solid rgba(199,162,124,.25);
  padding:2px 7px;
  border-radius:999px;
}

.bal-book-wrap .bal-series-inline-item.is-current .bal-series-inline-thumb{
  border-color: rgba(199,162,124,.65);
  box-shadow: 0 8px 20px rgba(0,0,0,.12);
}

@media (max-width: 520px){
  .bal-book-wrap .bal-series-inline-thumb{ width:70px; height:100px; }
}


/* ===================================================
   CozyBooks Series UI (A)
   - consistent cover sizing
   - nicer series buttons
   - clamps long titles
   =================================================== */

.bal-series-page{
  max-width: 1100px;
  margin: 0 auto;
  padding: 18px 14px;
}

.bal-series-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}

.bal-series-back a,
.bal-series-back{
  display:inline-flex;
  align-items:center;
  gap:8px;
  text-decoration:none !important;
  padding:6px 10px;
  border-radius:999px;
  background: rgba(251,244,238,.85);
  border:1px solid rgba(199,162,124,.35);
  color:#6B4B35 !important;
  font-weight:600;
}

.bal-series-back a:hover{
  background: rgba(251,244,238,1);
  box-shadow: 0 6px 16px rgba(0,0,0,.08);
}

.bal-series-grid{
  display:grid;
  grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
  gap:18px;
  align-items:start;
}

.bal-series-card{
  background: rgba(251,244,238,.70);
  border: 1px solid rgba(199,162,124,.25);
  border-radius: 22px;
  padding: 14px;
  box-shadow: 0 10px 22px rgba(0,0,0,.06);
  transition: transform .15s ease, box-shadow .15s ease;
}

.bal-series-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(0,0,0,.10);
}

.bal-series-card a{
  text-decoration:none !important;
  color: inherit;
}

.bal-series-cover{
  aspect-ratio: 2 / 3;
  width:100%;
  border-radius: 18px;
  overflow:hidden;
  background: #F5EFE8;
  border: 1px solid rgba(199,162,124,.25);
}

.bal-series-cover img{
  width:100% !important;
  height:100% !important;
  object-fit: cover;
  display:block;
}

.bal-series-cover--placeholder{
  display:flex;
  align-items:center;
  justify-content:center;
}

.bal-series-cover--placeholder:before{
  content:"📘";
  font-size:36px;
  opacity:.55;
}

.bal-series-meta{
  margin-top:10px;
}

.bal-series-booktitle{
  font-weight: 800;
  color:#3F2C22;
  font-size: 15px;
  line-height:1.2;
  display:-webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow:hidden;
  min-height: 36px;
}

.bal-series-booknum{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  font-weight:700;
  line-height:1;
  padding:6px 10px;
  border-radius:999px;
  background: rgba(199,162,124,.20);
  border: 1px solid rgba(199,162,124,.35);
  color:#6f4e33;
}

/* Book page: series button */
.cozybooks-series-view-btn,
a.cozybooks-series-view-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 12px;
  border-radius:999px;
  background: rgba(251,244,238,.85);
  border:1px solid rgba(199,162,124,.35);
  color:#6B4B35 !important;
  font-weight:700;
  font-size: 12.5px;
  text-decoration:none !important;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}

.cozybooks-series-view-btn:hover{
  background: rgba(251,244,238,1);
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(0,0,0,.10);
}

/* Book page: mini strip under the Series line */
.bal-series-strip{
  display:flex;
  gap:10px;
  align-items:flex-end;
  overflow-x:auto;
  padding:8px 0;
  margin-top:8px;
}

.bal-series-strip-item{
  display:block;
  position:relative;
  width:60px;
  flex: 0 0 auto;
  text-decoration:none !important;
}

.bal-series-strip-cover{
  width:60px !important;
  height:90px !important;
  border-radius:14px !important;
  overflow:hidden;
  border: 1px solid rgba(199,162,124,.28);
  box-shadow: 0 10px 18px rgba(0,0,0,.08);
  display:block;
  object-fit: cover;
}

.bal-series-strip-item:hover .bal-series-strip-cover{
  transform: translateY(-2px) scale(1.02);
  transition: transform .15s ease;
}

.bal-series-strip-num{
  position:absolute;
  top:-6px;
  left:-6px;
  width:26px;
  height:26px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
  font-size:12px;
  background: rgba(251,244,238,.95);
  border: 1px solid rgba(199,162,124,.35);
  color:#6B4B35;
}

.bal-series-strip-item.is-current .bal-series-strip-cover{
  outline: 2px solid rgba(199,162,124,.8);
  outline-offset: 2px;
}


/* Align A styles with existing inline-strip classes */
.bal-series-inline-strip{
  display:flex;
  gap:10px;
  align-items:flex-end;
  overflow-x:auto;
  padding:8px 0;
  margin-top:8px;
}
.bal-series-inline-item{
  display:block;
  position:relative;
  width:60px;
  flex:0 0 auto;
  text-decoration:none !important;
}
.bal-series-inline-thumb{
  display:block;
  width:60px;
  height:90px;
  border-radius:14px;
  overflow:hidden;
  border:1px solid rgba(199,162,124,.28);
  box-shadow:0 10px 18px rgba(0,0,0,.08);
  background:#F5EFE8;
}
.bal-series-inline-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.bal-series-inline-thumb--blank:before{
  content:"📘";
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  font-size:26px;
  opacity:.55;
}
.bal-series-inline-item:hover .bal-series-inline-thumb{
  transform: translateY(-2px) scale(1.02);
  transition: transform .15s ease;
}
.bal-series-inline-badge{
  position:absolute;
  top:-6px;
  left:-6px;
  width:26px;
  height:26px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
  font-size:12px;
  background: rgba(251,244,238,.95);
  border: 1px solid rgba(199,162,124,.35);
  color:#6B4B35;
}
.bal-series-inline-item.is-current .bal-series-inline-thumb{
  outline:2px solid rgba(199,162,124,.8);
  outline-offset:2px;
}

/* Carousel nav for series inline strip */
.bal-series-inline-carousel{
  display:flex;
  align-items:center;
  gap:8px;
}
.bal-series-inline-nav{
  width:34px;
  height:34px;
  border-radius:12px;
  border:1px solid rgba(199,162,124,.30);
  background: rgba(251,244,238,.95);
  color:#6B4B35;
  font-weight:800;
  line-height:1;
  cursor:pointer;
}
.bal-series-inline-nav:hover{
  transform: translateY(-1px);
}
.bal-series-inline-nav:disabled{
  opacity:.35;
  cursor:default;
  transform:none;
}
.bal-series-inline-nav:focus{
  outline:2px solid rgba(199,162,124,.55);
  outline-offset:2px;
}


/* Alias: existing "View series" link class */
.cozybooks-series-viewlink{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 12px;
  border-radius:999px;
  background: rgba(251,244,238,.85);
  border:1px solid rgba(199,162,124,.35);
  color:#6B4B35 !important;
  font-weight:700;
  font-size: 12.5px;
  text-decoration:none !important;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.cozybooks-series-viewlink:hover{
  background: rgba(251,244,238,1);
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(0,0,0,.10);
}


/* Series browser: cover element is an <img> (not wrapper) */
.bal-series-card img.bal-series-cover{
  width:100% !important;
  height:auto !important;
  aspect-ratio: 2 / 3;
  object-fit: cover;
  border-radius: 18px;
  display:block;
  background:#F5EFE8;
  border: 1px solid rgba(199,162,124,.25);
}
.bal-series-cover-placeholder{
  width:100%;
  aspect-ratio: 2 / 3;
  border-radius: 18px;
  background:#F5EFE8;
  border: 1px solid rgba(199,162,124,.25);
  display:flex;
  align-items:center;
  justify-content:center;
}
.bal-series-cover-placeholder:before{
  content:"📘";
  font-size:36px;
  opacity:.55;
}
