/* Extracted from shop-default.html inline <style> for caching + smaller HTML. */
        .shop-shell { background: linear-gradient(180deg, #fff 0%, #fbf7f3 100%); }
        .shop-sidebar-card,.shop-empty-card { padding: 26px; border-radius: 30px; border: 1px solid rgba(17,17,17,.08); background: #fff; box-shadow: 0 18px 42px rgba(17,17,17,.05); }
        .shop-sidebar-card + .shop-sidebar-card { margin-top: 20px; }
        .shop-sidebar-title { font-size: 19px; margin-bottom: 18px; }
        .shop-sidebar-list { display: grid; gap: 12px; }
        .shop-sidebar-link { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: #111; text-decoration: none; }
        .shop-sidebar-link strong { font-weight: 600; }
        .shop-field-label { display: block; margin-bottom: 8px; font-size: 13px; font-weight: 600; color: #111; }
        .shop-filter-block + .shop-filter-block { margin-top: 24px; padding-top: 24px; border-top: 1px solid rgba(17,17,17,.08); }
        .shop-filter-title { font-size: 15px; font-weight: 700; margin-bottom: 14px; text-transform: uppercase; letter-spacing: .08em; }
        .shop-chip-grid { display: flex; flex-wrap: wrap; gap: 10px; }
        .shop-filter-chip input { display: none; }
        .shop-filter-chip span { display: inline-flex; align-items: center; justify-content: center; min-height: 40px; padding: 0 16px; border-radius: 999px; border: 1px solid rgba(17,17,17,.12); background: #fff; color: #111; font-size: 13px; font-weight: 600; cursor: pointer; transition: all .2s ease; }
        .shop-filter-chip input:checked + span { background: #111; border-color: #111; color: #fff; box-shadow: 0 12px 24px rgba(17,17,17,.14); }
        .shop-color-chip span { min-width: 42px; width: 42px; padding: 0; position: relative; }
        .shop-color-chip span::after { content: ""; width: 24px; height: 24px; border-radius: 50%; background: var(--swatch-color,#111); border: 1px solid rgba(17,17,17,.08); }
        .shop-color-chip input:checked + span::before { content: ""; position: absolute; inset: 6px; border-radius: 999px; border: 1.5px solid rgba(255,255,255,.72); }
        .shop-price-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
        .shop-field-control,.shop-sort-select { min-height: 50px; border-radius: 18px; border: 1px solid rgba(17,17,17,.12); background: #fff; }
        .tf-shop-control { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 28px; padding: 22px 26px; border-radius: 30px; border: 1px solid rgba(17,17,17,.08); background: #fff; box-shadow: 0 18px 42px rgba(17,17,17,.05); flex-wrap: wrap; }
        .tf-btn-filter { display: inline-flex; align-items: center; gap: 10px; min-height: 50px; padding: 0 20px; border-radius: 999px; border: 1px solid rgba(17,17,17,.12); background: #fff; color: #111; text-decoration: none; font-weight: 600; }
        .tf-shop-control__right { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
        .shop-mobile-toolbar { display: none; align-items: center; gap: 10px; flex-wrap: wrap; }
        .shop-mobile-chip { display: inline-flex; align-items: center; gap: 8px; min-height: 42px; padding: 0 16px; border-radius: 999px; border: 1px solid rgba(17,17,17,.12); background: #fff; color: #111; text-decoration: none; font-size: 13px; font-weight: 600; }
        .shop-sidebar-close { display: none; width: 42px; height: 42px; border-radius: 50%; border: 1px solid rgba(17,17,17,.08); background: #fff; color: #111; }
        .shop-filter-backdrop { display: none; }
        .shop-results-grid { display: grid; gap: 24px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
        .shop-results-grid[data-view='grid-2'] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        .shop-results-grid[data-view='grid-3'],
        .shop-results-grid[data-view='grid'],
        .shop-results-grid[data-view='grid-4'] { grid-template-columns: repeat(3, minmax(0, 1fr)); }
        .shop-results-grid[data-view='list'] { grid-template-columns: 1fr; }
        .shop-card { padding: 14px; border-radius: 28px; background: #fff; box-shadow: 0 18px 42px rgba(17,17,17,.06); transition: transform .28s ease, box-shadow .28s ease; }
        .shop-card:hover { transform: translateY(-6px); box-shadow: 0 24px 48px rgba(17,17,17,.1); }
        .shop-card-wrapper { position: relative; border-radius: 22px; overflow: hidden; background: #f4efe9; }
        .shop-card-media { display: block; position: relative; background: #f4efe9; }
        .shop-card-media img { width: 100%; aspect-ratio: 330/430; object-fit: cover; transition: transform .45s ease, opacity .45s ease; }
        .shop-card-media__secondary { position: absolute; inset: 0; opacity: 0; transform: scale(1.04); }
        .shop-card-media.has-secondary:hover .shop-card-media__primary { opacity: 0; transform: scale(1.02); }
        .shop-card-media.has-secondary:hover .shop-card-media__secondary { opacity: 1; transform: scale(1); }
        .shop-card-badges { position: absolute; top: 18px; left: 18px; display: flex; gap: 10px; z-index: 2; }
        .shop-card-badges span { display: inline-flex; align-items: center; min-height: 28px; padding: 0 10px; border-radius: 999px; background: #fff; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
        .shop-card-info { padding: 18px 6px 6px; }
        .shop-card-category { font-size: 12px; color: #667085; text-transform: uppercase; letter-spacing: .14em; margin-bottom: 8px; }
        .shop-card-name { display: block; min-height: 54px; font-size: 22px; line-height: 1.18; color: #111; text-decoration: none; }
        .shop-card-stars { display: flex; align-items: center; gap: 3px; margin-top: 10px; color: #f5a547; font-size: 13px; }
        .shop-card-price { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-top: 10px; }
        .shop-card-price strong { color: #ef4b43; font-size: 24px; }
        .shop-card-price span { color: #b6b6b6; text-decoration: line-through; }
        .shop-card-meta { margin-top: 12px; color: #667085; font-size: 14px; }
        .shop-card-swatches { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
        .shop-swatch-btn { width: 22px; height: 22px; border-radius: 50%; border: 1px solid rgba(17,17,17,.18); padding: 0; background: #fff; position: relative; }
        .shop-swatch-btn::after { content: ""; position: absolute; inset: 3px; border-radius: 50%; background: var(--swatch-color, #111); }
        .shop-size-list { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
        .shop-size-chip { display: inline-flex; align-items: center; justify-content: center; min-width: 36px; height: 30px; padding: 0 11px; border-radius: 999px; background: #f6f1ec; color: #111; font-size: 12px; font-weight: 600; }
        .shop-card-quick { position: absolute; left: 18px; right: 18px; bottom: 18px; }
        .shop-card-quick .tf-btn { min-height: 50px; border-radius: 999px; }
        .shop-sale-marquee { position: absolute; left: 16px; right: 16px; bottom: 76px; z-index: 2; overflow: hidden; border-radius: 999px; background: #111; padding: 7px 0; color: #fff; box-shadow: 0 10px 22px rgba(17,17,17,.18); }
        .shop-sale-marquee__track { display: inline-flex; align-items: center; gap: 18px; min-width: 200%; animation: shop-marquee 14s linear infinite; white-space: nowrap; font-size: 11px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
        .shop-sale-marquee__track i { font-size: 11px; color: #f15c4f; }
        .shop-results-grid[data-view='list'] .shop-card { display: grid; grid-template-columns: minmax(0, 300px) minmax(0, 1fr); gap: 24px; align-items: stretch; }
        .shop-results-grid[data-view='list'] .shop-card-info { padding: 10px 4px 8px 0; display: flex; flex-direction: column; justify-content: center; }
        .shop-results-grid[data-view='list'] .shop-card-name { min-height: 0; }
        .shop-results-grid[data-view='list'] .shop-card-media img { aspect-ratio: 4/5; }
        .shop-results-grid[data-view='list'] .shop-card-quick { position: static; margin-top: 18px; }
        .shop-results-grid[data-view='list'] .shop-sale-marquee { bottom: 18px; left: 18px; right: 18px; }
        @keyframes shop-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
        @media (max-width: 1399.98px) { .shop-results-grid[data-view='grid-4'] { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
        @media (max-width: 1199.98px) { .shop-results-grid, .shop-results-grid[data-view='grid-4'], .shop-results-grid[data-view='grid-3'] { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
        @media (max-width: 991.98px) { .shop-shell .sticky-top { position: static !important; } .shop-results-grid[data-view='list'] .shop-card { grid-template-columns: 1fr; } .shop-mobile-toolbar { display: flex; } .shop-sidebar-column { position: static; min-height: 0; } .shop-filter-backdrop { display: block; position: fixed; inset: 0; background: rgba(17,17,17,.36); backdrop-filter: blur(4px); opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .28s ease, visibility .28s ease; z-index: 1140; } .shop-sidebar-column #shop-filters { display: block; position: fixed !important; top: 0 !important; right: 0; bottom: 0; width: min(86vw, 380px); max-width: 100%; height: 100dvh; margin: 0; padding-bottom: calc(22px + env(safe-area-inset-bottom)); border-radius: 28px 0 0 28px; overflow-y: auto; overscroll-behavior: contain; z-index: 1150; box-shadow: -24px 0 56px rgba(17,17,17,.18); opacity: 0; visibility: hidden; pointer-events: none; transform: translateX(108%); transition: transform .32s ease, opacity .22s ease, visibility .22s ease; } .shop-sidebar-column.is-open #shop-filters { opacity: 1; visibility: visible; pointer-events: auto; transform: translateX(0); } .shop-sidebar-column.is-open .shop-filter-backdrop { opacity: 1; visibility: visible; pointer-events: auto; } .shop-sidebar-close { display: inline-flex; align-items: center; justify-content: center; } }
        @media (max-width: 767.98px) { .shop-results-grid, .shop-results-grid[data-view='grid-2'], .shop-results-grid[data-view='grid-3'], .shop-results-grid[data-view='grid-4'] { grid-template-columns: 1fr; } .tf-shop-control { align-items: stretch; padding: 18px; gap: 14px; } .tf-shop-control__right { justify-content: space-between; width: 100%; } .shop-sort-select { min-width: 100%; } .shop-price-grid { grid-template-columns: 1fr; } .shop-sidebar-card,.shop-empty-card { padding: 20px; border-radius: 24px; } .shop-sidebar-column #shop-filters { width: min(90vw, 360px); border-radius: 24px 0 0 24px; } .shop-mobile-chip { min-height: 40px; padding: 0 14px; font-size: 12px; } .shop-card { padding: 12px; border-radius: 24px; } .shop-card-name { min-height: 0; font-size: 19px; } }
    
