/* ============================================================
   SIMPLECHECKOUT PAGE
   ============================================================ */

/* Page wrapper */
.ua-checkout-wrap {
    width: 1400px !important;
    max-width: 100% !important;
    padding: 0 !important;
    overflow: visible !important;
}
.ua-checkout-wrap > .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.ua-checkout-content { text-align: left !important; padding: 0 !important; }
.ua-checkout-h1 {
    font-family: 'Lato', sans-serif;
    font-weight: 700;
    font-size: 28px;
    line-height: 1.2;
    color: #141414;
    margin: 40px 0 24px;
    padding: 0;
    text-align: left;
}
@media (max-width: 767px) { .ua-checkout-h1 { font-size: 22px; margin: 24px 0 16px; } }

/* Override simple-content margin */
.ua-checkout-content .simple-content { margin: 0 !important; padding: 0 !important; }

/* ---- Two-column grid layout ----
   .simplecheckout (grid host: 1fr 447px, gap 40px)
     .simplecheckout-step (display:contents → transparent, children become grid items)
       .simplecheckout-left-column  → col 1, spans all rows
       .simplecheckout-right-column → col 2, row 1, sticky
     .simplecheckout-button-block   → col 2, row 2 (auto-placed below summary)
*/
.ua-checkout-content .simplecheckout {
    display: grid !important;
    grid-template-columns: 1fr 447px;
    gap: 0 40px;
    align-items: start;
    float: none !important;
    width: 100% !important;
}
.ua-checkout-content .simplecheckout::after { display: none !important; }

/* Step becomes invisible to grid so its children participate directly */
.ua-checkout-content .simplecheckout-step {
    display: contents !important;
    float: none !important;
}

.ua-checkout-content .simplecheckout-left-column {
    grid-column: 1 !important;
    float: none !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
}
.ua-checkout-content .simplecheckout-right-column {
    grid-column: 2 !important;
    float: none !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    align-self: start !important;
    position: sticky !important;
    top: 120px !important;
}
.ua-checkout-content #simplecheckout_bottom { display: none !important; }
.ua-checkout-content .simplecheckout-proceed-payment { display: none !important; }
/* Button block — moved into right column via JS; keep layout reset as fallback */
.ua-checkout-content .simplecheckout-button-block {
    float: none !important;
    clear: none !important;
    background: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
}
.ua-checkout-content .simplecheckout-right-column .simplecheckout-button-block {
    margin-top: 16px !important;
}
.ua-checkout-content .simplecheckout-button-right {
    float: none !important;
    text-align: left !important;
}

/* ---- Fallback: explicit column placement when {left_column}/{right_column} wrappers
        are absent from the DB template.
        When wrappers DO exist, these blocks are NOT direct grid items (they're inside
        the wrapper divs), so grid-column/grid-row on them has no layout effect.
        Exception: position:sticky on #simplecheckout_summary is undone below
        via .simplecheckout-right-column rule to avoid nested-sticky conflict. ---- */
.ua-checkout-content #simplecheckout_customer,
.ua-checkout-content #simplecheckout_cart,
.ua-checkout-content #simplecheckout_shipping_address,
.ua-checkout-content #simplecheckout_shipping,
.ua-checkout-content #simplecheckout_payment,
.ua-checkout-content #simplecheckout_payment_form,
.ua-checkout-content #simplecheckout_text_help,
.ua-checkout-content #simplecheckout_comment,
.ua-checkout-content #simplecheckout_agreement {
    grid-column: 1 !important;
}
/* Summary → right column, spans all auto-rows so sticky has room to scroll */
.ua-checkout-content #simplecheckout_summary {
    grid-column: 2 !important;
    grid-row: 1 / span 20 !important;
    align-self: start !important;
    position: sticky !important;
    top: 120px !important;
}
/* When wrappers DO exist: summary is inside .simplecheckout-right-column (not a grid item).
   Undo the fallback sticky/align to prevent nested-sticky conflict with the wrapper. */
.ua-checkout-content .simplecheckout-right-column #simplecheckout_summary {
    position: static !important;
    grid-column: unset !important;
    grid-row: unset !important;
    align-self: unset !important;
}
/* Button-block: keep in right column when JS hasn't moved it yet (direct child = not moved) */
.ua-checkout-content .simplecheckout > .simplecheckout-button-block {
    grid-column: 2 !important;
}

