/*
 * LifeLine Ink — WooCommerce skin (single product, cart, checkout, account, notices).
 * Loaded after WooCommerce's own CSS (dependency: woocommerce-general) on Woo pages only.
 * Merch archive, tiles and the .ll-product* layout live in style.css (tiles are also used on Home).
 *
 * Rules: theme tokens only, 0 radius, red primary, 2px rules. Selectors are prefixed (.woocommerce,
 * .woocommerce-cart, …) to beat Woo's by specificity/order; !important is used only for radius.
 * Covers both the shortcode (classic) and block cart/checkout markup.
 *
 * Wrapper: cart/checkout/account pages currently render through index.php (.ll-section.ll-cell >
 * article.ll-measure). Task 16's page.php wraps Woo pages in `.ll-cell .ll-woo-wrap` for the gutter
 * and full width; nothing here depends on either wrapper.
 */

/* Woo design tokens → theme tokens (classic + blocks read these). */
:root{
	--wc-blue:var(--accent);--wc-primary:var(--accent);--wc-primary-text:var(--paper);
	--wc-secondary:var(--n900);--wc-secondary-text:var(--paper);--wc-highlight:var(--accent-400);--wc-highligh-text:var(--ink);
	--wc-red:var(--accent-400);--wc-destructive:var(--accent-400);--wc-content-bg:var(--ink);--wc-subtext:var(--n400);
	--wc-form-border-color:var(--n500);--wc-form-border-radius:0;--wc-form-border-width:1px;
	--wc-form-color-background:var(--n900);--wc-form-color-text:var(--paper);--wc-card-border-radius:0
}
.woocommerce .woocommerce-breadcrumb,.woocommerce-breadcrumb{display:none}

/* ==========================================================================
   Buttons
   ========================================================================== */
.woocommerce button.button,.woocommerce a.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce button.button.alt,.woocommerce a.button.alt,.woocommerce input.button.alt,.woocommerce #respond input#submit.alt,
.woocommerce .single_add_to_cart_button,.woocommerce button.single_add_to_cart_button.button.alt,
.wc-block-components-button:not(.is-link),.wc-block-components-button.contained{
	display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:12px 16px;
	background:var(--accent);border:1px solid var(--accent);color:var(--paper);
	font-family:inherit;font-size:14px;font-weight:800;line-height:1.2;text-decoration:none;text-shadow:none;box-shadow:none;border-radius:0!important
}
.woocommerce button.button:hover,.woocommerce a.button:hover,.woocommerce input.button:hover,.woocommerce #respond input#submit:hover,
.woocommerce button.button.alt:hover,.woocommerce a.button.alt:hover,.woocommerce input.button.alt:hover,.woocommerce #respond input#submit.alt:hover,
.woocommerce .single_add_to_cart_button:hover,.woocommerce button.single_add_to_cart_button.button.alt:hover,
.wc-block-components-button:not(.is-link):hover,.wc-block-components-button.contained:hover{
	background:var(--accent-400);border-color:var(--accent-400);color:var(--ink)
}
.woocommerce button.button:focus-visible,.woocommerce a.button:focus-visible,.woocommerce input.button:focus-visible,.woocommerce #respond input#submit:focus-visible,
.woocommerce .single_add_to_cart_button:focus-visible,.wc-block-components-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:none}
.woocommerce button.button:disabled,.woocommerce button.button.disabled,.woocommerce button.button:disabled[disabled],.woocommerce a.button.disabled,.woocommerce input.button:disabled,
.woocommerce button.button.alt:disabled,.woocommerce button.button.alt.disabled,.woocommerce button.button.alt:disabled[disabled],.woocommerce a.button.alt.disabled,
.woocommerce button.button:disabled:hover,.woocommerce button.button.alt.disabled:hover,.woocommerce button.button.alt:disabled[disabled]:hover,
.wc-block-components-button:disabled,.wc-block-components-button:disabled:hover{
	background:var(--n900);border-color:var(--n700);color:var(--n400);opacity:1;cursor:not-allowed
}
.woocommerce a.added_to_cart{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;font-weight:800;font-size:14px;color:var(--accent-400)}
.woocommerce a.added_to_cart:hover{color:var(--paper)}

