/* KARMASU product page (Flipkart/Amazon style) + shop loop */
.ks-root .ksp{padding-bottom:20px}
.ks-root .ksp-crumbs{font-size:12.5px;color:var(--karmasu-charcoal-muted);margin-bottom:18px}
.ks-root .ksp-crumbs a{color:var(--karmasu-charcoal-muted)}
.ks-root .ksp-crumbs a:hover{color:var(--karmasu-primary)}
.ks-root .ksp-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:40px;align-items:start}

/* gallery */
.ks-root .ksp-gallery{display:flex;gap:14px;position:sticky;top:130px}
.ks-root .ksp-thumbs{display:flex;flex-direction:column;gap:10px;max-height:520px;overflow:auto;scrollbar-width:none}
.ks-root .ksp-thumbs::-webkit-scrollbar{display:none}
.ks-root .ksp-thumb{width:64px;height:64px;border:2px solid var(--karmasu-border);border-radius:8px;background:#fff;padding:0;cursor:pointer;overflow:hidden;flex-shrink:0}
.ks-root .ksp-thumb.active,.ks-root .ksp-thumb:hover{border-color:var(--karmasu-primary)}
.ks-root .ksp-thumb img{width:100%;height:100%;object-fit:cover}
.ks-root .ksp-stage{position:relative;flex:1;aspect-ratio:1/1;background:#fff;border:1px solid var(--karmasu-border);border-radius:12px;overflow:hidden;cursor:zoom-in}
.ks-root .ksp-main-img{width:100%;height:100%;object-fit:contain;transition:transform .15s ease-out;margin:0}
.ks-root .ksp-badge{position:absolute;top:12px;left:12px;z-index:2;background:#1e7e34;color:#fff;font-size:12px;font-weight:700;padding:4px 9px;border-radius:5px}

/* info */
.ks-root .ksp-cat{font-size:12px;letter-spacing:1.5px;text-transform:uppercase;font-weight:700;margin-bottom:6px}
.ks-root .ksp-cat a{color:var(--karmasu-primary)}
.ks-root .ksp-title{font-family:var(--font-serif);font-size:32px;line-height:1.2;font-weight:700;margin-bottom:10px}
.ks-root .ksp-rating{display:inline-flex;align-items:center;gap:10px;margin-bottom:12px;color:var(--karmasu-charcoal-muted);font-size:14px;font-weight:600}
.ks-root .ksp-pill{background:#1e7e34;color:#fff;font-size:13px;font-weight:700;padding:3px 9px;border-radius:5px}
.ks-root .ksp-pricebox{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;margin:6px 0 16px}
.ks-root .ksp-price,.ks-root .ksp-price .amount{font-size:32px;font-weight:700;color:var(--karmasu-charcoal)}
.ks-root .ksp-price ins{text-decoration:none}
.ks-root .ksp-price del,.ks-root .ksp-price del .amount{font-size:16px;font-weight:400;color:#8C827A}
.ks-root .ksp-mrp,.ks-root .ksp-mrp .amount{font-size:17px;color:#8C827A;font-weight:400}
.ks-root .ksp-off{color:#1e7e34;font-weight:700;font-size:17px}
.ks-root .ksp-tax{flex-basis:100%;font-size:12.5px;color:var(--karmasu-charcoal-muted)}
.ks-root .ksp-box{border:1px solid var(--karmasu-border);background:#fff;border-radius:10px;padding:14px 16px;margin-bottom:14px}
.ks-root .ksp-box-title{font-weight:700;font-size:14.5px;margin-bottom:8px}
.ks-root .ksp-offers{list-style:none}
.ks-root .ksp-offers li{font-size:13.5px;padding:5px 0 5px 22px;position:relative;line-height:1.5}
.ks-root .ksp-offers li::before{content:"%";position:absolute;left:0;top:6px;width:15px;height:15px;border-radius:50%;background:#1e7e34;color:#fff;font-size:10px;font-weight:700;text-align:center;line-height:15px}
.ks-root .ksp-short{font-size:14px;line-height:1.65;color:var(--karmasu-charcoal-muted)}
.ks-root .ksp-short ul{padding-left:1.2em}
.ks-root .ksp-pin{display:flex;gap:0;max-width:340px}
.ks-root .ksp-pin input{flex:1;border:1.5px solid var(--karmasu-border);border-right:0;border-radius:6px 0 0 6px;padding:10px 12px;font-size:14px;outline:none;font-family:inherit}
.ks-root .ksp-pin input:focus{border-color:var(--karmasu-primary)}
.ks-root .ksp-pin button{background:#fff;border:1.5px solid var(--karmasu-border);border-radius:0 6px 6px 0;color:var(--karmasu-primary);font-weight:700;padding:0 18px;cursor:pointer;font-family:inherit}
.ks-root .ksp-pin-msg{font-size:13px;margin-top:8px}
.ks-root .ksp-pin-msg.ok{color:#1e7e34}.ks-root .ksp-pin-msg.bad{color:#c0392b}
.ks-root .ksp-stock{margin:4px 0 14px;font-size:14px;font-weight:700}
.ks-root .ksp-stock .in{color:#1e7e34}.ks-root .ksp-stock .low{color:#c0392b}.ks-root .ksp-stock .out{color:#c0392b}

/* buy area */
.ks-root .ksp-buy form.cart,.ks-root .ksp-buy .woocommerce-variation-add-to-cart{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch;margin:0}
.ks-root .ksp-buy table.variations{width:100%;margin-bottom:14px;border-collapse:collapse}
.ks-root .ksp-buy table.variations td,.ks-root .ksp-buy table.variations th{padding:6px 0;text-align:left;display:block}
.ks-root .ksp-buy table.variations select{width:100%;max-width:320px;padding:10px 12px;border:1.5px solid var(--karmasu-border);border-radius:6px;font-size:14px;font-family:inherit;background:#fff}
.ks-root .ksp-buy .reset_variations{font-size:12.5px;color:var(--karmasu-primary);margin-left:8px}
.ks-root .ksp-buy .woocommerce-variation{flex-basis:100%;margin-bottom:10px}
.ks-root .ksp-buy .woocommerce-variation-price .price{font-weight:700;font-size:20px;color:var(--karmasu-primary)}
.ks-root .ksp-buy .quantity .qty{width:72px;height:52px;border:1.5px solid var(--karmasu-border);border-radius:6px;text-align:center;font-size:16px;font-weight:600;font-family:inherit}
.ks-root .ksp-buy .single_add_to_cart_button,.ks-root .ksp-buynow{flex:1;min-width:150px;height:52px;border-radius:6px;font-size:15px;font-weight:700;letter-spacing:.3px;cursor:pointer;border:0;font-family:inherit;text-transform:uppercase;transition:all .2s}
.ks-root .ksp-buy .single_add_to_cart_button{background:var(--karmasu-gold);color:#fff}
.ks-root .ksp-buy .single_add_to_cart_button:hover{background:#A68442}
.ks-root .ksp-buynow{background:var(--karmasu-primary);color:#fff}
.ks-root .ksp-buynow:hover{background:var(--karmasu-primary-dark);box-shadow:0 4px 16px rgba(211,84,0,.35)}
.ks-root .ksp-buy .single_add_to_cart_button.disabled,.ks-root .ksp-buy .single_add_to_cart_button:disabled{opacity:.55;cursor:not-allowed}
.ks-root .ksp-actions{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0 18px}
.ks-root .ksp-wa{display:inline-flex;align-items:center;gap:8px;background:#25D366;color:#fff;font-weight:700;font-size:14px;padding:11px 18px;border-radius:6px}
.ks-root .ksp-wa:hover{background:#1ebe5a}
.ks-root .ksp-share{background:#fff;border:1.5px solid var(--karmasu-border);border-radius:6px;padding:10px 18px;font-weight:600;font-size:14px;cursor:pointer;font-family:inherit}
.ks-root .ksp-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;border-top:1px solid var(--karmasu-border);border-bottom:1px solid var(--karmasu-border);padding:16px 0;margin-bottom:14px;text-align:center}
.ks-root .ksp-trust-i span{display:block;font-size:24px;margin-bottom:4px}
.ks-root .ksp-trust-i small{font-size:11.5px;color:var(--karmasu-charcoal-muted);line-height:1.3;display:block}
.ks-root .ksp-meta{font-size:13px;color:var(--karmasu-charcoal-muted);line-height:1.9}
.ks-root .ksp-meta a{color:var(--karmasu-primary)}

/* detail sections */
.ks-root .ksp-section{background:#fff;border:1px solid var(--karmasu-border);border-radius:12px;padding:26px 28px;margin-top:26px}
.ks-root .ksp-section>h2,.ks-root .related>h2,.ks-root .up-sells>h2{font-family:var(--font-serif);font-size:26px;margin-bottom:16px}
.ks-root .ksp-section table.woocommerce-product-attributes{width:100%;border-collapse:collapse}
.ks-root .ksp-section table.woocommerce-product-attributes th{width:30%;text-align:left;background:var(--karmasu-ivory);padding:12px 14px;border:1px solid var(--karmasu-border);font-size:14px}
.ks-root .ksp-section table.woocommerce-product-attributes td{padding:12px 14px;border:1px solid var(--karmasu-border);font-size:14px}
.ks-root .ksp-section table.woocommerce-product-attributes p{margin:0}
.ks-root #reviews #comments ol.commentlist{list-style:none;padding:0}
.ks-root #reviews li.review{border-bottom:1px solid var(--karmasu-border);padding:16px 0}
.ks-root #reviews .comment-text{overflow:hidden}
.ks-root #reviews img.avatar{float:left;width:44px;border-radius:50%;margin-right:14px}
.ks-root #reviews .comment-form-rating{margin-bottom:12px}
.ks-root #reviews textarea,.ks-root #reviews input[type=text],.ks-root #reviews input[type=email]{width:100%;padding:10px 12px;border:1.5px solid var(--karmasu-border);border-radius:6px;font-family:inherit}
.ks-root #reviews #submit{background:var(--karmasu-primary);color:#fff;border:0;padding:12px 24px;border-radius:6px;font-weight:700;cursor:pointer}
.ks-root .star-rating{color:var(--karmasu-gold)}
.ks-root p.stars a{color:var(--karmasu-gold)}
.ks-root section.related,.ks-root section.up-sells{margin-top:40px}

/* shop / loop cards */
.ks-root .woocommerce ul.products{grid-template-columns:repeat(4,1fr)}
.ks-root .woocommerce ul.products li.product{background:transparent;border:0;padding:0;border-radius:0;overflow:visible;display:block;width:auto;margin:0}
.ks-root .woocommerce ul.products li.product .product-card{height:100%}
.ks-root .woocommerce ul.products li.product .product-title{padding:0;margin:0 0 8px}
.ks-root .woocommerce ul.products li.product .product-price{padding:0;margin-bottom:14px;display:block}
.ks-root .woocommerce ul.products li.product .product-price .price{padding:0;margin:0;display:inline}
.ks-root .woocommerce ul.products li.product img.product-img{aspect-ratio:auto;margin:0}
.ks-root .woocommerce ul.products li.product a.button{margin:auto 0 0;width:100%;background:var(--karmasu-ivory-dark);color:var(--karmasu-charcoal);border:1px solid var(--karmasu-border);padding:10px;font-size:13px;text-align:center;display:block}
.ks-root .woocommerce ul.products li.product a.button:hover{background:var(--karmasu-primary);color:#fff;border-color:var(--karmasu-primary)}
.ks-root .woocommerce ul.products li.product a.added_to_cart{display:block;text-align:center;font-size:12.5px;color:var(--karmasu-primary);margin-top:6px}
.ks-root .ksp-off-s{color:#1e7e34;font-size:12.5px;font-style:normal;font-weight:700;margin-left:4px}
.ks-root .woocommerce-products-header__title,.ks-root .page-title{font-family:var(--font-serif);font-size:34px;margin-bottom:8px}
.ks-root .woocommerce-result-count{float:left;font-size:13.5px;color:var(--karmasu-charcoal-muted);margin-bottom:20px}
.ks-root .woocommerce-ordering{float:right;margin-bottom:20px}
.ks-root .woocommerce-ordering select{padding:9px 12px;border:1.5px solid var(--karmasu-border);border-radius:6px;font-family:inherit;background:#fff}
.ks-root .woocommerce ul.products{clear:both}
.ks-root .woocommerce-pagination ul{display:flex;gap:8px;justify-content:center;list-style:none;margin-top:30px;border:0}
.ks-root .woocommerce-pagination ul li{border:0}
.ks-root .woocommerce-pagination ul li a,.ks-root .woocommerce-pagination ul li span{display:block;padding:9px 15px;border:1px solid var(--karmasu-border);border-radius:6px;background:#fff}
.ks-root .woocommerce-pagination ul li span.current{background:var(--karmasu-primary);color:#fff;border-color:var(--karmasu-primary)}

/* mobile sticky bar */
.ks-root .ksp-sticky{display:none}
@media (max-width:1024px){.ks-root .ksp-grid{gap:26px}.ks-root .woocommerce ul.products{grid-template-columns:repeat(3,1fr)}}
@media (max-width:768px){
 .ks-root .ksp-grid{grid-template-columns:1fr}
 .ks-root .ksp-gallery{position:static;flex-direction:column-reverse}
 .ks-root .ksp-thumbs{flex-direction:row;max-height:none;overflow-x:auto}
 .ks-root .ksp-title{font-size:25px}
 .ks-root .ksp-price,.ks-root .ksp-price .amount{font-size:27px}
 .ks-root .ksp-trust{grid-template-columns:repeat(2,1fr)}
 .ks-root .ksp-section{padding:20px 16px}
 .ks-root .ksp-buy .single_add_to_cart_button,.ks-root .ksp-buynow{min-width:calc(50% - 6px)}
 .ks-root .ksp-sticky{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:900;background:#fff;border-top:1px solid var(--karmasu-border);box-shadow:0 -4px 16px rgba(0,0,0,.08);padding:10px 12px;gap:10px;align-items:center}
 .ks-root .ksp-sticky-price{flex:0 0 auto;font-weight:700;font-size:16px;color:var(--karmasu-charcoal);max-width:32%;line-height:1.2}
 .ks-root .ksp-sticky button{flex:1;height:46px;border:0;border-radius:6px;font-weight:700;font-size:13.5px;color:#fff;text-transform:uppercase;font-family:inherit;cursor:pointer}
 .ks-root .ksp-s-cart{background:var(--karmasu-gold)}
 .ks-root .ksp-s-buy{background:var(--karmasu-primary)}
 body.single-product.ks-root{padding-bottom:70px}
 .ks-root .woocommerce ul.products{grid-template-columns:repeat(2,1fr)}
}