/* ---- Cards (.simplecheckout-block) ---- */
.ua-checkout-content .simplecheckout-block {
    background: #ffffff;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04);
    border-radius: 12px !important;
    padding: 24px !important;
    margin-bottom: 20px !important;
    clear: none !important;
}

/* ---- Block headings ---- */
.ua-checkout-content .checkout-heading.panel-heading {
    font-family: 'Lato', sans-serif !important;
    font-weight: 700 !important;
    font-size: 24px !important;
    line-height: 1.2 !important;
    color: #141414 !important;
    background: none !important;
    border: none !important;
    border-bottom: 1px solid #F3F3F3 !important;
    border-radius: 0 !important;
    padding: 0 0 16px !important;
    margin: 0 0 16px !important;
}

/* ============================================================
   CART BLOCK
   ============================================================ */
#simplecheckout_cart .simplecheckout-cart {
    border: none !important;
    border-top: none !important;
    border-collapse: collapse !important;
    margin-top: 0 !important;
}
#simplecheckout_cart .simplecheckout-cart thead { display: none !important; }
#simplecheckout_cart .simplecheckout-cart tbody > tr {
    border-bottom: 1px solid #F3F3F3;
}
#simplecheckout_cart .simplecheckout-cart tbody > tr:first-child {
    border-top: none !important;
}
#simplecheckout_cart .simplecheckout-cart tbody > tr:last-child {
    border-bottom: none;
}
/* Author inside name cell */
#simplecheckout_cart .simplecheckout-cart td.name .cart-author {
    margin-top: 4px;
}
#simplecheckout_cart .simplecheckout-cart td.name .cart-author a {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 14px !important;
    color: rgba(0,0,0,0.55) !important;
    text-decoration: none !important;
}
/* Hide standalone author column */
#simplecheckout_cart .simplecheckout-cart td.author { display: none !important; }
#simplecheckout_cart .simplecheckout-cart td {
    padding: 14px 8px !important;
    vertical-align: middle !important;
    border: none !important;
    float: none !important;
    display: table-cell !important;
}

/* Product image */
#simplecheckout_cart .simplecheckout-cart td.image {
    width: 76px !important;
    padding: 14px 12px 14px 0 !important;
}
#simplecheckout_cart .simplecheckout-cart td.image img {
    width: 64px !important;
    height: 88px !important;
    object-fit: cover;
    border: 1px solid #E5E5E5;
    border-radius: 4px;
    display: block;
}

/* Product name */
#simplecheckout_cart .simplecheckout-cart td.name { vertical-align: top; padding-top: 18px !important; }
#simplecheckout_cart .simplecheckout-cart td.name a {
    font-family: 'Lato', sans-serif !important;
    font-weight: 500 !important;
    font-size: 18px !important;
    line-height: 1.3 !important;
    color: #141414 !important;
    text-decoration: none !important;
}
#simplecheckout_cart .simplecheckout-cart td.name a:hover { color: #1b285e !important; }

/* Author */
#simplecheckout_cart .simplecheckout-cart td.author { vertical-align: top; padding-top: 20px !important; min-width: 110px; white-space: nowrap; }
#simplecheckout_cart .simplecheckout-cart td.author,
#simplecheckout_cart .simplecheckout-cart td.author a {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 15px !important;
    color: rgba(0,0,0,0.6) !important;
    text-decoration: none !important;
}

/* Model — hide */
#simplecheckout_cart .simplecheckout-cart td.model,
#simplecheckout_cart .simplecheckout-cart col.model { display: none !important; }

/* Qty stepper */
#simplecheckout_cart .simplecheckout-cart td.quantity {
    width: 130px !important;
    text-align: center;
}
#simplecheckout_cart .btn-block.plus_minus_block {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    justify-content: center;
}
#simplecheckout_cart .btn-block.plus_minus_block > .btn {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    padding: 0 !important;
    background: #F9F9FA !important;
    border: 1px solid #F3F3F3 !important;
    border-radius: 9px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #686868 !important;
    font-size: 14px !important;
    box-shadow: none !important;
    transition: background .12s, border-color .12s !important;
    line-height: 1 !important;
}
#simplecheckout_cart .btn-block.plus_minus_block > .btn:hover {
    background: #ECEDF0 !important;
    border-color: #D8D8D8 !important;
}
#simplecheckout_cart .btn-block.plus_minus_block input[type="text"] {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    text-align: center !important;
    border: none !important;
    background: none !important;
    font-family: 'Lato', sans-serif !important;
    font-weight: 600 !important;
    font-size: 24px !important;
    color: #141414 !important;
    padding: 0 !important;
    box-shadow: none !important;
}