/* ==========================================================================
   Inputs
   ========================================================================== */
.woocommerce input.input-text,.woocommerce select,.woocommerce textarea,
.woocommerce form .form-row .input-text,.woocommerce form .form-row select,.woocommerce form .form-row textarea,
.woocommerce .quantity .qty,.woocommerce .ll-product form.cart .variations select,
.wc-block-components-text-input input,
body .wc-block-components-form .wc-block-components-text-input input:not([type=checkbox]),
body .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.wc-block-components-combobox-control input,.wc-block-components-select select,.wc-blocks-components-select .wc-blocks-components-select__select,
.wc-block-components-textarea{
	min-height:44px;padding:10px 12px;background-color:var(--n900);border:1px solid var(--n500);color:var(--paper);
	font-family:inherit;font-size:15px;line-height:1.4;box-shadow:none;border-radius:0!important
}
.woocommerce textarea,.woocommerce form .form-row textarea{min-height:96px}
.woocommerce input.input-text::placeholder,.woocommerce textarea::placeholder,.wc-block-components-text-input input::placeholder,.wc-block-components-textarea::placeholder{color:var(--n-ph);opacity:1}
.woocommerce input.input-text:focus,.woocommerce select:focus,.woocommerce textarea:focus,
.woocommerce form .form-row .input-text:focus,.woocommerce form .form-row select:focus,.woocommerce .quantity .qty:focus,
.wc-block-components-text-input input:focus,.wc-block-components-combobox-control input:focus,.wc-block-components-select select:focus{
	border-color:var(--paper);outline:2px solid var(--accent);outline-offset:2px;box-shadow:none
}
/* Selects: paper chevron (Woo ships a black one). */
.woocommerce select,.woocommerce form .form-row select,.woocommerce .ll-product form.cart .variations select{
	appearance:none;-webkit-appearance:none;padding-right:40px;cursor:pointer;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23f3f2f2' stroke-width='2'/%3E%3C/svg%3E");
	background-repeat:no-repeat;background-position:right 14px center;background-size:12px 8px
}
.woocommerce form .form-row{margin:0 0 12px;padding:0}
.woocommerce form .form-row label{font-size:13px;line-height:1.6;color:var(--n400)}
.woocommerce form .form-row label.checkbox,.woocommerce form .form-row .woocommerce-form__label-for-checkbox{color:var(--paper);display:inline-flex;align-items:center;gap:8px;min-height:44px}
.woocommerce form .form-row .required{color:var(--accent-400)}
.woocommerce input[type=checkbox],.woocommerce input[type=radio],.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]{accent-color:var(--accent)}
.woocommerce .quantity .qty{width:72px;text-align:center;padding:10px 4px}
.woocommerce form .form-row.woocommerce-invalid input.input-text,.woocommerce form .form-row.woocommerce-invalid select{border-color:var(--accent-400)}
.woocommerce form .form-row.woocommerce-invalid label{color:var(--accent-400)}

