/**
 * JEDINEČNO Custom Checkout Styling
 * Minimální CSS pro firemní pole
 */

/* ============================================================================
   0. GLOBÁLNÍ CHECKOUT STYLING
   ============================================================================ */

/* Font pro pokladnu WooCommerce */
.woocommerce-checkout {
    font-family: 'Figtree', sans-serif !important;
}

/* Font i pro všechny prvky uvnitř */
.woocommerce-cart *,
.woocommerce-checkout * {
    font-family: 'Figtree', sans-serif !important;
}

/* Nadpisy checkout kroků a survey */
div.wc-block-components-checkout-step__heading > h2,
div.presah-survey-container > h2 {
    font-size: 31px !important;
    font-weight: 900;
    color: #cb9274;
}

.presah-survey-container {
    margin: 32px 0;
}

.presah-survey-blocks {
    background: #ffffff;
    border: 1px solid #dddddd;
    border-radius: 8px;
    padding: 24px;
}

.presah-survey-description {
    margin-bottom: 24px;
    color: #555555;
}

.presah-survey-blocks .survey-question {
    margin-bottom: 20px;
}

.presah-survey-blocks .survey-question-label {
    display: block;
    font-weight: 600;
    margin-bottom: 12px;
    color: #1e1e1e;
}

.presah-survey-blocks .survey-question-required {
    color: #d63638;
    margin-left: 4px;
}

.presah-survey-control select,
.presah-survey-control textarea {
    width: 100%;
    max-width: 400px;
    border: 1px solid #dddddd;
    border-radius: 4px;
    padding: 10px 12px;
    font-size: 15px;
}

.presah-survey-option {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
    cursor: pointer;
    user-select: none;
}

.presah-survey-option input {
    width: 18px;
    height: 18px;
    accent-color: #071F34;
}

.presah-survey-error {
    color: #d63638;
    font-size: 0.9rem;
    margin-top: 8px;
}

.presah-survey-rating {
    display: flex;
    gap: 8px;
}

.presah-survey-rating__button {
    border: 1px solid #d3d3d3;
    border-radius: 6px;
    background: #ffffff;
    padding: 8px 12px;
    cursor: pointer;
    min-width: 44px;
    transition: background 0.2s ease;
}

.presah-survey-rating__button.is-active {
    background: #071F34;
    color: #ffffff;
    border-color: #071F34;
}

/* Skrytí popisu kroků a guest checkout notice */
.wc-block-components-checkout-step__description,
.wc-block-checkout__guest-checkout-notice {
    display: none;
}

/* Fix zobrazení titulků produktů v shopu */
.astra-shop-summary-wrap .woocommerce-loop-product__title {
    display: block !important;
}

/* Skrytí "Přidat byt č." pole */
.wc-block-components-address-form__address_2,
.wc-block-components-address-form__address_2-toggle,
#shipping-address_2,
#billing-address_2,
#shipping-address_2-toggle,
#billing-address_2-toggle,
.wc-block-checkout__shipping-fields .wc-block-components-text-input:has(input[id*="address-2"]),
.wc-block-checkout__billing-fields .wc-block-components-text-input:has(input[id*="address-2"]) {
    display: none !important;
}

/* Skrytí dalších nepotřebných elementů */
/* =========================================================================
   3. CART & CHECKOUT CONTAINERS
   ============================================================================ */

/* Schovat metadata produktů v cart & checkout (není potřeba) */
.woocommerce-cart .wc-block-components-product-metadata__description,
.woocommerce-checkout .wc-block-components-product-metadata__description {
    display: none !important;
}

/* =========================================================================
   3. CART & CHECKOUT CONTAINERS
   ============================================================================ */

.wc-block-components-shipping-rates-control,
.wc-block-components-radio-control,
.wc-block-components-address-address-wrapper {
    background-color: #ffffff;
}

/* Rekapitulace objednávky - stejný styl jako input pole */
.wp-block-woocommerce-checkout-order-summary-block {
    background-color: #ffffff !important;
    border: 1px solid #ddd !important;
    border-radius: 4px !important;
    padding: 20px 20px 4px 20px !important;
}

/* Titulní řádek rekapitulace */
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title {
    border-top: none !important;
    border-bottom: none !important;
    padding: 0 0 15px 0 !important;
    margin: 0 !important;
}

