/* GENERATED by tools/build-theme-css.py; edit the source modules. */

/* tokens.css */
/* Visual source: /DESIGN.md. Commerce geometry is intentionally unchanged. */
:root {
--d1-green:#18332f;
    --d1-ink:#142a28;
    --d1-muted:#52605b;
    --d1-orange:#cf430b;
    --d1-hover:#ac3508;
    --d1-warm:#f7f4ef;
    --d1-border:#ddd9d2;
    --d1-focus:#175a87;
--lo-color-ink: var(--d1-ink);
    --lo-color-surface: var(--d1-warm);
    --lo-color-paper: #ffffff;
    --lo-color-muted: var(--d1-muted);
    --lo-color-line: var(--d1-border);
    --lo-color-accent: var(--d1-orange);
    --lo-color-accent-dark: var(--d1-hover);
    --lo-color-link: var(--lo-color-ink);
    --lo-color-link-hover: var(--lo-color-accent-dark);
    --lo-field-background: var(--lo-color-paper);
    --lo-field-border: #7b827d;
    --lo-field-focus: var(--d1-focus);
    --lo-field-placeholder: var(--lo-color-muted);
    --lo-field-disabled-background: var(--lo-color-surface);
    --lo-field-disabled-text: var(--lo-color-muted);
    --lo-color-info: var(--lo-color-accent);
    --lo-color-success: var(--lo-color-ink);
    --lo-color-warning: #7a4f13;
    --lo-color-error: #b42318;
    --lo-color-validation-error: var(--lo-color-error);
    --lo-color-destructive: var(--lo-color-error);
    --lo-color-disabled: var(--lo-color-muted);
    --lo-table-header-background: var(--lo-color-surface);
    --lo-table-border: var(--lo-color-line);
    --lo-price-color: var(--lo-color-ink);
    --lo-price-regular-color: var(--lo-color-muted);
    --lo-price-sale-color: var(--lo-color-ink);
    --lo-shadow-sm: 0 1px 2px rgba(23, 32, 31, 0.08);
    --lo-shadow-md: 0 12px 30px rgba(23, 32, 31, 0.1);
    --lo-radius-sm: 0.25rem;
    --lo-radius-md: 0.5rem;
    --lo-space-1: 0.25rem;
    --lo-space-2: 0.5rem;
    --lo-space-3: 0.75rem;
    --lo-space-4: 1rem;
    --lo-space-5: 1.5rem;
    --lo-space-6: 2rem;
    --lo-space-8: 3rem;
    --lo-space-10: 4.5rem;
    --lo-container: 90rem;
    --lo-content: 72rem;
    --lo-font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --lo-font-size-body: 1rem;
    --lo-font-size-page-title: clamp(1.9rem, 4vw, 3rem);
    --lo-font-size-section-heading: 1.5rem;
    --lo-font-size-component-title: 1rem;
    --lo-font-size-label: 0.875rem;
    --lo-font-size-metadata: 0.75rem;
    --lo-line-height-body: 1.55;
    --lo-line-height-heading: 1.15;
    --lo-line-height-component: 1.25;
    --lo-line-height-label: 1.2;
    --lo-line-height-metadata: 1.35;
    --lo-font-size: var(--lo-font-size-body);
    --lo-line-height: var(--lo-line-height-body);
}

/* base.css */
*,
*::before,
*::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
    margin: 0;
    background: var(--lo-color-surface);
    color: var(--lo-color-ink);
    font-family: var(--lo-font-sans);
    font-size: var(--lo-font-size);
    line-height: var(--lo-line-height);
}

img { display: block; max-width: 100%; height: auto; }

a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 0.16em; }
a:hover { color: var(--lo-color-link-hover); }

button, input, select, textarea { font: inherit; }

:focus-visible { outline: 3px solid var(--lo-field-focus); outline-offset: 3px; }

.screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.screen-reader-text:focus {
    z-index: 100000;
    top: var(--lo-space-2);
    left: var(--lo-space-2);
    width: auto;
    height: auto;
    padding: var(--lo-space-3) var(--lo-space-4);
    margin: 0;
    overflow: visible;
    clip: auto;
    background: var(--lo-color-paper);
    box-shadow: var(--lo-shadow-md);
}

.page-title, .entry-title { margin: 0 0 var(--lo-space-4); line-height: var(--lo-line-height-heading); }
.page-title { font-size: var(--lo-font-size-page-title); }

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }

    .lo-category-card__link,
    .lo-catalog-filter-drawer,
    .lo-catalog-filter-backdrop {
        transition-duration: 0.01ms !important;
    }
}

/* layout.css */
.lo-container {
    width: min(calc(100% - 2rem), var(--lo-container));
    margin-inline: auto;
}

.site-main { min-height: 52vh; padding-block: var(--lo-space-8); }
.site-main--home { min-height: 0; padding-top: var(--lo-space-5); }
.lo-content-grid { display: grid; gap: var(--lo-space-6); }
.lo-content-flow { width: min(100%, var(--lo-content)); }
.lo-category-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--lo-space-4); }

.lo-header-main {
    display: grid;
    grid-template-columns: minmax(9rem, 17rem) minmax(16rem, 1fr) auto;
    gap: var(--lo-space-5);
    align-items: center;
    min-height: 5.5rem;
}

.site-footer { padding-block: var(--lo-space-8) var(--lo-space-5); background: var(--lo-color-ink); color: var(--lo-color-paper); }
.lo-footer-grid { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--lo-space-6); }
.site-footer__bottom { margin-top: var(--lo-space-6); padding-top: var(--lo-space-4); border-top: 1px solid rgba(255, 255, 255, 0.2); color: rgba(255, 255, 255, 0.72); }

@media (max-width: 1100px) {
    .lo-category-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 800px) {
    .lo-header-main { grid-template-columns: 1fr auto; min-height: 4.75rem; }
    .lo-header-search { grid-column: 1 / -1; grid-row: 2; padding-bottom: var(--lo-space-4); }
    .lo-footer-grid { grid-template-columns: 1fr; }
    .site-main { padding-block: var(--lo-space-6); }
    .site-main--home { padding-top: var(--lo-space-4); }
    .lo-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 339px) {
    .lo-category-grid { grid-template-columns: 1fr; }
}

/* components.css */
.lo-utility-bar { padding-block: var(--lo-space-2); background: var(--lo-color-ink); color: var(--lo-color-paper); font-size: 0.875rem; }
.site-header { position: relative; background: var(--lo-color-paper); box-shadow: var(--lo-shadow-sm); }
.site-title { color: var(--lo-color-ink); font-size: 1.2rem; font-weight: 750; text-decoration: none; }
.custom-logo-link { display: inline-flex; max-width: 14rem; }
.custom-logo { width: auto; max-height: 3rem; }

.lo-header-search .woocommerce-product-search, .lo-header-search .search-form { display: flex; }
.lo-header-search input[type="search"] { width: 100%; min-height: 2.8rem; border: 1px solid var(--lo-color-line); border-radius: var(--lo-radius-sm) 0 0 var(--lo-radius-sm); padding-inline: var(--lo-space-3); }
.lo-header-search button { border: 0; background: var(--lo-color-ink); color: var(--lo-color-paper); padding-inline: var(--lo-space-4); border-radius: 0 var(--lo-radius-sm) var(--lo-radius-sm) 0; cursor: pointer; }

.lo-header-actions { display: flex; align-items: center; gap: var(--lo-space-3); }
.lo-header-action { display: inline-flex; align-items: center; gap: var(--lo-space-2); font-size: 0.925rem; font-weight: 650; text-decoration: none; white-space: nowrap; }
.lo-cart-count { display: grid; min-width: 1.35rem; min-height: 1.35rem; place-items: center; border-radius: 999px; background: var(--lo-color-accent); color: var(--lo-color-paper); font-size: 0.75rem; }
.lo-nav-toggle { display: none; border: 1px solid var(--lo-color-line); border-radius: var(--lo-radius-sm); background: var(--lo-color-paper); color: var(--lo-color-ink); padding: var(--lo-space-2); cursor: pointer; }
.lo-nav-toggle svg { display: block; width: 1.4rem; height: 1.4rem; fill: none; stroke: currentcolor; stroke-width: 2; }

