/**
 * Style dla formularza bonów podarunkowych
 */

.bon-podarunkowy-section {
    margin: 20px 0;
}

/* Style dla labeli checkboxów bonu - większe, jak wcześniej */
.bon-podarunkowy-section > label,
div.bon-podarunkowy-section > label {
    display: flex !important;
    align-items: center;
    font-size: 1.4em !important;
    font-weight: 600 !important;
    color: #222 !important;
    cursor: pointer;
    margin-bottom: 0 !important;
}

.bon-podarunkowy-section input[type="checkbox"],
div.bon-podarunkowy-section input[type="checkbox"],
#bon-checkbox {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    min-height: 20px !important;
    max-width: 20px !important;
    max-height: 20px !important;
    border: 2px solid #078521 !important;
    background: transparent !important;
    border-radius: 0 !important;
    margin-right: 8px !important;
    vertical-align: middle;
    margin-top: 0;
    margin-bottom: 0;
    position: relative;
    cursor: pointer !important;
    pointer-events: auto !important;
    z-index: 1;
    flex-shrink: 0;
    transition: all 0.3s ease;
    box-sizing: border-box;
    padding: 0 !important;
}

.bon-podarunkowy-section input[type="checkbox"]:checked,
div.bon-podarunkowy-section input[type="checkbox"]:checked,
#bon-checkbox:checked {
    background: #078521 !important;
    border-color: #078521 !important;
}

/* Biały checkmark dla zaznaczonego checkboxa bonu */
.bon-podarunkowy-section input[type="checkbox"]:checked::after,
div.bon-podarunkowy-section input[type="checkbox"]:checked::after,
#bon-checkbox:checked::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 6px;
    height: 10px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: translate(-50%, -60%) rotate(45deg);
}

.bon-podarunkowy-section input[type="checkbox"]:hover,
div.bon-podarunkowy-section input[type="checkbox"]:hover,
#bon-checkbox:hover {
    border-color: #078521 !important;
}

.bon-podarunkowy-section input[type="checkbox"]:checked:hover,
div.bon-podarunkowy-section input[type="checkbox"]:checked:hover,
#bon-checkbox:checked:hover {
    background: #000 !important;
    border-color: #000 !important;
}

.bon-podarunkowy-section h3 {
    margin-top: 0;
    margin-bottom: 15px;
    font-size: 1.2em;
    color: #333;
}

/* Style inputów - jak w checkout */
.bon-podarunkowy-section input[type="text"],
.bon-podarunkowy-section input[type="email"],
.bon-podarunkowy-section select {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #E0E0E0 !important;
    border-radius: 0 !important;
    font-size: 16px !important;
    font-weight: 400 !important; /* Normalny weight dla tekstu w inputach */
    color: #333 !important; /* Kolor tekstu wpisywanego w inputach */
    box-sizing: border-box;
    background: #fff;
    transition: border-color 0.3s ease;
}

.bon-podarunkowy-section input[type="text"]:focus,
.bon-podarunkowy-section input[type="email"]:focus,
.bon-podarunkowy-section select:focus {
    outline: none;
    border-color: #078521 !important;
}

/* Style labeli - jak w checkout */
.bon-podarunkowy-section .bon-field label[for],
.bon-podarunkowy-section .bon-field > label:not(:has(input)) {
    display: block !important;
    font-size: 12px !important;
    font-weight: 300 !important; /* Lżejszy weight dla labeli */
    color: #666 !important; /* Szary kolor jak w checkout */
    margin-bottom: 4px !important; /* Zmniejszono z 5px do 4px - bliżej inputa */
    line-height: 1.5;
}

.bon-field {
    margin-bottom: 15px;
}

.bon-field label {
    display: flex !important;
    align-items: flex-start !important;
    flex-wrap: wrap !important;
    gap: 8px;
    vertical-align: middle;
    margin: 0 !important;
    margin-bottom: 22px !important; /* Zwiększono z 10px do 22px (o 12px) */
    cursor: pointer;
    line-height: 1.5;
}

