:root {
    --accent: #E64833;
    --accent-hover: #f5513c;
    --accent-focus: #f5513c96;
    --ctins-info: #43d20408;
    --ctins-info-border: #43d204;
    --bg-secondray: #2a2a2a;
    --ctins-black: #000;
    --ctins-off-black: #00000052;
    --ctins-white: #fff;
    --ctins-off-white: #f5f5f5;
}

/* woo */
.woocommerce-cart-form__cart-item.cart_item > td {
    background-color: var(--bg-secondray) !important;
    border-color: var(--ctins-off-white) !important;
    color: var(--ctins-white) !important;
}
.woocommerce-cart-form__cart-item.cart_item td > a {
  color: var(--accent) !important;
} 
.woocommerce-cart-form__cart-item.cart_item td > a:hover {
  color: var(--accent-hover) !important;
}
td.actions {
  background-color: var(--ctins-off-black) !important;
  border-color: var(--ctins-off-white) !important;
}
td.actions > button{
  background-color: var(--ctins-off-white) !important;
  color: var(--ctins-black) !important;
  padding: 0.7em;
}
td.actions > button:hover {
  background-color: var(--accent-hover) !important;
  color: var(--ctins-off-white) !important;
}
td.actions .coupon > input {
  padding: 1.1em !important;
}
td.actions .coupon > button,
.checkout-button.button  {
  background-color: var(--ctins-off-white) !important;
  color: var(--ctins-black) !important;
  padding: 0.7em;
}
td.actions .coupon > button:hover,
.checkout-button.button:hover {
  background-color: var(--accent-hover) !important;
  color: var(--ctins-off-white) !important;
}
.cart_totals > h2 {
  background: var(--ctins-off-black) !important;
}
.shop_table .product-name,
.shop_table_responsive tbody tr > td {
  background: var(--bg-secondray) !important;
  color: var(--ctins-white) !important;
}

.shop_table .product-total,
.shop_table .cart-subtotal > td,
.shop_table .order-total > td {
  background: #5a5a5ab2 !important;
  color: var(--ctins-off-white) !important;
}

/* info message */
.woocommerce-info {
  background: var(--ctins-info) !important;
  border-color: var(--ctins-info-border) !important;
  color: var(--ctins-off-white) !important;
}
.woocommerce-info a {
  color: var(--ctins-white) !important;
  font-weight: bolder;
  border-bottom: 0.7px solid var(--ctins-white) !important;
}
.woocommerce-info a:hover {
  color: var(--accent-hover) !important;
  border-bottom: 0.7px solid var(--accent-hover) !important;
}
.woocommerce-info::before {
  color: var(--ctins-off-white) !important;
}
.woocommerce-billing-fields label {
  color: var(--ctins-off-white) !important;
}
#place_order {
  background-color: var(--ctins-off-white) !important;
  color: var(--ctins-black) !important;
}
#place_order:hover {
  background-color: var(--accent-focus) !important;
  color: var(--ctins-off-white) !important;
}
.woocommerce-terms-and-conditions-checkbox-text {
  color: var(--ctins-off-white) !important;
}
.wc_payment_methods.payment_methods.methods li > label {
  color: var(--ctins-off-white) !important;
}
.wc_payment_method.payment_method_vivacom_smart img {
  filter: brightness(1) invert(1);
}

.payment_box.payment_method_bacs > *,
.payment_box.payment_method_vivacom_smart > * {
  color: black !important;
}

/* 
 * catalog (με wrapper class στο product catalog)
*/
/* Κεντράρισμα & max width */
.ins-by-catalog-wrap{
  width: 100vw;
  display: flex;
  justify-content: center;
  padding: 0rem 1.25rem;
}

.ins-by-catalog-inner{
  width: 100%;
  max-width: 75rem; /* ~1200px */
}

/* Grid */
.ins-by-catalog-inner .products{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.25rem;
  margin: 0;
  padding: 0;
}