.lo-primary-nav-wrap { position: relative; z-index: 10; border-top: 1px solid var(--lo-color-line); }
.primary-menu, .footer-menu { display: flex; flex-wrap: wrap; gap: var(--lo-space-4); padding: 0; margin: 0; list-style: none; }
.primary-menu li { position: relative; }
.primary-menu > li > a { display: block; padding-block: var(--lo-space-3); font-size: 0.925rem; font-weight: 700; text-decoration: none; }
.primary-menu .sub-menu { position: absolute; z-index: 20; top: 100%; left: 0; display: none; min-width: 14rem; padding: var(--lo-space-2); margin: 0; list-style: none; background: var(--lo-color-paper); border: 1px solid var(--lo-color-line); box-shadow: var(--lo-shadow-md); }
.primary-menu .sub-menu a { display: block; padding: var(--lo-space-2) var(--lo-space-3); text-decoration: none; white-space: nowrap; }
.primary-menu li:hover > .sub-menu, .primary-menu li:focus-within > .sub-menu { display: block; }
.primary-menu .sub-menu .sub-menu { top: calc(var(--lo-space-2) * -1); left: calc(100% + var(--lo-space-2)); }
.footer-menu { gap: var(--lo-space-3); }
.footer-menu a { color: rgba(255, 255, 255, 0.8); }
.site-footer__brand { margin: 0; font-size: 1.1rem; font-weight: 750; }
.site-footer__note { margin: var(--lo-space-2) 0 0; color: rgba(255, 255, 255, 0.72); }

.entry-card, .entry-content, .lo-empty-state { padding: var(--lo-space-6); background: var(--lo-color-paper); border: 1px solid var(--lo-color-line); border-radius: var(--lo-radius-sm); }
.entry-card + .entry-card { margin-top: var(--lo-space-4); }
.entry-title a { text-decoration: none; }
.lo-eyebrow { margin: 0 0 var(--lo-space-2); color: var(--lo-color-accent); font-size: 0.825rem; font-weight: 750; letter-spacing: 0.08em; text-transform: uppercase; }
.lo-home-categories { padding-block: var(--lo-space-5) var(--lo-space-8); }
.lo-homepage-editor-content + .lo-home-categories { margin-top: var(--lo-space-8); padding-top: var(--lo-space-8); border-top: 1px solid var(--lo-color-line); }
.lo-section-header { display: flex; align-items: end; justify-content: space-between; gap: var(--lo-space-5); margin-bottom: var(--lo-space-5); }
.lo-section-header h2 { margin: 0; font-size: clamp(1.5rem, 3vw, 2.2rem); line-height: 1.15; }
.lo-section-header p { max-width: 32rem; margin: 0; color: var(--lo-color-muted); }
.lo-category-card { min-width: 0; }
.lo-category-card__link { display: block; height: 100%; overflow: hidden; background: var(--lo-color-paper); border: 1px solid var(--lo-color-line); border-radius: var(--lo-radius-sm); text-decoration: none; transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease; }
.lo-category-card__link:hover { color: inherit; border-color: var(--lo-color-accent); box-shadow: var(--lo-shadow-sm); transform: translateY(-2px); }
.lo-category-card__link:focus-visible { outline-offset: 4px; }
.lo-category-card__media { position: relative; aspect-ratio: 4 / 3; overflow: hidden; background: #e6e9e4; }
.lo-category-card__media img { width: 100%; height: 100%; object-fit: cover; }
.lo-category-card__placeholder { display: block; width: 100%; height: 100%; background: #d8ddd7; }
.lo-category-card__body { display: flex; align-items: baseline; justify-content: space-between; gap: var(--lo-space-3); padding: var(--lo-space-4); }
.lo-category-card__body h3 { margin: 0; font-size: 1rem; line-height: 1.25; }
.lo-category-card__body span { color: var(--lo-color-muted); font-size: 0.8rem; white-space: nowrap; }
.lo-catalog-cta { margin: var(--lo-space-5) 0 0; }
.lo-catalog-cta a { display: inline-flex; padding: var(--lo-space-3) var(--lo-space-4); border: 1px solid var(--lo-color-ink); border-radius: var(--lo-radius-sm); font-weight: 700; text-decoration: none; }
.lo-catalog-cta a:hover { background: var(--lo-color-ink); color: var(--lo-color-paper); }

@media (max-width: 800px) {
    .lo-nav-toggle { display: block; }
    .lo-primary-nav-wrap { display: none; }
    .site-header.is-navigation-open .lo-primary-nav-wrap { position: absolute; z-index: 20; top: 100%; right: 0; left: 0; display: block; background: var(--lo-color-paper); box-shadow: var(--lo-shadow-md); }
    .primary-menu { flex-direction: column; gap: 0; padding-block: var(--lo-space-2); }
    .primary-menu > li > a { padding-block: var(--lo-space-3); }
    .primary-menu .sub-menu, .primary-menu .sub-menu .sub-menu { position: static; display: block; min-width: 0; padding: 0 0 0 var(--lo-space-4); margin: 0; border: 0; box-shadow: none; }
    .primary-menu .sub-menu a { padding-block: var(--lo-space-2); white-space: normal; }
    .lo-section-header { align-items: start; flex-direction: column; gap: var(--lo-space-2); }
    .lo-home-categories { padding-top: var(--lo-space-4); padding-bottom: var(--lo-space-6); }
    .lo-homepage-editor-content + .lo-home-categories { margin-top: var(--lo-space-6); padding-top: var(--lo-space-6); }
    .lo-category-card__body { display: block; padding: var(--lo-space-3); }
    .lo-category-card__body h3 { font-size: 0.95rem; }
    .lo-category-card__body span { display: block; margin-top: var(--lo-space-1); font-size: 0.75rem; white-space: normal; }
}

/* NinjaTeam floating chat: clear the actual mobile navigation/purchase bar. */
@media (max-width: 767px) {
    body.lo-whatsapp-layout .wa__btn_popup {
        left: auto !important;
        right: max(16px, env(safe-area-inset-right)) !important;
        bottom: var(--lo-whatsapp-bottom, calc(80px + env(safe-area-inset-bottom))) !important;
        z-index: 1050;
    }
    body.lo-whatsapp-layout .wa__btn_popup .wa__btn_popup_icon { width: 56px; height: 56px; }
    body.lo-whatsapp-layout .wa__btn_popup_txt { display: none !important; }
    body.lo-whatsapp-layout .wa__popup_chat_box {
        left: auto !important;
        right: max(16px, env(safe-area-inset-right)) !important;
        bottom: calc(var(--lo-whatsapp-bottom, 80px) + 72px) !important;
        width: min(351px, calc(100vw - 32px));
        max-width: calc(100vw - 32px);
        max-height: calc(100dvh - var(--lo-whatsapp-bottom, 80px) - 96px);
        overflow-y: auto;
        z-index: 1050;
    }
    body.lo-whatsapp-layout.lo-whatsapp-obscured .wa__btn_popup,
    body.lo-whatsapp-layout.lo-whatsapp-obscured .wa__popup_chat_box {
        visibility: hidden !important;
        pointer-events: none !important;
    }
}

/* buttons.css */
/* Shared first-party button primitives. Provider and product-purchase controls retain their component styles. */
.lo-button,
input.lo-button[type="submit"],
body.woocommerce-account .site-main .woocommerce .button,
body.woocommerce-account .site-main .woocommerce form.woocommerce-form :is(button[type="submit"], input[type="submit"]),
body.woocommerce-cart .site-main .woocommerce .button,
body.woocommerce-cart .site-main .woocommerce form :is(button[type="submit"], input[type="submit"]),
body.woocommerce .site-main .woocommerce-notices-wrapper .button,
body.woocommerce .site-main .return-to-shop .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.75rem;
    padding: var(--lo-space-3) var(--lo-space-4);
    color: var(--lo-color-paper);
    background: var(--lo-color-ink);
    border: 1px solid var(--lo-color-ink);
    border-radius: var(--lo-radius-sm);
    box-shadow: none;
    font-size: var(--lo-font-size-label);
    font-weight: 700;
    line-height: var(--lo-line-height-label);
    text-align: center;
    text-decoration: none;
    transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.lo-button:hover,
.lo-button:focus-visible,
input.lo-button[type="submit"]:hover,
input.lo-button[type="submit"]:focus-visible,
body.woocommerce-account .site-main .woocommerce .button:hover,
body.woocommerce-account .site-main .woocommerce .button:focus-visible,
body.woocommerce-account .site-main .woocommerce form.woocommerce-form :is(button[type="submit"], input[type="submit"]):hover,
body.woocommerce-account .site-main .woocommerce form.woocommerce-form :is(button[type="submit"], input[type="submit"]):focus-visible,
body.woocommerce-cart .site-main .woocommerce .button:hover,
body.woocommerce-cart .site-main .woocommerce .button:focus-visible,
body.woocommerce-cart .site-main .woocommerce form :is(button[type="submit"], input[type="submit"]):hover,
body.woocommerce-cart .site-main .woocommerce form :is(button[type="submit"], input[type="submit"]):focus-visible,
body.woocommerce .site-main .woocommerce-notices-wrapper .button:hover,
body.woocommerce .site-main .woocommerce-notices-wrapper .button:focus-visible,
body.woocommerce .site-main .return-to-shop .button:hover,
body.woocommerce .site-main .return-to-shop .button:focus-visible {
    color: var(--lo-color-paper);
    background: var(--lo-color-accent-dark);
    border-color: var(--lo-color-accent-dark);
}

.lo-button--secondary,
body.woocommerce-account .site-main .woocommerce .woocommerce-orders-table__cell-order-actions .button.view,
body.woocommerce-account .site-main .woocommerce .button.woocommerce-Button--next,
body.woocommerce-account .site-main .woocommerce .button.woocommerce-Button--previous,
body.woocommerce-account .site-main .woocommerce .button.woocommerce-Button--secondary {
    color: var(--lo-color-ink);
    background: var(--lo-color-paper);
    border-color: var(--lo-color-line);
}

.lo-button--secondary:hover,
.lo-button--secondary:focus-visible,
body.woocommerce-account .site-main .woocommerce .woocommerce-orders-table__cell-order-actions .button.view:hover,
body.woocommerce-account .site-main .woocommerce .woocommerce-orders-table__cell-order-actions .button.view:focus-visible,
body.woocommerce-account .site-main .woocommerce .button.woocommerce-Button--next:hover,
body.woocommerce-account .site-main .woocommerce .button.woocommerce-Button--next:focus-visible,
body.woocommerce-account .site-main .woocommerce .button.woocommerce-Button--previous:hover,
body.woocommerce-account .site-main .woocommerce .button.woocommerce-Button--previous:focus-visible,
body.woocommerce-account .site-main .woocommerce .button.woocommerce-Button--secondary:hover,
body.woocommerce-account .site-main .woocommerce .button.woocommerce-Button--secondary:focus-visible {
    color: var(--lo-color-ink);
    background: var(--lo-color-surface);
    border-color: var(--lo-color-ink);
}

.lo-button--destructive {
    color: var(--lo-color-paper);
    background: var(--lo-color-destructive);
    border-color: var(--lo-color-destructive);
}

.lo-button--destructive:hover,
.lo-button--destructive:focus-visible {
    color: var(--lo-color-paper);
    background: var(--lo-color-ink);
    border-color: var(--lo-color-ink);
}

.lo-button:disabled,
.lo-button.disabled,
input.lo-button[type="submit"]:disabled,
body.woocommerce-account .site-main .woocommerce .button:disabled,
body.woocommerce-account .site-main .woocommerce .button.disabled,
body.woocommerce-account .site-main .woocommerce form.woocommerce-form :is(button[type="submit"], input[type="submit"]):disabled,
body.woocommerce-cart .site-main .woocommerce .button:disabled,
body.woocommerce-cart .site-main .woocommerce .button.disabled,
body.woocommerce-cart .site-main .woocommerce form :is(button[type="submit"], input[type="submit"]):disabled {
    color: var(--lo-color-disabled);
    background: var(--lo-field-disabled-background);
    border-color: var(--lo-field-border);
    cursor: not-allowed;
    opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
    .lo-button,
    input.lo-button[type="submit"],
    body.woocommerce-account .site-main .woocommerce .button,
    body.woocommerce-account .site-main .woocommerce form.woocommerce-form :is(button[type="submit"], input[type="submit"]),
    body.woocommerce-cart .site-main .woocommerce .button,
    body.woocommerce-cart .site-main .woocommerce form :is(button[type="submit"], input[type="submit"]),
    body.woocommerce .site-main .woocommerce-notices-wrapper .button,
    body.woocommerce .site-main .return-to-shop .button {
        transition-duration: 0.01ms;
    }
}

/* forms.css */
/* Account, Cart, and opt-in first-party form primitives. Product purchase controls remain component-owned. */
.lo-form :is(input[type="text"], input[type="email"], input[type="tel"], input[type="password"], input[type="number"], input[type="search"], textarea, select),
body.woocommerce-account .site-main .woocommerce :is(input[type="text"], input[type="email"], input[type="tel"], input[type="password"], input[type="number"], input[type="search"], textarea, select),
body.woocommerce-cart .site-main .woocommerce :is(input[type="text"], input[type="email"], input[type="tel"], input[type="password"], input[type="number"], input[type="search"], textarea, select) {
    width: 100%;
    min-height: 2.75rem;
    padding: var(--lo-space-2) var(--lo-space-3);
    color: var(--lo-color-ink);
    background: var(--lo-field-background);
    border: 1px solid var(--lo-field-border);
    border-radius: var(--lo-radius-sm);
    box-shadow: none;
    font-size: 1rem;
    line-height: var(--lo-line-height-body);
}

.lo-form textarea,
body.woocommerce-account .site-main .woocommerce textarea,
body.woocommerce-cart .site-main .woocommerce textarea {
    min-height: 7rem;
    resize: vertical;
}

.lo-form :is(input, textarea)::placeholder,
body.woocommerce-account .site-main .woocommerce :is(input, textarea)::placeholder,
body.woocommerce-cart .site-main .woocommerce :is(input, textarea)::placeholder {
    color: var(--lo-field-placeholder);
    opacity: 1;
}

.lo-form :is(input, textarea, select):focus,
body.woocommerce-account .site-main .woocommerce :is(input, textarea, select):focus,
body.woocommerce-cart .site-main .woocommerce :is(input, textarea, select):focus {
    border-color: var(--lo-field-focus);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--lo-field-focus) 22%, transparent);
    outline: 0;
}