/* Zrušit flex pro ceny u radio buttonů (dopravní metody) */
.wc-block-components-checkout-step__content .wc-block-components-radio-control__label-group > span > span {
    display: block !important;
}

/* Odstranit barvu borderu u checkout-order-summary-block-fill */
.checkout-order-summary-block-fill {
    border-color: transparent !important;
}

/* Odstranit spodní border u totals wrapper (pod "Cena celkem") */
.wc-block-components-totals-wrapper {
    border-bottom: none !important;
}

/* Také odstranit border u všech totals items */
.wc-block-components-totals-item {
    border-bottom: none !important;
}

/* Odstranit spodní border u order summary content */
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__content.is-open {
    border-bottom: none !important;
}

/* Schovat footer v košíku a pokladně */
.woocommerce-cart footer,
.woocommerce-checkout footer,
.woocommerce-cart .site-footer,
.woocommerce-checkout .site-footer {
    display: none !important;
}

/* Schovat tlačítko "Návrat do košíku" v pokladně */
.wc-block-components-checkout-return-to-cart-button {
    display: none !important;
}

/* Rovnoměrná mezera nad tlačítkem "Koupit a zaplatit" */
.wc-block-components-button.wp-element-button.wc-block-components-checkout-place-order-button.contained {
    margin-top: 16px !important;
}

/* Zabránit automatickému zoom na mobilu při kliknutí do polí */
@media (max-width: 768px) {
    .woocommerce-cart input[type="text"],
    .woocommerce-cart input[type="email"],
    .woocommerce-cart input[type="tel"],
    .woocommerce-cart input[type="number"],
    .woocommerce-cart select,
    .woocommerce-cart textarea,
    .woocommerce-checkout input[type="text"],
    .woocommerce-checkout input[type="email"],
    .woocommerce-checkout input[type="tel"],
    .woocommerce-checkout input[type="number"],
    .woocommerce-checkout select,
    .woocommerce-checkout textarea,
    .wc-block-components-text-input input,
    .wc-block-components-select select {
        font-size: 16px !important;
    }
}

.wc-block-components-order-summary-item__total-price {
    display: none;
}

.wc-block-components-product-price__value {
    color: #96816B;
}

.wc-blocks-components-select__container {
    margin-top: 0 !important;
}

/* ============================================================================
   2. STYLING TLAČÍTEK V KOŠÍKU A POKLADNĚ
   ============================================================================ */

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout .checkout-button,
.woocommerce-cart .checkout-button,
.woocommerce-cart .wc-proceed-to-checkout .button.checkout-button,
.woocommerce-cart .wc-block-cart__submit-button,
.woocommerce-cart .wc-block-components-checkout-button,
.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-checkout-button {
    margin-top: 0 !important;
    transform: translateY(0) !important;
    background-color: #071F34 !important;
    color: #FFFFFF !important;
    border: none !important;
    transition: all 0.3s ease !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover,
.woocommerce-cart .checkout-button:hover,
.woocommerce-cart .wc-proceed-to-checkout .button.checkout-button:hover,
.woocommerce-cart .wc-block-cart__submit-button:hover,
.woocommerce-cart .wc-block-components-checkout-button:hover,
.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-checkout-button:hover {
    background-color: #FFFFFF !important;
    color: #051F34 !important;
    border: none !important;
}

.woocommerce-checkout #place_order,
.woocommerce-checkout .button#place_order,
.woocommerce-checkout .woocommerce-form-coupon-toggle,
.woocommerce-checkout .button[name="woocommerce_checkout_place_order"],
.woocommerce-checkout .checkout-button,
.woocommerce-checkout .wc-block-components-checkout-place-order-button,
.woocommerce-checkout .wc-block-checkout__actions .wc-block-components-checkout-place-order-button,
.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button,
.wp-block-woocommerce-checkout .wc-block-checkout__actions .wc-block-components-checkout-place-order-button,
.wc-block-checkout .wc-block-components-checkout-place-order-button {
    margin-top: 0 !important;
    transform: translateY(0) !important;
    background-color: #071F34 !important;
    color: #FFFFFF !important;
    border: none !important;
    transition: all 0.3s ease !important;
}

.woocommerce-checkout #place_order:hover,
.woocommerce-checkout .button#place_order:hover,
.woocommerce-checkout .woocommerce-form-coupon-toggle:hover,
.woocommerce-checkout .button[name="woocommerce_checkout_place_order"]:hover,
.woocommerce-checkout .checkout-button:hover,
.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
.woocommerce-checkout .wc-block-checkout__actions .wc-block-components-checkout-place-order-button:hover,
.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
.wp-block-woocommerce-checkout .wc-block-checkout__actions .wc-block-components-checkout-place-order-button:hover,
.wc-block-checkout .wc-block-components-checkout-place-order-button:hover {
    background-color: #FFFFFF !important;
    color: #051F34 !important;
    border: none !important;
}

/* =========================================================================
   4. ZÁSILKOVNA - Styling pro výběr pobočky v pokladně
   ============================================================================ */

.zas-tlac.button,
.zas-pop-kont.button,
.zas-hd-tlac.button,
.packeta-selector-open.button {
    background-color: #062035 !important;
    color: #FFFFFF !important;
    padding: 12px 24px !important;
    font-family: 'Figtree', sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    display: inline-block !important;
    text-align: center !important;
    min-width: 200px !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05),
                0 2px 8px rgba(0, 0, 0, 0.04);
    margin-top: 8px !important;
    margin-bottom: 8px !important;
}

