.ao-purchase-page__header { margin-bottom: 2rem; }
.ao-purchase-steps { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem 1rem; font-size: .9375rem; }
.ao-purchase-steps [aria-current=step] { font-weight: 700; color: var(--ao-heading); }
.ao-purchase-page .woocommerce { min-width: 0; }
.ao-purchase-page .woocommerce :is(.woocommerce-info,.woocommerce-message,.woocommerce-error) { border-radius: var(--ao-radius); background: var(--ao-white); }
.ao-purchase-page .woocommerce table.shop_table { border-collapse: collapse; background: var(--ao-white); border: 1px solid var(--ao-border); }
.ao-purchase-page .woocommerce table.shop_table :is(th,td) { padding: 1rem; vertical-align: middle; }
.ao-purchase-page .woocommerce table.shop_table a { text-decoration: none; }
.ao-purchase-page .woocommerce table.shop_table a:hover { text-decoration: underline; }
.ao-purchase-page .woocommerce table.shop_table .product-thumbnail img { width: 80px; max-width: 80px; border-radius: var(--ao-radius); }
.ao-purchase-page .woocommerce table.shop_table .product-name { overflow-wrap: anywhere; }
.ao-purchase-page .woocommerce a.remove { min-width: 36px; min-height: 36px; display: inline-flex; align-items: center; justify-content: center; }
.ao-purchase-page .woocommerce .button { min-height: 44px; color: #171717; padding: .8rem 1rem; }
.ao-purchase-page .woocommerce .button:disabled { cursor: not-allowed; }
.ao-purchase-page .woocommerce :is(input.input-text,select,textarea) { border: 1px solid var(--ao-border); border-radius: var(--ao-radius); padding: .65rem .75rem; background: var(--ao-white); color: var(--ao-text); font-size: 1rem; max-width: 100%; }
.ao-purchase-page .woocommerce input[type=checkbox], .ao-purchase-page .woocommerce input[type=radio] { width: 20px; height: 20px; vertical-align: middle; accent-color: var(--ao-brand); }
.ao-purchase-page .woocommerce form .form-row { margin-bottom: 1rem; padding: 0; }
.ao-purchase-page .woocommerce form .form-row label { margin-bottom: .3rem; }
.ao-purchase-page .woocommerce form .form-row .required { color: var(--ao-brand); }
.ao-purchase-page .woocommerce .select2-container .select2-selection--single { min-height: 46px; border-color: var(--ao-border); border-radius: var(--ao-radius); padding: .5rem .25rem; }
.ao-purchase-page .woocommerce .select2-container .select2-selection__arrow { top: 10px; }
.ao-purchase-page .woocommerce .select2-container .select2-selection__rendered { line-height: 1.6; }
/* Cart form and totals remain native, including coupons, fees and shipping. */
.ao-purchase-page--cart .woocommerce-cart-form { float: left; width: 65%; }
.ao-purchase-page--cart .cart-collaterals { float: right; clear: none; width: 32%; }
.ao-purchase-page--cart .woocommerce .cart-collaterals .cart_totals { float: none; width: 100%; }
.ao-purchase-page--cart .woocommerce .cart-collaterals .cross-sells { float: none; width: 100%; }
.ao-purchase-page--cart .cart-collaterals h2 { font-size: 1.5rem; }
.ao-purchase-page--cart .woocommerce::after { content: ''; display: block; clear: both; }
.ao-purchase-page--cart .woocommerce-cart-form .coupon { display: flex; flex-wrap: wrap; gap: .5rem; }
.ao-purchase-page--cart .woocommerce-cart-form #coupon_code { width: 170px; min-height: 44px; margin: 0; }
.ao-purchase-page--cart .woocommerce-cart-form .actions > button { margin-top: .5rem; }
.ao-purchase-page--cart .woocommerce .cart-collaterals ul.products { grid-template-columns: minmax(0,1fr); }
.ao-purchase-page .woocommerce .wc-proceed-to-checkout a.checkout-button { width: 100%; font-size: 1rem; padding: 1rem; }
.ao-purchase-page .woocommerce ul#shipping_method li label { font-weight: 400; font-size: .9rem; }
/* Native checkout: single column customer details and an adjacent summary. */
.ao-purchase-page--checkout form.checkout { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(0,1fr); gap: 0 3rem; align-items: start; }
.ao-purchase-page--checkout #customer_details { grid-column: 1; grid-row: 1 / 4; min-width: 0; }
.ao-purchase-page--checkout #customer_details > :is(.col-1,.col-2) { float: none; width: 100%; }
.ao-purchase-page--checkout #order_review_heading { grid-column: 2; margin-bottom: 1.5rem; }
.ao-purchase-page--checkout #order_review { grid-column: 2; min-width: 0; }
.ao-purchase-page--checkout .woocommerce h3 { font-size: 1.4rem; }
.ao-purchase-page--checkout #ship-to-different-address { margin-top: 1.5rem; font-size: 1rem; }
.ao-purchase-page--checkout #payment { background: var(--ao-white); border: 1px solid var(--ao-border); border-radius: var(--ao-radius); }
.ao-purchase-page--checkout #payment div.payment_box { background: var(--ao-surface); color: var(--ao-text); overflow-wrap: anywhere; }
.ao-purchase-page--checkout #payment div.payment_box::before { border-bottom-color: var(--ao-surface); }
.ao-purchase-page--checkout #payment label img { max-width: 180px; max-height: 50px; object-fit: contain; }
.ao-purchase-page--checkout #place_order { float: none; width: 100%; margin-top: 1rem; min-height: 50px; }
.ao-purchase-page--checkout .woocommerce-checkout-review-order-table .product-name { width: 45%; }
.ao-purchase-page--checkout .woocommerce-terms-and-conditions-wrapper { font-size: .875rem; }
.ao-purchase-page--checkout .woocommerce-terms-and-conditions { background: var(--ao-surface); padding: 1rem; }
/* Account and login keep WooCommerce endpoints, nonces and validation. */
.ao-purchase-page--account .woocommerce-MyAccount-navigation { width: 25%; }
.ao-purchase-page--account .woocommerce-MyAccount-content { width: 71%; }
.ao-purchase-page--account .woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; list-style: none; border: 1px solid var(--ao-border); border-radius: var(--ao-radius); overflow: hidden; }
.ao-purchase-page--account .woocommerce-MyAccount-navigation li + li { border-top: 1px solid var(--ao-border); }
.ao-purchase-page--account .woocommerce-MyAccount-navigation a { display: block; padding: .9rem 1rem; text-decoration: none; background: var(--ao-white); }
.ao-purchase-page--account .woocommerce-MyAccount-navigation .is-active a { color: var(--ao-white); background: var(--ao-brand); }
.ao-purchase-page--account .woocommerce form :is(.woocommerce-form-login__submit,.woocommerce-form-register__submit) { margin-block: .5rem; }
.ao-purchase-page--account .woocommerce form.login, .ao-purchase-page--account .woocommerce form.register { background: var(--ao-white); border-color: var(--ao-border); padding: 1.5rem; }
.ao-purchase-page--account .woocommerce-ResetPassword { max-width: 640px; }
@media (max-width: 1100px) {
 .ao-purchase-page--cart .woocommerce-cart-form, .ao-purchase-page--cart .cart-collaterals { float: none; width: 100%; }
 .ao-purchase-page--cart .cart-collaterals { margin-top: 2rem; }
 .ao-purchase-page--checkout form.checkout { gap: 0 1.5rem; }
 .ao-purchase-page .woocommerce table.shop_table :is(th,td) { padding: .75rem; }
}
@media (max-width: 767px) {
 .ao-purchase-page--checkout form.checkout { display: block; }
 .ao-purchase-page--checkout #order_review_heading { margin-top: 2rem; }
 .ao-purchase-page .woocommerce form :is(.form-row-first,.form-row-last) { width: 100%; float: none; }
 .ao-purchase-page--account .woocommerce-MyAccount-navigation, .ao-purchase-page--account .woocommerce-MyAccount-content { float: none; width: 100%; }
 .ao-purchase-page--account .woocommerce-MyAccount-content { margin-top: 1.5rem; }
 .ao-purchase-page .woocommerce table.cart td.actions .coupon { display: flex; float: none; }
 .ao-purchase-page .woocommerce table.cart td.actions .coupon :is(input,button) { width: 100% !important; float: none; }
 .ao-purchase-page .woocommerce table.shop_table_responsive tr td { overflow-wrap: anywhere; }
 .ao-purchase-page .woocommerce table.shop_table_responsive tr td.product-name { text-align: left !important; }
 .ao-purchase-page .woocommerce table.shop_table_responsive tr td.product-name::before { float: none; display: block; margin-bottom: .5rem; }
 .ao-purchase-page .woocommerce table.shop_table_responsive tr td.product-quantity .quantity { display: inline-block; }
 .ao-purchase-page .woocommerce table.shop_table_responsive tr td.product-remove { text-align: right !important; }
}
.ao-purchase-page .woocommerce ul#shipping_method li { display: grid; grid-template-columns: 22px minmax(0,1fr); gap: .25rem .5rem; text-align: left; }
.ao-purchase-page .woocommerce ul#shipping_method li input { margin: .2rem 0 0; grid-column: 1; }
.ao-purchase-page .woocommerce ul#shipping_method li label { grid-column: 2; }
.ao-purchase-page .woocommerce ul#shipping_method li > img { grid-column: 2; max-width: 64px; }
@media (max-width: 767px) {
 .ao-purchase-page .woocommerce table.shop_table_responsive td:not([data-title])::before,
 .ao-purchase-page .woocommerce table.shop_table_responsive td[data-title=""]::before { content: none; }
 .ao-purchase-page .woocommerce table.shop_table_responsive .woocommerce-shipping-totals td::before { float: none; display: block; text-align: left; margin-bottom: .75rem; }
}
.ao-purchase-page--empty .ao-purchase-page__header,.ao-purchase-page--empty .cart-empty,.ao-purchase-page--empty .return-to-shop{display:none}
.ao-empty-cart-suggestions{margin:170px 0 80px}
.ao-empty-cart-suggestions h2{font-size:32px;margin:0 0 25px}
.ao-empty-cart-suggestions ul.products{grid-template-columns:repeat(4,minmax(0,1fr))}
body:not(.logged-in) .ao-purchase-page--account{background:url('/wp-content/uploads/2024/06/pudelka2.webp') left top/600px auto no-repeat}
body:not(.logged-in) .ao-purchase-page--account .ao-purchase-page__header{display:none}
body:not(.logged-in) .ao-purchase-page--account .woocommerce :is(.u-column1,.u-column2)>h2{text-align:center;text-transform:uppercase;font-size:36px;color:var(--ao-ink)}
body:not(.logged-in) .ao-purchase-page--account .woocommerce form.login,body:not(.logged-in) .ao-purchase-page--account .woocommerce form.register{border:1px solid var(--ao-brand);border-radius:15px;padding:26px 30px;min-height:340px}
body:not(.logged-in) .ao-purchase-page--account .woocommerce form :is(.woocommerce-form-login__submit,.woocommerce-form-register__submit){background:var(--ao-brand);color:white;min-width:150px;min-height:48px}
@media(max-width:767px){.ao-empty-cart-suggestions{margin-top:70px}.ao-empty-cart-suggestions ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}body:not(.logged-in) .ao-purchase-page--account{background-size:400px auto}body:not(.logged-in) .ao-purchase-page--account .woocommerce :is(.u-column1,.u-column2)>h2{font-size:28px}body:not(.logged-in) .ao-purchase-page--account .woocommerce form.login,body:not(.logged-in) .ao-purchase-page--account .woocommerce form.register{padding:20px;min-height:0}}
