@import url('https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,500;1,400&display=swap');

/* ==================================================================== */
/* 0. МГНОВЕННОЕ СКРЫТИЕ НЕНУЖНЫХ ХВОСТОВ, ПАГИНАЦИИ И ИНФО-БЛОКОВ       */
/* ==================================================================== */
.products.row, 
.row.row-products, 
.products, 
.products-grid, 
.widget-products, 
ul.products, 
.woocommerce-result-count,
.woocommerce-pagination,
.woocommerce-ordering,
.storefront-sorting,
.woocommerce-products-header,
.archive-description,
.term-description,
nav.woocommerce-pagination {
    display: none !important;
}

/* ==================================================================== */
/* 1. БАЗОВАЯ СЕТКА И КАРТОЧКИ                                          */
/* ==================================================================== */
.apple-bento-header {
    text-align: center !important;
    padding: 50px 20px 30px !important;
    max-width: 800px !important;
    margin: 0 auto !important;
}

.apple-eyebrow {
    font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    color: #86868b !important;
    margin-bottom: 12px !important;
}

.apple-title {
    font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", sans-serif !important;
    font-size: 46px !important;
    font-weight: 800 !important;
    letter-spacing: -0.03em !important;
    line-height: 1.05 !important;
    color: #1d1d1f !important;
    margin: 0 0 16px 0 !important;
}

.apple-subtitle {
    font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", sans-serif !important;
    font-size: 18px !important;
    line-height: 1.4 !important;
    color: #515154 !important;
    font-weight: 400 !important;
    margin: 0 auto !important;
    max-width: 650px !important;
    letter-spacing: -0.01em !important;
}

/* БАЗОВАЯ СЕТКА ПК (> 1200px) */
.apple-bento-grid-layout {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    grid-auto-rows: 460px !important;
    gap: 24px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 0 20px 0 !important;
    font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Roboto, sans-serif !important;
    box-sizing: border-box !important;
}

.apple-bento-grid-layout .bento-grid-item {
    cursor: pointer !important;
    overflow: visible !important;
    position: relative !important;
    background-color: #ffffff !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    border-radius: 32px !important;
    color: #1d1d1f !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.02) !important;
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    box-sizing: border-box !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    height: 100% !important;
    width: 100% !important;
}

.apple-bento-grid-layout .bento-grid-item:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 20px 40px rgba(0,0,0,0.08) !important;
    z-index: 10 !important;
    border-color: rgba(0,0,0,0.06) !important;
}

.apple-bento-grid-layout .bento-large { grid-column: span 2 !important; grid-row: span 2 !important; padding: 32px !important; }
.apple-bento-grid-layout .bento-wide { grid-column: span 2 !important; grid-row: span 1 !important; padding: 24px !important; }
.apple-bento-grid-layout .bento-normal { grid-column: span 1 !important; grid-row: span 1 !important; padding: 24px !important; }

.apple-bento-grid-layout .apple-card-content {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    height: 100% !important;
    position: relative !important;
    z-index: 5 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}

.apple-bento-grid-layout .apple-card-info {
    display: flex !important;
    flex-direction: column !important;
    overflow: visible !important;
}

.apple-bento-grid-layout .apple-card-bottom-cluster {
    margin-top: auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    width: 100% !important;
}

.apple-bento-grid-layout .apple-card-price-wrap {
    flex-shrink: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 6px !important;
    margin-bottom: 12px !important;
}

.apple-bento-grid-layout .wcvc-catalog-wrapper {
    flex-shrink: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    margin-bottom: 12px !important;
}

.apple-bento-grid-layout .apple-card-action {
    flex-shrink: 0 !important;
    margin: 0 !important;
    align-self: flex-start !important;
}

/* ВОССТАНОВЛЕННАЯ ОРИГИНАЛЬНАЯ ШИРИНА ФОТО НА ПК */
.apple-bento-grid-layout .bento-normal .apple-card-content { width: 48% !important; }
.apple-bento-grid-layout .bento-normal .apple-card-img-wrap { overflow: hidden !important; width: 48% !important; height: calc(100% - 32px) !important; right: 16px !important; top: 16px !important; bottom: 16px !important; border-radius: 20px !important; position: absolute !important; }
.apple-bento-grid-layout .bento-normal h3.apple-card-title a { font-size: 19px !important; line-height: 1.2 !important; }
.apple-bento-grid-layout .bento-normal .price { font-size: 24px !important; }