/* Price column — hide; total shows instead */
#simplecheckout_cart .simplecheckout-cart td.price,
#simplecheckout_cart .simplecheckout-cart col.price { display: none !important; }

/* Total column — primary price (24px) */
#simplecheckout_cart .simplecheckout-cart td.total {
    display: table-cell !important;
    text-align: right !important;
    min-width: 110px !important;
    padding-right: 8px !important;
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: 24px !important;
    color: #141414 !important;
    white-space: nowrap;
    vertical-align: middle !important;
}
#simplecheckout_cart .simplecheckout-cart td.total .priceCurrency {
    font-size: 16px !important;
    font-weight: 400 !important;
}

/* Remove button */
#simplecheckout_cart .simplecheckout-cart td.remove {
    width: 36px !important;
    text-align: center !important;
    padding: 0 0 0 4px !important;
}
#simplecheckout_cart .simplecheckout-cart td.remove .btn-remove {
    width: 32px !important;
    height: 32px !important;
    background: none !important;
    border: none !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: .45 !important;
    transition: opacity .15s !important;
    box-shadow: none !important;
}
#simplecheckout_cart .simplecheckout-cart td.remove .btn-remove:hover { opacity: 1 !important; }
#simplecheckout_cart .simplecheckout-cart td.remove .btn-remove .fa-times {
    font-size: 16px !important;
    color: #A3A9AD !important;
}

/* ---- Coupon row ---- */
#simplecheckout_cart .simplecheckout-cart-total {
    border: none !important;
    padding: 16px 0 0 !important;
    text-align: left !important;
}
#simplecheckout_cart .simplecheckout-cart-total > .inputs {
    display: flex !important;
    gap: 12px;
    align-items: stretch;
}
#simplecheckout_cart .simplecheckout-cart-total > .inputs > span { display: none !important; }
#simplecheckout_button_apply_coupon { flex: 1 !important; }
#simplecheckout_button_apply_coupon > div {
    display: flex !important;
    width: 100% !important;
    gap: 12px;
    align-items: stretch;
}
#simplecheckout_button_apply_coupon input.form-control {
    flex: 1 !important;
    height: 56px !important;
    background: #F9F9FA !important;
    border: 1px solid #F3F3F3 !important;
    border-radius: 9px !important;
    padding: 0 18px !important;
    font-family: 'Lato', sans-serif !important;
    font-size: 16px !important;
    color: rgba(0,0,0,0.6) !important;
    box-shadow: none !important;
    display: block !important;
    min-width: 0 !important;
    max-width: none !important;
    width: 100% !important;
}
#simplecheckout_button_apply_coupon input.form-control:focus {
    border-color: #1b285e !important;
    box-shadow: 0 0 0 3px rgba(50,170,187,.12) !important;
    outline: none !important;
}
#simplecheckout_button_apply_coupon .button.btn-primary,
#simplecheckout_button_apply_coupon a.button {
    height: 56px !important;
    padding: 0 24px !important;
    background: #1b285e !important;
    border: none !important;
    border-radius: 9px !important;
    font-family: 'Lato', sans-serif !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    color: #fff !important;
    white-space: nowrap;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    margin: 0 !important;
    line-height: 1 !important;
}
#simplecheckout_button_apply_coupon .button.btn-primary:hover,
#simplecheckout_button_apply_coupon a.button:hover {
    background: #2b94a3 !important;
    color: #fff !important;
}
#simplecheckout_button_apply_coupon .button.btn-primary span { font-size: 16px !important; }

/* Hide total rows in cart block (they show in summary) */
#simplecheckout_cart [id^="total_"] { display: none !important; }

/* ============================================================
   CUSTOMER BLOCK
   ============================================================ */