.lo-form :is(input, textarea, select):disabled,
body.woocommerce-account .site-main .woocommerce :is(input, textarea, select):disabled,
body.woocommerce-cart .site-main .woocommerce :is(input, textarea, select):disabled {
    color: var(--lo-field-disabled-text);
    background: var(--lo-field-disabled-background);
    cursor: not-allowed;
    opacity: 1;
}

.lo-form label,
body.woocommerce-account .site-main .woocommerce form label,
body.woocommerce-cart .site-main .woocommerce form label {
    display: inline-block;
    margin-bottom: var(--lo-space-2);
    color: var(--lo-color-ink);
    font-size: var(--lo-font-size-label);
    font-weight: 700;
    line-height: var(--lo-line-height-label);
}

body.woocommerce-account .site-main .woocommerce form .form-row,
body.woocommerce-cart .site-main .woocommerce form .form-row {
    margin: 0 0 var(--lo-space-4);
}

.lo-form .required,
body.woocommerce .site-main .woocommerce form .required {
    color: var(--lo-color-validation-error);
    font-weight: 700;
}

.lo-form .description,
.lo-form .help,
body.woocommerce .site-main .woocommerce form .description,
body.woocommerce .site-main .woocommerce form .woocommerce-password-hint {
    display: block;
    margin-top: var(--lo-space-1);
    color: var(--lo-color-muted);
    font-size: var(--lo-font-size-metadata);
    line-height: var(--lo-line-height-metadata);
}

body.woocommerce-account .site-main .woocommerce :is(input[type="checkbox"], input[type="radio"]),
body.woocommerce-cart .site-main .woocommerce :is(input[type="checkbox"], input[type="radio"]) {
    width: 1rem;
    min-height: 1rem;
    margin: 0 var(--lo-space-2) 0 0;
    accent-color: var(--lo-color-accent);
    vertical-align: middle;
}

body.woocommerce-account .site-main .woocommerce .woocommerce-form__label-for-checkbox,
body.woocommerce-cart .site-main .woocommerce .woocommerce-form__label-for-checkbox {
    display: inline-flex;
    align-items: center;
    min-height: 2.75rem;
    margin-bottom: 0;
}

body.woocommerce .site-main .woocommerce .woocommerce-invalid :is(input, textarea, select) {
    border-color: var(--lo-color-validation-error);
}

body.woocommerce .site-main .woocommerce .woocommerce-validated :is(input, textarea, select) {
    border-color: var(--lo-color-success);
}

body.woocommerce .site-main .woocommerce :is(.woocommerce-LostPassword, .lost_password, .woocommerce-privacy-policy-text) a,
body.woocommerce .site-main .woocommerce table a:not(.button) {
    color: var(--lo-color-link);
    text-decoration-thickness: 1px;
    text-underline-offset: 0.16em;
}

body.woocommerce .site-main .woocommerce :is(.woocommerce-LostPassword, .lost_password, .woocommerce-privacy-policy-text) a:hover,
body.woocommerce .site-main .woocommerce table a:not(.button):hover {
    color: var(--lo-color-link-hover);
}