/* select2 (checkout country/state) — dropdown is appended to <body>. */
html body .select2-container .select2-selection--single{height:auto;min-height:44px;background:var(--n900);border:1px solid var(--n500)}
html body .select2-container .select2-selection--single .select2-selection__rendered{padding:10px 40px 10px 12px;line-height:1.4;color:var(--paper)}
html body .select2-container .select2-selection--single .select2-selection__arrow{height:100%;top:0;right:8px}
html body .select2-container .select2-selection--single .select2-selection__arrow b{border:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23f3f2f2' stroke-width='2'/%3E%3C/svg%3E") no-repeat center/12px 8px}
html body .select2-dropdown{background:var(--n900);border:1px solid var(--n500);color:var(--paper)}
html body .select2-container--default .select2-search--dropdown .select2-search__field{min-height:40px;background:var(--ink);border:1px solid var(--n500);color:var(--paper)}
html body .select2-container--default .select2-results__option--highlighted[aria-selected],
html body .select2-container--default .select2-results__option--highlighted[data-selected]{background:var(--accent);color:var(--paper)}
html body .select2-container--default .select2-results__option[aria-selected=true],
html body .select2-container--default .select2-results__option[data-selected=true]{background:var(--n700);color:var(--paper)}

/* ==========================================================================
   Tables
   ========================================================================== */
.woocommerce table.shop_table{border:0;border-top:var(--rule);border-collapse:collapse;margin:0 0 24px;border-radius:0!important}
.woocommerce table.shop_table th,.woocommerce table.shop_table td,.woocommerce table.shop_table tbody th,.woocommerce table.shop_table tfoot td,.woocommerce table.shop_table tfoot th{
	border:0;border-bottom:1px solid var(--n700);padding:12px 8px;font-size:15px
}
.woocommerce table.shop_table thead th{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--n400)}
.woocommerce table.shop_table td.product-name a{font-weight:800}
.woocommerce table.shop_table img{width:64px;height:auto}
.woocommerce table.shop_table_responsive tr:nth-child(2n) td{background-color:transparent}
.woocommerce a.remove{display:inline-grid;place-items:center;width:32px;height:32px;font-size:20px;font-weight:400;line-height:1;border:1px solid var(--n700)}
.woocommerce a.remove:hover{background:var(--accent);border-color:var(--accent)}

/* ==========================================================================
   Notices
   ========================================================================== */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce .woocommerce-message,.woocommerce .woocommerce-info,.woocommerce .woocommerce-error,
.wc-block-components-notice-banner{
	margin:0 0 24px;padding:16px 16px 16px 48px;background:var(--n900);border:0;border-top:2px solid var(--accent);color:var(--paper);font-size:15px;border-radius:0!important
}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{top:16px;left:16px;color:var(--accent-400)}
.woocommerce-message a:not(.button),.woocommerce-info a:not(.button),.woocommerce-error a:not(.button),.wc-block-components-notice-banner a{color:var(--accent-400);font-weight:800}
.woocommerce-message a:not(.button):hover,.woocommerce-info a:not(.button):hover,.woocommerce-error a:not(.button):hover,.wc-block-components-notice-banner a:hover{color:var(--paper)}
.woocommerce-message .button,.woocommerce-info .button,.woocommerce-error .button{margin:-6px 0 -6px 16px}
.wc-block-components-notice-banner{padding-left:16px;border-color:var(--accent)}
.wc-block-components-notice-banner>svg{fill:var(--accent-400);background:transparent}
.wc-block-components-notice-banner>.wc-block-components-notice-banner__content{color:var(--paper)}

/* Content links that should read as links on the dark ground. */
.woocommerce .woocommerce-LostPassword a,.woocommerce-form-coupon-toggle a,.woocommerce .showcoupon,.woocommerce .shipping-calculator-button,
.woocommerce .woocommerce-privacy-policy-link,.woocommerce .woocommerce-terms-and-conditions-link,.woocommerce .reset_variations{color:var(--accent-400)}
.woocommerce .woocommerce-LostPassword a:hover,.woocommerce-form-coupon-toggle a:hover,.woocommerce .showcoupon:hover,.woocommerce .shipping-calculator-button:hover{color:var(--paper)}
div.woocommerce h2,div.woocommerce h3{font-weight:800;line-height:1.1;letter-spacing:-.02em;margin:32px 0 16px}
div.woocommerce h2{font-size:28px}div.woocommerce h3{font-size:22px}
div.woocommerce>h2:first-child,div.woocommerce>.woocommerce-notices-wrapper+h2{margin-top:16px}

/* ==========================================================================
   Single product (layout in style.css → .ll-product*)
   ========================================================================== */
