/*
Theme Name: Make It Digital
Template: Impreza
Version: 1.1
Author:	Make It Digital
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/

/*Add your own styles here:*/

.wc-block-components-text-input label {
    color: #00000070 !important;
}
@media(min-width:1024px){
  .wc-block-components-sidebar-layout .wc-block-components-main {
      box-sizing: border-box;
      margin: 0;
      padding-right: 2% !important;
      width: 55% !important; 
  }

  .wc-block-components-sidebar {
      box-sizing: border-box;
      padding-left: 2% !important;
      width: 45% !important;
  }
  .is-currently-stuck {
      padding-top: 70px;
  }
}

.force-show-dropdown .w-cart-content {
    transform: scaleY(1) translateZ(0px) !important;
    opacity: 1 !important;
}

@media(min-width:1100px){
  .l-subheader-cell.at_left {
      width: 20% !important;
  }

  .l-subheader-cell.at_center {
      width: 60%;
      position: relative;
  }

  .l-subheader-cell.at_right {
      width: 20%;
  }

  .l-subheader-cell.at_center .w-search {
      position:relative;
      left:50px !important;
  }
}




#menu-item-25008 a.w-nav-anchor.level_1 {
    border-left: 1px solid #ffffff30 !important;
    border-right: 1px solid #ffffff30 !important;
}


@media(min-width:1100px){
.l-subheader.at_top {
    border-bottom: 1px solid #ffffff30 !important;
}

.l-subheader-cell.at_right .w-text.hidden_for_mobiles.ush_text_3.has_text_color.nowrap {
    height: 100%;
    display: flex;
    align-items: center;
    border-left: 1px solid #ffffff30 !important;
    border-right: 0px solid #ffffff30 !important;
    padding:0px 10px;
    margin: 0px !important;
}

.l-subheader-cell.at_right .w-socials.ush_socials_1.color_text.shape_none {
     height: 100%;
    display: flex;
    align-items: center;
    border-left: 1px solid #ffffff30 !important;
    border-right: 1px solid #ffffff30 !important;
    padding:0px 10px;
    margin: 0px !important;
}
.l-subheader.at_bottom.width_full {
    border-top: solid 1px #353535!important;
border-bottom: solid 1px #353535!important;
}
.l-subheader-cell.at_right .w-text.ush_text_3.has_text_color.nowrap {
    height: 100%;
    display: flex;
    align-items:center;
    border-left: 1px solid #ffffff30 !important;
    padding-left:15px;
}

}

.w-html.wishlist {
    position: absolute;
    z-index: 100;
    right: 10px;
    top: 10px;
}

/* Ensure the link color remains as requested */
.wd-cat-count.more-products a {
    color: rgba(255, 255, 255, 0.8) !important;
}

/* 1. Set the initial hidden state with transition */
.wd-cat-count.more-products {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
}

/* 2. Set the visible state when the Grid Item is hovered */
.w-grid-item:hover .wd-cat-count.more-products {
    opacity: 1;
    visibility: visible;
}



/* Container Principal */
.g-loadmore.loading {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    display: flex !important;
    justify-content: center !important; /* Centra horizontalmente */
    align-items: center !important;     /* Centra verticalmente */
    background: #2b324245 !important;
    z-index: 9999999 !important;
    margin: 0 !important;
    /* Bloqueia cliques no conteúdo por baixo */
    pointer-events: all !important; 
    
    /* Efeito de desfoque (Blur) no conteúdo de fundo */
    backdrop-filter: blur(5px) !important;
    -webkit-backdrop-filter: blur(5px) !important; /* Suporte Safari */
    
    /* Cursor de espera para indicar processamento */
    cursor: wait !important;
}

/* Forçar o Preloader e as suas Divs a ignorar posicionamentos do tema */
.g-loadmore.loading .g-preloader,
.g-loadmore.loading .g-preloader > div {
    position: relative !important; /* Remove absolute/fixed que o tema possa ter */
    top: auto !important;
    left: auto !important;
    transform: none !important;    /* Remove offsets de transform */
    margin: 0 !important;          /* Remove margens que empurram o objeto */
}

/* Se o preloader type_1 do Impreza usar uma animação que precise de 
   tamanho específico para ser visível no centro */
.g-preloader.type_1 {
    display: block !important;
    width: 40px !important; 
    height: 40px !important;
}
.myproductitem {
    position: relative;
    overflow: hidden; /* important for zoom crop */
}

.myproductitem .second_image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    opacity: 0;
    visibility: hidden;

    transition: opacity 0.7s ease, visibility 0.7s ease;
}

/* Target the image inside */
.myproductitem .second_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;

    transform: scale(1);
    transition: transform 0.6s ease;
}

/* Hover state */
.myproductitem:hover .second_image {
    opacity: 1;
    visibility: visible;
}

.myproductitem:hover .second_image img {
    transform: scale(1.08); /* subtle zoom */
}
.g-breadcrumbs .g-breadcrumbs-item:last-child a {
    font-weight: 600;
    color: #fff !important;
}

.l-header.sticky .l-subheader.at_top {
              
      display: none;
  }
  div#wc-stripe-klarna-product-msg iframe {
      color-scheme: dark !important;
  }
  .w-cart-content ul.product_list_widget {
      max-height: 100% !important;

  }

  .woocommerce-cart td.product-name a {
      color: #fff !important;
  }
@media(max-width:768px){
  td.actions,td.actions .coupon {
      width: 100%;
  }
  .force-show-dropdown .w-cart-content {
    display:none !important;
  }
   .w-cart.dropdown_height .w-cart-notification.shown {
  
      left: -20px;
  }
  nav.g-breadcrumbs * {
      line-height: 24px;
  }
  button.single_add_to_cart_button.button.alt, .buy-now-wrapper a {
      padding-left: 20px !important;
      padding-right: 20px !important;
  }
  body.woocommerce-cart table.shop_table {
      display: inline-table !important;
  }
  
}


