/* ==================================================
   YUME – CART
   ================================================== */

/* Pouze stránky objednávkového procesu */

body.ordering-process,
body.in-cart {
    font-family: "Open Sans", sans-serif;
    color: #2E5225;
}

/* ==================================================
   CELKOVÉ POZADÍ
   ================================================== */

body.ordering-process .content-wrapper,
body.in-cart .content-wrapper {
    background: #F7F7F7;
}

/* ==================================================
   VEŠKERÝ TEXT
   ================================================== */

body.ordering-process main,
body.ordering-process main *,
body.in-cart main,
body.in-cart main * {
    font-family: "Open Sans", sans-serif;
}

/* ==================================================
   KROKY OBJEDNÁVKY
   ================================================== */

body.ordering-process .cart-header,
body.in-cart .cart-header {
    background: #FFFFFF;
    border-bottom: 1px solid rgba(46, 82, 37, 0.18);
}

body.ordering-process .cart-header a,
body.ordering-process .cart-header span,
body.in-cart .cart-header a,
body.in-cart .cart-header span {
    color: #2E5225;
    font-weight: 600;
    text-transform: uppercase;
}

body.ordering-process .cart-header .active,
body.in-cart .cart-header .active {
    color: #2E5225;
    border-color: #2E5225;
}

body.ordering-process .cart-header .step,
body.ordering-process .cart-header .step-number,
body.in-cart .cart-header .step,
body.in-cart .cart-header .step-number {
    color: #2E5225;
    border-color: #2E5225;
}

body.ordering-process .cart-header .active::after,
body.in-cart .cart-header .active::after {
    background: #F8A7D8;
}

/* ==================================================
   HLAVNÍ ČÁST KOŠÍKU
   ================================================== */

body.ordering-process .cart-content,
body.ordering-process .cart-inner,
body.in-cart .cart-content,
body.in-cart .cart-inner {
    color: #2E5225;
}

/* Produkt */

body.ordering-process .cart-table,
body.in-cart .cart-table {
    background: #FFFFFF;
}

body.ordering-process .cart-table a,
body.in-cart .cart-table a {
    color: #2E5225;
    text-decoration: none;
}

body.ordering-process .cart-table .main-link,
body.ordering-process .cart-table .p-name,
body.in-cart .cart-table .main-link,
body.in-cart .cart-table .p-name {
    color: #2E5225;

    font-family: "Open Sans", sans-serif;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.45;
    letter-spacing: 0.01em;
    text-transform: uppercase;
}

/* Cena produktu */

body.ordering-process .cart-table .price,
body.ordering-process .cart-table .price-final,
body.ordering-process .cart-table .p-price,
body.in-cart .cart-table .price,
body.in-cart .cart-table .price-final,
body.in-cart .cart-table .p-price {
    color: #2E5225;

    font-family: "Open Sans", sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.3;
}

/* ==================================================
   VELKÁ CENA V PRAVÉM BOXU
   ================================================== */

body.ordering-process .cart-summary .price,
body.ordering-process .cart-summary .price-final,
body.ordering-process .checkout-box .price,
body.ordering-process .checkout-box .price-final,
body.in-cart .cart-summary .price,
body.in-cart .cart-summary .price-final,
body.in-cart .checkout-box .price,
body.in-cart .checkout-box .price-final {
    color: #2E5225;

    font-family: "Open Sans", sans-serif;
    font-size: 42px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -0.02em;

    margin-bottom: 28px;
}

/* Popisek Celkem za zboží */

body.ordering-process .cart-summary strong,
body.ordering-process .checkout-box strong,
body.in-cart .cart-summary strong,
body.in-cart .checkout-box strong {
    display: block;

    margin-bottom: 12px;

    font-family: "Open Sans", sans-serif;
    font-size: 15px;
    font-weight: 700;

    color: #2E5225;
}

/* ==================================================
   DOSTUPNOST
   ================================================== */

body.ordering-process .availability,
body.ordering-process .availability-value,
body.in-cart .availability,
body.in-cart .availability-value {
    color: #2E5225 !important;

    font-size: 15px;
    font-weight: 700;
}

