/* ============================================================
   PPH Product Page Theme v2.5  (reference-matched)
   - Flat clean cream card (no gradient pattern)
   - Flat rectangular book, soft floating shadow, overlaps white panel
   - White panel: Description (left) + attributes (right)
   - Full-width page
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700&family=Urbanist:wght@400;500;600;700&display=swap');

body.single-product{ background:#eae6df !important; }

/* ---------- FULL WIDTH: Astra container clamp hatao ---------- */
body.single-product #content .ast-container,
body.single-product .site-content .ast-container,
body.single-product #primary,
body.single-product #main{
  max-width:100% !important; width:100% !important;
  padding-left:0 !important; padding-right:0 !important; margin:0 auto !important;
}

.pph-pp{
  --maroon:#3f1717; --maroon-dark:#2a0f0f; --gold:#ffcc33; --orange:#e8622c; --orange-dark:#cf4f1d;
  --ink:#2c2420; --muted:#8a817a; --line:#e9e2da; --cream:#f4f0e7; --soft:#faf7f3;
  font-family:'Urbanist',-apple-system,'Segoe UI',Arial,sans-serif;
  max-width:1360px; margin:26px auto 60px; padding:0 24px; color:var(--ink);
}
.pph-pp *{ box-sizing:border-box; }

/* cream card */
.pph-pp-card{
  background:var(--cream); border:1px solid #e7e1d6; border-radius:28px; overflow:hidden;
  box-shadow:0 20px 60px rgba(60,40,25,.10);
}

/* ---------- HERO (cream band) ---------- */
.pph-pp-hero{
  display:grid; grid-template-columns:0.92fr 1.12fr; gap:20px;
  padding:50px 48px 26px; position:relative; z-index:2; overflow:visible;
}
.pph-pp-cover{ display:flex; align-items:center; justify-content:center; overflow:visible; }
/* flat rectangular book, overhang into white panel */
.pph-book{ position:relative; z-index:3; width:78%; margin-bottom:-64px; }
.pph-book img, .pph-book .pph-pp-cover-img{
  display:block; width:100% !important; height:auto !important; border-radius:8px;
  box-shadow:0 54px 60px -22px rgba(18,10,6,.64), 0 30px 34px -18px rgba(18,10,6,.44), 0 10px 14px -6px rgba(18,10,6,.30);
}

