/* ==========================================================================
   TujjarCo Dokan Store page
   Place at: your-child-theme/assets/css/tujjarco-store.css
   ========================================================================== */
.tjc-store{
  --brand:#17A56B;--brand-deep:#0B6B4A;--brand-tint:#E7F6EF;--ink:#0C1613;--mist:#F4F7F5;
  --line:#E2E8E4;--text:#1A2420;--text-soft:#5C6B64;--amber:#B97A16;--amber-tint:#FBF1DE;--danger:#C23B3B;
  --fd:'Sora',sans-serif;--fb:'IBM Plex Sans',sans-serif;
  font-family:var(--fb);color:var(--text);background:#fff
}
.tjc-store *{box-sizing:border-box}
.tjc-store h1,.tjc-store h2,.tjc-store h3{font-family:var(--fd);color:var(--ink);font-weight:600;line-height:1.2;margin:0}
.tjc-store a{text-decoration:none;color:inherit}
.tjc-store-wrap{max-width:1240px;margin:0 auto;padding:0 24px}

/* ============================ HEADER ============================ */
.tjc-store-header{position:relative;margin-bottom:26px}
.tjc-store-banner{height:260px;background:linear-gradient(120deg,#0B6B4A,#17A56B);background-size:cover;background-position:center;position:relative}
.tjc-store-banner-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,22,19,.05),rgba(12,22,19,.35))}

.tjc-store-card{position:relative;margin-top:-70px;background:#fff;border:1px solid var(--line);border-radius:20px;
  box-shadow:0 20px 50px rgba(12,22,19,.10);padding:22px 26px;display:flex;gap:22px;align-items:flex-start;flex-wrap:wrap}
.tjc-store-avatar{width:104px;height:104px;border-radius:20px;overflow:hidden;flex:none;margin-top:-52px;
  border:4px solid #fff;background:var(--brand-tint);box-shadow:0 8px 22px rgba(12,22,19,.14);
  display:flex;align-items:center;justify-content:center}
.tjc-store-avatar img{width:100%;height:100%;object-fit:cover}
.tjc-store-avatar span{font-family:var(--fd);font-weight:700;font-size:34px;color:var(--brand-deep)}