/* ==================================================
   MNOŽSTVÍ
   ================================================== */

body.ordering-process input[type="number"],
body.in-cart input[type="number"] {
    background: #FFFFFF;
    border: 1px solid rgba(46, 82, 37, 0.35);

    color: #2E5225;

    font-family: "Open Sans", sans-serif;
    font-size: 15px;
    font-weight: 600;
}

body.ordering-process input[type="number"]:focus,
body.in-cart input[type="number"]:focus {
    outline: none;
    border-color: #2E5225;
    box-shadow: 0 0 0 2px rgba(248, 167, 216, 0.35);
}

/* ==================================================
   ODSTRANĚNÍ PRODUKTU
   ================================================== */

body.ordering-process .remove-item,
body.ordering-process .cart-table .delete,
body.in-cart .remove-item,
body.in-cart .cart-table .delete {
    color: #2E5225;
    transition: 0.2s;
}

body.ordering-process .remove-item:hover,
body.ordering-process .cart-table .delete:hover,
body.in-cart .remove-item:hover,
body.in-cart .cart-table .delete:hover {
    color: #EE1E9E;
}

/* ==================================================
   DÁRKY A SLEVY
   ================================================== */

body.ordering-process .discount-coupon,
body.ordering-process .cart-gifts,
body.ordering-process .extras-wrapper,
body.in-cart .discount-coupon,
body.in-cart .cart-gifts,
body.in-cart .extras-wrapper {
    color: #2E5225;
}

body.ordering-process .discount-coupon h4,
body.ordering-process .cart-gifts h4,
body.ordering-process .extras-wrapper h4,
body.in-cart .discount-coupon h4,
body.in-cart .cart-gifts h4,
body.in-cart .extras-wrapper h4 {
    color: #2E5225;
    font-weight: 700;
    text-transform: uppercase;
}

body.ordering-process .discount-coupon a,
body.ordering-process .cart-gifts a,
body.ordering-process .extras-wrapper a,
body.in-cart .discount-coupon a,
body.in-cart .cart-gifts a,
body.in-cart .extras-wrapper a {
    color: #2E5225;
    font-weight: 700;
}

body.ordering-process .discount-coupon a:hover,
body.ordering-process .cart-gifts a:hover,
body.ordering-process .extras-wrapper a:hover,
body.in-cart .discount-coupon a:hover,
body.in-cart .cart-gifts a:hover,
body.in-cart .extras-wrapper a:hover {
    color: #EE1E9E;
}

/* ==================================================
   PRAVÝ SOUHRNNÝ BOX
   ================================================== */

body.ordering-process .cart-summary,
body.ordering-process .checkout-box,
body.ordering-process .summary-wrapper,
body.in-cart .cart-summary,
body.in-cart .checkout-box,
body.in-cart .summary-wrapper {
    background: #FFFFFF;
    color: #2E5225;
}

body.ordering-process .cart-summary *,
body.ordering-process .checkout-box *,
body.in-cart .cart-summary *,
body.in-cart .checkout-box * {
    color: #2E5225;
}

body.ordering-process .cart-summary .price,
body.ordering-process .cart-summary .price-final,
body.ordering-process .checkout-box .price,
body.ordering-process .checkout-box .price-final,
body.in-cart .cart-summary .price,
body.in-cart .cart-summary .price-final,
body.in-cart .checkout-box .price,
body.in-cart .checkout-box .price-final {
    color: #2E5225;
    font-weight: 800;
}

/* ==================================================
   OBAL TLAČÍTEK
   ================================================== */

body.ordering-process .next-step,
body.in-cart .next-step {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;

    width: 100%;
    margin: 0;
    padding: 0;

    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
}

/* ==================================================
   SPOLEČNÝ VZHLED CHECKOUT TLAČÍTEK
   ================================================== */

