* {
	box-sizing: border-box;
}

:root {
  --lex-gray-200: #f1f1f4;
  --lex-gray-300: #dbdfe9;
  --lex-black-000: #000;
  --lex-black-300: #333333;
  --lex-warning-border: #f0b849;
  --lex-warning-bg: #fffbf4;
  --lex-error-border: #cc1818;
  --lex-error-bg: #fff0f0;
  --lex-success-border: #4ab866;
  --lex-success-bg: #f4fff7;
  --lex-notice-border: #007cba;
  --lex-notice-bg: #f4f8ff;
}

.wp-block-catalog-item {
  display: block;
}

.catalog-item-side-inner {
  position: sticky;
  top: 50px;
  margin-bottom: 20px;
}

.wp-block-acf-catalog-item, .favorite-item {
	border-radius: .75rem;
	border: 1px solid var(--lex-gray-200);
	box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, .03);
	margin-bottom: 20px;
	overflow: hidden;
  background-color: #fff;
}

.catalog-item-wrapper {
	display: flex;
	flex-wrap: wrap;
}

.auction-controls,
.auction-max-bid,
.auction-max-bid-display {
  display: none; /* Hidden by default */
}

/*-------------------------------*/
/*- Favorites -------------------*/
/*-------------------------------*/

.favorite-placeholder {
  border: 1px dashed var(--lex-gray-300);
  border-radius: 10px;
  padding: 20px;
  margin: 0 0 20px 0;
  display: flex;
  justify-content: center;
}

.catalog-favorites h3 {
  text-align: center;
}

.favorites-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 10px;
  align-items: stretch;
  margin: 0;
  padding: 0;
}

.favorite-item {
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
}

/* Make the catalog-item-wrapper stretch to fill available space */
.favorite-item .catalog-item-wrapper {
  display: flex;
  flex-direction: column;
  flex: 1;
}

/* Ensure catalog-content grows to fill available space */
.favorite-item .catalog-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center; /* or flex-start if you want content at the top */
}

.favorite-heading {
  display: flex;
  justify-content: flex-start;
  gap: 20px;
  align-items: center;
}

@media (min-width: 750px) {
  .favorite-item {
    width: calc((100% / 2) - 5px);
  }
}

@media (min-width: 1200px) {
  .favorite-item {
    width: calc((100% / 4) - 7.5px);
  }
}

/*-------------------------------*/
/*- Favorite Heading ------------*/
/*-------------------------------*/

.favorite-item .catalog-heading {
  flex-wrap: wrap;
  justify-content: center;
}

.favorite-item .catalog-heading-left,
.favorite-item .catalog-heading-right {
  width: 100%;
  text-align: center;
}

.favorite-item .catalog-status {
  justify-content: center;
}

.favorite-item .catalog-title {
  margin: 0;
  text-align: center;
}

/*-------------------------------*/
/*- Favorite Details ------------*/
/*-------------------------------*/

.favorite-item .catalog-details {
  column-couint: 1;
}

/*-------------------------------*/
/*- Favorite Action -------------*/
/*-------------------------------*/

.favorite-item .catalog-action {
  width: 100%;
  border-left: 0;
}

/*-------------------------------*/
/*- Catalog Heading -------------*/
/*-------------------------------*/

.catalog-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	border-bottom: 1px solid var(--lex-gray-200);
}

.catalog-heading h4 {
  font-size: 14px;
  font-weight: 500;
  padding: 10px;
  margin: 0;
}

.catalog-lot {
	padding-right: 10px;
}

.catalog-date {
  padding: 10px;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 500;
}

.catalog-status {
  padding: 10px;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.catalog-status-label {
	padding: 0 10px 0 0;
}

.catalog-item[data-status="overtime"] .catalog-status {
	color: purple;
}

/*-------------------------------*/
/*- Catalog Title ---------------*/
/*-------------------------------*/

.catalog-title {
  margin: 0 0 10px 0;
}

/*-------------------------------*/
/*- Catalog Thumb ---------------*/
/*-------------------------------*/

.catalog-thumb, .favorite-item .catalog-thumb {
  position: relative;
  width: 100%;
  order: 1;
  padding: 10px;
  border-radius: .375rem;
  overflow: hidden;
}

.catalog-thumb-inner {
  position: relative;
}

.catalog-thumb img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: .375rem;
}

.catalog-gallery-button {
  position: absolute;
  top: 10px;
  right: 10px;
  background-color: rgba(0,0,0,.5);
  color: #fff;
  padding: 5px 10px;
  border-radius: .375rem;
  font-size: 14px;
  text-decoration: none;
}