.zas-tlac.button:hover,
.zas-pop-kont.button:hover,
.zas-hd-tlac.button:hover,
.packeta-selector-open.button:hover {
    background-color: #FFFFFF !important;
    color: #061F34 !important;
    transform: translateY(-2px) !important;
}

.packeta-selector-branch-name,
.display_branch,
.toret-vyber-pobocky {
    background-color: #F8F9FA !important;
    border: 1px solid #E0E0E0 !important;
    border-radius: 8px !important;
    padding: 12px 16px !important;
    font-family: 'Figtree', sans-serif !important;
    font-size: 14px !important;
    color: #333333 !important;
    line-height: 1.5 !important;
    min-height: 48px !important;
    display: flex !important;
    align-items: center !important;
    margin-top: 12px !important;
    margin-bottom: 12px !important;
    transition: all 0.3s ease !important;
}

.packeta-selector-branch-name:not(:empty),
.display_branch:not(:empty),
.toret-vyber-pobocky:not(:empty) {
    background-color: #FFFFFF !important;
    border-color: #CA9174 !important;
    border-left: 4px solid #CA9174 !important;
    padding-left: 12px !important;
    font-weight: 500 !important;
}

.packeta-selector-branch-name:not(:empty)::before,
.display_branch:not(:empty)::before {
    content: "📍 ";
    margin-right: 8px;
    font-size: 16px;
}

.woocommerce-checkout .zas-pop-kont.button,
.woocommerce-checkout .zas-hd-tlac.button {
    width: 100% !important;
    max-width: 100% !important;
    margin: 12px 0 !important;
    }

#tzas-selected-row td,
#tzas-selected-row th {
    padding: 12px !important;
    vertical-align: middle !important;
}

.zasikovna-ico,
.zasilkovna-zvolena-pobocka {
    font-family: 'Figtree', sans-serif !important;
    font-weight: 600 !important;
    color: #333333 !important;
}

tr:has(.zasikovna-ico),
tr#tzas-selected-row {
    margin-top: 12px !important;
    margin-bottom: 12px !important;
}

@media (max-width: 768px) {
    .zas-tlac.button,
    .zas-pop-kont.button,
    .zas-hd-tlac.button,
    .packeta-selector-open.button {
        font-size: 14px !important;
        padding: 10px 20px !important;
        min-width: 100% !important;
    }

    .packeta-selector-branch-name,
    .display_branch,
    .toret-vyber-pobocky {
        font-size: 13px !important;
        padding: 10px 12px !important;
        min-height: 44px !important;
    }
}

.wc-block-checkout .zas-tlac.button,
.wc-block-checkout .packeta-selector-branch-name,
.wc-block-checkout .display_branch {
    font-family: 'Figtree', sans-serif !important;
}

.wc-block-components-shipping-rates-control .zas-tlac.button {
    margin-top: 16px !important;
}

.wc-block-components-shipping-rates-control .packeta-selector-branch-name {
    margin-top: 12px !important;
    margin-bottom: 0 !important;
}

/* =========================================================================
   1. FIREMNÍ POLE (Název firmy, IČ, DIČ)
   ============================================================================ */

/* Wrapper pro toggle checkbox - zarovnání jako ostatní pole */
.jedinecno-company-toggle-wrapper {
    grid-column: 1 / -1;
    margin: 16px 0 0 0;
    padding: 0;
}