.woocommerce .ll-product div.images.ll-wc-gallery{float:none;width:auto;margin:0}
.woocommerce .ll-product div.summary.ll-product-summary{float:none;width:auto;margin:0;clear:none}
/* Main image full width, thumbnails in a 4-up grid separated by 2px n700 rules (borders, so empty cells stay ink). */
.woocommerce .ll-product .ll-wc-gallery .woocommerce-product-gallery__wrapper{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.woocommerce .ll-product .ll-wc-gallery .woocommerce-product-gallery__image{display:block;width:auto;margin:0;background:var(--ink)}
.woocommerce .ll-product .ll-wc-gallery .woocommerce-product-gallery__image:nth-child(n+2){border-top:var(--rule)}
.woocommerce .ll-product .ll-wc-gallery .woocommerce-product-gallery__image:nth-child(n+2):not(:nth-child(4n+2)){border-left:var(--rule)}
.woocommerce .ll-product .ll-wc-gallery .woocommerce-product-gallery__image:first-child,
.woocommerce .ll-product .ll-wc-gallery .woocommerce-product-gallery__image--placeholder{grid-column:1/-1}
/* Photos greyscale per image (not on the gallery container, which would also grey Woo's span.onsale badge). */
.woocommerce .ll-product .ll-product-gallery .woocommerce-product-gallery__image{filter:grayscale(1) contrast(1.12)}
.woocommerce .ll-product div.images .woocommerce-product-gallery__image img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;object-position:50% 30%}
.woocommerce .ll-product div.images .woocommerce-product-gallery__image--placeholder{border:0}
/* Product photos elsewhere (cart / checkout / mini-cart / blocks) follow the greyscale photo rule too. */
.woocommerce td.product-thumbnail img,.woocommerce-mini-cart-item img,.wc-block-cart-item__image img,.wc-block-components-order-summary-item__image img{filter:grayscale(1) contrast(1.12)}
/* Lightbox trigger (PhotoSwipe) — square ink chip. */
.woocommerce .ll-product div.images .woocommerce-product-gallery__trigger{top:0;right:0;width:44px;height:44px;background:var(--ink);border:0;z-index:2}
.woocommerce .ll-product div.images .woocommerce-product-gallery__trigger::before{border-color:var(--paper);left:13px;top:13px}
.woocommerce .ll-product div.images .woocommerce-product-gallery__trigger::after{background:var(--paper);left:26px;top:23px}
.woocommerce .ll-product div.images .woocommerce-product-gallery__trigger:hover::before{border-color:var(--accent-400)}
.woocommerce .ll-product div.images .woocommerce-product-gallery__trigger:hover::after{background:var(--accent-400)}
.woocommerce span.onsale,.woocommerce .ll-product span.onsale{top:0;left:0;min-width:0;min-height:0;margin:0;padding:4px 8px;background:var(--accent);color:var(--paper);font-size:11px;font-weight:800;line-height:1.4;letter-spacing:.1em;text-transform:uppercase;z-index:3}
.woocommerce .ll-product p.price.ll-price,.woocommerce .ll-product .ll-price{margin:0;color:var(--paper);font-size:24px;font-weight:800;line-height:1.2}
.woocommerce .price del,.woocommerce .ll-product p.price del,.woocommerce .ll-product span.price del{color:var(--n400);opacity:1;font-weight:400}
.woocommerce .price ins,.woocommerce .ll-product p.price ins,.woocommerce .ll-product span.price ins{text-decoration:none;background:none;font-weight:800}
.woocommerce .ll-product .stock,.woocommerce .ll-product p.stock{margin:0;color:var(--n400);font-size:14px}
.woocommerce .ll-product .stock.out-of-stock{color:var(--accent-400)}
.woocommerce .ll-product .woocommerce-product-rating{margin:0;font-size:14px;color:var(--n400)}
.woocommerce .star-rating,.woocommerce .star-rating::before{color:var(--accent-400)}
/* Woo's own form.cart rules target div.product; .ll-product is an <article>, so lay it out here. */
.woocommerce .ll-product form.cart{display:flex;flex-wrap:wrap;gap:8px;align-items:stretch;margin:0}
.woocommerce .ll-product form.cart::before,.woocommerce .ll-product form.cart::after{content:none}
.woocommerce .ll-product form.cart>.variations,.woocommerce .ll-product form.cart>.single_variation_wrap,.woocommerce .ll-product form.cart>table,
.woocommerce .ll-product form.cart>.woocommerce-variation-description{flex:1 0 100%}
.woocommerce .ll-product .woocommerce-variation-add-to-cart{display:flex;flex-wrap:wrap;gap:8px;align-items:stretch}
.woocommerce .ll-product .single_variation_wrap .woocommerce-variation{margin:0 0 12px}
.woocommerce .ll-product form.cart div.quantity,.woocommerce .ll-product form.cart .button{float:none;margin:0}
.woocommerce .ll-product form.cart .reset_variations{visibility:hidden}
.woocommerce .ll-product form.cart .wc-no-matching-variations{display:none}
.woocommerce .ll-product .woocommerce-product-gallery__image a{display:block}
.woocommerce .ll-product form.cart .variations{margin:0 0 16px;border:0}
.woocommerce .ll-product form.cart .variations th,.woocommerce .ll-product form.cart .variations td{display:block;padding:0;line-height:1.6}
.woocommerce .ll-product form.cart .variations tr{display:block;margin:0 0 12px}
.woocommerce .ll-product form.cart .variations label{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--n400)}
.woocommerce .ll-product form.cart .variations select{width:100%;max-width:360px;min-width:0;margin:6px 0 0}
.woocommerce .ll-product form.cart .reset_variations{font-size:13px;font-weight:800}
.woocommerce .ll-product form.cart .woocommerce-variation-price .price{font-size:20px;font-weight:800;color:var(--paper)}
.woocommerce .ll-product form.cart .group_table td{border-bottom:1px solid var(--n700);padding:8px}