.catalog-thumb .breed {
  position: absolute;
  left: 20px;
  top: 20px;
  z-index: 9;
  display: block;
  background-color: var(--lex-border-color);
  padding: 5px 8px;
  border-radius: 1.5px;
  color: #fff;
  font-size: 12px;
}

@media (min-width: 750px) {
  .catalog-thumb {
    width: 50%;
  }
}

@media (min-width: 1200px) {
  .catalog-thumb {
    width: 25%;
  }
}

/*-------------------------------*/
/*- Catalog Content -------------*/
/*-------------------------------*/

.catalog-content, .favorite-item .catalog-content {
  width: 100%;
  order: 2;
  padding: 10px;
}

@media (min-width: 750px) {
  .catalog-content {
    order: 3;
  }
}

@media (min-width: 1200px) {
  .catalog-content {
    width: calc(100% - 45%);
    order: 2;
    padding: 10px 10px 0 0;
  }
}

/*-------------------------------*/
/*- Catalog Categories ----------*/
/*-------------------------------*/

.catalog-categories {
  list-style: none;
  border-bottom: 1px dashed var(--lex-gray-300);
  padding: 0;
  margin: 0 0 10px 0;
}

.catalog-categories li {
  display: inline-block;
  padding: 5px 10px;
  margin: 0 10px 10px 0;
  font-size: 13px;
  font-weight: 400;
  border: 1px solid var(--lex-gray-200);
  border-radius: 1.5px;
}

/*-------------------------------*/
/*- Catalog Details -------------*/
/*-------------------------------*/

.catalog-details {
  list-style: none;
  padding: 0 0 10px 0;
  margin: 0 0 10px 0;
  font-size: 14px;
}

.catalog-details li {
  position: relative;
  padding-left: 15px;
}

.catalog-details li:before {
  content: '\f0c8';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  font: var(--fa-font-solid);
  font-size: 5px;
  color: var(--lex-border-color);
}

.catalog-detail-title {
  font-weight: 400;
}

.catalog-detail.embryo-info {
  font-size: 14px;
  font-weight: bold;
  margin: 0 0 10px 0;
}

@media (min-width: 750px) {
  .catalog-details {
    column-count: 2;
    column-gap: 10px;
  }
}

/*-------------------------------*/
/*- Catalog Description ---------*/
/*-------------------------------*/

.catalog-detail-title {
  font-size: 14px;
}

.catalog-description ul {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 14px;
}

.catalog-description li {
  position: relative;
  display: inline-block;
  margin-right: 10px;
}

.catalog-description li:not(:nth-child(2)) {
  padding-left: 15px;
}

.catalog-description li:not(:nth-child(2)):before {
  content: '\f0c8';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  font: var(--fa-font-solid);
  font-size: 5px;
  color: var(--lex-border-color);
}

/*-------------------------------*/
/*- Catalog Action --------------*/
/*-------------------------------*/

.catalog-action {
  width: 100%;
  order: 4;
  padding: 10px;
  flex-grow: 1;
}

.catalog-action-details {
	text-align: center;
}

.catalog-action-wrapper {
	display: flex;
	align-self: stretch;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
}

.catalog-action-details {
	display: flex;
	flex-direction: column;
	gap: 10px;
  flex-grow: 1;
  align-items: center;
  justify-content: center;
}

@media (min-width: 750px) {
  .catalog-action {
    width: 50%;
    order: 2;
  }
}

@media (min-width: 1200px) {
  .catalog-action {
    width: 20%;
    order: 3;
    border-left: 1px solid var(--lex-gray-200);
  }
}

/*-------------------------------*/
/*- Catalog Action Buttons ------*/
/*-------------------------------*/

.reserve-not-met .catalog-action-button,
.auction-upcoming .catalog-action-button {
	display: none;
}

.catalog-action-button .auction-bid-button {
	width: 100%;
	height: 48px;
  border: 1px solid #000;
  border-radius: 2px;
  padding: 0;
  margin: 0 0 10px 0;
  cursor: pointer;
}

.catalog-item.high-bidder .auction-bid-button {
  background-color: green;
  border-color: green;
  color: white;
}

.catalog-item.outbid .auction-bid-button {
  background-color: orange;
  border-color: orange;
  color: white;
}

