/* =====================================================
🔥 ADI RATNA PRODUCT CSS
🔥 CLEAN SINGLE VERSION
🔥 NO DUPLICATE OVERRIDE
===================================================== */

/* RESET */
*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{
width:100%;
min-height:100vh;
background:#f5f5f5;
overflow-x:hidden;
font-family:Arial,sans-serif;
color:#222;
}

a{
text-decoration:none;
color:inherit;
}

img{
max-width:100%;
display:block;
}

/* PAGE */
.product-page{
width:100%;
padding:15px;
}

.product-container,
.category-content,
.category-products{
width:100%;
max-width:1400px;
margin:0 auto;
}

.product-count{
margin-bottom:15px;
font-size:15px;
font-weight:700;
color:#333;
}

/* GRID */
.product-grid{
display:grid;
grid-template-columns:repeat(3,minmax(300px,1fr));
gap:22px;
width:100%;
}

/* PRODUCT CARD */
.product-card{
width:100%;
min-width:0;
min-height:430px;
background:#fff;
border-radius:14px;
overflow:hidden;
box-shadow:0 2px 10px rgba(0,0,0,.08);
transition:.25s;
display:flex;
flex-direction:column;
}

.product-card:hover{
transform:translateY(-3px);
}

.product-card-link{
display:block;
width:100%;
height:100%;
}

/* PRODUCT IMAGE */
.product-card-image-wrap{
width:100%;
aspect-ratio:1/1;
overflow:hidden;
background:#fff;
padding:12px;
}

.product-card-image{
width:100%;
height:100%;
object-fit:cover;
transition:.3s;
border:1px solid #e5e5e5;
border-radius:14px;
}

.product-card:hover .product-card-image{
transform:scale(1.04);
}

/* PRODUCT TITLE */
.product-card-title{
padding:10px 10px 0;
font-size:15px;
font-weight:700;
line-height:1.4;
min-height:50px;
color:#222;
word-break:break-word;
}

/* CARD EXTRA */
.product-card-short-desc,
.product-card-sku{
display:none;
}

.product-card-rating{
padding:6px 10px 0;
font-size:14px;
font-weight:700;
color:#444;
}

/* PRICE */
.product-card-price-wrap{
margin:10px;
padding:12px 16px;
display:flex;
flex-wrap:wrap;
align-items:center;
gap:6px;
background:#fff8e6;
border-radius:12px;
width:fit-content;
}

.product-card-price{
font-size:18px;
font-weight:700;
color:#111;
}

.product-card-mrp{
font-size:13px;
color:#888;
text-decoration:line-through;
}

.product-card-discount{
font-size:12px;
font-weight:700;
color:#0a8f2e;
}

/* CARD BUTTONS */
.product-card-actions{
display:flex;
gap:8px;
padding:0 10px 12px;
}

.product-card-actions .buy-btn,
.product-card-actions .cart-btn{
flex:1;
border:none;
border-radius:8px;
padding:9px 8px;
font-size:13px;
font-weight:700;
cursor:pointer;
}

.product-card-actions .buy-btn{
background:#ff9900;
color:#111;
}

.product-card-actions .cart-btn{
background:#ffd814;
color:#111;
}

/* CATEGORY GROUP */
.category-product-section{
margin-bottom:45px;
}

.category-child-section{
margin-top:26px;
}

.category-subchild-section{
margin-top:18px;
}