@supports not (color: color-mix(in srgb, black, white)) {
    .lo-form :is(input, textarea, select):focus,
    body.woocommerce-account .site-main .woocommerce :is(input, textarea, select):focus,
    body.woocommerce-cart .site-main .woocommerce :is(input, textarea, select):focus {
        box-shadow: 0 0 0 3px rgba(185, 95, 38, 0.22);
    }
}

/* notices.css */
/* WooCommerce notices: restrained surfaces with semantic structural indicators. */
body.woocommerce .site-main .woocommerce-notices-wrapper,
body.woocommerce .site-main .wc-empty-cart-message {
    margin-bottom: var(--lo-space-4);
}

body.woocommerce .site-main :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) {
    padding: var(--lo-space-3) var(--lo-space-4);
    margin: 0 0 var(--lo-space-3);
    color: var(--lo-color-ink);
    background: var(--lo-color-paper);
    border: 1px solid var(--lo-color-line);
    border-top-color: var(--lo-color-line);
    border-left: 4px solid var(--lo-color-info);
    border-radius: var(--lo-radius-sm);
    box-shadow: none;
    font-size: 0.9375rem;
    line-height: var(--lo-line-height-body);
}

body.woocommerce .site-main .woocommerce-message {
    border-left-color: var(--lo-color-success);
}

body.woocommerce .site-main .woocommerce-error {
    border-left-color: var(--lo-color-error);
}

body.woocommerce .site-main .woocommerce-error li + li {
    margin-top: var(--lo-space-1);
}

body.woocommerce .site-main :is(.woocommerce-message, .woocommerce-info) .button {
    float: right;
    margin: 0 0 0 var(--lo-space-3);
}

body.woocommerce .site-main :is(.woocommerce-message, .woocommerce-info)::after {
    display: block;
    clear: both;
    content: "";
}

body.woocommerce .site-main .woocommerce-notices-wrapper a:not(.button),
body.woocommerce .site-main :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) a:not(.button) {
    color: var(--lo-color-link);
    text-decoration-thickness: 1px;
    text-underline-offset: 0.16em;
}

body.woocommerce .site-main .woocommerce-notices-wrapper a:not(.button):hover,
body.woocommerce .site-main :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) a:not(.button):hover {
    color: var(--lo-color-link-hover);
}

@media (max-width: 767px) {
    body.woocommerce .site-main :is(.woocommerce-message, .woocommerce-info) .button {
        float: none;
        width: 100%;
        margin: 0 0 var(--lo-space-3);
    }
}

/* tables.css */
/* Shared WooCommerce and opt-in first-party table foundation. Product variation tables remain component-owned. */
.lo-table,
body.woocommerce .site-main table.shop_table:not(.woocommerce-variations-table) {
    width: 100%;
    margin: 0 0 var(--lo-space-5);
    color: var(--lo-color-ink);
    background: var(--lo-color-paper);
    border: 1px solid var(--lo-table-border);
    border-collapse: collapse;
    font-variant-numeric: tabular-nums;
}

.lo-table :is(th, td),
body.woocommerce .site-main table.shop_table:not(.woocommerce-variations-table) :is(th, td) {
    padding: var(--lo-space-3);
    border: 1px solid var(--lo-table-border);
    text-align: left;
    vertical-align: middle;
}

.lo-table th,
body.woocommerce .site-main table.shop_table:not(.woocommerce-variations-table) th {
    color: var(--lo-color-muted);
    background: var(--lo-table-header-background);
    font-size: var(--lo-font-size-label);
    font-weight: 700;
    line-height: var(--lo-line-height-label);
}

body.woocommerce .site-main table.shop_table :is(.product-price, .product-subtotal, .woocommerce-Price-amount, .amount),
body.woocommerce .site-main table.shop_table :is(.order-total, .order-number, .order-date) {
    font-variant-numeric: tabular-nums;
}

body.woocommerce .site-main .woocommerce-pagination {
    margin: var(--lo-space-5) 0 0;
    text-align: left;
}

body.woocommerce .site-main .woocommerce-pagination ul.page-numbers {
    display: inline-flex;
    flex-wrap: wrap;
    gap: var(--lo-space-2);
    padding: 0;
    margin: 0;
    border: 0;
}

body.woocommerce .site-main .woocommerce-pagination ul.page-numbers li {
    float: none;
    margin: 0;
    border: 0;
}

body.woocommerce .site-main .woocommerce-pagination :is(a.page-numbers, span.page-numbers) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.75rem;
    min-height: 2.75rem;
    padding: var(--lo-space-2);
    color: var(--lo-color-ink);
    background: var(--lo-color-paper);
    border: 1px solid var(--lo-table-border);
    border-radius: var(--lo-radius-sm);
    font-size: var(--lo-font-size-label);
    font-weight: 700;
    line-height: var(--lo-line-height-label);
    text-decoration: none;
}

body.woocommerce .site-main .woocommerce-pagination a.page-numbers:hover,
body.woocommerce .site-main .woocommerce-pagination a.page-numbers:focus-visible {
    color: var(--lo-color-paper);
    background: var(--lo-color-ink);
    border-color: var(--lo-color-ink);
}

body.woocommerce .site-main .woocommerce-pagination span.page-numbers.current {
    color: var(--lo-color-paper);
    background: var(--lo-color-accent);
    border-color: var(--lo-color-accent);
}

@media (max-width: 767px) {
    .lo-table,
    body.woocommerce .site-main table.shop_table:not(.woocommerce-variations-table) {
        font-size: 0.875rem;
    }

    .lo-table :is(th, td),
    body.woocommerce .site-main table.shop_table:not(.woocommerce-variations-table) :is(th, td) {
        padding: var(--lo-space-2);
        overflow-wrap: anywhere;
    }
}

/* account.css */
/* My Account layout and endpoint composition. Shared controls remain owned by V3 primitives. */
body.woocommerce-account .site-main .woocommerce {
    min-width: 0;
}

body.woocommerce-account .site-main .woocommerce::after {
    display: block;
    clear: both;
    content: "";
}

body.woocommerce-account .site-main .woocommerce-MyAccount-navigation,
body.woocommerce-account .site-main .woocommerce-MyAccount-content {
    float: none;
    width: auto;
}

body.woocommerce-account .site-main .woocommerce-MyAccount-navigation {
    margin: 0 0 var(--lo-space-5);
}

body.woocommerce-account .site-main .woocommerce-MyAccount-navigation ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--lo-space-2);
    padding: 0;
    margin: 0;
    list-style: none;
}

body.woocommerce-account .site-main .woocommerce-MyAccount-navigation li {
    min-width: 0;
    padding: 0;
    margin: 0;
}

body.woocommerce-account .site-main .woocommerce-MyAccount-navigation a {
    display: flex;
    align-items: center;
    min-height: 2.75rem;
    padding: var(--lo-space-2) var(--lo-space-3);
    color: var(--lo-color-ink);
    background: var(--lo-color-paper);
    border: 1px solid var(--lo-color-line);
    border-radius: var(--lo-radius-sm);
    box-shadow: none;
    font-size: var(--lo-font-size-label);
    font-weight: 700;
    line-height: var(--lo-line-height-label);
    text-decoration: none;
}

body.woocommerce-account .site-main .woocommerce-MyAccount-navigation a:hover,
body.woocommerce-account .site-main .woocommerce-MyAccount-navigation a:focus-visible {
    color: var(--lo-color-ink);
    background: var(--lo-color-surface);
    border-color: var(--lo-color-ink);
}

body.woocommerce-account .site-main .woocommerce-MyAccount-navigation .is-active a,
body.woocommerce-account .site-main .woocommerce-MyAccount-navigation a[aria-current="page"] {
    color: var(--lo-color-ink);
    background: var(--lo-color-surface);
    border-color: var(--lo-color-ink);
    box-shadow: inset 3px 0 0 var(--lo-color-accent);
}

body.woocommerce-account .site-main .woocommerce-MyAccount-navigation-link--customer-logout {
    grid-column: 1 / -1;
    padding-top: var(--lo-space-2);
    margin-top: var(--lo-space-1);
    border-top: 1px solid var(--lo-color-line);
}

body.woocommerce-account .site-main .woocommerce-MyAccount-navigation-link--customer-logout a {
    color: var(--lo-color-muted);
}

body.woocommerce-account .site-main .woocommerce-MyAccount-content {
    min-width: 0;
}

body.woocommerce-account .site-main .woocommerce-MyAccount-content > :first-child {
    margin-top: 0;
}

body.woocommerce-account .site-main .woocommerce-MyAccount-content :is(h2, h3) {
    color: var(--lo-color-ink);
    line-height: var(--lo-line-height-heading);
}