.tjc-store-main{flex:1;min-width:220px}
.tjc-store-titleline{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.tjc-store-titleline h1{font-size:clamp(22px,2.6vw,30px);letter-spacing:-.01em}
.tjc-store-badge{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;padding:4px 10px;border-radius:99px}
.tjc-store-badge--verified{background:var(--brand-tint);color:var(--brand-deep)}
.tjc-store-badge--featured{background:var(--amber-tint);color:var(--amber)}

.tjc-store-meta{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:12px}
.tjc-store-rating{display:inline-flex;align-items:center;gap:5px;font-size:14px}
.tjc-store-rating .tjc-stars{color:var(--amber);letter-spacing:1px}
.tjc-store-rating b{font-weight:600;color:var(--ink)}
.tjc-store-rating em{font-style:normal;color:var(--text-soft);font-size:13px}
.tjc-store-metaitem{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;color:var(--text-soft)}
.tjc-store-metaitem svg{color:var(--brand);flex:none}

.tjc-store-cats{display:flex;gap:7px;flex-wrap:wrap}
.tjc-store-cat{font-size:12px;color:var(--text-soft);background:var(--mist);border:1px solid var(--line);border-radius:99px;padding:4px 11px}

.tjc-store-actions{display:flex;flex-direction:column;gap:9px;flex:none}
.tjc-store-actions .tjc-btn{white-space:nowrap}

/* tabs */
.tjc-store-tabs{display:flex;gap:6px;margin-top:20px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
.tjc-store-tabs::-webkit-scrollbar{display:none}
.tjc-store-tab{padding:12px 16px;font-size:14.5px;font-weight:600;color:var(--text-soft);white-space:nowrap;
  border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s}
.tjc-store-tab:hover{color:var(--ink)}
.tjc-store-tab.is-active{color:var(--brand-deep);border-bottom-color:var(--brand-deep)}

/* ============================ TOOLBAR ============================ */
.tjc-store-body{padding-bottom:70px}
.tjc-store-toolbar{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 18px;margin-bottom:24px}
.tjc-store-toolbar-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.tjc-store-toolbar-row--sub{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}

.tjc-store-search{position:relative;flex:1;min-width:220px;max-width:420px}
.tjc-store-search svg{position:absolute;top:12px;inset-inline-start:13px;color:var(--text-soft);pointer-events:none}
.tjc-store-search input{width:100%;height:44px;border:1px solid var(--line);border-radius:11px;padding:0 14px 0 40px;font:inherit;font-size:14px;background:var(--mist)}
.tjc-store-search input:focus{outline:none;border-color:var(--brand);background:#fff;box-shadow:0 0 0 3px rgba(23,165,107,.13)}
[dir="rtl"] .tjc-store-search input{padding:0 40px 0 14px}
[dir="rtl"] .tjc-store-search svg{inset-inline-start:auto;inset-inline-end:13px}

.tjc-store-toolbar-right{display:flex;align-items:center;gap:14px;margin-inline-start:auto}
.tjc-store-count{font-size:13.5px;color:var(--text-soft);font-weight:500;white-space:nowrap}
.tjc-store-sort select{height:44px;border:1px solid var(--line);border-radius:11px;padding:0 34px 0 14px;font:inherit;font-size:13.5px;
  font-weight:600;color:var(--ink);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' viewBox='0 0 24 24' fill='none' stroke='%235C6B64' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 13px center;cursor:pointer;-webkit-appearance:none;appearance:none}
.tjc-store-sort select:focus{outline:none;border-color:var(--brand)}

/* category pills */
.tjc-store-catpills{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.tjc-pill{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:#fff;border-radius:99px;
  padding:8px 14px;font:inherit;font-size:13px;font-weight:600;color:var(--text-soft);cursor:pointer;transition:all .15s}
.tjc-pill span{font-size:11px;color:#9AAAA2;background:var(--mist);border-radius:99px;padding:1px 7px}
.tjc-pill:hover{border-color:#B9C6BF;color:var(--ink)}
.tjc-pill.on{background:var(--ink);border-color:var(--ink);color:#fff}
.tjc-pill.on span{background:rgba(255,255,255,.2);color:#fff}

/* price + toggles */
.tjc-store-price{display:flex;align-items:center;gap:8px}
.tjc-store-flabel{font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--text-soft);font-weight:600}
.tjc-store-price input{width:88px;height:40px;border:1px solid var(--line);border-radius:9px;padding:0 10px;font:inherit;font-size:13.5px;text-align:center}
.tjc-store-price input:focus{outline:none;border-color:var(--brand)}
.tjc-store-toggle{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;color:var(--text);cursor:pointer}
.tjc-store-toggle input{position:absolute;opacity:0;width:0;height:0}
.tjc-store-toggle-box{width:18px;height:18px;border:1.5px solid #C6D2CB;border-radius:5px;flex:none;display:flex;align-items:center;justify-content:center;transition:all .15s}
.tjc-store-toggle input:checked + .tjc-store-toggle-box{background:var(--brand-deep);border-color:var(--brand-deep)}
.tjc-store-toggle input:checked + .tjc-store-toggle-box::after{content:"";width:10px;height:10px;background:#fff;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat}
.tjc-store-clear{font-size:12.5px;font-weight:600;color:var(--brand-deep);cursor:pointer;margin-inline-start:auto}
.tjc-store-clear:hover{text-decoration:underline}

/* ============================ PRODUCT GRID (scoped for store) ============================ */
.tjc-store-results{position:relative;transition:opacity .2s}
.tjc-store-results.is-loading{opacity:.5;pointer-events:none}
.tjc-store ul.products.tjc-products{display:grid !important;grid-template-columns:repeat(4,1fr);gap:20px;margin:0;padding:0;list-style:none}
.tjc-store ul.products.tjc-products::before,.tjc-store ul.products.tjc-products::after{display:none !important;content:none !important}

.tjc-store ul.products li.product.tjc-card{
  width:auto !important;margin:0 !important;padding:0 !important;float:none !important;clear:none !important;min-height:0 !important;
  background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;
  display:flex !important;flex-direction:column !important;position:relative;transition:border-color .18s,transform .18s,box-shadow .18s}
.tjc-store ul.products li.product.tjc-card:hover{border-color:#CBDBD3;transform:translateY(-4px);box-shadow:0 18px 40px rgba(12,22,19,.10)}
/* keep body + foot visible in every state (beats theme hover rules) */
.tjc-store li.product.tjc-card .tjc-card-body,
.tjc-store li.product.tjc-card .tjc-card-foot,
.tjc-store li.product.tjc-card:hover .tjc-card-body,
.tjc-store li.product.tjc-card:hover .tjc-card-foot{display:flex !important;height:auto !important;max-height:none !important;overflow:visible !important;opacity:1 !important;visibility:visible !important}
.tjc-store li.product.tjc-card > a.woocommerce-LoopProduct-link,
.tjc-store li.product.tjc-card .button.add_to_cart_button:not(.tjc-btn),
.tjc-store li.product.tjc-card .woocommerce-loop-product__title:not(.tjc-card-title),
.tjc-store li.product.tjc-card > .price:not(.tjc-price),
.tjc-store li.product.tjc-card .star-rating:not(.tjc-rating){display:none !important}

.tjc-store .tjc-card-media{display:block;aspect-ratio:4/3;background:var(--mist);border-bottom:1px solid var(--line);overflow:hidden;position:relative}
.tjc-store .tjc-card-media img{width:100%;height:100%;object-fit:cover;display:block;margin:0;transition:transform .3s ease}
.tjc-store li.product.tjc-card:hover .tjc-card-media img{transform:scale(1.04)}
.tjc-store .tjc-badges{position:absolute;top:12px;inset-inline-start:12px;z-index:2;display:flex;flex-direction:column;gap:6px}
.tjc-store .tjc-badge{font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:5px 10px;border-radius:99px;background:var(--brand-tint);color:var(--brand-deep);box-shadow:0 2px 6px rgba(12,22,19,.06)}
.tjc-store .tjc-badge.hot{background:var(--amber-tint);color:var(--amber)}
.tjc-store .tjc-badge.oos{background:#EEE;color:#6B6B6B}
.tjc-store .tjc-wish{position:absolute;top:11px;inset-inline-end:11px;z-index:3;width:36px;height:36px;border-radius:50%;
  border:1px solid var(--line);background:#fff;color:var(--text-soft);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;box-shadow:0 2px 10px rgba(12,22,19,.10)}
.tjc-store .tjc-wish:hover{color:var(--danger);border-color:var(--danger);transform:scale(1.06)}
.tjc-store .tjc-wish.on{color:#fff;background:var(--danger);border-color:var(--danger)}
.tjc-store .tjc-wish.on svg{fill:currentColor}
.tjc-store .tjc-card-body{padding:16px 16px 12px;display:flex;flex-direction:column;gap:7px;flex:1 1 auto}
.tjc-store .tjc-vendor{font-size:11.5px;color:var(--text-soft);display:flex;align-items:center;gap:5px;font-weight:500}
.tjc-store .tjc-vendor svg{color:var(--brand);flex:none}
.tjc-store .tjc-card-title{font-family:var(--fd);font-size:15px;font-weight:600;line-height:1.4;margin:0;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.8em}
.tjc-store .tjc-card-title a:hover{color:var(--brand-deep)}
.tjc-store .tjc-rating{font-size:12.5px;color:var(--amber);font-weight:600}
.tjc-store .tjc-rating em{color:var(--text-soft);font-style:normal;font-weight:400}
.tjc-store .tjc-price{font-family:var(--fd);font-size:19px;font-weight:700;color:var(--ink);margin-top:auto;padding-top:4px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.tjc-store .tjc-price del{color:#9AAAA2;font-weight:400;font-size:13.5px;order:2}
.tjc-store .tjc-price ins{text-decoration:none;order:1}
.tjc-store .tjc-card-foot{display:flex;gap:8px;padding:0 16px 16px;margin-top:2px}
.tjc-store .tjc-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-family:var(--fb);font-weight:600;font-size:13.5px;
  border-radius:10px;padding:11px 16px;border:1px solid var(--line);background:#fff;color:var(--text);cursor:pointer;transition:all .15s;line-height:1;text-align:center}
.tjc-store .tjc-btn:hover{border-color:#B9C6BF;background:var(--mist)}
.tjc-store .tjc-btn-primary{background:var(--brand-deep);border-color:var(--brand-deep);color:#fff}
.tjc-store .tjc-btn-primary:hover{background:#0A5C40;border-color:#0A5C40;color:#fff}
.tjc-store .tjc-card-foot .add{flex:1}
.tjc-store .tjc-btn-quote{flex:none}
.tjc-store .tjc-card-foot .added_to_cart{display:none !important}

/* pagination / empty / loading */
.tjc-store .tjc-pagination{margin-top:30px;display:flex;justify-content:center}
.tjc-store .tjc-pagination ul{list-style:none;display:flex;gap:6px;padding:0;margin:0}
.tjc-store .tjc-pagination a,.tjc-store .tjc-pagination span{display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;border:1px solid var(--line);border-radius:10px;font-size:14px;font-weight:600;color:var(--text);background:#fff}
.tjc-store .tjc-pagination a:hover{border-color:var(--brand);color:var(--brand-deep)}
.tjc-store .tjc-pagination .current{background:var(--brand-deep);border-color:var(--brand-deep);color:#fff}
.tjc-store .tjc-empty{text-align:center;padding:70px 20px;border:1px dashed var(--line);border-radius:16px;background:var(--mist);color:var(--text-soft)}
.tjc-store .tjc-empty h3{font-size:19px;color:var(--ink);margin-bottom:6px}
.tjc-store .tjc-loading{position:relative;height:120px}
.tjc-store .tjc-loading[hidden]{display:none !important}
.tjc-store .tjc-spinner{position:absolute;top:40px;left:50%;margin-left:-17px;width:34px;height:34px;border:3px solid var(--line);border-top-color:var(--brand-deep);border-radius:50%;animation:tjcSpin .7s linear infinite}
@keyframes tjcSpin{to{transform:rotate(360deg)}}

/* ============================ RESPONSIVE ============================ */
@media(max-width:1080px){.tjc-store ul.products.tjc-products{grid-template-columns:repeat(2,1fr) !important}}
@media(max-width:820px){
  .tjc-store-banner{height:180px}
  .tjc-store-card{margin-top:-50px;padding:18px}
  .tjc-store-actions{flex-direction:row;width:100%}
  .tjc-store-actions .tjc-btn{flex:1}
}
@media(max-width:560px){
  .tjc-store ul.products.tjc-products{grid-template-columns:1fr 1fr !important;gap:12px}
  .tjc-store-wrap{padding:0 16px}
  .tjc-store-toolbar-right{width:100%;margin-top:10px}
  .tjc-store-count{margin-inline-end:auto}
  .tjc-card-foot{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){.tjc-store *{transition:none !important}.tjc-store .tjc-spinner{animation:none}}