.catalog-action-button .auction-max-bid {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.catalog-action-button .auction-max-bid .max-bid-input {
	width: calc(50% - 5px);
	height: 48px;
	-moz-appearance: textfield;
}

.catalog-action-button .auction-max-bid .max-bid-button {
	width: calc(50% - 5px);
	height: 48px;
  cursor: pointer;
}

.max-bid-input::-webkit-inner-spin-button,
.max-bid-input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.auction-item.system-active .catalog-action {
    background-color: rgba(255, 240, 200, 0.3);
    transition: background-color 0.3s ease;
}

.auction-item .catalog-action-button button.system-bidding {
    opacity: 0.7;
    cursor: not-allowed;
}

/*-------------------------------*/
/*- Catalog Action Icons --------*/
/*-------------------------------*/

.catalog-icons {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin-top: 10px;
}

.catalog-item-side-inner .catalog-icons {
  justify-content: flex-end;
}

.catalog-action-icon {
  position: relative;
  width: 48px;
  height: 48px;
  border-radius: .375rem;
  border: none;
  background-color: var(--lex-black-300);
  color: #fff;
  transition: all 0.3s ease;
  cursor: pointer;
}

.catalog-action-icon.large {
  flex-grow: 1;
  font-size: 14px;
  line-height: 48px;
  text-align: center;
}

.catalog-action-icon i {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 24px;
}

/*-------------------------------*/
/*- Catalog Action Message ------*/
/*-------------------------------*/

.auction-message {
	border-radius: .5rem;
	background-color: var(--lex-gray-200);
	border: 1px solid var(--lex-gray-300);
	font-size: 14px;
	opacity: 0; /* Start hidden */
  display: none; /* Fully hidden when no message */
  position: relative; /* For slide animation */
}

/*-------------------------------*/
/*- Catalog Item Price ----------*/
/*-------------------------------*/

.catalog-action-label, .catalog-action-status {
  text-transform: uppercase;
  font-size: 16px;
}

.catalog-price-wrapper {
  position: relative;
  width: 100%;
}

.catalog-action-quantity span {
  display: block;
}

.catalog-price-wrapper:before {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

.catalog-item.outbid .catalog-price-wrapper:before {
  content: '\f071';
  font: var(--fa-font-sharp-solid);
  color: orange;
}

.catalog-item.high-bidder .catalog-price-wrapper:before {
  content: '\f2f7';
  font: var(--fa-font-sharp-solid);
  color: green;
}

.catalog-price-wrapper .quantity-breakdown,
.catalog-price-wrapper .catalog-price  {
  line-height: 1;
  font-size: 32px;
  font-weight: 600;
  text-transform: uppercase;
}

.catalog-price-wrapper .quantity-multiplier {
  font-weight: 500;
}

.catalog-price-wrapper .price-display {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: center;
}
  
.catalog-price .regular-price.strikethrough,
.quantity-breakdown.regular-price.strikethrough {
  text-decoration: line-through;
  opacity: 0.7;
}
  
.catalog-price .sale-price,
.quantity-breakdown.sale-price {
  color: var(--lex-error-border);
  font-weight: bold;
}

/*-------------------------------*/
/*- Auction Spinner -------------*/
/*-------------------------------*/

.auction-spinner {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    position: relative;
    animation: rotate 1s linear infinite;
    display: none; /* Hidden by default */
}

.auction-spinner.active {
    display: inline-block;
}

.auction-spinner::before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    inset: 0px;
    border-radius: 50%;
    border: 2px solid #FFF; /* White for dark buttons */
    animation: prixClipFix 2s linear infinite;
}

@keyframes rotate {
    100% { transform: rotate(360deg); }
}

@keyframes prixClipFix {
    0%   { clip-path: polygon(50% 50%, 0 0, 0 0, 0 0, 0 0, 0 0); }
    25%  { clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 0, 100% 0, 100% 0); }
    50%  { clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 100% 100%, 100% 100%); }
    75%  { clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 100%); }
    100% { clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 0); }
}


/*-------------------------------*/
/*- Catalog Card ----------------*/
/*-------------------------------*/

.catalog-card {
  border-radius: .75rem;
  border: 1px solid var(--lex-gray-200);
  box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, .03);
  margin-bottom: 20px;
  overflow: hidden;
  padding: 10px;
}

.catalog-card h3 {
  margin: 0 0 20px 0;
  padding: 0 0 10px 0;
  border-bottom: 1px dashed var(--lex-gray-200);
}

/*-------------------------------*/
/*- Bid Count -------------------*/
/*-------------------------------*/

.catalog-action-icon {
    position: relative; /* Ensure the button is a positioning context */
}

