:root{
  --cream:#FBF3E2; --card:#FFFFFF; --ink:#2B2118; --red:#C8102E; --red-deep:#9E0C23;
  --green:#00674F; --gold:#D4A017; --grey:#71685C; --line:#EADFC7;
}
*{box-sizing:border-box;}
html{overflow-x:hidden;}
body{margin:0; background:var(--cream); color:var(--ink); font-family:'Hind Siliguri',Arial,sans-serif; overflow-x:hidden;}
a{color:inherit; text-decoration:none;}
img{max-width:100%; display:block;}
.wrap{max-width:1180px; margin:0 auto; padding:0 24px;}

header.site-header{background:var(--card); border-bottom:1px solid var(--line);}
.top-strip{background:var(--green); color:#fff; font-size:12.5px;}
.top-strip .wrap{display:flex; justify-content:space-between; padding:6px 0; flex-wrap:wrap; gap:6px;}
.top-strip a{opacity:.9;}
.top-strip a:hover{opacity:1; text-decoration:underline;}

.header-row{display:flex; align-items:center; justify-content:space-between; gap:20px; padding:16px 0;}
.logo{font-size:22px; font-weight:700;}
.logo span{color:var(--red);}
.nav-links{display:flex; gap:26px; font-size:14.5px; font-weight:600;}
.nav-links a:hover{color:var(--red);}
.h-actions{display:flex; align-items:center; gap:18px;}
.h-cart{position:relative; background:var(--ink); color:#fff; padding:9px 14px; border-radius:6px; font-size:13px; font-weight:600;}
.h-cart b{background:var(--red); border-radius:50%; padding:1px 6px; font-size:10.5px; margin-left:6px;}

.btn{display:inline-block; padding:12px 22px; border-radius:6px; font-weight:600; font-size:14px; border:1px solid transparent; cursor:pointer;}
.btn-primary{background:var(--red); color:#fff;}
.btn-primary:hover{background:var(--red-deep);}
.btn-outline{background:transparent; border-color:var(--ink); color:var(--ink);}
.btn-green{background:var(--green); color:#fff;}

.sec{padding:44px 0;}
.sec-head{margin-bottom:26px;}
.sec-head h1,.sec-head h2{font-size:26px; margin:0 0 6px;}
.sec-head p{color:var(--grey); font-size:14px; margin:0;}

.cat-grid{display:grid; grid-template-columns:repeat(6,1fr); gap:14px;}
.cat-card{background:#fff; border:1px solid var(--line); border-radius:14px; padding:20px 10px; text-align:center; font-weight:600; font-size:13.5px;}
.cat-card:hover{border-color:var(--red);}

.p-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
.p-card{background:#fff; border:1px solid var(--line); border-radius:14px; overflow:hidden; display:flex; flex-direction:column;}
.p-thumb{aspect-ratio:1/1; background:var(--cream); display:flex; align-items:center; justify-content:center; color:var(--grey); font-size:12px;}
.p-thumb img{width:100%; height:100%; object-fit:cover;}
.p-body{padding:14px; display:flex; flex-direction:column; gap:8px; flex:1;}
.p-name{font-weight:600; font-size:14.5px; min-height:38px;}
.p-price-row{display:flex; align-items:center; justify-content:space-between; margin-top:auto;}
.p-price{font-weight:700; color:var(--red); font-size:16px;}
.p-old{font-size:12px; color:var(--grey); text-decoration:line-through; margin-right:6px;}
.badge-sale{display:inline-block; background:var(--gold); color:var(--ink); font-size:10.5px; font-weight:700; padding:2px 7px; border-radius:4px;}
.badge-out{background:#999; color:#fff; font-size:10.5px; font-weight:700; padding:2px 7px; border-radius:4px;}

.alert{padding:12px 16px; border-radius:8px; font-size:13.5px; margin-bottom:18px;}
.alert-success{background:#E6F4EC; color:#0F5C3F; border:1px solid #BEE3CC;}
.alert-error{background:#FBEAEA; color:#8A1F1F; border:1px solid #F1C3C3;}

.stars{color:var(--gold); font-size:15px; letter-spacing:1px;}
.review-card{border:1px solid var(--line); border-radius:12px; padding:16px; margin-bottom:14px; background:#fff;}
.review-photos{display:flex; gap:8px; margin-top:10px; flex-wrap:wrap;}
.review-photos img{width:72px; height:72px; object-fit:cover; border-radius:8px; border:1px solid var(--line);}

table.simple{width:100%; border-collapse:collapse; font-size:14px;}
table.simple th, table.simple td{border-bottom:1px solid var(--line); padding:10px 8px; text-align:left;}

footer.site-footer{background:var(--green); color:#DCEAE4; padding:40px 0 20px; margin-top:40px;}
footer.site-footer a{color:#DCEAE4;}
footer.site-footer a:hover{color:#fff;}
.f-bottom{border-top:1px solid rgba(255,255,255,.15); margin-top:24px; padding-top:16px; font-size:12.5px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px;}

.timeline{list-style:none; padding:0; margin:0;}
.timeline li{padding:10px 0 10px 26px; border-left:2px solid var(--line); position:relative; margin-left:6px;}
.timeline li::before{content:''; position:absolute; left:-7px; top:14px; width:12px; height:12px; border-radius:50%; background:var(--line);}
.timeline li.done::before{background:var(--green);}
.timeline li.done{border-color:var(--green);}

@media (max-width:1000px){
  .cat-grid{grid-template-columns:repeat(3,1fr);}
  .p-grid{grid-template-columns:repeat(2,1fr);}
  .nav-links{display:none;}
}
@media (max-width:560px){
  .wrap{padding:0 16px;}
  .cat-grid{grid-template-columns:repeat(2,1fr);}
  .p-grid{grid-template-columns:1fr 1fr;}
  .sec-head h1,.sec-head h2{font-size:21px;}
}
