/*********************************************************
  REKMED - ADDITIONAL CSS (Clean Master)
  Sections:
  1) Brand Variables
  2) WooCommerce: General tweaks
  3) WooCommerce: Product cards (scoped)
  4) WooCommerce: Category tiles (reset)
  5) Woo Blocks Checkout: Order Summary clean-up
  6) Tutor LMS: Brand + layout + mobile bar
**********************************************************/

/* ==============================
   1) Brand Variables
============================== */
:root {
  --rekmed-purple: #6c2bd9;
  --rekmed-gray-500: #6b7280;
}

/* ==============================
   2) WooCommerce: General tweaks
============================== */

/* Hide Woo breadcrumbs (optional) */
.woocommerce-breadcrumb { display: none !important; }

/* Sale badge color */
.woocommerce span.onsale,
.woocommerce ul.products li.product .onsale {
  background-color: var(--rekmed-purple) !important;
  color: #fff !important;
  border-radius: 50px;
  padding: 6px 12px;
  font-weight: bold;
  font-size: 13px;
  text-transform: uppercase;
}

/* Sale price (current discounted) */
.woocommerce ul.products li.product .price ins,
.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins {
  color: var(--rekmed-purple) !important;
  font-weight: bold;
}

/* Regular crossed-out price */
.woocommerce ul.products li.product .price del,
.woocommerce div.product p.price del,
.woocommerce div.product span.price del {
  color: var(--rekmed-gray-500) !important;
  opacity: 0.8;
}

/* Normal / regular product price (not on sale) */
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
  color: var(--rekmed-purple) !important;
  font-weight: bold;
}

/* Make rows stretch so all cards can reach equal height */
.woocommerce ul.products { align-items: stretch; }

/* ==============================
   3) WooCommerce: Product cards (SCOPED)
   NOTE: Only real products, not categories.
============================== */
.woocommerce ul.products li.product:not(.product-category) {
  display: flex !important;
  flex-direction: column;
  background: #fff;
  padding: 16px;
  border-radius: 16px;
  box-shadow: 0 6px 18px rgba(0,0,0,0.12);
  height: 100%;
  transition: box-shadow 0.3s ease, transform 0.3s ease;
}
.woocommerce ul.products li.product:not(.product-category):hover {
  box-shadow: 0 10px 28px rgba(0,0,0,0.18);
  transform: translateY(-4px);
}

/* Product card image box */
.woocommerce ul.products li.product:not(.product-category) a img {
  width: 100%;
  height: 300px;
  object-fit: contain; /* change to cover if you want full-bleed */
}

/* Title & price reserved space for clean rows */
.woocommerce ul.products li.product:not(.product-category) .woocommerce-loop-product__title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 3.2em;   /* ~2 lines */
  margin: 12px 0 8px;
  line-height: 1.2;
}
.woocommerce ul.products li.product:not(.product-category) .price {
  min-height: 40px;    /* room for del + ins */
  line-height: 1.2;
  margin-bottom: 8px;
}

/* Full-width button pinned to bottom */
.woocommerce ul.products li.product:not(.product-category) .button {
  margin-top: auto;
  width: 100%;
  text-align: center;
  border-radius: 999px;
  padding: 10px 20px;
}

/* Badge position on cards */
.woocommerce ul.products li.product:not(.product-category) .onsale {
  position: absolute;
  top: 10px;
  right: 10px;
}

/* Desktop: consistent card height */
@media (min-width: 1024px) {
  .woocommerce ul.products li.product:not(.product-category) {
    min-height: 560px; /* adjust 520–600 to taste */
  }
}

/* ==============================
   4) WooCommerce: Category tiles (RESET)
   Keeps the “Shop” category grid looking default.
============================== */
.woocommerce ul.products li.product.product-category {
  display: block !important;
  background: transparent !important;
  padding: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  height: auto !important;
  min-height: 0 !important;
  transform: none !important;
}
.woocommerce ul.products li.product.product-category a img {
  width: 100%;
  height: auto !important;
  object-fit: cover;
}
.woocommerce ul.products li.product.product-category .woocommerce-loop-category__title {
  min-height: auto;
  margin: 12px 0 0;
  line-height: 1.2;
  text-align: left; /* change to center if you prefer */
}

/* ==========================================
   5) Woo Blocks Checkout: Order Summary clean-up
   Show only Product Title + Price (hide meta).
========================================== */
.wc-block-checkout .wc-block-components-order-summary
  .wc-block-components-order-summary-item__description {
  display: block !important; /* keep container so title renders */
}