.bid-count-notification {
    position: absolute;
    top: -6px; /* Adjust to position above the button */
    right: -6px; /* Adjust to position to the right */
    background-color: #ff0000; /* Red circle, adjust color as needed */
    color: #fff; /* White text */
    border-radius: 50%; /* Circular shape */
    width: 18px; /* Size of the circle */
    height: 18px;
    line-height: 18px; /* Center the text vertically */
    text-align: center;
    font-size: 10px; /* Small text */
    font-weight: bold;
}

/*-------------------------------*/
/*- Catalog Item Gallery --------*/
/*-------------------------------*/

.catalog-item-gallery-image {
  position: relative;
  border-radius: .75rem;
  overflow: hidden;
  /*margin-bottom: 20px;*/
}

.catalog-item-gallery-image img {
  display: block;
  width: 100%;
  height: auto;
}

.catalog-item-gallery-image.featured,
.herd-hero-image {
  margin-bottom: 10px;
}

.catalog-item-gallery-image.video img {
  aspect-ratio: 18 / 7;
  object-fit: cover;
  object-position: 50% 50%;
}

.catalog-item-gallery-image.grid-item img {
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: 50% 50%;
}

.gallery-full-screen {
  display: block;
  position: absolute;
  top: 20px;
  right: 20px;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  border: 1px solid var(--body-headingcolor);
  background-color: #fff;
}

.gallery-full-screen i {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: var(--body-textcolor);
}

.gallery-video-play {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: 50px;
}

/*-------------------------------*/
/*- Catalog Bids ----------------*/
/*-------------------------------*/

.bid-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.bid-list .bid-item {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--lex-gray-200);
  padding: 10px 0;
}

.bid-list .bid-item span {
  display: block;
}

/*-------------------------------*/
/*- Cattle Lineage --------------*/
/*-------------------------------*/

.lineage {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 20px;
}

.lineage-column {
  display: flex;
  width: 50%;
}

.lineage-column.parents {
  flex-direction: column;
}

.lineage-column.offspring {
  align-items: center;
}

.lineage-name {
  border-bottom: 1px solid var(--lex-gray-300);
}

.lineage-parent:first-child .lineage-link {
  border-right: 1px solid var(--lex-gray-300);
  padding-bottom: 10px;
}

.lineage-parent:last-child .lineage-name {
  border-right: 1px solid var(--lex-gray-300);
  padding-top: 10px;
}

.lineage-child {
  width: 100%;
}

.lineage-parent .lineage-name,
.lineage-parent .lineage-link {
  padding-right: 20px;
}

.lineage-child .lineage-name,
.lineage-child .lineage-link {
  padding-left: 20px;
}

/*-------------------------------*/
/*- Cattle EPD ------------------*/
/*-------------------------------*/

.epd-list {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 2px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.epd {
  width: calc((100% / 4) - 10px);
  text-align: center;
  padding: 5px 0;
  margin-bottom: 10px;
  font-size: 14px;
  font-weight: 600;
  border: 1px solid var(--lex-gray-200);
  border-radius: 1.5px;
}

.epd span {
  display: block;
  font-size: 16px;
  font-weight: 400;
}

@media (min-width: 1000px) {
  .epd {
    width: calc((100% / 8) - 10px);
  }
}

/*-------------------------------*/
/*- Cattle Owners ---------------*/
/*-------------------------------*/

.catalog-owners {
  list-style: none;
  padding: 0 0 10px 0;
  margin: 0 0 10px 0;
  font-size: 14px;
}

.catalog-owners li {
  position: relative;
  padding-left: 15px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.catalog-owners li:before {
  content: '\f0c8';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  font: var(--fa-font-solid);
  font-size: 5px;
  color: var(--lex-border-color);
}

/*-------------------------------*/
/*- WooCommerce -----------------*/
/*-------------------------------*/

#livestockx-account .woocommerce {
  max-width: 100%;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  height: 100%;
}

#livestockx-account .woocommerce::before,
#livestockx-account .woocommerce::after {
  content: none;
}

/*-------------------------------*/
/*- WooCommerce Mobile Menu -----*/
/*-------------------------------*/

#livestockx-account .account-sidebar {
  height: 100%;
  width: 100vw;
  position: fixed;
  z-index: 99999;
  top: 0;
  left: -999px;
  background-color: #fff;
  overflow-x: hidden;
  transition: 0.5s;
  padding: 60px 10px 0 10px;
  /*width: 20%; */
}

#livestockx-account .account-sidebar .closebtn {
  position: absolute;
  top: 50px;
  right: 25px;
  font-size: 36px;
  margin-left: 50px;
}