.apple-bento-grid-layout .bento-wide .apple-card-content { width: 50% !important; }
.apple-bento-grid-layout .bento-wide .apple-card-img-wrap { overflow: hidden !important; width: 46% !important; height: calc(100% - 32px) !important; right: 16px !important; top: 16px !important; bottom: 16px !important; border-radius: 20px !important; position: absolute !important; }
.apple-bento-grid-layout .bento-wide h3.apple-card-title a { font-size: 24px !important; line-height: 1.2 !important; }
.apple-bento-grid-layout .bento-wide .price { font-size: 28px !important; }

.apple-bento-grid-layout .bento-large .apple-card-content { width: 48% !important; }
.apple-bento-grid-layout .bento-large .apple-card-img-wrap { overflow: hidden !important; width: 48% !important; height: calc(100% - 48px) !important; right: 24px !important; top: 24px !important; bottom: 24px !important; border-radius: 24px !important; position: absolute !important; }
.apple-bento-grid-layout .bento-large h3.apple-card-title a { font-size: 32px !important; line-height: 1.15 !important; }
.apple-bento-grid-layout .bento-large .price { font-size: 36px !important; }

/* БЕЙДЖИ И ПЛАШКИ */
.apple-bento-grid-layout .apple-badge-sold {
    position: absolute !important;
    top: 16px !important;
    left: 16px !important;
    right: auto !important;
    background: #ff3b30 !important;
    color: #fff !important;
    padding: 6px 14px !important;
    border-radius: 14px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    z-index: 10 !important;
}

.apple-bento-grid-layout .apple-card-action button.sold-out-btn {
    background: #f5f5f7 !important;
    color: #86868b !important;
    cursor: not-allowed !important;
    transform: none !important;
    box-shadow: none !important;
}

@media (min-width: 1201px) {
    .apple-bento-grid-layout .bento-large .apple-badge-sold { top: 24px !important; left: 24px !important; }
}

.apple-special-badge {
    display: inline-flex !important;
    align-items: center !important;
    color: #fff !important;
    padding: 4px 10px !important;
    border-radius: 8px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    margin-bottom: 12px !important;
    width: fit-content !important;
    box-shadow: 0 4px 10px rgba(0,0,0,0.1) !important;
    white-space: nowrap !important;
}