#simplecheckout_customer .simplecheckout-block-content {
    text-align: left !important;
    padding: 0 !important;
}
#simplecheckout_customer fieldset.form-horizontal {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex;
    flex-wrap: wrap;
    margin: 0 -6px !important;
}
#simplecheckout_customer .form-group {
    padding: 0 6px !important;
    margin-bottom: 12px !important;
    float: none !important;
    display: block !important;
}
#simplecheckout_customer .form-group.col-md-8.col-lg-6 {
    width: 50% !important;
}
#simplecheckout_customer .form-group.col-md-8.col-lg-6:only-child,
#simplecheckout_customer .form-group.col-md-8[class*="comment"],
#simplecheckout_customer .form-group.row-customer_comment,
#simplecheckout_customer .form-group.row-customer_telephone ~ .form-group.row-customer_comment {
    width: 100% !important;
}
#simplecheckout_customer label {
    font-family: 'Lato', sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: rgba(0,0,0,0.55) !important;
    margin-bottom: 6px !important;
    padding: 0 !important;
    display: block !important;
    text-align: left !important;
}
#simplecheckout_customer .form-control {
    height: 60px !important;
    background: #F9FAFC !important;
    border: 1px solid #E2E2E2 !important;
    border-radius: 12px !important;
    font-family: 'Lato', sans-serif !important;
    font-size: 18px !important;
    font-weight: 500 !important;
    color: #141414 !important;
    padding: 0 18px !important;
    box-shadow: none !important;
    width: 100% !important;
    transition: border-color .15s !important;
}
#simplecheckout_customer .form-control::placeholder {
    color: #6F6F6F !important;
    font-weight: 500 !important;
}
#simplecheckout_customer textarea.form-control {
    height: 100px !important;
    padding: 16px 18px !important;
    resize: vertical !important;
    line-height: 1.5 !important;
}
#simplecheckout_customer .form-control:focus {
    border-color: #1b285e !important;
    box-shadow: 0 0 0 3px rgba(50,170,187,.12) !important;
    outline: none !important;
}
#simplecheckout_customer .form-group > div {
    margin-left: 0 !important;
    width: 100% !important;
    padding: 0 !important;
    float: none !important;
}
#simplecheckout_customer .col-md-push-2,
#simplecheckout_customer .col-lg-push-0 { left: auto !important; }

/* ============================================================
   SHIPPING METHODS BLOCK
   ============================================================ */
#simplecheckout_shipping .simplecheckout-block-content {
    padding: 0 !important;
}
#simplecheckout_shipping .radio {
    margin: 0 !important;
    border: none !important;
    padding: 0 !important;
}
#simplecheckout_shipping .radio label {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 13px 16px !important;
    border: 1.5px solid #E5E5E5 !important;
    border-radius: 9px !important;
    margin: 8px 0 !important;
    cursor: pointer !important;
    background: #fff !important;
    transition: border-color .15s, background .15s !important;
    font-weight: 400 !important;
    font-size: 15px !important;
}
#simplecheckout_shipping .radio label:hover {
    border-color: #1b285e !important;
    background: rgba(50,170,187,.03) !important;
}
#simplecheckout_shipping .radio input[type="radio"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    border: 2px solid #D0D4D8 !important;
    border-radius: 50% !important;
    background: #fff !important;
    cursor: pointer !important;
    position: relative !important;
    margin: 0 !important;
    transition: border-color .15s !important;
    flex-shrink: 0 !important;
}
#simplecheckout_shipping .radio input[type="radio"]:checked {
    border-color: #1b285e !important;
    background: #1b285e !important;
    box-shadow: inset 0 0 0 3px #fff !important;
}
#simplecheckout_shipping .radio label:has(input[type="radio"]:checked) {
    border-color: #1b285e !important;
    background: rgba(50,170,187,.04) !important;
}
#simplecheckout_shipping .delivery_name_image {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex: 1 !important;
    min-width: 0 !important;
}
#simplecheckout_shipping .delivery_image {
    width: 24px !important;
    height: 24px !important;
    border-radius: 4px !important;
    background: #E8F4F6 !important;
    flex-shrink: 0 !important;
}
#simplecheckout_shipping .delivery_name {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 15px !important;
    color: #141414 !important;
}
#simplecheckout_shipping .delivery_price {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 14px !important;
    color: rgba(0,0,0,0.55) !important;
    white-space: nowrap;
}
/* Shipping address sub-rows */
#simplecheckout_shipping .form-group { margin-bottom: 10px !important; }
#simplecheckout_shipping .form-control {
    height: 50px !important;
    background: #fff !important;
    border: 1px solid #E5E5E5 !important;
    border-radius: 8px !important;
    font-family: 'Open Sans', sans-serif !important;
    font-size: 15px !important;
    color: #141414 !important;
    padding: 0 14px !important;
    box-shadow: none !important;
    width: 100% !important;
}
#simplecheckout_shipping .form-control:focus {
    border-color: #1b285e !important;
    box-shadow: 0 0 0 3px rgba(50,170,187,.12) !important;
    outline: none !important;
}

