/* Bambinella storefront — surfaces beyond the home.
 * Tokens come only from bambinella-ds.css. No raw brand values here
 * except the same token references.
 */

/* ---- Page canvas ---- */
body.bn-vitrina .home-container {
    background: transparent;
}

body.bn-vitrina .home-container > .min-h-screen,
body.bn-vitrina .home-container > .bg-white,
body.bn-vitrina .home-container > .bg-\[\#f8f6f6\],
body.bn-vitrina .home-container > .bg-\[\#fdf8fa\],
body.bn-vitrina .home-container > .bg-\[\#fcf8f9\],
body.bn-vitrina .bg-beauty-soft-pink,
body.bn-vitrina .bg-beauty-soft-pink\/30,
body.bn-vitrina [class*="bg-[#f8"],
body.bn-vitrina [class*="bg-[#fd"],
body.bn-vitrina [class*="bg-[#fc"] {
    background: var(--bn-paper) !important;
}

body.bn-vitrina .product-list-page {
    background: var(--bn-glass-wash), var(--bn-paper) !important;
}

/* ---- Type on shop pages ---- */
body.bn-vitrina .home-container h1,
body.bn-vitrina .home-container h2 {
    font-family: var(--bn-display);
    font-weight: 500;
    letter-spacing: var(--bn-track-display);
    color: var(--bn-ink);
}

body.bn-vitrina .home-container h1 em,
body.bn-vitrina .home-container h1 .italic,
body.bn-vitrina .home-container h2 em,
body.bn-vitrina .home-container h2 .italic {
    font-style: italic;
    color: var(--bn-mauve);
}

body.bn-vitrina .home-container h3,
body.bn-vitrina .home-container h4 {
    font-family: var(--bn-sans);
    color: var(--bn-ink);
}

/* ---- Neutralize leftover Beauty Concept paint ---- */
body.bn-vitrina .text-beauty-pink,
body.bn-vitrina .hover\:text-beauty-pink:hover,
body.bn-vitrina a.text-beauty-pink,
body.bn-vitrina [class*="text-[#f472"] {
    color: var(--bn-brand) !important;
}

body.bn-vitrina .product-price-display,
body.bn-vitrina .product-card .product-price-display,
body.bn-vitrina .home-container .text-lg.font-black.text-beauty-pink,
body.bn-vitrina .home-container .text-xl.font-bold {
    color: var(--bn-gem) !important;
}

body.bn-vitrina .bg-beauty-pink,
body.bn-vitrina .bg-\[\#f472b6\],
body.bn-vitrina .btn-pink,
body.bn-vitrina button.bg-beauty-pink,
body.bn-vitrina a.bg-beauty-pink {
    background: var(--bn-ink) !important;
    color: var(--bn-paper) !important;
    border-radius: var(--bn-radius) !important;
    box-shadow: none !important;
    letter-spacing: var(--bn-track-caps);
    text-transform: uppercase;
    font-weight: 600;
}

body.bn-vitrina .bg-beauty-pink\/10,
body.bn-vitrina .hover\:bg-beauty-pink\/10:hover {
    background: var(--bn-paper-2) !important;
}

body.bn-vitrina .border-pink-50,
body.bn-vitrina .border-pink-100,
body.bn-vitrina .border-beauty-pink,
body.bn-vitrina .focus\:border-beauty-pink:focus {
    border-color: var(--bn-line) !important;
}

body.bn-vitrina .focus\:ring-beauty-pink:focus,
body.bn-vitrina .focus\:ring-beauty-pink\/10:focus,
body.bn-vitrina .focus\:ring-beauty-pink\/20:focus,
body.bn-vitrina .focus\:ring-2:focus,
body.bn-vitrina .focus\:ring-4:focus {
    --tw-ring-color: transparent !important;
    box-shadow: none !important;
}

body.bn-vitrina .rounded-xl,
body.bn-vitrina .rounded-2xl,
body.bn-vitrina .rounded-3xl,
body.bn-vitrina .rounded-\[2\.5rem\],
body.bn-vitrina .rounded-lg,
body.bn-vitrina .rounded-full,
body.bn-vitrina .rounded {
    border-radius: var(--bn-radius) !important;
}

body.bn-vitrina .shadow-sm,
body.bn-vitrina .shadow-lg,
body.bn-vitrina .shadow-xl,
body.bn-vitrina .shadow-2xl,
body.bn-vitrina .shadow-pink-200\/20,
body.bn-vitrina .shadow-beauty-pink\/5,
body.bn-vitrina .shadow-beauty-pink\/25 {
    box-shadow: none !important;
}

body.bn-vitrina .text-slate-900,
body.bn-vitrina .text-gray-900,
body.bn-vitrina .text-gray-800,
body.bn-vitrina .text-slate-700 {
    color: var(--bn-ink) !important;
}

body.bn-vitrina .text-slate-600,
body.bn-vitrina .text-slate-500,
body.bn-vitrina .text-gray-600,
body.bn-vitrina .text-gray-500,
body.bn-vitrina .text-slate-400 {
    color: var(--bn-ink-soft) !important;
}

body.bn-vitrina .bg-white,
body.bn-vitrina .bg-white\/80,
body.bn-vitrina .bg-white\/90,
body.bn-vitrina .bg-slate-50,
body.bn-vitrina .bg-slate-50\/50,
body.bn-vitrina .bg-gray-50 {
    background: var(--bn-white) !important;
}

body.bn-vitrina .border-slate-100,
body.bn-vitrina .border-slate-200,
body.bn-vitrina .border-gray-200 {
    border-color: var(--bn-line) !important;
}

/* decorative pink blurs on auth */
body.bn-vitrina .bg-beauty-pink\/20,
body.bn-vitrina .blur-\[120px\] {
    display: none !important;
}

/* ---- Breadcrumbs ---- */
body.bn-vitrina .home-container nav.text-sm a {
    color: var(--bn-ink-soft);
    text-decoration: none;
    transition: color var(--bn-dur-hover) ease;
}

@media (hover: hover) and (pointer: fine) {
    body.bn-vitrina .home-container nav.text-sm a:hover {
        color: var(--bn-brand);
    }
}

/* ---- Forms ---- */
body.bn-vitrina .home-container input[type="text"],
body.bn-vitrina .home-container input[type="email"],
body.bn-vitrina .home-container input[type="password"],
body.bn-vitrina .home-container input[type="search"],
body.bn-vitrina .home-container input[type="number"],
body.bn-vitrina .home-container input[type="tel"],
body.bn-vitrina .home-container textarea,
body.bn-vitrina .home-container select {
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid var(--bn-line) !important;
    border-radius: 0 !important;
    color: var(--bn-ink) !important;
    font-family: var(--bn-sans);
    box-shadow: none !important;
    caret-color: var(--bn-gem);
}

body.bn-vitrina .home-container input::placeholder,
body.bn-vitrina .home-container textarea::placeholder {
    color: var(--bn-ink-soft) !important;
}

body.bn-vitrina .home-container input:focus,
body.bn-vitrina .home-container textarea:focus,
body.bn-vitrina .home-container select:focus {
    border-bottom-color: var(--bn-ink) !important;
    outline: none !important;
}

body.bn-vitrina .home-container label {
    font-size: var(--bn-text-xs);
    letter-spacing: var(--bn-track-caps);
    text-transform: uppercase;
    font-weight: 600;
    color: var(--bn-ink);
}

body.bn-vitrina .home-container button[type="submit"]:not(.bn-cta) {
    background: var(--bn-ink) !important;
    color: var(--bn-paper) !important;
    border: 1px solid var(--bn-ink) !important;
    border-radius: 0 !important;
    letter-spacing: var(--bn-track-caps);
    text-transform: uppercase;
    font-weight: 600;
    font-size: var(--bn-text-xs);
    min-height: 3rem;
    transition: transform var(--bn-dur-press) var(--bn-ease-out);
}

body.bn-vitrina .home-container button[type="submit"]:not(.bn-cta):active {
    transform: scale(0.97);
}

/* ---- Product list cards → piece language ---- */
body.bn-vitrina .product-list-page {
    background: var(--bn-paper) !important;
}

body.bn-vitrina .product-card {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

body.bn-vitrina .product-card .aspect-square,
body.bn-vitrina .product-card .relative.aspect-square {
    background: var(--bn-white) !important;
    border: 1px solid var(--bn-line);
    overflow: hidden;
}

body.bn-vitrina .product-card img {
    transition: transform var(--bn-dur-ui) var(--bn-ease-out);
}

@media (hover: hover) and (pointer: fine) {
    body.bn-vitrina .product-card:hover img {
        transform: scale(1.05);
    }
}

body.bn-vitrina .product-card h3,
body.bn-vitrina .product-card h3 a,
body.bn-vitrina .product-list-page .product-card h3,
body.bn-vitrina .product-list-page .product-card h3 a {
    color: var(--bn-ink) !important;
    font-family: var(--bn-sans);
    font-weight: 600;
    font-size: var(--bn-text-sm);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

body.bn-vitrina .product-list-page .product-card .product-price-display {
    color: var(--bn-gem) !important;
    font-variant-numeric: tabular-nums;
}

body.bn-vitrina .product-list-page aside {
    background: var(--bn-chrome);
    color: var(--bn-paper);
    padding: var(--bn-s5);
    align-self: start;
}

body.bn-vitrina .product-list-page aside h3 {
    color: var(--bn-paper) !important;
    letter-spacing: var(--bn-track-caps);
}

body.bn-vitrina .product-list-page aside a,
body.bn-vitrina .product-list-page aside a:not(.text-beauty-pink) {
    color: rgba(244, 241, 247, 0.78) !important;
    text-decoration: none;
}

body.bn-vitrina .product-list-page aside a.text-beauty-pink,
body.bn-vitrina .product-list-page aside a:hover {
    color: var(--bn-paper) !important;
}

body.bn-vitrina .product-list-page aside span.text-xs {
    background: rgba(244, 241, 247, 0.14) !important;
    color: var(--bn-paper) !important;
    border-radius: 0 !important;
}

body.bn-vitrina .product-list-page aside .text-slate-500,
body.bn-vitrina .product-list-page aside .text-slate-600,
body.bn-vitrina .product-list-page aside .text-slate-900 {
    color: rgba(244, 241, 247, 0.78) !important;
}

body.bn-vitrina .product-list-page aside button {
    background: var(--bn-paper) !important;
    color: var(--bn-chrome) !important;
    border-radius: 0 !important;
}

body.bn-vitrina .wishlist-btn {
    opacity: 1 !important;
    background: var(--bn-white) !important;
    border: 1px solid var(--bn-line);
    border-radius: 0 !important;
    color: var(--bn-ink) !important;
}

body.bn-vitrina .wishlist-btn.text-beauty-pink {
    color: var(--bn-gem) !important;
}

/* pagination squares, not pills */
body.bn-vitrina .product-list-page [class*="size-10"] {
    border-radius: 0 !important;
    border-color: var(--bn-line) !important;
}

body.bn-vitrina .product-list-page .bg-beauty-pink.size-10,
body.bn-vitrina .product-list-page span.bg-beauty-pink {
    background: var(--bn-ink) !important;
    color: var(--bn-paper) !important;
}

/* price slider fill */
body.bn-vitrina #price-slider-fill {
    background: var(--bn-paper) !important;
    border-radius: 0 !important;
}

body.bn-vitrina #price-slider-track {
    background: rgba(244, 241, 247, 0.22) !important;
    border-radius: 0 !important;
}

body.bn-vitrina #price-thumb-min,
body.bn-vitrina #price-thumb-max {
    background: var(--bn-paper) !important;
    border-color: var(--bn-paper) !important;
    border-radius: 0 !important;
}

/* ---- Product detail ---- */
body.bn-vitrina #product-main-img {
    border: 1px solid var(--bn-line);
}

body.bn-vitrina [data-src].border-beauty-pink,
body.bn-vitrina button.border-beauty-pink {
    border-color: var(--bn-ink) !important;
    opacity: 1 !important;
}

/* ---- Cart / checkout steps ---- */
body.bn-vitrina .cart-item {
    background: var(--bn-white) !important;
    border: 1px solid var(--bn-line) !important;
    border-radius: 0 !important;
}

body.bn-vitrina .size-8.rounded-full.bg-\[\#f472b6\],
body.bn-vitrina .size-8.bg-\[\#f472b6\] {
    background: var(--bn-ink) !important;
    color: var(--bn-paper) !important;
}

/* ---- Auth card ---- */
body.bn-vitrina .backdrop-blur-xl {
    backdrop-filter: none;
    background: var(--bn-white) !important;
    border: 1px solid var(--bn-line) !important;
}

/* ---- Contact hero ---- */
body.bn-vitrina section.bg-beauty-soft-pink,
body.bn-vitrina .bg-beauty-soft-pink.py-16 {
    background: var(--bn-ink) !important;
    color: var(--bn-paper);
}

body.bn-vitrina section.bg-beauty-soft-pink h1,
body.bn-vitrina section.bg-beauty-soft-pink p,
body.bn-vitrina .bg-beauty-soft-pink.py-16 h1,
body.bn-vitrina .bg-beauty-soft-pink.py-16 p {
    color: var(--bn-paper) !important;
}

body.bn-vitrina section.bg-beauty-soft-pink .text-beauty-pink,
body.bn-vitrina section.bg-beauty-soft-pink .italic {
    color: var(--bn-brand-tint) !important;
}

/* ---- Search results popover items ---- */
body.bn-vitrina .search-results-dropdown,
body.bn-vitrina .bn-search-pop,
body.bn-vitrina .search-results {
    background: var(--bn-chrome-2) !important;
    border: 1px solid var(--bn-line-inverse) !important;
    color: var(--bn-paper) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

body.bn-vitrina .search-results .search-item,
body.bn-vitrina .search-results-dropdown a,
body.bn-vitrina .bn-search-hit {
    color: var(--bn-paper) !important;
}

body.bn-vitrina .search-results .product-title,
body.bn-vitrina .bn-search-hit h3 {
    color: var(--bn-paper) !important;
}

body.bn-vitrina .search-results .product-price,
body.bn-vitrina .bn-search-hit .bn-price {
    color: var(--bn-gem-soft) !important;
}

body.bn-vitrina .bn-search-more {
    color: var(--bn-brand-tint) !important;
}

/* ---- WhatsApp stays, but no extra chrome ---- */
body.bn-vitrina .whatsapp-float {
    border-radius: 50%;
}

@media (prefers-reduced-motion: reduce) {
    body.bn-vitrina .product-card img {
        transition: none;
    }
}
