@layer templates {
  select.native-color-select:not(:focus) { position: absolute; width: 1px; height: 1px; min-height: 0; padding: 0; overflow: hidden; clip-path: inset(50%); }
  .woocommerce-notices-wrapper:not(:empty) { padding: 16px var(--gutter); }
  .woocommerce-message, .woocommerce-info, .woocommerce-error { list-style: none; padding: 20px 24px; margin-block: 16px; border: 1px solid var(--line); background: var(--warm-paper); font-size: 14px; line-height: 1.5; }
  .woocommerce-error { color: var(--error); border-color: var(--error); background: white; }.woocommerce-message a, .woocommerce-info a { text-decoration: underline; text-underline-offset: 4px; }.woocommerce-message .button { margin-right: 16px; }
  .woocommerce .quantity { margin-bottom: 16px; }.woocommerce .quantity label { font-size: 13px; }.woocommerce .quantity input { width: 88px; text-align: center; }.woocommerce .stock { font-size: 13px; margin-block: 16px; }.woocommerce .out-of-stock { color: var(--muted); }
  .variations { width: 100%; border-collapse: collapse; margin-bottom: 20px; }.variations tr { display: block; }.variations th, .variations td { display: block; padding: 0; text-align: left; }.variations th { font-weight: 400; margin-bottom: 8px; }.variations td select { width: 100%; }.variations .reset_variations { display: inline-flex; align-items: center; min-height: 44px; font-size: 12px; text-decoration: underline; text-underline-offset: 4px; }.variations .reset_variations_alert { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }.woocommerce-variation-price { margin-bottom: 20px; }.woocommerce-variation-description { font-size: 14px; margin-bottom: 16px; }.woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button { opacity: .42; cursor: not-allowed; }.woocommerce .single_add_to_cart_button.disabled { pointer-events: none; }
  .cart-drawer-content { padding: 24px; }.cart-error { color: var(--error); padding-inline: 24px; font-size: 14px; }
  .woocommerce-mini-cart { list-style: none; padding: 0; }.woocommerce-mini-cart-item { display: grid; grid-template-columns: 1fr 32px; border-bottom: 1px solid var(--line); padding-block: 24px; position: relative; font-size: 14px; }.woocommerce-mini-cart-item > a:not(.remove) { grid-column: 1; grid-row: 1; display: block; min-height: 120px; padding-left: 112px; }.woocommerce-mini-cart-item img { position: absolute; left: 0; top: 24px; width: 88px; height: 110px; object-fit: contain; background: var(--soft-gray); }.woocommerce-mini-cart-item .remove { grid-column: 2; grid-row: 1; display: flex; width: 44px; height: 44px; justify-content: center; align-items: center; font-size: 24px; }.woocommerce-mini-cart-item .quantity { padding-left: 112px; font-size: 13px; grid-column: 1; margin-top: 8px; }.woocommerce-mini-cart-item dl { padding-left: 112px; grid-column: 1; font-size: 12px; margin: 8px 0 0; }.woocommerce-mini-cart-item dt { float: left; margin-right: 4px; }.woocommerce-mini-cart-item dd { margin: 0; }.woocommerce-mini-cart-item dd p { margin: 0; }
  .woocommerce-mini-cart__total { display: flex; justify-content: space-between; padding-top: 24px; font-size: 16px; }.woocommerce-mini-cart__total strong { font-weight: 400; }.woocommerce-mini-cart__buttons { display: grid; gap: 12px; margin-top: 24px; }.woocommerce-mini-cart__buttons .button:first-child { background: transparent; color: var(--ink); }.woocommerce-mini-cart__empty-message { text-align: center; padding-block: 64px; font-size: 18px; }
  .shop_table { width: 100%; border-collapse: collapse; text-align: left; font-size: 14px; }.shop_table th { font-weight: 400; color: var(--muted); }.shop_table th, .shop_table td { padding: 20px 16px; border-bottom: 1px solid var(--line); }.shop_table .product-thumbnail { width: 144px; }.shop_table .product-thumbnail img { width: 112px; height: 140px; object-fit: contain; background: var(--soft-gray); }.shop_table .product-remove { width: 44px; padding-inline: 0; }.shop_table .product-remove a { display: flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; font-size: 24px; }.shop_table .quantity { margin-bottom: 0; }.shop_table .product-name a { text-decoration: none; font-size: 16px; }.shop_table .variation { font-size: 13px; margin-block: 8px; }.shop_table .variation dt { float: left; margin-right: 4px; }.shop_table .variation dd { margin: 0; }.shop_table .variation dd p { margin: 0; }.shop_table .actions { text-align: right; }.shop_table .coupon { display: flex; align-items: center; gap: 12px; float: left; }.shop_table .coupon label { position: absolute; clip-path: inset(50%); width: 1px; height: 1px; overflow: hidden; }.shop_table .coupon input { width: 160px; }.shop_table .coupon .button { background: transparent; color: var(--ink); }
  .cart-collaterals { display: flex; justify-content: flex-end; margin-top: 64px; }.cart_totals { width: min(100%,480px); }.cart_totals h2 { font-size: 24px; margin-bottom: 24px; }.cart_totals .shop_table td, .cart_totals .shop_table th { padding-inline: 0; }.cart_totals .shop_table td { text-align: right; }.wc-proceed-to-checkout { margin-top: 24px; }.wc-proceed-to-checkout .button { width: 100%; }.shipping-calculator-form { text-align: left; }.shipping-calculator-button { font-size: 13px; }.woocommerce-shipping-methods { list-style: none; padding: 0; }.woocommerce-shipping-methods label { display: inline; margin-left: 8px; }.woocommerce-shipping-destination { font-size: 13px; }
  form.checkout { display: grid; grid-template-columns: minmax(0,3fr) minmax(0,2fr); column-gap: 64px; align-items: start; }.checkout :where(#customer_details) { grid-column: 1; grid-row: 1/4; }.checkout :where(#order_review_heading) { grid-column: 2; margin-bottom: 24px; }.checkout :where(#order_review) { grid-column: 2; background: var(--warm-paper); padding: 32px; }.checkout .col-1, .checkout .col-2 { width: 100%; float: none; }.checkout h3 { font-size: 22px; margin-bottom: 24px; }.checkout .col-2 { margin-top: 40px; }.form-row { margin-bottom: 20px; }.form-row label { display: block; font-size: 14px; }.form-row .required { color: var(--error); text-decoration: none; }.form-row-first, .form-row-last { width: calc(50% - 12px); float: left; }.form-row-last { float: right; }.form-row-wide { clear: both; }.woocommerce-input-wrapper { display: block; }.woocommerce-invalid input { border-color: var(--error); }.woocommerce-billing-fields__field-wrapper::after { display: block; clear: both; content: ''; }.woocommerce-form__label-for-checkbox { min-height: 44px; display: flex; gap: 12px; align-items: center; }.woocommerce-form__label-for-checkbox input { margin-right: 8px; }.woocommerce-checkout-payment { margin-top: 32px; }.wc_payment_methods { list-style: none; padding: 0; }.wc_payment_methods li { border-bottom: 1px solid var(--line); padding-block: 16px; }.wc_payment_methods label { display: inline; margin-left: 8px; }.payment_box { margin-top: 16px; font-size: 14px; }.payment_box p { line-height: 1.5; }.place-order { margin-top: 24px; }.place-order .button { width: 100%; }.woocommerce-privacy-policy-text { font-size: 13px; margin-block: 24px; }.woocommerce-checkout-review-order-table th, .woocommerce-checkout-review-order-table td { padding-inline: 0; font-size: 14px; }.woocommerce-checkout-review-order-table td:last-child { text-align: right; }.woocommerce-terms-and-conditions-wrapper { font-size: 13px; }.woocommerce-terms-and-conditions-wrapper input { margin-right: 8px; }
  .woocommerce-account .woocommerce { display: flow-root; }.woocommerce-MyAccount-navigation { float: left; width: 240px; padding-right: 32px; }.woocommerce-MyAccount-navigation ul { padding: 0; list-style: none; }.woocommerce-MyAccount-navigation a { display: flex; align-items: center; min-height: 52px; border-bottom: 1px solid var(--line); font-size: 14px; }.woocommerce-MyAccount-navigation .is-active a { font-weight: 600; }.woocommerce-MyAccount-content { margin-left: 280px; }.woocommerce-MyAccount-content .button { font-size: 13px; }.woocommerce-form-login, .woocommerce-form-register { max-width: 560px; margin-top: 24px; }.woocommerce-form-login .button { margin-top: 16px; }.lost_password a { text-decoration: underline; font-size: 14px; }.woocommerce-EditAccountForm fieldset { border: 1px solid var(--line); padding: 24px; margin: 32px 0; }.woocommerce-EditAccountForm legend { padding: 0 8px; }.woocommerce-Addresses { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; margin-top: 32px; }.woocommerce-Address-title h2 { margin-bottom: 16px; font-size: 22px; }.woocommerce-Address address { font-size: 14px; font-style: normal; }.woocommerce-order-overview { display: flex; flex-wrap: wrap; gap: 24px; padding: 0; list-style: none; margin-block: 32px; }.woocommerce-order-overview li { display: grid; gap: 8px; font-size: 13px; }
  .woocommerce .select2-container { width: 100%; }.woocommerce .select2-selection--single { border: 1px solid var(--line); border-radius: 0; min-height: 48px; }.woocommerce .select2-selection__rendered { line-height: 46px; padding-left: 12px; }.woocommerce .select2-selection__arrow { top: 10px; }
  .woocommerce ul.products { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 40px 24px; list-style: none; padding: 0; }.woocommerce ul.products img { width: 100%; aspect-ratio: 4/5; object-fit: contain; background: var(--soft-gray); }.woocommerce ul.products h2 { font-size: 18px; margin-top: 16px; }.woocommerce ul.products .button { margin-top: 16px; }.woocommerce ul.products .price { display: block; margin-top: 12px; }
  @media(max-width:1023px) { form.checkout { column-gap: 32px; }.checkout :where(#order_review) { padding: 24px; }.shop_table .coupon { float: none; margin-bottom: 16px; }.woocommerce-MyAccount-navigation { width: 200px; }.woocommerce-MyAccount-content { margin-left: 224px; } }
  @media(max-width:767px) {
    .cart-drawer-content { padding: 16px; }.shop_table.cart, .shop_table.cart tbody { display: block; }.shop_table.cart thead { display: none; }.shop_table.cart tr.cart_item { display: grid; grid-template-columns: 92px 1fr 44px; gap: 12px; padding-block: 24px; border-bottom: 1px solid var(--line); }.shop_table.cart td { border: 0; padding: 0; }.shop_table.cart .product-thumbnail { grid-column: 1; grid-row: 1/5; width: 92px; }.shop_table.cart .product-thumbnail img { width: 88px; height: 110px; }.shop_table.cart .product-name { grid-column: 2; grid-row: 1; }.shop_table.cart .product-remove { grid-column: 3; grid-row: 1; }.shop_table.cart .product-price { grid-column: 2; grid-row: 2; font-size: 13px; }.shop_table.cart .product-quantity { grid-column: 2; grid-row: 3; }.shop_table.cart .product-subtotal { grid-column: 2; grid-row: 4; }.shop_table.cart td.actions { display: block; padding-top: 24px; }.shop_table.cart .coupon { flex-wrap: wrap; gap: 8px; }.shop_table.cart .coupon input { width: min(160px,100%); flex: 1; }.shop_table.cart .coupon button { padding-inline: 16px; }.cart-collaterals { margin-top: 48px; }.cart_totals { width: 100%; }
    form.checkout { display: block; }.checkout :where(#order_review_heading) { margin-top: 48px; }.checkout :where(#order_review) { padding: 24px 16px; margin-inline: -16px; }.form-row-first, .form-row-last { float: none; width: 100%; }.woocommerce-MyAccount-navigation { float: none; width: 100%; padding: 0; margin-bottom: 32px; }.woocommerce-MyAccount-content { margin: 0; overflow-x: auto; }.woocommerce-Addresses { grid-template-columns: 1fr; }.woocommerce table.woocommerce-orders-table { font-size: 12px; }.woocommerce-orders-table td, .woocommerce-orders-table th { padding: 12px 8px; }.woocommerce ul.products { grid-template-columns: 1fr 1fr; gap: 32px 12px; }.woocommerce-message .button { margin-bottom: 12px; }
  }
}
/* Third-party block styles are unlayered. Keep these compatibility rules unlayered. */
.ruan .wc-block-components-button:not(.is-link) { border-radius: 0; background: #111; color: #fff; min-height: 52px; box-shadow: none; }
.ruan .wc-block-components-text-input input, .ruan .wc-block-components-combobox-control input { border-radius: 0; min-height: 52px; }
.ruan .wc-block-components-product-name { color: #111; text-decoration: none; }
.ruan .wc-block-components-notice-banner { border-radius: 0; border-color: rgba(17,17,17,.18); background: #f5f3ef; color: #111; }
.ruan .wc-block-cart__submit-container::before { box-shadow: none; }
.ruan .wc-block-checkout, .ruan .wc-block-cart { font-family: var(--ui); }

/* v7 account/cart/checkout finishing */
.ruan .woocommerce-MyAccount-navigation-link--ruan-favorites a::after{content:'♡';margin-left:auto;font-size:16px}
.ruan .woocommerce-form-login,.ruan .woocommerce-form-register{padding-top:8px}
.ruan .woocommerce-form-login__rememberme{display:flex;align-items:center;gap:8px;min-height:44px}
.ruan .woocommerce-Address-title{display:flex;align-items:center;justify-content:space-between;gap:20px}
.ruan .woocommerce-Address-title .edit{font-size:12px;text-decoration:underline;text-underline-offset:3px}
.ruan .woocommerce-thankyou-order-received{font-size:22px;margin-bottom:28px}
.ruan .woocommerce-order-details,.ruan .woocommerce-customer-details{margin-top:48px}
.ruan .woocommerce-order-details h2,.ruan .woocommerce-customer-details h2{font-size:24px;margin-bottom:20px}
.ruan .woocommerce-customer-details address{font-style:normal;line-height:1.6;border:1px solid var(--line);padding:24px}
@media(max-width:767px){
  .ruan .woocommerce-Address-title{align-items:flex-start}
  .ruan .woocommerce-thankyou-order-received{font-size:19px}
}
