/* Shared VELUGI presentation. Component layouts and native interactions remain in their existing files. */
body.retail-storefront {
    background-color: var(--velugi-background);
    color: var(--velugi-text);
}
.retail-storefront .page-main h1,
.retail-storefront .page-main h2,
.retail-storefront .page-main h3 { color: var(--velugi-heading); }
.retail-storefront .page-main .price { color: var(--velugi-text); }
.retail-storefront .page-main .product.attribute.description a,
.retail-storefront .page-main .product.attribute.overview a,
.retail-storefront .page-main [data-content-type="text"] a {
    color: var(--velugi-link);
    text-decoration: underline;
    text-underline-offset: 3px;
}
.retail-storefront .action.primary {
    background: var(--velugi-button-primary-bg);
    border-color: var(--velugi-button-primary-border);
    color: var(--velugi-button-primary-text);
}
.retail-storefront .action.primary:hover,
.retail-storefront .action.primary:focus,
.retail-storefront .action.primary:active {
    background: var(--velugi-charcoal);
    border-color: var(--velugi-charcoal);
    color: var(--velugi-warm-cream);
}
.retail-storefront a:focus-visible,
.retail-storefront button:focus-visible,
.retail-storefront summary:focus-visible,
.retail-storefront input:focus-visible,
.retail-storefront select:focus-visible,
.retail-storefront textarea:focus-visible {
    outline: 2px solid var(--velugi-focus-on-light);
    outline-offset: 3px;
}
.retail-storefront .nav-sections,
.retail-storefront .navigation { background: var(--velugi-warm-cream); }
.retail-storefront .nav-sections { border-bottom: 1px solid var(--velugi-divider-decorative); }
.retail-storefront .navigation .level0 > .level-top,
.retail-storefront .navigation a { color: var(--velugi-forest-sage); }
.retail-storefront .navigation .level0 > .level-top:hover,
.retail-storefront .navigation .level0 > .level-top.ui-state-focus {
    color: var(--velugi-charcoal);
    text-decoration: underline;
    text-underline-offset: 6px;
}
.retail-storefront .navigation .level0.active > .level-top,
.retail-storefront .navigation .level0.has-active > .level-top {
    border-color: var(--velugi-forest-sage);
    color: var(--velugi-forest-sage);
}
body.retail-storefront .retail-account-menu__trigger,
body.retail-storefront .retail-account-menu__panel a { color: var(--velugi-forest-sage); }
body.retail-storefront .retail-account-menu__panel {
    background: var(--velugi-warm-cream);
    border-color: var(--velugi-forest-sage);
}
body.retail-storefront .retail-account-menu__panel a:hover {
    background: var(--velugi-forest-sage);
    color: var(--velugi-warm-cream);
}
body.retail-storefront .retail-account-menu__trigger:focus-visible,
body.retail-storefront .retail-account-menu__panel a:focus-visible {
    outline-color: var(--velugi-focus-on-light);
}
/* Higher specificity than shared action styles, regardless of layout CSS order. */
.retail-storefront .page-footer .action.primary { border-color: var(--velugi-warm-cream); }
.retail-storefront .page-footer a:focus-visible,
.retail-storefront .page-footer button:focus-visible,
.retail-storefront .page-footer input:focus-visible { outline-color: var(--velugi-focus-on-dark); }

/* Product gallery selection accents, including fullscreen navigation. */
.retail-storefront.catalog-product-view .fotorama__thumb-border {
    border-color: var(--velugi-forest-sage);
}
.retail-storefront.catalog-product-view .fotorama__active .fotorama__dot {
    background-color: var(--velugi-forest-sage);
    border-color: var(--velugi-forest-sage);
}