body.woocommerce-account .site-main .woocommerce-MyAccount-content h2 {
    margin: 0 0 var(--lo-space-4);
    font-size: clamp(1.35rem, 2vw, 1.75rem);
}

body.woocommerce-account .site-main .woocommerce-MyAccount-content h3 {
    margin: 0 0 var(--lo-space-3);
    font-size: var(--lo-font-size-component-title);
}

body.woocommerce-account .site-main .woocommerce-MyAccount-content > p {
    max-width: 68ch;
}

body.woocommerce-account .site-main .woocommerce-MyAccount-content a:not(.button) {
    color: var(--lo-color-link);
    text-decoration-thickness: 1px;
    text-underline-offset: 0.16em;
}

body.woocommerce-account .site-main .woocommerce-MyAccount-content a:not(.button):hover {
    color: var(--lo-color-link-hover);
}

body.woocommerce-account .site-main .woocommerce-MyAccount-content > form.woocommerce-EditAccountForm,
body.woocommerce-account .site-main .woocommerce-MyAccount-content > form.lost_reset_password,
body.woocommerce-account .site-main .woocommerce-MyAccount-content > form:not(.woocommerce-form):not(.woocommerce-EditAccountForm):not(.lost_reset_password) .woocommerce-address-fields {
    max-width: 46rem;
}

body.woocommerce-account .site-main .woocommerce-EditAccountForm {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 var(--lo-space-4);
}

body.woocommerce-account .site-main .woocommerce-EditAccountForm > :is(.form-row-wide, fieldset, .clear, p:not(.form-row)) {
    grid-column: 1 / -1;
}

body.woocommerce-account .site-main .woocommerce-EditAccountForm :is(.form-row-first, .form-row-last) {
    float: none;
    width: auto;
}

body.woocommerce-account .site-main .woocommerce-EditAccountForm fieldset {
    padding: var(--lo-space-4);
    margin: var(--lo-space-5) 0 0;
    border: 1px solid var(--lo-color-line);
    border-radius: var(--lo-radius-sm);
}

body.woocommerce-account .site-main .woocommerce-EditAccountForm legend {
    padding: 0 var(--lo-space-1);
    color: var(--lo-color-ink);
    font-size: var(--lo-font-size-component-title);
    font-weight: 700;
}

body.woocommerce-account .site-main .woocommerce-address-fields__field-wrapper {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 var(--lo-space-4);
}

body.woocommerce-account .site-main .woocommerce-address-fields__field-wrapper :is(.form-row-first, .form-row-last) {
    float: none;
    width: auto;
}

body.woocommerce-account .site-main .woocommerce-address-fields__field-wrapper .form-row-wide {
    grid-column: 1 / -1;
}

body.woocommerce-account .site-main .woocommerce-Addresses,
body.woocommerce-account .site-main .woocommerce-columns--addresses {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--lo-space-4);
    margin: var(--lo-space-5) 0 0;
}

/* WooCommerce's float clearfix boxes otherwise become grid/flex items. */
body.woocommerce-account .site-main :is(.woocommerce-Addresses, .woocommerce-columns--addresses, .woocommerce-Address-title)::before,
body.woocommerce-account .site-main :is(.woocommerce-Addresses, .woocommerce-columns--addresses, .woocommerce-Address-title)::after {
    display: none;
    content: none;
}

body.woocommerce-account .site-main .woocommerce-Addresses > .woocommerce-Address,
body.woocommerce-account .site-main .woocommerce-columns--addresses > .woocommerce-column {
    float: none;
    width: auto;
    margin: 0;
}

body.woocommerce-account .site-main .woocommerce-Address,
body.woocommerce-account .site-main .woocommerce-column--billing-address,
body.woocommerce-account .site-main .woocommerce-column--shipping-address {
    width: auto;
    min-width: 0;
    padding: var(--lo-space-4);
    background: var(--lo-color-paper);
    border: 1px solid var(--lo-color-line);
    border-radius: var(--lo-radius-sm);
}

body.woocommerce-account .site-main .woocommerce-Address-title {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--lo-space-3);
    margin: 0 0 var(--lo-space-4);
}

body.woocommerce-account .site-main .woocommerce-Address-title h2,
body.woocommerce-account .site-main .woocommerce-column__title {
    margin: 0;
    font-size: var(--lo-font-size-component-title);
}

body.woocommerce-account .site-main .woocommerce-Address-title .edit {
    flex: 0 0 auto;
    max-width: 100%;
    overflow-wrap: anywhere;
    font-size: var(--lo-font-size-label);
    font-weight: 700;
}

body.woocommerce-account .site-main :is(.woocommerce-Address, .woocommerce-customer-details) address {
    margin: 0;
    color: var(--lo-color-ink);
    font-style: normal;
    line-height: var(--lo-line-height-body);
    overflow-wrap: anywhere;
}

body.woocommerce-account .site-main .woocommerce-customer-details > address {
    padding: var(--lo-space-4);
    background: var(--lo-color-paper);
    border: 1px solid var(--lo-color-line);
    border-radius: var(--lo-radius-sm);
}

body.woocommerce-account .site-main .woocommerce-MyAccount-content > p mark {
    padding: 0 var(--lo-space-1);
    color: var(--lo-color-ink);
    background: var(--lo-color-surface);
}

body.woocommerce-account .site-main .woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-actions .button {
    padding-inline: var(--lo-space-3);
    white-space: nowrap;
}

body.woocommerce-account .site-main .woocommerce-order-details,
body.woocommerce-account .site-main .woocommerce-customer-details {
    margin-top: var(--lo-space-6);
}

body.woocommerce-account .site-main .woocommerce-order-details__title,
body.woocommerce-account .site-main .woocommerce-customer-details > h2 {
    margin-bottom: var(--lo-space-4);
}

body.woocommerce-account .site-main .woocommerce-table--order-details {
    table-layout: fixed;
}

body.woocommerce-account .site-main .woocommerce-table--order-details :is(.product-name, .product-total) {
    overflow-wrap: anywhere;
}

body.woocommerce-account .site-main .woocommerce-table--order-details .product-total {
    width: 32%;
    text-align: right;
    white-space: nowrap;
}

body.woocommerce-account .site-main .woocommerce-table--order-details tfoot th {
    text-align: right;
}

body.woocommerce-account .site-main .woocommerce-OrderUpdates {
    display: grid;
    gap: var(--lo-space-3);
    padding: 0;
    margin: var(--lo-space-4) 0 0;
    list-style: none;
}

body.woocommerce-account .site-main .woocommerce-OrderUpdate {
    padding: var(--lo-space-3);
    background: var(--lo-color-surface);
    border-left: 3px solid var(--lo-color-accent);
}

body.woocommerce-account .site-main .woocommerce-OrderUpdate :is(p, .meta) {
    margin: 0;
}

body.woocommerce-account .site-main .woocommerce-OrderUpdate-meta {
    margin-bottom: var(--lo-space-1);
    color: var(--lo-color-muted);
    font-size: var(--lo-font-size-metadata);
}

body.woocommerce-account .site-main #customer_login {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--lo-space-6);
    max-width: 64rem;
}

body.woocommerce-account .site-main #customer_login > :is(.u-column1, .u-column2) {
    float: none;
    width: auto;
    min-width: 0;
    padding: var(--lo-space-5);
    background: var(--lo-color-paper);
    border: 1px solid var(--lo-color-line);
    border-radius: var(--lo-radius-sm);
}

body.woocommerce-account .site-main #customer_login h2,
body.woocommerce-account .site-main .woocommerce > h2 {
    margin: 0 0 var(--lo-space-4);
    color: var(--lo-color-ink);
    font-size: clamp(1.35rem, 2vw, 1.75rem);
    line-height: var(--lo-line-height-heading);
}

body.woocommerce-account .site-main .woocommerce > h2 + .woocommerce-form-login,
body.woocommerce-account .site-main .lost_reset_password {
    max-width: 34rem;
    padding: var(--lo-space-5);
    background: var(--lo-color-paper);
    border: 1px solid var(--lo-color-line);
    border-radius: var(--lo-radius-sm);
}

body.woocommerce-account .site-main .woocommerce-MyAccount-content > .woocommerce-notices-wrapper {
    margin-bottom: var(--lo-space-4);
}

