/*
 * Cart, checkout, order received and My account: "Zalando stil"
 * (Figma 9qxLeId3SY3NkLW03MoSW7, page "Shop: Zalando stil 3").
 * Loaded by functions.php on is_cart() / is_checkout() / is_account_page() only.
 * Markup: woocommerce/cart/*, woocommerce/checkout/*, woocommerce/myaccount/form-login.php.
 */

:root {
	--ak-photo: #f2f2f2;
	--ak-fit-tint: #fdf0e8;
	--ak-rule: rgba(0, 0, 0, .1);
	--ak-rule-2: rgba(0, 0, 0, .2);
}

/* ---------- page frame ---------- */
/* page.php prints the page title; cart and checkout print their own head (back link, count, steps). */
.woocommerce-cart .ak-page:has(.ak-cohead, .ak-cempty) .ak-page__head,
.woocommerce-checkout .ak-page:has(.ak-cohead, .ak-thanks) .ak-page__head,
.woocommerce-account .ak-page:has(.ak-acc-title) .ak-page__head { display: none; }
.woocommerce-cart .ak-page,
.woocommerce-checkout .ak-page,
.woocommerce-account .ak-page { padding-block: 40px 80px; }

.ak-cohead { margin-bottom: 28px; }
.ak-coback { display: inline-flex; align-items: center; gap: 12px; margin-bottom: 28px; color: var(--ak-ink); font: 700 17px/1.1 var(--ak-font); }
.ak-coback .ak-i { width: 22px; height: 22px; transition: transform .15s ease; }
.ak-coback:hover { color: var(--ak-ink); }
.ak-coback:hover .ak-i { transform: translateX(-3px); }
.ak-cohead__title { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 16px; margin: 0; font: 600 44px/1.08 var(--ak-font); letter-spacing: -.01em; text-transform: none; }
.ak-cohead__count { color: var(--ak-muted); font: 400 18px/1.2 var(--ak-font); letter-spacing: 0; }

