/**
 * LearnPress 4.x courses archive design fix
 * Scope: /courses/ archive only (body.nineismine-lp-courses-archive)
 * Goal: match pre-update NineIsMine card layout + page banner/header clearance
 *
 * Deploy with: inc/learnpress-courses-archive-fix.php
 */

/* -------------------------------------------------------------------------
   Page banner — clears absolute transparent header (logo was overlapping search)
   ------------------------------------------------------------------------- */

body.nineismine-lp-courses-archive .nineismine-lp-courses-banner-wrap {
  width: 100%;
}

body.nineismine-lp-courses-archive
  .nineismine-lp-courses-banner-wrap
  .page-banner {
  height: 280px;
}

body.nineismine-lp-courses-archive
  .nineismine-lp-courses-banner-wrap
  .banner-sub-heading
  ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 6px;
}

body.nineismine-lp-courses-archive
  .nineismine-lp-courses-banner-wrap
  .banner-sub-heading
  a {
  color: #fff;
  text-decoration: none;
}

body.nineismine-lp-courses-archive
  .nineismine-lp-courses-banner-wrap
  .banner-sub-heading
  li {
  color: #fff;
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Current page in breadcrumb — same orange as Media Center */
body.nineismine-lp-courses-archive
  .nineismine-lp-courses-banner-wrap
  .banner-sub-heading
  li.category-2,
body.nineismine-lp-courses-archive
  .nineismine-lp-courses-banner-wrap
  .banner-sub-heading
  li:last-of-type {
  color: #f60;
}

/* Hide LP breadcrumb — theme banner already has Home / Courses */
body.nineismine-lp-courses-archive .learn-press-breadcrumb {
  display: none !important;
}

/* Ensure header chrome sits above the banner image */
body.nineismine-lp-courses-archive #site-header.main-header {
  z-index: 30;
}

/* -------------------------------------------------------------------------
   Archive shell
   ------------------------------------------------------------------------- */

body.nineismine-lp-courses-archive #lp-archive-courses,
body.nineismine-lp-courses-archive .lp-archive-courses {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 30px 15px 40px;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
  background: #fff;
}

body.nineismine-lp-courses-archive .lp-content-area {
  max-width: 100%;
  padding: 0;
}

/* -------------------------------------------------------------------------
   Search bar (full width, orange Search button)
   ------------------------------------------------------------------------- */

body.nineismine-lp-courses-archive .lp-courses-bar {
  display: block;
  margin: 0 0 30px;
  padding: 0;
  border: 0;
  background: transparent;
}

body.nineismine-lp-courses-archive .lp-courses-bar .search-courses,
body.nineismine-lp-courses-archive form[name="search-course"] {
  display: flex;
  width: 100%;
  margin: 0;
  align-items: stretch;
}

body.nineismine-lp-courses-archive
  form[name="search-course"]
  input[name="c_search"],
body.nineismine-lp-courses-archive
  form[name="search-course"]
  input[type="text"] {
  flex: 1 1 auto;
  width: auto;
  min-height: 44px;
  padding: 10px 14px;
  border: 1px solid #ddd;
  border-radius: 0;
  box-shadow: none;
  font-size: 15px;
}

body.nineismine-lp-courses-archive form[name="search-course"] .lp-button,
body.nineismine-lp-courses-archive form[name="search-course"] button {
  flex: 0 0 auto;
  min-width: 110px;
  min-height: 44px;
  margin: 0;
  padding: 10px 22px;
  background: #ff6600 !important;
  border: 2px solid #ff6600 !important;
  border-radius: 0;
  color: #fff !important;
  font-size: 15px;
  font-weight: 600;
  text-transform: none;
  cursor: pointer;
}

body.nineismine-lp-courses-archive form[name="search-course"] .lp-button:hover,
body.nineismine-lp-courses-archive form[name="search-course"] button:hover {
  background: #fff !important;
  color: #ff6600 !important;
}

/* -------------------------------------------------------------------------
   3-column course grid — equal height cards, aligned Enrol buttons
   ------------------------------------------------------------------------- */

body.nineismine-lp-courses-archive ul.learn-press-courses {
  display: flex !important;
  flex-wrap: wrap;
  align-items: stretch !important;
  gap: 0;
  margin: 0 -10px !important;
  padding: 0 !important;
  list-style: none !important;
}

body.nineismine-lp-courses-archive ul.learn-press-courses > li.course {
  box-sizing: border-box;
  display: flex !important;
  flex-direction: column;
  width: 33.333% !important;
  max-width: 33.333% !important;
  flex: 0 0 33.333% !important;
  margin: 0 0 28px !important;
  padding: 0 10px !important;
  list-style: none !important;
  box-shadow: none !important;
  background: transparent !important;
  border: 0 !important;
}

body.nineismine-lp-courses-archive
  ul.learn-press-courses
  > li.course
  .course-item {
  display: flex !important;
  flex-direction: column;
  flex: 1 1 auto;
  width: 100%;
  height: 100%;
  min-height: 100%;
  background: #fff;
  box-shadow: none;
  border: 0;
  overflow: hidden;
}

/* Fixed thumbnail height so all cards start content at the same row */
body.nineismine-lp-courses-archive .course-thumbnail,
body.nineismine-lp-courses-archive .course-thumbnail a,
body.nineismine-lp-courses-archive .course-thumbnail .course-img {
  display: block;
  width: 100%;
}