/* Product TITLE style in order summary */
.wc-block-checkout .wc-block-components-order-summary
  .wc-block-components-product-name,
.wc-block-checkout .wc-block-components-order-summary
  .wc-block-components-product-name a {
  display: block !important;
  color: #111 !important; /* change to var(--rekmed-purple) if desired */
  font-weight: 700;
  text-decoration: none;
  line-height: 1.25;
}

/* Hide metadata under the title (SKU, attributes, etc.) */
.wc-block-checkout .wc-block-components-order-summary
  .wc-block-components-product-metadata,
.wc-block-checkout .wc-block-components-order-summary
  .wc-block-components-order-summary-item__sku,
.wc-block-checkout .wc-block-components-order-summary
  .wc-block-components-order-summary-item__attributes {
  display: none !important;
}

/* Tidy spacing per line item */
.wc-block-checkout .wc-block-components-order-summary
  .wc-block-components-order-summary-item {
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(0,0,0,0.06);
}
.wc-block-checkout .wc-block-components-order-summary
  .wc-block-components-order-summary-item__image
  + .wc-block-components-order-summary-item__details {
  margin-bottom: 8px;
}

/* Option: hide thumbnails in summary (title + price only) */
/*
.wc-block-checkout .wc-block-components-order-summary-item__image {
  display: none !important;
}
*/

/* ==============================
   6) Tutor LMS: Brand + layout + mobile bar
============================== */

/* Brand color through Tutor UI */
.tutor-color-primary,
.tutor-btn-primary,
.tutor-btn-primary:hover,
.tutor-anchor-color,
.tutor-anchor-color:hover,
.tutor-badge-label,
.tutor-progress-bar__bar,
.tutor-progress-bar .tutor-progress-value,
.tutor-pagination .active a {
  background-color: var(--rekmed-purple) !important;
  border-color: var(--rekmed-purple) !important;
  color: #fff !important;
}
a.tutor-text-primary,
.tutor-text-primary { color: var(--rekmed-purple) !important; }

/* Sidebar cleanup */
.tutor-dashboard-permalinks,
.tutor-dashboard-permalinks ul,
.tutor-dashboard-permalinks li {
  list-style: none !important;
  margin: 0; padding: 0;
}
.tutor-dashboard-permalinks li a {
  display: flex; align-items: center; gap: 10px;
  padding: 10px 14px;
  border-radius: 12px;
}
.tutor-dashboard-permalinks li.is-active a,
.tutor-dashboard-permalinks li a:hover {
  background: #f2edfd;
  color: #2b2252 !important;
}

/* Cards + panels */
.tutor-card,
.tutor-dashboard-card,
.tutor-dashboard-content .tutor-card {
  border: 0 !important;
  border-radius: 16px !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.06) !important;
}

/* Hide instructor-only UI for students */
.tutor-dashboard-header .tutor-btn,       /* "New Course" button */
.tutor-dashboard .tutor-withdraw-method,  /* Withdraw panel */
.tutor-dashboard .tutor-earning-summery { /* Earnings blocks if present */
  display: none !important;
}

/* Profile sidebar spacing */
.tutor-dashboard-right-sidebar { gap: 14px; }

/* Buttons */
.tutor-btn { border-radius: 999px !important; padding: 10px 18px !important; }

/* Avatar ring */
.tutor-dashboard-header .tutor-avatar {
  border: 4px solid #fff;
  box-shadow: 0 4px 18px rgba(0,0,0,0.08);
}

/* Content width + two-column layout + sticky side */
.tutor-dashboard-content,
.tutor-dashboard-wrapper {
  max-width: 1100px; margin: 0 auto;
}
.tutor-dashboard-wrapper {
  display: grid;
  grid-template-columns: 260px minmax(0,1fr);
  gap: 24px;
}
.tutor-dashboard-permalinks {
  width: 100%;
  position: sticky;
  top: 90px;             /* adjust based on your header height */
  align-self: start;
}

/* Mobile bottom nav — choose ONE option */

/* A) Hide mobile bottom quick-nav */
@media (max-width: 767px) {
  .tutor-mobile-bottom-navigation,
  .tutor-dashboard-mobile-bottom-navigation,
  .tutor-dashboard-bottom-navigation {
    display: none !important;
  }
}

/* B) Or move it to the top (uncomment this block, and comment A out) */
/*
@media (max-width: 767px) {
  .tutor-mobile-bottom-navigation,
  .tutor-dashboard-mobile-bottom-navigation,
  .tutor-dashboard-bottom-navigation {
    position: sticky;
    top: 0;
    bottom: auto;
    z-index: 1000;
    background: #fff;
    box-shadow: 0 4px 14px rgba(0,0,0,0.08);
  }
}
*/