.mobile-dashboard-toggle span {
  display: block;
  text-align: center;
  padding: 10px 20px;
  border-radius: 10px;
  background-color: #fff;
}
 
/*-------------------------------*/
/*- WooCommerce Profile Card ----*/
/*-------------------------------*/

.lex-user-profile-card {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.user-avatar {
  display: block;
  position: relative;
  border-radius: 50%;
  width: 50%;
  height: auto;
  aspect-ratio: 1 / 1;
}

.avatar-initials {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  color: #fff;
  font-size: 50px;
}

.user-info {
  text-align: center;
}

.user-company {
  font-size: 14px;
  color: #aaa;
}

/*-------------------------------*/
/*- WooCommerce Account Nav -----*/
/*-------------------------------*/

#livestockx-account .woocommerce-MyAccount-navigation {
  float: none;
  width: 100%;
}

#livestockx-account .woocommerce-MyAccount-content {
  float: none;
  width: 100%;
}

#livestockx-account .woocommerce-MyAccount-navigation ul {
  margin: 0;
}

#livestockx-account .woocommerce-MyAccount-navigation-link {
  position: relative;
  padding: 8px 0;
  border-bottom: 1px solid #eee;
}

#livestockx-account .woocommerce-MyAccount-navigation-link a {
  display: block;
  font-weight: 500;
}

#livestockx-account .woocommerce-MyAccount-navigation-link a:hover {
  text-decoration: none;
}

#livestockx-account .menu-item-stacked {
  position: relative;
  font-size: 16px;
  padding-left: 40px;
}

#livestockx-account .menu-item-stacked .menu-icon {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  color: #aaa;
}

#livestockx-account .submenu-toggle {
  position: relative;
  font-weight: 500;
  cursor: pointer;
}

#livestockx-account .submenu-toggle::after {
  content: '\2b';
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  font: var(--fa-font-sharp-light);
  font-size: 12px;
  color: #aaa;
}

#livestockx-account .submenu-toggle.active::after {
  content: '\f068';
}

/* Submenu */
#livestockx-account .woocommerce-MyAccount-navigation ul.account-submenu {
  display: none;
  position: relative;
  width: calc(100% - 40px);
  padding: 8px 0 0 0;
  margin: 0 0 0 40px;
  list-style: none;
}

#livestockx-account .woocommerce-MyAccount-navigation ul.account-submenu.show,
#livestockx-account .woocommerce-MyAccount-navigation ul.account-submenu.initial-show {
  display: block;
}

#livestockx-account .woocommerce-MyAccount-navigation ul.account-submenu li {
  display: block;
  font-size: 16px;
  padding: 8px 0;
}

#livestockx-account .woocommerce-MyAccount-navigation ul.account-submenu::before {
  content: '';
  position: absolute;
  left: -33px;
  top: 8px;
  width: 1px;
  height: calc(100% - 16px);
  background-color: #eee;
}

#livestockx-account .woocommerce-MyAccount-navigation ul.account-submenu li a {
  font-weight: 300;
}

/*-------------------------------*/
/*- WooCommerce Account Content -*/
/*-------------------------------*/

#livestockx-account .woocommerce-MyAccount-content {
  /*background-color: #fff;
  border: 1px solid var(--lex-gray-200);
  box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, .03);
  border-radius: 10px;
  padding: 20px;*/
  font-size: 16px;
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

.lex-endpoint-wrapper {
  flex: 1;
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 100%;
  /*border-radius: 10px;
  border: 1px solid rgba(0, 0, 0, .1);
  padding: 1em;*/
}

.lex-endpoint-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}

.lex-endpoint-heading h2 {
  margin: 0;
}

#livestockx-account table.shop_table {
  /*border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-collapse: separate;
  border-top: none;*/
  border: none;
}

#livestockx-account .woocommerce-orders-table__cell-order-actions::before {
  display: block;
  content: attr(data-title) ": ";
  font-weight: 700;
  float: left;
}

#livestockx-account td.empty-td {
  text-align: center !important;
}

#livestockx-account td.empty-td::before {
  display: none;
}

.woocommerce-orders-table__cell-inventory ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.woocommerce-orders-table__cell-inventory ul li {
  display: inline-block;
  margin-right: 10px;
}

/*-------------------------------*/
/*- WooCommerce Account Forms ---*/
/*-------------------------------*/

#livestockx-account label {
  font-weight: 500;
  font-size: 12px;
  text-transform: uppercase;
  line-height: 1;
}

#livestockx-account input, 
#livestockx-account select,
#livestockx-account textarea {
  border: 1px solid rgba(0, 0, 0, .1);
  border-radius: 10px;
  padding: 1rem;
}