/* ==========================================================================
   Cart (shortcode)
   ========================================================================== */
.woocommerce table.cart td.actions{padding:16px 0}
.woocommerce table.cart td.actions .coupon{display:flex;flex-wrap:wrap;gap:8px;align-items:stretch}
.woocommerce table.cart td.actions .coupon::before,.woocommerce table.cart td.actions .coupon::after{display:none}
.woocommerce-cart table.cart td.actions .coupon .input-text,.woocommerce-checkout table.cart td.actions .coupon .input-text,
.woocommerce table.cart td.actions .coupon .input-text{float:none;width:200px;max-width:100%;margin:0;min-height:44px;padding:10px 12px;border:1px solid var(--n500);background:var(--n900);color:var(--paper)}
.woocommerce table.cart td.actions .coupon .button{float:none;margin:0}
.woocommerce table.cart td.actions>.button{float:right;margin:0}
.woocommerce table.cart .product-quantity .qty{margin:0}
.woocommerce .cart-collaterals h2,.woocommerce-cart .cart-collaterals .cart_totals h2{font-size:22px;margin:0 0 12px}
.woocommerce-cart .cart-collaterals .cart_totals table th,.woocommerce-cart .cart-collaterals .cart_totals table td{border-top:0;border-bottom:1px solid var(--n700)}
.woocommerce-cart .cart-collaterals .cart_totals .discount td{color:var(--accent-400)}
.woocommerce-cart .cart-collaterals .cart_totals p small,.woocommerce-cart .cart-collaterals .cart_totals table small{color:var(--n400)}
.woocommerce .wc-proceed-to-checkout{padding:16px 0 0}
.woocommerce .wc-proceed-to-checkout a.checkout-button{display:flex;width:100%;font-size:16px;padding:16px;margin:0 0 12px}
.woocommerce .cart-empty.woocommerce-info{margin-bottom:16px}
.woocommerce .return-to-shop .button{margin:0}

/* ==========================================================================
   Checkout (shortcode) — colours only on #payment; gateway markup untouched.
   ========================================================================== */