body.ordering-process .btn-conversion,
body.in-cart .btn-conversion,
body.ordering-process a.next-step-back,
body.in-cart a.next-step-back {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    min-height: 48px !important;

    margin: 0 !important;
    padding: 12px 20px !important;

    background: #F8A7D8 !important;
    border: 2px solid #F8A7D8 !important;
    border-radius: 999px !important;

    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;

    box-shadow: none !important;

    font-family: "Open Sans", sans-serif !important;
    font-size: 14px !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: 0.01em !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: uppercase !important;

    cursor: pointer;

    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease !important;
}

/* Obsah tlačítek */

body.ordering-process .btn-conversion *,
body.in-cart .btn-conversion *,
body.ordering-process a.next-step-back *,
body.in-cart a.next-step-back * {
    position: static !important;
    inset: auto !important;
    float: none !important;

    display: inline !important;

    width: auto !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    border: 0 !important;

    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;

    font-family: "Open Sans", sans-serif !important;
    font-size: inherit !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: inherit !important;
    letter-spacing: inherit !important;
    text-decoration: none !important;
    text-transform: uppercase !important;

    transform: none !important;
}

/* Pořadí */

body.ordering-process .btn-conversion,
body.in-cart .btn-conversion {
    order: 1;
}

body.ordering-process a.next-step-back,
body.in-cart a.next-step-back {
    order: 2;
}

/* ==================================================
   HOVER – TMAVĚ RŮŽOVÁ
   ================================================== */

body.ordering-process .btn-conversion:hover,
body.ordering-process .btn-conversion:focus,
body.in-cart .btn-conversion:hover,
body.in-cart .btn-conversion:focus,
body.ordering-process a.next-step-back:hover,
body.ordering-process a.next-step-back:focus,
body.in-cart a.next-step-back:hover,
body.in-cart a.next-step-back:focus {
    background: #EE1E9E !important;
    border-color: #EE1E9E !important;

    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;

    box-shadow: none !important;

    transform: translateY(-2px);
}

body.ordering-process .btn-conversion:hover *,
body.ordering-process .btn-conversion:focus *,
body.in-cart .btn-conversion:hover *,
body.in-cart .btn-conversion:focus *,
body.ordering-process a.next-step-back:hover *,
body.ordering-process a.next-step-back:focus *,
body.in-cart a.next-step-back:hover *,
body.in-cart a.next-step-back:focus * {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

/* ==================================================
   FINÁLNÍ OBJEDNÁVACÍ TLAČÍTKO
   ================================================== */

/*
   Shoptet na posledním kroku používá trochu jinou
   vnitřní strukturu. Tohle zabrání překrývání textu.
*/

body.ordering-process .order-button,
body.ordering-process .btn-order,
body.ordering-process button.btn-conversion,
body.ordering-process input.btn-conversion,
body.ordering-process [data-testid="buttonSubmitOrder"],
body.ordering-process [data-testid="submitOrder"] {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    min-height: 56px !important;

    padding: 12px 20px !important;

    background: #F8A7D8 !important;
    border: 2px solid #F8A7D8 !important;
    border-radius: 999px !important;

    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;

    font-family: "Open Sans", sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;

    text-align: center !important;
    text-transform: uppercase !important;

    white-space: normal !important;

    box-shadow: none !important;
}

/* Vnitřní text finálního tlačítka */

body.ordering-process .order-button *,
body.ordering-process .btn-order *,
body.ordering-process button.btn-conversion *,
body.ordering-process [data-testid="buttonSubmitOrder"] *,
body.ordering-process [data-testid="submitOrder"] * {
    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;

    display: inline !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;

    line-height: 1.25 !important;

    transform: none !important;
}

/* ==================================================
   ODSTRANĚNÍ SHOPTET ŠIPEK A PSEUDO-ELEMENTŮ
   ================================================== */

body.in-cart .btn-conversion::before,
body.in-cart .btn-conversion::after,
body.ordering-process .btn-conversion::before,
body.ordering-process .btn-conversion::after,
body.in-cart .btn-conversion span::before,
body.in-cart .btn-conversion span::after,
body.ordering-process .btn-conversion span::before,
body.ordering-process .btn-conversion span::after,
body.in-cart a.next-step-back::before,
body.in-cart a.next-step-back::after,
body.ordering-process a.next-step-back::before,
body.ordering-process a.next-step-back::after,
body.ordering-process .order-button::before,
body.ordering-process .order-button::after,
body.ordering-process .btn-order::before,
body.ordering-process .btn-order::after {
    content: none !important;
    display: none !important;

    width: 0 !important;
    height: 0 !important;

    border: 0 !important;
    background: none !important;
}

/* ==================================================
   POSTRANNÍ KONTAKT
   ================================================== */

body.ordering-process .contact-box,
body.ordering-process .sidebar-inner,
body.in-cart .contact-box,
body.in-cart .sidebar-inner {
    color: #2E5225;
}

body.ordering-process .contact-box h4,
body.ordering-process .sidebar-inner h4,
body.in-cart .contact-box h4,
body.in-cart .sidebar-inner h4 {
    color: #2E5225;
    font-weight: 700;
    text-transform: uppercase;
}

body.ordering-process .contact-box a,
body.ordering-process .sidebar-inner a,
body.in-cart .contact-box a,
body.in-cart .sidebar-inner a {
    color: #2E5225;
}

/* ==================================================
   ODKAZY
   ================================================== */

body.ordering-process main a,
body.in-cart main a {
    text-decoration: none;
}

body.ordering-process main a:not(.btn):not(.btn-conversion):not(.next-step-back):hover,
body.in-cart main a:not(.btn):not(.btn-conversion):not(.next-step-back):hover {
    color: #EE1E9E;
}

/* ==================================================
   YUME – PRÁZDNÝ KOŠÍK
   ================================================== */

body.in-cart #cart-wrapper {
    background: #FBFFE4;
    min-height: 360px;
    padding: 70px 30px;
}