/* ---------- buttons ---------- */
.ak-cobtn {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	min-height: 48px; padding: 0 22px; border: 0; border-radius: 0;
	background: var(--ak-ink); color: #fff; cursor: pointer;
	font: 700 15px/1.1 var(--ak-font); letter-spacing: 0; text-transform: none; text-align: center; text-decoration: none;
	transition: background-color .15s, color .15s, box-shadow .15s;
}
.ak-cobtn .ak-i { flex: none; width: 18px; height: 18px; }
.ak-cobtn:hover { background: var(--ak-orange-strong); color: #fff; }
.ak-cobtn--line { background: #fff; color: var(--ak-ink); box-shadow: inset 0 0 0 2px var(--ak-ink); }
.ak-cobtn--line:hover { background: var(--ak-ink); color: #fff; }
.ak-cobtn--big { min-height: 58px; padding: 0 28px; font-size: 17px; }
.ak-cobtn[disabled], .ak-cobtn[disabled]:hover { background: #d6d6d6; color: #6a6a6a; box-shadow: none; cursor: not-allowed; }

/* ---------- notices on these pages ---------- */
.woocommerce-cart .woocommerce-notices-wrapper:not(:empty),
.woocommerce-checkout .woocommerce-notices-wrapper:not(:empty),
.woocommerce-account .woocommerce-notices-wrapper:not(:empty) { margin-bottom: 24px; }
.woocommerce-cart .woocommerce-message, .woocommerce-cart .woocommerce-info, .woocommerce-cart .woocommerce-error,
.woocommerce-checkout .woocommerce-message, .woocommerce-checkout .woocommerce-info, .woocommerce-checkout .woocommerce-error,
.woocommerce-account .woocommerce-message, .woocommerce-account .woocommerce-info, .woocommerce-account .woocommerce-error {
	margin: 0 0 16px; padding: 16px 20px 16px 52px; border: 0; border-left: 4px solid var(--ak-orange) !important; border-radius: 4px;
	background: var(--ak-soft); color: var(--ak-ink); font: 400 15px/1.5 var(--ak-font); list-style: none;
}
.woocommerce-cart .woocommerce-error, .woocommerce-checkout .woocommerce-error, .woocommerce-account .woocommerce-error { border-left-color: #b3261e !important; }
.woocommerce-cart .woocommerce-message::before, .woocommerce-cart .woocommerce-info::before, .woocommerce-cart .woocommerce-error::before,
.woocommerce-checkout .woocommerce-message::before, .woocommerce-checkout .woocommerce-info::before, .woocommerce-checkout .woocommerce-error::before,
.woocommerce-account .woocommerce-message::before, .woocommerce-account .woocommerce-info::before, .woocommerce-account .woocommerce-error::before { top: 16px; left: 20px; }
.woocommerce-error::before { color: #b3261e !important; }
.woocommerce-cart .woocommerce-message .button, .woocommerce-checkout .woocommerce-info .button, .woocommerce-checkout .woocommerce-message .button { float: right; min-height: 0; padding: 0; background: none; color: var(--ak-ink); font-size: 14px; text-decoration: underline; letter-spacing: 0; text-transform: none; }
.woocommerce-cart .woocommerce-message a:not(.button), .woocommerce-checkout .woocommerce-info a:not(.button) { color: var(--ak-orange-strong); font-weight: 700; }

/* ---------- form controls (checkout, account, coupon) ---------- */
.ak-co .input-text, .ak-co select, .ak-co textarea,
.ak-auth .input-text, .woocommerce-account .woocommerce-MyAccount-content .input-text,
.ak-coupon .input-text, .woocommerce-form-coupon .input-text, .woocommerce-form-login .input-text {
	width: 100%; min-height: 50px; padding: 12px 16px; border: 0; border-radius: 4px;
	box-shadow: 0 0 0 1px var(--ak-rule-2); background: #fff; color: var(--ak-ink);
	font: 400 16px/1.3 var(--ak-font); transition: box-shadow .15s;
}
.ak-co textarea { min-height: 96px; resize: vertical; }
.ak-co .input-text:focus, .ak-co textarea:focus, .ak-auth .input-text:focus,
.woocommerce-account .woocommerce-MyAccount-content .input-text:focus, .ak-coupon .input-text:focus, .woocommerce-form-coupon .input-text:focus { outline: none; box-shadow: 0 0 0 2px var(--ak-ink); }
.ak-co ::placeholder, .ak-auth ::placeholder { color: #9a9a9a; opacity: 1; }
.ak-co .form-row label, .ak-auth .form-row label, .woocommerce-account .woocommerce-MyAccount-content .form-row label {
	display: block; margin: 0 0 8px; color: var(--ak-ink); font: 600 14px/1.2 var(--ak-font);
}
.ak-co .form-row label.checkbox, .ak-co .form-row .woocommerce-form__label-for-checkbox { display: inline-flex; align-items: center; gap: 10px; font-weight: 400; font-size: 15px; }
.ak-co .required, .ak-auth .required { color: var(--ak-orange-strong); text-decoration: none; }
.ak-co .optional { color: var(--ak-muted); font-weight: 400; }
.ak-co .form-row .description { margin: 6px 0 0; padding: 0; background: none; color: var(--ak-muted); font-size: 13px; position: static; }
.ak-co .form-row .description::before { display: none; }
.ak-co .woocommerce-invalid .input-text, .ak-co .woocommerce-invalid .select2-selection { box-shadow: 0 0 0 2px #b3261e !important; }
.ak-co .checkout-inline-error-message, .ak-co .woocommerce-error-msg { margin: 6px 0 0; color: #b3261e; font-size: 13px; }
.ak-co input[type="checkbox"], .ak-auth input[type="checkbox"] { width: 20px; height: 20px; margin: 0; accent-color: var(--ak-ink); }

/* selectWoo (country / state) */
.ak-co .select2-container .select2-selection--single { height: 50px; border: 0; border-radius: 4px; box-shadow: 0 0 0 1px var(--ak-rule-2); }
.ak-co .select2-container .select2-selection--single .select2-selection__rendered { padding: 0 40px 0 16px; color: var(--ak-ink); font: 400 16px/50px var(--ak-font); }
.ak-co .select2-container .select2-selection--single .select2-selection__arrow { top: 12px; right: 12px; }
.ak-co .select2-container--focus .select2-selection--single, .ak-co .select2-container--open .select2-selection--single { box-shadow: 0 0 0 2px var(--ak-ink); }
.select2-dropdown { border-color: var(--ak-rule-2); font-family: var(--ak-font); }
.select2-container--default .select2-results__option--highlighted[aria-selected], .select2-container--default .select2-results__option--highlighted[data-selected] { background: var(--ak-ink); }

/* ======================================================================
 * Cart
 * ==================================================================== */
.ak-cart { display: grid; grid-template-columns: minmax(0, 1fr) 400px; grid-template-areas: "head head" "form side"; gap: 0 48px; align-items: start; }
.ak-cart > .ak-cohead { grid-area: head; }
.ak-cart__form { grid-area: form; min-width: 0; }
.ak-cart__side { grid-area: side; position: sticky; top: calc(var(--ak-head-off, 0px) + 24px); transition: top .32s cubic-bezier(.22, .61, .36, 1); width: auto; float: none; }
.admin-bar .ak-cart__side { top: 56px; }
.woocommerce .ak-cart .cart-collaterals { width: auto; }
.woocommerce .ak-cart .cart-collaterals .cart_totals { float: none; width: auto; }

.ak-items { border-top: 1px solid var(--ak-rule); }
.ak-item { display: grid; grid-template-columns: 140px minmax(0, 1fr); gap: 24px; padding: 24px 0; border-bottom: 1px solid var(--ak-rule); }
.ak-item__photo { display: grid; place-items: center; aspect-ratio: 140 / 168; border-radius: 4px; background: var(--ak-photo); overflow: hidden; }
.ak-item__photo img { width: 83%; height: auto; aspect-ratio: 1; object-fit: contain; mix-blend-mode: multiply; }
.ak-item__body { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "info price" "actions actions"; gap: 0 24px; align-content: start; min-width: 0; }
.ak-item__info { grid-area: info; display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.ak-item__brand { font: 700 15px/1.1 var(--ak-font); }
.ak-item__name { color: var(--ak-ink); font: 400 15px/1.35 var(--ak-font); }
a.ak-item__name:hover { color: var(--ak-orange-strong); }
.ak-item__meta { color: var(--ak-muted); font: 400 13px/1.3 var(--ak-font); }
.ak-item__info dl.variation { margin: 2px 0 0; color: var(--ak-muted); font-size: 13px; }
.ak-item__info dl.variation dt, .ak-item__info dl.variation dd { display: inline; margin: 0; }
.ak-item__info dl.variation dd p { display: inline; margin: 0; }
.ak-item__info .backorder_notification { margin: 4px 0 0; color: var(--ak-orange-strong); font-size: 13px; }
.ak-item__price { grid-area: price; display: flex; flex-direction: column; align-items: flex-end; gap: 4px; text-align: right; white-space: nowrap; }
.ak-item__price strong { font: 700 17px/1.1 var(--ak-font); font-variant-numeric: tabular-nums; }
.ak-item__price .product-price { color: var(--ak-muted); font: 400 13px/1.1 var(--ak-font); font-variant-numeric: tabular-nums; }
.ak-item__each--m { display: none; }
.ak-item__actions { grid-area: actions; display: flex; align-items: center; gap: 20px; padding-top: 16px; }

/* quantity stepper: [−] 4 [+], the real number input in the middle */
.ak-qty { display: inline-flex; align-items: center; gap: 4px; height: 36px; padding: 0 4px; border-radius: 40px; box-shadow: 0 0 0 1px var(--ak-rule-2); }
.ak-qty__btn { display: grid; place-items: center; width: 30px; height: 30px; padding: 0; border: 0; border-radius: 50%; background: none; color: var(--ak-ink); cursor: pointer; }
.ak-qty__btn .ak-i { width: 18px; height: 18px; }
.ak-qty__btn:hover:not([disabled]) { background: var(--ak-soft); }
.ak-qty__btn[disabled] { color: #c4c4c4; cursor: default; }
.woocommerce .ak-qty .quantity { display: block; margin: 0; }
.woocommerce .ak-qty .quantity .qty {
	width: 34px; height: 30px; padding: 0; border: 0; background: none; color: var(--ak-ink);
	font: 700 16px/1 var(--ak-font); text-align: center; -moz-appearance: textfield; appearance: textfield;
}
.woocommerce .ak-qty .quantity .qty::-webkit-outer-spin-button, .woocommerce .ak-qty .quantity .qty::-webkit-inner-spin-button { margin: 0; -webkit-appearance: none; }
.woocommerce .ak-qty .quantity .qty:focus { outline: 2px solid var(--ak-orange); outline-offset: 0; border-radius: 4px; }
.ak-qty.is-single .ak-qty__btn { display: none; }

/* "Ukloni" (WooCommerce styles a.remove as a red circle: undo that) */
.woocommerce .ak-cart a.remove.ak-item__remove {
	display: inline-flex; align-items: center; gap: 6px; width: auto; height: auto; border-radius: 0;
	background: none; color: var(--ak-muted) !important; font: 400 14px/1 var(--ak-font); text-align: left;
}
.woocommerce .ak-cart a.remove.ak-item__remove span { text-decoration: underline; text-underline-offset: 3px; }
.woocommerce .ak-cart a.remove.ak-item__remove .ak-i { width: 18px; height: 18px; color: var(--ak-ink); }
.woocommerce .ak-cart a.remove.ak-item__remove:hover { background: none; color: var(--ak-orange-strong) !important; }

/* montaža box under a tyre row */
.ak-fit { display: flex; align-items: center; gap: 16px; margin: 0 0 8px; padding: 20px 24px; border-radius: 4px; background: var(--ak-fit-tint); }
.ak-items > .ak-fit { border-bottom: 0; }
.ak-fit + .ak-item { border-top: 1px solid var(--ak-rule); }
.ak-fit__icon { flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--ak-orange); color: var(--ak-ink); }
.ak-fit__icon .ak-i { width: 20px; height: 20px; }
.ak-fit__text { flex: 1; min-width: 0; }
.ak-fit__title { margin: 0 0 6px; font: 700 17px/1.2 var(--ak-font); }
.ak-fit__sub { margin: 0; color: var(--ak-muted); font: 400 15px/1.45 var(--ak-font); }
.ak-fit .ak-cobtn { flex: none; min-height: 40px; padding: 0 18px; font-size: 14px; }
.ak-fit .ak-cobtn .ak-i { width: 16px; height: 16px; }

/* coupon + manual update */
.ak-cart__actions { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 12px; padding: 20px 0 0; }
.ak-coupon summary { cursor: pointer; color: var(--ak-ink); font: 600 15px/1.3 var(--ak-font); text-decoration: underline; text-underline-offset: 3px; }
.ak-coupon summary::marker { content: ""; }
.ak-coupon summary::-webkit-details-marker { display: none; }
.ak-coupon__row { display: flex; gap: 10px; margin-top: 12px; }
.ak-coupon__row .input-text { width: 220px; }
.ak-coupon__row .ak-cobtn { min-height: 50px; }
html.ak-co-js .ak-cart__update { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.ak-cart__update[disabled] { opacity: .5; }

/* summary card (cart + checkout + order received) */
.ak-sum { display: flex; flex-direction: column; gap: 16px; padding: 28px; background: #fff; box-shadow: 0 0 0 1px var(--ak-rule); }
.ak-sum__title { margin: 0 0 4px; font: 600 22px/1.1 var(--ak-font); letter-spacing: 0; text-transform: none; }
.ak-sum__rows { display: flex; flex-direction: column; gap: 16px; padding-bottom: 20px; border-bottom: 1px solid var(--ak-rule); }
.ak-sum__row { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; font: 400 16px/1.2 var(--ak-font); font-variant-numeric: tabular-nums; }
.ak-sum__row > :last-child { text-align: right; }
.ak-sum__row--small { font-size: 14px; }
.ak-sum__muted { color: var(--ak-muted); }
.ak-sum__row .woocommerce-remove-coupon { margin-left: 6px; color: var(--ak-muted); font-size: 13px; }
.ak-sum__ship { text-align: right; }
.ak-sum__ship ul#shipping_method { margin: 0; padding: 0; list-style: none; float: none; text-align: right; }
.ak-sum__ship ul#shipping_method li { display: flex; justify-content: flex-end; align-items: center; gap: 8px; margin: 0 0 6px; text-indent: 0; }
.ak-sum__ship ul#shipping_method li input { margin: 0; accent-color: var(--ak-ink); }
.ak-sum__ship .woocommerce-shipping-destination { margin: 6px 0 0; color: var(--ak-muted); font-size: 13px; }
.ak-sum__ship .shipping-calculator-button { color: var(--ak-ink); font-size: 13px; text-decoration: underline; }
.ak-sum__total { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding-top: 4px; font: 700 20px/1.1 var(--ak-font); font-variant-numeric: tabular-nums; }
.ak-sum__total strong { font-weight: 700; }
.ak-sum__total small { display: block; font-size: 12px; font-weight: 400; color: var(--ak-muted); }
.ak-sum__note { margin: 0; color: var(--ak-muted); font: 400 13px/1.45 var(--ak-font); }
.ak-sum .wc-proceed-to-checkout { padding: 0; }
.woocommerce .ak-sum .wc-proceed-to-checkout a.checkout-button { display: flex; width: 100%; margin: 0; padding: 0 24px; font-size: 17px; }
.ak-sum__help { display: inline-flex; align-items: center; gap: 8px; color: var(--ak-muted); font: 400 14px/1.2 var(--ak-font); }
.ak-sum__help .ak-i { width: 16px; height: 16px; color: var(--ak-ink); }
.ak-sum__help:hover { color: var(--ak-orange-strong); }

/* mobile sticky total bar (only under 760px) */
.ak-cart__bar { display: none; }

/* cross-sells under the cart */
.woocommerce-cart .cross-sells { margin-top: 56px; }
.woocommerce-cart .cross-sells > h2 { font: 600 28px/1.1 var(--ak-font); text-transform: none; }

/* ======================================================================
 * Empty cart
 * ==================================================================== */
.ak-cempty__box { max-width: 560px; padding: 24px 0 8px; }
.ak-cempty__icon { display: grid; place-items: center; width: 76px; height: 76px; margin-bottom: 24px; border-radius: 50%; background: var(--ak-soft); }
.ak-cempty__icon .ak-i { width: 30px; height: 30px; }
.ak-cempty__title { margin: 0 0 16px; font: 600 clamp(26px, 3vw, 40px)/1.15 var(--ak-font); letter-spacing: -.01em; text-transform: none; }
.ak-cempty__text { margin: 0 0 24px; color: var(--ak-muted); font: 400 17px/1.5 var(--ak-font); }
.ak-cempty__text a { color: var(--ak-ink); font-weight: 700; white-space: nowrap; }
.ak-cempty__actions { display: flex; flex-wrap: wrap; gap: 14px; }
.ak-cempty__actions .ak-cobtn { min-width: 220px; }
.ak-cempty__pop { margin-top: 72px; }
.ak-cempty .ak-zrail__track { list-style: none; }

/* ======================================================================
 * Checkout
 * ==================================================================== */
.ak-co { display: grid; grid-template-columns: minmax(0, 1fr) 420px; grid-template-areas: "head ." "form form"; gap: 0 48px; }
.ak-co > .ak-cohead { grid-area: head; }
.ak-co__form { grid-area: form; display: grid; grid-template-columns: minmax(0, 1fr) 420px; gap: 0 48px; align-items: start; }
.ak-co__main { min-width: 0; }
.ak-co__side { position: sticky; top: calc(var(--ak-head-off, 0px) + 24px); transition: top .32s cubic-bezier(.22, .61, .36, 1); }
.admin-bar .ak-co__side { top: 56px; }

.ak-steps { display: flex; align-items: center; gap: 16px; margin: 32px 0 0; padding: 0; list-style: none; counter-reset: none; }
.ak-steps li { display: flex; align-items: center; gap: 16px; }
.ak-steps li + li::before { content: ""; width: 64px; height: 1px; background: var(--ak-rule-2); }
.ak-steps a { display: inline-flex; align-items: center; gap: 10px; color: var(--ak-muted); font: 400 16px/1 var(--ak-font); }
.ak-steps a span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; box-shadow: inset 0 0 0 1px var(--ak-rule-2); font: 600 13px/1 var(--ak-font); }
.ak-steps a:hover { color: var(--ak-ink); }
.ak-steps li.is-on a { color: var(--ak-ink); font-weight: 700; }
.ak-steps li.is-on a span { background: var(--ak-ink); box-shadow: none; color: #fff; }

.ak-step { padding: 0 0 36px; scroll-margin-top: 24px; }
.ak-step + .ak-step { padding-top: 36px; border-top: 1px solid var(--ak-rule); }
.ak-co__steps + .ak-step { padding-top: 36px; border-top: 1px solid var(--ak-rule); }
.ak-step__title { display: flex; align-items: center; gap: 12px; margin: 0 0 24px; font: 600 24px/1.1 var(--ak-font); letter-spacing: 0; text-transform: none; }
.ak-step__num { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--ak-ink); color: #fff; font: 600 13px/1 var(--ak-font); }
.ak-step__sub { margin: 28px 0 16px; font: 600 17px/1.2 var(--ak-font); text-transform: none; letter-spacing: 0; }

/* field grid instead of WooCommerce's floats */
.ak-co .woocommerce-billing-fields > h3, .ak-co .woocommerce-additional-fields > h3 { display: none; }
.ak-co .woocommerce-billing-fields__field-wrapper,
.ak-co .woocommerce-shipping-fields__field-wrapper,
.ak-co .woocommerce-additional-fields__field-wrapper { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 14px; }
.ak-co .woocommerce-billing-fields__field-wrapper::before, .ak-co .woocommerce-billing-fields__field-wrapper::after,
.ak-co .woocommerce-shipping-fields__field-wrapper::before, .ak-co .woocommerce-shipping-fields__field-wrapper::after { display: none; }
.woocommerce .ak-co form .form-row, .woocommerce-page .ak-co form .form-row { float: none; width: auto; margin: 0; padding: 0; }
.ak-co .form-row-wide, .ak-co .notes, .ak-co #billing_country_field, .ak-co #billing_address_1_field, .ak-co #billing_address_2_field,
.ak-co #shipping_country_field, .ak-co #shipping_address_1_field, .ak-co #shipping_address_2_field { grid-column: 1 / -1; }
.ak-co .ak-fields--contact #billing_phone_field, .ak-co .ak-fields--contact #billing_email_field { grid-column: auto; }
.ak-co .form-row[style*="display: none"], .ak-co .form-row.hidden { display: none !important; }
.ak-co #billing_address_2_field label.screen-reader-text, .ak-co #shipping_address_2_field label.screen-reader-text { position: absolute !important; }
.ak-co .woocommerce-shipping-fields { margin-top: 24px; }
.ak-co #ship-to-different-address { margin: 0 0 16px; font: 400 15px/1.3 var(--ak-font); text-transform: none; letter-spacing: 0; }
.ak-co #ship-to-different-address label { display: inline-flex; align-items: center; gap: 10px; cursor: pointer; }
.ak-co .shipping_address { margin-bottom: 8px; }
.ak-co .woocommerce-additional-fields { margin-top: 24px; }
.ak-co .woocommerce-account-fields { margin-top: 18px; }

/* pick-up / delivery info cards */
.ak-opts { display: flex; flex-direction: column; gap: 12px; }
.ak-opt { display: flex; align-items: flex-start; gap: 14px; padding: 20px; border-radius: 4px; box-shadow: 0 0 0 1px var(--ak-rule); }
.ak-opt.is-on { box-shadow: 0 0 0 2px var(--ak-ink); }
.ak-opt__icon { flex: none; padding-top: 1px; }
.ak-opt__icon .ak-i { width: 20px; height: 20px; }
.ak-opt__text { display: flex; flex-direction: column; gap: 4px; color: var(--ak-muted); font: 400 14px/1.45 var(--ak-font); }
.ak-opt__text strong { color: var(--ak-ink); font: 600 16px/1.3 var(--ak-font); }

/* payment step */
.woocommerce-checkout .ak-co #payment { background: none; border-radius: 0; }
.woocommerce-checkout .ak-co #payment ul.payment_methods { display: flex; flex-direction: column; gap: 12px; margin: 0 0 24px; padding: 0; border: 0; text-align: left; }
.woocommerce-checkout .ak-co #payment ul.payment_methods::before, .woocommerce-checkout .ak-co #payment ul.payment_methods::after { display: none; }
.woocommerce-checkout .ak-co #payment ul.payment_methods li { margin: 0; padding: 20px; border-radius: 4px; box-shadow: 0 0 0 1px var(--ak-rule); font: 600 16px/1.3 var(--ak-font); line-height: 1.3; }
.woocommerce-checkout .ak-co #payment ul.payment_methods li:has(input:checked) { box-shadow: 0 0 0 2px var(--ak-ink); }
.woocommerce-checkout .ak-co #payment ul.payment_methods li input { margin: 0 10px 0 0; accent-color: var(--ak-ink); }
.woocommerce-checkout .ak-co #payment ul.payment_methods li img { max-height: 24px; margin-left: 8px; }
.woocommerce-checkout .ak-co #payment div.payment_box { margin: 12px 0 0; padding: 0; background: none; color: var(--ak-muted); font: 400 14px/1.45 var(--ak-font); }
.woocommerce-checkout .ak-co #payment div.payment_box::before { display: none; }
.woocommerce-checkout .ak-co #payment div.form-row { margin: 0; padding: 0; }
.woocommerce-checkout .ak-co #payment #place_order { float: none; width: 100%; margin: 0; }
.woocommerce-checkout .ak-co .woocommerce-terms-and-conditions-wrapper { margin: 0 0 16px; font-size: 14px; }
.woocommerce-checkout .ak-co .woocommerce-privacy-policy-text p { margin: 0 0 12px; color: var(--ak-muted); font-size: 13px; }
.ak-place-note { margin: 10px 0 0; color: var(--ak-muted); font: 400 13px/1.4 var(--ak-font); text-align: center; }

/* "online ordering is not on yet" */
.ak-conote { display: flex; gap: 16px; margin: 0 0 24px; padding: 20px 24px; border-radius: 4px; background: var(--ak-fit-tint); color: var(--ak-ink); font: 400 15px/1.5 var(--ak-font); }
.ak-conote__icon { flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--ak-orange); }
.ak-conote__icon .ak-i { width: 20px; height: 20px; }
.ak-conote p { margin: 0; }
.ak-conote .ak-conote__title { margin-bottom: 4px; font: 700 17px/1.25 var(--ak-font); }
.ak-conote a { color: var(--ak-ink); white-space: nowrap; }
.ak-conote a:hover { color: var(--ak-orange-strong); }

/* order review (checkout side + order received) */
.woocommerce .ak-review.shop_table { margin: 0; border: 0; border-radius: 0; }
.ak-review { display: flex; flex-direction: column; gap: 16px; }
.ak-review__items { display: flex; flex-direction: column; gap: 20px; margin: 0; padding: 0 0 20px; border-bottom: 1px solid var(--ak-rule); list-style: none; }
.ak-line { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 14px; align-items: start; }
.ak-line__photo { display: grid; place-items: center; width: 64px; height: 72px; border-radius: 4px; background: var(--ak-photo); overflow: hidden; }
.ak-line__photo img { width: 80%; height: auto; aspect-ratio: 1; object-fit: contain; mix-blend-mode: multiply; }
.ak-line__info { display: flex; flex-direction: column; gap: 2px; min-width: 0; font: 400 14px/1.35 var(--ak-font); }
.ak-line__brand { font: 700 14px/1.2 var(--ak-font); }
.ak-line__qty { color: var(--ak-muted); font-size: 12px; font-variant-numeric: tabular-nums; }
.ak-line__total { font: 700 15px/1.2 var(--ak-font); font-variant-numeric: tabular-nums; white-space: nowrap; }
.ak-sum--co { gap: 16px; }
.ak-sum--co .ak-review .ak-sum__rows { padding-bottom: 20px; }
.woocommerce-checkout .blockUI.blockOverlay { background: #fff !important; }

/* coupon toggle + login reminder above the checkout */
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info { margin-bottom: 16px; }
.woocommerce-checkout form.checkout_coupon { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 24px; padding: 20px; border: 0; border-radius: 4px; box-shadow: 0 0 0 1px var(--ak-rule); }
.woocommerce-checkout form.checkout_coupon p { margin: 0; width: 100%; }
.woocommerce-checkout form.checkout_coupon .form-row { float: none; width: auto; margin: 0; padding: 0; }
.woocommerce-checkout form.checkout_coupon .form-row-first { flex: 1; }

/* ======================================================================
 * Order received
 * ==================================================================== */
.ak-thanks { max-width: 826px; margin-inline: auto; padding-top: 20px; }
.ak-thanks__check { display: grid; place-items: center; width: 68px; height: 68px; margin-bottom: 28px; border-radius: 50%; background: var(--ak-ink); color: #fff; }
.ak-thanks__check .ak-i { width: 32px; height: 32px; }
.ak-thanks__title { margin: 0 0 20px; font: 600 clamp(28px, 3.2vw, 40px)/1.12 var(--ak-font); letter-spacing: -.01em; text-transform: none; }
.ak-thanks__lead { margin: 0 0 24px; padding: 0; background: none; color: var(--ak-muted); font: 400 17px/1.5 var(--ak-font); }
.ak-thanks__num { display: inline-flex; gap: 10px; margin: 0 0 36px; padding: 12px 16px; border-radius: 4px; background: var(--ak-soft); color: var(--ak-muted); font: 400 15px/1.2 var(--ak-font); }
.ak-thanks__num strong { color: var(--ak-ink); font-weight: 700; }
.ak-thanks__h2 { margin: 0 0 24px; font: 600 22px/1.1 var(--ak-font); text-transform: none; letter-spacing: 0; }
.ak-next { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 0 0 28px; padding: 0; list-style: none; }
.ak-next__card { padding: 24px 22px; border-radius: 4px; box-shadow: 0 0 0 1px var(--ak-rule); }
.ak-next__step { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; color: var(--ak-muted); font: 600 12px/1 var(--ak-font); letter-spacing: .04em; text-transform: uppercase; }
.ak-next__icon { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--ak-orange); color: var(--ak-ink); }
.ak-next__icon .ak-i { width: 16px; height: 16px; }
.ak-next__card h3 { margin: 0 0 10px; font: 600 17px/1.2 var(--ak-font); text-transform: none; letter-spacing: 0; }
.ak-next__card p { margin: 0 0 8px; color: var(--ak-muted); font: 400 14px/1.5 var(--ak-font); }
.ak-next__card p strong { color: var(--ak-ink); }
.ak-fitband { display: flex; align-items: center; justify-content: space-between; gap: 16px 24px; margin: 0 0 28px; padding: 22px 26px; background: var(--ak-orange); color: var(--ak-ink); }
.ak-fitband__title { margin: 0 0 4px; font: 700 21px/1.2 var(--ak-font); }
.ak-fitband__sub { margin: 0; font: 400 14px/1.45 var(--ak-font); }
.ak-fitband .ak-cobtn { flex: none; min-height: 44px; }
.ak-fitband .ak-cobtn:hover { background: #fff; color: var(--ak-ink); }
.ak-sum--order { margin-bottom: 28px; }
.ak-sum--order .ak-sum__title { font-size: 18px; }
.ak-thanks__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; margin: 0; padding: 0; background: none; }
.ak-thanks__phone { display: inline-flex; align-items: center; gap: 8px; color: var(--ak-ink); font: 700 15px/1.2 var(--ak-font); }
.ak-thanks__phone .ak-i { width: 16px; height: 16px; }
.ak-thanks .woocommerce-bacs-bank-details, .ak-thanks .wc-bacs-bank-details-heading { margin-top: 28px; }

/* ======================================================================
 * My account
 * ==================================================================== */
.woocommerce-account .ak-page__title { font: 600 clamp(28px, 3.4vw, 44px)/1.08 var(--ak-font); letter-spacing: -.01em; text-transform: none; }
.ak-auth { max-width: 460px; }
.ak-auth__h { margin: 0 0 20px; font: 600 22px/1.1 var(--ak-font); text-transform: none; letter-spacing: 0; }
.ak-auth__tabs { display: grid; grid-template-columns: 1fr 1fr; margin-bottom: 24px; border-bottom: 1px solid var(--ak-rule); }
.ak-auth__tabs button { padding: 12px 0 14px; border: 0; border-bottom: 3px solid transparent; margin-bottom: -1px; background: none; color: var(--ak-muted); cursor: pointer; font: 400 16px/1 var(--ak-font); }
.ak-auth__tabs button[aria-selected="true"] { border-bottom-color: var(--ak-ink); color: var(--ak-ink); font-weight: 700; }
.woocommerce .ak-auth form.login, .woocommerce .ak-auth form.register { margin: 0; padding: 0; border: 0; border-radius: 0; }
.ak-auth__form { display: flex; flex-direction: column; gap: 18px; }
.woocommerce .ak-auth form .form-row { margin: 0; padding: 0; }
.ak-auth .password-input { display: block; position: relative; }
.ak-auth .show-password-input { top: 50% !important; right: 14px !important; transform: translateY(-50%); }
.ak-auth__row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; }
.ak-auth__row label { display: inline-flex; align-items: center; gap: 10px; margin: 0; font: 400 15px/1.2 var(--ak-font); cursor: pointer; }
.ak-auth__lost { color: var(--ak-orange-strong); font: 700 15px/1.2 var(--ak-font); text-decoration: underline; text-underline-offset: 3px; }
.ak-auth .woocommerce-form-login__submit, .ak-auth .woocommerce-form-register__submit { width: 100%; }
.ak-auth__hint { margin: 0; color: var(--ak-muted); font-size: 14px; }
.ak-auth__or { display: flex; align-items: center; gap: 16px; margin: 28px 0; color: var(--ak-muted); font-size: 13px; }
.ak-auth__or::before, .ak-auth__or::after { content: ""; flex: 1; height: 1px; background: var(--ak-rule); }
.ak-auth__box { padding: 22px 20px; border-radius: 4px; background: var(--ak-soft); }
.ak-auth__box h3 { margin: 0 0 10px; font: 700 18px/1.2 var(--ak-font); text-transform: none; letter-spacing: 0; }
.ak-auth__box p { margin: 0 0 14px; color: var(--ak-muted); font: 400 15px/1.45 var(--ak-font); }
.ak-auth__list { display: flex; flex-direction: column; gap: 10px; margin: 0 0 14px; padding: 0; list-style: none; font: 400 15px/1.3 var(--ak-font); }
.ak-auth__list li { display: flex; gap: 10px; }
.ak-auth__list .ak-i { flex: none; width: 18px; height: 18px; color: var(--ak-orange-strong); }
.ak-auth__box .ak-cobtn { width: 100%; }
.ak-auth__help { display: inline-flex; align-items: center; gap: 8px; margin-top: 24px; color: var(--ak-muted); font: 400 14px/1.2 var(--ak-font); }
.ak-auth__help .ak-i { width: 16px; height: 16px; color: var(--ak-ink); }

/* logged in: navigation + content */
.woocommerce-account.logged-in .woocommerce { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 0 48px; align-items: start; }
.woocommerce-account.logged-in .woocommerce::before, .woocommerce-account.logged-in .woocommerce::after { display: none; }
.woocommerce-account.logged-in .woocommerce > :not(.woocommerce-MyAccount-navigation):not(.woocommerce-MyAccount-content) { grid-column: 1 / -1; }
.ak-acc-title { margin: 0 0 32px; }
.woocommerce-account .woocommerce-MyAccount-navigation, .woocommerce-account .woocommerce-MyAccount-content { float: none; width: auto; }
.woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--ak-rule); }
.woocommerce-MyAccount-navigation li { border-bottom: 1px solid var(--ak-rule); }
.woocommerce-MyAccount-navigation a { display: block; padding: 14px 0; color: var(--ak-ink); font: 400 16px/1.2 var(--ak-font); }
.woocommerce-MyAccount-navigation a:hover { color: var(--ak-orange-strong); }
.woocommerce-MyAccount-navigation li.is-active a { font-weight: 700; box-shadow: inset 3px 0 0 var(--ak-ink); padding-left: 14px; }
.woocommerce-MyAccount-content { font: 400 16px/1.55 var(--ak-font); }
.woocommerce-MyAccount-content > p:first-child { margin-top: 0; }
.woocommerce-MyAccount-content a { color: var(--ak-orange-strong); font-weight: 600; }
.woocommerce-MyAccount-content .woocommerce-info .button, .woocommerce-MyAccount-content .button {
	min-height: 44px; padding: 0 20px; border-radius: 0; background: var(--ak-ink); color: #fff; font: 700 14px/44px var(--ak-font); letter-spacing: 0; text-transform: none;
}
.woocommerce-MyAccount-content .button:hover { background: var(--ak-orange-strong); color: #fff; }
.woocommerce-MyAccount-content table.shop_table { border: 0; border-radius: 0; box-shadow: 0 0 0 1px var(--ak-rule); }
.woocommerce-MyAccount-content table.shop_table th, .woocommerce-MyAccount-content table.shop_table td { padding: 12px 14px; border-color: var(--ak-rule); }
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 20px; }
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses::before, .woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses::after { display: none; }
.woocommerce-account .woocommerce-MyAccount-content .col2-set .woocommerce-Address { float: none; width: auto; padding: 20px; box-shadow: 0 0 0 1px var(--ak-rule); }
.woocommerce-MyAccount-content .woocommerce-Address-title { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 6px 12px; }
.woocommerce-MyAccount-content .woocommerce-Address-title .edit { float: none; }
.woocommerce-MyAccount-content address { font-style: normal; color: var(--ak-muted); }
.woocommerce-MyAccount-content .woocommerce-Address-title h2 { font: 600 18px/1.2 var(--ak-font); text-transform: none; }
.woocommerce-MyAccount-content form .form-row { margin: 0 0 16px; }
.woocommerce-MyAccount-content fieldset { margin: 24px 0; padding: 20px; border: 0; box-shadow: 0 0 0 1px var(--ak-rule); }
.woocommerce-account .woocommerce-ResetPassword, .woocommerce-account .lost_reset_password { max-width: 460px; }

/* ======================================================================
 * Responsive
 * ==================================================================== */
@media (max-width: 1100px) {
	.ak-cart { grid-template-columns: minmax(0, 1fr) 340px; gap: 0 32px; }
	.ak-co, .ak-co__form { grid-template-columns: minmax(0, 1fr) 360px; gap: 0 32px; }
}

@media (max-width: 900px) {
	.ak-cart { grid-template-columns: minmax(0, 1fr); grid-template-areas: "head" "form" "side"; }
	.ak-cart__side { position: static; margin-top: 16px; }
	.ak-co, .ak-co__form { grid-template-columns: minmax(0, 1fr); grid-template-areas: none; }
	.ak-co > .ak-cohead { grid-area: auto; }
	.ak-co__form { grid-area: auto; }
	.ak-co__side { position: static; order: -1; margin-bottom: 32px; }
	.ak-next { grid-template-columns: minmax(0, 1fr); }
	.woocommerce-account.logged-in .woocommerce { grid-template-columns: minmax(0, 1fr); gap: 0; }
	.woocommerce-account.logged-in .woocommerce-MyAccount-navigation { margin-bottom: 28px; }
}

@media (max-width: 760px) {
	.woocommerce-cart .ak-page, .woocommerce-checkout .ak-page, .woocommerce-account .ak-page { padding-block: 24px 48px; }
	.ak-coback { margin-bottom: 20px; font-size: 16px; }
	.ak-cohead { margin-bottom: 16px; }
	.ak-cohead__title { gap: 4px 10px; font-size: 32px; }
	.ak-cohead__count { font-size: 15px; }

	/* cart rows: photo 96, price under the name, trash icon only */
	.ak-item { grid-template-columns: 96px minmax(0, 1fr); gap: 14px; padding: 16px 0; }
	.ak-item__photo { aspect-ratio: 1; }
	.ak-item__body { grid-template-columns: minmax(0, 1fr); grid-template-areas: "info" "price" "actions"; }
	.ak-item__brand, .ak-item__name { font-size: 14px; }
	.ak-item__meta { display: none; }
	.ak-item__price { flex-direction: row; align-items: baseline; gap: 10px; padding-top: 6px; text-align: left; }
	.ak-item__price strong { font-size: 16px; }
	.ak-item__each--d { display: none; }
	.ak-item__each--m { display: inline; font-size: 11px; }
	.ak-item__actions { justify-content: space-between; padding-top: 10px; }
	.woocommerce .ak-cart a.remove.ak-item__remove span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.woocommerce .ak-cart a.remove.ak-item__remove { padding: 8px; margin-right: -8px; }

	.ak-fit { flex-wrap: wrap; align-items: flex-start; gap: 12px 14px; padding: 16px; }
	.ak-fit__icon { width: 36px; height: 36px; }
	.ak-fit__text { flex-basis: calc(100% - 50px); }
	.ak-fit__title { font-size: 15px; }
	.ak-fit__sub { font-size: 14px; }
	.ak-fit .ak-cobtn { flex: 1 1 100%; min-height: 40px; }

	.ak-sum { padding: 20px 18px; background: var(--ak-soft); box-shadow: none; gap: 14px; }
	.ak-sum__title { font-size: 18px; }
	.ak-sum__row { font-size: 15px; }
	.ak-sum__total { font-size: 18px; }
	.ak-cart .ak-sum .wc-proceed-to-checkout, .ak-cart .ak-sum__help { display: none; }

	.ak-cart__bar {
		display: flex; align-items: center; justify-content: space-between; gap: 14px;
		position: fixed; left: 0; right: 0; bottom: 0; z-index: 40;
		padding: 12px 16px calc(12px + env(safe-area-inset-bottom)); background: #fff; box-shadow: 0 -6px 20px rgba(0, 0, 0, .08);
	}
	.ak-cart__bar-total { display: flex; flex-direction: column; gap: 2px; }
	.ak-cart__bar-total > span { color: var(--ak-muted); font-size: 13px; }
	.ak-cart__bar-total strong { font: 700 19px/1.1 var(--ak-font); font-variant-numeric: tabular-nums; white-space: nowrap; }
	.ak-cart__bar .ak-cobtn { flex: 1; max-width: 230px; min-height: 52px; padding: 0 14px; font-size: 16px; }
	body.woocommerce-cart:has(.ak-cart__bar) { padding-bottom: 84px; }

	.ak-coupon__row .input-text { width: auto; flex: 1; min-width: 0; }

	.ak-cempty__actions { flex-direction: column; }
	.ak-cempty__actions .ak-cobtn { width: 100%; min-width: 0; min-height: 54px; }
	.ak-cempty__pop { margin-top: 48px; }

	.ak-steps { gap: 8px; margin-top: 20px; }
	.ak-steps li { gap: 8px; }
	.ak-steps li + li::before { width: 16px; }
	.ak-steps a { gap: 6px; font-size: 14px; }
	.ak-steps a span { width: 26px; height: 26px; }
	.ak-step__title { font-size: 21px; margin-bottom: 18px; }
	.ak-co .woocommerce-billing-fields__field-wrapper,
	.ak-co .woocommerce-shipping-fields__field-wrapper,
	.ak-co .woocommerce-additional-fields__field-wrapper { grid-template-columns: minmax(0, 1fr); }
	.ak-co .form-row { grid-column: 1 / -1 !important; }
	.ak-conote { padding: 16px; gap: 12px; }

	.ak-thanks__check { width: 56px; height: 56px; margin-bottom: 20px; }
	.ak-thanks__lead { font-size: 16px; }
	.ak-fitband { flex-direction: column; align-items: stretch; padding: 20px; }
	.ak-fitband__title { font-size: 18px; }
	.ak-thanks__actions .ak-cobtn { width: 100%; }

	.ak-auth { max-width: none; }
}

/* PDV note under the order total (inc/checkout-flow.php ak_co_vat_note) */
.ak-sum__vat { margin: 6px 0 0; color: var(--ak-muted); font-size: 13px; text-align: right; }

/* ---------- delivery choice in the Dostava section (client, 20 Oct 2026) ---------- */
.ak-ship-opts { display: flex; flex-direction: column; gap: 12px; }
.ak-opt--ship { position: relative; align-items: center; cursor: pointer; }
.ak-opt--ship input { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
.ak-opt--ship .ak-opt__text { flex: 1; min-width: 0; }
.ak-opt__price { flex: none; color: var(--ak-ink); font: 600 15px/1.3 var(--ak-font); text-align: right; }
.ak-opt--ship:hover { box-shadow: 0 0 0 1px var(--ak-ink); }
.ak-opt--ship.is-on, .ak-opt--ship.is-on:hover { box-shadow: 0 0 0 2px var(--ak-ink); }
.ak-opt--ship:has(input:focus-visible) { outline: 2px solid var(--ak-orange); outline-offset: 2px; }
.ak-addr .ak-step__sub { margin-top: 32px; }
.ak-ship-none { margin: 0; color: var(--ak-muted); }
@media (max-width: 560px) {
	.ak-opt--ship { flex-wrap: wrap; padding: 16px; }
	.ak-opt__price { width: 100%; padding-left: 34px; text-align: left; }
}

/* ---------- montaža as its own removable box under a tyre (client, 20 Oct 2026) ---------- */
.ak-fitbox { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; align-items: start; gap: 16px 20px; margin: 16px 0 16px; padding: 20px 24px; border-radius: 0; background: var(--ak-fit-tint); }
.ak-fitbox + .ak-item { border-top: 1px solid var(--ak-rule); }
.ak-fitbox__icon { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--ak-orange); color: var(--ak-ink); }
.ak-fitbox__icon .ak-i { width: 20px; height: 20px; }
.ak-fitbox__body { min-width: 0; }
.ak-fitbox__title { margin: 0 0 4px; font: 700 17px/1.25 var(--ak-font); }
.ak-fitbox__sub { margin: 0; color: var(--ak-muted); font: 400 14px/1.45 var(--ak-font); }
.ak-fitbox__price { font: 700 17px/1.25 var(--ak-font); white-space: nowrap; }
.ak-fitbox__price.is-muted { color: var(--ak-muted); font-weight: 400; text-decoration: line-through; }
.ak-fitbox__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 20px; margin-top: 12px; }
.ak-fitbox__book, .ak-fitbox__remove, .ak-fitbox__add { display: inline-flex; align-items: center; gap: 8px; color: var(--ak-ink); font: 600 14px/1.2 var(--ak-font); }
.ak-fitbox__book span, .ak-fitbox__remove span, .ak-fitbox__add span { text-decoration: underline; text-underline-offset: 3px; }
.ak-fitbox__book .ak-i, .ak-fitbox__remove .ak-i, .ak-fitbox__add .ak-i { width: 16px; height: 16px; }
.ak-fitbox__book:hover, .ak-fitbox__remove:hover, .ak-fitbox__add:hover { color: var(--ak-orange-strong); }
.ak-fitbox.is-off { grid-template-columns: 40px minmax(0, 1fr) auto; align-items: center; padding: 14px 24px; background: transparent; box-shadow: inset 0 0 0 1px var(--ak-rule); }
.ak-fitbox.is-off .ak-fitbox__icon { background: var(--ak-photo); }
.ak-fitbox__off { margin: 0; color: var(--ak-muted); font: 400 14px/1.4 var(--ak-font); }
@media (max-width: 760px) {
	.ak-fitbox { grid-template-columns: 36px minmax(0, 1fr); gap: 10px 14px; margin: 12px 0; padding: 16px; }
	.ak-fitbox__icon { width: 36px; height: 36px; }
	.ak-fitbox__price { grid-column: 2; }
	.ak-fitbox.is-off { grid-template-columns: 36px minmax(0, 1fr); padding: 12px 16px; }
	.ak-fitbox.is-off .ak-fitbox__add { grid-column: 2; }
}

/* ---------- Fitting appointment request (inc/termin-requests.php, Figma "Update Oct 21" A2/A3) ---------- */
.ak-req { margin-top: 20px; padding: 24px; background: #fff; box-shadow: inset 0 0 0 1.5px var(--ak-orange-strong); }
.ak-req[hidden], .ak-req__body[hidden] { display: none; }
.ak-req__head { display: flex; gap: 14px; align-items: flex-start; margin: 0; cursor: pointer; }
.ak-co .ak-req__head input { margin-top: 2px; flex: none; }
.ak-req__text { display: grid; gap: 6px; }
.ak-req__title { color: var(--ak-ink); font: 700 17px/1.3 var(--ak-font); }
.ak-req__title em { display: inline-block; margin-left: 6px; padding: 3px 8px; background: var(--ak-soft); color: var(--ak-ink); font: 600 12px/1.2 var(--ak-font); font-style: normal; vertical-align: 2px; }
.ak-req__sub { color: var(--ak-muted); font: 400 14px/1.5 var(--ak-font); }
.ak-req__body { display: grid; gap: 10px; margin-top: 20px; }
.ak-req__l { margin: 10px 0 0; color: var(--ak-ink); font: 600 13px/1.2 var(--ak-font); }
.ak-req__fine { margin: 0; color: var(--ak-muted); font-size: 12px; }
.ak-req__days { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(78px, 1fr); gap: 8px; overflow-x: auto; padding-bottom: 2px; scrollbar-width: thin; }
.ak-req__day, .ak-req__part { position: relative; margin: 0; background: #fff; box-shadow: inset 0 0 0 1px var(--ak-line); cursor: pointer; transition: box-shadow .15s ease, background-color .15s ease; }
.ak-req__day { display: grid; justify-items: center; gap: 2px; padding: 10px 6px; text-align: center; }
.ak-req__day input, .ak-req__part input { position: absolute; opacity: 0; pointer-events: none; }
.ak-req__dn { color: var(--ak-muted); font: 600 12px/1.2 var(--ak-font); letter-spacing: .06em; text-transform: uppercase; }
.ak-req__day b { color: var(--ak-ink); font: 700 16px/1.2 var(--ak-font); }
.ak-req__day small { color: var(--ak-muted); font-size: 11px; white-space: nowrap; }
.ak-req__day.is-on, .ak-req__part.is-on { background: var(--ak-orange-tint); box-shadow: inset 0 0 0 1.5px var(--ak-orange-strong); }
.ak-req__day.is-on .ak-req__dn, .ak-req__day.is-on small { color: var(--ak-orange-strong); }
.ak-req__day.is-full, .ak-req__part.is-off { background: var(--ak-soft); cursor: not-allowed; opacity: .6; }
.ak-req__day:has(input:focus-visible), .ak-req__part:has(input:focus-visible) { outline: 2px solid var(--ak-ink); outline-offset: 2px; }
.ak-req__parts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.ak-req__part { display: flex; align-items: center; gap: 10px; padding: 12px 14px 12px 40px; }
.ak-req__part::before { content: ""; position: absolute; left: 14px; top: 50%; width: 16px; height: 16px; margin-top: -8px; border-radius: 50%; box-shadow: inset 0 0 0 1.5px #c3c4c7; background: #fff; }
.ak-req__part.is-on::before { box-shadow: inset 0 0 0 5px var(--ak-orange-strong); }
.ak-req__part span { display: grid; gap: 2px; }
.ak-req__part b { color: var(--ak-ink); font: 700 14px/1.2 var(--ak-font); }
.ak-req__part small { color: var(--ak-muted); font-size: 12px; }
.ak-co textarea.ak-req__note { width: 100%; min-height: 64px; padding: 12px 14px; border: 0; border-radius: 0; box-shadow: 0 0 0 1px var(--ak-line); font: 400 15px/1.5 var(--ak-font); resize: vertical; }
.ak-co textarea.ak-req__note:focus { outline: none; box-shadow: 0 0 0 2px var(--ak-ink); }
.ak-req__price { margin: 6px 0 0; padding: 12px 14px; background: var(--ak-soft); color: var(--ak-ink); font: 500 13px/1.45 var(--ak-font); }
.ak-reqty { margin: 0 0 28px; padding: 20px 22px; background: #fcf3db; color: var(--ak-ink); font: 400 15px/1.55 var(--ak-font); }
.ak-reqty p { margin: 0 0 6px; }
.ak-reqty p:last-child { margin: 0; }
.ak-reqty__head b { font-size: 17px; }
.ak-reqty__chip { display: inline-block; margin-left: 8px; padding: 3px 8px; background: #fff; color: #8a5a00; font: 600 12px/1.2 var(--ak-font); }
.ak-reqty__fine { color: var(--ak-muted); font-size: 13px; }
@media (max-width: 600px) {
	.ak-req { padding: 16px; }
	.ak-req__parts { grid-template-columns: minmax(0, 1fr); }
	.ak-req__days { grid-auto-columns: 72px; }
}
