/*
 Theme Name:   Glozin Child
 Theme URI:    https://example.com/glozin-child/
 Description:  Glozin Child Theme for Aneka Fashion
 Author:       Your Name
 Author URI:   https://example.com
 Template:     glozin
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  glozin-child
*/

/* ==========================================================================
   Custom Styles
   ========================================================================== */

@media (min-width: 1025px) {
   .woocommerce-cart .woocommerce-cart-form {
      float: none !important;
      width: 100% !important;
      position: relative !important;
      top: 0 !important;
   }
}

@media (min-width: 1025px) {
   .woocommerce-cart .cart-collaterals {
      float: none !important;
      width: 100% !important;
      margin-top: 40px;
      padding-left: 0 !important;
      position: relative !important;
      top: 0 !important;
   }
}

.header-hamburger::after {
   content: "Kategori";
}

@media (min-width: 1025px) {

   .woocommerce-cart table.shop_table_responsive.cart thead th,
   .woocommerce-cart table.shop_table_responsive.cart tbody td {
      vertical-align: middle;
   }

   .woocommerce-cart .product-thumbnail {
      width: 8%;
   }

   .woocommerce-cart .product-name {
      width: 26%;
   }

   .woocommerce-cart .product-size {
      width: 10% !important;
      text-align: center;
   }

   .woocommerce-cart .product-color {
      width: 10% !important;
      text-align: center;
   }

   .woocommerce-cart .product-price {
      width: 12% !important;
      text-align: center;
   }

   .woocommerce-cart .product-seri-quantity {
      width: 12% !important;
      text-align: center;
   }

   .woocommerce-cart .product-pcs-quantity {
      width: 14% !important;
      min-width: 100px;
      text-align: center;
   }

   .woocommerce-cart .product-subtotal {
      width: 14% !important;
      text-align: right;
   }

   .woocommerce-cart .product-mobile-meta {
      display: none !important;
   }
}

/* Single Product */
.woocommerce-product-gallery__image img {
   width: 100% !important;
}


/* ==========================================================================
   Wishlist Button Styles
   ========================================================================== */
.woocommerce-cart .wcboost-wishlist-button {
   background: none !important;
   border: none !important;
   padding: 0 !important;
   color: inherit !important;
   cursor: pointer;
   box-shadow: none !important;
   display: inline-flex !important;
   align-items: center;
   vertical-align: middle;
   text-decoration: none !important;
}

.woocommerce-cart .wcboost-wishlist-button svg {
   transition: all 0.25s cubic-bezier(0.175, 0.885, 0.32, 1.275);
   fill: currentColor;
   display: block;
   width: 14px !important;
   height: 14px !important;
}

.woocommerce-cart .wcboost-wishlist-button:hover svg {
   color: #e91e63;
   /* Premium Pink/Red */
   transform: scale(1.2);
}

.woocommerce-cart .wcboost-wishlist-button.added svg {
   color: #e91e63;
   fill: #e91e63;
}

.woocommerce-cart .wcboost-wishlist-button.loading {
   pointer-events: none;
}

.woocommerce-cart .wcboost-wishlist-button.loading svg {
   opacity: 0.6;
   animation: rotate 1s linear infinite;
}

@keyframes rotate {
   from {
      transform: rotate(0deg);
   }

   to {
      transform: rotate(360deg);
   }
}

.product-remove .remove {
   display: flex !important;
   align-items: center;
   gap: 5px;
}

.product-remove .remove svg {
   flex-shrink: 0;
}

@media (min-width: 768px) {
   .woocommerce-cart .woocommerce-cart-form__contents thead th {
      position: sticky;
      top: 50px;
      top: calc(50px + var(--wp-admin--admin-bar--height, 0px));
      background: #fff;
      z-index: 10;
      padding-top: 15px;
      padding-bottom: 15px;
      border-bottom: 1px solid #eee !important;
      box-shadow: 0 2px 5px -2px rgba(0, 0, 0, 0.05);
   }
}

/* ==========================================================================
   Google Login Styles
   ========================================================================== */