/* Ostatni label w bon-field nie ma dodatkowego marginesu */
.bon-field label:last-child {
    margin-bottom: 0 !important;
}

/* Custom radio button styling - kolorowe kółko */
.bon-field input[type="radio"],
.bon-podarunkowy-section input[type="radio"],
div.bon-podarunkowy-section input[type="radio"],
.woocommerce.single-product input[type="radio"],
body.single-product input[type="radio"],
.single-product-custom input[type="radio"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    min-height: 20px !important;
    max-width: 20px !important;
    max-height: 20px !important;
    border: 2px solid #078521 !important;
    background: transparent !important;
    border-radius: 50% !important;
    margin-right: 8px;
    vertical-align: middle;
    margin-top: 0;
    margin-bottom: 0;
    position: relative;
    cursor: pointer !important;
    pointer-events: auto !important;
    z-index: 1;
    flex-shrink: 0;
    transition: all 0.3s ease;
    box-sizing: border-box;
    padding: 0 !important;
}

.bon-field input[type="radio"]:checked,
.bon-podarunkowy-section input[type="radio"]:checked,
div.bon-podarunkowy-section input[type="radio"]:checked,
.woocommerce.single-product input[type="radio"]:checked,
body.single-product input[type="radio"]:checked,
.single-product-custom input[type="radio"]:checked {
    background: #078521 !important;
    border-color: #078521 !important;
}

/* Białe kółko wewnątrz zaznaczonego radio */
.bon-field input[type="radio"]:checked::after,
.bon-podarunkowy-section input[type="radio"]:checked::after,
div.bon-podarunkowy-section input[type="radio"]:checked::after,
.woocommerce.single-product input[type="radio"]:checked::after,
body.single-product input[type="radio"]:checked::after,
.single-product-custom input[type="radio"]:checked::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 8px;
    height: 8px;
    background: #fff;
    border-radius: 50%;
    transform: translate(-50%, -50%);
}

.bon-field input[type="radio"]:hover,
.bon-podarunkowy-section input[type="radio"]:hover,
div.bon-podarunkowy-section input[type="radio"]:hover,
.woocommerce.single-product input[type="radio"]:hover,
body.single-product input[type="radio"]:hover,
.single-product-custom input[type="radio"]:hover {
    border-color: #078521 !important;
}

.bon-field input[type="radio"]:checked:hover,
.bon-podarunkowy-section input[type="radio"]:checked:hover,
div.bon-podarunkowy-section input[type="radio"]:checked:hover,
.woocommerce.single-product input[type="radio"]:checked:hover,
body.single-product input[type="radio"]:checked:hover,
.single-product-custom input[type="radio"]:checked:hover {
    background: #000 !important;
    border-color: #000 !important;
}

.bon-field input[type="radio"]:checked:hover::after,
.bon-podarunkowy-section input[type="radio"]:checked:hover::after,
div.bon-podarunkowy-section input[type="radio"]:checked:hover::after,
.woocommerce.single-product input[type="radio"]:checked:hover::after,
body.single-product input[type="radio"]:checked:hover::after,
.single-product-custom input[type="radio"]:checked:hover::after {
    background: #fff !important;
}

.bon-field label input[type="radio"] {
    flex-shrink: 0;
    margin-top: 2px !important; /* Wyrównanie z górą tekstu */
    margin-right: 0 !important;
}

.bon-field label span {
    display: block !important;
    margin-left: 28px !important; /* 20px radio + 8px gap - nadpisuje inline style */
    margin-top: 4px !important; /* Nadpisuje inline margin-top: -15px */
    font-weight: 300;
    font-size: 13px !important;
    color: #666 !important;
    line-height: 1.4;
    width: calc(100% - 28px);
    flex-basis: 100%;
}

#bon-typ-elektroniczny,
#bon-typ-papierowy {
    vertical-align: middle;
}

#bon-fields {
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #ddd;
}

/* ==========================
   WOOCOMMERCE DEPOSITS - IDENTYCZNE STYLE JAK BON PODARUNKOWY
   ========================== */