body.in-cart #cart-wrapper .cart-heading {
    margin: 0;

    text-align: center;
    color: #2E5225;

    font-family: "Open Sans", sans-serif;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.2;
}

body.in-cart #cart-wrapper .search {
    display: none !important;
}

/* ==================================================
   SCHOVAT REGISTRACI V CHECKOUTU
   ================================================== */

body.ordering-process .form-group:has(input#register),
body.ordering-process .form-group:has(input[name="register"]),
body.ordering-process .form-group:has(input[name="customerRegistration"]),
body.ordering-process .form-group:has(input[name="registration"]) {
    display: none !important;
}

body.ordering-process .checkbox-wrapper:has(input#register),
body.ordering-process .checkbox-wrapper:has(input[name="register"]),
body.ordering-process .checkbox:has(input#register),
body.ordering-process .checkbox:has(input[name="register"]) {
    display: none !important;
}

body.ordering-process input#register,
body.ordering-process input[name="register"],
body.ordering-process label[for="register"] {
    display: none !important;
}

/* ==================================================
   MOBIL
   ================================================== */

@media (max-width: 767px) {

    body.ordering-process .cart-header a,
    body.ordering-process .cart-header span,
    body.in-cart .cart-header a,
    body.in-cart .cart-header span {
        font-size: 12px;
    }

    body.ordering-process .next-step,
    body.in-cart .next-step {
        gap: 10px !important;
    }

    body.ordering-process .btn-conversion,
    body.in-cart .btn-conversion,
    body.ordering-process a.next-step-back,
    body.in-cart a.next-step-back {
        min-height: 46px !important;
        padding: 11px 18px !important;

        font-size: 13px !important;
    }

    body.ordering-process .order-button,
    body.ordering-process .btn-order,
    body.ordering-process button.btn-conversion,
    body.ordering-process [data-testid="buttonSubmitOrder"],
    body.ordering-process [data-testid="submitOrder"] {
        min-height: 54px !important;
        padding: 11px 16px !important;

        font-size: 12px !important;
    }

    body.in-cart #cart-wrapper {
        min-height: 280px;
        padding: 55px 20px;
    }

    body.in-cart #cart-wrapper .cart-heading {
        font-size: 24px;
    }
}