/* =========================================================
   JAINA BOOKS — Luxury Library 2026 Theme
   CSS-only redesign. No PHP backend/database logic changes.
   Works with existing index.php, header.php and product pages.
   ========================================================= */

:root{
  --jb-ink:#0f172a;
  --jb-ink-2:#1e293b;
  --jb-blue:#1d4ed8;
  --jb-gold:#d4af37;
  --jb-gold-2:#f4c95d;
  --jb-ivory:#faf8f3;
  --jb-paper:#ffffff;
  --jb-soft:#f3efe6;
  --jb-border:#e7decf;
  --jb-muted:#64748b;
  --jb-danger:#b91c1c;
  --jb-success:#15803d;
  --jb-radius:18px;
  --jb-radius-sm:12px;
  --jb-shadow:0 14px 40px rgba(15,23,42,.10);
  --jb-shadow-soft:0 8px 24px rgba(15,23,42,.07);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  background:linear-gradient(180deg,#fffdf8 0%,var(--jb-ivory) 360px,var(--jb-ivory) 100%) !important;
  color:var(--jb-ink-2) !important;
  font-family:"DM Sans",Arial,sans-serif !important;
  margin:0 !important;
}
a{color:var(--jb-blue);transition:.2s ease}
a:hover{color:var(--jb-gold);text-decoration:none !important}
.container{max-width:1240px;width:100%}

/* ---------- Header ---------- */
#header.type_6{
  background:rgba(255,255,255,.94) !important;
  border-bottom:1px solid rgba(212,175,55,.28) !important;
  box-shadow:0 8px 28px rgba(15,23,42,.06) !important;
  position:relative;
  z-index:50;
}
#header .bottom_part{
  background:linear-gradient(180deg,#ffffff 0%,#fffaf0 100%) !important;
  padding:14px 0 12px !important;
}
#header .main_header_row{
  display:flex !important;
  align-items:center !important;
  gap:18px !important;
}
#header .logo{
  display:inline-flex !important;
  align-items:center !important;
  background:#fff !important;
  border:1px solid var(--jb-border) !important;
  border-radius:16px !important;
  padding:8px 12px !important;
  box-shadow:var(--jb-shadow-soft) !important;
}
#header .logo img{
  width:180px !important;
  height:auto !important;
  max-height:64px !important;
  object-fit:contain !important;
}

/* Search */
#header form.search{
  display:flex !important;
  align-items:center !important;
  width:100% !important;
  background:#fff !important;
  border:2px solid rgba(212,175,55,.55) !important;
  border-radius:999px !important;
  overflow:hidden !important;
  box-shadow:0 10px 30px rgba(15,23,42,.08) !important;
}
#header form.search input[type="text"],
#testinput,#authinput{
  height:48px !important;
  border:0 !important;
  border-right:1px solid #eee3d1 !important;
  padding:0 18px !important;
  font-size:15px !important;
  color:var(--jb-ink) !important;
  background:#fff !important;
  outline:none !important;
}
#header form.search input::placeholder{color:#94a3b8 !important}
#srchbtn,
#header form.search button{
  height:48px !important;
  background:linear-gradient(135deg,var(--jb-ink),#1e3a8a) !important;
  color:#fff !important;
  border:0 !important;
  min-width:86px !important;
  border-radius:0 !important;
}
#srchbtn:before{font-size:20px !important}

/* Login/register/cart buttons */
#header .button_dark_grey,
#header a.info{
  background:#fff !important;
  color:var(--jb-ink) !important;
  border:1px solid var(--jb-border) !important;
  border-radius:999px !important;
  padding:10px 14px !important;
  margin:3px !important;
  box-shadow:0 6px 18px rgba(15,23,42,.06) !important;
  font-weight:700 !important;
  font-size:13px !important;
}
#header .button_dark_grey:hover,
#header a.info:hover{
  background:var(--jb-ink) !important;
  color:#fff !important;
  border-color:var(--jb-ink) !important;
}
#header #cnt{background:linear-gradient(135deg,var(--jb-gold),var(--jb-gold-2)) !important;color:var(--jb-ink) !important;border:0 !important}

