/*
Theme Name:   CupLab
Template:     woostify
Version:      1.0.0
Description:  CupLab — Woostify Child Theme
Text Domain:  cuplab
*/

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');

/* ─── VARIABLES ─── */
:root {
  --cl-black:  #0a0a0a;
  --cl-white:  #ffffff;
  --cl-g100:   #f6f6f6;
  --cl-g200:   #ebebeb;
  --cl-g400:   #9e9e9e;
  --cl-g600:   #616161;
  --cl-green:  #2e7d32;
  --cl-gbg:    #e8f5e9;
  --cl-red:    #e53935;
  --cl-tr:     0.2s ease;
}

/* ─── BASE ─── */
body, body * {
  font-family: 'Inter', sans-serif !important;
}
body {
  color: var(--cl-black) !important;
  -webkit-font-smoothing: antialiased;
}
a { text-decoration: none; }

/* ─── LOGO BOYUTU ─── */
.woostify-site-logo img,
.site-logo img,
#site-logo img,
.custom-logo {
  max-height: 40px !important;
  width: auto !important;
  object-fit: contain !important;
}

/* ─── HEADER ─── */
#masthead,
.site-header {
  border-bottom: 1px solid var(--cl-g200) !important;
  box-shadow: none !important;
}

/* ─── SIDEBAR KALDIR ─── */
.woostify-shop-page .woostify-sidebar,
.woostify-shop-page #secondary,
.woocommerce-page #secondary,
.shop-page #secondary,
#secondary { display: none !important; }

.woostify-shop-page #primary,
.woocommerce-page #primary,
#primary { width: 100% !important; float: none !important; }

.woostify-shop-page .woostify-site-content,
.woocommerce-page .woostify-site-content,
.woostify-site-content {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

/* ─── ÜRÜN GRID ─── */
.woostify-products-loop ul.products,
ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 16px !important;
  float: none !important;
  width: 100% !important;
}

/* ─── ÜRÜN KARTI ─── */
ul.products li.product {
  border: 1px solid var(--cl-g200) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  transition: box-shadow var(--cl-tr), transform var(--cl-tr) !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  float: none !important;
}
ul.products li.product:hover {
  box-shadow: 0 6px 28px rgba(0,0,0,.1) !important;
  transform: translateY(-3px) !important;
}
ul.products li.product a img {
  aspect-ratio: 1 !important;
  object-fit: contain !important;
  padding: 16px !important;
  background: var(--cl-g100) !important;
  width: 100% !important;
  height: auto !important;
}
ul.products li.product .woocommerce-loop-product__title {
  font-size: .9rem !important;
  font-weight: 600 !important;
  padding: 12px 14px 4px !important;
  white-space: normal !important;
  word-break: break-word !important;
  writing-mode: horizontal-tb !important;
}
ul.products li.product .price {
  font-size: 1rem !important;
  font-weight: 700 !important;
  padding: 0 14px 14px !important;
  display: block !important;
}
ul.products li.product .button {
  display: none !important;
}

/* ─── ÜRÜN SAYFASI — GEREKSIZ ELEMENTLER GİZLE ─── */
/* WC adet kutusu */
.woocommerce div.product form.cart .quantity,
.woocommerce div.product form.cart .woostify-qty-button,
.woocommerce div.product form.cart .woostify-single-product-qty { display: none !important; }
/* Kategori, etiket, marka meta */
.woocommerce div.product .product_meta { display: none !important; }
/* Açıklama ve ek bilgiler sekmeleri */
.woocommerce-tabs,
.woocommerce div.product .woocommerce-tabs { display: none !important; }
/* Upsell */
.upsells { display: none !important; }
/* Previous/Next navigasyon */
.woostify-product-navigation { display: none !important; }
.single_add_to_cart_button,
.woocommerce div.product form.cart .single_add_to_cart_button {
  background: var(--cl-black) !important;
  color: #fff !important;
  border-radius: 12px !important;
  padding: 16px 28px !important;
  font-size: .92rem !important;
  font-weight: 600 !important;
  border: none !important;
  width: 100% !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  transition: transform var(--cl-tr), box-shadow var(--cl-tr) !important;
}
.single_add_to_cart_button:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 20px rgba(0,0,0,.18) !important;
  background: var(--cl-black) !important;
  color: #fff !important;
}