.pop-badge { background: linear-gradient(135deg, #ff3b30 0%, #ff6b22 100%) !important; }
.nov-badge { background: linear-gradient(135deg, #007aff 0%, #34aadc 100%) !important; }

.apple-bento-grid-layout .apple-cat-row {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-shrink: 0 !important;
    margin-bottom: 8px !important;
    position: relative !important;
    overflow: visible !important;
}

.apple-bento-grid-layout .apple-card-cat {
    color: #86868b !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    transition: color 0.2s;
}

.apple-bento-grid-layout .apple-card-cat:hover { color: #1d1d1f !important; }

.apple-bento-grid-layout .apple-info-btn {
    background: #f5f5f7 !important;
    color: #515154 !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    transition: all 0.2s !important;
    flex-shrink: 0 !important;
    z-index: 20 !important;
    width: 22px !important;
    height: 22px !important;
    cursor: help !important;
}

.apple-bento-grid-layout .apple-info-btn svg { stroke-width: 2.5px !important; width: 12px !important; height: 12px !important; }
.apple-bento-grid-layout .apple-info-btn:hover { background: #1d1d1f !important; color: #ffffff !important; transform: scale(1.1) !important; }

/* ТУЛТИП И ВНУТРЕННИЙ СКРОЛЛ */
.apple-bento-grid-layout .apple-tooltip {
    position: absolute !important;
    top: calc(100% + 10px) !important;
    left: -10px !important;
    width: 220px !important;
    max-width: 85vw !important;
    background: rgba(255, 255, 255, 0.95) !important;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    color: #1d1d1f !important;
    padding: 12px 0 12px 14px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(0,0,0,0.08) !important;
    font-size: 11px !important;
    line-height: 1.3 !important;
    box-shadow: 0 16px 32px rgba(0,0,0,0.15) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(6px) !important;
    transition: opacity 0.3s, transform 0.3s, visibility 0.3s !important;
    z-index: 999999 !important;
    pointer-events: auto !important;
    text-align: left !important;
    box-sizing: border-box !important;
}

.apple-bento-grid-layout .apple-info-btn:hover .apple-tooltip {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
}

.apple-bento-grid-layout .apple-tooltip-scroll {
    max-height: 140px !important;
    overflow-y: auto !important;
    padding-right: 10px !important;
    overscroll-behavior: contain !important;
}

.apple-bento-grid-layout .apple-tooltip-scroll::-webkit-scrollbar { width: 4px !important; }
.apple-bento-grid-layout .apple-tooltip-scroll::-webkit-scrollbar-track { background: transparent !important; }
.apple-bento-grid-layout .apple-tooltip-scroll::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.15) !important; border-radius: 4px !important; }

/* ТЕКСТЫ И СТАТИСТИКА */
.apple-bento-grid-layout h3.apple-card-title { margin: 0 !important; width: 100% !important; flex-shrink: 0 !important; }

.apple-bento-grid-layout h3.apple-card-title a {
    font-weight: 800 !important;
    color: #1d1d1f !important;
    text-decoration: none !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 4 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    letter-spacing: -0.02em !important;
}

.apple-bento-grid-layout .apple-stats-row {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    flex-shrink: 0 !important;
    margin-top: 12px !important;
    margin-bottom: 12px !important;
    align-items: flex-start !important;
}

.apple-bento-grid-layout .apple-stat-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-weight: 600 !important;
    color: #48484a !important;
    background: #f5f5f7 !important;
    flex-shrink: 0 !important;
    padding: 6px 12px !important;
    border-radius: 10px !important;
    font-size: 12px !important;
}

.apple-bento-grid-layout .apple-stat-badge svg { color: #1d1d1f !important; flex-shrink: 0 !important; width: 14px !important; height: 14px !important; }
.winter-badge { background: #e5f0ff !important; color: #007aff !important; }
.winter-badge svg { color: #007aff !important; }
.good-price-badge { background: #e4f8eb !important; color: #34c759 !important; }
.good-price-badge svg { color: #34c759 !important; }
.discount-badge-new { background: #fff0e6 !important; color: #ff9500 !important; }
.discount-badge-new svg { stroke: #ff9500 !important; color: #ff9500 !important; }

/* ЦЕНА И КНОПКИ WCVС */
.apple-bento-grid-layout .apple-card-price-wrap *, .apple-bento-grid-layout .price, .apple-bento-grid-layout .woocommerce-Price-amount, .apple-bento-grid-layout .woocommerce-Price-currencySymbol, .apple-bento-grid-layout bdi, .apple-bento-grid-layout ins {
    color: #1d1d1f !important;
    background: none !important;
    background-image: none !important;
    -webkit-background-clip: initial !important;
    -webkit-text-fill-color: #1d1d1f !important;
    fill: #1d1d1f !important;
}

.apple-bento-grid-layout .price {
    font-weight: 900 !important;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text", Roboto, sans-serif !important;
    letter-spacing: -0.03em !important;
    display: inline-block !important;
    margin: 0 !important;
}

.apple-bento-grid-layout .wcvc-btn-group { display: flex !important; flex-direction: row !important; gap: 8px !important; margin-bottom: 12px !important; }

.apple-bento-grid-layout .wcvc-addon-btn {
    flex: 1 !important;
    background: #f5f5f7 !important;
    border: 1px solid transparent !important;
    color: #1d1d1f !important;
    cursor: pointer !important;
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    border-radius: 12px !important;
    transition: all 0.2s ease !important;
    padding: 8px 4px !important;
}

.apple-bento-grid-layout .wcvc-addon-btn b { font-weight: 700 !important; color: #515154 !important; transition: color 0.2s ease !important; }
.apple-bento-grid-layout .wcvc-addon-btn.active { background: #1d1d1f !important; color: #ffffff !important; box-shadow: 0 4px 10px rgba(0,0,0,0.1) !important; border-radius: 12px !important; }
.apple-bento-grid-layout .wcvc-addon-btn.active b { color: #ffffff !important; }

/* ГЛАВНАЯ КНОПКА */
.apple-bento-grid-layout .apple-card-action a.button, .apple-bento-grid-layout .apple-card-action button {
    background: #1d1d1f !important;
    border: none !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    white-space: nowrap !important;
    min-width: 140px !important;
    height: 46px !important;
    padding: 0 20px !important;
    box-sizing: border-box !important;
    border-radius: 16px !important;
}

.apple-bento-grid-layout .apple-card-action a.button:hover, .apple-bento-grid-layout .apple-card-action button:hover { transform: scale(1.02) !important; box-shadow: 0 6px 16px rgba(0,0,0,0.15) !important; }
.apple-card-action a.button.apple-btn-added, .apple-card-action button.apple-btn-added { background-color: #34c759 !important; color: #fff !important; transform: scale(0.98) !important; box-shadow: 0 4px 15px rgba(52, 199, 89, 0.3) !important; }

/* ГАЛЕРЕЯ ФОТО И ОФФЛАЙН-ФОЛЛБЭК */
.apple-bento-grid-layout .apple-card-img-wrap { z-index: 2 !important; display: flex !important; align-items: center !important; justify-content: center !important; background: rgba(0,0,0,0.02) !important; overflow: hidden !important; }
.apple-bento-grid-layout .apple-card-img-wrap a.apple-gallery-link { display: block !important; width: 100% !important; height: 100% !important; position: relative !important; border-radius: inherit !important; overflow: hidden !important; }
.apple-bento-grid-layout .apple-card-img-wrap img.apple-gallery-img { width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: center !important; position: absolute !important; top: 0; left: 0; transition: opacity 0.3s ease-out, transform 0.5s ease, filter 0.5s ease !important; }

.apple-lazy-blur { transition: filter 0.4s cubic-bezier(0.4, 0, 0.2, 1), transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease !important; }
.apple-blur-loading { filter: blur(12px) !important; transform: scale(1.1) !important; }
.apple-blur-loaded { filter: blur(0) !important; transform: scale(1) !important; }
.apple-img-offline { opacity: 0.85 !important; filter: saturate(0.8) !important; transition: opacity 0.3s ease, filter 0.3s ease !important; }
.apple-bento-grid-layout .bento-grid-item:hover .apple-card-img-wrap img.apple-blur-loaded { transform: scale(1.03) !important; }

/* АДАПТИВНОСТЬ: НОУТБУКИ (850px - 1200px) */
@media (max-width: 1200px) {
    .apple-bento-grid-layout { grid-template-columns: repeat(3, 1fr) !important; grid-auto-rows: auto !important; gap: 20px !important; }
    .apple-bento-grid-layout .bento-large, .apple-bento-grid-layout .bento-wide, .apple-bento-grid-layout .bento-normal { grid-column: span 1 !important; grid-row: span 1 !important; padding: 20px !important; display: flex !important; flex-direction: column !important; height: 100% !important; overflow: visible !important; }
    .apple-bento-grid-layout .apple-stats-row { position: absolute !important; top: 12px !important; left: 12px !important; z-index: 30 !important; opacity: 0 !important; visibility: hidden !important; transform: translateY(-5px) !important; display: flex !important; flex-direction: column !important; align-items: flex-start !important; gap: 6px !important; margin: 0 !important; max-width: calc(100% - 24px) !important; transition: all 0.3s ease !important; }
    .apple-bento-grid-layout .bento-grid-item:hover .apple-stats-row { opacity: 1 !important; visibility: visible !important; transform: translateY(0) !important; pointer-events: auto !important; }
    .apple-bento-grid-layout .apple-stat-badge { background: rgba(255, 255, 255, 0.95) !important; box-shadow: 0 4px 10px rgba(0,0,0,0.1) !important; }
    .apple-bento-grid-layout .apple-card-content { width: 100% !important; order: 2 !important; height: 100% !important; display: flex !important; flex-direction: column !important; position: static !important; }
    .apple-bento-grid-layout .bento-large .apple-card-img-wrap, .apple-bento-grid-layout .bento-wide .apple-card-img-wrap, .apple-bento-grid-layout .bento-normal .apple-card-img-wrap { position: relative !important; width: 100% !important; height: 240px !important; right: auto !important; bottom: auto !important; top: auto !important; border-radius: 16px !important; order: 1 !important; margin-bottom: 16px !important; flex-shrink: 0 !important; overflow: hidden !important; }
    .apple-bento-grid-layout h3.apple-card-title a { font-size: 18px !important; line-height: 1.2 !important; }
    .apple-bento-grid-layout .price { font-size: 24px !important; }
    .apple-bento-grid-layout .apple-card-bottom-cluster { margin-top: auto !important; width: 100% !important; display: flex !important; flex-direction: column !important; }
    .apple-bento-grid-layout .apple-card-price-wrap { width: 100% !important; flex-direction: row !important; justify-content: flex-start !important; align-items: center !important; margin-bottom: 10px !important; }
    .apple-bento-grid-layout .wcvc-catalog-wrapper { width: 100% !important; margin-top: 0 !important; }
    .apple-bento-grid-layout .wcvc-btn-group { display: flex !important; width: 100% !important; justify-content: space-between !important; gap: 8px !important; flex-wrap: nowrap !important; }
    .apple-bento-grid-layout .wcvc-addon-btn { flex: 1 !important; font-size: 13px !important; padding: 10px 4px !important; border-radius: 12px !important; }
    .apple-bento-grid-layout .apple-card-action { width: 100% !important; margin-top: 10px !important; }
    .apple-bento-grid-layout .apple-card-action a.button, .apple-bento-grid-layout .apple-card-action button { width: 100% !important; box-sizing: border-box !important; font-size: 16px !important; border-radius: 16px !important; }
}

/* АДАПТИВНОСТЬ: ПЛАНШЕТЫ И ТЕЛЕФОНЫ (< 850px) */
@media (max-width: 850px) {
    .apple-bento-grid-layout { grid-template-columns: repeat(2, 1fr) !important; gap: 12px !important; padding: 0 10px !important; }
    .apple-bento-grid-layout .bento-large, .apple-bento-grid-layout .bento-wide, .apple-bento-grid-layout .bento-normal { grid-column: span 1 !important; grid-row: span 1 !important; padding: 14px !important; border-radius: 20px !important; height: 100% !important; display: flex !important; flex-direction: column !important; }
    .apple-bento-grid-layout .bento-large .apple-card-content, .apple-bento-grid-layout .bento-wide .apple-card-content, .apple-bento-grid-layout .bento-normal .apple-card-content { width: 100% !important; position: static !important; }
    .apple-bento-grid-layout .bento-large .apple-card-img-wrap, .apple-bento-grid-layout .bento-wide .apple-card-img-wrap, .apple-bento-grid-layout .bento-normal .apple-card-img-wrap { height: 160px !important; margin-bottom: 12px !important; border-radius: 14px !important; overflow: hidden !important; position: relative !important; width: 100% !important; right: auto !important; top: auto !important; bottom: auto !important; }
    .apple-bento-grid-layout .bento-large h3.apple-card-title a, .apple-bento-grid-layout .bento-wide h3.apple-card-title a, .apple-bento-grid-layout .bento-normal h3.apple-card-title a { font-size: 15px !important; line-height: 1.25 !important; font-weight: 800 !important; letter-spacing: -0.01em !important; }
    .apple-bento-grid-layout .bento-large .price, .apple-bento-grid-layout .bento-wide .price, .apple-bento-grid-layout .bento-normal .price { font-size: 20px !important; font-weight: 900 !important; }
    .apple-bento-grid-layout .apple-info-btn { display: none !important; }
    .apple-bento-grid-layout .apple-stats-row { opacity: 1 !important; visibility: visible !important; transform: none !important; position: static !important; top: auto !important; left: auto !important; margin-top: 8px !important; margin-bottom: 0 !important; max-width: 100% !important; flex-direction: row !important; flex-wrap: wrap !important; gap: 4px !important; pointer-events: auto !important; }
    .apple-bento-grid-layout .apple-stat-badge { font-size: 10px !important; padding: 4px 6px !important; background: #f0f0f5 !important; border-radius: 6px !important; box-shadow: none !important; }
    .apple-bento-grid-layout .apple-stat-badge svg { width: 12px !important; height: 12px !important; }
    .apple-bento-grid-layout .apple-card-bottom-cluster { gap: 10px !important; margin-top: 14px !important; padding-top: 10px !important; }
    .apple-bento-grid-layout .wcvc-btn-group { flex-wrap: wrap !important; width: 100% !important; }
    .apple-bento-grid-layout .wcvc-addon-btn { flex: 1 1 calc(50% - 8px) !important; font-size: 11px !important; padding: 6px 4px !important; border-radius: 10px !important; }
    .apple-bento-grid-layout .apple-card-action a.button, .apple-bento-grid-layout .apple-card-action button { font-size: 14px !important; padding: 0 12px !important; border-radius: 12px !important; min-width: 100% !important; width: 100% !important; }
}

@media (max-width: 450px) {
    .apple-bento-grid-layout { grid-template-columns: 1fr !important; }
    .apple-bento-grid-layout .bento-large .apple-card-img-wrap, .apple-bento-grid-layout .bento-wide .apple-card-img-wrap, .apple-bento-grid-layout .bento-normal .apple-card-img-wrap { height: 260px !important; }
    .apple-bento-grid-layout h3.apple-card-title a { font-size: 18px !important; }
    .apple-bento-grid-layout .price { font-size: 22px !important; }
}

/* ==================================================================== */
/* 2. ИЗБРАННОЕ И ТОЧКИ ГАЛЕРЕИ                                         */
/* ==================================================================== */
.apple-gallery-progress { position: absolute !important; bottom: 12px !important; left: 50% !important; transform: translateX(-50%) !important; display: flex !important; gap: 6px !important; z-index: 20 !important; background: rgba(255,255,255,0.7) !important; padding: 4px 8px !important; border-radius: 10px !important; backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); opacity: 0 !important; transition: opacity 0.3s ease !important; pointer-events: none !important; }
.apple-card-img-wrap.has-gallery:hover .apple-gallery-progress { opacity: 1 !important; }
.apple-gallery-dot { width: 5px !important; height: 5px !important; border-radius: 50% !important; transition: background 0.2s ease !important; }

.apple-zks-badge { position: absolute !important; bottom: 12px !important; left: 12px !important; background: rgba(255, 255, 255, 0.9) !important; backdrop-filter: blur(8px); color: #1d1d1f !important; padding: 4px 10px !important; border-radius: 8px !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: 0.5px !important; z-index: 10 !important; box-shadow: 0 2px 8px rgba(0,0,0,0.05) !important; pointer-events: none !important; }

.apple-fav-container { position: absolute !important; top: 12px !important; right: 12px !important; z-index: 10 !important; display: flex !important; align-items: center !important; gap: 8px !important; }
.apple-copy-btn { width: 34px !important; height: 34px !important; background: rgba(255, 255, 255, 0.9) !important; backdrop-filter: blur(8px); border-radius: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important; cursor: pointer !important; transition: transform 0.2s ease, background 0.2s ease !important; box-shadow: 0 4px 10px rgba(0,0,0,0.05) !important; flex-shrink: 0 !important; }
.apple-copy-btn:hover { transform: scale(1.1) !important; background: #fff !important; }
.apple-copy-btn svg { width: 16px !important; height: 16px !important; stroke: #86868b; transition: stroke 0.2s !important; }
.apple-copy-btn:hover svg { stroke: #1d1d1f !important; }

.apple-fav-view-btn { background: rgba(255, 255, 255, 0.9) !important; backdrop-filter: blur(8px); padding: 6px 14px !important; border-radius: 16px !important; font-size: 13px !important; font-weight: 600 !important; color: #1d1d1f !important; cursor: pointer !important; opacity: 0 !important; transform: translateX(10px) !important; transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important; pointer-events: none !important; box-shadow: 0 4px 10px rgba(0,0,0,0.05) !important; }
.apple-fav-container.active .apple-fav-view-btn { opacity: 1 !important; transform: translateX(0) !important; pointer-events: auto !important; }
.apple-fav-view-btn:hover { background: #ffffff !important; transform: scale(1.05) !important; }

.apple-fav-btn { width: 34px !important; height: 34px !important; background: rgba(255, 255, 255, 0.9) !important; backdrop-filter: blur(8px); border-radius: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important; cursor: pointer !important; transition: transform 0.2s ease, background 0.2s ease !important; box-shadow: 0 4px 10px rgba(0,0,0,0.05) !important; }
.apple-fav-btn:hover { transform: scale(1.1) !important; background: #fff !important; }
.apple-fav-btn svg { width: 18px !important; height: 18px !important; fill: none; stroke: #86868b; stroke-width: 2.5; transition: fill 0.3s, stroke 0.3s !important; }
.apple-fav-container.active .apple-fav-btn svg { fill: #ff3b30 !important; stroke: #ff3b30 !important; }

/* Модальное окно Избранного */
#apple-wishlist-modal { position: fixed !important; top: 0 !important; left: 0 !important; width: 100vw !important; height: 100vh !important; z-index: 100000 !important; display: flex !important; justify-content: center !important; align-items: center !important; opacity: 0 !important; visibility: hidden !important; transition: opacity 0.3s, visibility 0.3s !important; font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", sans-serif !important; }
#apple-wishlist-modal.active { opacity: 1 !important; visibility: visible !important; }
.apple-wishlist-overlay { position: absolute !important; top: 0 !important; left: 0 !important; width: 100% !important; height: 100% !important; background: rgba(0,0,0,0.4) !important; backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.apple-wishlist-content { position: relative !important; width: 90% !important; max-width: 500px !important; max-height: 80vh !important; background: #fff !important; border-radius: 24px !important; box-shadow: 0 20px 50px rgba(0,0,0,0.2) !important; display: flex !important; flex-direction: column !important; overflow: hidden !important; transform: translateY(20px) !important; transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important; }
#apple-wishlist-modal.active .apple-wishlist-content { transform: translateY(0) !important; }
.apple-wishlist-header { padding: 20px 24px !important; border-bottom: 1px solid rgba(0,0,0,0.08) !important; display: flex !important; justify-content: space-between !important; align-items: center !important; background: rgba(255,255,255,0.9) !important; backdrop-filter: blur(10px); z-index: 2 !important; }
.apple-wishlist-header h2 { margin: 0 !important; font-size: 22px !important; font-weight: 700 !important; color: #1d1d1f !important; }
.apple-wishlist-close { background: #f0f0f5 !important; border: none !important; width: 32px !important; height: 32px !important; border-radius: 50% !important; font-size: 14px !important; font-weight: bold !important; color: #86868b !important; cursor: pointer !important; transition: all 0.2s !important; display: flex !important; justify-content: center !important; align-items: center !important; padding: 0 !important; }
.apple-wishlist-close:hover { background: #e5e5ea !important; color: #1d1d1f !important; }
.apple-wishlist-body { padding: 20px 24px !important; overflow-y: auto !important; flex: 1 !important; display: flex !important; flex-direction: column !important; gap: 16px !important; }
.apple-wishlist-body::-webkit-scrollbar { width: 6px !important; }
.apple-wishlist-body::-webkit-scrollbar-track { background: transparent !important; }
.apple-wishlist-body::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.15) !important; border-radius: 10px !important; }
.apple-wishlist-empty { text-align: center !important; color: #86868b !important; padding: 40px 0 !important; font-size: 16px !important; }
.apple-wishlist-item { display: flex !important; align-items: center !important; gap: 16px !important; padding: 12px !important; background: #f5f5f7 !important; border-radius: 16px !important; transition: transform 0.2s !important; }
.apple-wishlist-item:hover { transform: scale(1.02) !important; }
.apple-wishlist-item img { width: 60px !important; height: 60px !important; border-radius: 12px !important; object-fit: cover !important; flex-shrink: 0 !important; }
.apple-wishlist-item-info { flex: 1 !important; display: flex !important; flex-direction: column !important; gap: 4px !important; }
.apple-wishlist-item-info a { color: #1d1d1f !important; font-weight: 600 !important; text-decoration: none !important; font-size: 15px !important; display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; }
.apple-wishlist-item-price { font-size: 14px !important; font-weight: 700 !important; color: #000 !important; display: inline-block !important; }
.apple-wishlist-item-remove { background: #ffe5e5 !important; border: none !important; width: 36px !important; height: 36px !important; border-radius: 50% !important; display: flex !important; justify-content: center !important; align-items: center !important; cursor: pointer !important; color: #ff3b30 !important; transition: background 0.2s !important; flex-shrink: 0 !important; padding: 0 !important; }
.apple-wishlist-item-remove:hover { background: #ff3b30 !important; color: #fff !important; }
.apple-wishlist-item-remove svg { width: 18px !important; height: 18px !important; }

/* ==================================================================== */
/* 3. СКЕЛЕТОН И ФИЛЬТРЫ (ЧИСТЫЕ СТИЛИ)                                 */
/* ==================================================================== */
@keyframes appleShimmer {
    0% { background-position: -1000px 0; }
    100% { background-position: 1000px 0; }
}

#apple-smart-skeleton {
    width: 100% !important;
    display: grid !important;
    gap: 16px !important;
    padding-top: 15px !important;
    padding-bottom: 40px !important;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
    transition: opacity 0.4s ease, filter 0.4s ease !important;
    box-sizing: border-box !important;
}

@media(min-width: 1201px) {
    #apple-smart-skeleton { grid-template-columns: repeat(4, 1fr) !important; }
}

.skel-header-wrap { grid-column: 1 / -1 !important; margin-bottom: 24px !important; }
.skel-line { border-radius: 8px !important; background: #f5f5f7 !important; background-image: linear-gradient(90deg, #f5f5f7 0px, #ebebeb 50%, #f5f5f7 100%) !important; background-size: 1000px 100% !important; animation: appleShimmer 2s infinite linear !important; margin-bottom: 12px !important; }
.skel-card { border-radius: 24px !important; background: #f5f5f7 !important; height: 420px !important; background-image: linear-gradient(90deg, #f5f5f7 0px, #ebebeb 50%, #f5f5f7 100%) !important; background-size: 1000px 100% !important; animation: appleShimmer 2s infinite linear !important; }
@media(min-width: 1201px) { .skel-card.large { grid-column: span 2 !important; grid-row: span 2 !important; height: 856px !important; } }

.filters-container {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    align-items: center !important;
    margin-bottom: 20px !important;
    padding: 10px !important;
    border: 1px solid #ddd !important;
    border-radius: 8px !important;
    background-color: #f9f9f9 !important;
    min-height: 48px !important;
    position: relative !important;
}

.subcategories-container {
    display: inline-flex !important;
    gap: 6px !important;
    align-items: center !important;
    margin-left: 6px !important;
    flex-wrap: wrap !important;
}

.filtercha {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 12px !important;
    cursor: pointer !important;
    position: relative !important;
    border-radius: 20px !important;
    background: #fff !important;
    color: #222 !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 1px 2px rgba(0,0,0,0.04) !important;
    transition: transform 0.12s ease, box-shadow 0.12s ease, background-color 0.12s ease, color 0.12s ease, border-color 0.12s ease !important;
}

.filtercha.subcategory {
    margin-left: 8px !important;
    font-size: 14px !important;
    padding: 6px 10px !important;
    opacity: 1 !important;
}

.filtercha .circle {
    width: 12px !important;
    height: 12px !important;
    border-radius: 50% !important;
    background-color: var(--cat-bg) !important;
    border: 1px solid var(--cat-border) !important;
    flex: 0 0 auto !important;
    transition: transform 0.12s ease, opacity 0.12s ease, background-color 0.12s ease, border-color 0.12s ease !important;
}

.filtercha-checkbox {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    border: 0 !important;
}

.filtercha.apple-filter-active {
    background: var(--cat-color) !important;
    color: #fff !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.12) !important;
    border: 1px solid rgba(0,0,0,0.08) !important;
    transform: translateY(-1px) !important;
}

.filtercha.apple-filter-active .circle {
    background-color: #fff !important;
    border: 1px solid rgba(255,255,255,0.6) !important;
    transform: scale(0.85) !important;
    opacity: 0.95 !important;
}

.filtercha:hover {
    transform: translateY(-1px) !important;
}

.reset-filters-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    border: 1px solid #ddd !important;
    background: #fff !important;
    cursor: pointer !important;
    margin-left: auto !important;
    padding: 4px !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08) !important;
    transition: box-shadow 0.12s ease, background-color 0.12s ease !important;
}

.reset-filters-btn:hover {
    box-shadow: 0 4px 10px rgba(0,0,0,0.12) !important;
}