/* Checkbox dla opcji zadatku - IDENTYCZNY STYL JAK BON PODARUNKOWY */
.webtomizer_wcdp_single_deposit_form .deposit-checkbox-label {
    display: flex !important;
    align-items: center;
    font-size: 1.4em !important;
    font-weight: 600 !important;
    color: #222 !important;
    cursor: pointer;
    margin-top: 20px !important; /* Wyrównane z odstępem między pierwszym a drugim checkboxem */
    margin-bottom: 0 !important;
}

.webtomizer_wcdp_single_deposit_form .deposit-checkbox-label input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    min-height: 20px !important;
    max-width: 20px !important;
    max-height: 20px !important;
    border: 2px solid #078521 !important;
    background: transparent !important;
    border-radius: 0 !important;
    margin-right: 8px !important;
    vertical-align: middle;
    margin-top: 0;
    margin-bottom: 0;
    position: relative;
    cursor: pointer !important;
    pointer-events: auto !important;
    z-index: 1;
    flex-shrink: 0;
    transition: all 0.3s ease;
    box-sizing: border-box;
    padding: 0 !important;
}

.webtomizer_wcdp_single_deposit_form .deposit-checkbox-label input[type="checkbox"]:checked {
    background: #078521 !important;
    border-color: #078521 !important;
}

.webtomizer_wcdp_single_deposit_form .deposit-checkbox-label input[type="checkbox"]:checked::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 6px;
    height: 10px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: translate(-50%, -60%) rotate(45deg);
}

.webtomizer_wcdp_single_deposit_form .deposit-checkbox-label input[type="checkbox"]:hover {
    border-color: #078521 !important;
}

.webtomizer_wcdp_single_deposit_form .deposit-checkbox-label input[type="checkbox"]:checked:hover {
    background: #000 !important;
    border-color: #000 !important;
}

/* Ukryj oryginalny label wtyczki, zastępujemy go checkboxem */
/* Ukryj kwotę i sufiks przy .deposit-option, ale pokaż sam label */
.webtomizer_wcdp_single_deposit_form .deposit-option #deposit-amount,
.webtomizer_wcdp_single_deposit_form .deposit-option #deposit-suffix {
    display: none !important;
}

/* Kontener #deposit-fields - IDENTYCZNY STYL JAK #bon-fields */
#deposit-fields {
    margin-top: 15px !important;
    padding-top: 15px !important;
    border-top: 1px solid #ddd !important;
    margin-left: 25px !important;
    display: none !important;
}

/* Pokaż #deposit-fields tylko gdy checkbox jest zaznaczony */
.webtomizer_wcdp_single_deposit_form.deposit-options-visible #deposit-fields {
    display: block !important;
}

/* Ukryj wszystkie radio buttons deposits poza #deposit-fields, dopóki checkbox nie jest zaznaczony */
.webtomizer_wcdp_single_deposit_form:not(.deposit-options-visible) .pay-deposit,
.webtomizer_wcdp_single_deposit_form:not(.deposit-options-visible) .pay-full-amount,
.webtomizer_wcdp_single_deposit_form:not(.deposit-options-visible) .pay-deposit-label,
.webtomizer_wcdp_single_deposit_form:not(.deposit-options-visible) .pay-full-amount-label {
    display: none !important;
}

/* Usunięto duplikację - style dla #deposit-fields są już wyżej */

/* Ukryj slider switcher i inne elementy wtyczki */
.webtomizer_wcdp_single_deposit_form .deposit-options .wc-deposits-switcher,
.webtomizer_wcdp_single_deposit_form .basic-switch-woocommerce-deposits .wc-deposits-switcher,
.webtomizer_wcdp_single_deposit_form .deposit-options > span,
.webtomizer_wcdp_single_deposit_form .basic-switch-woocommerce-deposits > span,
.webtomizer_wcdp_single_deposit_form .separator {
    display: none !important;
}

/* Kontener - flexbox dla zmiany kolejności */
.webtomizer_wcdp_single_deposit_form .deposit-options,
.webtomizer_wcdp_single_deposit_form .basic-switch-woocommerce-deposits {
    display: flex !important;
    flex-direction: column !important;
    position: relative !important;
    height: auto !important;
    margin-left: 0 !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
}