/* Responsive */
@media (max-width: 64rem){ /* 1024px */
  .ins-by-catalog-inner .products{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 48rem){ /* 768px */
  .ins-by-catalog-inner .products{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 28rem){ /* 480px */
  .ins-by-catalog-inner .products{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ctins-loop-btn {
    display: none !important;
  }
}

/* Card */
.ins-by-catalog-inner .products li.product{
  display: flex;
  flex-direction: column;
  height: 100%;
  border-radius: 1.25rem;
}

.ins-by-catalog-inner .products li.product:hover{
  transform: translateY(-0.25rem);
  padding: 0.625rem !important;
  border-color: rgba(255,255,255,0.18);
  box-shadow: 0 0.75rem 2.25rem rgba(0,0,0,0.35);
}

/* Εικόνα / Link */
.ins-by-catalog-inner .products li.product > a.woocommerce-LoopProduct-link{
  display: block;
  overflow: hidden;
  border-radius: 1.125rem; /* rounded εικόνα χωρίς να "κόβεται" λάθος */
}

.ins-by-catalog-inner .products li.product > a.woocommerce-LoopProduct-link img{
  display: block;
  width: 100%;
  height: auto;
  transform: scale(1.10);
  transform-origin: center;
  border-radius: inherit; /* rounded όπως το link wrapper */
}

/* Τίτλος: πιο μεγάλος + σταθερό ύψος (2 γραμμές) */
.ins-by-catalog-inner .products li.product .woocommerce-loop-product__title{
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.35;
  padding: 0.9rem 0.9rem 0.25rem;

  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;

  min-height: calc(1.35em * 2);
}

.ins-by-catalog-inner .products li.product .price{
  padding: 0 0.9rem 0.75rem;
  font-size: 0.95rem;
  opacity: 0.95;
}

/* Κουμπί */
.ins-by-catalog-inner .products li.product .button{
  margin: auto 0.9rem 0.9rem !important;
  width: calc(100% - 1.8rem);
  border-radius: 0.75rem;
  padding: 0.75rem 1rem;

  background: #174d0178 !important;
  border: 0.0625rem solid transparent !important;
  color: #fff !important;

  transition: background-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.ins-by-catalog-inner .products li.product .button:hover,
.ins-by-catalog-inner .products li.product .button:focus{
  background: /* var(--accent-hover) */ #1d6302ff !important;
  transform: translateY(-0.0625rem);
}

/* “added” / disabled state */
.ins-by-catalog-inner .products li.product .button.added,
.ins-by-catalog-inner .products li.product .button:disabled{
  opacity: 0.85;
}

/* Astra icon μέσα στο add-to-cart */
.ins-by-catalog-inner .products li.product .add_to_cart_button.ajax_add_to_cart > .ahfb-svg-iconset{
  background-color: transparent !important;
}

.ins-by-catalog-inner .products li.product .add_to_cart_button.ajax_add_to_cart .ast-icon.icon-bag{
  color: currentColor !important;
}
ul.products li.product a img {
  border-radius: 20px;
}

/* ajax add to cart */
.add_to_cart_button.ajax_add_to_cart > .ahfb-svg-iconset{
  background-color: var(--accent);
}
.add_to_cart_button.ajax_add_to_cart > .ast-icon.icon-bag {
  color: var(--accent) !important;
}
#woocommerce-checkout-form-coupon p > button {
  background-color: var(--accent);
  color: var(--ctins-off-white);
}
#woocommerce-checkout-form-coupon p > button:hover {
  background-color: var(--accent-hover);
  color: var(--ctins-off-white);
}
#order_comments_field > label {
  color: var(--ctins-off-white);
}

/* order recieved page */
.woocommerce-table.woocommerce-table--order-details tfoot th,
.woocommerce-table.woocommerce-table--order-details tfoot td{
  background: rgba(255,255,255,0.03); /* ή ίδιο ακριβώς gray που έχεις στο table */
  border-top: 0.0625rem solid rgba(255,255,255,0.12);
}

.woocommerce-table.woocommerce-table--order-details tfoot th,
.woocommerce-table.woocommerce-table--order-details tfoot td{
  background: inherit;
}

/* buttons */
.woocommerce-order-details__title,
.woocommerce-column__title {
  background: var(--ctins-black) !important;
  background-color: var(--ctins-black) !important;
}
/* My Account > Orders: action buttons */
.woocommerce-table.woocommerce-table--order-details .order-actions-button,
.woocommerce .order_details .order-actions-button{
  /* βάλε εδώ το “δικό σου style” */
  background: var(--accent) !important;
  color: #fff !important;
  border-radius: 0.95rem;
  padding: 0.85rem 1.1rem;
  border: 0.0625rem solid transparent;
  font-weight: 700;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}

/* hover */
.woocommerce-table {
  border: 1px solid white !important;
  margin-bottom: 0 !important;
}
.woocommerce-table tr > th:nth-child(2),
.woocommerce-table tr > td:nth-child(2) {
  background-color: #5a5a5ab2 !important;
  color: var(--ctins-off-white) !important;
}
.woocommerce-order-overview.order_details {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    border: 1px solid whitesmoke !important;
}
.woocommerce-order-overview.order_details > li {
  margin-top: 6px;
  margin-bottom: 6px;
  padding: 2px 0;
  border-bottom: 1px solid whitesmoke;
  border-right: none !important;
}

@media (max-width: 750px) {
  .ctins-order-preview #content {
    padding: 0.5rem 1rem !important;
  }
}