/* ============================================================
   SHIPPING ADDRESS BLOCK (Group 277)
   ============================================================ */
/* Override block padding to match Figma 28px top/bottom, 40px sides */
.ua-checkout-content #simplecheckout_shipping_address {
    padding: 28px 40px !important;
}
/* Tighten heading gap: remove margin, trim padding so heading-to-input = 16px */
#simplecheckout_shipping_address .checkout-heading.panel-heading {
    margin-bottom: 0 !important;
    padding-bottom: 15px !important;
}
#simplecheckout_shipping_address .simplecheckout-block-content {
    padding: 0 !important;
}
/* fieldset → 2-column flex grid, wraps for 4/5-field variants */
#simplecheckout_shipping_address fieldset.form-horizontal {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 9px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    width: 100% !important;
    box-sizing: border-box !important;
}
/* each form-group = half-width cell (2 columns, any number of rows) */
#simplecheckout_shipping_address .form-group {
    flex: 0 0 calc(50% - 4.5px) !important;
    width: calc(50% - 4.5px) !important;
    float: none !important;
    padding: 0 !important;
    margin: 0 !important;
    position: relative !important;
    box-sizing: border-box !important;
}
/* hide Bootstrap label — label text shown via JS placeholder */
#simplecheckout_shipping_address .form-group > label {
    display: none !important;
}
/* input wrapper */
#simplecheckout_shipping_address .form-group > div {
    width: 100% !important;
}
/* input itself */
#simplecheckout_shipping_address .form-group input.form-control {
    display: block !important;
    width: 100% !important;
    height: 60px !important;
    background: #F9FAFC !important;
    border: 1px solid #E2E2E2 !important;
    border-radius: 12px !important;
    padding: 0 20px !important;
    font-family: 'Lato', sans-serif !important;
    font-weight: 500 !important;
    font-size: 18px !important;
    color: #141414 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    outline: none !important;
    transition: border-color .15s, box-shadow .15s !important;
}
#simplecheckout_shipping_address .form-group input.form-control::placeholder {
    color: #6F6F6F !important;
    font-weight: 500 !important;
}
#simplecheckout_shipping_address .form-group input.form-control:focus {
    border-color: #1b285e !important;
    box-shadow: 0 0 0 3px rgba(50, 170, 187, 0.12) !important;
    outline: none !important;
}
/* autocomplete dropdown */
#simplecheckout_shipping_address .dropdown-menu {
    border-radius: 12px !important;
    border: 1px solid #E2E2E2 !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08) !important;
    margin-top: 4px !important;
    overflow: hidden !important;
}
#simplecheckout_shipping_address .dropdown-menu > li > a {
    font-family: 'Lato', sans-serif !important;
    font-size: 16px !important;
    padding: 10px 20px !important;
    color: #141414 !important;
}
#simplecheckout_shipping_address .dropdown-menu > li > a:hover,
#simplecheckout_shipping_address .dropdown-menu > li.active > a {
    background: rgba(50, 170, 187, 0.08) !important;
    color: #1b285e !important;
}

/* ============================================================
   PAYMENT METHOD BLOCK
   ============================================================ */