.category-product-title{
display:inline-flex;
align-items:center;
padding:8px 18px;
border-radius:999px;
background:linear-gradient(135deg,#f8e8a6,#e0b83f);
color:#222;
font-size:22px;
font-weight:700;
box-shadow:0 4px 12px rgba(0,0,0,.12);
margin:0 0 18px;
}

.category-child-title{
font-size:22px;
font-weight:800;
margin:18px 0 14px;
color:#222;
white-space:nowrap;
line-height:1.2;
}

.category-subchild-title{
font-size:18px;
font-weight:650;
margin:18px 0 12px;
color:#333;
white-space:nowrap;
line-height:1.2;
overflow:hidden;
text-overflow:ellipsis;
}

/* COMING SOON */
.product-coming-soon{
width:100%;
height:250px;
display:flex;
align-items:center;
justify-content:center;
background:linear-gradient(135deg,#fff7d6,#ffe08a);
color:#111;
font-size:26px;
font-weight:800;
border-radius:16px;
letter-spacing:.5px;
margin-bottom:15px;
border-bottom:1px solid #eee;
}

.product-coming-badge{
display:block;
width:100%;
text-align:center;
background:#111;
color:#fff;
padding:10px;
border-radius:999px;
margin-top:10px;
font-weight:700;
}

/* LOADING EMPTY ERROR */
.product-loading,
.product-loading-card,
.empty-products-wrap,
.empty-product-card{
background:#fff;
padding:30px;
border-radius:12px;
text-align:center;
font-weight:600;
color:#777;
}

.product-error{
background:#fff3f3;
border:1px solid #ffcdd2;
color:#c62828;
padding:15px;
border-radius:10px;
text-align:center;
}

/* PRODUCT DETAIL */
.product-detail{
display:grid;
grid-template-columns:420px 1fr;
gap:35px;
align-items:flex-start;
max-width:1200px;
margin:0 auto;
padding:24px;
background:#fff;
border-radius:16px;
box-shadow:0 2px 12px rgba(0,0,0,.08);
}

.product-detail-image{
width:100%;
max-width:420px;
background:#fafafa;
border-radius:12px;
overflow:hidden;
}

.product-detail-image img{
width:100%;
height:420px;
object-fit:contain;
display:block;
}

.product-detail-info{
display:flex;
flex-direction:column;
gap:18px;
padding:10px 0;
}

.product-card-brand{
font-size:14px;
font-weight:700;
text-transform:uppercase;
color:#666;
letter-spacing:.5px;
}

.product-detail-title{
font-size:42px;
font-weight:700;
line-height:1.3;
color:#111;
}

.product-detail-price{
font-size:42px;
font-weight:700;
color:#111;
}

.product-stock{
display:inline-block;
width:fit-content;
padding:8px 12px;
border-radius:8px;
font-size:14px;
font-weight:700;
}

.product-stock.in{
background:#e8f5e9;
color:#1b5e20;
}

.product-stock.out{
background:#ffebee;
color:#b71c1c;
}

.product-description{
font-size:15px;
line-height:1.8;
color:#444;
padding-top:10px;
border-top:1px solid #eee;
}

.product-extra-details,
.product-bullets{
background:#fafafa;
border:1px solid #eee;
border-radius:12px;
padding:14px;
line-height:1.8;
}

/* DETAIL BUTTONS */
.product-actions,
.product-action-buttons{
display:flex;
gap:12px;
margin-top:10px;
}

.buy-btn,
.cart-btn,
.buy-now-btn,
.add-cart-btn{
flex:1;
border:none;
border-radius:999px;
padding:14px 26px;
font-size:16px;
font-weight:700;
cursor:pointer;
}

.buy-btn,
.buy-now-btn{
background:#ff9900;
color:#111;
}

.cart-btn,
.add-cart-btn{
background:#ffd814;
color:#111;
}

/* DESKTOP */
@media(min-width:1200px){

.product-detail-image{
position:sticky;
top:90px;
}

}

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

.product-page{
padding:10px;
}

.product-grid,
.category-subchild-section .product-grid,
.category-child-section .product-grid{
display:grid;
grid-template-columns:repeat(2,minmax(0,1fr));
gap:14px;
width:100%;
max-width:100%;
}

.product-card,
.category-subchild-section .product-card,
.category-child-section .product-card{
width:100%;
max-width:100%;
min-width:0;
min-height:auto;
overflow:hidden;
}

.product-card-image-wrap{
width:100%;
height:auto;
aspect-ratio:1/1;
padding:8px;
}

.product-card-title{
font-size:15px;
line-height:1.3;
min-height:40px;
padding:8px;
}

.product-card-price{
font-size:16px;
}

.product-card-mrp{
font-size:12px;
}

.product-card-discount{
font-size:11px;
}

.product-card-actions{
display:grid;
grid-template-columns:1fr 1fr;
gap:6px;
padding:0 8px 10px;
overflow:hidden;
}

.product-card-actions .buy-btn,
.product-card-actions .cart-btn{
width:100%;
min-width:0;
font-size:11px;
padding:8px 2px;
white-space:nowrap;
}

.category-product-title{
font-size:20px;
padding:8px 16px;
}

.category-child-title{
font-size:20px;
white-space:nowrap;
}

.category-subchild-title{
font-size:16px;
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;
}

.product-detail{
display:flex;
flex-direction:column;
padding:14px;
gap:18px;
}

.product-detail-image{
max-width:100%;
}

.product-detail-image img{
height:300px;
}

.product-detail-title{
font-size:28px;
}

.product-detail-price{
font-size:32px;
}

.product-action-buttons,
.product-actions{
flex-direction:column;
}

}
.category-child-title{
    font-size:18px !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
}