/* cart */

.woocommerce-checkout p.shipping-method-description , .woocommerce-cart p.shipping-method-description {
    font-size: 12px;
}


.woocommerce-cart li,.woocommerce-checkout li {
    padding: 10px 0px;
}
.woocommerce-cart  ul#shipping_method li ,.woocommerce-checkout  ul#shipping_method li {
    
    display: block;

}
/*mini-cart */

/* Main Item Container */
ul.cart_list li.woocommerce-mini-cart-item {
    display: flex !important;
    align-items: center; /* Centers everything vertically */
    gap: 15px;
    position: relative;
    padding-right: 25px; /* Prevents text from overlapping the remove button */
    margin-bottom: 20px; /* Space between products */
}

/* Left Column: Image */
ul.cart_list li.woocommerce-mini-cart-item .mid-item-image {
    flex: 0 0 70px; /* Locks image width to 70px. Change if needed */
    max-width: 70px;
}

ul.cart_list li.woocommerce-mini-cart-item .mid-item-image img {
    width: 100%;
    height: auto;
    border-radius: 4px;
    display: block; /* Removes weird bottom spacing on images */
}

/* Right Column: Info & Quantity */
ul.cart_list li.woocommerce-mini-cart-item .mid-item-info {
    flex: 1; /* Takes up remaining space */
    display: flex;
    flex-direction: column;
}

/* Title Styling */
.mid-item-title {
    font-size: 14px;
    line-height: 1.3;
    margin-bottom: 8px;
}

/* Align the quantity controls and price side-by-side */
ul.cart_list li.woocommerce-mini-cart-item .quantity {
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Position the "X" Remove Button */
ul.cart_list li.woocommerce-mini-cart-item .remove_from_cart_button {
    position: absolute;
    top: 5px;
    right: 0;
    z-index: 10;
}

@media(min-width:768px){
    /* Layout structural alignment */
    .woocommerce-mini-cart-item { position: relative; padding-right: 24px !important; }
    .woocommerce-mini-cart-item .remove { position: absolute; top: 10px; right: 0; left: auto; }
    
    .mid-cart-product-wrapper { display: flex; gap: 12px; align-items: flex-start; width: 100%; }
    .mid-cart-thumb-link { flex-shrink: 0; }
    .mid-cart-details { display: flex; flex-direction: column; gap: 6px; flex-grow: 1; }
    
    .mid-product-name { font-weight: 500; color: #fff; text-decoration: none; font-size: 14px; line-height: 1.3; margin-bottom: 2px; display: block; }
    
    /* Qty Controls Styling - Outlined Box look from Image 2 */
    .mid-qty-controls { 
        display: inline-flex; 
        align-items: center; 
        border: 1px solid #444; 
        border-radius: 4px; 
        width: fit-content;
        background: transparent;
        margin-top: 4px;
    }
    
    .mid-qty-btn { 
        background: transparent; 
        color: #999; 
        border: none; 
        width: 28px; 
        height: 28px; 
        cursor: pointer; 
        font-size: 14px; 
        display: flex;
        align-items: center;
        justify-content: center;
        transition: color 0.2s;
    }
    .mid-qty-btn:hover { color: #fff; background: rgba(255,255,255,0.05); }
    
    /* Thin line dividers between numbers and actions */
    .mid-qty-btn.minus { border-right: 1px solid #444; }
    .mid-qty-btn.plus { border-left: 1px solid #444; }
    
    .mid-qty-val { 
        width: 32px; 
        text-align: center; 
        font-size: 13px; 
        color: #fff; 
        font-weight: 600; 
    }
    
    /* Price Display Styling */
    .mid-price-display .quantity { color: #888; font-size: 13px; font-weight: normal; }
    .mid-price-display .amount { color: #8257e5; font-weight: 600; margin-left: 4px; } /* Matches purple accent if your theme uses it, change color code if needed */

    /* Loading Overlay Styling remains structural */
    .widget_shopping_cart_content { position: relative; } 
    
    .mid-cart-loader {
        position: absolute; top: 0; left: 0; width: 100%; height: 100%;
        background: rgba(0, 0, 0, 0.6);
        display: none;
        justify-content: center; align-items: center;
        z-index: 10000;
    }
    .mid-spinner {
        width: 30px; height: 30px;
        border: 3px solid rgba(255,255,255,0.3);
        border-radius: 50%;
        border-top-color: #fff;
        animation: mid-spin 0.8s linear infinite;
    }
    @keyframes mid-spin { to { transform: rotate(360deg); } }
    .mid-loading .mid-cart-loader { display: flex !important; }
}
li.woocommerce-mini-cart-item.mini_cart_item:not(:last-child) {
    border-bottom: 1px solid rgba(255,255,255,0.15);
}

.woocommerce-account p.cart-empty.woocommerce-info {
    background-color:transparent !important;
}

@media(max-width:767px){
    .mid-qty-controls { display: none; }
}



/* 1. Forçar o container pai a criar um contexto de empilhamento isolado */
/*.ush_cart_1 {
    position: relative !important;
    z-index: 999 !important; /* Deve ser MAIOR que o overlay */
} */

/* 2. O Overlay (Ajustado para sentar logo abaixo do pai) */
.mid-cart-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background-color: rgba(0, 0, 0, 0.6) !important;
    z-index: 999 !important; /* Ligeiramente MENOR que o .ush_cart_1 */
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease-in-out !important;
}

/* Quando o overlay estiver ativo */
.mid-cart-overlay.active {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.active button.w-search-close {
    display:none !important;
}