/* Zamień kolejność - "Zapłać całość" przed "Wpłać zadatek" */
.webtomizer_wcdp_single_deposit_form .deposit-options .pay-full-amount,
.webtomizer_wcdp_single_deposit_form .basic-switch-woocommerce-deposits .pay-full-amount {
    order: 1 !important;
}

.webtomizer_wcdp_single_deposit_form .deposit-options .pay-full-amount-label,
.webtomizer_wcdp_single_deposit_form .basic-switch-woocommerce-deposits .pay-full-amount-label {
    order: 2 !important;
}

.webtomizer_wcdp_single_deposit_form .deposit-options .pay-deposit,
.webtomizer_wcdp_single_deposit_form .basic-switch-woocommerce-deposits .pay-deposit {
    order: 3 !important;
}

.webtomizer_wcdp_single_deposit_form .deposit-options .pay-deposit-label,
.webtomizer_wcdp_single_deposit_form .basic-switch-woocommerce-deposits .pay-deposit-label {
    order: 4 !important;
}

/* Kontener dla opcji deposits (w #deposit-fields) */
#deposit-fields .deposit-options,
#deposit-fields .basic-switch-woocommerce-deposits {
    display: flex !important;
    flex-direction: column !important;
}

/* Kontener dla opcji (fallback dla starszych wersji) */
.webtomizer_wcdp_single_deposit_form .deposit-options,
.webtomizer_wcdp_single_deposit_form .basic-switch-woocommerce-deposits {
    display: flex !important;
    flex-direction: column !important;
}

/* Radio buttons w #deposit-fields - IDENTYCZNA STRUKTURA JAK .bon-field label */
#deposit-fields .deposit-options label,
#deposit-fields .basic-switch-woocommerce-deposits label {
    display: flex !important;
    align-items: flex-start !important;
    flex-wrap: wrap !important;
    gap: 8px;
    vertical-align: middle;
    margin: 0 !important;
    margin-bottom: 22px !important;
    cursor: pointer;
    line-height: 1.5;
}

#deposit-fields .deposit-options label:last-child,
#deposit-fields .basic-switch-woocommerce-deposits label:last-child {
    margin-bottom: 0 !important;
}

/* Większy odstęp między opcjami radio (Zapłać całość / Wpłać zadatek) */
.webtomizer_wcdp_single_deposit_form .deposit-option-item {
    margin-bottom: 24px !important;
}

/* Radio button w labelu - IDENTYCZNY STYL JAK .bon-field label input[type="radio"] */
#deposit-fields .deposit-options label input[type="radio"],
#deposit-fields .basic-switch-woocommerce-deposits label input[type="radio"] {
    flex-shrink: 0;
    margin-top: 2px !important;
    margin-right: 0 !important;
}

/* Wymuszenie wyświetlania metadanych (np. zniżki) w koszyku i kasie */
.woocommerce-checkout dl.variation,
.woocommerce-cart dl.variation,
.header-mini-cart dl.variation,
.shop_table dl.variation,
.header-mini-cart .woocommerce-mini-cart-item dl,
.woocommerce-checkout-review-order-item dl,
.woocommerce-checkout-review-order-item dl.variation {
    display: block !important;
    visibility: visible !important;
    height: auto !important;
    margin-bottom: 5px !important;
}

dl.variation dt,
dl.variation dd,
.header-mini-cart .woocommerce-mini-cart-item dl dt,
.header-mini-cart .woocommerce-mini-cart-item dl dd,
.woocommerce-checkout-review-order-item dl dt,
.woocommerce-checkout-review-order-item dl dd {
    display: inline-block !important;
    margin: 0 4px 0 0 !important;
    font-size: 12px !important;
    color: #666 !important;
}

