/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 5,700+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 4.11.7.1753352284
Updated: 2025-07-24 12:18:04

*/

:root {
   --brand-primary-color: #ca1d37;
}

#page {
   width: 100%;
}

.woocommerce-checkout #checkout-form-wrapper {
   display: flex;
   gap: 16px;
}
@media(max-width: 986px) {
   .woocommerce-checkout #checkout-form-wrapper {
      flex-direction: column;
   }
}
.woocommerce-checkout .col2-set {
   margin: 0;
   width: 60% !important;
}
.woocommerce-checkout .woocommerce-review-payment-box {
   width: 40%;
}
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout #order_review {
   width: 100% !important;
}

.woocommerce-js form .form-row label {
    font-weight: 600 !important;
    font-size: 12px !important;
}

.woocommerce-shipping-methods-wrapper {
	margin-top: 48px;
}

.woocommerce-payment-methods-wrapper {
	margin-top: 32px;
}

#order_review .place-order {
	padding-bottom: 2rem !important;
}
#order_review .place-order button {
	width: 100% !important;
}
#order_review .woocommerce-privacy-policy-text {
	font-size: 12px;
}

.woocommerce-review-payment-box {
	position: sticky;
	top: 48px;
   height: fit-content;
}

.woocommerce-checkout h3 {
	color: #2E3B4C;
}


.customer-switch {
   display: flex;
   gap: 8px;
   margin-bottom: 24px;
   width: 100%;
}

.customer-switch input[type="radio"] {
   display: none;
}

.customer-switch label,
.gus-fetch-button {
   padding: 6px 12px;
   border: 2px solid var(--brand-primary-color);
   cursor: pointer;
   transition: all 0.15s ease;
   font-weight: 500;
   font-size: 14px;
   color: #2E3B4C;
   width: 100%;
   display: flex;
   justify-content: center;
   align-items: center;
   text-align: center;
}

.customer-switch input[type="radio"]:checked + label,
.gus-fetch-button {
   border-color: var(--brand-primary-color);
   background-color: var(--brand-primary-color);
   color: #fff;
}

.gus-fetch-button {
   padding: 6px 12px !important;
   width: 200px;
}

.nip-input-wrapper {
   display: flex;
   flex-direction: row;
   gap: 10px;
}
@media(max-width: 921px) {   
   .nip-input-wrapper {
      flex-direction: column;
      gap: 10px;
   }
   .gus-fetch-button {
      height: 40px;
      width: 100%;
   }
}
.gus-fetch-button:disabled[disabled]:hover {
   background-color: var(--brand-primary-color) !important;
}

#ship-to-different-address {
   margin-top: 12px;
}

.woocommerce form .form-row-first, .woocommerce form .form-row-last, .woocommerce-page form .form-row-first, .woocommerce-page form .form-row-last {
   width: 49%;
}

.woocommerce #billing_address_1_field {
   width: 70%;
   float: left;
   padding-right: 6px;
}
.woocommerce #billing_address_2_field {
   display: inline-block;
   width: 30%;
   margin-top: 24px;
   padding-left: 6px;
}

.woocommerce .postal-code {
   width: 30% !important;
   padding-right: 6px !important;
}
.woocommerce .city {
   width: 70% !important;
   padding-left: 6px !important;
}

.woocommerce-js form .form-row {
    padding: 0px;
    margin: 0 0 12px;
}

.checkout-product-table td {
   padding: 12px !important;
}
.checkout-product-table {
   margin-top: 48px !important;
}

.pisol-spdsw-icon {
   width: auto;
   height: 28px !important;
}



/* Reset standardowych radio */
input[type="radio"].shipping_method,
input[type="radio"].input-radio {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

/* Stylizacja label jako "custom radio" */
.shipping__list_label,
.wc_payment_method > label {
   display: flex;
   align-items: center;
   gap: 8px;
   padding-left: 28px;
   position: relative;
   cursor: pointer;
   font-size: 16px;
   line-height: 1.5;    
}

/* Kółko obok tekstu */
.shipping__list_label::before,
.wc_payment_method > label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    border: 2px solid var(--brand-primary-color); /* kolor obramowania – firmowy */
    border-radius: 50%;
    background-color: #fff;
    box-sizing: border-box;
}

/* Wypełnienie aktywnego radio */
input[type="radio"]:checked + .shipping__list_label::before,
input[type="radio"]:checked + label::before {
    background-color: var(--brand-primary-color); /* firmowy kolor */
    box-shadow: inset 0 0 0 2.5px #fff;
}



/* Ukryj domyślny checkbox */
#ship-to-different-address-checkbox {
  appearance: none;
  -webkit-appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid #ccc;
  border-radius: 3px;
  position: relative;
  margin-right: 4px;
  cursor: pointer;
  transform: translateY(4px);
}