.glozin-social-login-separator {
   display: flex;
   align-items: center;
   text-align: center;
   margin: 25px 0;
   color: #888;
   font-size: 13px;
}

.glozin-social-login-separator::before,
.glozin-social-login-separator::after {
   content: '';
   flex: 1;
   border-bottom: 1px solid #eee;
}

.glozin-social-login-separator:not(:empty)::before {
   margin-right: .75em;
}

.glozin-social-login-separator:not(:empty)::after {
   margin-left: .75em;
}

.glozin-google-login-container {
   margin-bottom: 20px;
}

.glozin-google-login-container iframe {
   margin: 0 auto !important;
}


/* swatches */
.wcboost-variation-swatches__item.selected {
   position: relative;
   border: 3px solid #000 !important;
}

/* ==========================================================================
   Order Details Mobile Card Layout
   ========================================================================== */
@media (max-width: 767px) {
   .woocommerce-table--order-details {
      border: none !important;
      background: transparent !important;
      width: 100% !important;
      margin: 0 !important;
      display: block !important;
   }

   .woocommerce-table--order-details thead {
      display: none !important;
   }

   .woocommerce-table--order-details tbody,
   .woocommerce-table--order-details tr.order_item {
      display: block !important;
      background: transparent !important;
      width: 100% !important;
      box-sizing: border-box !important;
   }

   .woocommerce-table--order-details .order_item {
      background: #fff !important;
      border-radius: 12px;
      padding: 15px !important;
      margin-bottom: 15px;
      box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
      border: 1px solid #f0f0f0 !important;
   }

   .mobile-order-item-card {
      padding: 0 !important;
      border: none !important;
      display: block !important;
      width: 100% !important;
      box-sizing: border-box !important;
   }

   .mobile-card-container {
      display: flex;
      flex-direction: column;
      gap: 12px;
   }

   .mobile-card-header {
      display: flex;
      gap: 15px;
      align-items: flex-start;
   }

   .mobile-card-image {
      width: 80px;
      height: 80px;
      flex-shrink: 0;
   }

   .mobile-card-image img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      border-radius: 8px;
   }

   .mobile-card-info {
      flex-grow: 1;
   }

   .mobile-card-meta {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 10px;
      padding: 12px;
      background: #f9f9f9;
      border-radius: 8px;
      font-size: 13px;
   }

   .mobile-meta-item {
      display: flex;
      flex-direction: column;
   }

   .mobile-meta-item .label {
      color: #999;
      font-size: 11px;
      text-transform: uppercase;
      letter-spacing: 0.5px;
      margin-bottom: 2px;
   }

   .mobile-meta-item .value {
      font-weight: 600;
      color: #333;
   }

   .mobile-card-footer {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding-top: 10px;
      border-top: 1px dashed #eee;
   }

   .mobile-card-total {
      text-align: right;
   }

   .mobile-card-total .label {
      font-size: 12px;
      color: #666;
      margin-right: 5px;
   }

   .mobile-card-total .value {
      font-size: 16px;
      font-weight: 700;
      color: #000;
   }
}

/* ==========================================================================
   Order Action Buttons (WhatsApp, Nota Print, Nota Invoice)
   ========================================================================== */
.order-action-buttons-container {
   display: inline;
}

.order-action-buttons-container a.button {
   margin: 0 !important;
   /* Reset existing margins */
   display: inline-flex !important;
   align-items: center;
   justify-content: center;
   min-width: 180px;
   border-radius: 8px;
   padding: 12px 20px !important;
   font-weight: 600;
   text-decoration: none !important;
   transition: all 0.3s ease;
}

.order-action-buttons-container a.button svg {
   margin-right: 8px;
   flex-shrink: 0;
}