#simplecheckout_payment .simplecheckout-block-content {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    padding: 0 !important;
}
#simplecheckout_payment .radio { margin: 0 !important; padding: 0 !important; border: none !important; float: none !important; }
#simplecheckout_payment .radio label {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 80px !important;
    padding: 0 20px !important;
    background: #F9FAFC !important;
    border: 1px solid #E2E2E2 !important;
    border-radius: 12px !important;
    cursor: pointer !important;
    margin: 0 !important;
    font-family: 'Lato', sans-serif !important;
    font-weight: 500 !important;
    font-size: 18px !important;
    line-height: 1.1 !important;
    color: #000000 !important;
    transition: border-color .15s, background .15s !important;
    box-sizing: border-box !important;
}
#simplecheckout_payment .radio label:has(input:checked) {
    background: rgba(91, 185, 197, 0.06) !important;
    border-color: #1b285e !important;
}
#simplecheckout_payment .radio input[type="radio"] {
    position: absolute !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    pointer-events: none !important;
}
#simplecheckout_payment .radio label::before {
    content: '' !important;
    display: block !important;
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    border-radius: 50% !important;
    border: 1px solid #D5D5D5 !important;
    background: #FFFFFF !important;
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
    transition: border-color .15s, background .15s !important;
}
#simplecheckout_payment .radio label:has(input:checked)::before {
    background: radial-gradient(circle at center, #FFFFFF 40%, #1b285e 40%) !important;
    border-color: #1b285e !important;
}
/* Warning notice block */
#simplecheckout_payment .ua-payment-notice {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 80px !important;
    background: #FFF9E6 !important;
    border-radius: 12px !important;
    padding: 16px 20px !important;
    margin-top: 0 !important;
    font-family: 'Lato', sans-serif !important;
    font-weight: 500 !important;
    font-size: 18px !important;
    line-height: 1.1 !important;
    text-align: center !important;
    color: #7B4826 !important;
}
/* Hide old COD alert */
#simplecheckout_payment .cash_on_delivery_alert { display: none !important; }

/* ── Merge payment + payment_form + text_help into one visual card ── */
/* Payment block: flat bottom, extra padding matching Figma (40px sides) */
.ua-checkout-content #simplecheckout_payment {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    padding: 28px 40px 30px !important;
    margin-bottom: 0 !important;
}
/* payment_form: middle connector — hide when empty, connect when has content */
.ua-checkout-content #simplecheckout_payment_form {
    border-radius: 0 !important;
    background: #FFFFFF !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.ua-checkout-content #simplecheckout_payment_form:empty {
    display: none !important;
}
/* eSupport notice block: connects to bottom of payment card */
.ua-checkout-content #simplecheckout_text_help {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
    border-bottom-left-radius: 12px !important;
    border-bottom-right-radius: 12px !important;
    background: #FFFFFF !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04) !important;
    margin-top: 0 !important;
    padding: 0 40px 28px !important;
    border: none !important;
}
.ua-checkout-content #simplecheckout_text_help .simplecheckout-block-content {
    padding: 0 !important;
}
.ua-checkout-content #simplecheckout_text_help .simplecheckout-block-content > p {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 80px !important;
    background: #FFF9E6 !important;
    border-radius: 12px !important;
    padding: 16px 20px !important;
    margin: 0 !important;
    font-family: 'Lato', sans-serif !important;
    font-weight: 500 !important;
    font-size: 18px !important;
    line-height: 1.1 !important;
    text-align: center !important;
    color: #7B4826 !important;
}
.ua-checkout-content #simplecheckout_text_help span[style*="background"] {
    background: transparent !important;
    background-color: transparent !important;
    color: #7B4826 !important;
}

/* ============================================================
   SUMMARY BLOCK (right sidebar)
   ============================================================ */
#simplecheckout_summary .simplecheckout-cart {
    border: none !important;
    width: 100% !important;
    margin: 0 0 8px !important;
}
#simplecheckout_summary .simplecheckout-cart thead { display: none !important; }
#simplecheckout_summary .simplecheckout-cart tbody > tr { border: none !important; }
#simplecheckout_summary .simplecheckout-cart td {
    border: none !important;
    padding: 6px 0 !important;
    vertical-align: top !important;
    float: none !important;
    display: table-cell !important;
}
#simplecheckout_summary .simplecheckout-cart td.image { display: none !important; }
#simplecheckout_summary .simplecheckout-cart td.name { width: 100% !important; }

