/*
 * wywa-wp.css — WordPress/WooCommerce-only styling layered on top of wywa-lux.css + wywa-lux-legacy.css.
 * Covers what Shopify rendered itself: notices, checkout, account pages, order tracking, 404.
 */

/* Visually hidden helper (Shopify inlined this in the layout). */
.skip-to-content-link.visually-hidden {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
.skip-to-content-link.visually-hidden:focus {
  position: fixed; top: 8px; left: 8px; width: auto; height: auto; padding: 12px 16px; margin: 0;
  clip: auto; background: #1A1613; color: #F4EEE6; font: 14px/1 "Inter", system-ui, sans-serif; z-index: 1000;
}

/* The live Shopify site kept the browser's default 8px body margin, which shows as a thin ivory
   frame around the hero and footer. Matched here on purpose; delete this rule to go edge-to-edge. */
body.wywa-lux-body { margin: 8px; }

/* WordPress admin bar should not cover the sticky nav when logged in. */
body.admin-bar .wywa-lux-page nav.top { top: 32px; }
@media (max-width: 782px) { body.admin-bar .wywa-lux-page nav.top { top: 0; } }

/* ---- WooCommerce notices (added to cart, coupon applied, errors) ---- */
.woocommerce-notices-wrapper:empty { display: none; }
.wywa-lux-body .woocommerce-message,
.wywa-lux-body .woocommerce-info,
.wywa-lux-body .woocommerce-error {
  list-style: none; margin: 0 0 24px; padding: 14px 16px;
  border: 1px solid var(--line); border-left: 3px solid var(--rose);
  background: var(--ivory-2); color: var(--ink); font-size: 14px; border-radius: 2px;
}
.wywa-lux-body .woocommerce-error { border-left-color: var(--coral-deep); }
.wywa-lux-body .woocommerce-message .button,
.wywa-lux-body .woocommerce-info .button { float: right; font-family: var(--mono); font-size: 11px; letter-spacing: .2em; text-transform: uppercase; text-decoration: underline; text-underline-offset: 3px; }

/* ---- Checkout / My account pages (WooCommerce blocks inside page content) ---- */
.wywa-lux-body .wywa-wc-page { max-width: 1200px; margin: 0 auto; padding: 56px 32px 96px; }
.wywa-lux-body .wywa-wc-page .rte { max-width: none; }
.wywa-lux-body .wywa-wc-page .main-page-title { font-family: var(--serif); font-weight: 400; letter-spacing: -0.015em; font-size: clamp(36px, 4vw, 56px); line-height: 1; margin: 0 0 32px; }
.wywa-lux-body .wc-block-components-button:not(.is-link),
.wywa-lux-body .wc-block-cart__submit-button,
.wywa-lux-body .wc-block-components-checkout-place-order-button {
  background: var(--ink) !important; color: var(--ivory) !important; border-radius: 2px !important;
  font-family: var(--mono) !important; font-size: 12px !important; letter-spacing: .25em !important; text-transform: uppercase !important;
}
.wywa-lux-body .wc-block-components-button:not(.is-link):hover { background: var(--rose) !important; color: var(--ink) !important; }
.wywa-lux-body .wc-block-components-text-input input,
.wywa-lux-body .wc-block-components-combobox .wc-block-components-combobox-control input,
.wywa-lux-body .wc-blocks-components-select .wc-blocks-components-select__select {
  background: var(--ivory) !important; border: 1px solid var(--ink-soft) !important; border-radius: 2px !important; color: var(--ink) !important;
}
.wywa-lux-body .wc-block-components-title,
.wywa-lux-body .wc-block-components-checkout-step__title { font-family: var(--serif) !important; font-weight: 400 !important; }
.wywa-lux-body .wc-block-components-sidebar-layout .wc-block-components-main,
.wywa-lux-body .wc-block-checkout__sidebar { font-family: var(--sans); }
.wywa-lux-body .wc-block-components-order-summary-item__image img { border-radius: 2px; }
.wywa-lux-body .wc-block-components-product-badge { border-color: var(--rose); color: var(--rose-deep); }

/* ---- Order tracking (WooCommerce shortcode form) ---- */
.wywa-lux-page.wywa-track-wrap { background: var(--ivory); color: var(--ink); padding: 72px 0 96px; }
.wywa-track-wrap .container { max-width: 880px; }
.wywa-track-wrap .wywa-contact__intro a { text-decoration: underline; text-underline-offset: 3px; }
.wywa-track form.track_order > p:first-child { font-size: 14px; color: var(--ink-mute); margin: 0 0 24px; }
.wywa-track form.track_order .form-row { display: flex; flex-direction: column; gap: 6px; margin: 0 0 18px; }
.wywa-track form.track_order label { font-family: var(--mono); font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--ink); font-weight: 500; }
.wywa-track form.track_order input.input-text {
  width: 100%; height: 48px; padding: 0 14px; background: var(--ivory); color: var(--ink);
  border: 1px solid var(--ink-soft); border-radius: 2px; font: inherit; font-size: 15px;
}
.wywa-track form.track_order input.input-text:focus { outline: 0; border-color: var(--rose); box-shadow: 0 0 0 3px rgba(200,149,132,.15); }
.wywa-track form.track_order .clear { display: none; }
.wywa-track form.track_order button.button {
  min-width: 220px; padding: 16px 28px; background: var(--ink); color: var(--ivory); border: 0; border-radius: 2px; cursor: pointer;
  font-family: var(--mono); font-size: 12px; letter-spacing: .25em; text-transform: uppercase; transition: background .25s, color .25s;
}
.wywa-track form.track_order button.button:hover { background: var(--rose); color: var(--ink); }
.wywa-track .woocommerce-order-details,
.wywa-track .woocommerce-customer-details { margin-top: 32px; font-size: 14px; }
.wywa-track table { width: 100%; border-collapse: collapse; }
.wywa-track th, .wywa-track td { text-align: left; padding: 10px 0; border-bottom: 1px solid var(--line); }
@media (max-width: 640px) {
  .wywa-lux-page.wywa-track-wrap { padding: 40px 0 56px; }
  .wywa-track form.track_order button.button { width: 100%; min-width: 0; }
}