/* ─── ÜRÜN ÖZEL ALANLARI ─── */
.cl-min-badge {
  display: inline-flex; align-items: center; gap: 6px;
  background: var(--cl-gbg); color: var(--cl-green);
  border-radius: 100px; padding: 6px 14px;
  font-size: .76rem; font-weight: 600; margin-bottom: 20px;
}
.cl-divider { height: 1px; background: #f0f0f0; margin: 14px 0; }
.cl-section-label {
  font-size: .71rem; font-weight: 700; color: #aaa;
  letter-spacing: .1em; text-transform: uppercase; margin-bottom: 10px;
}

/* Adet */
.cl-qty-row { display: flex; align-items: center; width: fit-content; margin-bottom: 6px; }
.cl-qty-btn {
  width: 44px; height: 44px; background: var(--cl-g100); border-radius: 10px;
  font-size: 1.2rem; display: flex; align-items: center; justify-content: center;
  cursor: pointer; border: none; user-select: none;
}
.cl-qty-btn:hover { background: var(--cl-g200); }
.cl-qty-input {
  width: 72px; height: 44px; text-align: center;
  border: 1.5px solid var(--cl-g200); border-left: none; border-right: none;
  font-size: 1rem; font-weight: 600; outline: none;
  -moz-appearance: textfield;
}
.cl-qty-input::-webkit-outer-spin-button,
.cl-qty-input::-webkit-inner-spin-button { -webkit-appearance: none; }
.cl-qty-hint { font-size: .72rem; color: #bbb; }

/* Logo yükleme */
.cl-upload-area {
  border: 2px dashed var(--cl-g200); border-radius: 14px;
  padding: 22px 20px; text-align: center; cursor: pointer;
  background: #fafafa; position: relative; transition: all var(--cl-tr);
}
.cl-upload-area:hover, .cl-upload-area.dragover { border-color: var(--cl-black); background: #f5f5f5; }
.cl-upload-area input[type=file] { position: absolute; inset: 0; opacity: 0; cursor: pointer; width: 100%; height: 100%; }
.cl-upload-icon { width: 44px; height: 44px; background: var(--cl-g100); border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 10px; }
.cl-upload-title { font-size: .88rem; font-weight: 600; margin-bottom: 3px; }
.cl-upload-sub { font-size: .73rem; color: #aaa; }
.cl-upload-fmts { display: flex; gap: 5px; justify-content: center; margin-top: 10px; flex-wrap: wrap; }
.cl-fmt { background: var(--cl-g100); color: #888; font-size: .65rem; font-weight: 600; padding: 3px 8px; border-radius: 4px; }
.cl-logo-preview { display: none; align-items: center; gap: 10px; padding: 10px 14px; background: #f5f5f5; border-radius: 10px; margin-top: 8px; }
.cl-logo-preview.show { display: flex; }
.cl-logo-preview img { width: 40px; height: 40px; object-fit: contain; background: #fff; border-radius: 6px; padding: 3px; }
.cl-logo-info { flex: 1; }
.cl-logo-name { font-size: .8rem; font-weight: 600; }
.cl-logo-size-txt { font-size: .7rem; color: #aaa; }
.cl-logo-rm { width: 28px; height: 28px; background: var(--cl-g200); border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; border: none; }
.cl-logo-rm:hover { background: #ffcdd2; color: #c62828; }
.cl-logo-status { font-size: .74rem; margin-top: 5px; min-height: 16px; }

/* Baskı konumu */
.cl-pos-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px; }
.cl-pos-opt { border: 1.5px solid var(--cl-g200); border-radius: 10px; padding: 12px 8px; cursor: pointer; text-align: center; background: #fff; transition: all var(--cl-tr); }
.cl-pos-opt:hover { border-color: #bbb; }
.cl-pos-opt.active { border-color: var(--cl-black); background: var(--cl-g100); }
.cl-pos-icon { font-size: 1.1rem; margin-bottom: 3px; }
.cl-pos-label { font-size: .73rem; font-weight: 500; color: #555; }
.cl-pos-opt.active .cl-pos-label { color: var(--cl-black); font-weight: 600; }
.cl-both-extra { display: none; padding: 9px 13px; background: #fff8e1; border-radius: 10px; border: 1px solid #ffe082; font-size: .8rem; color: #795548; margin-top: 8px; }
.cl-both-extra.show { display: block; }

/* Özellikler */
.cl-features { display: flex; flex-direction: column; }
.cl-feat-row { display: flex; justify-content: space-between; padding: 11px 0; border-bottom: 1px solid #f5f5f5; font-size: .84rem; }
.cl-feat-row:last-child { border-bottom: none; }
.cl-feat-key { color: #888; }
.cl-feat-val { font-weight: 500; }

/* WhatsApp */
.cl-btn-whatsapp {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  background: #25D366; color: #fff; border-radius: 12px; padding: 16px;
  font-size: .92rem; font-weight: 600; width: 100%; border: none;
  cursor: pointer; margin-top: 10px;
  transition: transform var(--cl-tr), box-shadow var(--cl-tr);
}
.cl-btn-whatsapp:hover { transform: translateY(-1px); box-shadow: 0 6px 20px rgba(37,211,102,.28); }

/* Toast */
.cl-toast {
  position: fixed; bottom: 28px; left: 50%;
  transform: translateX(-50%) translateY(80px);
  background: var(--cl-black); color: #fff; border-radius: 100px;
  padding: 13px 26px; font-size: .84rem; font-weight: 500;
  display: flex; align-items: center; gap: 8px;
  transition: transform .35s cubic-bezier(.34,1.56,.64,1);
  z-index: 9999; white-space: nowrap;
  box-shadow: 0 8px 32px rgba(0,0,0,.18);
}
.cl-toast.show { transform: translateX(-50%) translateY(0); }

/* Değerlendirme kaldır */
.woocommerce-tabs .reviews_tab,
#reviews { display: none !important; }

/* ─── WOOSTIFY FOOTER GİZLE (bizimki var) ─── */
#woostify-footer,
.woostify-footer,
footer#colophon,
.site-footer:not(#cl-footer) { display: none !important; }

/* Footer tam genişlik */
#cl-footer {
  width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  box-sizing: border-box !important;
}

/* Footer öncesi boşluk */
#page, .site { padding-bottom: 0 !important; }
.woocommerce-page .site-main,
.site-main { padding-bottom: 60px !important; }

/* ─── RESPONSIVE ─── */
@media (max-width: 1024px) {
  ul.products { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 768px) {
  ul.products { grid-template-columns: repeat(2, 1fr) !important; gap: 10px !important; }
  .cl-pos-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 480px) {
  ul.products { grid-template-columns: repeat(2, 1fr) !important; gap: 8px !important; }
}