#livestockx-account select {
  -webkit-appearance: none;
  appearance: none; /* Hide native arrow */
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="black"><path d="M4 6 L8 10 L12 6" stroke="black" stroke-width="2" fill="none"/></svg>');
  background-repeat: no-repeat;
  background-position: right 1rem center; /* Align arrow with padding */
  background-size: 12px;
}

#livestockx-account *:focus {
  outline: none;
}

.select2-selection--single,
.select2-dropdown,
.select2-search__field {
  border-color: rgba(0, 0, 0, .1) !important;
  border-radius: 10px !important;
  padding: 1rem !important;
}

.select2-container .select2-selection--single .select2-selection__rendered {
  padding: 0 !important;
}

.select2-search__field {
  display: none !important;
}

#livestockx-account .edit-account fieldset {
  border: none;
  padding: 0;
  margin-top: 20px;
}

#livestockx-account .acf-fields {
  display: flex;
  flex-wrap: wrap;
  align-items: top;
  justify-content: space-between;
}

#livestockx-account .acf-field {
  float: none;
  width: 100%;
  box-sizing: border-box;
  border: none;
}

#livestockx-account .acf-field[data-width]+.acf-field[data-width] {
  border: none;
}

#livestockx-account .acf-row td:first-child {
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
}

#livestockx-account .acf-row td:last-child {
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
}

#livestockx-account .acfe-repeater-stylised-button {
  border-radius: 10px;
}

#livestockx-account .acf-form-submit {
  display: flex;
  justify-content: flex-end;
  padding: 0 12px 15px 12px;
}

#livestockx-account .acf-button.button-primary {
  display: inline-block;
  border: 1px solid rgba(0, 0, 0, .1);
  border-radius: 10px;
  padding: 12px;
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
  background-color: #fff;
  cursor: pointer;
  color: #333;
}

#message {
  align-content: flex-start;
  align-items: stretch;
  background-color: #fff;
  border: 1px solid;
  border-radius: 4px;
  box-sizing: border-box;
  color: #2f2f2f;
  display: flex;
  font-size: .875em;
  font-weight: 400;
  gap: 12px;
  line-height: 1.5;
  margin: 16px 0;
  padding: 16px !important;
  width: 100%;
}

#message p {
  margin: 0;
}

#message.updated {
  background-color: #f4fff7;
  border-color: #4ab866;
}

#message.updated i {
  color: #4ab866;
}

#sire .acf-field[data-name="cv"],
#sire .acf-field[data-name="psf"],
#sire .acf-field[data-name="psm"] {
  display: none;
}

/*-------------------------------*/
/*- Dashboard Heading -----------*/
/*-------------------------------*/

.dashboard-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/*-------------------------------*/
/*- Dashboard Items -------------*/
/*-------------------------------*/

.dashboard-row {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.dashboard-item {
  width: 50%;
  border: 1px solid rgba(0,0,0,.1);
  padding: 10px;
  border-radius: 10px;
}

.dashboard-item-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.dashboard-item-actions {
  position: relative;
}

.dashboard-action-button {
  font-size: 20px;
  cursor: pointer;
}

.dashboard-item-actions-dropdown {
  display: none;
  position: absolute;
  right: 0;
  top: 100%;
  z-index: 999;
  background-color: #fff;
  border: 1px solid rgba(0,0,0,.1);
  padding: 10px;
  list-style: none;
  margin: 0;
  border-radius: 10px;
  min-width: 125px;
}

.dashboard-item-actions-dropdown.active {
  display: block;
}

.dashboard-item-actions-dropdown li {
  margin-bottom: 10px;
}

.dashboard-item-actions-dropdown li:last-child {
  margin-bottom: 0;
}

.dashboard-item-actions-dropdown li a {
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
}

.dashboard-item-meta {
  list-style: none;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 20px;
  padding: 0;
}

.dashboard-item-meta li {
  display: block;
}

.dashboard-item-meta li i {
  margin-right: 10px;
}

/*-------------------------------*/
/*- Dashboard Widgets -----------*/
/*-------------------------------*/

.lex-widget-wrapper {
  border-radius: 10px;
  border: 1px solid rgba(0, 0, 0, .1);
  padding: 1em;
  background-color: #fff;
}

.lex-widget-wrapper.col-1,
.lex-widget-section.col-1 {
  width: 100%;
}

.lex-widget-wrapper.col-2,
.lex-widget-section.col-2 {
  width: 100%;
}

.lex-widget-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid rgba(0,0,0,.1);
  padding-bottom: 10px;
}