/* Navigation */
#main_navigation_wrap{
  background:var(--jb-ink) !important;
  border-top:1px solid rgba(212,175,55,.35) !important;
  border-bottom:3px solid var(--jb-gold) !important;
}
#main_navigation_wrap .sticky_inner.type_2{background:transparent !important}
.main_navigation > ul{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:4px !important;
  margin:0 !important;
  padding:0 !important;
}
.main_navigation > ul > li > a{
  color:#fff !important;
  font-weight:700 !important;
  font-size:14px !important;
  padding:15px 18px !important;
  border-radius:12px !important;
  margin:6px 0 !important;
}
.main_navigation > ul > li.current > a,
.main_navigation > ul > li > a:hover{
  background:rgba(212,175,55,.18) !important;
  color:var(--jb-gold-2) !important;
}
.theme_menu,
.mega_menu,
.submenu{
  border-radius:16px !important;
  overflow:hidden !important;
  border:1px solid var(--jb-border) !important;
  box-shadow:var(--jb-shadow) !important;
}
.theme_menu li a{font-size:13px !important;line-height:1.45 !important}

/* ---------- Home page ---------- */
.page_wrapper,.secondary_page_wrapper{background:transparent !important;padding-top:20px !important}
h1.botm,h2.botm,.botm{
  color:var(--jb-ink) !important;
  font-family:"Playfair Display",Georgia,serif !important;
  font-size:28px !important;
  font-weight:800 !important;
  border:0 !important;
  margin:28px 0 16px !important;
  padding:0 !important;
}
h1.botm:after,h2.botm:after{
  content:"";display:block;width:76px;height:4px;margin-top:8px;border-radius:4px;
  background:linear-gradient(90deg,var(--jb-gold),var(--jb-ink));
}
.botm small a.btn,
.btn-primary{
  background:var(--jb-ink) !important;
  border:0 !important;
  color:#fff !important;
  border-radius:999px !important;
  padding:9px 16px !important;
}
.range_slides_carousel_wrapper,
.section_offset,
.white_card{
  background:#fff !important;
  border:1px solid var(--jb-border) !important;
  border-radius:var(--jb-radius) !important;
  box-shadow:var(--jb-shadow-soft) !important;
  padding:18px !important;
  margin-bottom:22px !important;
}
.range_slides_item_image,
.product_item{
  background:#fff !important;
  border:1px solid #eee3d1 !important;
  border-radius:16px !important;
  padding:12px !important;
  box-shadow:0 8px 22px rgba(15,23,42,.06) !important;
  transition:transform .25s ease,box-shadow .25s ease !important;
}
.range_slides_item_image:hover,
.product_item:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(15,23,42,.12) !important}
.imghgt,.range_slides_item_image img,.product_item img{
  border-radius:12px !important;
  object-fit:cover !important;
  background:#f8f4ea !important;
}
.text-container,
.product_item .description a{
  color:var(--jb-ink) !important;
  font-weight:700 !important;
  font-size:13px !important;
  line-height:1.45 !important;
}
.label_bestseller,
.product_price b{
  color:var(--jb-ink) !important;
  background:linear-gradient(135deg,#fff5cc,#fde68a) !important;
  border:1px solid rgba(212,175,55,.45) !important;
  border-radius:999px !important;
  padding:6px 10px !important;
  display:inline-block !important;
  font-weight:800 !important;
}
.buttons_row .btn,.addcartnew,.wishnew{
  border-radius:999px !important;
  border:1px solid var(--jb-border) !important;
  background:#fff !important;
  color:var(--jb-ink) !important;
}
.buttons_row .btn:hover,.addcartnew:hover,.wishnew:hover{background:var(--jb-ink) !important;color:#fff !important}

/* ---------- Product page ---------- */
.breadcrumbs{
  background:#fff !important;
  border:1px solid var(--jb-border) !important;
  border-radius:14px !important;
  padding:12px 16px !important;
  box-shadow:var(--jb-shadow-soft) !important;
}
.single_product{
  background:#fff !important;
  border:1px solid var(--jb-border) !important;
  border-radius:26px !important;
  box-shadow:var(--jb-shadow) !important;
  padding:28px !important;
  position:relative !important;
  overflow:hidden !important;
}
.single_product:before{
  content:"";position:absolute;inset:0 0 auto 0;height:5px;
  background:linear-gradient(90deg,var(--jb-ink),var(--jb-gold),var(--jb-blue));
}
.image_preview_container img{
  border-radius:16px !important;
  box-shadow:12px 18px 38px rgba(15,23,42,.18) !important;
}
.jb-badge{
  background:#fffdf6 !important;
  border:1px solid #eadfca !important;
  border-radius:999px !important;
  color:var(--jb-muted) !important;
}
.jb-badge strong{color:var(--jb-ink) !important}
.jb-pub-tag{
  background:linear-gradient(135deg,var(--jb-ink),#334155) !important;
  color:#fff !important;
  border-radius:999px !important;
}
h1.offset_title,.offset_title{
  color:var(--jb-ink) !important;
  font-family:"Playfair Display",Georgia,serif !important;
  letter-spacing:-.02em !important;
}
table.product_info td{border-color:#eee3d1 !important}
table.product_info td:first-child{color:#64748b !important}
.product_price{
  background:linear-gradient(135deg,var(--jb-ink),#1e3a8a) !important;
  border-radius:18px !important;
  box-shadow:0 12px 32px rgba(15,23,42,.16) !important;
}
.product_price .theme_color{color:var(--jb-gold-2) !important}
button#addcart,.button_blue.middle_btn{
  background:linear-gradient(135deg,var(--jb-gold),var(--jb-gold-2)) !important;
  color:var(--jb-ink) !important;
  border:0 !important;
  border-radius:999px !important;
  font-weight:900 !important;
}
button#wishlist,.button_dark_grey.middle_btn{
  border-radius:999px !important;
  border:1px solid var(--jb-ink) !important;
  color:var(--jb-ink) !important;
}
button#wishlist:hover,.button_dark_grey.middle_btn:hover{background:var(--jb-ink) !important;color:#fff !important}
ul.tabs_nav{border-bottom:1px solid var(--jb-border) !important}
ul.tabs_nav li a{border-radius:999px 999px 0 0 !important;color:var(--jb-muted) !important}
ul.tabs_nav li.current a{color:var(--jb-ink) !important;border-bottom:3px solid var(--jb-gold) !important;background:#fff7db !important}
.tab_container,.write-review-content{
  background:#fff !important;
  border:1px solid var(--jb-border) !important;
  border-radius:18px !important;
  box-shadow:var(--jb-shadow-soft) !important;
}
.write-review-content div[itemprop="review"]{
  background:#fffdf6 !important;
  border:1px solid #eadfca !important;
  border-left:4px solid var(--jb-gold) !important;
  border-radius:16px !important;
  box-shadow:0 6px 18px rgba(15,23,42,.04) !important;
}
aside.col-md-3 .section_offset{
  background:#fff !important;
  border:1px solid var(--jb-border) !important;
  border-radius:18px !important;
  box-shadow:var(--jb-shadow-soft) !important;
}
aside.col-md-3 h2.offset_title,aside.col-md-3 h3.offset_title{
  background:linear-gradient(135deg,var(--jb-ink),#334155) !important;
  color:#fff !important;
}

/* ---------- Mobile-first improvements ---------- */
@media(max-width:991px){
  #header .main_header_row{display:block !important;text-align:center !important}
  #header .col-md-3,#header .col-md-6{width:100% !important;margin-bottom:10px !important}
  #header .logo{justify-content:center !important;margin:0 auto 8px !important}
  #header form.search{border-radius:18px !important;display:grid !important;grid-template-columns:1fr !important;overflow:hidden !important}
  #testinput,#authinput,#srchbtn{width:100% !important;border-right:0 !important;border-bottom:1px solid #eee3d1 !important}
  #srchbtn{border-bottom:0 !important;min-width:100% !important}
  .main_navigation > ul{display:flex !important;overflow-x:auto !important;flex-wrap:nowrap !important;white-space:nowrap !important;padding-bottom:4px !important}
  .main_navigation > ul > li > a{padding:12px 14px !important;font-size:13px !important}
  main.col-md-9,aside.col-md-3{width:100% !important;float:none !important}
}
@media(max-width:768px){
  body{font-size:15px !important}
  .container{padding-left:14px !important;padding-right:14px !important}
  h1.botm,h2.botm,.botm{font-size:23px !important}
  .single_product{display:block !important;padding:18px !important;border-radius:20px !important}
  .image_preview_container{display:block !important;text-align:center !important}
  .image_preview_container img{width:170px !important;height:auto !important;max-height:240px !important;margin:0 auto 14px !important}
  .jb-badges{display:grid !important;grid-template-columns:1fr 1fr !important;gap:8px !important}
  .jb-badge{font-size:11px !important;border-radius:12px !important;padding:8px !important}
  h1.offset_title{font-size:22px !important;line-height:1.25 !important;margin-top:14px !important}
  table.product_info td{display:block !important;width:100% !important;padding:6px 0 !important}
  .product_price{padding:14px 16px !important;justify-content:space-between !important}
  .product_price .theme_color{font-size:28px !important}
  .buttons_row{display:grid !important;grid-template-columns:1fr !important;gap:10px !important}
  .buttons_row button,.buttons_row a{width:100% !important;text-align:center !important}
  .range_slides_item_image,.product_item{margin-bottom:14px !important}
  .write-review-content{padding:18px !important}
  aside.col-md-3{margin-top:18px !important}
}
@media(max-width:480px){
  .jb-badges{grid-template-columns:1fr !important}
  #header .button_dark_grey{font-size:12px !important;padding:9px 11px !important}
  .breadcrumbs{font-size:12px !important}
}

/* Optional sticky mobile cart — activated by JS if product price and addcart exist */
.jb-mobile-sticky-cart{
  display:none;
  position:fixed;left:0;right:0;bottom:0;z-index:9999;
  background:#fff;border-top:1px solid var(--jb-border);box-shadow:0 -10px 30px rgba(15,23,42,.14);
  padding:10px 14px;gap:10px;align-items:center;justify-content:space-between;
}
.jb-mobile-sticky-cart .jb-sticky-price{font-weight:900;color:var(--jb-ink);font-size:18px}
.jb-mobile-sticky-cart button{background:linear-gradient(135deg,var(--jb-gold),var(--jb-gold-2));color:var(--jb-ink);border:0;border-radius:999px;padding:12px 18px;font-weight:900}
@media(max-width:768px){body.jb-has-sticky-cart{padding-bottom:74px !important}.jb-mobile-sticky-cart{display:flex}}
/* =====================================================
   JAINABOOKS HEADER CLEAN PATCH
   KEEP ONLY THIS BLOCK
===================================================== */

.jb-topbar{
    background:#0F172A;
    color:#fff;
    padding:8px 0;
    font-size:13px;
}

.jb-topbar .container{
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
}

/* Desktop Cart Fix */

@media(min-width:992px){

    #open_shopping_cart{
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        min-width:170px !important;
        height:52px !important;
        background:#111827 !important;
        border-radius:18px !important;
        border:1px solid rgba(255,255,255,.25) !important;
        color:#fff !important;
    }

    #open_shopping_cart:before,
    #open_shopping_cart:after{
        display:none !important;
        content:none !important;
    }

}

/* Mobile Cleanup */

@media(max-width:768px){

    body{
        overflow-x:hidden !important;
    }

    .bottom_part{
        padding:10px !important;
    }

    .logo{
        text-align:center;
        margin-bottom:10px;
    }

    .logo img{
        max-width:150px !important;
        height:auto !important;
    }

    #authinput{
        display:none !important;
    }

    #testinput{
        width:100% !important;
    }

    /* HIDE YELLOW TEMP MENU BUTTON */

    .jb-mobile-menu-button,
    .jb-mobile-menu-toggle{
        display:none !important;
    }

    /* KEEP ORIGINAL BLUE MENU */

    #main_navigation_wrap{
        background:#0F172A !important;
    }

    .main_navigation{
        display:block !important;
    }

}
/* =====================================================
   OWNER FEEDBACK FIX
   1. Hide duplicate top cart on desktop
   2. Show 5 books per row on desktop instead of 6
   Mobile unchanged
===================================================== */

/* Hide yellow duplicate cart in top header on desktop */
@media(min-width:992px){

  #header .bottom_part .col-md-3 a#cnt{
    display:none !important;
  }

  #header .bottom_part .col-md-3 > div{
    float:none !important;
    text-align:center !important;
  }

  /* Keep only nav My Cart */
  #main_navigation_wrap .nav_item.size_3{
    display:flex !important;
  }
}