.woocommerce form.checkout_coupon,.woocommerce form.login,.woocommerce form.register{margin:0 0 24px;padding:24px;border:var(--rule);border-radius:0!important}
.woocommerce form.checkout_coupon .coupon-error-notice{color:var(--accent-400)}
.woocommerce-checkout #payment,.woocommerce-cart #payment,#add_payment_method #payment{background:var(--n900);border-top:2px solid var(--accent);border-radius:0!important}
.woocommerce-checkout #payment ul.payment_methods,#add_payment_method #payment ul.payment_methods{border-bottom:1px solid var(--n700);padding:16px}
.woocommerce-checkout #payment div.payment_box,#add_payment_method #payment div.payment_box{background:var(--ink);color:var(--paper);border:1px solid var(--n700)}
.woocommerce-checkout #payment div.payment_box::before,#add_payment_method #payment div.payment_box::before{border-bottom-color:var(--n700)}
.woocommerce-checkout #payment div.form-row,#add_payment_method #payment div.form-row{padding:16px}
.woocommerce-checkout #payment .woocommerce-info,.woocommerce-checkout #payment .woocommerce-notice{background:var(--ink)}
.woocommerce #payment #place_order,.woocommerce-page #payment #place_order{width:100%;font-size:16px;padding:16px;float:none}
.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name{font-weight:400}
.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td,.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th{font-size:18px;font-weight:800;border-bottom:var(--rule)}
.woocommerce .woocommerce-terms-and-conditions-wrapper{font-size:14px;color:var(--n400)}
.woocommerce ul.order_details{display:flex;flex-wrap:wrap;gap:0;padding:0;margin:0 0 24px;border-top:var(--rule)}
.woocommerce ul.order_details li{flex:1 1 160px;margin:0;padding:12px 16px 12px 0;border:0;border-bottom:1px solid var(--n700);font-size:13px;color:var(--n400);text-transform:uppercase;letter-spacing:.08em}
.woocommerce ul.order_details li strong{display:block;margin-top:4px;font-size:16px;color:var(--paper);text-transform:none;letter-spacing:0}

/* ==========================================================================
   Cart / checkout blocks
   ========================================================================== */
.wc-block-components-checkout-step,.wc-block-components-order-summary,.wc-block-components-totals-item,.wc-block-components-panel,
.wc-block-cart,.wc-block-checkout,.wc-block-components-sidebar,.wc-block-components-main{color:var(--paper)}
.wc-block-components-checkout-step__title,.wc-block-components-title.wc-block-components-title,.wc-block-cart__totals-title{font-weight:800;color:var(--paper)}
.wc-block-components-checkout-step__description,.wc-block-components-product-metadata,.wc-block-components-totals-item__description,
.wc-block-components-text-input label,.wc-block-components-combobox .wc-block-components-combobox-control label,.wc-blocks-components-select .wc-blocks-components-select__label{color:var(--n400)}
.wc-block-components-checkout-step__container::after,.wc-block-components-checkout-step::after{background:var(--n700)}
.wc-block-components-checkout-step__heading-content a{color:var(--accent-400)}
.wc-block-components-totals-wrapper,.wc-block-components-order-summary-item,.wc-block-cart-items .wc-block-cart-items__row,
.wc-block-cart-items,.wc-block-cart-items th,.wc-block-cart-items td,.wc-block-components-panel{border-color:var(--n700)}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,.wc-block-components-totals-footer-item .wc-block-components-totals-item__label{font-weight:800}
.wc-block-components-sidebar-layout .wc-block-components-main,.wc-block-checkout__sidebar,.wc-block-cart__sidebar{background:transparent}
.wc-block-components-order-summary .wc-block-components-order-summary-item__quantity{background:var(--accent);border-color:var(--accent);color:var(--paper);box-shadow:none}
.wc-block-components-product-badge{border-color:var(--accent-400);color:var(--accent-400)}
.wc-block-components-sale-badge,.wc-block-components-product-sale-badge{background:var(--accent);border-color:var(--accent);color:var(--paper)}
.wc-block-components-quantity-selector{min-height:44px;border-color:var(--n500)}
.wc-block-components-quantity-selector::after{border-color:var(--n500);opacity:1}
.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input,.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button{min-height:44px;color:var(--paper);background:transparent}
.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:hover{color:var(--accent-400)}
.wc-block-components-product-name,.wc-block-cart-item__product a{color:var(--paper);font-weight:800}
.wc-block-components-totals-coupon__form{display:flex;gap:8px}
.wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__button{min-height:44px}
.wc-block-components-button.is-link,.wc-block-components-totals-coupon-link,.wc-block-cart-item__remove-link{color:var(--accent-400)}
.wc-block-components-radio-control__option,.wc-block-components-radio-control-accordion-option{color:var(--paper)}
.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted,
.wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted{box-shadow:none;outline:2px solid var(--accent);outline-offset:-2px}
.wc-block-components-radio-control--highlight-checked::after,.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option{border-color:var(--n700)}
.wc-block-components-radio-control .wc-block-components-radio-control__input{background:var(--n900);border-color:var(--n500)}
.wc-block-components-radio-control .wc-block-components-radio-control__input:checked{border-color:var(--accent)}
.wc-block-components-radio-control .wc-block-components-radio-control__input:checked::before{background:var(--accent)}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]{background:var(--n900);border-color:var(--n500)}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}
.wc-block-components-checkbox .wc-block-components-checkbox__mark{fill:var(--paper)}
.wc-block-components-validation-error,.wc-block-components-text-input.has-error label,.wc-block-components-text-input.has-error input{color:var(--accent-400);border-color:var(--accent-400)}
.wc-block-checkout__actions_row .wc-block-components-checkout-return-to-cart-button{color:var(--accent-400)}
.wc-block-components-checkout-place-order-button,.wc-block-cart__submit-button{width:100%;font-size:16px;padding:16px}