.lex-widget-heading h3 {
  margin: 0;
  font-weight: 600;
  font-size: 18px;
}

.lex-widget-button {
  display: inline-block;
  border: 1px solid rgba(0,0,0,.1);
  border-radius: 10px;
  padding: 12px;
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
  background-color: #fff;
}

/*-------------------------------*/
/*- Widgets Table ---------------*/
/*-------------------------------*/

.lex-widget-table {
  width: 100%;
  border-collapse: collapse;
}

.lex-widget-table thead {
  border-bottom: 1px solid rgba(0,0,0,.1);
}

.lex-widget-table th {
  padding: 10px 0;
  font-size: 12px;
  text-align: left;
}

.lex-widget-table td {
  font-size: 14px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(0,0,0,.1);
}

.lex-widget-table tr:last-child td {
  padding: 10px 0 0 0;
  border: none;
}

/*-------------------------------*/
/*- Widgets Tabs ----------------*/
/*-------------------------------*/

.lex-widget-tabs {
  display: flex;
  gap: 20px;
  align-items: center;
}

.lex-widget-tab-header {
  margin: 0;
  padding: 12px;
  border-radius: 10px;
  cursor: pointer;
  transition: all 0.3s ease;
  font-size: 14px;
  font-weight: 600;
}

.lex-widget-tab-header.active {
  color: white;
  background: var(--wp--preset--color--contrast);
}

.lex-widget-tab-header-desktop {
  display: none;
}

.lex-widget-tab-header-mobile {
  display: inline;
}

.lex-widget-tab-content {
  display: none;
}

.lex-widget-tab-content.active {
  display: block;
}

/*-------------------------------*/
/*- Login Form ------------------*/
/*-------------------------------*/

#livestockx-account form.login {
  background-color: #fff;
  border-radius: 10px;
  border: 1px solid rgba(0, 0, 0, .1);
  padding: 1em;
}

#livestockx-account .woocommerce-form-login__submit {
  width: 100%;
  text-align: center;
}

/*-------------------------------*/
/*- IVF Forms -------------------*/
/*-------------------------------*/

.frontform.fancybox__content {
  padding: 20px 10px;
  border-radius: 10px;
  width: 700px;
}

.frontform .acf-fields>.acf-field,
.frontform .acf-field[data-width]+.acf-field[data-width] {
  border: none;
}

.frontform .acf-label label {
  font-size: 18px;
}

.frontform .acf-form-submit {
  display: flex;
  padding: 0 10px;
  justify-content: flex-end;
}

.frontform .acf-button.button-primary {
  text-transform: uppercase;
  height: 48px;
  line-height: 48px;
  border-radius: .375rem;
  border: none;
  background-color: #000;
  color: #fff;
  padding: 0 30px;
  transition: all 0.3s ease;
  cursor: pointer;
}

.frontform .acf-repeater-add-row {
  font-size: 16px;
  text-decoration: none;
}

.frontform select, .frontform input, .frontform textarea {
  border: 1px solid rgba(0,0,0,.1);
  border-radius: 4px;
}

/*-------------------------------*/
/*- Larger Than Phone -----------*/
/*-------------------------------*/ 

@media (min-width: 768px) {

  .mobile-dashboard-toggle {
    display: none;
  }

  #livestockx-account .account-sidebar {
    position: static;
    width: 30%;
    height: auto;
    border-radius: 10px;
    border: 1px solid rgba(0,0,0,.1);
    padding: 2rem 1rem;
    z-index: 1;
  }

  #livestockx-account .woocommerce-MyAccount-content {
    width: 70%;
  }

  #livestockx-account .account-sidebar .closebtn {
    display: none;
  }

}

/*-------------------------------*/
/*- Larger Than Tablet ----------*/
/*-------------------------------*/ 