.order-action-buttons-container a.button:hover {
   transform: translateY(-2px);
   box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.order-action-buttons-container a.button.btn-whatsapp {
   background-color: #25d366 !important;
   border-color: #25d366 !important;
   color: #fff !important;
   margin-right: 8px !important;
   margin-bottom: 8px !important;
}

.order-action-buttons-container a.button.btn-print {
   background-color: #54595f !important;
   border-color: #54595f !important;
   color: #fff !important;
   margin-right: 8px !important;
   margin-bottom: 8px !important;
}

.order-action-buttons-container a.button.btn-invoice {
   background-color: #7a7a7a !important;
   border-color: #7a7a7a !important;
   color: #fff !important;
   margin-bottom: 8px !important;
}

@media (max-width: 767px) {
   .order-action-buttons-container {
      flex-direction: column;
   }

   .order-action-buttons-container a.button {
      width: 100%;
      flex: none;
      box-sizing: border-box;
   }
}

/* ==========================================================================
   Cart Mobile Card Layout
   ========================================================================== */
@media (max-width: 767px) {
   .woocommerce-cart .woocommrece-cart-content .shop_table.cart {
      border: none !important;
      background: transparent !important;
      display: block !important;
   }

   .woocommerce-cart .woocommrece-cart-content .shop_table.cart thead {
      display: none !important;
   }

   .woocommerce-cart .woocommrece-cart-content .shop_table.cart tbody {
      display: block !important;
      width: 100% !important;
   }

   .woocommerce-cart .woocommerce-cart-form__cart-item {
      display: block !important;
      background: #fff !important;
      border-radius: 12px;
      padding: 15px !important;
      margin-bottom: 20px !important;
      box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
      border: 1px solid #f0f0f0 !important;
      position: relative;
      overflow: hidden;
      clear: both;
   }

   .woocommerce-cart .woocommerce-cart-form__cart-item td {
      display: block !important;
      width: 100% !important;
      padding: 0 !important;
      border: none !important;
      text-align: left !important;
      margin-bottom: 10px;
   }

   .woocommerce-cart .woocommerce-cart-form__cart-item td.product-thumbnail {
      float: left;
      width: 80px !important;
      height: auto !important;
      margin-right: 15px !important;
      margin-bottom: 5px !important;
   }

   .woocommerce-cart .woocommerce-cart-form__cart-item td.product-thumbnail img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      border-radius: 8px;
   }

   .woocommerce-cart .woocommerce-cart-form__cart-item td.product-name {
      width: auto !important;
      display: block !important;
      margin-bottom: 15px;
   }

   /* Clearfix for thumbnail float */
   .woocommerce-cart .woocommerce-cart-form__cart-item td.product-thumbnail::after {
      content: "";
      display: table;
      clear: both;
   }

   .woocommerce-cart .woocommerce-cart-form__cart-item .product-mobile-meta {
      clear: both;
      background: #f9f9f9;
      padding: 10px;
      border-radius: 8px;
      margin-top: 10px;
   }

   .woocommerce-cart .woocommerce-cart-form__cart-item .product-mobile-meta .meta-item {
      margin-bottom: 4px;
   }

   .woocommerce-cart .woocommerce-cart-form__cart-item .product-mobile-meta .meta-item:last-child {
      margin-bottom: 0;
   }

   .woocommerce-cart .woocommerce-cart-form__cart-item td.product-quantity {
      display: flex !important;
      align-items: center;
      justify-content: space-between;
      padding: 12px 0 !important;
      border-top: 1px dashed #eee !important;
      margin-bottom: 0;
   }

   .woocommerce-cart .woocommerce-cart-form__cart-item td.product-quantity::before {
      content: attr(data-title);
      font-weight: 600;
      color: #333;
      font-size: 13px;
   }

   .woocommerce-cart .woocommerce-cart-form__cart-item td.product-subtotal {
      display: flex !important;
      align-items: center;
      justify-content: space-between;
      padding: 12px 0 !important;
      border-top: 1px solid #f0f0f0 !important;
      margin-top: 5px;
      margin-bottom: 0;
   }

   .woocommerce-cart .woocommerce-cart-form__cart-item td.product-subtotal::before {
      content: attr(data-title);
      font-weight: 600;
      color: #333;
      font-size: 14px;
   }

   .woocommerce-cart .woocommerce-cart-form__cart-item td.product-subtotal .amount {
      font-size: 18px;
      font-weight: 700;
      color: #000;
   }

   /* Hide original cells that are now in mobile meta */
   .woocommerce-cart .woocommerce-cart-form__cart-item td.product-size,
   .woocommerce-cart .woocommerce-cart-form__cart-item td.product-color,
   .woocommerce-cart .woocommerce-cart-form__cart-item td.product-price {
      display: none !important;
   }

   .woocommerce-cart .product-remove {
      margin-top: 12px;
      flex-wrap: wrap;
      gap: 15px;
   }
}