body.nineismine-lp-courses-archive .course-thumbnail img {
  display: block;
  width: 100% !important;
  height: 200px !important;
  object-fit: cover !important;
  object-position: center;
}

body.nineismine-lp-courses-archive .course-content {
  display: flex !important;
  flex-direction: column;
  flex: 1 1 auto;
  padding: 14px 0 0;
  min-height: 0;
}

/* Title — fixed 2-line slot so Free/Enrol rows line up across cards */
body.nineismine-lp-courses-archive .wap-course-title,
body.nineismine-lp-courses-archive .wap-course-title a,
body.nineismine-lp-courses-archive .course-title,
body.nineismine-lp-courses-archive span.course-title {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #ff7931 !important;
  font-family: "Roboto Slab", Georgia, serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  min-height: calc(1.35em * 2) !important;
  text-decoration: none !important;
}

body.nineismine-lp-courses-archive .wap-course-title {
  margin: 0 0 12px !important;
}

body.nineismine-lp-courses-archive .wap-course-title a:hover {
  opacity: 0.85;
}

/* Free + instructor + Enrol — pinned to bottom of card */
body.nineismine-lp-courses-archive .course-info {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  grid-template-areas:
    "price instructor"
    "btn btn";
  align-items: center;
  column-gap: 8px;
  row-gap: 14px;
  margin-top: auto !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  width: 100%;
}

body.nineismine-lp-courses-archive .course-info > .course-price {
  grid-area: price;
  justify-self: start;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

body.nineismine-lp-courses-archive .course-info > .course-instructor {
  grid-area: instructor;
  justify-self: end;
  text-align: right;
  margin: 0 !important;
  padding: 0 !important;
}

/* Same font size for Free and author on every card */
body.nineismine-lp-courses-archive .course-info > .course-price,
body.nineismine-lp-courses-archive .course-info > .course-price *,
body.nineismine-lp-courses-archive .course-info > .course-instructor,
body.nineismine-lp-courses-archive .course-info > .course-instructor *,
body.nineismine-lp-courses-archive .course-info .course-item-price,
body.nineismine-lp-courses-archive .course-info .free,
body.nineismine-lp-courses-archive .course-info .origin-price,
body.nineismine-lp-courses-archive .course-info .instructor-display-name {
  font-family: "Roboto Slab", Georgia, serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  letter-spacing: normal !important;
  text-transform: capitalize !important;
  background: transparent !important;
}

body.nineismine-lp-courses-archive .course-info > .course-price,
body.nineismine-lp-courses-archive .course-info > .course-price * {
  color: #888 !important;
}

body.nineismine-lp-courses-archive .course-info > .course-instructor,
body.nineismine-lp-courses-archive .course-info > .course-instructor a,
body.nineismine-lp-courses-archive .course-info .instructor-display-name {
  color: #ff7931 !important;
  text-decoration: none !important;
}

body.nineismine-lp-courses-archive
  .course-info
  > .course-instructor
  .course-instructor {
  display: inline !important;
}

body.nineismine-lp-courses-archive .course-info > .course-readmore,
body.nineismine-lp-courses-archive .course-info > .lp-course-buttons {
  grid-area: btn;
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

body.nineismine-lp-courses-archive .course-readmore a,
body.nineismine-lp-courses-archive .course-readmore .lp-button,
body.nineismine-lp-courses-archive .lp-course-buttons .lp-button {
  display: block !important;
  width: 100% !important;
  box-sizing: border-box;
  margin: 0 !important;
  padding: 12px 16px !important;
  background: #ff6600 !important;
  border: 2px solid #ff6600 !important;
  border-radius: 0 !important;
  color: #fff !important;
  font-family: "Roboto Slab", Georgia, serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: none !important;
}

body.nineismine-lp-courses-archive .course-readmore a:hover,
body.nineismine-lp-courses-archive .course-readmore .lp-button:hover,
body.nineismine-lp-courses-archive .lp-course-buttons .lp-button:hover {
  background: #fff !important;
  color: #ff6600 !important;
}

/* Hide LP4 extras not in old design */
body.nineismine-lp-courses-archive .course-wrap-meta,
body.nineismine-lp-courses-archive .course-instructor-category,
body.nineismine-lp-courses-archive .course-short-description,
body.nineismine-lp-courses-archive .course-content > .featured,
body.nineismine-lp-courses-archive .learn-press-courses-header,
body.nineismine-lp-courses-archive .courses-order-by,
body.nineismine-lp-courses-archive .switch-layout,
body.nineismine-lp-courses-archive .lp-courses-bar .order-by,
body.nineismine-lp-courses-archive .lp-btn-filter-mobile,
body.nineismine-lp-courses-archive
  .lp-archive-courses
  > .learn-press-breadcrumb,
body.nineismine-lp-courses-archive ul.learn-press-breadcrumb {
  display: none !important;
}

/* Search bar same content width as course grid */
body.nineismine-lp-courses-archive .lp-courses-bar {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

/* -------------------------------------------------------------------------
   Responsive
   ------------------------------------------------------------------------- */

@media (max-width: 991px) {
  body.nineismine-lp-courses-archive ul.learn-press-courses > li.course {
    width: 50% !important;
    max-width: 50% !important;
    flex: 0 0 50% !important;
  }
}

@media (max-width: 575px) {
  body.nineismine-lp-courses-archive ul.learn-press-courses > li.course {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  body.nineismine-lp-courses-archive .wap-course-title,
  body.nineismine-lp-courses-archive .wap-course-title a {
    font-size: 18px !important;
  }
}