@media (min-width: 768px) {
    /* Logged-in account endpoints use the normal site container, not the generic reading-width flow. */
    body.woocommerce-account.logged-in .site-main .lo-content-flow {
        width: 100%;
    }

    /* The generic page card is useful for editorial pages but constrains this two-pane workspace. */
    body.woocommerce-account.logged-in .site-main .entry-content {
        padding: 0;
        background: transparent;
        border: 0;
        border-radius: 0;
    }

    body.woocommerce-account.logged-in .site-main .entry-header .page-title {
        font-size: min(var(--lo-font-size-page-title), 2.25rem);
    }

    body.woocommerce-account.logged-in .site-main .woocommerce {
        display: grid;
        grid-template-columns: clamp(15rem, 18vw, 17rem) minmax(0, 1fr);
        gap: var(--lo-space-6);
        align-items: start;
    }

    body.woocommerce-account.logged-in .site-main .woocommerce::after {
        display: none;
    }

    body.woocommerce-account.logged-in .site-main .woocommerce > .woocommerce-notices-wrapper:empty {
        display: none;
    }

    body.woocommerce-account.logged-in .site-main .woocommerce > .woocommerce-notices-wrapper:not(:empty) {
        grid-column: 1 / -1;
    }

    body.woocommerce-account.logged-in .site-main .woocommerce-MyAccount-navigation {
        grid-column: 1;
        float: none;
        width: auto;
        margin: 0;
    }

    body.woocommerce-account.logged-in .site-main .woocommerce-MyAccount-navigation ul {
        display: grid;
        grid-template-columns: 1fr;
    }

    body.woocommerce-account.logged-in .site-main .woocommerce-MyAccount-content {
        grid-column: 2;
        float: none;
        width: auto;
    }

    body.woocommerce-account.logged-in .site-main .woocommerce-MyAccount-content > p {
        margin-block: 0 var(--lo-space-4);
    }
}

@media (max-width: 767px) {
    body.woocommerce-account .site-main .woocommerce-EditAccountForm,
    body.woocommerce-account .site-main .woocommerce-address-fields__field-wrapper,
    body.woocommerce-account .site-main .woocommerce-Addresses,
    body.woocommerce-account .site-main .woocommerce-columns--addresses,
    body.woocommerce-account .site-main #customer_login {
        grid-template-columns: 1fr;
    }

    body.woocommerce-account .site-main .woocommerce-EditAccountForm > :is(.form-row-wide, fieldset, .clear, p:not(.form-row)),
    body.woocommerce-account .site-main .woocommerce-address-fields__field-wrapper .form-row-wide {
        grid-column: auto;
    }

    body.woocommerce-account .site-main .woocommerce-MyAccount-navigation-link--customer-logout {
        grid-column: 1 / -1;
    }

    body.woocommerce-account .site-main .woocommerce-MyAccount-content > form.woocommerce-EditAccountForm,
    body.woocommerce-account .site-main .woocommerce-MyAccount-content > form.lost_reset_password,
    body.woocommerce-account .site-main .woocommerce-MyAccount-content > form:not(.woocommerce-form):not(.woocommerce-EditAccountForm):not(.lost_reset_password) .woocommerce-address-fields,
    body.woocommerce-account .site-main .woocommerce > h2 + .woocommerce-form-login,
    body.woocommerce-account .site-main .lost_reset_password {
        max-width: none;
    }

    body.woocommerce-account .site-main #customer_login > :is(.u-column1, .u-column2),
    body.woocommerce-account .site-main .woocommerce > h2 + .woocommerce-form-login,
    body.woocommerce-account .site-main .lost_reset_password {
        padding: var(--lo-space-4);
    }

    body.woocommerce-account .site-main .woocommerce-MyAccount-orders,
    body.woocommerce-account .site-main .woocommerce-MyAccount-orders :is(thead, tbody, tr, th, td) {
        display: block;
        width: 100%;
    }

    body.woocommerce-account .site-main .woocommerce-MyAccount-orders {
        margin-bottom: var(--lo-space-4);
        border: 0;
        background: transparent;
    }

    body.woocommerce-account .site-main .woocommerce-MyAccount-orders thead {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border: 0;
    }

    body.woocommerce-account .site-main .woocommerce-MyAccount-orders tbody {
        display: grid;
        gap: var(--lo-space-3);
    }

    body.woocommerce-account .site-main .woocommerce-MyAccount-orders tr {
        padding: var(--lo-space-3);
        background: var(--lo-color-paper);
        border: 1px solid var(--lo-color-line);
        border-radius: var(--lo-radius-sm);
    }

    body.woocommerce-account .site-main table.woocommerce-MyAccount-orders.shop_table :is(th, td) {
        display: grid;
        grid-template-columns: 6rem minmax(0, 1fr);
        gap: var(--lo-space-1) var(--lo-space-3);
        padding: var(--lo-space-1) 0;
        border: 0;
        overflow-wrap: anywhere;
        /* WooCommerce smallscreen forces right alignment with !important. */
        text-align: left !important;
    }

    body.woocommerce-account .site-main .woocommerce-MyAccount-orders :is(th, td)::before {
        grid-column: 1;
        color: var(--lo-color-muted);
        content: attr(data-title);
        font-size: var(--lo-font-size-metadata);
        font-weight: 700;
        line-height: var(--lo-line-height-metadata);
        text-transform: uppercase;
    }

    /* Keep the unwrapped item-count text in column 2 beneath the native price span. */
    body.woocommerce-account .site-main .woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-total::before {
        grid-row: 1 / span 2;
    }

    body.woocommerce-account .site-main table.woocommerce-MyAccount-orders.shop_table .woocommerce-orders-table__cell-order-total {
        color: var(--lo-color-muted);
    }

    body.woocommerce-account .site-main .woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-total > .amount {
        grid-column: 2;
        color: var(--lo-price-color);
        font-weight: 700;
    }

    body.woocommerce-account .site-main .woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-actions {
        align-items: center;
    }

    body.woocommerce-account .site-main .woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-actions .button {
        grid-column: 2;
        justify-self: start;
        margin: 0;
    }

    /* Native email-verification prompt: CTA precedes a bare message text node. */
    body.woocommerce-account .site-main .woocommerce-MyAccount-content .woocommerce-info:has(> a.button[href*="wc_send_verification="]) {
        display: flex;
        flex-direction: column;
        gap: var(--lo-space-2);
        padding: var(--lo-space-4);
    }

    body.woocommerce-account .site-main .woocommerce-MyAccount-content .woocommerce-info:has(> a.button[href*="wc_send_verification="])::before,
    body.woocommerce-account .site-main .woocommerce-MyAccount-content .woocommerce-info:has(> a.button[href*="wc_send_verification="])::after {
        display: none;
        content: none;
    }

    body.woocommerce-account .site-main .woocommerce-MyAccount-content .woocommerce-info > a.button[href*="wc_send_verification="] {
        order: 1;
        float: none;
        align-self: flex-start;
        width: fit-content;
        max-width: 100%;
        margin: 0;
        white-space: normal;
    }

    body.woocommerce-account .site-main .woocommerce-table--order-details .product-total {
        width: 38%;
    }
}