/* Koszyk i kasa: etykieta + cena w jednej linii (jak w minikoszyku) */
body.woocommerce-cart dl.variation dd,
body.woocommerce-checkout .woocommerce-checkout-review-order-item .mini-cart-item-details dl.variation dd,
body.woocommerce-checkout .woocommerce-checkout-review-order-item dl.variation dd {
    display: inline-block !important;
    margin: 0 0 0 4px !important;
}
body.woocommerce-cart dl.variation dt,
body.woocommerce-checkout .woocommerce-checkout-review-order-item .mini-cart-item-details dl.variation dt,
body.woocommerce-checkout .woocommerce-checkout-review-order-item dl.variation dt {
    display: inline-block !important;
    clear: both !important;
    margin: 0 4px 0 0 !important;
}
body.woocommerce-cart dl.variation dd p,
body.woocommerce-checkout .woocommerce-checkout-review-order-item .mini-cart-item-details dl.variation dd p,
body.woocommerce-checkout .woocommerce-checkout-review-order-item dl.variation dd p {
    display: inline !important;
    margin: 0 !important;
    line-height: inherit !important;
}

/* Specjalne style dla strony checkout - mniejsza czcionka metadanych (np. pierwsze wejście) */
body.woocommerce-checkout .mini-cart-item-details dl,
body.woocommerce-checkout .mini-cart-item-details dl.variation,
body.woocommerce-checkout .woocommerce-checkout-review-order-item .mini-cart-item-details dl,
body.woocommerce-checkout .woocommerce-checkout-review-order-item .mini-cart-item-details dl.variation {
    font-size: 12px !important;
}
body.woocommerce-checkout .mini-cart-item-details dl dt,
body.woocommerce-checkout .mini-cart-item-details dl dd,
body.woocommerce-checkout .woocommerce-checkout-review-order-item .mini-cart-item-details dl dt,
body.woocommerce-checkout .woocommerce-checkout-review-order-item .mini-cart-item-details dl dd {
    font-size: 12px !important;
}

dl.variation dt,
.header-mini-cart .woocommerce-mini-cart-item dl dt,
.woocommerce-checkout-review-order-item dl dt {
    font-weight: 600 !important;
}


/* Opis pod radio buttonem - IDENTYCZNY STYL JAK .bon-field label span */
#deposit-fields .deposit-options label span,
#deposit-fields .basic-switch-woocommerce-deposits label span {
    display: block !important;
    margin-left: 28px !important;
    margin-top: 4px !important;
    font-weight: 300;
    font-size: 13px !important;
    color: #666 !important;
    line-height: 1.4;
    width: calc(100% - 28px);
    flex-basis: 100%;
}

/* Opis pod napisem wybranej opcji */
#deposit-fields .deposit-option-item .deposit-message,
.webtomizer_wcdp_single_deposit_form .deposit-option-item .deposit-message {
    margin-left: 28px !important;
    margin-top: 4px !important;
    font-size: 13px !important;
    font-weight: 300 !important;
    color: #666 !important;
    display: block !important;
    line-height: 1.4 !important;
}

/* Większa przerwa po opisie "Zapłać całość" */
.webtomizer_wcdp_single_deposit_form .deposit-option-item[data-option-type="full"] .deposit-message {
    margin-bottom: 16px !important;
}

/* Ukryj domyślny opis na końcu */
.webtomizer_wcdp_single_deposit_form > .deposit-message {
    display: none !important;
}

/* Ostatni label bez marginesu - IDENTYCZNY JAK .bon-field label:last-child */
.webtomizer_wcdp_single_deposit_form .deposit-options label:last-child,
.webtomizer_wcdp_single_deposit_form .basic-switch-woocommerce-deposits label:last-child,
.webtomizer_wcdp_single_deposit_form .deposit-option-item:last-child {
    margin-bottom: 0 !important;
}