/* ==========================================================================
   Product Card Carousel
   ========================================================================== */
.product-card-carousel.swiper {
   position: relative;
   width: 100%;
   z-index: 1;
   /* Ensure it stays above background elements */
}

/* Fallback for when JS is not yet initialized */
.product-card-carousel:not(.swiper-initialized) .swiper-wrapper {
   display: block;
}

.product-card-carousel:not(.swiper-initialized) .swiper-slide:not(:first-child) {
   display: none !important;
}

.product-card-carousel .swiper-slide {
   width: 100%;
   height: auto;
}

.product-card-carousel .swiper-slide img {
   width: 100%;
   height: 100%;
   object-fit: cover;
}


.product-card-carousel .swiper-button-next,
.product-card-carousel .swiper-button-prev {
   width: 32px;
   height: 32px;
   background: #fff;
   border-radius: 50%;
   color: #111;
   box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
   opacity: 0;
   visibility: hidden;
   transition: all 0.3s ease;
   z-index: 10;
}

.product-card-carousel .swiper-button-next::after,
.product-card-carousel .swiper-button-prev::after {
   font-size: 12px;
   font-weight: bold;
}

.product-card-carousel:hover .swiper-button-next,
.product-card-carousel:hover .swiper-button-prev {
   opacity: 1;
   visibility: visible;
}

.product-card-carousel .swiper-button-prev {
   left: 10px;
}

.product-card-carousel .swiper-button-next {
   right: 10px;
}

.product-card-carousel .swiper-pagination {
   bottom: 8px !important;
   display: flex;
   justify-content: center;
   gap: 4px;
}

.product-card-carousel .swiper-pagination-bullet {
   width: 6px;
   height: 6px;
   background: #fff;
   opacity: 0.5;
   margin: 0 !important;
   transition: all 0.3s ease;
}

.product-card-carousel .swiper-pagination-bullet-active {
   opacity: 1;
   background: #fff;
   width: 14px;
   border-radius: 3px;
}

/* ==========================================================================
   Mini Cart Styles
   ========================================================================== */
.woocommerce-mini-cart-item__total {
   font-weight: 600;
   color: var(--gz-color-dark, #111);
   margin-left: 5px;
}

.woocommerce-mini-cart-item__total .glozin-price-saved {
   display: block;
   font-size: 11px;
   color: #25d366;
   /* WhatsApp Green for savings */
   font-weight: 400;
   line-height: 1;
   margin-top: 2px;
}

.mini-cart-qty-pcs {
   font-size: 13px;
   color: #666;
   font-weight: 400;
}


/* single product */

.site-breadcrumb a {
   --gz-transform-origin-start: left;
   --gz-transform-origin-end: right;
   --gz-animation-default: .5s cubic-bezier(.3, 1, .3, 1);
   --gz-reversed-link-gap: 1px;
   background: linear-gradient(to var(--gz-transform-origin-end), currentColor, currentColor) 0 var(--gz-reversed-link-gap)/0 var(--gz-reversed-link-gap) no-repeat;
   background-position-x: var(--gz-transform-origin-end);
   background-position-y: bottom;
   transition: background-size var(--gz-animation-default);

}

.site-breadcrumb a:hover {
   background-position-x: var(--gz-transform-origin-start);
   background-size: 100% var(--gz-reversed-link-gap);
   background-position-y: bottom;
}