@media (min-width: 1024px) {

  #livestockx-account .account-sidebar {
    width: 25%;
  }

  #livestockx-account .woocommerce-MyAccount-content {
    width: 75%;
  }

  #livestockx-account .woocommerce-orders-table__cell-order-actions::before {
    display: none;
  }

  .lex-widget-wrapper.col-2,
  .lex-widget-section.col-2 {
    width: calc((100% / 2) - 10px);
  }

  #donor .acf-field[data-name="tagid"],
  #donor .acf-field[data-name="name"],
  #donor .acf-field[data-name="breed"],
  #ivf-event .acf-field[data-name="ivf_date"],
  #ivf-event .acf-field[data-name="opu_time"],
  #ivf-event .acf-field[data-name="embryo_pickup"],
  #ivf-event .acf-field[data-name="semen_source"],
  #ivf-event .acf-field[data-name="reverse_sort"],
  #ivf-event .acf-field[data-name="semen_type"] {
    width: calc(100% / 3);
  }

  #donor .acf-field[data-name="registration_id"],
  #donor .acf-field[data-name="dob"],
  #sire .acf-field[data-name="registration_id"],
  #sire .acf-field[data-name="dob"],
  #sire .acf-field[data-name="name"],
  #sire .acf-field[data-name="breed"],
  #ivf-event .acf-field[data-name="donor"],
  #ivf-event .acf-field[data-name="sire"] {
    width: calc(100% / 2);
  }

}

/*-------------------------------*/
/*- Desktop Version -------------*/
/*-------------------------------*/

@media (min-width: 1365px) {
  #livestockx-account .account-sidebar {
    width: 20%;
  }

  #livestockx-account .woocommerce-MyAccount-content {
    width: 80%;
  }
}

.sales-event-timer {
  position: fixed;
  display: flex;
  align-items: center;
  z-index: 9;
  bottom: 0;
  left: 0;
  max-width: 100vw;
  width: 100%;
  padding: 20px;
  font-size: 20px;
  justify-content: center;
}

.sales-event-timer[data-event-status="upcoming"] {
  background-color: #fff;
  color: #000;
  border-top: 1px solid #000;
}

.sales-event-timer[data-event-status="live"] {
  background-color: #fff;
  color: #000;
  border-top: 1px solid #000;
}

.sales-event-timer[data-event-status="overtime"] {
  background-color: var(--lex-warning-border);
  color: #fff;
  border-top: 0;
}

.sales-event-timer[data-event-status="final_call"] {
  background-color: var(--lex-error-border);
  color: #fff;
  border-top: 0;
}

.sales-event-timer[data-event-status="closed"] {
  background-color: #000;
  color: #fff;
  border-top: 0;
}

.catalog-item.outbid,
.catalog-item.outbid .wp-block-acf-catalog-action {
  border-color: var(--lex-warning-border);
}

.catalog-item.outbid .catalog-action,
.catalog-item.outbid .wp-block-acf-catalog-action {
  background-color: var(--lex-warning-bg);
}

.catalog-item.high-bidder,
.catalog-item.high-bidder .wp-block-acf-catalog-action {
  border-color: var(--lex-success-border);
}

.catalog-item.high-bidder .catalog-action,
.catalog-item.high-bidder .wp-block-acf-catalog-action {
  background-color: var(--lex-success-bg);
}

.catalog-item.outofstock .catalog-action,
.catalog-item.outofstock .wp-block-acf-catalog-action {
  background-color: var(--lex-error-bg);
}

.catalog-item.outofstock,
.catalog-item.outofstock .wp-block-acf-catalog-action {
  border-color: var(--lex-error-border);
}

/* Base styles for all auction messages */
.auction-message {
  padding: 12px 16px;
  margin: 10px 0;
  border-radius: .375rem;
  font-size: 12px;
  line-height: 1.5;
  position: relative;
  transition: all 0.3s ease;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Success messages (e.g., "Bid placed successfully!") */
.auction-message.success {
  background-color: var(--lex-success-bg);
  color: var(--lex-success-border);
  border: 1px solid var(--lex-success-border);
}

/* Warning messages (e.g., "You've Been Outbid!") */
.auction-message.warning {
  background-color: var(--lex-warning-bg);
  color: var(--lex-warning-border);
  border: 1px solid var(--lex-warning-border);
}

/* Error messages */
.auction-message.error {
  background-color: var(--lex-error-bg);
  color: var(--lex-error-border);
  border: 1px solid var(--lex-error-border);
}

/* Info messages (e.g., "System processing bids...") */
.auction-message.info {
  background-color: var(--lex-notice-bg);
  color: var(--lex-notice-border);
  border: 1px solid var(--lex-notice-border);
}

/* Optional: Add an icon before each message type */
.auction-message::before {
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-right: 8px;
    vertical-align: middle;
    font: var(--fa-font-light);
}

.auction-message.success::before {
  content: '\f058';
  color: var(--lex-success-border);
}

.auction-message.warning::before {
  content: '\f071';
  color: var(--lex-warning-border);
}

.auction-message.error::before {
  content: '\f2f0';
  color: var(--lex-error-border);
}

.auction-message.info::before {
  content: '\f05a';
  color: var(--lex-notice-border);
}

/* Timer Spinner */
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}