/* Radio buttons w #deposit-fields - IDENTYCZNY STYL JAK .bon-field input[type="radio"] */
#deposit-fields .deposit-options input[type="radio"],
#deposit-fields .basic-switch-woocommerce-deposits input[type="radio"],
.webtomizer_wcdp_single_deposit_form .deposit-options input[type="radio"],
.webtomizer_wcdp_single_deposit_form .basic-switch-woocommerce-deposits input[type="radio"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    min-height: 20px !important;
    max-width: 20px !important;
    max-height: 20px !important;
    border: 2px solid #078521 !important;
    background: transparent !important;
    border-radius: 50% !important;
    margin-right: 8px;
    vertical-align: middle;
    margin-top: 0;
    margin-bottom: 0;
    position: relative;
    cursor: pointer !important;
    pointer-events: auto !important;
    z-index: 1;
    flex-shrink: 0;
    transition: all 0.3s ease;
    box-sizing: border-box;
    padding: 0 !important;
}

/* Zaznaczony radio - IDENTYCZNY STYL JAK .bon-field input[type="radio"]:checked */
#deposit-fields .deposit-options input[type="radio"]:checked,
#deposit-fields .basic-switch-woocommerce-deposits input[type="radio"]:checked,
.webtomizer_wcdp_single_deposit_form .deposit-options input[type="radio"]:checked,
.webtomizer_wcdp_single_deposit_form .basic-switch-woocommerce-deposits input[type="radio"]:checked {
    background: #078521 !important;
    border-color: #078521 !important;
}

/* Białe kółko wewnątrz zaznaczonego radio - IDENTYCZNY STYL JAK .bon-field input[type="radio"]:checked::after */
#deposit-fields .deposit-options input[type="radio"]:checked::after,
#deposit-fields .basic-switch-woocommerce-deposits input[type="radio"]:checked::after,
.webtomizer_wcdp_single_deposit_form .deposit-options input[type="radio"]:checked::after,
.webtomizer_wcdp_single_deposit_form .basic-switch-woocommerce-deposits input[type="radio"]:checked::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 8px;
    height: 8px;
    background: #fff;
    border-radius: 50%;
    transform: translate(-50%, -50%);
}

/* Hover - IDENTYCZNY STYL JAK .bon-field input[type="radio"]:hover */
#deposit-fields .deposit-options input[type="radio"]:hover,
#deposit-fields .basic-switch-woocommerce-deposits input[type="radio"]:hover,
.webtomizer_wcdp_single_deposit_form .deposit-options input[type="radio"]:hover,
.webtomizer_wcdp_single_deposit_form .basic-switch-woocommerce-deposits input[type="radio"]:hover {
    border-color: #078521 !important;
}

/* Zaznaczony radio hover - IDENTYCZNY STYL JAK .bon-field input[type="radio"]:checked:hover */
#deposit-fields .deposit-options input[type="radio"]:checked:hover,
#deposit-fields .basic-switch-woocommerce-deposits input[type="radio"]:checked:hover,
.webtomizer_wcdp_single_deposit_form .deposit-options input[type="radio"]:checked:hover,
.webtomizer_wcdp_single_deposit_form .basic-switch-woocommerce-deposits input[type="radio"]:checked:hover {
    background: #000 !important;
    border-color: #000 !important;
}

/* Zaznaczony radio hover after - IDENTYCZNY STYL JAK .bon-field input[type="radio"]:checked:hover::after */
#deposit-fields .deposit-options input[type="radio"]:checked:hover::after,
#deposit-fields .basic-switch-woocommerce-deposits input[type="radio"]:checked:hover::after,
.webtomizer_wcdp_single_deposit_form .deposit-options input[type="radio"]:checked:hover::after,
.webtomizer_wcdp_single_deposit_form .basic-switch-woocommerce-deposits input[type="radio"]:checked:hover::after {
    background: #fff !important;
}

/* Radio w labelu - IDENTYCZNY STYL JAK .bon-field label input[type="radio"] */
#deposit-fields .deposit-options label input[type="radio"],
#deposit-fields .basic-switch-woocommerce-deposits label input[type="radio"],
.webtomizer_wcdp_single_deposit_form .deposit-options label input[type="radio"],
.webtomizer_wcdp_single_deposit_form .basic-switch-woocommerce-deposits label input[type="radio"] {
    flex-shrink: 0;
    margin-top: 2px !important;
    margin-right: 0 !important;
}