/* Hide all WooCommerce stock info */
.woocommerce div.product .stock,
.bundled_product_summary .stock {
  display: none !important;
}

/* Reduce product card title size on shop/archive pages */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-size: 22px !important;
  font-weight: 600;
  line-height: 1.2;
  margin-bottom: 6px;
  text-align: center;
}

/* Optional: Responsive tweak for mobile */
@media (max-width: 768px) {
  .woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 20px !important;
  }
}

/* Product title on mobile - allow 3 lines of text */
@media (max-width: 767px) {
  .woocommerce ul.products li.product:not(.product-category) .woocommerce-loop-product__title {
    -webkit-line-clamp: 3;
    min-height: 4.5em; /* enough for ~3 lines */
    font-size: 15px; /* adjust as needed */
    margin: 10px 0 6px;
  }
}
/* MOBILE PRODUCT CARD HEIGHT FIX */
@media (max-width: 768px) {
  .woocommerce ul.products li.product {
    padding: 10px 10px;
    height: auto !important;
    min-height: 400px; /* Try 380–420px range */
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }

  .woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 16px !important;
    line-height: 1.2em;
    height: 3em; /* roughly 2 lines */
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    margin-bottom: 8px;
  }

  .woocommerce ul.products li.product .price {
    font-size: 15px !important;
    margin-bottom: 10px;
  }

  .woocommerce ul.products li.product img {
    max-height: 180px;
    object-fit: contain;
    margin: 0 auto 10px;
  }

  .woocommerce ul.products li.product a.button {
    font-size: 15px !important;
    padding: 10px 15px !important;
  }
}

/* BUNDLE PRODUCT GRID - 2 ACROSS */
.bundle_form {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 24px;
  max-width: 1200px;
  margin: 0 auto;
}

/* PRODUCT CARD STYLE */
.bundle_form .bundled_product_summary {
  flex: 1 1 calc(50% - 24px); /* Two across with spacing */
  max-width: calc(50% - 24px);
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 16px;
  padding: 20px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
  text-align: center;
  transition: all 0.3s ease;
  box-sizing: border-box;
}

.bundle_form .bundled_product_summary:hover {
  box-shadow: 0 8px 24px rgba(0,0,0,0.08);
}

/* IMAGE STYLE */
.bundle_form .bundled_product_summary img {
  width: 100%;
  max-height: 140px;
  object-fit: contain;
  margin-bottom: 12px;
}

/* PRODUCT TITLE */
.bundle_form .product_title {
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
  margin: 10px 0 6px;
  min-height: 2.6em;
}

/* DROPDOWN STYLE */
.bundle_form .bundled_product_summary select {
  width: 100%;
  font-size: 14px;
  padding: 8px;
  margin: 8px 0;
  border-radius: 8px;
}

/* QUANTITY FIELD */
.bundle_form .bundled_product_summary .quantity {
  max-width: 60px;
  margin: 8px auto;
}

/* "Clear" LINK */
.bundle_form .bundled_product_summary .bundled_product_optional_button {
  font-size: 13px;
  margin-top: 8px;
  color: #b00020;
}

/* Hide stock labels */
.bundle_form .bundled_product_summary .stock {
  display: none !important;
}

/* MOBILE RESPONSIVE STYLING */
@media (max-width: 1024px) {
  .bundle_form .bundled_product_summary {
    flex: 1 1 100%;
    max-width: 100%;
  }
}

/*HIDING SALE BUTTONS */
.woocommerce span.onsale {
  display: none !important;
}

/*TUTORLMS DASH SIZING */
.tutor-course-card {
    max-width: 220px !important; /* shrink width */
    margin: 15px !important;     /* space around */
}

.tutor-course-card img {
    max-height: 160px; /* scale image smaller */
    object-fit: cover;
}

@media (max-width: 768px) {
  .tutor-single-lesson-title,
  .tutor-lesson-title,
  .tutor-video-title {
    font-size: 16px !important;
  }

  .tutor-course-topic-item a {
    font-size: 13px !important;
  }
}

/* Tutor LMS: Course curriculum / lesson titles smaller */
.tutor-course-topic-item-title,
.tutor-course-topic-item a {
    font-size: 14px !important;   /* desktop size */
    font-weight: 500 !important;
    line-height: 1.3 !important;
}

/* If you want even smaller on desktop */
@media (min-width: 1025px) {
    .tutor-course-topic-item-title,
    .tutor-course-topic-item a {
        font-size: 13px !important;
    }
}