/* Zajištění správného pozicování checkboxu a fajfky */
.jedinecno-company-toggle-wrapper .wc-block-components-checkbox {
    position: relative;
}

/* Fajfka je absolutně pozicovaná uvnitř checkboxu */
.jedinecno-company-toggle-wrapper .wc-block-components-checkbox__mark {
    position: absolute;
    pointer-events: none;
    fill: #000;
    width: 1.125em;
    height: 1.125em;
    left: 0;
    top: 0;
    margin-left: 0.1875em;
    margin-top: 0.0625em;
}

/* Skrýt fajfku když checkbox není zaškrtnutý */
.jedinecno-company-toggle-wrapper .wc-block-components-checkbox__input:not(:checked) + .wc-block-components-checkbox__mark {
    display: none;
}

/* Zobrazit fajfku když je checkbox zaškrtnutý */
.jedinecno-company-toggle-wrapper .wc-block-components-checkbox__input:checked + .wc-block-components-checkbox__mark {
    display: block;
}

.wc-block-components-address-form__fieldset .jedinecno-company-toggle-wrapper,
.wc-block-components-address-form__fieldset .jedinecno-company-fields-group,
.wc-block-components-address-form .jedinecno-company-toggle-wrapper,
.wc-block-components-address-form .jedinecno-company-fields-group {
    grid-column: 1 / -1;
}

.jedinecno-company-fields-group {
    display: none;
    grid-column: 1 / -1;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    margin-top: 16px;
    width: 100%;
}

.jedinecno-company-fields-group.is-expanded {
    display: grid !important;
}

/* Název firmy - přes celý řádek (span 2 columns) */
.jedinecno-company-fields-group .jedinecno-company-name-field {
    grid-column: 1 / -1 !important;
}

.jedinecno-company-fields-group .jedinecno-company-name-field.is-active {
    grid-column: 1 / -1 !important;
}

/* IČ a DIČ - každé na 1 sloupec (automaticky vedle sebe) */
.jedinecno-company-fields-group .jedinecno-company-number-field,
.jedinecno-company-fields-group .jedinecno-company-vat-field {
    grid-column: span 1;
}

/* Resetovat všechny wrappery polí uvnitř company-fields-group */
.jedinecno-company-fields-group .jedinecno-company-name-field,
.jedinecno-company-fields-group .jedinecno-company-number-field,
.jedinecno-company-fields-group .jedinecno-company-vat-field {
    margin: 0 !important;
    padding: 0 !important;
}

/* Odstranit margin a padding z jednotlivých inputů */
.jedinecno-company-fields-group .wc-block-components-text-input {
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box;
}

@media (max-width: 768px) {
    .jedinecno-company-fields-group {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    
    /* Na mobilu všechna pole přes celou šířku */
    .jedinecno-company-fields-group .jedinecno-company-number-field,
    .jedinecno-company-fields-group .jedinecno-company-vat-field {
        grid-column: 1 / -1;
    }
}

/* Helper to tighten vertical spacing */
.woocommerce-checkout .wc-block-components-text-input.is-inline {
    display: grid;
}

/* Admin order display */
.jedinecno-company-fields-admin {
    margin-top: 1rem;
    padding: 1rem;
    background: #f9f9f9;
    border-left: 3px solid #CA9174;
}

.jedinecno-company-fields-admin h3 {
    margin-top: 0;
    margin-bottom: 0.75rem;
    color: #CA9174;
}

.jedinecno-company-fields-admin p {
    margin: 0.5rem 0;
}

/* Frontend order display */
.jedinecno-company-fields-order {
    margin-top: 2rem;
}

.jedinecno-company-fields-order .woocommerce-column__title {
    margin-bottom: 1rem;
}

/* ============================================================================
   IKONA QR PLATBY (BACS)
   ============================================================================ */

/* Ikona u platební metody - stejný styl jako u ostatních payment methods */
.jedinecno-payment-container .jedinecno-payment-icon {
    width: 40px;
    height: auto;
    margin-right: 8px;
    vertical-align: middle;
    display: inline-block;
}

/* Zajistit, že label má správný display pro inline ikonu */
.jedinecno-payment-container {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

/* Responsive - na mobilu trochu menší ikona */
@media (max-width: 768px) {
    .jedinecno-payment-container .jedinecno-payment-icon {
        width: 32px;
        margin-right: 6px;
    }
}