/* Account-only presentation. Native Woo templates, fields and notices remain authoritative. */
body.lo-account-page .site-main { padding-block:24px 48px; }
body.lo-account-page .site-main > .lo-container { width:min(1280px,calc(100% - 64px)); }
body.lo-account-page .lo-content-flow { max-width:none; width:100%; }
.lo-account-breadcrumb { display:flex; flex-wrap:wrap; gap:10px; font-size:13px; margin-bottom:24px; color:var(--lo-color-muted); }
.lo-account-heading { margin-bottom:32px; }
.lo-account-heading .lo-d1-eyebrow,.lo-account-kicker { font-size:11px; font-weight:700; letter-spacing:.12em; color:var(--lo-color-muted); margin:0 0 12px; }
.lo-account-heading h1 { font-size:clamp(30px,3.5vw,44px); line-height:1.15; letter-spacing:-.03em; margin:0 0 12px; }
.lo-account-heading > p:last-child { margin:0; color:var(--lo-color-muted); line-height:1.6; }
body.lo-account-page:not(.lo-account-auth) .site-main .lo-account-body > .woocommerce { display:grid; grid-template-columns:240px minmax(0,1fr); gap:28px; align-items:start; }
body.lo-account-page .site-main .woocommerce::before,body.lo-account-page .site-main .woocommerce::after { content:none; }
body.lo-account-page .site-main .woocommerce > .woocommerce-notices-wrapper,body.lo-account-page .site-main .woocommerce > :is(.woocommerce-message,.woocommerce-error,.woocommerce-info) { grid-column:1 / -1; }
body.lo-account-page .site-main .woocommerce > .woocommerce-notices-wrapper:empty { display:none; }
body.lo-account-page .site-main .woocommerce-MyAccount-navigation { float:none; width:auto; background:#fff; border:1px solid var(--lo-color-line); border-radius:8px; overflow:hidden; }
body.lo-account-page .site-main .woocommerce-MyAccount-navigation ul { margin:0; padding:8px; list-style:none; }
body.lo-account-page .site-main .woocommerce-MyAccount-navigation li { margin:0; border:0; }
body.lo-account-page .site-main .woocommerce-MyAccount-navigation a { display:flex; align-items:center; min-height:48px; padding:12px 16px; border-radius:4px; font-size:14px; font-weight:600; text-decoration:none; color:var(--lo-color-ink); }
body.lo-account-page .site-main .woocommerce-MyAccount-navigation .is-active a { background:#eaf0eb; color:var(--d1-green); box-shadow:inset 3px 0 var(--d1-green); }
body.lo-account-page .site-main .woocommerce-MyAccount-navigation a:hover { background:var(--lo-color-surface); }
body.lo-account-page .site-main .woocommerce-MyAccount-navigation-link--customer-logout { margin-top:8px; padding-top:8px; border-top:1px solid var(--lo-color-line); }
body.lo-account-page .site-main .woocommerce-MyAccount-content { float:none; width:auto; min-width:0; }
body.lo-account-page .site-main .woocommerce-MyAccount-content h2 { font-size:24px; line-height:1.3; margin:0 0 12px; }
.lo-account-overview > p:not(.lo-account-kicker) { margin:0 0 24px; color:var(--lo-color-muted); }
.lo-account-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.lo-account-card { display:flex; flex-direction:column; padding:24px; border:1px solid var(--lo-color-line); border-radius:8px; background:#fff; color:var(--lo-color-ink); text-decoration:none; }
.lo-account-card > svg { width:32px; height:32px; color:var(--d1-green); margin-bottom:20px; }
.lo-account-card h3 { font-size:18px; line-height:1.3; margin:0 0 10px; }
.lo-account-card p { font-size:14px; line-height:1.65; margin:0 0 20px; color:var(--lo-color-muted); }
.lo-account-card span { margin-top:auto; display:flex; align-items:center; gap:12px; font-size:14px; font-weight:600; }
.lo-account-card:hover { border-color:var(--d1-green); background:#fafbf8; }
.lo-account-project,.lo-account-support { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:24px; border-radius:8px; background:#eaf0eb; margin-top:24px; }
.lo-account-project h2 { font-size:20px!important; }
.lo-account-project p,.lo-account-support p { margin:0; font-size:14px; line-height:1.7; color:var(--lo-color-muted); }
.lo-account-project a,.lo-account-support a { flex-shrink:0; display:inline-flex; align-items:center; gap:12px; min-height:44px; font-size:14px; font-weight:600; }
.lo-account-support { background:none; border-top:1px solid var(--lo-color-line); border-radius:0; padding:24px 0 0; margin-top:32px; }
body.lo-account-auth .site-main .lo-account-body { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:48px; align-items:start; max-width:1100px; }
body.lo-account-auth .site-main .lo-account-body > .woocommerce { min-width:0; }
.lo-account-auth .woocommerce h2 { font-size:24px; margin:0 0 20px; }
body.lo-account-page .site-main .woocommerce :is(form.login,form.register,form.lost_reset_password,.woocommerce-EditAccountForm,.woocommerce-address-fields) { padding:28px; border:1px solid var(--lo-color-line); border-radius:8px; background:#fff; margin:0; }
body.lo-account-page .site-main .woocommerce .woocommerce-address-fields { margin-top:20px; }
body.lo-account-page .site-main .woocommerce form .form-row { margin:0 0 20px; padding:0; }
body.lo-account-page .site-main .woocommerce form label { display:block; font-weight:600; font-size:14px; line-height:1.6; margin-bottom:6px; }
body.lo-account-page .site-main .woocommerce form :is(.input-text,input[type=email],input[type=password],input[type=tel],select) { min-height:48px; font-size:16px; width:100%; box-sizing:border-box; }

body.lo-account-page .site-main .woocommerce form .woocommerce-form-login__rememberme { display:flex; align-items:center; gap:8px; min-height:44px; font-weight:400; }
body.lo-account-page .site-main .woocommerce .woocommerce-form-login__submit { float:none; width:100%; margin:8px 0 12px; }
body.lo-account-page .site-main .woocommerce .lost_password { margin-bottom:0; font-size:14px; }
body.lo-account-page .site-main .woocommerce fieldset { padding:24px 0 0; border:0; border-top:1px solid var(--lo-color-line); margin:24px 0; }
body.lo-account-page .site-main .woocommerce legend { font-size:18px; font-weight:600; padding-right:12px; }
body.lo-account-page .site-main .woocommerce .form-row em { display:block; margin-top:6px; font-size:13px; color:var(--lo-color-muted); }
body.lo-account-page .site-main .woocommerce .select2-container .select2-selection--single { height:48px; border-color:var(--lo-field-border); }
body.lo-account-page .site-main .woocommerce .select2-selection__rendered { line-height:46px!important; padding-left:12px!important; }
body.lo-account-page .site-main .woocommerce .select2-selection__arrow { height:46px!important; }
body.lo-account-page .site-main .woocommerce .woocommerce-Addresses { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
body.lo-account-page .site-main .woocommerce .woocommerce-Addresses::before,body.lo-account-page .site-main .woocommerce .woocommerce-Addresses::after { content:none; }
body.lo-account-page .site-main .woocommerce .woocommerce-Address { float:none; width:auto; padding:24px; background:#fff; border:1px solid var(--lo-color-line); border-radius:8px; }
body.lo-account-page .site-main .woocommerce .woocommerce-Address .title h2 { float:none; font-size:21px; }
body.lo-account-page .site-main .woocommerce .woocommerce-Address .title .edit { float:none; display:inline-flex; min-height:44px; align-items:center; font-size:14px; }
body.lo-account-page .site-main .woocommerce address { font-style:normal; line-height:1.8; overflow-wrap:anywhere; }
body.lo-account-page .site-main .woocommerce table.shop_table { background:#fff; border:1px solid var(--lo-color-line); border-radius:8px; border-spacing:0; margin:0 0 24px; }
body.lo-account-page .site-main .woocommerce table.shop_table th { font-size:13px; background:var(--lo-color-surface); padding:16px; }
body.lo-account-page .site-main .woocommerce table.shop_table td { padding:16px; font-size:14px; overflow-wrap:anywhere; }
body.lo-account-page .site-main .woocommerce .woocommerce-orders-table__cell-order-actions .button { margin:4px 4px 4px 0; min-height:44px; font-size:13px; }
.lo-account-welcome { padding:32px; border-radius:8px; background:var(--d1-green); color:#fff; }
.lo-account-welcome > svg { width:32px; height:32px; margin-bottom:16px; }
.lo-account-welcome h2 { color:#fff; font-size:26px; line-height:1.3; margin:0 0 24px; }
.lo-account-welcome ul { padding:0; margin:0; list-style:none; display:grid; gap:24px; }
.lo-account-welcome li { display:flex; gap:16px; }
.lo-account-welcome li > svg { flex:0 0 24px; }
.lo-account-welcome strong,.lo-account-welcome span { display:block; }
.lo-account-welcome strong { font-size:16px; margin-bottom:6px; }
.lo-account-welcome span { font-size:14px; line-height:1.65; color:#dce5df; }
.lo-account-welcome > a { display:flex; align-items:center; gap:10px; color:#fff; margin-top:28px; min-height:44px; font-size:14px; font-weight:600; }
.lo-account-page .lo-account :is(a,button,input,select):focus-visible { outline:3px solid var(--lo-field-focus); outline-offset:3px; }
@media(max-width:1023px) {
 body.lo-account-page:not(.lo-account-auth) .site-main .lo-account-body > .woocommerce { grid-template-columns:200px minmax(0,1fr); gap:20px; }
 .lo-account-cards { grid-template-columns:1fr; }
 .lo-account-card { display:grid; grid-template-columns:32px minmax(0,1fr); gap:8px 16px; padding:20px; }
 .lo-account-card > svg { grid-row:1/4; margin:0; }
 .lo-account-card :is(h3,p,span) { margin:0; }
 .lo-account-project { flex-direction:column; align-items:flex-start; gap:12px; }
 body.lo-account-auth .site-main .lo-account-body { gap:24px; }
}
@media(max-width:767px) {
 body.lo-account-page .site-main > .lo-container { width:calc(100% - 32px); }
 .lo-account-heading { margin-bottom:24px; }
 body.lo-account-page:not(.lo-account-auth) .site-main .lo-account-body > .woocommerce,body.lo-account-auth .site-main .lo-account-body { grid-template-columns:1fr; gap:24px; }
 body.lo-account-page .site-main .woocommerce-MyAccount-navigation ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px; }
 body.lo-account-page .site-main .woocommerce-MyAccount-navigation a { padding:10px; font-size:13px; }
 body.lo-account-page .site-main .woocommerce-MyAccount-navigation-link--customer-logout { margin:0; padding:0; border:0; }
 body.lo-account-page .site-main .woocommerce :is(form.login,form.register,form.lost_reset_password,.woocommerce-EditAccountForm,.woocommerce-address-fields) { padding:20px; }
 body.lo-account-page .site-main .woocommerce form :is(.form-row-first,.form-row-last) { width:100%; float:none; }
 body.lo-account-page .site-main .woocommerce .woocommerce-Addresses { grid-template-columns:1fr; }
 .lo-account-welcome { padding:24px; }
 .lo-account-welcome h2 { font-size:23px; }
 .lo-account-support { flex-direction:column; align-items:flex-start; gap:12px; }
}
body.lo-account-page .site-main .woocommerce-MyAccount-navigation ul { display:block; padding:8px; }
body.lo-account-page .site-main .woocommerce-MyAccount-navigation a { border:0; background:transparent; }
body.lo-account-page .site-main .woocommerce-MyAccount-navigation .is-active a { background:#eaf0eb; box-shadow:inset 3px 0 var(--d1-green); }
body.lo-account-page .site-main .lo-account-cards .lo-account-card { color:var(--lo-color-ink); text-decoration:none; }
@media(max-width:767px) { body.lo-account-page .site-main .woocommerce-MyAccount-navigation ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* Account reference refinement: compact navigation, native orders become mobile cards. */
.lo-account-identity { display:flex; gap:12px; align-items:center; padding:20px 16px; border-bottom:1px solid var(--lo-color-line); }
.lo-account-identity > svg { width:40px; height:40px; padding:8px; border-radius:50%; background:#eaf0eb; flex-shrink:0; }
.lo-account-identity div { min-width:0; }
.lo-account-identity strong,.lo-account-identity span { display:block; overflow-wrap:anywhere; }
.lo-account-identity strong { font-size:14px; }
.lo-account-identity span { font-size:12px; color:var(--lo-color-muted); margin-top:4px; }
.lo-account-menu summary { cursor:pointer; min-height:48px; padding:12px 16px; font-weight:600; }
.lo-account-menu summary span { float:right; }
body.lo-account-page .site-main .woocommerce-MyAccount-navigation a { gap:12px; }
body.lo-account-page .site-main .woocommerce-MyAccount-navigation a > svg { width:18px; height:18px; flex-shrink:0; }
.lo-account-heading > div > p:last-child { margin:0; color:var(--lo-color-muted); line-height:1.6; }
.lo-account-hero { display:grid; grid-template-columns:1.2fr 1fr; position:relative; overflow:hidden; border-radius:8px; min-height:230px; background:#f0ebe4; }
.lo-account-hero > div:first-child { padding:28px; position:relative; z-index:1; }
.lo-account-hero h1 { font-size:clamp(28px,3vw,38px); }
.lo-account-hero-art { min-width:0; }
.lo-account-hero-art img { width:100%; height:100%; object-fit:cover; }
body.lo-account-page .site-main .lo-account-card > svg { padding:10px; width:48px; height:48px; border-radius:6px; background:#eaf0eb; }
.lo-account-project { position:relative; overflow:hidden; display:grid; grid-template-columns:1.25fr 1fr; padding:0; background:#fff; border:1px solid var(--lo-color-line); }
.lo-account-project-copy { padding:28px; }
.lo-account-project-copy a { margin-top:20px; background:var(--lo-color-accent); color:#fff!important; padding:10px 18px; border-radius:4px; text-decoration:none; }
.lo-account-project-art { height:100%; min-width:0; }
.lo-account-project-art img { width:100%; height:100%; object-fit:cover; }
.lo-account-support { background:#fff; padding:24px; border:1px solid var(--lo-color-line); border-radius:8px; }
.lo-order-status { display:inline-flex; font-size:12px; line-height:1.4; padding:6px 9px; border-radius:4px; background:#edf0f2; color:#374b55; white-space:normal; }
.lo-order-status--completed { background:#e6f3eb; color:#186239; }
.lo-order-status--processing,.lo-order-status--pending,.lo-order-status--on-hold { background:#fff3d6; color:#805409; }
.lo-order-status--failed { background:#fdeae7; color:#a32d24; }
body.lo-account-page .site-main .woocommerce-orders-table { table-layout:auto; }
body.lo-account-page .site-main .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions { min-width:140px; }
body.lo-account-page .site-main .woocommerce-orders-table .button { padding:10px 14px; border:1px solid var(--lo-color-line); border-radius:4px; }
body.lo-account-page .site-main .woocommerce-orders-table .button.pay { background:var(--d1-green); color:#fff; }
@media(min-width:768px) { .lo-account-menu summary { display:none; } }
@media(max-width:1023px) { .lo-account-hero { grid-template-columns:1fr; } .lo-account-hero-art { display:none; } }
@media(max-width:767px) {
 body.lo-account-page .site-main .woocommerce-MyAccount-navigation { margin:0; }
 .lo-account-identity { display:none; }
 .lo-account-heading { margin-bottom:20px; }
 .lo-account-heading .lo-account-kicker { display:none; }
 .lo-account-hero { min-height:0; background:transparent; }
 .lo-account-hero > div:first-child { padding:0; }
 .lo-account-breadcrumb { margin-bottom:16px; }
 body.lo-account-page .site-main .lo-account-body > .woocommerce { gap:16px; }
 body.lo-account-page .site-main .lo-account-cards { gap:12px; }
 body.lo-account-page .site-main .lo-account-card { grid-template-columns:48px minmax(0,1fr); }
 .lo-account-project { grid-template-columns:1fr; }
 .lo-account-project-copy { padding:24px; }
 .lo-account-project-art { height:130px; }
 .lo-account-project-art img { object-position:50% 60%; }
 body.lo-account-page .site-main .woocommerce table.woocommerce-orders-table { border:0; background:transparent; }
 body.lo-account-page .site-main .woocommerce .woocommerce-orders-table tbody { display:grid; gap:12px; }
 body.lo-account-page .site-main .woocommerce .woocommerce-orders-table tr.order { display:grid; grid-template-columns:minmax(0,1fr); gap:8px; padding:16px; margin:0; border:1px solid var(--lo-color-line); border-radius:8px; background:#fff; }
 body.lo-account-page .site-main .woocommerce .woocommerce-orders-table tr.order > :is(td,th) { display:block; width:auto; min-width:0; padding:0; margin:0; border:0; background:transparent; text-align:left!important; float:none; }
 body.lo-account-page .site-main .woocommerce .woocommerce-orders-table tr.order > :is(td,th)::before { content:none; }
 body.lo-account-page .site-main .woocommerce .woocommerce-orders-table .woocommerce-orders-table__cell-order-number a { display:inline-flex; min-height:32px; align-items:center; font-weight:700; text-decoration:none; }
 body.lo-account-page .site-main .woocommerce .woocommerce-orders-table .woocommerce-orders-table__cell-order-number a::before { content:'Comanda '; white-space:pre; }
 body.lo-account-page .site-main .woocommerce .woocommerce-orders-table .woocommerce-orders-table__cell-order-date { font-size:12px; color:var(--lo-color-muted); margin-top:-6px; }
 body.lo-account-page .site-main .woocommerce .woocommerce-orders-table .woocommerce-orders-table__cell-order-total { padding-block:4px; font-size:14px; }
 body.lo-account-page .site-main .woocommerce .woocommerce-orders-table .woocommerce-orders-table__cell-order-total .amount { font-size:17px; font-weight:700; }
 body.lo-account-page .site-main .woocommerce .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions { display:flex; flex-wrap:wrap; gap:8px; }
 body.lo-account-page .site-main .woocommerce .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions a.button { flex:1 1 80px; min-height:44px; margin:0; display:flex; justify-content:center; align-items:center; }
}
.lo-account-hero-art,.lo-account-project-art { position:relative; }
.lo-account-hero-art img,.lo-account-project-art img { position:absolute; inset:0; }
body.lo-account-page .site-main .woocommerce-orders-table .button:not(.pay) { background:#fff; color:var(--lo-color-ink); }
@media(max-width:767px) {
 body.lo-account-page .site-main .woocommerce .woocommerce-orders-table tr.order > .woocommerce-orders-table__cell-order-actions { display:flex; flex-wrap:wrap; gap:8px; }
 body.lo-account-page .site-main .woocommerce .woocommerce-orders-table tr.order > .woocommerce-orders-table__cell-order-actions a.button { flex:1 1 90px; width:auto; max-width:none; }
}