/* ==========================================================================
   Account
   ========================================================================== */
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0 0 24px;padding:0;border-top:var(--rule)}
.woocommerce-account .woocommerce-MyAccount-navigation li{margin:0;border-bottom:var(--rule)}
.woocommerce-account .woocommerce-MyAccount-navigation li a{display:flex;align-items:center;min-height:44px;padding:10px 0;font-size:14px;font-weight:800}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{color:var(--accent-400)}
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{color:var(--accent-400)}
.woocommerce-account .woocommerce-MyAccount-content a:not(.button){color:var(--accent-400)}
.woocommerce-account .woocommerce-MyAccount-content a:not(.button):hover{color:var(--paper)}
.woocommerce-account .addresses .title .edit{color:var(--accent-400)}
.woocommerce form .password-input .show-password-input{top:50%;transform:translateY(-50%);right:12px;color:var(--n400)}
.woocommerce form .password-input .show-password-input::after{color:var(--n400)}
.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme{margin:0 16px 8px 0}
.woocommerce .woocommerce-form-login .woocommerce-form-login__submit{margin:0 0 8px}
.woocommerce .woocommerce-password-strength{background:var(--n900);color:var(--paper);border-top:2px solid var(--n700)}
.woocommerce .woocommerce-password-strength.strong{border-color:var(--paper)}
.woocommerce .woocommerce-password-strength.short,.woocommerce .woocommerce-password-strength.bad{border-color:var(--accent-400)}

/* ==========================================================================
   Pagination (segmented)
   ========================================================================== */
.woocommerce nav.woocommerce-pagination{text-align:left}
.woocommerce nav.woocommerce-pagination ul{display:inline-flex;flex-wrap:wrap;margin:0;border:1px solid var(--n500);border-right:0}
.woocommerce nav.woocommerce-pagination ul li{float:none;border-right:1px solid var(--n500)}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:10px 16px;font-size:13px;font-weight:800;line-height:1.2;color:var(--paper)}
.woocommerce nav.woocommerce-pagination ul li a:hover,.woocommerce nav.woocommerce-pagination ul li a:focus{background:transparent;color:var(--accent-400)}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--accent);color:var(--paper)}
