/* Storefront V2 merchant brand integration — loaded last on every storefront page. */
:root {
    --sf-brand-surface: color-mix(in srgb, var(--brand-50) 42%, #fff);
    --sf-brand-surface-strong: color-mix(in srgb, var(--brand-100) 34%, #fff);
    --sf-brand-line: color-mix(in srgb, var(--brand-500) 17%, #dbe3ec);
    --sf-brand-line-strong: color-mix(in srgb, var(--brand-500) 34%, #cbd5e1);
    --sf-brand-ink: color-mix(in srgb, var(--brand-900) 24%, var(--text-color));
    --sf-brand-muted: color-mix(in srgb, var(--brand-700) 18%, var(--muted-text));
    --sf-brand-shadow: color-mix(in srgb, var(--brand-900) 20%, transparent);
}

/* Global surfaces and links */
body {
    background:
        radial-gradient(circle at 88% 0%, color-mix(in srgb, var(--brand-100) 24%, transparent), transparent 24rem),
        var(--page-bg);
}

.sf-header-v2__surface {
    border-bottom-color: color-mix(in srgb, var(--brand-500) 13%, rgba(148,163,184,.16));
    box-shadow: 0 18px 40px -34px var(--sf-brand-shadow);
}
.sf-header-v2__logo,
.sf-footer-v2__brand-lockup > span {
    border-color: var(--sf-brand-line);
    background: linear-gradient(145deg, #fff, var(--sf-brand-surface));
}
.sf-header-v2__search,
.sf-header-v2__icon-action,
.sf-header-v2__cart,
.sf-header-v2__currency-static,
.sf-header-v2__currency-menu {
    border-color: var(--sf-brand-line);
}
.sf-header-v2__search { background: var(--sf-brand-surface); }
.sf-header-v2__primary-nav a:hover,
.sf-header-v2__primary-nav a.is-active,
.sf-header-v2__shop-cta,
.sf-header-v2__brand-copy small {
    color: var(--brand-700);
}
.sf-header-v2__brand-copy small { opacity: .74; }

/* Shared buttons / states */
.sf-primary-action,
.sf-button.sf-primary-action,
.sf-catalog__apply,
.sf-catalog__filter-toggle {
    border-color: transparent !important;
    background: linear-gradient(135deg, var(--brand-600), var(--brand-700)) !important;
    color: #fff !important;
    box-shadow: 0 16px 32px -24px color-mix(in srgb, var(--brand-700) 58%, transparent);
}
.sf-primary-action:hover,
.sf-button.sf-primary-action:hover,
.sf-catalog__apply:hover,
.sf-catalog__filter-toggle:hover {
    box-shadow: 0 22px 42px -24px color-mix(in srgb, var(--brand-700) 72%, transparent);
}

/* Home */
.sf-home-v2__product-section {
    border-color: var(--sf-brand-line);
    background: linear-gradient(145deg, color-mix(in srgb, var(--brand-50) 28%, #fff), #fff);
    box-shadow: 0 22px 58px -48px var(--sf-brand-shadow);
}
.sf-home-v2__section-head h2,
.sf-section-heading h2,
.sf-home-v2__category-name { color: var(--sf-brand-ink); }
.sf-home-v2__section-head > a,
.sf-section-heading > a { color: var(--brand-700); }
.sf-home-v2__category-placeholder {
    border-color: var(--sf-brand-line);
    background: linear-gradient(145deg, #fff, var(--sf-brand-surface-strong));
    color: var(--brand-700);
}
.sf-home-v2__category-placeholder span { color: var(--brand-700); }

/* Product cards */
.product-card {
    border-color: var(--sf-brand-line) !important;
    box-shadow: 0 18px 44px -38px var(--sf-brand-shadow) !important;
}
.product-card:hover {
    border-color: var(--sf-brand-line-strong) !important;
    box-shadow: 0 26px 58px -40px color-mix(in srgb, var(--brand-900) 32%, transparent) !important;
}
.product-card__body { background: linear-gradient(180deg, #fff, color-mix(in srgb, var(--brand-50) 13%, #fff)); }
.product-card a:hover { color: var(--brand-700); }

/* Category discovery */
.sf-categories-discovery__toolbar,
.sf-category-discovery-card,
.sf-categories-discovery__empty {
    border-color: var(--sf-brand-line);
}
.sf-categories-discovery__toolbar,
.sf-categories-discovery__empty {
    background: color-mix(in srgb, var(--sf-brand-surface) 56%, #fff);
}
.sf-category-discovery-card {
    background: linear-gradient(180deg, #fff, color-mix(in srgb, var(--brand-50) 11%, #fff));
    box-shadow: 0 18px 46px -40px var(--sf-brand-shadow);
}
.sf-category-discovery-card:hover { border-color: var(--sf-brand-line-strong); }
.sf-category-discovery-card__heading h2,
.sf-categories-discovery__summary strong { color: var(--sf-brand-ink); }
.sf-category-discovery-card__children a,
.sf-category-discovery-card__count { background: var(--sf-brand-surface); }
.sf-category-discovery-card__count { color: var(--brand-700); }

/* Catalog */
.sf-catalog__toolbar,
.sf-catalog__filters,
.sf-catalog__empty {
    border-color: var(--sf-brand-line) !important;
    background: color-mix(in srgb, var(--sf-brand-surface) 62%, #fff) !important;
}
.sf-catalog__choice,
.sf-catalog__toolbar-sort,
.sf-catalog__category-search,
.sf-catalog__select { border-color: var(--sf-brand-line) !important; }
.sf-catalog__choice:hover,
.sf-catalog__choice:has(input:checked),
.sf-catalog__chip {
    border-color: var(--sf-brand-line-strong) !important;
    background: var(--brand-50) !important;
    color: var(--brand-700) !important;
}
.sf-catalog__result-copy strong,
.sf-catalog__filters-head strong,
.sf-catalog__filter-group h3 { color: var(--sf-brand-ink) !important; }

/* Product detail */
body[data-sf-page="product"] main {
    background: linear-gradient(180deg, color-mix(in srgb, var(--brand-50) 56%, #fff) 0, #fff 23rem);
}
body[data-sf-page="product"] main>div>div:nth-child(2)>div:first-child>div:first-of-type,
body[data-sf-page="product"] main>div>div:nth-child(2)>div.space-y-6 .rounded-2xl.border.bg-white {
    border-color: var(--sf-brand-line) !important;
    background: linear-gradient(145deg, #fff, var(--sf-brand-surface)) !important;
}
body[data-sf-page="product"] h1 { color: var(--sf-brand-ink) !important; }
body[data-sf-page="product"] main>div>div:nth-child(2)>div.space-y-6>.flex.items-baseline,
body[data-sf-page="product"] main>div>section,
body[data-sf-page="product"] main>div>.mt-10,
body[data-sf-page="product"] main>div>.mt-12 { border-color: var(--sf-brand-line) !important; }
body[data-sf-page="product"] main>div>div:nth-child(2)>div.space-y-6>.p-4.rounded-xl {
    background: linear-gradient(145deg, var(--sf-brand-surface), #fff) !important;
    box-shadow: inset 0 0 0 1px var(--sf-brand-line) !important;
}

/* Cart / checkout */
body[data-sf-page="cart"],
body[data-sf-page="checkout"] {
    --commerce-border: var(--sf-brand-line);
    --commerce-soft: var(--sf-brand-surface);
    --commerce-ink: var(--sf-brand-ink);
    --commerce-muted: var(--sf-brand-muted);
    background: linear-gradient(180deg, color-mix(in srgb, var(--brand-50) 50%, #fff) 0, #fff 34rem);
}
body[data-sf-page="cart"] main .grid.lg\:grid-cols-\[1fr_20rem\]>div>div,
body[data-sf-page="cart"] main aside,
body[data-sf-page="checkout"] main aside,
body[data-sf-page="checkout"] main form>div.space-y-6>div {
    border-color: var(--sf-brand-line) !important;
    background: color-mix(in srgb, var(--sf-brand-surface) 35%, #fff) !important;
}
body[data-sf-page="checkout"] main input[type="text"],
body[data-sf-page="checkout"] main input[type="tel"],
body[data-sf-page="checkout"] main input[type="email"],
body[data-sf-page="checkout"] main textarea {
    border-color: var(--sf-brand-line) !important;
    background: color-mix(in srgb, var(--brand-50) 20%, #fff) !important;
}

/* Footer */
.sf-footer-v2__body {
    background: linear-gradient(160deg, color-mix(in srgb, var(--brand-900) 42%, #0b1220), #0b1220 70%);
}
.sf-footer-v2__trust-row span { border-color: color-mix(in srgb, var(--brand-500) 22%, rgba(148,163,184,.16)); }
.sf-footer-v2__links a:hover,
.sf-footer-v2__contact a:hover { color: color-mix(in srgb, var(--brand-100) 76%, #fff); }

/* Respect minimal personality: brand color remains, shadows stay restrained. */
body[data-sf-personality="minimal"] .product-card,
body[data-sf-personality="minimal"] .sf-category-discovery-card,
body[data-sf-personality="minimal"] .sf-catalog__toolbar,
body[data-sf-personality="minimal"] .sf-catalog__filters { box-shadow: none !important; }