/* Desktop: show 5 books instead of 6 */
@media(min-width:992px){

  .range_slides_carousel_wrapper .col-md-2.range_slides_item_image{
    width:20% !important;
    max-width:20% !important;
    flex:0 0 20% !important;
  }

  .range_slides_item_image img,
  .carousel-inner img,
  .imghgt{
    height:230px !important;
    object-fit:contain !important;
  }

  .range_slides_item_image{
    min-height:390px !important;
  }
}

/* Mobile unchanged */
@media(max-width:768px){

  .range_slides_carousel_wrapper .col-md-2.range_slides_item_image{
    width:100% !important;
    max-width:100% !important;
  }
}
/* =====================================================
   DESKTOP: SHOW ONLY 5 BOOKS PER CATEGORY ROW
   Hide 6th and extra books on desktop only
   Mobile unchanged
===================================================== */

@media(min-width:992px){

  .range_slides_carousel_wrapper .carousel-inner .item.active 
  .range_slides_item_image:nth-of-type(n+6){
    display:none !important;
  }

  .range_slides_carousel_wrapper .carousel-inner .item.active 
  .col-md-2.range_slides_item_image{
    width:20% !important;
    max-width:20% !important;
    flex:0 0 20% !important;
  }

  .range_slides_carousel_wrapper .carousel-inner .item.active{
    display:flex !important;
    flex-wrap:nowrap !important;
  }
}

/* Mobile unchanged */
@media(max-width:991px){

  .range_slides_carousel_wrapper .carousel-inner .item.active 
  .range_slides_item_image:nth-of-type(n+6){
    display:block !important;
  }

}