#simplecheckout_summary .simplecheckout-cart td.name a {
    font-family: 'Lato', sans-serif !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    color: rgba(0,0,0,0.6) !important;
    text-decoration: none !important;
    line-height: 1.2 !important;
    display: block !important;
    max-height: 2.4em !important;
    overflow: hidden !important;
}
#simplecheckout_summary .simplecheckout-cart td.model { display: none !important; }
#simplecheckout_summary .simplecheckout-cart td.quantity { display: none !important; }
#simplecheckout_summary .simplecheckout-cart td.price { display: none !important; }
#simplecheckout_summary .simplecheckout-cart td.total {
    text-align: right !important;
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: 20px !important;
    color: #141414 !important;
    white-space: nowrap !important;
    width: 1px !important;
    padding-left: 10px !important;
}

/* Hide sub_total in summary (implied by product rows) */
#simplecheckout_summary #total_sub_total { display: none !important; }

/* Summary totals separator from product list — border comes from #total_total only */
#simplecheckout_summary .table-responsive {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
/* Summary totals */
#simplecheckout_summary .simplecheckout-cart-total {
    border: none !important;
    padding: 5px 0 !important;
    display: flex !important;
    width: 100% !important;
    justify-content: space-between !important;
    align-items: center !important;
    text-align: left !important;
    gap: 8px;
}
#simplecheckout_summary .simplecheckout-cart-total > span:first-child {
    font-family: 'Lato', sans-serif !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    color: rgba(0,0,0,0.6) !important;
}
#simplecheckout_summary .simplecheckout-cart-total > span:first-child b {
    font-family: 'Lato', sans-serif !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    color: rgba(0,0,0,0.6) !important;
}
#simplecheckout_summary .simplecheckout-cart-total-value {
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    color: #141414 !important;
    white-space: nowrap;
    display: block !important;
}
/* Total row (Разом/Итого) — prominent */
#simplecheckout_summary #total_total {
    border-top: 1px solid #F3F3F3 !important;
    padding: 12px 0 4px !important;
    margin-top: 4px;
}
#simplecheckout_summary #total_total > span:first-child b {
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 700 !important;
    font-size: 24px !important;
    color: #000 !important;
}
#simplecheckout_summary #total_total .simplecheckout-cart-total-value {
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 700 !important;
    font-size: 24px !important;
    color: #000 !important;
}

/* ============================================================
   CONFIRM BUTTON (in .simplecheckout-button-block)
   ============================================================ */
.ua-checkout-content .total_price_block { display: none !important; }
.ua-checkout-content .simplecheckout-button-left { display: none !important; }
#simplecheckout_button_next { display: none !important; }
#simplecheckout_button_prev { display: none !important; }

#simplecheckout_button_confirm {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 68px !important;
    background: #1b285e !important;
    border: none !important;
    border-radius: 9px !important;
    font-family: 'Lato', sans-serif !important;
    font-weight: 600 !important;
    font-size: 22px !important;
    color: #fff !important;
    text-align: center !important;
    cursor: pointer !important;
    transition: background .15s !important;
    text-decoration: none !important;
    line-height: 1 !important;
    margin: 16px 0 0 !important;
    padding: 0 !important;
}
#simplecheckout_button_confirm:hover,
#simplecheckout_button_confirm:focus {
    background: #2b94a3 !important;
    color: #fff !important;
}
#simplecheckout_button_confirm span {
    font-size: 22px !important;
    font-weight: 600 !important;
    color: #fff !important;
    line-height: 1 !important;
    display: inline !important;
}
#simplecheckout_button_confirm[disabled],
#simplecheckout_button_confirm.disabled {
    background: #A8D9E2 !important;
    cursor: not-allowed !important;
}

/* Agreement checkbox */
.ua-checkout-content #agreement_checkbox .checkbox label {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 13px !important;
    color: rgba(0,0,0,0.6) !important;
    padding-left: 20px !important;
}

/* ============================================================
   SHIPPING METHODS BLOCK (Group 278)
   ============================================================ */

/* Rows container */
#simplecheckout_shipping .simplecheckout-block-content {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

/* Hide Bootstrap group title <p> tag */
#simplecheckout_shipping .simplecheckout-block-content > p { display: none !important; }

/* Each option row wrapper */
#simplecheckout_shipping .radio {
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