/* ---- 404 ---- */
.wywa-lux-body .wywa-404 { text-align: center; padding: 96px 20px 120px; }
.wywa-lux-body .wywa-404 p { color: var(--ink-mute); margin: 0 0 28px; }
.wywa-lux-body .wywa-404 .wywa-cart__shop-link {
  display: inline-block; padding: 14px 32px; background: var(--ink); color: var(--ivory);
  font-family: var(--mono); font-size: 11px; letter-spacing: .2em; text-transform: uppercase;
}

/* ---- Order received + My account (WooCommerce classic templates) ---- */
.wywa-lux-body .wywa-wc-page h2,
.wywa-lux-body .wywa-wc-page h3,
.wywa-lux-body .wywa-track h2 { font-family: var(--serif); font-weight: 400; letter-spacing: -0.01em; font-size: 28px; margin: 40px 0 16px; }
.wywa-lux-body ul.woocommerce-order-overview { list-style: none; padding: 0; margin: 24px 0 32px; display: flex; flex-wrap: wrap; gap: 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.wywa-lux-body ul.woocommerce-order-overview li { flex: 1 1 160px; padding: 16px 20px 16px 0; font-family: var(--mono); font-size: 10px; letter-spacing: .2em; text-transform: uppercase; color: var(--ink-mute); }
.wywa-lux-body ul.woocommerce-order-overview li strong { display: block; margin-top: 6px; font-family: var(--serif); font-size: 18px; letter-spacing: 0; text-transform: none; color: var(--ink); font-weight: 400; }
.wywa-lux-body .woocommerce-thankyou-order-received { font-size: 18px; color: var(--ink-soft); }
.wywa-lux-body .wywa-wc-page table.shop_table,
.wywa-lux-body .wywa-wc-page table.woocommerce-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.wywa-lux-body .wywa-wc-page table.shop_table th,
.wywa-lux-body .wywa-wc-page table.shop_table td { text-align: left; padding: 12px 12px 12px 0; border-bottom: 1px solid var(--line); vertical-align: top; }
.wywa-lux-body .wywa-wc-page table.shop_table thead th,
.wywa-lux-body .wywa-wc-page table.shop_table tfoot th { font-family: var(--mono); font-size: 10px; letter-spacing: .2em; text-transform: uppercase; color: var(--ink-mute); font-weight: 400; }
.wywa-lux-body .wywa-wc-page table.shop_table td:last-child,
.wywa-lux-body .wywa-wc-page table.shop_table th:last-child { text-align: right; padding-right: 0; }
.wywa-lux-body .wywa-wc-page address { font-style: normal; line-height: 1.7; border: 1px solid var(--line); padding: 16px 20px; background: var(--ivory-2); }
.wywa-lux-body .woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; margin: 0 0 32px; display: flex; flex-wrap: wrap; gap: 8px 24px; border-bottom: 1px solid var(--line); padding-bottom: 16px; }
.wywa-lux-body .woocommerce-MyAccount-navigation a { font-family: var(--mono); font-size: 11px; letter-spacing: .2em; text-transform: uppercase; color: var(--ink-mute); }
.wywa-lux-body .woocommerce-MyAccount-navigation .is-active a { color: var(--ink); text-decoration: underline; text-underline-offset: 4px; }
.wywa-lux-body .wywa-wc-page form .form-row { display: flex; flex-direction: column; gap: 6px; margin: 0 0 16px; }
.wywa-lux-body .wywa-wc-page form label { font-family: var(--mono); font-size: 11px; letter-spacing: .18em; text-transform: uppercase; }
.wywa-lux-body .wywa-wc-page form .input-text { height: 48px; padding: 0 14px; background: var(--ivory); border: 1px solid var(--ink-soft); border-radius: 2px; font: inherit; }
.wywa-lux-body .wywa-wc-page button.button,
.wywa-lux-body .wywa-wc-page a.button { display: inline-block; padding: 14px 28px; background: var(--ink); color: var(--ivory); border: 0; border-radius: 2px; font-family: var(--mono); font-size: 11px; letter-spacing: .2em; text-transform: uppercase; cursor: pointer; }
.wywa-lux-body .wywa-wc-page button.button:hover,
.wywa-lux-body .wywa-wc-page a.button:hover { background: var(--rose); color: var(--ink); }
.wywa-lux-body .wywa-wc-page .u-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; }
@media (max-width: 768px) {
  .wywa-lux-body .wywa-wc-page { padding: 32px 16px 64px; }
  .wywa-lux-body .wywa-wc-page .u-columns { grid-template-columns: 1fr; gap: 24px; }
}
/* Password "show" toggle relies on WooCommerce's default stylesheet (switched off); hide the empty button. */
.wywa-lux-body .show-password-input { display: none; }