.pph-pp-info{ display:flex; flex-direction:column; justify-content:center; padding:34px 6px 44px 26px; }
.pph-pp-cat{ font-size:12px; font-weight:700; letter-spacing:.6px; text-transform:uppercase; color:#1a1a1a; }
.pph-pp-cat a{ color:#1a1a1a; text-decoration:none; }
.pph-pp-title{
  font-family:'Playfair Display',Georgia,serif !important; font-weight:700 !important;
  font-size:44px !important; line-height:1.06 !important; color:#141414 !important; margin:10px 0 6px !important;
}
.pph-pp-author{ font-weight:700; color:#141414; font-size:17px; margin:0 0 16px; }
.pph-pp-short{ color:#6f665e; font-style:italic; font-size:16px; line-height:1.6; margin-bottom:22px; max-width:540px; }
.pph-pp-short p{ margin:0 0 8px; }
.pph-pp-fmtlabel{ font-size:12px; font-weight:700; letter-spacing:.6px; text-transform:uppercase; color:var(--muted); margin-top:26px; margin-bottom:10px; }

/* buy box */
.pph-pp-buybox{ border:1px solid var(--line); border-radius:16px; padding:26px 26px 28px; background:#fff; max-width:540px; box-shadow:0 40px 50px -22px rgba(18,10,6,.46), 0 16px 24px -14px rgba(18,10,6,.30); }
.pph-pp-price{ font-family:'Playfair Display',Georgia,serif; font-size:30px; font-weight:700; color:#141414; margin-bottom:14px; }
.pph-pp-price del{ color:var(--muted); font-size:18px; opacity:.75; margin-left:8px; }
.pph-pp-price ins{ text-decoration:none; }

/* variations */
.pph-pp .variations{ width:100%; border:0; margin-bottom:12px; }
.pph-pp .variations td, .pph-pp .variations th{ border:0; padding:6px 0; display:block; text-align:left; }
.pph-pp .variations .label label{ font-size:12px; font-weight:700; letter-spacing:.5px; text-transform:uppercase; color:var(--muted); }
.pph-pp .variations select{
  width:100%; padding:12px 14px; border:1.5px solid var(--line); border-radius:12px; background:#fff; font-weight:600; color:var(--ink);
}
.pph-pp ul.variable-items-wrapper, .pph-pp .variable-items-wrapper{
  display:flex !important; flex-wrap:wrap !important; grid-template-columns:none !important;
  gap:8px !important; padding:0 !important; margin:0 0 12px !important; list-style:none !important; float:none !important;
}
.pph-pp ul.variable-items-wrapper li.variable-item{
  border:1.5px solid var(--line) !important; background:#fff !important; color:var(--ink) !important;
  border-radius:12px !important; padding:13px 20px !important; margin:0 !important; box-shadow:none !important; float:none !important; font-weight:600 !important;
  flex:1 1 auto !important; min-width:104px !important; text-align:center !important; white-space:nowrap !important; font-size:15px !important;
}
.pph-pp .variable-items-wrapper .variable-item-span{ white-space:nowrap !important; display:inline-block !important; }
.pph-pp ul.variable-items-wrapper li.variable-item.selected,
.pph-pp ul.variable-items-wrapper li.variable-item:hover{
  border-color:var(--maroon) !important; background:var(--maroon) !important; color:#fff !important;
}
.pph-pp .reset_variations{ color:var(--muted); font-size:13px; margin-left:8px; }

/* qty + add to cart */
.pph-pp .quantity .qty{ border:1.5px solid var(--line); border-radius:12px; padding:12px; width:70px; }
.pph-pp .single_add_to_cart_button, .pph-pp button.button, .pph-pp a.button{
  background:var(--maroon) !important; color:#fff !important; border:none !important; border-radius:12px !important;
  padding:15px 30px !important; font-family:'Urbanist',sans-serif !important; font-weight:700 !important; font-size:15px !important;
  text-transform:none !important; box-shadow:0 8px 20px rgba(63,23,23,.18) !important; cursor:pointer;
}
.pph-pp .single_add_to_cart_button:hover, .pph-pp button.button:hover{ background:var(--maroon-dark) !important; }
.pph-pp .woocommerce-variation-price{ margin-bottom:12px; }

/* ---------- WHITE PANEL ---------- */
.pph-pp-panel{
  position:relative; z-index:1; background:#fff;
  padding:116px 48px 44px; box-shadow:inset 0 22px 30px -22px rgba(0,0,0,.08);
}
.pph-pp-panel-grid{ display:grid; grid-template-columns:1.35fr 1fr; gap:56px; }

.pph-pp-sec{
  font-family:'Playfair Display',Georgia,serif !important; color:#141414 !important;
  font-size:22px !important; margin:0 0 14px !important;
}
.pph-pp-desc{ color:#5c534c; font-size:16px; line-height:1.75; }
.pph-pp-desc p{ margin:0 0 14px; }

/* attributes (Editors / Language / Paperback) */
.pph-pp-attr{ margin-bottom:24px; }
.pph-pp-attr-name{ font-family:'Playfair Display',Georgia,serif; color:#141414; font-size:19px; margin:0 0 6px; }
.pph-pp-attr-val{ color:#6f665e; font-size:15px; line-height:1.6; margin:0; }

/* ---------- Reviews ---------- */
.pph-pp-reviews{ margin-top:34px; padding-top:30px; border-top:1px solid var(--line); }
.pph-pp-reviews #comment, .pph-pp-reviews textarea{
  width:100% !important; min-height:130px !important; padding:14px 16px !important;
  border:1.5px solid var(--line) !important; border-radius:12px !important; background:#fff !important;
  font-family:'Urbanist',sans-serif !important; font-size:15px !important; color:var(--ink) !important; resize:vertical;
}
.pph-pp-reviews #comment:focus, .pph-pp-reviews textarea:focus{ outline:none; border-color:var(--maroon) !important; }
.pph-pp-reviews #comment::placeholder, .pph-pp-reviews textarea::placeholder{ color:#b8afa6 !important; font-weight:400; }
.pph-pp-reviews input[type=text], .pph-pp-reviews input[type=email]{
  border:1.5px solid var(--line) !important; border-radius:12px !important; padding:12px 14px !important; background:#fff !important;
}
.pph-pp-reviews label{ color:var(--muted); font-weight:600; }
.pph-pp-reviews #respond .submit,
.pph-pp-reviews #respond input[type=submit],
.pph-pp-reviews .comment-form .submit,
.pph-pp-reviews input#submit{
  background:var(--orange) !important; color:#fff !important; border:none !important; border-radius:12px !important;
  padding:14px 30px !important; font-family:'Urbanist',sans-serif !important; font-weight:700 !important; font-size:15px !important;
  text-transform:none !important; cursor:pointer; box-shadow:0 8px 20px rgba(232,98,44,.28) !important;
}
.pph-pp-reviews #respond .submit:hover,
.pph-pp-reviews input#submit:hover{ background:var(--orange-dark) !important; }
.pph-pp-reviews .star-rating, .pph-pp-reviews p.stars a{ color:var(--gold); }

/* ---------- More books ---------- */
.pph-pp-related{ margin-top:34px; padding-top:30px; border-top:1px solid var(--line); }
.pph-pp-books{ display:grid; grid-template-columns:repeat(4,1fr); gap:28px; }
.pph-pp-book{ text-decoration:none; color:inherit; display:block; text-align:center; }
.pph-pp-book-cover{ margin-bottom:16px; }
.pph-pp-book-cover img{
  width:74% !important; height:auto !important; border-radius:6px;
  box-shadow:0 16px 30px -14px rgba(30,18,12,.40); transition:transform .3s ease;
}
.pph-pp-book:hover .pph-pp-book-cover img{ transform:translateY(-5px); }
.pph-pp-book-title{ font-family:'Playfair Display',Georgia,serif; font-weight:700; color:#141414; font-size:15px; line-height:1.25; margin-bottom:4px; }
.pph-pp-book-price{ color:#141414; font-weight:700; font-size:14px; }

@media (max-width:900px){
  .pph-pp-hero{ grid-template-columns:1fr; gap:10px; padding:40px 14px 20px; }
  .pph-pp-buybox{ padding:20px 16px 22px !important; max-width:none !important; }
  .pph-book{ width:60%; margin-bottom:-10px; }
  .pph-pp-info{ padding:30px 8px 20px; }
  .pph-pp ul.variable-items-wrapper li.variable-item{ min-width:98px !important; flex:1 1 auto !important; padding:12px 16px !important; font-size:14px !important; white-space:nowrap !important; }
  .pph-pp .variable-items-wrapper li.variable-item, .pph-pp .variable-items-wrapper li.variable-item *{ white-space:nowrap !important; overflow:visible !important; }
  .pph-pp-panel{ padding:80px 24px 34px; }
  .pph-pp-panel-grid{ grid-template-columns:1fr; gap:28px; }
  .pph-pp-title{ font-size:32px !important; }
  .pph-pp-books{ grid-template-columns:repeat(2,1fr); }
}

/* v2.6 spacing */
.pph-pp form.cart{ margin-top:16px !important; }
.pph-pp .quantity{ margin-bottom:14px; }
.pph-pp .single_add_to_cart_button{ margin-top:6px !important; }


/* ============================================================
   v2.7 additions: disabled button + notices + CART/CHECKOUT
   ============================================================ */

/* disabled add-to-cart clearly muted (stuck confusion na ho) */
.pph-pp .single_add_to_cart_button.disabled,
.pph-pp .single_add_to_cart_button[disabled]{
  background:#c9bfb4 !important; color:#fff !important; box-shadow:none !important;
  cursor:not-allowed !important; opacity:1 !important;
}

/* product page notices */
.pph-pp-notices{ margin:0 0 18px; }
.pph-pp .woocommerce-message,
.pph-pp-notices .woocommerce-message,
.pph-pp-notices .woocommerce-info,
.pph-pp-notices .woocommerce-error{
  border-radius:14px !important; border:1px solid #e7e1d6 !important;
  border-top:3px solid #3f1717 !important; background:#fff !important; padding:16px 18px !important;
  font-family:'Urbanist',sans-serif !important; color:#2c2420 !important;
}
.pph-pp-notices .button{
  background:#e8622c !important; color:#fff !important; border-radius:10px !important;
}
.pph-pp-notices .button:hover{ background:#cf4f1d !important; }

/* ---------- CART & CHECKOUT: default bg rakho, sirf BLUE -> ORANGE ---------- */
/* buttons */
body.woocommerce-cart .button, body.woocommerce-cart button.button, body.woocommerce-cart a.button, body.woocommerce-cart input.button,
body.woocommerce-checkout .button, body.woocommerce-checkout button.button, body.woocommerce-checkout a.button, body.woocommerce-checkout input.button,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
body.woocommerce-checkout #place_order{
  background-color:#e8622c !important; border-color:#e8622c !important; color:#fff !important;
}
body.woocommerce-cart .button:hover, body.woocommerce-checkout .button:hover,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
body.woocommerce-checkout #place_order:hover{
  background-color:#cf4f1d !important; border-color:#cf4f1d !important;
}
/* links blue -> orange */
body.woocommerce-cart a:not(.button), body.woocommerce-checkout a:not(.button){ color:#e8622c; }
body.woocommerce-cart a:not(.button):hover, body.woocommerce-checkout a:not(.button):hover{ color:#cf4f1d; }
/* input focus + accent borders blue -> orange */
body.woocommerce-cart .input-text:focus, body.woocommerce-checkout .input-text:focus,
body.woocommerce-cart textarea:focus, body.woocommerce-checkout textarea:focus,
body.woocommerce-cart select:focus, body.woocommerce-checkout select:focus,
body.woocommerce-checkout .select2-container--focus .select2-selection{
  border-color:#e8622c !important; box-shadow:0 0 0 1px #e8622c !important; outline:none !important;
}
/* info/message notice ka blue top-border -> orange */
body.woocommerce-cart .woocommerce-info, body.woocommerce-checkout .woocommerce-info,
body.woocommerce-cart .woocommerce-message, body.woocommerce-checkout .woocommerce-message{
  border-top-color:#e8622c !important;
}
body.woocommerce-cart .woocommerce-info::before, body.woocommerce-checkout .woocommerce-info::before,
body.woocommerce-cart .woocommerce-message::before, body.woocommerce-checkout .woocommerce-message::before{
  color:#e8622c !important;
}

/* ============================================================
   v3.3: format tabs hamesha ek hi line me + buybox thoda chauda
   ============================================================ */
.pph-pp-buybox form.cart, .pph-pp-buybox form.cart *{
  white-space:nowrap !important; word-break:normal !important; overflow-wrap:normal !important; hyphens:none !important;
}
.pph-pp-buybox form.cart ul li, .pph-pp-buybox [class*="variable-item"]{ text-align:center !important; }