/* Styl po zaznaczeniu */
#ship-to-different-address-checkbox:checked {
  background-color: var(--brand-primary-color, #ca1d37);
  border-color: var(--brand-primary-color, #ca1d37);
}

/* Znacznik "ptaszka" */
#ship-to-different-address-checkbox:checked::after {
  content: "";
  position: absolute;
  top: 1px;
  left: 6px;
  width: 5px;
  height: 12px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.woocommerce-checkout textarea {
   max-height: 160px;
   font-size: 14px;
   height: fit-content;
}



.woocommerce-shipping-fields__field-wrapper:last-child {
   margin-bottom: 12px;
}

.select-paczkomat-button {
	margin-left: 28px !important;
    padding: 14px !important;
}

.select2-container--default .select2-results__option--highlighted[aria-selected], .select2-container--default .select2-results__option--highlighted[data-selected] {
   background-color: var(--brand-primary-color, #ca1d37);
   color: #fff;
}
    


@media (max-width: 1024px) {
   .woocommerce-checkout {
      flex-direction: column;
   }
   .woocommerce-checkout .col2-set {
      margin: 0;
      width: 100% !important;
   }
   .woocommerce-checkout .woocommerce-review-payment-box {
      width: 100%;
   }
   .woocommerce-review-payment-box {
      margin-top: 16px;
   }
}

@media (max-width: 768px) {
   .customer-switch label {
      padding: 5px 12px;
      font-size: 13px;
   }
   .woocommerce-js form .form-row input.input-text, .woocommerce-js form .form-row textarea {
      font-size: 13px;
   }
   .woocommerce-js form .form-row label {
      font-size: 11px !important;
   }
   .shipping__list_label, .wc_payment_method > label {
      padding-left: 26px;
      font-size: 14px;
   }
   .shipping__list_label::before, .wc_payment_method > label::before {
      width: 18px;
      height: 18px;
   }
}

@media (max-width: 450px) {
   .customer-switch label {
      padding: 4px;
      font-size: 12px;
   }

   .woocommerce #billing_address_1_field {
      width: 100%;
      padding-right: 0px;
   }
   .woocommerce #billing_address_2_field {
      width: 100%;
      margin-top: 0;
      padding-left: 0px;
   }

   .woocommerce .postal-code {
      width: 100% !important;
      padding-right: 0px !important;
   }
   .woocommerce .city {
      width: 100% !important;
      padding-left: 0px !important;
   }
}


/* Sidebar product filters */
.wc-block-product-categories__dropdown select {
    width: 100%;
	border-radius: 0;
}
.wc-block-product-categories__dropdown {
	width: 100%;
}
.wc-block-product-categories__button {
	padding: 0 !important;
    width: 15%;
    max-width: 32px;
	display: flex;
    justify-content: center;
    align-items: center;
}


/* Custom category filter */
/* Ukryj natywny select tylko w naszym bloku */
.wc-block-product-categories__dropdown {
   min-width: 85%;
}
.wp-block-woocommerce-product-categories.wc-block-product-categories.is-dropdown select {
  display: none !important;
}

/* Wrapper custom dropdown */
.kk-cat-dd {
  position: relative;
  width: 100%;
  max-width: 100%;
  font-size: 12px;
}

/* Button */
button.kk-cat-dd__btn, [CLASS*="wc-block"] button.kk-cat-dd__btn {
  width: 100%;
  background: #fff;
  border: 1px solid #ddd;
  color: #666;
  font-size: 12px !important;
  padding: 12px 32px 12px 12px;
  cursor: pointer;
  text-align: left;
  line-height: 1.2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  text-transform: none;
}
.kk-cat-dd__label{
  flex: 1 1 auto;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Strzałka */
.kk-cat-dd__chev {
   width: 10px;
   height: 10px;
   border-right: 1px solid #666;
   border-bottom: 1px solid #666;
   transform: rotate(45deg) translateY(-1px) translateX(-1px);
   margin-left: auto;
   position: absolute;
   transition: transform .15s ease;
   top: calc(50% - 5px);
   right: 12px;
}
.kk-cat-dd.is-open .kk-cat-dd__chev {
  transform: rotate(224deg) translateY(-1px) translateX(-1px);
}

/* Lista */
.kk-cat-dd__list {
  position: absolute;
  left: -640px;
  right: 0;
  top: calc(100% + 6px);
  background: #fff;
  border: 1px solid #ddd;
  box-shadow: 0 10px 30px rgba(0,0,0,.08);
  max-height: 0px;
  overflow: auto;
  z-index: 9999;
  padding: 6px;
  display: block;
  opacity: 0;
  transition: max-height .15s ease;
}

/* Open state */
.kk-cat-dd.is-open .kk-cat-dd__list {
  left: 0;
  opacity: 1;
  max-height: 340px;
}

/* Element listy */
.kk-cat-dd__item {
  display: flex;
  width: 100%;
  padding: 4px 6px;
  cursor: pointer;
  background: #fff;
  color: #111;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

/* Hover = lekko szare */
.kk-cat-dd__item:hover {
  background: #f2f2f2;
}

/* Aktualna kategoria = czerwone tło */
.kk-cat-dd__item.is-current {
  background: var(--brand-primary-color);
  color: #fff;
}

/* Hover na current może zostać ciut ciemniejsze */
.kk-cat-dd__item.is-current:hover {
  filter: brightness(.9);
}

/* Zagnieżdżenia (wizualne wcięcia) */
.kk-cat-dd__item[data-depth="1"] { padding-left: 22px; }
.kk-cat-dd__item[data-depth="2"] { padding-left: 34px; }
.kk-cat-dd__item[data-depth="3"] { padding-left: 46px; }
.kk-cat-dd__item[data-depth="4"] { padding-left: 58px; }

/* Licznik (np. (123)) */
.kk-cat-dd__count {
  opacity: .65;
  font-size: 12px;
  white-space: nowrap;
}

/* Zaznaczona pozycja (selected) — np. obwódka + check */
.kk-cat-dd__item.is-selected {
  outline: 2px solid var(--brand-primary-color);
  outline-offset: -2px;
}
/* Jeśli selected jest jednocześnie current (czerwony) — check też biały */
.kk-cat-dd__item.is-current.is-selected::after {
  color: #fff;
  opacity: 1;
}