/* WordPress and WooCommerce pages in the Lens & Co design. */

/* Admin bar offset for the sticky header */
.admin-bar header.site{top:32px}
@media (max-width:782px){.admin-bar header.site{top:46px}}
@media (max-width:600px){.admin-bar header.site{top:0}}

.lc-page{padding-bottom:20px}
.lc-page .doc{max-width:760px}
.lc-page .doc img{height:auto}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

/* Pagination */
.lc-pager .nav-links,.woocommerce-pagination ul{display:flex;gap:6px;flex-wrap:wrap;list-style:none;padding:0;margin:30px 0}
.lc-pager .page-numbers,.woocommerce-pagination .page-numbers{display:inline-flex;min-width:40px;height:40px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:var(--r);padding:0 10px}
.lc-pager .current,.woocommerce-pagination .current{background:var(--solid);color:var(--on-solid);border-color:var(--solid)}

/* ---------- WooCommerce: cart, checkout, account ---------- */
.lc-wc-body,.lc-wc{color:var(--ink);font-family:var(--body)}
.lc-wc-body{max-width:none}
.lc-wc-body h2,.lc-wc-body h3,.lc-wc h2,.lc-wc h3{font-family:var(--display);letter-spacing:-.015em}
.lc-wc-body a:not(.btn):not(.wc-block-components-button):not(.button){text-decoration:underline;text-underline-offset:3px}

/* Buttons (block and classic) */
.wc-block-components-button:not(.is-link),
.wp-block-button__link,
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt{
  background:var(--solid)!important;color:var(--on-solid)!important;border:1px solid var(--solid)!important;border-radius:var(--r)!important;
  font-family:var(--label)!important;font-size:12.5px!important;letter-spacing:.16em!important;text-transform:uppercase!important;font-weight:700!important;
  padding:15px 26px!important;min-height:50px;box-shadow:none!important;text-decoration:none!important;transition:background .18s,color .18s,border-color .18s}
.wc-block-components-button:not(.is-link):hover,.wp-block-button__link:hover,
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:var(--sun)!important;border-color:var(--sun)!important;color:#111!important}
.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button{background:var(--sun)!important;border-color:var(--sun)!important;color:#111!important}
.wc-block-cart__submit-button:hover,.wc-block-components-checkout-place-order-button:hover{background:var(--sun-deep)!important;border-color:var(--sun-deep)!important}

/* Form fields */
.wc-block-components-text-input input,.wc-block-components-textarea,.wc-blocks-components-select__select,
.wc-block-components-combobox .wc-block-components-combobox-control input,
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.woocommerce .quantity .qty,
.select2-container .select2-selection--single{
  background:var(--card)!important;color:var(--ink)!important;border:1px solid var(--line-2)!important;border-radius:var(--r)!important}
.wc-block-components-text-input label,.wc-blocks-components-select__label,.wc-block-components-combobox label{color:var(--ink-soft)!important}
.wc-block-components-text-input.is-active input,.wc-block-components-text-input input:focus{border-color:var(--ink)!important;box-shadow:0 0 0 1px var(--ink)!important}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]{background:var(--card);border-color:var(--line-2)}
.wc-block-components-radio-control__input{background:var(--card)!important;border-color:var(--line-2)!important}
.wc-block-components-radio-control__input:checked::before{background:var(--ink)!important}

/* Panels and totals */
.wc-block-components-sidebar .wc-block-components-panel,.wc-block-components-totals-wrapper{border-color:var(--line)!important}
.wc-block-components-sidebar-layout .wc-block-components-sidebar{background:var(--paper-2);border:1px solid var(--line);border-radius:6px;padding:22px!important}
.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-family:var(--display);font-size:20px;font-weight:800}
.wc-block-components-product-name{font-family:var(--label);font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:13.5px!important;color:var(--ink)!important;text-decoration:none!important}
.wc-block-components-product-metadata{color:var(--ink-soft)}
.wc-block-cart-items th,.wc-block-cart-items td{border-color:var(--line)!important}
.wc-block-cart-item__image img{border-radius:4px;background:var(--paper-2)}
.wc-block-components-formatted-money-amount{font-variant-numeric:tabular-nums}
.wc-block-components-quantity-selector{border-color:var(--line-2)!important}
.wc-block-components-quantity-selector input{color:var(--ink)!important;background:transparent}
.wc-block-components-title,.wc-block-components-checkout-step__title{font-family:var(--display)!important;font-weight:700!important;letter-spacing:-.01em}
.wc-block-components-checkout-step__description{color:var(--ink-soft)}
.wc-block-cart__empty-cart__title{font-family:var(--display)}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__products{display:none}

/* Notices */
.wc-block-components-notice-banner,.woocommerce-message,.woocommerce-info,.woocommerce-error{
  border:1px solid var(--line)!important;border-left:4px solid var(--sun)!important;background:var(--paper-2)!important;color:var(--ink)!important;border-radius:var(--r)!important;box-shadow:none!important}
.wc-block-components-notice-banner.is-error,.woocommerce-error{border-left-color:var(--err)!important;background:var(--err-bg)!important}
.woocommerce-message::before,.woocommerce-info::before{color:var(--ink)!important}

/* Classic cart and checkout (if the store switches to shortcodes) */
.woocommerce table.shop_table{border-color:var(--line);border-radius:6px}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{border-color:var(--line)}
.woocommerce-checkout #payment{background:var(--paper-2)!important;border-radius:6px}
.woocommerce-checkout #payment div.payment_box{background:var(--paper-3)!important;color:var(--ink)!important}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--paper-3)!important}

/* My account */
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0;border:1px solid var(--line);border-radius:6px;overflow:hidden}
.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:12px 16px;border-bottom:1px solid var(--line);text-decoration:none!important}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{background:var(--solid);color:var(--on-solid)}

/* Native product page (only used for products not yet in the storefront catalogue) */
.lc-wc div.product{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;padding-top:10px}
.lc-wc div.product .woocommerce-product-gallery,.lc-wc div.product .summary{width:auto!important;float:none!important}
.lc-wc div.product .product_title{font-family:var(--label);font-weight:600;letter-spacing:.18em;text-transform:uppercase;font-size:clamp(26px,3vw,36px)}
.lc-wc div.product p.price{color:var(--ink)!important;font-family:var(--display);font-size:24px;font-weight:800}
.lc-wc div.product .woocommerce-tabs,.lc-wc div.product .related,.lc-wc div.product .upsells{grid-column:1/-1}
.lc-wc table.variations select{min-height:46px;padding:0 12px;border:1px solid var(--line-2);border-radius:var(--r);background:var(--card);color:var(--ink)}
@media (max-width:860px){.lc-wc div.product{grid-template-columns:1fr}}

/* Dark mode tweaks for WooCommerce blocks */
html.is-dark .wc-block-components-sidebar-layout .wc-block-components-sidebar{background:var(--paper-2)}
html.is-dark .wc-block-components-totals-item,html.is-dark .wc-block-components-order-summary-item,html.is-dark .wc-block-components-product-price{color:var(--ink)}
html.is-dark .wc-block-components-text-input input::placeholder{color:var(--ink-soft)}
html.is-dark .select2-dropdown{background:var(--paper);color:var(--ink)}

/* Keep cart and checkout lines short: hide long product descriptions */
.wc-block-components-product-metadata__description{display:none}