/* Row label — the visible row */
#simplecheckout_shipping .radio label {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 60px !important;
    padding: 0 20px !important;
    background: #F9FAFC !important;
    border: 1px solid #E2E2E2 !important;
    border-radius: 12px !important;
    cursor: pointer !important;
    margin: 0 !important;
    font-weight: normal !important;
    transition: border-color .15s, background .15s !important;
    box-sizing: border-box !important;
}

/* Selected row */
#simplecheckout_shipping .radio label:has(input:checked) {
    background: rgba(91, 185, 197, 0.06) !important;
    border-color: #1b285e !important;
}

/* Hide native radio input */
#simplecheckout_shipping .radio input[type="radio"] {
    position: absolute !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    pointer-events: none !important;
}

/* Custom radio circle via label::before */
#simplecheckout_shipping .radio label::before {
    content: '' !important;
    display: block !important;
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    border-radius: 50% !important;
    border: 1px solid #D5D5D5 !important;
    background: #FFFFFF !important;
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
    transition: border-color .15s, background .15s !important;
}

/* Selected radio: teal circle with white 12px inner dot */
#simplecheckout_shipping .radio label:has(input:checked)::before {
    background: radial-gradient(circle at center, #FFFFFF 40%, #1b285e 40%) !important;
    border-color: #1b285e !important;
}

/* Delivery logo + name container */
#simplecheckout_shipping .delivery_name_image {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex: 1 !important;
    min-width: 0 !important;
}

/* Carrier logo */
#simplecheckout_shipping .delivery_image {
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
    border-radius: 4px !important;
    background: #EEF0F2 no-repeat center / contain !important;
    flex-shrink: 0 !important;
}
/* Nova Poshta (rows 1 & 2) */
#simplecheckout_shipping label[for="xshipping.xshipping1"] .delivery_image,
#simplecheckout_shipping label[for="xshipping.xshipping3"] .delivery_image {
    background-image: url("/image/catalog/icon/np_tr.png") !important;
}
/* UkrPoshta (rows 3 & 4) */
#simplecheckout_shipping label[for="xshipping.xshipping5"] .delivery_image,
#simplecheckout_shipping label[for="xshipping.xshipping6"] .delivery_image {
    background-image: url("/image/catalog/icon/ukr_tr.png") !important;
}
/* Rozetka (row 5) */
#simplecheckout_shipping label[for="rozetka_delivery.rozetka_delivery"] .delivery_image {
    background-image: url("/image/catalog/icon/rozetka_tr.png") !important;
}

/* Carrier name text */
#simplecheckout_shipping .delivery_name {
    font-family: 'Lato', sans-serif !important;
    font-weight: 500 !important;
    font-size: 18px !important;
    line-height: 1.1 !important;
    color: #000000 !important;
}

/* Price / timing text */
#simplecheckout_shipping .delivery_price {
    font-family: 'Lato', sans-serif !important;
    font-weight: 400 !important;
    font-size: 14px !important;
    color: rgba(0, 0, 0, 0.45) !important;
    white-space: nowrap !important;
    margin-left: auto !important;
    flex-shrink: 0 !important;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 1429px) {
    .ua-checkout-wrap {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}

@media (max-width: 900px) {
    .ua-checkout-content .simplecheckout {
        grid-template-columns: 1fr !important;
    }
    .ua-checkout-content .simplecheckout-left-column {
        grid-column: 1 !important;
        grid-row: 1 !important;
    }
    .ua-checkout-content .simplecheckout-right-column {
        grid-column: 1 !important;
        grid-row: 2 !important;
        position: static !important;
    }
    .ua-checkout-content .simplecheckout-button-block {
        grid-column: 1 !important;
        grid-row: 3 !important;
        max-width: 100% !important;
    }
    #simplecheckout_cart .simplecheckout-cart td { display: table-cell !important; }
    #simplecheckout_cart .simplecheckout-cart td.model { display: none !important; }
    #simplecheckout_cart .simplecheckout-cart td.price { display: none !important; }
    #simplecheckout_cart .simplecheckout-cart td.author { display: none !important; }
}
@media (max-width: 540px) {
    #simplecheckout_customer .form-group.col-md-8.col-lg-6 { width: 100% !important; }
    .ua-checkout-h1 { font-size: 20px; }
    #simplecheckout_cart .simplecheckout-cart td.name,
    #simplecheckout_cart .simplecheckout-cart td.author { padding-top: 14px !important; }
}

